1 #pragma once 2 #include <nlohmann/json.hpp> 3 4 namespace event 5 { 6 // clang-format off 7 8 enum class EventType{ 9 Invalid, 10 StatusChange, 11 ResourceUpdated, 12 ResourceAdded, 13 ResourceRemoved, 14 Alert, 15 MetricReport, 16 Other, 17 }; 18 19 NLOHMANN_JSON_SERIALIZE_ENUM(EventType, { 20 {EventType::Invalid, "Invalid"}, 21 {EventType::StatusChange, "StatusChange"}, 22 {EventType::ResourceUpdated, "ResourceUpdated"}, 23 {EventType::ResourceAdded, "ResourceAdded"}, 24 {EventType::ResourceRemoved, "ResourceRemoved"}, 25 {EventType::Alert, "Alert"}, 26 {EventType::MetricReport, "MetricReport"}, 27 {EventType::Other, "Other"}, 28 }); 29 30 } 31 // clang-format on 32