1#[derive(serde::Serialize, serde::Deserialize)]
3#[serde(rename_all = "snake_case")]
4#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5#[repr(i32)]
6pub enum ConnectorType {
7    Unspecified = 0,
8    Slack = 1,
9    GenericHttps = 2,
10    Pagerduty = 3,
11    IbmEventNotifications = 5,
12}
13impl ConnectorType {
14    pub fn as_str_name(&self) -> &'static str {
19        match self {
20            Self::Unspecified => "CONNECTOR_TYPE_UNSPECIFIED",
21            Self::Slack => "SLACK",
22            Self::GenericHttps => "GENERIC_HTTPS",
23            Self::Pagerduty => "PAGERDUTY",
24            Self::IbmEventNotifications => "IBM_EVENT_NOTIFICATIONS",
25        }
26    }
27    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
29        match value {
30            "CONNECTOR_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
31            "SLACK" => Some(Self::Slack),
32            "GENERIC_HTTPS" => Some(Self::GenericHttps),
33            "PAGERDUTY" => Some(Self::Pagerduty),
34            "IBM_EVENT_NOTIFICATIONS" => Some(Self::IbmEventNotifications),
35            _ => None,
36        }
37    }
38}
39#[derive(serde::Serialize, serde::Deserialize)]
40#[serde(rename_all = "snake_case")]
41#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
42#[repr(i32)]
43pub enum EntityType {
44    Unspecified = 0,
45    Alerts = 1,
46    TestNotifications = 2,
47    Cases = 3,
48}
49impl EntityType {
50    pub fn as_str_name(&self) -> &'static str {
55        match self {
56            Self::Unspecified => "ENTITY_TYPE_UNSPECIFIED",
57            Self::Alerts => "ALERTS",
58            Self::TestNotifications => "TEST_NOTIFICATIONS",
59            Self::Cases => "CASES",
60        }
61    }
62    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
64        match value {
65            "ENTITY_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
66            "ALERTS" => Some(Self::Alerts),
67            "TEST_NOTIFICATIONS" => Some(Self::TestNotifications),
68            "CASES" => Some(Self::Cases),
69            _ => None,
70        }
71    }
72}
73#[derive(serde::Serialize, serde::Deserialize)]
74#[serde(rename_all = "snake_case")]
75#[derive(Clone, PartialEq, ::prost::Message)]
76pub struct ConnectorConfigField {
77    #[prost(string, tag = "1")]
78    pub field_name: ::prost::alloc::string::String,
79    #[prost(string, tag = "2")]
80    pub value: ::prost::alloc::string::String,
81}
82#[derive(serde::Serialize, serde::Deserialize)]
83#[serde(rename_all = "snake_case")]
84#[derive(Clone, PartialEq, ::prost::Message)]
85pub struct TemplatedConnectorConfigField {
86    #[prost(string, tag = "1")]
87    pub field_name: ::prost::alloc::string::String,
88    #[prost(string, tag = "2")]
89    pub template: ::prost::alloc::string::String,
90}
91#[derive(serde::Serialize, serde::Deserialize)]
92#[serde(rename_all = "snake_case")]
93#[derive(Clone, PartialEq, ::prost::Message)]
94pub struct MessageConfigField {
95    #[prost(string, tag = "1")]
96    pub field_name: ::prost::alloc::string::String,
97    #[prost(string, tag = "2")]
98    pub template: ::prost::alloc::string::String,
99}
100#[derive(serde::Serialize, serde::Deserialize)]
101#[serde(rename_all = "snake_case")]
102#[derive(Clone, PartialEq, ::prost::Message)]
103pub struct RenderedConnectorConfigField {
104    #[prost(string, tag = "1")]
105    pub field_name: ::prost::alloc::string::String,
106    #[prost(string, tag = "2")]
107    pub value: ::prost::alloc::string::String,
108}
109#[derive(serde::Serialize, serde::Deserialize)]
110#[serde(rename_all = "snake_case")]
111#[derive(Clone, PartialEq, ::prost::Message)]
112pub struct RenderedMessageConfigField {
113    #[prost(string, tag = "1")]
114    pub field_name: ::prost::alloc::string::String,
115    #[prost(string, tag = "2")]
116    pub value: ::prost::alloc::string::String,
117}
118#[derive(serde::Serialize, serde::Deserialize)]
119#[serde(rename_all = "snake_case")]
120#[derive(Clone, PartialEq, ::prost::Message)]
121pub struct ConfigOverrides {
122    #[prost(message, optional, tag = "1")]
123    pub condition_type: ::core::option::Option<ConditionType>,
124    #[prost(string, optional, tag = "2")]
125    pub payload_type: ::core::option::Option<::prost::alloc::string::String>,
126    #[prost(message, optional, tag = "3")]
127    pub message_config: ::core::option::Option<MessageConfig>,
128}
129#[derive(serde::Serialize, serde::Deserialize)]
130#[serde(rename_all = "snake_case")]
131#[derive(Clone, PartialEq, ::prost::Message)]
132pub struct ConditionType {
133    #[prost(oneof = "condition_type::Condition", tags = "1, 2")]
134    pub condition: ::core::option::Option<condition_type::Condition>,
135}
136pub mod condition_type {
138    #[derive(serde::Serialize, serde::Deserialize)]
139    #[serde(rename_all = "snake_case")]
140    #[derive(Clone, PartialEq, ::prost::Oneof)]
141    pub enum Condition {
142        #[prost(message, tag = "1")]
143        MatchEntityType(super::MatchEntityTypeCondition),
144        #[prost(message, tag = "2")]
145        MatchEntityTypeAndSubType(super::MatchEntityTypeAndSubTypeCondition),
146    }
147}
148#[derive(serde::Serialize, serde::Deserialize)]
149#[serde(rename_all = "snake_case")]
150#[derive(Clone, PartialEq, ::prost::Message)]
151pub struct MessageConfig {
152    #[prost(message, repeated, tag = "1")]
153    pub fields: ::prost::alloc::vec::Vec<MessageConfigField>,
154}
155#[derive(serde::Serialize, serde::Deserialize)]
156#[serde(rename_all = "snake_case")]
157#[derive(Clone, Copy, PartialEq, ::prost::Message)]
158pub struct MatchEntityTypeCondition {}
159#[derive(serde::Serialize, serde::Deserialize)]
160#[serde(rename_all = "snake_case")]
161#[derive(Clone, PartialEq, ::prost::Message)]
162pub struct MatchEntityTypeAndSubTypeCondition {
163    #[prost(string, tag = "2")]
164    pub entity_sub_type: ::prost::alloc::string::String,
165}
166#[derive(serde::Serialize, serde::Deserialize)]
167#[serde(rename_all = "snake_case")]
168#[derive(Clone, PartialEq, ::prost::Message)]
169pub struct EntityLabelValues {
170    #[prost(string, repeated, tag = "1")]
171    pub values: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
172}