blob: d45812d98237cdeaf7dff245785f26ab90c32a89 [file] [log] [blame]
#pragma once
#include <cstdint>
#include <nlohmann/json.hpp>
namespace allow_deny
{
// clang-format off
enum class IPAddressType : std::uint8_t{
Invalid,
IPv4,
IPv6,
};
enum class AllowType : std::uint8_t{
Invalid,
Allow,
Deny,
};
enum class DataDirection : std::uint8_t{
Invalid,
Ingress,
Egress,
};
NLOHMANN_JSON_SERIALIZE_ENUM(IPAddressType, {
{IPAddressType::Invalid, "Invalid"},
{IPAddressType::IPv4, "IPv4"},
{IPAddressType::IPv6, "IPv6"},
});
NLOHMANN_JSON_SERIALIZE_ENUM(AllowType, {
{AllowType::Invalid, "Invalid"},
{AllowType::Allow, "Allow"},
{AllowType::Deny, "Deny"},
});
NLOHMANN_JSON_SERIALIZE_ENUM(DataDirection, {
{DataDirection::Invalid, "Invalid"},
{DataDirection::Ingress, "Ingress"},
{DataDirection::Egress, "Egress"},
});
} // namespace allow_deny
// clang-format on