blob: dee3113f3655022c323dcc24647c37a2c300ee99 [file] [log] [blame]
// NOLINTBEGIN
#pragma once
#include <cstdint>
#include <nlohmann/json.hpp>
namespace zone
{
// clang-format off
enum class ExternalAccessibility : std::uint8_t{
Invalid,
GloballyAccessible,
NonZonedAccessible,
ZoneOnly,
NoInternalRouting,
};
enum class ZoneType : std::uint8_t{
Invalid,
Default,
ZoneOfEndpoints,
ZoneOfZones,
ZoneOfResourceBlocks,
};
NLOHMANN_JSON_SERIALIZE_ENUM(ExternalAccessibility, {
{ExternalAccessibility::Invalid, "Invalid"},
{ExternalAccessibility::GloballyAccessible, "GloballyAccessible"},
{ExternalAccessibility::NonZonedAccessible, "NonZonedAccessible"},
{ExternalAccessibility::ZoneOnly, "ZoneOnly"},
{ExternalAccessibility::NoInternalRouting, "NoInternalRouting"},
});
NLOHMANN_JSON_SERIALIZE_ENUM(ZoneType, {
{ZoneType::Invalid, "Invalid"},
{ZoneType::Default, "Default"},
{ZoneType::ZoneOfEndpoints, "ZoneOfEndpoints"},
{ZoneType::ZoneOfZones, "ZoneOfZones"},
{ZoneType::ZoneOfResourceBlocks, "ZoneOfResourceBlocks"},
});
} // namespace zone
// clang-format on
// NOLINTEND