// Copyright 2020 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef SRC_LIB_FIDL_CODEC_BUILTIN_SEMANTIC_H_
#define SRC_LIB_FIDL_CODEC_BUILTIN_SEMANTIC_H_

#include <string>

namespace fidl_codec {
namespace semantic {

extern std::string builtin_semantic_fuchsia_io;
extern std::string builtin_semantic_fuchsia_sys;

}  // namespace semantic
}  // namespace fidl_codec

#endif  // SRC_LIB_FIDL_CODEC_BUILTIN_SEMANTIC_H_
