1#[derive(serde::Serialize, serde::Deserialize)]
3#[serde(rename_all = "snake_case")]
4#[derive(Clone, PartialEq, ::prost::Message)]
5pub struct ExtensionItemBinary {
6 #[prost(enumeration = "extension_item_binary::BinaryType", tag = "1")]
7 pub r#type: i32,
8 #[prost(message, optional, tag = "2")]
9 pub data: ::core::option::Option<::prost::alloc::string::String>,
10 #[prost(message, optional, tag = "3")]
11 pub file_name: ::core::option::Option<::prost::alloc::string::String>,
12}
13pub mod extension_item_binary {
15 #[derive(serde::Serialize, serde::Deserialize)]
16 #[serde(rename_all = "snake_case")]
17 #[derive(
18 Clone,
19 Copy,
20 Debug,
21 PartialEq,
22 Eq,
23 Hash,
24 PartialOrd,
25 Ord,
26 ::prost::Enumeration
27 )]
28 #[repr(i32)]
29 pub enum BinaryType {
30 PreviewImage = 0,
31 KibanaDashboardDefinition = 1,
32 GrafanaDashboardDefinition = 2,
33 EnrichmentCsv = 3,
34 CxCustomDashboardDefinition = 4,
35 }
36 impl BinaryType {
37 pub fn as_str_name(&self) -> &'static str {
42 match self {
43 Self::PreviewImage => "PREVIEW_IMAGE",
44 Self::KibanaDashboardDefinition => "KIBANA_DASHBOARD_DEFINITION",
45 Self::GrafanaDashboardDefinition => "GRAFANA_DASHBOARD_DEFINITION",
46 Self::EnrichmentCsv => "ENRICHMENT_CSV",
47 Self::CxCustomDashboardDefinition => "CX_CUSTOM_DASHBOARD_DEFINITION",
48 }
49 }
50 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
52 match value {
53 "PREVIEW_IMAGE" => Some(Self::PreviewImage),
54 "KIBANA_DASHBOARD_DEFINITION" => Some(Self::KibanaDashboardDefinition),
55 "GRAFANA_DASHBOARD_DEFINITION" => Some(Self::GrafanaDashboardDefinition),
56 "ENRICHMENT_CSV" => Some(Self::EnrichmentCsv),
57 "CX_CUSTOM_DASHBOARD_DEFINITION" => {
58 Some(Self::CxCustomDashboardDefinition)
59 }
60 _ => None,
61 }
62 }
63 }
64}
65#[derive(serde::Serialize, serde::Deserialize)]
66#[serde(rename_all = "snake_case")]
67#[derive(Clone, PartialEq, ::prost::Message)]
68pub struct ExtensionItem {
69 #[prost(message, optional, tag = "1")]
70 pub id: ::core::option::Option<::prost::alloc::string::String>,
71 #[prost(message, optional, tag = "2")]
72 pub name: ::core::option::Option<::prost::alloc::string::String>,
73 #[prost(message, optional, tag = "3")]
74 pub description: ::core::option::Option<::prost::alloc::string::String>,
75 #[prost(enumeration = "TargetDomain", tag = "4")]
76 pub target_domain: i32,
77 #[prost(message, optional, tag = "5")]
78 pub data: ::core::option::Option<::prost_wkt_types::Struct>,
79 #[prost(message, repeated, tag = "6")]
80 pub binaries: ::prost::alloc::vec::Vec<ExtensionItemBinary>,
81 #[prost(message, optional, tag = "7")]
82 pub is_mandatory: ::core::option::Option<bool>,
83 #[prost(enumeration = "extension_item::PermissionResource", tag = "9")]
84 pub permission_resource: i32,
85 #[prost(message, optional, tag = "10")]
86 pub extended_internal_id: ::core::option::Option<::prost::alloc::string::String>,
87 #[prost(message, optional, tag = "11")]
88 pub unique_id: ::core::option::Option<::prost::alloc::string::String>,
89}
90pub mod extension_item {
92 #[derive(serde::Serialize, serde::Deserialize)]
93 #[serde(rename_all = "snake_case")]
94 #[derive(
95 Clone,
96 Copy,
97 Debug,
98 PartialEq,
99 Eq,
100 Hash,
101 PartialOrd,
102 Ord,
103 ::prost::Enumeration
104 )]
105 #[repr(i32)]
106 pub enum PermissionResource {
107 Unknown = 0,
108 Action = 1,
109 Alert = 2,
110 CustomEnrichment = 3,
111 GeoEnrichment = 4,
112 SecurityEnrichment = 5,
113 ResourceCloudMetadataEnrichment = 6,
114 GrafanaDashboard = 7,
115 KibanaDashboard = 8,
116 ParsingRule = 9,
117 SavedView = 10,
118 CxCustomDashboard = 11,
119 MetricsRuleGroup = 12,
120 SpanEventsToMetrics = 13,
121 LogsEventsToMetrics = 14,
122 }
123 impl PermissionResource {
124 pub fn as_str_name(&self) -> &'static str {
129 match self {
130 Self::Unknown => "UNKNOWN",
131 Self::Action => "ACTION",
132 Self::Alert => "ALERT",
133 Self::CustomEnrichment => "CUSTOM_ENRICHMENT",
134 Self::GeoEnrichment => "GEO_ENRICHMENT",
135 Self::SecurityEnrichment => "SECURITY_ENRICHMENT",
136 Self::ResourceCloudMetadataEnrichment => {
137 "RESOURCE_CLOUD_METADATA_ENRICHMENT"
138 }
139 Self::GrafanaDashboard => "GRAFANA_DASHBOARD",
140 Self::KibanaDashboard => "KIBANA_DASHBOARD",
141 Self::ParsingRule => "PARSING_RULE",
142 Self::SavedView => "SAVED_VIEW",
143 Self::CxCustomDashboard => "CX_CUSTOM_DASHBOARD",
144 Self::MetricsRuleGroup => "METRICS_RULE_GROUP",
145 Self::SpanEventsToMetrics => "SPAN_EVENTS_TO_METRICS",
146 Self::LogsEventsToMetrics => "LOGS_EVENTS_TO_METRICS",
147 }
148 }
149 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
151 match value {
152 "UNKNOWN" => Some(Self::Unknown),
153 "ACTION" => Some(Self::Action),
154 "ALERT" => Some(Self::Alert),
155 "CUSTOM_ENRICHMENT" => Some(Self::CustomEnrichment),
156 "GEO_ENRICHMENT" => Some(Self::GeoEnrichment),
157 "SECURITY_ENRICHMENT" => Some(Self::SecurityEnrichment),
158 "RESOURCE_CLOUD_METADATA_ENRICHMENT" => {
159 Some(Self::ResourceCloudMetadataEnrichment)
160 }
161 "GRAFANA_DASHBOARD" => Some(Self::GrafanaDashboard),
162 "KIBANA_DASHBOARD" => Some(Self::KibanaDashboard),
163 "PARSING_RULE" => Some(Self::ParsingRule),
164 "SAVED_VIEW" => Some(Self::SavedView),
165 "CX_CUSTOM_DASHBOARD" => Some(Self::CxCustomDashboard),
166 "METRICS_RULE_GROUP" => Some(Self::MetricsRuleGroup),
167 "SPAN_EVENTS_TO_METRICS" => Some(Self::SpanEventsToMetrics),
168 "LOGS_EVENTS_TO_METRICS" => Some(Self::LogsEventsToMetrics),
169 _ => None,
170 }
171 }
172 }
173}
174#[derive(serde::Serialize, serde::Deserialize)]
175#[serde(rename_all = "snake_case")]
176#[derive(Clone, Copy, PartialEq, ::prost::Message)]
177pub struct ItemCounts {
178 #[prost(message, optional, tag = "1")]
179 pub actions: ::core::option::Option<u32>,
180 #[prost(message, optional, tag = "2")]
181 pub alerts: ::core::option::Option<u32>,
182 #[prost(message, optional, tag = "3")]
183 pub custom_dashboards: ::core::option::Option<u32>,
184 #[prost(message, optional, tag = "4")]
185 pub enrichments: ::core::option::Option<u32>,
186 #[prost(message, optional, tag = "5")]
187 pub events_to_metrics: ::core::option::Option<u32>,
188 #[prost(message, optional, tag = "6")]
189 pub grafana_dashboards: ::core::option::Option<u32>,
190 #[prost(message, optional, tag = "7")]
191 pub kibana_dashboards: ::core::option::Option<u32>,
192 #[prost(message, optional, tag = "8")]
193 pub metrics_rule_group: ::core::option::Option<u32>,
194 #[prost(message, optional, tag = "9")]
195 pub parsing_rules: ::core::option::Option<u32>,
196 #[prost(message, optional, tag = "10")]
197 pub saved_views: ::core::option::Option<u32>,
198}
199#[derive(serde::Serialize, serde::Deserialize)]
200#[serde(rename_all = "snake_case")]
201#[derive(Clone, PartialEq, ::prost::Message)]
202pub struct IntegrationDetail {
203 #[prost(message, optional, tag = "1")]
204 pub name: ::core::option::Option<::prost::alloc::string::String>,
205 #[prost(message, optional, tag = "2")]
206 pub link: ::core::option::Option<::prost::alloc::string::String>,
207}
208#[derive(serde::Serialize, serde::Deserialize)]
209#[serde(rename_all = "snake_case")]
210#[derive(Clone, PartialEq, ::prost::Message)]
211pub struct ExtensionBinary {
212 #[prost(enumeration = "extension_binary::BinaryType", tag = "1")]
213 pub r#type: i32,
214 #[prost(message, optional, tag = "2")]
215 pub data: ::core::option::Option<::prost::alloc::string::String>,
216}
217pub mod extension_binary {
219 #[derive(serde::Serialize, serde::Deserialize)]
220 #[serde(rename_all = "snake_case")]
221 #[derive(
222 Clone,
223 Copy,
224 Debug,
225 PartialEq,
226 Eq,
227 Hash,
228 PartialOrd,
229 Ord,
230 ::prost::Enumeration
231 )]
232 #[repr(i32)]
233 pub enum BinaryType {
234 KibanaIndexPattern = 0,
235 }
236 impl BinaryType {
237 pub fn as_str_name(&self) -> &'static str {
242 match self {
243 Self::KibanaIndexPattern => "KIBANA_INDEX_PATTERN",
244 }
245 }
246 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
248 match value {
249 "KIBANA_INDEX_PATTERN" => Some(Self::KibanaIndexPattern),
250 _ => None,
251 }
252 }
253 }
254}
255#[derive(serde::Serialize, serde::Deserialize)]
256#[serde(rename_all = "snake_case")]
257#[derive(Clone, PartialEq, ::prost::Message)]
258pub struct ChangelogEntry {
259 #[prost(message, optional, tag = "1")]
260 pub version: ::core::option::Option<::prost::alloc::string::String>,
261 #[prost(message, optional, tag = "2")]
262 pub description_md: ::core::option::Option<::prost::alloc::string::String>,
263}
264#[derive(serde::Serialize, serde::Deserialize)]
265#[serde(rename_all = "snake_case")]
266#[derive(Clone, PartialEq, ::prost::Message)]
267pub struct Deprecation {
268 #[prost(message, optional, tag = "1")]
269 pub reason: ::core::option::Option<::prost::alloc::string::String>,
270 #[prost(message, repeated, tag = "2")]
271 pub replacement_extensions: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
272}
273#[derive(serde::Serialize, serde::Deserialize)]
274#[serde(rename_all = "snake_case")]
275#[derive(Clone, PartialEq, ::prost::Message)]
276pub struct ExtensionRevision {
277 #[prost(message, optional, tag = "1")]
278 pub version: ::core::option::Option<::prost::alloc::string::String>,
279 #[prost(message, optional, tag = "2")]
280 pub description: ::core::option::Option<::prost::alloc::string::String>,
281 #[prost(message, optional, tag = "3")]
282 pub excerpt: ::core::option::Option<::prost::alloc::string::String>,
283 #[prost(message, repeated, tag = "4")]
284 pub labels: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
285 #[prost(message, repeated, tag = "5")]
286 pub integration_details: ::prost::alloc::vec::Vec<IntegrationDetail>,
287 #[prost(message, repeated, tag = "6")]
288 pub items: ::prost::alloc::vec::Vec<ExtensionItem>,
289 #[prost(message, repeated, tag = "7")]
290 pub binaries: ::prost::alloc::vec::Vec<ExtensionBinary>,
291 #[prost(message, repeated, tag = "8")]
292 pub permission_denied_items: ::prost::alloc::vec::Vec<ExtensionItem>,
293 #[prost(message, optional, tag = "9")]
294 pub is_testing: ::core::option::Option<bool>,
295}
296#[derive(serde::Serialize, serde::Deserialize)]
297#[serde(rename_all = "snake_case")]
298#[derive(Clone, PartialEq, ::prost::Message)]
299pub struct Extension {
300 #[prost(message, optional, tag = "1")]
301 pub id: ::core::option::Option<::prost::alloc::string::String>,
302 #[prost(message, optional, tag = "2")]
303 pub name: ::core::option::Option<::prost::alloc::string::String>,
304 #[prost(message, optional, tag = "3")]
305 pub image: ::core::option::Option<::prost::alloc::string::String>,
306 #[prost(message, optional, tag = "4")]
307 pub dark_mode_image: ::core::option::Option<::prost::alloc::string::String>,
308 #[prost(message, repeated, tag = "5")]
309 pub revisions: ::prost::alloc::vec::Vec<ExtensionRevision>,
310 #[prost(message, optional, tag = "6")]
311 pub is_hidden: ::core::option::Option<bool>,
312 #[prost(string, repeated, tag = "7")]
313 pub integrations: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
314 #[prost(message, repeated, tag = "8")]
315 pub keywords: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
316 #[prost(message, repeated, tag = "9")]
317 pub permission_denied_revisions: ::prost::alloc::vec::Vec<ExtensionRevision>,
318 #[prost(message, repeated, tag = "10")]
319 pub changelog: ::prost::alloc::vec::Vec<ChangelogEntry>,
320 #[prost(message, optional, tag = "11")]
321 pub deprecation: ::core::option::Option<Deprecation>,
322}
323#[derive(serde::Serialize, serde::Deserialize)]
325#[serde(rename_all = "snake_case")]
326#[derive(Clone, PartialEq, ::prost::Message)]
327pub struct ExtensionData {
328 #[prost(message, optional, tag = "1")]
329 pub id: ::core::option::Option<::prost::alloc::string::String>,
330 #[prost(message, optional, tag = "2")]
331 pub name: ::core::option::Option<::prost::alloc::string::String>,
332 #[prost(message, optional, tag = "3")]
333 pub description: ::core::option::Option<::prost::alloc::string::String>,
334 #[prost(message, optional, tag = "4")]
335 pub excerpt: ::core::option::Option<::prost::alloc::string::String>,
336 #[prost(message, optional, tag = "5")]
337 pub image: ::core::option::Option<::prost::alloc::string::String>,
338 #[prost(message, optional, tag = "6")]
339 pub dark_mode_image: ::core::option::Option<::prost::alloc::string::String>,
340 #[prost(message, repeated, tag = "7")]
341 pub labels: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
342 #[prost(message, optional, tag = "8")]
343 pub version: ::core::option::Option<::prost::alloc::string::String>,
344 #[prost(message, repeated, tag = "9")]
345 pub items: ::prost::alloc::vec::Vec<ExtensionItemData>,
346 #[prost(message, repeated, tag = "10")]
347 pub integration_details: ::prost::alloc::vec::Vec<IntegrationDetail>,
348 #[prost(message, optional, tag = "11")]
349 pub is_hidden: ::core::option::Option<bool>,
350 #[prost(message, repeated, tag = "12")]
351 pub binaries: ::prost::alloc::vec::Vec<ExtensionBinary>,
352 #[prost(string, repeated, tag = "13")]
353 pub integrations: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
354 #[prost(message, repeated, tag = "14")]
355 pub keywords: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
356 #[prost(message, repeated, tag = "15")]
357 pub changelog: ::prost::alloc::vec::Vec<ChangelogEntry>,
358 #[prost(message, optional, tag = "16")]
359 pub deprecation: ::core::option::Option<Deprecation>,
360}
361#[derive(serde::Serialize, serde::Deserialize)]
362#[serde(rename_all = "snake_case")]
363#[derive(Clone, PartialEq, ::prost::Message)]
364pub struct ExtensionItemData {
365 #[prost(message, optional, tag = "1")]
366 pub name: ::core::option::Option<::prost::alloc::string::String>,
367 #[prost(message, optional, tag = "2")]
368 pub description: ::core::option::Option<::prost::alloc::string::String>,
369 #[prost(enumeration = "TargetDomain", tag = "3")]
370 pub target_domain: i32,
371 #[prost(message, optional, tag = "4")]
372 pub data: ::core::option::Option<::prost_wkt_types::Struct>,
373 #[prost(message, repeated, tag = "5")]
374 pub binaries: ::prost::alloc::vec::Vec<ExtensionItemBinary>,
375 #[prost(message, optional, tag = "6")]
376 pub is_mandatory: ::core::option::Option<bool>,
377 #[prost(message, optional, tag = "7")]
378 pub internal_id: ::core::option::Option<i32>,
379 #[prost(message, optional, tag = "8")]
380 pub unique_id: ::core::option::Option<::prost::alloc::string::String>,
381 #[prost(enumeration = "extension_item::PermissionResource", tag = "9")]
382 pub permission_resource: i32,
383}
384#[derive(serde::Serialize, serde::Deserialize)]
385#[serde(rename_all = "snake_case")]
386#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
387#[repr(i32)]
388pub enum TargetDomain {
389 Action = 0,
390 Alert = 1,
391 Enrichment = 2,
392 GrafanaDashboard = 3,
393 KibanaDashboard = 4,
394 ParsingRule = 6,
395 SavedView = 7,
396 CxCustomDashboard = 8,
397 MetricsRuleGroup = 9,
398 EventsToMetrics = 10,
399 AlertV3 = 11,
400}
401impl TargetDomain {
402 pub fn as_str_name(&self) -> &'static str {
407 match self {
408 Self::Action => "ACTION",
409 Self::Alert => "ALERT",
410 Self::Enrichment => "ENRICHMENT",
411 Self::GrafanaDashboard => "GRAFANA_DASHBOARD",
412 Self::KibanaDashboard => "KIBANA_DASHBOARD",
413 Self::ParsingRule => "PARSING_RULE",
414 Self::SavedView => "SAVED_VIEW",
415 Self::CxCustomDashboard => "CX_CUSTOM_DASHBOARD",
416 Self::MetricsRuleGroup => "METRICS_RULE_GROUP",
417 Self::EventsToMetrics => "EVENTS_TO_METRICS",
418 Self::AlertV3 => "ALERT_V3",
419 }
420 }
421 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
423 match value {
424 "ACTION" => Some(Self::Action),
425 "ALERT" => Some(Self::Alert),
426 "ENRICHMENT" => Some(Self::Enrichment),
427 "GRAFANA_DASHBOARD" => Some(Self::GrafanaDashboard),
428 "KIBANA_DASHBOARD" => Some(Self::KibanaDashboard),
429 "PARSING_RULE" => Some(Self::ParsingRule),
430 "SAVED_VIEW" => Some(Self::SavedView),
431 "CX_CUSTOM_DASHBOARD" => Some(Self::CxCustomDashboard),
432 "METRICS_RULE_GROUP" => Some(Self::MetricsRuleGroup),
433 "EVENTS_TO_METRICS" => Some(Self::EventsToMetrics),
434 "ALERT_V3" => Some(Self::AlertV3),
435 _ => None,
436 }
437 }
438}