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