Skip to main content

clickhouse_cloud_api/
models.rs

1//! Typed models for ClickHouse Cloud API schemas.
2//!
3//! Auto-generated from the OpenAPI specification.
4
5use serde::{Deserialize, Serialize};
6
7/// `pgHaType` enum from the ClickHouse Cloud API.
8#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9pub enum PgHaType {
10    #[serde(rename = "none")]
11    #[default]
12    None,
13    #[serde(rename = "async")]
14    Async,
15    #[serde(rename = "sync")]
16    Sync,
17    /// Catch-all for unknown or newly-added values.
18    #[serde(untagged)]
19    Unknown(String),
20}
21
22impl std::fmt::Display for PgHaType {
23    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
24        match self {
25            Self::None => write!(f, "none"),
26            Self::Async => write!(f, "async"),
27            Self::Sync => write!(f, "sync"),
28            Self::Unknown(s) => write!(f, "{s}"),
29        }
30    }
31}
32
33/// `pgProvider` enum from the ClickHouse Cloud API.
34#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
35pub enum PgProvider {
36    #[serde(rename = "aws")]
37    #[default]
38    Aws,
39    /// Catch-all for unknown or newly-added values.
40    #[serde(untagged)]
41    Unknown(String),
42}
43
44impl std::fmt::Display for PgProvider {
45    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
46        match self {
47            Self::Aws => write!(f, "aws"),
48            Self::Unknown(s) => write!(f, "{s}"),
49        }
50    }
51}
52
53/// `pgSize` enum from the ClickHouse Cloud API.
54#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
55pub enum PgSize {
56    #[serde(rename = "c6gd.medium")]
57    #[default]
58    C6gd_medium,
59    #[serde(rename = "c6gd.large")]
60    C6gd_large,
61    #[serde(rename = "c6gd.xlarge")]
62    C6gd_xlarge,
63    #[serde(rename = "c6gd.2xlarge")]
64    C6gd_2xlarge,
65    #[serde(rename = "c6gd.4xlarge")]
66    C6gd_4xlarge,
67    #[serde(rename = "c6gd.8xlarge")]
68    C6gd_8xlarge,
69    #[serde(rename = "c6gd.12xlarge")]
70    C6gd_12xlarge,
71    #[serde(rename = "c6gd.16xlarge")]
72    C6gd_16xlarge,
73    #[serde(rename = "c6gd.metal")]
74    C6gd_metal,
75    #[serde(rename = "i7i.large")]
76    I7i_large,
77    #[serde(rename = "i7i.xlarge")]
78    I7i_xlarge,
79    #[serde(rename = "i7i.2xlarge")]
80    I7i_2xlarge,
81    #[serde(rename = "i7i.4xlarge")]
82    I7i_4xlarge,
83    #[serde(rename = "i7i.8xlarge")]
84    I7i_8xlarge,
85    #[serde(rename = "i7i.12xlarge")]
86    I7i_12xlarge,
87    #[serde(rename = "i7i.16xlarge")]
88    I7i_16xlarge,
89    #[serde(rename = "i7i.24xlarge")]
90    I7i_24xlarge,
91    #[serde(rename = "i7i.metal-24xl")]
92    I7i_metal_24xl,
93    #[serde(rename = "i7i.48xlarge")]
94    I7i_48xlarge,
95    #[serde(rename = "i7i.metal-48xl")]
96    I7i_metal_48xl,
97    #[serde(rename = "i7ie.large")]
98    I7ie_large,
99    #[serde(rename = "i7ie.xlarge")]
100    I7ie_xlarge,
101    #[serde(rename = "i7ie.2xlarge")]
102    I7ie_2xlarge,
103    #[serde(rename = "i7ie.3xlarge")]
104    I7ie_3xlarge,
105    #[serde(rename = "i7ie.6xlarge")]
106    I7ie_6xlarge,
107    #[serde(rename = "i7ie.12xlarge")]
108    I7ie_12xlarge,
109    #[serde(rename = "i7ie.18xlarge")]
110    I7ie_18xlarge,
111    #[serde(rename = "i7ie.24xlarge")]
112    I7ie_24xlarge,
113    #[serde(rename = "i7ie.metal-24xl")]
114    I7ie_metal_24xl,
115    #[serde(rename = "i7ie.48xlarge")]
116    I7ie_48xlarge,
117    #[serde(rename = "i7ie.metal-48xl")]
118    I7ie_metal_48xl,
119    #[serde(rename = "i8g.large")]
120    I8g_large,
121    #[serde(rename = "i8g.xlarge")]
122    I8g_xlarge,
123    #[serde(rename = "i8g.2xlarge")]
124    I8g_2xlarge,
125    #[serde(rename = "i8g.4xlarge")]
126    I8g_4xlarge,
127    #[serde(rename = "i8g.8xlarge")]
128    I8g_8xlarge,
129    #[serde(rename = "i8g.12xlarge")]
130    I8g_12xlarge,
131    #[serde(rename = "i8g.16xlarge")]
132    I8g_16xlarge,
133    #[serde(rename = "i8g.24xlarge")]
134    I8g_24xlarge,
135    #[serde(rename = "i8g.metal-24xl")]
136    I8g_metal_24xl,
137    #[serde(rename = "i8g.48xlarge")]
138    I8g_48xlarge,
139    #[serde(rename = "i8ge.large")]
140    I8ge_large,
141    #[serde(rename = "i8ge.xlarge")]
142    I8ge_xlarge,
143    #[serde(rename = "i8ge.2xlarge")]
144    I8ge_2xlarge,
145    #[serde(rename = "i8ge.3xlarge")]
146    I8ge_3xlarge,
147    #[serde(rename = "i8ge.6xlarge")]
148    I8ge_6xlarge,
149    #[serde(rename = "i8ge.12xlarge")]
150    I8ge_12xlarge,
151    #[serde(rename = "i8ge.18xlarge")]
152    I8ge_18xlarge,
153    #[serde(rename = "i8ge.24xlarge")]
154    I8ge_24xlarge,
155    #[serde(rename = "i8ge.metal-24xl")]
156    I8ge_metal_24xl,
157    #[serde(rename = "i8ge.48xlarge")]
158    I8ge_48xlarge,
159    #[serde(rename = "i8ge.metal-48xl")]
160    I8ge_metal_48xl,
161    #[serde(rename = "m6a.large")]
162    M6a_large,
163    #[serde(rename = "m6a.xlarge")]
164    M6a_xlarge,
165    #[serde(rename = "m6a.2xlarge")]
166    M6a_2xlarge,
167    #[serde(rename = "m6a.4xlarge")]
168    M6a_4xlarge,
169    #[serde(rename = "m6a.8xlarge")]
170    M6a_8xlarge,
171    #[serde(rename = "m6a.12xlarge")]
172    M6a_12xlarge,
173    #[serde(rename = "m6a.16xlarge")]
174    M6a_16xlarge,
175    #[serde(rename = "m6a.24xlarge")]
176    M6a_24xlarge,
177    #[serde(rename = "m6a.32xlarge")]
178    M6a_32xlarge,
179    #[serde(rename = "m6a.48xlarge")]
180    M6a_48xlarge,
181    #[serde(rename = "m6a.metal")]
182    M6a_metal,
183    #[serde(rename = "m6gd.medium")]
184    M6gd_medium,
185    #[serde(rename = "m6gd.large")]
186    M6gd_large,
187    #[serde(rename = "m6gd.xlarge")]
188    M6gd_xlarge,
189    #[serde(rename = "m6gd.2xlarge")]
190    M6gd_2xlarge,
191    #[serde(rename = "m6gd.4xlarge")]
192    M6gd_4xlarge,
193    #[serde(rename = "m6gd.8xlarge")]
194    M6gd_8xlarge,
195    #[serde(rename = "m6gd.12xlarge")]
196    M6gd_12xlarge,
197    #[serde(rename = "m6gd.16xlarge")]
198    M6gd_16xlarge,
199    #[serde(rename = "m6gd.metal")]
200    M6gd_metal,
201    #[serde(rename = "m6id.large")]
202    M6id_large,
203    #[serde(rename = "m6id.xlarge")]
204    M6id_xlarge,
205    #[serde(rename = "m6id.2xlarge")]
206    M6id_2xlarge,
207    #[serde(rename = "m6id.4xlarge")]
208    M6id_4xlarge,
209    #[serde(rename = "m6id.8xlarge")]
210    M6id_8xlarge,
211    #[serde(rename = "m6id.12xlarge")]
212    M6id_12xlarge,
213    #[serde(rename = "m6id.16xlarge")]
214    M6id_16xlarge,
215    #[serde(rename = "m6id.24xlarge")]
216    M6id_24xlarge,
217    #[serde(rename = "m6id.32xlarge")]
218    M6id_32xlarge,
219    #[serde(rename = "m6id.metal")]
220    M6id_metal,
221    #[serde(rename = "m7a.medium")]
222    M7a_medium,
223    #[serde(rename = "m7a.large")]
224    M7a_large,
225    #[serde(rename = "m7a.xlarge")]
226    M7a_xlarge,
227    #[serde(rename = "m7a.2xlarge")]
228    M7a_2xlarge,
229    #[serde(rename = "m7a.4xlarge")]
230    M7a_4xlarge,
231    #[serde(rename = "m7a.8xlarge")]
232    M7a_8xlarge,
233    #[serde(rename = "m7a.12xlarge")]
234    M7a_12xlarge,
235    #[serde(rename = "m7a.16xlarge")]
236    M7a_16xlarge,
237    #[serde(rename = "m7a.24xlarge")]
238    M7a_24xlarge,
239    #[serde(rename = "m7a.32xlarge")]
240    M7a_32xlarge,
241    #[serde(rename = "m7a.48xlarge")]
242    M7a_48xlarge,
243    #[serde(rename = "m7a.metal-48xl")]
244    M7a_metal_48xl,
245    #[serde(rename = "m7i.large")]
246    M7i_large,
247    #[serde(rename = "m7i.xlarge")]
248    M7i_xlarge,
249    #[serde(rename = "m7i.2xlarge")]
250    M7i_2xlarge,
251    #[serde(rename = "m7i.4xlarge")]
252    M7i_4xlarge,
253    #[serde(rename = "m7i.8xlarge")]
254    M7i_8xlarge,
255    #[serde(rename = "m7i.12xlarge")]
256    M7i_12xlarge,
257    #[serde(rename = "m7i.16xlarge")]
258    M7i_16xlarge,
259    #[serde(rename = "m7i.24xlarge")]
260    M7i_24xlarge,
261    #[serde(rename = "m7i.metal-24xl")]
262    M7i_metal_24xl,
263    #[serde(rename = "m7i.48xlarge")]
264    M7i_48xlarge,
265    #[serde(rename = "m7i.metal-48xl")]
266    M7i_metal_48xl,
267    #[serde(rename = "m8gd.medium")]
268    M8gd_medium,
269    #[serde(rename = "m8gd.large")]
270    M8gd_large,
271    #[serde(rename = "m8gd.xlarge")]
272    M8gd_xlarge,
273    #[serde(rename = "m8gd.2xlarge")]
274    M8gd_2xlarge,
275    #[serde(rename = "m8gd.4xlarge")]
276    M8gd_4xlarge,
277    #[serde(rename = "m8gd.8xlarge")]
278    M8gd_8xlarge,
279    #[serde(rename = "m8gd.12xlarge")]
280    M8gd_12xlarge,
281    #[serde(rename = "m8gd.16xlarge")]
282    M8gd_16xlarge,
283    #[serde(rename = "m8gd.24xlarge")]
284    M8gd_24xlarge,
285    #[serde(rename = "m8gd.metal-24xl")]
286    M8gd_metal_24xl,
287    #[serde(rename = "m8gd.48xlarge")]
288    M8gd_48xlarge,
289    #[serde(rename = "m8gd.metal-48xl")]
290    M8gd_metal_48xl,
291    #[serde(rename = "r6gd.medium")]
292    R6gd_medium,
293    #[serde(rename = "r6gd.large")]
294    R6gd_large,
295    #[serde(rename = "r6gd.xlarge")]
296    R6gd_xlarge,
297    #[serde(rename = "r6gd.2xlarge")]
298    R6gd_2xlarge,
299    #[serde(rename = "r6gd.4xlarge")]
300    R6gd_4xlarge,
301    #[serde(rename = "r6gd.8xlarge")]
302    R6gd_8xlarge,
303    #[serde(rename = "r6gd.12xlarge")]
304    R6gd_12xlarge,
305    #[serde(rename = "r6gd.16xlarge")]
306    R6gd_16xlarge,
307    #[serde(rename = "r6gd.metal")]
308    R6gd_metal,
309    #[serde(rename = "r6id.large")]
310    R6id_large,
311    #[serde(rename = "r6id.xlarge")]
312    R6id_xlarge,
313    #[serde(rename = "r6id.2xlarge")]
314    R6id_2xlarge,
315    #[serde(rename = "r6id.4xlarge")]
316    R6id_4xlarge,
317    #[serde(rename = "r6id.8xlarge")]
318    R6id_8xlarge,
319    #[serde(rename = "r6id.12xlarge")]
320    R6id_12xlarge,
321    #[serde(rename = "r6id.16xlarge")]
322    R6id_16xlarge,
323    #[serde(rename = "r6id.24xlarge")]
324    R6id_24xlarge,
325    #[serde(rename = "r6id.32xlarge")]
326    R6id_32xlarge,
327    #[serde(rename = "r6id.metal")]
328    R6id_metal,
329    #[serde(rename = "r8gd.medium")]
330    R8gd_medium,
331    #[serde(rename = "r8gd.large")]
332    R8gd_large,
333    #[serde(rename = "r8gd.xlarge")]
334    R8gd_xlarge,
335    #[serde(rename = "r8gd.2xlarge")]
336    R8gd_2xlarge,
337    #[serde(rename = "r8gd.4xlarge")]
338    R8gd_4xlarge,
339    #[serde(rename = "r8gd.8xlarge")]
340    R8gd_8xlarge,
341    #[serde(rename = "r8gd.12xlarge")]
342    R8gd_12xlarge,
343    #[serde(rename = "r8gd.16xlarge")]
344    R8gd_16xlarge,
345    #[serde(rename = "r8gd.24xlarge")]
346    R8gd_24xlarge,
347    #[serde(rename = "r8gd.metal-24xl")]
348    R8gd_metal_24xl,
349    #[serde(rename = "r8gd.48xlarge")]
350    R8gd_48xlarge,
351    #[serde(rename = "r8gd.metal-48xl")]
352    R8gd_metal_48xl,
353    /// Catch-all for unknown or newly-added values.
354    #[serde(untagged)]
355    Unknown(String),
356}
357
358impl std::fmt::Display for PgSize {
359    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
360        match self {
361            Self::C6gd_medium => write!(f, "c6gd.medium"),
362            Self::C6gd_large => write!(f, "c6gd.large"),
363            Self::C6gd_xlarge => write!(f, "c6gd.xlarge"),
364            Self::C6gd_2xlarge => write!(f, "c6gd.2xlarge"),
365            Self::C6gd_4xlarge => write!(f, "c6gd.4xlarge"),
366            Self::C6gd_8xlarge => write!(f, "c6gd.8xlarge"),
367            Self::C6gd_12xlarge => write!(f, "c6gd.12xlarge"),
368            Self::C6gd_16xlarge => write!(f, "c6gd.16xlarge"),
369            Self::C6gd_metal => write!(f, "c6gd.metal"),
370            Self::I7i_large => write!(f, "i7i.large"),
371            Self::I7i_xlarge => write!(f, "i7i.xlarge"),
372            Self::I7i_2xlarge => write!(f, "i7i.2xlarge"),
373            Self::I7i_4xlarge => write!(f, "i7i.4xlarge"),
374            Self::I7i_8xlarge => write!(f, "i7i.8xlarge"),
375            Self::I7i_12xlarge => write!(f, "i7i.12xlarge"),
376            Self::I7i_16xlarge => write!(f, "i7i.16xlarge"),
377            Self::I7i_24xlarge => write!(f, "i7i.24xlarge"),
378            Self::I7i_metal_24xl => write!(f, "i7i.metal-24xl"),
379            Self::I7i_48xlarge => write!(f, "i7i.48xlarge"),
380            Self::I7i_metal_48xl => write!(f, "i7i.metal-48xl"),
381            Self::I7ie_large => write!(f, "i7ie.large"),
382            Self::I7ie_xlarge => write!(f, "i7ie.xlarge"),
383            Self::I7ie_2xlarge => write!(f, "i7ie.2xlarge"),
384            Self::I7ie_3xlarge => write!(f, "i7ie.3xlarge"),
385            Self::I7ie_6xlarge => write!(f, "i7ie.6xlarge"),
386            Self::I7ie_12xlarge => write!(f, "i7ie.12xlarge"),
387            Self::I7ie_18xlarge => write!(f, "i7ie.18xlarge"),
388            Self::I7ie_24xlarge => write!(f, "i7ie.24xlarge"),
389            Self::I7ie_metal_24xl => write!(f, "i7ie.metal-24xl"),
390            Self::I7ie_48xlarge => write!(f, "i7ie.48xlarge"),
391            Self::I7ie_metal_48xl => write!(f, "i7ie.metal-48xl"),
392            Self::I8g_large => write!(f, "i8g.large"),
393            Self::I8g_xlarge => write!(f, "i8g.xlarge"),
394            Self::I8g_2xlarge => write!(f, "i8g.2xlarge"),
395            Self::I8g_4xlarge => write!(f, "i8g.4xlarge"),
396            Self::I8g_8xlarge => write!(f, "i8g.8xlarge"),
397            Self::I8g_12xlarge => write!(f, "i8g.12xlarge"),
398            Self::I8g_16xlarge => write!(f, "i8g.16xlarge"),
399            Self::I8g_24xlarge => write!(f, "i8g.24xlarge"),
400            Self::I8g_metal_24xl => write!(f, "i8g.metal-24xl"),
401            Self::I8g_48xlarge => write!(f, "i8g.48xlarge"),
402            Self::I8ge_large => write!(f, "i8ge.large"),
403            Self::I8ge_xlarge => write!(f, "i8ge.xlarge"),
404            Self::I8ge_2xlarge => write!(f, "i8ge.2xlarge"),
405            Self::I8ge_3xlarge => write!(f, "i8ge.3xlarge"),
406            Self::I8ge_6xlarge => write!(f, "i8ge.6xlarge"),
407            Self::I8ge_12xlarge => write!(f, "i8ge.12xlarge"),
408            Self::I8ge_18xlarge => write!(f, "i8ge.18xlarge"),
409            Self::I8ge_24xlarge => write!(f, "i8ge.24xlarge"),
410            Self::I8ge_metal_24xl => write!(f, "i8ge.metal-24xl"),
411            Self::I8ge_48xlarge => write!(f, "i8ge.48xlarge"),
412            Self::I8ge_metal_48xl => write!(f, "i8ge.metal-48xl"),
413            Self::M6a_large => write!(f, "m6a.large"),
414            Self::M6a_xlarge => write!(f, "m6a.xlarge"),
415            Self::M6a_2xlarge => write!(f, "m6a.2xlarge"),
416            Self::M6a_4xlarge => write!(f, "m6a.4xlarge"),
417            Self::M6a_8xlarge => write!(f, "m6a.8xlarge"),
418            Self::M6a_12xlarge => write!(f, "m6a.12xlarge"),
419            Self::M6a_16xlarge => write!(f, "m6a.16xlarge"),
420            Self::M6a_24xlarge => write!(f, "m6a.24xlarge"),
421            Self::M6a_32xlarge => write!(f, "m6a.32xlarge"),
422            Self::M6a_48xlarge => write!(f, "m6a.48xlarge"),
423            Self::M6a_metal => write!(f, "m6a.metal"),
424            Self::M6gd_medium => write!(f, "m6gd.medium"),
425            Self::M6gd_large => write!(f, "m6gd.large"),
426            Self::M6gd_xlarge => write!(f, "m6gd.xlarge"),
427            Self::M6gd_2xlarge => write!(f, "m6gd.2xlarge"),
428            Self::M6gd_4xlarge => write!(f, "m6gd.4xlarge"),
429            Self::M6gd_8xlarge => write!(f, "m6gd.8xlarge"),
430            Self::M6gd_12xlarge => write!(f, "m6gd.12xlarge"),
431            Self::M6gd_16xlarge => write!(f, "m6gd.16xlarge"),
432            Self::M6gd_metal => write!(f, "m6gd.metal"),
433            Self::M6id_large => write!(f, "m6id.large"),
434            Self::M6id_xlarge => write!(f, "m6id.xlarge"),
435            Self::M6id_2xlarge => write!(f, "m6id.2xlarge"),
436            Self::M6id_4xlarge => write!(f, "m6id.4xlarge"),
437            Self::M6id_8xlarge => write!(f, "m6id.8xlarge"),
438            Self::M6id_12xlarge => write!(f, "m6id.12xlarge"),
439            Self::M6id_16xlarge => write!(f, "m6id.16xlarge"),
440            Self::M6id_24xlarge => write!(f, "m6id.24xlarge"),
441            Self::M6id_32xlarge => write!(f, "m6id.32xlarge"),
442            Self::M6id_metal => write!(f, "m6id.metal"),
443            Self::M7a_medium => write!(f, "m7a.medium"),
444            Self::M7a_large => write!(f, "m7a.large"),
445            Self::M7a_xlarge => write!(f, "m7a.xlarge"),
446            Self::M7a_2xlarge => write!(f, "m7a.2xlarge"),
447            Self::M7a_4xlarge => write!(f, "m7a.4xlarge"),
448            Self::M7a_8xlarge => write!(f, "m7a.8xlarge"),
449            Self::M7a_12xlarge => write!(f, "m7a.12xlarge"),
450            Self::M7a_16xlarge => write!(f, "m7a.16xlarge"),
451            Self::M7a_24xlarge => write!(f, "m7a.24xlarge"),
452            Self::M7a_32xlarge => write!(f, "m7a.32xlarge"),
453            Self::M7a_48xlarge => write!(f, "m7a.48xlarge"),
454            Self::M7a_metal_48xl => write!(f, "m7a.metal-48xl"),
455            Self::M7i_large => write!(f, "m7i.large"),
456            Self::M7i_xlarge => write!(f, "m7i.xlarge"),
457            Self::M7i_2xlarge => write!(f, "m7i.2xlarge"),
458            Self::M7i_4xlarge => write!(f, "m7i.4xlarge"),
459            Self::M7i_8xlarge => write!(f, "m7i.8xlarge"),
460            Self::M7i_12xlarge => write!(f, "m7i.12xlarge"),
461            Self::M7i_16xlarge => write!(f, "m7i.16xlarge"),
462            Self::M7i_24xlarge => write!(f, "m7i.24xlarge"),
463            Self::M7i_metal_24xl => write!(f, "m7i.metal-24xl"),
464            Self::M7i_48xlarge => write!(f, "m7i.48xlarge"),
465            Self::M7i_metal_48xl => write!(f, "m7i.metal-48xl"),
466            Self::M8gd_medium => write!(f, "m8gd.medium"),
467            Self::M8gd_large => write!(f, "m8gd.large"),
468            Self::M8gd_xlarge => write!(f, "m8gd.xlarge"),
469            Self::M8gd_2xlarge => write!(f, "m8gd.2xlarge"),
470            Self::M8gd_4xlarge => write!(f, "m8gd.4xlarge"),
471            Self::M8gd_8xlarge => write!(f, "m8gd.8xlarge"),
472            Self::M8gd_12xlarge => write!(f, "m8gd.12xlarge"),
473            Self::M8gd_16xlarge => write!(f, "m8gd.16xlarge"),
474            Self::M8gd_24xlarge => write!(f, "m8gd.24xlarge"),
475            Self::M8gd_metal_24xl => write!(f, "m8gd.metal-24xl"),
476            Self::M8gd_48xlarge => write!(f, "m8gd.48xlarge"),
477            Self::M8gd_metal_48xl => write!(f, "m8gd.metal-48xl"),
478            Self::R6gd_medium => write!(f, "r6gd.medium"),
479            Self::R6gd_large => write!(f, "r6gd.large"),
480            Self::R6gd_xlarge => write!(f, "r6gd.xlarge"),
481            Self::R6gd_2xlarge => write!(f, "r6gd.2xlarge"),
482            Self::R6gd_4xlarge => write!(f, "r6gd.4xlarge"),
483            Self::R6gd_8xlarge => write!(f, "r6gd.8xlarge"),
484            Self::R6gd_12xlarge => write!(f, "r6gd.12xlarge"),
485            Self::R6gd_16xlarge => write!(f, "r6gd.16xlarge"),
486            Self::R6gd_metal => write!(f, "r6gd.metal"),
487            Self::R6id_large => write!(f, "r6id.large"),
488            Self::R6id_xlarge => write!(f, "r6id.xlarge"),
489            Self::R6id_2xlarge => write!(f, "r6id.2xlarge"),
490            Self::R6id_4xlarge => write!(f, "r6id.4xlarge"),
491            Self::R6id_8xlarge => write!(f, "r6id.8xlarge"),
492            Self::R6id_12xlarge => write!(f, "r6id.12xlarge"),
493            Self::R6id_16xlarge => write!(f, "r6id.16xlarge"),
494            Self::R6id_24xlarge => write!(f, "r6id.24xlarge"),
495            Self::R6id_32xlarge => write!(f, "r6id.32xlarge"),
496            Self::R6id_metal => write!(f, "r6id.metal"),
497            Self::R8gd_medium => write!(f, "r8gd.medium"),
498            Self::R8gd_large => write!(f, "r8gd.large"),
499            Self::R8gd_xlarge => write!(f, "r8gd.xlarge"),
500            Self::R8gd_2xlarge => write!(f, "r8gd.2xlarge"),
501            Self::R8gd_4xlarge => write!(f, "r8gd.4xlarge"),
502            Self::R8gd_8xlarge => write!(f, "r8gd.8xlarge"),
503            Self::R8gd_12xlarge => write!(f, "r8gd.12xlarge"),
504            Self::R8gd_16xlarge => write!(f, "r8gd.16xlarge"),
505            Self::R8gd_24xlarge => write!(f, "r8gd.24xlarge"),
506            Self::R8gd_metal_24xl => write!(f, "r8gd.metal-24xl"),
507            Self::R8gd_48xlarge => write!(f, "r8gd.48xlarge"),
508            Self::R8gd_metal_48xl => write!(f, "r8gd.metal-48xl"),
509            Self::Unknown(s) => write!(f, "{s}"),
510        }
511    }
512}
513
514/// `pgStateProperty` enum from the ClickHouse Cloud API.
515#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
516pub enum PgStateProperty {
517    #[serde(rename = "creating")]
518    #[default]
519    Creating,
520    #[serde(rename = "restarting")]
521    Restarting,
522    #[serde(rename = "running")]
523    Running,
524    #[serde(rename = "replaying_wal")]
525    Replaying_wal,
526    #[serde(rename = "restoring_backup")]
527    Restoring_backup,
528    #[serde(rename = "finalizing_restore")]
529    Finalizing_restore,
530    #[serde(rename = "unavailable")]
531    Unavailable,
532    #[serde(rename = "deleting")]
533    Deleting,
534    /// Catch-all for unknown or newly-added values.
535    #[serde(untagged)]
536    Unknown(String),
537}
538
539impl std::fmt::Display for PgStateProperty {
540    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
541        match self {
542            Self::Creating => write!(f, "creating"),
543            Self::Restarting => write!(f, "restarting"),
544            Self::Running => write!(f, "running"),
545            Self::Replaying_wal => write!(f, "replaying_wal"),
546            Self::Restoring_backup => write!(f, "restoring_backup"),
547            Self::Finalizing_restore => write!(f, "finalizing_restore"),
548            Self::Unavailable => write!(f, "unavailable"),
549            Self::Deleting => write!(f, "deleting"),
550            Self::Unknown(s) => write!(f, "{s}"),
551        }
552    }
553}
554
555/// `pgVersion` enum from the ClickHouse Cloud API.
556#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
557pub enum PgVersion {
558    #[serde(rename = "18")]
559    #[default]
560    _18,
561    #[serde(rename = "17")]
562    _17,
563    #[serde(rename = "16")]
564    _16,
565    /// Catch-all for unknown or newly-added values.
566    #[serde(untagged)]
567    Unknown(String),
568}
569
570impl std::fmt::Display for PgVersion {
571    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
572        match self {
573            Self::_18 => write!(f, "18"),
574            Self::_17 => write!(f, "17"),
575            Self::_16 => write!(f, "16"),
576            Self::Unknown(s) => write!(f, "{s}"),
577        }
578    }
579}
580
581/// Inline enum for `Activity.actorType`.
582#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
583pub enum ActivityActortype {
584    #[serde(rename = "user")]
585    #[default]
586    User,
587    #[serde(rename = "support")]
588    Support,
589    #[serde(rename = "system")]
590    System,
591    #[serde(rename = "api")]
592    Api,
593    /// Catch-all for unknown or newly-added values.
594    #[serde(untagged)]
595    Unknown(String),
596}
597
598impl std::fmt::Display for ActivityActortype {
599    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
600        match self {
601            Self::User => write!(f, "user"),
602            Self::Support => write!(f, "support"),
603            Self::System => write!(f, "system"),
604            Self::Api => write!(f, "api"),
605            Self::Unknown(s) => write!(f, "{s}"),
606        }
607    }
608}
609
610/// Inline enum for `Activity.keyUpdateType`.
611#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
612pub enum ActivityKeyupdatetype {
613    #[serde(rename = "created")]
614    #[default]
615    Created,
616    #[serde(rename = "deleted")]
617    Deleted,
618    #[serde(rename = "name-changed")]
619    Name_changed,
620    #[serde(rename = "role-changed")]
621    Role_changed,
622    #[serde(rename = "state-changed")]
623    State_changed,
624    #[serde(rename = "date-changed")]
625    Date_changed,
626    #[serde(rename = "ip-access-list-changed")]
627    Ip_access_list_changed,
628    #[serde(rename = "org-role-changed")]
629    Org_role_changed,
630    #[serde(rename = "default-service-role-changed")]
631    Default_service_role_changed,
632    #[serde(rename = "service-role-changed")]
633    Service_role_changed,
634    #[serde(rename = "roles-v2-changed")]
635    Roles_v2_changed,
636    /// Catch-all for unknown or newly-added values.
637    #[serde(untagged)]
638    Unknown(String),
639}
640
641impl std::fmt::Display for ActivityKeyupdatetype {
642    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
643        match self {
644            Self::Created => write!(f, "created"),
645            Self::Deleted => write!(f, "deleted"),
646            Self::Name_changed => write!(f, "name-changed"),
647            Self::Role_changed => write!(f, "role-changed"),
648            Self::State_changed => write!(f, "state-changed"),
649            Self::Date_changed => write!(f, "date-changed"),
650            Self::Ip_access_list_changed => write!(f, "ip-access-list-changed"),
651            Self::Org_role_changed => write!(f, "org-role-changed"),
652            Self::Default_service_role_changed => write!(f, "default-service-role-changed"),
653            Self::Service_role_changed => write!(f, "service-role-changed"),
654            Self::Roles_v2_changed => write!(f, "roles-v2-changed"),
655            Self::Unknown(s) => write!(f, "{s}"),
656        }
657    }
658}
659
660/// Inline enum for `Activity.type`.
661#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
662pub enum ActivityType {
663    #[serde(rename = "create_organization")]
664    #[default]
665    Create_organization,
666    #[serde(rename = "organization_update_name")]
667    Organization_update_name,
668    #[serde(rename = "transfer_service_in")]
669    Transfer_service_in,
670    #[serde(rename = "transfer_service_out")]
671    Transfer_service_out,
672    #[serde(rename = "save_payment_method")]
673    Save_payment_method,
674    #[serde(rename = "marketplace_subscription")]
675    Marketplace_subscription,
676    #[serde(rename = "migrate_marketplace_billing_details_in")]
677    Migrate_marketplace_billing_details_in,
678    #[serde(rename = "migrate_marketplace_billing_details_out")]
679    Migrate_marketplace_billing_details_out,
680    #[serde(rename = "organization_update_tier")]
681    Organization_update_tier,
682    #[serde(rename = "organization_invite_create")]
683    Organization_invite_create,
684    #[serde(rename = "organization_invite_delete")]
685    Organization_invite_delete,
686    #[serde(rename = "organization_member_join")]
687    Organization_member_join,
688    #[serde(rename = "organization_member_add")]
689    Organization_member_add,
690    #[serde(rename = "organization_member_leave")]
691    Organization_member_leave,
692    #[serde(rename = "organization_member_delete")]
693    Organization_member_delete,
694    #[serde(rename = "organization_member_update_role")]
695    Organization_member_update_role,
696    #[serde(rename = "organization_member_update_mfa_method")]
697    Organization_member_update_mfa_method,
698    #[serde(rename = "user_login")]
699    User_login,
700    #[serde(rename = "user_login_failed")]
701    User_login_failed,
702    #[serde(rename = "user_logout")]
703    User_logout,
704    #[serde(rename = "key_create")]
705    Key_create,
706    #[serde(rename = "key_delete")]
707    Key_delete,
708    #[serde(rename = "openapi_key_update")]
709    Openapi_key_update,
710    #[serde(rename = "service_create")]
711    Service_create,
712    #[serde(rename = "service_start")]
713    Service_start,
714    #[serde(rename = "service_stop")]
715    Service_stop,
716    #[serde(rename = "service_awaken")]
717    Service_awaken,
718    #[serde(rename = "service_idle")]
719    Service_idle,
720    #[serde(rename = "service_running")]
721    Service_running,
722    #[serde(rename = "service_partially_running")]
723    Service_partially_running,
724    #[serde(rename = "service_delete")]
725    Service_delete,
726    #[serde(rename = "service_update_name")]
727    Service_update_name,
728    #[serde(rename = "service_update_ip_access_list")]
729    Service_update_ip_access_list,
730    #[serde(rename = "service_update_autoscaling_memory")]
731    Service_update_autoscaling_memory,
732    #[serde(rename = "service_update_autoscaling_idling")]
733    Service_update_autoscaling_idling,
734    #[serde(rename = "service_update_password")]
735    Service_update_password,
736    #[serde(rename = "service_update_autoscaling_replicas")]
737    Service_update_autoscaling_replicas,
738    #[serde(rename = "service_update_max_allowable_replicas")]
739    Service_update_max_allowable_replicas,
740    #[serde(rename = "service_update_backup_configuration")]
741    Service_update_backup_configuration,
742    #[serde(rename = "service_restore_backup")]
743    Service_restore_backup,
744    #[serde(rename = "service_update_release_channel")]
745    Service_update_release_channel,
746    #[serde(rename = "service_update_gpt_usage_consent")]
747    Service_update_gpt_usage_consent,
748    #[serde(rename = "service_update_private_endpoints")]
749    Service_update_private_endpoints,
750    #[serde(rename = "service_import_to_organization")]
751    Service_import_to_organization,
752    #[serde(rename = "service_export_from_organization")]
753    Service_export_from_organization,
754    #[serde(rename = "service_maintenance_start")]
755    Service_maintenance_start,
756    #[serde(rename = "service_maintenance_end")]
757    Service_maintenance_end,
758    #[serde(rename = "service_update_core_dump")]
759    Service_update_core_dump,
760    #[serde(rename = "backup_delete")]
761    Backup_delete,
762    /// Catch-all for unknown or newly-added values.
763    #[serde(untagged)]
764    Unknown(String),
765}
766
767impl std::fmt::Display for ActivityType {
768    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
769        match self {
770            Self::Create_organization => write!(f, "create_organization"),
771            Self::Organization_update_name => write!(f, "organization_update_name"),
772            Self::Transfer_service_in => write!(f, "transfer_service_in"),
773            Self::Transfer_service_out => write!(f, "transfer_service_out"),
774            Self::Save_payment_method => write!(f, "save_payment_method"),
775            Self::Marketplace_subscription => write!(f, "marketplace_subscription"),
776            Self::Migrate_marketplace_billing_details_in => write!(f, "migrate_marketplace_billing_details_in"),
777            Self::Migrate_marketplace_billing_details_out => write!(f, "migrate_marketplace_billing_details_out"),
778            Self::Organization_update_tier => write!(f, "organization_update_tier"),
779            Self::Organization_invite_create => write!(f, "organization_invite_create"),
780            Self::Organization_invite_delete => write!(f, "organization_invite_delete"),
781            Self::Organization_member_join => write!(f, "organization_member_join"),
782            Self::Organization_member_add => write!(f, "organization_member_add"),
783            Self::Organization_member_leave => write!(f, "organization_member_leave"),
784            Self::Organization_member_delete => write!(f, "organization_member_delete"),
785            Self::Organization_member_update_role => write!(f, "organization_member_update_role"),
786            Self::Organization_member_update_mfa_method => write!(f, "organization_member_update_mfa_method"),
787            Self::User_login => write!(f, "user_login"),
788            Self::User_login_failed => write!(f, "user_login_failed"),
789            Self::User_logout => write!(f, "user_logout"),
790            Self::Key_create => write!(f, "key_create"),
791            Self::Key_delete => write!(f, "key_delete"),
792            Self::Openapi_key_update => write!(f, "openapi_key_update"),
793            Self::Service_create => write!(f, "service_create"),
794            Self::Service_start => write!(f, "service_start"),
795            Self::Service_stop => write!(f, "service_stop"),
796            Self::Service_awaken => write!(f, "service_awaken"),
797            Self::Service_idle => write!(f, "service_idle"),
798            Self::Service_running => write!(f, "service_running"),
799            Self::Service_partially_running => write!(f, "service_partially_running"),
800            Self::Service_delete => write!(f, "service_delete"),
801            Self::Service_update_name => write!(f, "service_update_name"),
802            Self::Service_update_ip_access_list => write!(f, "service_update_ip_access_list"),
803            Self::Service_update_autoscaling_memory => write!(f, "service_update_autoscaling_memory"),
804            Self::Service_update_autoscaling_idling => write!(f, "service_update_autoscaling_idling"),
805            Self::Service_update_password => write!(f, "service_update_password"),
806            Self::Service_update_autoscaling_replicas => write!(f, "service_update_autoscaling_replicas"),
807            Self::Service_update_max_allowable_replicas => write!(f, "service_update_max_allowable_replicas"),
808            Self::Service_update_backup_configuration => write!(f, "service_update_backup_configuration"),
809            Self::Service_restore_backup => write!(f, "service_restore_backup"),
810            Self::Service_update_release_channel => write!(f, "service_update_release_channel"),
811            Self::Service_update_gpt_usage_consent => write!(f, "service_update_gpt_usage_consent"),
812            Self::Service_update_private_endpoints => write!(f, "service_update_private_endpoints"),
813            Self::Service_import_to_organization => write!(f, "service_import_to_organization"),
814            Self::Service_export_from_organization => write!(f, "service_export_from_organization"),
815            Self::Service_maintenance_start => write!(f, "service_maintenance_start"),
816            Self::Service_maintenance_end => write!(f, "service_maintenance_end"),
817            Self::Service_update_core_dump => write!(f, "service_update_core_dump"),
818            Self::Backup_delete => write!(f, "backup_delete"),
819            Self::Unknown(s) => write!(f, "{s}"),
820        }
821    }
822}
823
824/// Inline enum for `ApiKey.state`.
825#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
826pub enum ApiKeyState {
827    #[serde(rename = "enabled")]
828    #[default]
829    Enabled,
830    #[serde(rename = "disabled")]
831    Disabled,
832    /// Catch-all for unknown or newly-added values.
833    #[serde(untagged)]
834    Unknown(String),
835}
836
837impl std::fmt::Display for ApiKeyState {
838    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
839        match self {
840            Self::Enabled => write!(f, "enabled"),
841            Self::Disabled => write!(f, "disabled"),
842            Self::Unknown(s) => write!(f, "{s}"),
843        }
844    }
845}
846
847/// Inline enum for `ApiKeyPatchRequest.state`.
848#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
849pub enum ApiKeyPatchRequestState {
850    #[serde(rename = "enabled")]
851    #[default]
852    Enabled,
853    #[serde(rename = "disabled")]
854    Disabled,
855    /// Catch-all for unknown or newly-added values.
856    #[serde(untagged)]
857    Unknown(String),
858}
859
860impl std::fmt::Display for ApiKeyPatchRequestState {
861    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
862        match self {
863            Self::Enabled => write!(f, "enabled"),
864            Self::Disabled => write!(f, "disabled"),
865            Self::Unknown(s) => write!(f, "{s}"),
866        }
867    }
868}
869
870/// Inline enum for `ApiKeyPostRequest.state`.
871#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
872pub enum ApiKeyPostRequestState {
873    #[serde(rename = "enabled")]
874    #[default]
875    Enabled,
876    #[serde(rename = "disabled")]
877    Disabled,
878    /// Catch-all for unknown or newly-added values.
879    #[serde(untagged)]
880    Unknown(String),
881}
882
883impl std::fmt::Display for ApiKeyPostRequestState {
884    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
885        match self {
886            Self::Enabled => write!(f, "enabled"),
887            Self::Disabled => write!(f, "disabled"),
888            Self::Unknown(s) => write!(f, "{s}"),
889        }
890    }
891}
892
893/// Inline enum for `AssignedRole.roleType`.
894#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
895pub enum AssignedRoleRoletype {
896    #[serde(rename = "system")]
897    #[default]
898    System,
899    #[serde(rename = "custom")]
900    Custom,
901    /// Catch-all for unknown or newly-added values.
902    #[serde(untagged)]
903    Unknown(String),
904}
905
906impl std::fmt::Display for AssignedRoleRoletype {
907    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
908        match self {
909            Self::System => write!(f, "system"),
910            Self::Custom => write!(f, "custom"),
911            Self::Unknown(s) => write!(f, "{s}"),
912        }
913    }
914}
915
916/// Inline enum for `AwsBackupBucket.bucketProvider`.
917#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
918pub enum AwsBackupBucketBucketprovider {
919    #[default]
920    AWS,
921    /// Catch-all for unknown or newly-added values.
922    #[serde(untagged)]
923    Unknown(String),
924}
925
926impl std::fmt::Display for AwsBackupBucketBucketprovider {
927    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
928        match self {
929            Self::AWS => write!(f, "AWS"),
930            Self::Unknown(s) => write!(f, "{s}"),
931        }
932    }
933}
934
935/// Inline enum for `AwsBackupBucketPatchRequestV1.bucketProvider`.
936#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
937pub enum AwsBackupBucketPatchRequestV1Bucketprovider {
938    #[default]
939    AWS,
940    /// Catch-all for unknown or newly-added values.
941    #[serde(untagged)]
942    Unknown(String),
943}
944
945impl std::fmt::Display for AwsBackupBucketPatchRequestV1Bucketprovider {
946    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
947        match self {
948            Self::AWS => write!(f, "AWS"),
949            Self::Unknown(s) => write!(f, "{s}"),
950        }
951    }
952}
953
954/// Inline enum for `AwsBackupBucketPostRequestV1.bucketProvider`.
955#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
956pub enum AwsBackupBucketPostRequestV1Bucketprovider {
957    #[default]
958    AWS,
959    /// Catch-all for unknown or newly-added values.
960    #[serde(untagged)]
961    Unknown(String),
962}
963
964impl std::fmt::Display for AwsBackupBucketPostRequestV1Bucketprovider {
965    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
966        match self {
967            Self::AWS => write!(f, "AWS"),
968            Self::Unknown(s) => write!(f, "{s}"),
969        }
970    }
971}
972
973/// Inline enum for `AwsBackupBucketProperties.bucketProvider`.
974#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
975pub enum AwsBackupBucketPropertiesBucketprovider {
976    #[default]
977    AWS,
978    /// Catch-all for unknown or newly-added values.
979    #[serde(untagged)]
980    Unknown(String),
981}
982
983impl std::fmt::Display for AwsBackupBucketPropertiesBucketprovider {
984    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
985        match self {
986            Self::AWS => write!(f, "AWS"),
987            Self::Unknown(s) => write!(f, "{s}"),
988        }
989    }
990}
991
992/// Inline enum for `AzureBackupBucket.bucketProvider`.
993#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
994pub enum AzureBackupBucketBucketprovider {
995    #[default]
996    AZURE,
997    /// Catch-all for unknown or newly-added values.
998    #[serde(untagged)]
999    Unknown(String),
1000}
1001
1002impl std::fmt::Display for AzureBackupBucketBucketprovider {
1003    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1004        match self {
1005            Self::AZURE => write!(f, "AZURE"),
1006            Self::Unknown(s) => write!(f, "{s}"),
1007        }
1008    }
1009}
1010
1011/// Inline enum for `AzureBackupBucketPatchRequestV1.bucketProvider`.
1012#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1013pub enum AzureBackupBucketPatchRequestV1Bucketprovider {
1014    #[default]
1015    AZURE,
1016    /// Catch-all for unknown or newly-added values.
1017    #[serde(untagged)]
1018    Unknown(String),
1019}
1020
1021impl std::fmt::Display for AzureBackupBucketPatchRequestV1Bucketprovider {
1022    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1023        match self {
1024            Self::AZURE => write!(f, "AZURE"),
1025            Self::Unknown(s) => write!(f, "{s}"),
1026        }
1027    }
1028}
1029
1030/// Inline enum for `AzureBackupBucketPostRequestV1.bucketProvider`.
1031#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1032pub enum AzureBackupBucketPostRequestV1Bucketprovider {
1033    #[default]
1034    AZURE,
1035    /// Catch-all for unknown or newly-added values.
1036    #[serde(untagged)]
1037    Unknown(String),
1038}
1039
1040impl std::fmt::Display for AzureBackupBucketPostRequestV1Bucketprovider {
1041    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1042        match self {
1043            Self::AZURE => write!(f, "AZURE"),
1044            Self::Unknown(s) => write!(f, "{s}"),
1045        }
1046    }
1047}
1048
1049/// Inline enum for `AzureBackupBucketProperties.bucketProvider`.
1050#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1051pub enum AzureBackupBucketPropertiesBucketprovider {
1052    #[default]
1053    AZURE,
1054    /// Catch-all for unknown or newly-added values.
1055    #[serde(untagged)]
1056    Unknown(String),
1057}
1058
1059impl std::fmt::Display for AzureBackupBucketPropertiesBucketprovider {
1060    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1061        match self {
1062            Self::AZURE => write!(f, "AZURE"),
1063            Self::Unknown(s) => write!(f, "{s}"),
1064        }
1065    }
1066}
1067
1068/// Inline enum for `Backup.status`.
1069#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1070pub enum BackupStatus {
1071    #[serde(rename = "done")]
1072    #[default]
1073    Done,
1074    #[serde(rename = "error")]
1075    Error,
1076    #[serde(rename = "in_progress")]
1077    In_progress,
1078    /// Catch-all for unknown or newly-added values.
1079    #[serde(untagged)]
1080    Unknown(String),
1081}
1082
1083impl std::fmt::Display for BackupStatus {
1084    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1085        match self {
1086            Self::Done => write!(f, "done"),
1087            Self::Error => write!(f, "error"),
1088            Self::In_progress => write!(f, "in_progress"),
1089            Self::Unknown(s) => write!(f, "{s}"),
1090        }
1091    }
1092}
1093
1094/// Inline enum for `Backup.type`.
1095#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1096pub enum BackupType {
1097    #[serde(rename = "full")]
1098    #[default]
1099    Full,
1100    #[serde(rename = "incremental")]
1101    Incremental,
1102    /// Catch-all for unknown or newly-added values.
1103    #[serde(untagged)]
1104    Unknown(String),
1105}
1106
1107impl std::fmt::Display for BackupType {
1108    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1109        match self {
1110            Self::Full => write!(f, "full"),
1111            Self::Incremental => write!(f, "incremental"),
1112            Self::Unknown(s) => write!(f, "{s}"),
1113        }
1114    }
1115}
1116
1117/// Inline enum for `ByocConfig.cloudProvider`.
1118#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1119pub enum ByocConfigCloudprovider {
1120    #[serde(rename = "gcp")]
1121    #[default]
1122    Gcp,
1123    #[serde(rename = "aws")]
1124    Aws,
1125    #[serde(rename = "azure")]
1126    Azure,
1127    /// Catch-all for unknown or newly-added values.
1128    #[serde(untagged)]
1129    Unknown(String),
1130}
1131
1132impl std::fmt::Display for ByocConfigCloudprovider {
1133    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1134        match self {
1135            Self::Gcp => write!(f, "gcp"),
1136            Self::Aws => write!(f, "aws"),
1137            Self::Azure => write!(f, "azure"),
1138            Self::Unknown(s) => write!(f, "{s}"),
1139        }
1140    }
1141}
1142
1143/// Inline enum for `ByocConfig.regionId`.
1144#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1145pub enum ByocConfigRegionid {
1146    #[serde(rename = "ap-northeast-1")]
1147    #[default]
1148    Ap_northeast_1,
1149    #[serde(rename = "ap-northeast-2")]
1150    Ap_northeast_2,
1151    #[serde(rename = "ap-south-1")]
1152    Ap_south_1,
1153    #[serde(rename = "ap-southeast-1")]
1154    Ap_southeast_1,
1155    #[serde(rename = "ap-southeast-2")]
1156    Ap_southeast_2,
1157    #[serde(rename = "eu-central-1")]
1158    Eu_central_1,
1159    #[serde(rename = "eu-west-1")]
1160    Eu_west_1,
1161    #[serde(rename = "eu-west-2")]
1162    Eu_west_2,
1163    #[serde(rename = "il-central-1")]
1164    Il_central_1,
1165    #[serde(rename = "us-east-1")]
1166    Us_east_1,
1167    #[serde(rename = "us-east-2")]
1168    Us_east_2,
1169    #[serde(rename = "us-west-2")]
1170    Us_west_2,
1171    #[serde(rename = "us-east1")]
1172    Us_east1,
1173    #[serde(rename = "us-central1")]
1174    Us_central1,
1175    #[serde(rename = "europe-west4")]
1176    Europe_west4,
1177    #[serde(rename = "asia-southeast1")]
1178    Asia_southeast1,
1179    #[serde(rename = "asia-northeast1")]
1180    Asia_northeast1,
1181    #[serde(rename = "eastus")]
1182    Eastus,
1183    #[serde(rename = "eastus2")]
1184    Eastus2,
1185    #[serde(rename = "westus3")]
1186    Westus3,
1187    #[serde(rename = "germanywestcentral")]
1188    Germanywestcentral,
1189    #[serde(rename = "centralus")]
1190    Centralus,
1191    /// Catch-all for unknown or newly-added values.
1192    #[serde(untagged)]
1193    Unknown(String),
1194}
1195
1196impl std::fmt::Display for ByocConfigRegionid {
1197    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1198        match self {
1199            Self::Ap_northeast_1 => write!(f, "ap-northeast-1"),
1200            Self::Ap_northeast_2 => write!(f, "ap-northeast-2"),
1201            Self::Ap_south_1 => write!(f, "ap-south-1"),
1202            Self::Ap_southeast_1 => write!(f, "ap-southeast-1"),
1203            Self::Ap_southeast_2 => write!(f, "ap-southeast-2"),
1204            Self::Eu_central_1 => write!(f, "eu-central-1"),
1205            Self::Eu_west_1 => write!(f, "eu-west-1"),
1206            Self::Eu_west_2 => write!(f, "eu-west-2"),
1207            Self::Il_central_1 => write!(f, "il-central-1"),
1208            Self::Us_east_1 => write!(f, "us-east-1"),
1209            Self::Us_east_2 => write!(f, "us-east-2"),
1210            Self::Us_west_2 => write!(f, "us-west-2"),
1211            Self::Us_east1 => write!(f, "us-east1"),
1212            Self::Us_central1 => write!(f, "us-central1"),
1213            Self::Europe_west4 => write!(f, "europe-west4"),
1214            Self::Asia_southeast1 => write!(f, "asia-southeast1"),
1215            Self::Asia_northeast1 => write!(f, "asia-northeast1"),
1216            Self::Eastus => write!(f, "eastus"),
1217            Self::Eastus2 => write!(f, "eastus2"),
1218            Self::Westus3 => write!(f, "westus3"),
1219            Self::Germanywestcentral => write!(f, "germanywestcentral"),
1220            Self::Centralus => write!(f, "centralus"),
1221            Self::Unknown(s) => write!(f, "{s}"),
1222        }
1223    }
1224}
1225
1226/// Inline enum for `ByocConfig.state`.
1227#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1228pub enum ByocConfigState {
1229    #[serde(rename = "infra-ready")]
1230    #[default]
1231    Infra_ready,
1232    #[serde(rename = "infra-provisioning")]
1233    Infra_provisioning,
1234    #[serde(rename = "infra-terminated")]
1235    Infra_terminated,
1236    /// Catch-all for unknown or newly-added values.
1237    #[serde(untagged)]
1238    Unknown(String),
1239}
1240
1241impl std::fmt::Display for ByocConfigState {
1242    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1243        match self {
1244            Self::Infra_ready => write!(f, "infra-ready"),
1245            Self::Infra_provisioning => write!(f, "infra-provisioning"),
1246            Self::Infra_terminated => write!(f, "infra-terminated"),
1247            Self::Unknown(s) => write!(f, "{s}"),
1248        }
1249    }
1250}
1251
1252/// Inline enum for `ByocInfrastructurePostRequest.regionId`.
1253#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1254pub enum ByocInfrastructurePostRequestRegionid {
1255    #[serde(rename = "ap-northeast-1")]
1256    #[default]
1257    Ap_northeast_1,
1258    #[serde(rename = "ap-northeast-2")]
1259    Ap_northeast_2,
1260    #[serde(rename = "ap-south-1")]
1261    Ap_south_1,
1262    #[serde(rename = "ap-southeast-1")]
1263    Ap_southeast_1,
1264    #[serde(rename = "ap-southeast-2")]
1265    Ap_southeast_2,
1266    #[serde(rename = "eu-central-1")]
1267    Eu_central_1,
1268    #[serde(rename = "eu-west-1")]
1269    Eu_west_1,
1270    #[serde(rename = "eu-west-2")]
1271    Eu_west_2,
1272    #[serde(rename = "il-central-1")]
1273    Il_central_1,
1274    #[serde(rename = "us-east-1")]
1275    Us_east_1,
1276    #[serde(rename = "us-east-2")]
1277    Us_east_2,
1278    #[serde(rename = "us-west-2")]
1279    Us_west_2,
1280    #[serde(rename = "us-east1")]
1281    Us_east1,
1282    #[serde(rename = "us-central1")]
1283    Us_central1,
1284    #[serde(rename = "europe-west4")]
1285    Europe_west4,
1286    #[serde(rename = "asia-southeast1")]
1287    Asia_southeast1,
1288    #[serde(rename = "asia-northeast1")]
1289    Asia_northeast1,
1290    #[serde(rename = "eastus")]
1291    Eastus,
1292    #[serde(rename = "eastus2")]
1293    Eastus2,
1294    #[serde(rename = "westus3")]
1295    Westus3,
1296    #[serde(rename = "germanywestcentral")]
1297    Germanywestcentral,
1298    #[serde(rename = "centralus")]
1299    Centralus,
1300    /// Catch-all for unknown or newly-added values.
1301    #[serde(untagged)]
1302    Unknown(String),
1303}
1304
1305impl std::fmt::Display for ByocInfrastructurePostRequestRegionid {
1306    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1307        match self {
1308            Self::Ap_northeast_1 => write!(f, "ap-northeast-1"),
1309            Self::Ap_northeast_2 => write!(f, "ap-northeast-2"),
1310            Self::Ap_south_1 => write!(f, "ap-south-1"),
1311            Self::Ap_southeast_1 => write!(f, "ap-southeast-1"),
1312            Self::Ap_southeast_2 => write!(f, "ap-southeast-2"),
1313            Self::Eu_central_1 => write!(f, "eu-central-1"),
1314            Self::Eu_west_1 => write!(f, "eu-west-1"),
1315            Self::Eu_west_2 => write!(f, "eu-west-2"),
1316            Self::Il_central_1 => write!(f, "il-central-1"),
1317            Self::Us_east_1 => write!(f, "us-east-1"),
1318            Self::Us_east_2 => write!(f, "us-east-2"),
1319            Self::Us_west_2 => write!(f, "us-west-2"),
1320            Self::Us_east1 => write!(f, "us-east1"),
1321            Self::Us_central1 => write!(f, "us-central1"),
1322            Self::Europe_west4 => write!(f, "europe-west4"),
1323            Self::Asia_southeast1 => write!(f, "asia-southeast1"),
1324            Self::Asia_northeast1 => write!(f, "asia-northeast1"),
1325            Self::Eastus => write!(f, "eastus"),
1326            Self::Eastus2 => write!(f, "eastus2"),
1327            Self::Westus3 => write!(f, "westus3"),
1328            Self::Germanywestcentral => write!(f, "germanywestcentral"),
1329            Self::Centralus => write!(f, "centralus"),
1330            Self::Unknown(s) => write!(f, "{s}"),
1331        }
1332    }
1333}
1334
1335/// Inline enum for `ClickPipe.state`.
1336#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1337pub enum ClickPipeState {
1338    #[default]
1339    Unknown,
1340    Provisioning,
1341    Running,
1342    Stopping,
1343    Stopped,
1344    Failed,
1345    Completed,
1346    InternalError,
1347    Setup,
1348    Snapshot,
1349    Paused,
1350    Pausing,
1351    Modifying,
1352    Resync,
1353    /// Catch-all for unknown or newly-added values.
1354    #[serde(untagged)]
1355    Other(String),
1356}
1357
1358impl std::fmt::Display for ClickPipeState {
1359    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1360        match self {
1361            Self::Unknown => write!(f, "Unknown"),
1362            Self::Provisioning => write!(f, "Provisioning"),
1363            Self::Running => write!(f, "Running"),
1364            Self::Stopping => write!(f, "Stopping"),
1365            Self::Stopped => write!(f, "Stopped"),
1366            Self::Failed => write!(f, "Failed"),
1367            Self::Completed => write!(f, "Completed"),
1368            Self::InternalError => write!(f, "InternalError"),
1369            Self::Setup => write!(f, "Setup"),
1370            Self::Snapshot => write!(f, "Snapshot"),
1371            Self::Paused => write!(f, "Paused"),
1372            Self::Pausing => write!(f, "Pausing"),
1373            Self::Modifying => write!(f, "Modifying"),
1374            Self::Resync => write!(f, "Resync"),
1375            Self::Other(s) => write!(f, "{s}"),
1376        }
1377    }
1378}
1379
1380/// Inline enum for `ClickPipeBigQueryPipeSettings.replicationMode`.
1381#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1382pub enum ClickPipeBigQueryPipeSettingsReplicationmode {
1383    #[serde(rename = "snapshot")]
1384    #[default]
1385    Snapshot,
1386    /// Catch-all for unknown or newly-added values.
1387    #[serde(untagged)]
1388    Unknown(String),
1389}
1390
1391impl std::fmt::Display for ClickPipeBigQueryPipeSettingsReplicationmode {
1392    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1393        match self {
1394            Self::Snapshot => write!(f, "snapshot"),
1395            Self::Unknown(s) => write!(f, "{s}"),
1396        }
1397    }
1398}
1399
1400/// Inline enum for `ClickPipeBigQueryPipeTableMapping.tableEngine`.
1401#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1402pub enum ClickPipeBigQueryPipeTableMappingTableengine {
1403    #[default]
1404    MergeTree,
1405    ReplacingMergeTree,
1406    Null,
1407    /// Catch-all for unknown or newly-added values.
1408    #[serde(untagged)]
1409    Unknown(String),
1410}
1411
1412impl std::fmt::Display for ClickPipeBigQueryPipeTableMappingTableengine {
1413    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1414        match self {
1415            Self::MergeTree => write!(f, "MergeTree"),
1416            Self::ReplacingMergeTree => write!(f, "ReplacingMergeTree"),
1417            Self::Null => write!(f, "Null"),
1418            Self::Unknown(s) => write!(f, "{s}"),
1419        }
1420    }
1421}
1422
1423/// Inline enum for `ClickPipeDestinationTableEngine.type`.
1424#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1425pub enum ClickPipeDestinationTableEngineType {
1426    #[default]
1427    MergeTree,
1428    ReplacingMergeTree,
1429    SummingMergeTree,
1430    Null,
1431    /// Catch-all for unknown or newly-added values.
1432    #[serde(untagged)]
1433    Unknown(String),
1434}
1435
1436impl std::fmt::Display for ClickPipeDestinationTableEngineType {
1437    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1438        match self {
1439            Self::MergeTree => write!(f, "MergeTree"),
1440            Self::ReplacingMergeTree => write!(f, "ReplacingMergeTree"),
1441            Self::SummingMergeTree => write!(f, "SummingMergeTree"),
1442            Self::Null => write!(f, "Null"),
1443            Self::Unknown(s) => write!(f, "{s}"),
1444        }
1445    }
1446}
1447
1448/// Inline enum for `ClickPipeKafkaOffset.strategy`.
1449#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1450pub enum ClickPipeKafkaOffsetStrategy {
1451    #[serde(rename = "from_beginning")]
1452    #[default]
1453    From_beginning,
1454    #[serde(rename = "from_latest")]
1455    From_latest,
1456    #[serde(rename = "from_timestamp")]
1457    From_timestamp,
1458    /// Catch-all for unknown or newly-added values.
1459    #[serde(untagged)]
1460    Unknown(String),
1461}
1462
1463impl std::fmt::Display for ClickPipeKafkaOffsetStrategy {
1464    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1465        match self {
1466            Self::From_beginning => write!(f, "from_beginning"),
1467            Self::From_latest => write!(f, "from_latest"),
1468            Self::From_timestamp => write!(f, "from_timestamp"),
1469            Self::Unknown(s) => write!(f, "{s}"),
1470        }
1471    }
1472}
1473
1474/// Inline enum for `ClickPipeKafkaSchemaRegistry.authentication`.
1475#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1476pub enum ClickPipeKafkaSchemaRegistryAuthentication {
1477    #[default]
1478    PLAIN,
1479    /// Catch-all for unknown or newly-added values.
1480    #[serde(untagged)]
1481    Unknown(String),
1482}
1483
1484impl std::fmt::Display for ClickPipeKafkaSchemaRegistryAuthentication {
1485    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1486        match self {
1487            Self::PLAIN => write!(f, "PLAIN"),
1488            Self::Unknown(s) => write!(f, "{s}"),
1489        }
1490    }
1491}
1492
1493/// Inline enum for `ClickPipeKafkaSource.authentication`.
1494#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1495pub enum ClickPipeKafkaSourceAuthentication {
1496    #[default]
1497    PLAIN,
1498    #[serde(rename = "SCRAM-SHA-256")]
1499    SCRAM_SHA_256,
1500    #[serde(rename = "SCRAM-SHA-512")]
1501    SCRAM_SHA_512,
1502    IAM_ROLE,
1503    IAM_USER,
1504    MUTUAL_TLS,
1505    /// Catch-all for unknown or newly-added values.
1506    #[serde(untagged)]
1507    Unknown(String),
1508}
1509
1510impl std::fmt::Display for ClickPipeKafkaSourceAuthentication {
1511    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1512        match self {
1513            Self::PLAIN => write!(f, "PLAIN"),
1514            Self::SCRAM_SHA_256 => write!(f, "SCRAM-SHA-256"),
1515            Self::SCRAM_SHA_512 => write!(f, "SCRAM-SHA-512"),
1516            Self::IAM_ROLE => write!(f, "IAM_ROLE"),
1517            Self::IAM_USER => write!(f, "IAM_USER"),
1518            Self::MUTUAL_TLS => write!(f, "MUTUAL_TLS"),
1519            Self::Unknown(s) => write!(f, "{s}"),
1520        }
1521    }
1522}
1523
1524/// Inline enum for `ClickPipeKafkaSource.format`.
1525#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1526pub enum ClickPipeKafkaSourceFormat {
1527    #[default]
1528    JSONEachRow,
1529    Avro,
1530    AvroConfluent,
1531    Protobuf,
1532    /// Catch-all for unknown or newly-added values.
1533    #[serde(untagged)]
1534    Unknown(String),
1535}
1536
1537impl std::fmt::Display for ClickPipeKafkaSourceFormat {
1538    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1539        match self {
1540            Self::JSONEachRow => write!(f, "JSONEachRow"),
1541            Self::Avro => write!(f, "Avro"),
1542            Self::AvroConfluent => write!(f, "AvroConfluent"),
1543            Self::Protobuf => write!(f, "Protobuf"),
1544            Self::Unknown(s) => write!(f, "{s}"),
1545        }
1546    }
1547}
1548
1549/// Inline enum for `ClickPipeKafkaSource.type`.
1550#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1551pub enum ClickPipeKafkaSourceType {
1552    #[serde(rename = "kafka")]
1553    #[default]
1554    Kafka,
1555    #[serde(rename = "redpanda")]
1556    Redpanda,
1557    #[serde(rename = "msk")]
1558    Msk,
1559    #[serde(rename = "gcmk")]
1560    Gcmk,
1561    #[serde(rename = "confluent")]
1562    Confluent,
1563    #[serde(rename = "warpstream")]
1564    Warpstream,
1565    #[serde(rename = "azureeventhub")]
1566    Azureeventhub,
1567    #[serde(rename = "dokafka")]
1568    Dokafka,
1569    /// Catch-all for unknown or newly-added values.
1570    #[serde(untagged)]
1571    Unknown(String),
1572}
1573
1574impl std::fmt::Display for ClickPipeKafkaSourceType {
1575    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1576        match self {
1577            Self::Kafka => write!(f, "kafka"),
1578            Self::Redpanda => write!(f, "redpanda"),
1579            Self::Msk => write!(f, "msk"),
1580            Self::Gcmk => write!(f, "gcmk"),
1581            Self::Confluent => write!(f, "confluent"),
1582            Self::Warpstream => write!(f, "warpstream"),
1583            Self::Azureeventhub => write!(f, "azureeventhub"),
1584            Self::Dokafka => write!(f, "dokafka"),
1585            Self::Unknown(s) => write!(f, "{s}"),
1586        }
1587    }
1588}
1589
1590/// Inline enum for `ClickPipeKinesisSource.authentication`.
1591#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1592pub enum ClickPipeKinesisSourceAuthentication {
1593    #[default]
1594    IAM_ROLE,
1595    IAM_USER,
1596    /// Catch-all for unknown or newly-added values.
1597    #[serde(untagged)]
1598    Unknown(String),
1599}
1600
1601impl std::fmt::Display for ClickPipeKinesisSourceAuthentication {
1602    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1603        match self {
1604            Self::IAM_ROLE => write!(f, "IAM_ROLE"),
1605            Self::IAM_USER => write!(f, "IAM_USER"),
1606            Self::Unknown(s) => write!(f, "{s}"),
1607        }
1608    }
1609}
1610
1611/// Inline enum for `ClickPipeKinesisSource.format`.
1612#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1613pub enum ClickPipeKinesisSourceFormat {
1614    #[default]
1615    JSONEachRow,
1616    Avro,
1617    AvroConfluent,
1618    /// Catch-all for unknown or newly-added values.
1619    #[serde(untagged)]
1620    Unknown(String),
1621}
1622
1623impl std::fmt::Display for ClickPipeKinesisSourceFormat {
1624    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1625        match self {
1626            Self::JSONEachRow => write!(f, "JSONEachRow"),
1627            Self::Avro => write!(f, "Avro"),
1628            Self::AvroConfluent => write!(f, "AvroConfluent"),
1629            Self::Unknown(s) => write!(f, "{s}"),
1630        }
1631    }
1632}
1633
1634/// Inline enum for `ClickPipeKinesisSource.iteratorType`.
1635#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1636pub enum ClickPipeKinesisSourceIteratortype {
1637    #[default]
1638    TRIM_HORIZON,
1639    LATEST,
1640    AT_TIMESTAMP,
1641    /// Catch-all for unknown or newly-added values.
1642    #[serde(untagged)]
1643    Unknown(String),
1644}
1645
1646impl std::fmt::Display for ClickPipeKinesisSourceIteratortype {
1647    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1648        match self {
1649            Self::TRIM_HORIZON => write!(f, "TRIM_HORIZON"),
1650            Self::LATEST => write!(f, "LATEST"),
1651            Self::AT_TIMESTAMP => write!(f, "AT_TIMESTAMP"),
1652            Self::Unknown(s) => write!(f, "{s}"),
1653        }
1654    }
1655}
1656
1657/// Inline enum for `ClickPipeMongoDBPipeSettings.replicationMode`.
1658#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1659pub enum ClickPipeMongoDBPipeSettingsReplicationmode {
1660    #[serde(rename = "cdc")]
1661    #[default]
1662    Cdc,
1663    #[serde(rename = "snapshot")]
1664    Snapshot,
1665    #[serde(rename = "cdc_only")]
1666    Cdc_only,
1667    /// Catch-all for unknown or newly-added values.
1668    #[serde(untagged)]
1669    Unknown(String),
1670}
1671
1672impl std::fmt::Display for ClickPipeMongoDBPipeSettingsReplicationmode {
1673    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1674        match self {
1675            Self::Cdc => write!(f, "cdc"),
1676            Self::Snapshot => write!(f, "snapshot"),
1677            Self::Cdc_only => write!(f, "cdc_only"),
1678            Self::Unknown(s) => write!(f, "{s}"),
1679        }
1680    }
1681}
1682
1683/// Inline enum for `ClickPipeMongoDBPipeTableMapping.tableEngine`.
1684#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1685pub enum ClickPipeMongoDBPipeTableMappingTableengine {
1686    #[default]
1687    MergeTree,
1688    ReplacingMergeTree,
1689    Null,
1690    /// Catch-all for unknown or newly-added values.
1691    #[serde(untagged)]
1692    Unknown(String),
1693}
1694
1695impl std::fmt::Display for ClickPipeMongoDBPipeTableMappingTableengine {
1696    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1697        match self {
1698            Self::MergeTree => write!(f, "MergeTree"),
1699            Self::ReplacingMergeTree => write!(f, "ReplacingMergeTree"),
1700            Self::Null => write!(f, "Null"),
1701            Self::Unknown(s) => write!(f, "{s}"),
1702        }
1703    }
1704}
1705
1706/// Inline enum for `ClickPipeMongoDBSource.readPreference`.
1707#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1708pub enum ClickPipeMongoDBSourceReadpreference {
1709    #[serde(rename = "primary")]
1710    #[default]
1711    Primary,
1712    #[serde(rename = "primaryPreferred")]
1713    PrimaryPreferred,
1714    #[serde(rename = "secondary")]
1715    Secondary,
1716    #[serde(rename = "secondaryPreferred")]
1717    SecondaryPreferred,
1718    #[serde(rename = "nearest")]
1719    Nearest,
1720    /// Catch-all for unknown or newly-added values.
1721    #[serde(untagged)]
1722    Unknown(String),
1723}
1724
1725impl std::fmt::Display for ClickPipeMongoDBSourceReadpreference {
1726    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1727        match self {
1728            Self::Primary => write!(f, "primary"),
1729            Self::PrimaryPreferred => write!(f, "primaryPreferred"),
1730            Self::Secondary => write!(f, "secondary"),
1731            Self::SecondaryPreferred => write!(f, "secondaryPreferred"),
1732            Self::Nearest => write!(f, "nearest"),
1733            Self::Unknown(s) => write!(f, "{s}"),
1734        }
1735    }
1736}
1737
1738/// Inline enum for `ClickPipeMutateKafkaSchemaRegistry.authentication`.
1739#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1740pub enum ClickPipeMutateKafkaSchemaRegistryAuthentication {
1741    #[default]
1742    PLAIN,
1743    /// Catch-all for unknown or newly-added values.
1744    #[serde(untagged)]
1745    Unknown(String),
1746}
1747
1748impl std::fmt::Display for ClickPipeMutateKafkaSchemaRegistryAuthentication {
1749    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1750        match self {
1751            Self::PLAIN => write!(f, "PLAIN"),
1752            Self::Unknown(s) => write!(f, "{s}"),
1753        }
1754    }
1755}
1756
1757/// Inline enum for `ClickPipeMutateMongoDBSource.readPreference`.
1758#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1759pub enum ClickPipeMutateMongoDBSourceReadpreference {
1760    #[serde(rename = "primary")]
1761    #[default]
1762    Primary,
1763    #[serde(rename = "primaryPreferred")]
1764    PrimaryPreferred,
1765    #[serde(rename = "secondary")]
1766    Secondary,
1767    #[serde(rename = "secondaryPreferred")]
1768    SecondaryPreferred,
1769    #[serde(rename = "nearest")]
1770    Nearest,
1771    /// Catch-all for unknown or newly-added values.
1772    #[serde(untagged)]
1773    Unknown(String),
1774}
1775
1776impl std::fmt::Display for ClickPipeMutateMongoDBSourceReadpreference {
1777    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1778        match self {
1779            Self::Primary => write!(f, "primary"),
1780            Self::PrimaryPreferred => write!(f, "primaryPreferred"),
1781            Self::Secondary => write!(f, "secondary"),
1782            Self::SecondaryPreferred => write!(f, "secondaryPreferred"),
1783            Self::Nearest => write!(f, "nearest"),
1784            Self::Unknown(s) => write!(f, "{s}"),
1785        }
1786    }
1787}
1788
1789/// Inline enum for `ClickPipeMutateMySQLSource.authentication`.
1790#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1791pub enum ClickPipeMutateMySQLSourceAuthentication {
1792    #[serde(rename = "basic")]
1793    #[default]
1794    Basic,
1795    IAM_ROLE,
1796    /// Catch-all for unknown or newly-added values.
1797    #[serde(untagged)]
1798    Unknown(String),
1799}
1800
1801impl std::fmt::Display for ClickPipeMutateMySQLSourceAuthentication {
1802    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1803        match self {
1804            Self::Basic => write!(f, "basic"),
1805            Self::IAM_ROLE => write!(f, "IAM_ROLE"),
1806            Self::Unknown(s) => write!(f, "{s}"),
1807        }
1808    }
1809}
1810
1811/// Inline enum for `ClickPipeMutateMySQLSource.type`.
1812#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1813pub enum ClickPipeMutateMySQLSourceType {
1814    #[serde(rename = "mysql")]
1815    #[default]
1816    Mysql,
1817    #[serde(rename = "rdsmysql")]
1818    Rdsmysql,
1819    #[serde(rename = "auroramysql")]
1820    Auroramysql,
1821    #[serde(rename = "mariadb")]
1822    Mariadb,
1823    #[serde(rename = "rdsmariadb")]
1824    Rdsmariadb,
1825    /// Catch-all for unknown or newly-added values.
1826    #[serde(untagged)]
1827    Unknown(String),
1828}
1829
1830impl std::fmt::Display for ClickPipeMutateMySQLSourceType {
1831    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1832        match self {
1833            Self::Mysql => write!(f, "mysql"),
1834            Self::Rdsmysql => write!(f, "rdsmysql"),
1835            Self::Auroramysql => write!(f, "auroramysql"),
1836            Self::Mariadb => write!(f, "mariadb"),
1837            Self::Rdsmariadb => write!(f, "rdsmariadb"),
1838            Self::Unknown(s) => write!(f, "{s}"),
1839        }
1840    }
1841}
1842
1843/// Inline enum for `ClickPipeMutatePostgresSource.authentication`.
1844#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1845pub enum ClickPipeMutatePostgresSourceAuthentication {
1846    #[serde(rename = "basic")]
1847    #[default]
1848    Basic,
1849    IAM_ROLE,
1850    /// Catch-all for unknown or newly-added values.
1851    #[serde(untagged)]
1852    Unknown(String),
1853}
1854
1855impl std::fmt::Display for ClickPipeMutatePostgresSourceAuthentication {
1856    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1857        match self {
1858            Self::Basic => write!(f, "basic"),
1859            Self::IAM_ROLE => write!(f, "IAM_ROLE"),
1860            Self::Unknown(s) => write!(f, "{s}"),
1861        }
1862    }
1863}
1864
1865/// Inline enum for `ClickPipeMutatePostgresSource.type`.
1866#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1867pub enum ClickPipeMutatePostgresSourceType {
1868    #[serde(rename = "postgres")]
1869    #[default]
1870    Postgres,
1871    #[serde(rename = "supabase")]
1872    Supabase,
1873    #[serde(rename = "neon")]
1874    Neon,
1875    #[serde(rename = "alloydb")]
1876    Alloydb,
1877    #[serde(rename = "planetscale")]
1878    Planetscale,
1879    #[serde(rename = "rdspostgres")]
1880    Rdspostgres,
1881    #[serde(rename = "aurorapostgres")]
1882    Aurorapostgres,
1883    #[serde(rename = "cloudsqlpostgres")]
1884    Cloudsqlpostgres,
1885    #[serde(rename = "azurepostgres")]
1886    Azurepostgres,
1887    #[serde(rename = "crunchybridge")]
1888    Crunchybridge,
1889    #[serde(rename = "tigerdata")]
1890    Tigerdata,
1891    /// Catch-all for unknown or newly-added values.
1892    #[serde(untagged)]
1893    Unknown(String),
1894}
1895
1896impl std::fmt::Display for ClickPipeMutatePostgresSourceType {
1897    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1898        match self {
1899            Self::Postgres => write!(f, "postgres"),
1900            Self::Supabase => write!(f, "supabase"),
1901            Self::Neon => write!(f, "neon"),
1902            Self::Alloydb => write!(f, "alloydb"),
1903            Self::Planetscale => write!(f, "planetscale"),
1904            Self::Rdspostgres => write!(f, "rdspostgres"),
1905            Self::Aurorapostgres => write!(f, "aurorapostgres"),
1906            Self::Cloudsqlpostgres => write!(f, "cloudsqlpostgres"),
1907            Self::Azurepostgres => write!(f, "azurepostgres"),
1908            Self::Crunchybridge => write!(f, "crunchybridge"),
1909            Self::Tigerdata => write!(f, "tigerdata"),
1910            Self::Unknown(s) => write!(f, "{s}"),
1911        }
1912    }
1913}
1914
1915/// Inline enum for `ClickPipeMySQLPipeSettings.replicationMechanism`.
1916#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1917pub enum ClickPipeMySQLPipeSettingsReplicationmechanism {
1918    #[default]
1919    GTID,
1920    FILE_POS,
1921    /// Catch-all for unknown or newly-added values.
1922    #[serde(untagged)]
1923    Unknown(String),
1924}
1925
1926impl std::fmt::Display for ClickPipeMySQLPipeSettingsReplicationmechanism {
1927    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1928        match self {
1929            Self::GTID => write!(f, "GTID"),
1930            Self::FILE_POS => write!(f, "FILE_POS"),
1931            Self::Unknown(s) => write!(f, "{s}"),
1932        }
1933    }
1934}
1935
1936/// Inline enum for `ClickPipeMySQLPipeSettings.replicationMode`.
1937#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1938pub enum ClickPipeMySQLPipeSettingsReplicationmode {
1939    #[serde(rename = "cdc")]
1940    #[default]
1941    Cdc,
1942    #[serde(rename = "snapshot")]
1943    Snapshot,
1944    #[serde(rename = "cdc_only")]
1945    Cdc_only,
1946    /// Catch-all for unknown or newly-added values.
1947    #[serde(untagged)]
1948    Unknown(String),
1949}
1950
1951impl std::fmt::Display for ClickPipeMySQLPipeSettingsReplicationmode {
1952    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1953        match self {
1954            Self::Cdc => write!(f, "cdc"),
1955            Self::Snapshot => write!(f, "snapshot"),
1956            Self::Cdc_only => write!(f, "cdc_only"),
1957            Self::Unknown(s) => write!(f, "{s}"),
1958        }
1959    }
1960}
1961
1962/// Inline enum for `ClickPipeMySQLPipeTableMapping.tableEngine`.
1963#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1964pub enum ClickPipeMySQLPipeTableMappingTableengine {
1965    #[default]
1966    MergeTree,
1967    ReplacingMergeTree,
1968    Null,
1969    /// Catch-all for unknown or newly-added values.
1970    #[serde(untagged)]
1971    Unknown(String),
1972}
1973
1974impl std::fmt::Display for ClickPipeMySQLPipeTableMappingTableengine {
1975    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1976        match self {
1977            Self::MergeTree => write!(f, "MergeTree"),
1978            Self::ReplacingMergeTree => write!(f, "ReplacingMergeTree"),
1979            Self::Null => write!(f, "Null"),
1980            Self::Unknown(s) => write!(f, "{s}"),
1981        }
1982    }
1983}
1984
1985/// Inline enum for `ClickPipeMySQLSource.authentication`.
1986#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
1987pub enum ClickPipeMySQLSourceAuthentication {
1988    #[serde(rename = "basic")]
1989    #[default]
1990    Basic,
1991    IAM_ROLE,
1992    /// Catch-all for unknown or newly-added values.
1993    #[serde(untagged)]
1994    Unknown(String),
1995}
1996
1997impl std::fmt::Display for ClickPipeMySQLSourceAuthentication {
1998    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1999        match self {
2000            Self::Basic => write!(f, "basic"),
2001            Self::IAM_ROLE => write!(f, "IAM_ROLE"),
2002            Self::Unknown(s) => write!(f, "{s}"),
2003        }
2004    }
2005}
2006
2007/// Inline enum for `ClickPipeMySQLSource.type`.
2008#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2009pub enum ClickPipeMySQLSourceType {
2010    #[serde(rename = "mysql")]
2011    #[default]
2012    Mysql,
2013    #[serde(rename = "rdsmysql")]
2014    Rdsmysql,
2015    #[serde(rename = "auroramysql")]
2016    Auroramysql,
2017    #[serde(rename = "mariadb")]
2018    Mariadb,
2019    #[serde(rename = "rdsmariadb")]
2020    Rdsmariadb,
2021    /// Catch-all for unknown or newly-added values.
2022    #[serde(untagged)]
2023    Unknown(String),
2024}
2025
2026impl std::fmt::Display for ClickPipeMySQLSourceType {
2027    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2028        match self {
2029            Self::Mysql => write!(f, "mysql"),
2030            Self::Rdsmysql => write!(f, "rdsmysql"),
2031            Self::Auroramysql => write!(f, "auroramysql"),
2032            Self::Mariadb => write!(f, "mariadb"),
2033            Self::Rdsmariadb => write!(f, "rdsmariadb"),
2034            Self::Unknown(s) => write!(f, "{s}"),
2035        }
2036    }
2037}
2038
2039/// Inline enum for `ClickPipeObjectStorageSource.authentication`.
2040#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2041pub enum ClickPipeObjectStorageSourceAuthentication {
2042    #[default]
2043    IAM_ROLE,
2044    IAM_USER,
2045    CONNECTION_STRING,
2046    SERVICE_ACCOUNT,
2047    /// Catch-all for unknown or newly-added values.
2048    #[serde(untagged)]
2049    Unknown(String),
2050}
2051
2052impl std::fmt::Display for ClickPipeObjectStorageSourceAuthentication {
2053    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2054        match self {
2055            Self::IAM_ROLE => write!(f, "IAM_ROLE"),
2056            Self::IAM_USER => write!(f, "IAM_USER"),
2057            Self::CONNECTION_STRING => write!(f, "CONNECTION_STRING"),
2058            Self::SERVICE_ACCOUNT => write!(f, "SERVICE_ACCOUNT"),
2059            Self::Unknown(s) => write!(f, "{s}"),
2060        }
2061    }
2062}
2063
2064/// Inline enum for `ClickPipeObjectStorageSource.compression`.
2065#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2066pub enum ClickPipeObjectStorageSourceCompression {
2067    #[serde(rename = "none")]
2068    #[default]
2069    None,
2070    #[serde(rename = "gzip")]
2071    Gzip,
2072    #[serde(rename = "gz")]
2073    Gz,
2074    #[serde(rename = "brotli")]
2075    Brotli,
2076    #[serde(rename = "br")]
2077    Br,
2078    #[serde(rename = "xz")]
2079    Xz,
2080    LZMA,
2081    #[serde(rename = "zstd")]
2082    Zstd,
2083    #[serde(rename = "auto")]
2084    Auto,
2085    /// Catch-all for unknown or newly-added values.
2086    #[serde(untagged)]
2087    Unknown(String),
2088}
2089
2090impl std::fmt::Display for ClickPipeObjectStorageSourceCompression {
2091    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2092        match self {
2093            Self::None => write!(f, "none"),
2094            Self::Gzip => write!(f, "gzip"),
2095            Self::Gz => write!(f, "gz"),
2096            Self::Brotli => write!(f, "brotli"),
2097            Self::Br => write!(f, "br"),
2098            Self::Xz => write!(f, "xz"),
2099            Self::LZMA => write!(f, "LZMA"),
2100            Self::Zstd => write!(f, "zstd"),
2101            Self::Auto => write!(f, "auto"),
2102            Self::Unknown(s) => write!(f, "{s}"),
2103        }
2104    }
2105}
2106
2107/// Inline enum for `ClickPipeObjectStorageSource.format`.
2108#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2109pub enum ClickPipeObjectStorageSourceFormat {
2110    #[default]
2111    JSONEachRow,
2112    JSONAsObject,
2113    CSV,
2114    CSVWithNames,
2115    TabSeparated,
2116    TabSeparatedWithNames,
2117    Parquet,
2118    Avro,
2119    /// Catch-all for unknown or newly-added values.
2120    #[serde(untagged)]
2121    Unknown(String),
2122}
2123
2124impl std::fmt::Display for ClickPipeObjectStorageSourceFormat {
2125    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2126        match self {
2127            Self::JSONEachRow => write!(f, "JSONEachRow"),
2128            Self::JSONAsObject => write!(f, "JSONAsObject"),
2129            Self::CSV => write!(f, "CSV"),
2130            Self::CSVWithNames => write!(f, "CSVWithNames"),
2131            Self::TabSeparated => write!(f, "TabSeparated"),
2132            Self::TabSeparatedWithNames => write!(f, "TabSeparatedWithNames"),
2133            Self::Parquet => write!(f, "Parquet"),
2134            Self::Avro => write!(f, "Avro"),
2135            Self::Unknown(s) => write!(f, "{s}"),
2136        }
2137    }
2138}
2139
2140/// Inline enum for `ClickPipeObjectStorageSource.type`.
2141#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2142pub enum ClickPipeObjectStorageSourceType {
2143    #[serde(rename = "s3")]
2144    #[default]
2145    S3,
2146    #[serde(rename = "gcs")]
2147    Gcs,
2148    #[serde(rename = "dospaces")]
2149    Dospaces,
2150    #[serde(rename = "azureblobstorage")]
2151    Azureblobstorage,
2152    #[serde(rename = "cloudflarer2")]
2153    Cloudflarer2,
2154    #[serde(rename = "ovhobjectstorage")]
2155    Ovhobjectstorage,
2156    /// Catch-all for unknown or newly-added values.
2157    #[serde(untagged)]
2158    Unknown(String),
2159}
2160
2161impl std::fmt::Display for ClickPipeObjectStorageSourceType {
2162    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2163        match self {
2164            Self::S3 => write!(f, "s3"),
2165            Self::Gcs => write!(f, "gcs"),
2166            Self::Dospaces => write!(f, "dospaces"),
2167            Self::Azureblobstorage => write!(f, "azureblobstorage"),
2168            Self::Cloudflarer2 => write!(f, "cloudflarer2"),
2169            Self::Ovhobjectstorage => write!(f, "ovhobjectstorage"),
2170            Self::Unknown(s) => write!(f, "{s}"),
2171        }
2172    }
2173}
2174
2175/// Inline enum for `ClickPipePatchKafkaSource.authentication`.
2176#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2177pub enum ClickPipePatchKafkaSourceAuthentication {
2178    #[default]
2179    PLAIN,
2180    #[serde(rename = "SCRAM-SHA-256")]
2181    SCRAM_SHA_256,
2182    #[serde(rename = "SCRAM-SHA-512")]
2183    SCRAM_SHA_512,
2184    IAM_ROLE,
2185    IAM_USER,
2186    MUTUAL_TLS,
2187    /// Catch-all for unknown or newly-added values.
2188    #[serde(untagged)]
2189    Unknown(String),
2190}
2191
2192impl std::fmt::Display for ClickPipePatchKafkaSourceAuthentication {
2193    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2194        match self {
2195            Self::PLAIN => write!(f, "PLAIN"),
2196            Self::SCRAM_SHA_256 => write!(f, "SCRAM-SHA-256"),
2197            Self::SCRAM_SHA_512 => write!(f, "SCRAM-SHA-512"),
2198            Self::IAM_ROLE => write!(f, "IAM_ROLE"),
2199            Self::IAM_USER => write!(f, "IAM_USER"),
2200            Self::MUTUAL_TLS => write!(f, "MUTUAL_TLS"),
2201            Self::Unknown(s) => write!(f, "{s}"),
2202        }
2203    }
2204}
2205
2206/// Inline enum for `ClickPipePatchKinesisSource.authentication`.
2207#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2208pub enum ClickPipePatchKinesisSourceAuthentication {
2209    #[default]
2210    IAM_ROLE,
2211    IAM_USER,
2212    /// Catch-all for unknown or newly-added values.
2213    #[serde(untagged)]
2214    Unknown(String),
2215}
2216
2217impl std::fmt::Display for ClickPipePatchKinesisSourceAuthentication {
2218    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2219        match self {
2220            Self::IAM_ROLE => write!(f, "IAM_ROLE"),
2221            Self::IAM_USER => write!(f, "IAM_USER"),
2222            Self::Unknown(s) => write!(f, "{s}"),
2223        }
2224    }
2225}
2226
2227/// Inline enum for `ClickPipePatchMongoDBPipeRemoveTableMapping.tableEngine`.
2228#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2229pub enum ClickPipePatchMongoDBPipeRemoveTableMappingTableengine {
2230    #[default]
2231    MergeTree,
2232    ReplacingMergeTree,
2233    Null,
2234    /// Catch-all for unknown or newly-added values.
2235    #[serde(untagged)]
2236    Unknown(String),
2237}
2238
2239impl std::fmt::Display for ClickPipePatchMongoDBPipeRemoveTableMappingTableengine {
2240    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2241        match self {
2242            Self::MergeTree => write!(f, "MergeTree"),
2243            Self::ReplacingMergeTree => write!(f, "ReplacingMergeTree"),
2244            Self::Null => write!(f, "Null"),
2245            Self::Unknown(s) => write!(f, "{s}"),
2246        }
2247    }
2248}
2249
2250/// Inline enum for `ClickPipePatchMongoDBSource.readPreference`.
2251#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2252pub enum ClickPipePatchMongoDBSourceReadpreference {
2253    #[serde(rename = "primary")]
2254    #[default]
2255    Primary,
2256    #[serde(rename = "primaryPreferred")]
2257    PrimaryPreferred,
2258    #[serde(rename = "secondary")]
2259    Secondary,
2260    #[serde(rename = "secondaryPreferred")]
2261    SecondaryPreferred,
2262    #[serde(rename = "nearest")]
2263    Nearest,
2264    /// Catch-all for unknown or newly-added values.
2265    #[serde(untagged)]
2266    Unknown(String),
2267}
2268
2269impl std::fmt::Display for ClickPipePatchMongoDBSourceReadpreference {
2270    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2271        match self {
2272            Self::Primary => write!(f, "primary"),
2273            Self::PrimaryPreferred => write!(f, "primaryPreferred"),
2274            Self::Secondary => write!(f, "secondary"),
2275            Self::SecondaryPreferred => write!(f, "secondaryPreferred"),
2276            Self::Nearest => write!(f, "nearest"),
2277            Self::Unknown(s) => write!(f, "{s}"),
2278        }
2279    }
2280}
2281
2282/// Inline enum for `ClickPipePatchMySQLPipeRemoveTableMapping.tableEngine`.
2283#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2284pub enum ClickPipePatchMySQLPipeRemoveTableMappingTableengine {
2285    #[default]
2286    MergeTree,
2287    ReplacingMergeTree,
2288    Null,
2289    /// Catch-all for unknown or newly-added values.
2290    #[serde(untagged)]
2291    Unknown(String),
2292}
2293
2294impl std::fmt::Display for ClickPipePatchMySQLPipeRemoveTableMappingTableengine {
2295    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2296        match self {
2297            Self::MergeTree => write!(f, "MergeTree"),
2298            Self::ReplacingMergeTree => write!(f, "ReplacingMergeTree"),
2299            Self::Null => write!(f, "Null"),
2300            Self::Unknown(s) => write!(f, "{s}"),
2301        }
2302    }
2303}
2304
2305/// Inline enum for `ClickPipePatchMySQLSource.authentication`.
2306#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2307pub enum ClickPipePatchMySQLSourceAuthentication {
2308    #[serde(rename = "basic")]
2309    #[default]
2310    Basic,
2311    IAM_ROLE,
2312    /// Catch-all for unknown or newly-added values.
2313    #[serde(untagged)]
2314    Unknown(String),
2315}
2316
2317impl std::fmt::Display for ClickPipePatchMySQLSourceAuthentication {
2318    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2319        match self {
2320            Self::Basic => write!(f, "basic"),
2321            Self::IAM_ROLE => write!(f, "IAM_ROLE"),
2322            Self::Unknown(s) => write!(f, "{s}"),
2323        }
2324    }
2325}
2326
2327/// Inline enum for `ClickPipePatchObjectStorageSource.authentication`.
2328#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2329pub enum ClickPipePatchObjectStorageSourceAuthentication {
2330    #[default]
2331    IAM_ROLE,
2332    IAM_USER,
2333    CONNECTION_STRING,
2334    SERVICE_ACCOUNT,
2335    /// Catch-all for unknown or newly-added values.
2336    #[serde(untagged)]
2337    Unknown(String),
2338}
2339
2340impl std::fmt::Display for ClickPipePatchObjectStorageSourceAuthentication {
2341    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2342        match self {
2343            Self::IAM_ROLE => write!(f, "IAM_ROLE"),
2344            Self::IAM_USER => write!(f, "IAM_USER"),
2345            Self::CONNECTION_STRING => write!(f, "CONNECTION_STRING"),
2346            Self::SERVICE_ACCOUNT => write!(f, "SERVICE_ACCOUNT"),
2347            Self::Unknown(s) => write!(f, "{s}"),
2348        }
2349    }
2350}
2351
2352/// Inline enum for `ClickPipePatchPostgresPipeRemoveTableMapping.tableEngine`.
2353#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2354pub enum ClickPipePatchPostgresPipeRemoveTableMappingTableengine {
2355    #[default]
2356    MergeTree,
2357    ReplacingMergeTree,
2358    Null,
2359    /// Catch-all for unknown or newly-added values.
2360    #[serde(untagged)]
2361    Unknown(String),
2362}
2363
2364impl std::fmt::Display for ClickPipePatchPostgresPipeRemoveTableMappingTableengine {
2365    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2366        match self {
2367            Self::MergeTree => write!(f, "MergeTree"),
2368            Self::ReplacingMergeTree => write!(f, "ReplacingMergeTree"),
2369            Self::Null => write!(f, "Null"),
2370            Self::Unknown(s) => write!(f, "{s}"),
2371        }
2372    }
2373}
2374
2375/// Inline enum for `ClickPipePatchPubSubSource.authentication`.
2376#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2377pub enum ClickPipePatchPubSubSourceAuthentication {
2378    #[serde(rename = "SERVICE_ACCOUNT")]
2379    #[default]
2380    ServiceAccount,
2381    /// Catch-all for unknown or newly-added values.
2382    #[serde(untagged)]
2383    Unknown(String),
2384}
2385
2386impl std::fmt::Display for ClickPipePatchPubSubSourceAuthentication {
2387    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2388        match self {
2389            Self::ServiceAccount => write!(f, "SERVICE_ACCOUNT"),
2390            Self::Unknown(s) => write!(f, "{s}"),
2391        }
2392    }
2393}
2394
2395/// Inline enum for `ClickPipePostKafkaSource.authentication`.
2396#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2397pub enum ClickPipePostKafkaSourceAuthentication {
2398    #[default]
2399    PLAIN,
2400    #[serde(rename = "SCRAM-SHA-256")]
2401    SCRAM_SHA_256,
2402    #[serde(rename = "SCRAM-SHA-512")]
2403    SCRAM_SHA_512,
2404    IAM_ROLE,
2405    IAM_USER,
2406    MUTUAL_TLS,
2407    /// Catch-all for unknown or newly-added values.
2408    #[serde(untagged)]
2409    Unknown(String),
2410}
2411
2412impl std::fmt::Display for ClickPipePostKafkaSourceAuthentication {
2413    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2414        match self {
2415            Self::PLAIN => write!(f, "PLAIN"),
2416            Self::SCRAM_SHA_256 => write!(f, "SCRAM-SHA-256"),
2417            Self::SCRAM_SHA_512 => write!(f, "SCRAM-SHA-512"),
2418            Self::IAM_ROLE => write!(f, "IAM_ROLE"),
2419            Self::IAM_USER => write!(f, "IAM_USER"),
2420            Self::MUTUAL_TLS => write!(f, "MUTUAL_TLS"),
2421            Self::Unknown(s) => write!(f, "{s}"),
2422        }
2423    }
2424}
2425
2426/// Inline enum for `ClickPipePostKafkaSource.format`.
2427#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2428pub enum ClickPipePostKafkaSourceFormat {
2429    #[default]
2430    JSONEachRow,
2431    Avro,
2432    AvroConfluent,
2433    Protobuf,
2434    /// Catch-all for unknown or newly-added values.
2435    #[serde(untagged)]
2436    Unknown(String),
2437}
2438
2439impl std::fmt::Display for ClickPipePostKafkaSourceFormat {
2440    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2441        match self {
2442            Self::JSONEachRow => write!(f, "JSONEachRow"),
2443            Self::Avro => write!(f, "Avro"),
2444            Self::AvroConfluent => write!(f, "AvroConfluent"),
2445            Self::Protobuf => write!(f, "Protobuf"),
2446            Self::Unknown(s) => write!(f, "{s}"),
2447        }
2448    }
2449}
2450
2451/// Inline enum for `ClickPipePostKafkaSource.type`.
2452#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2453pub enum ClickPipePostKafkaSourceType {
2454    #[serde(rename = "kafka")]
2455    #[default]
2456    Kafka,
2457    #[serde(rename = "redpanda")]
2458    Redpanda,
2459    #[serde(rename = "msk")]
2460    Msk,
2461    #[serde(rename = "gcmk")]
2462    Gcmk,
2463    #[serde(rename = "confluent")]
2464    Confluent,
2465    #[serde(rename = "warpstream")]
2466    Warpstream,
2467    #[serde(rename = "azureeventhub")]
2468    Azureeventhub,
2469    #[serde(rename = "dokafka")]
2470    Dokafka,
2471    /// Catch-all for unknown or newly-added values.
2472    #[serde(untagged)]
2473    Unknown(String),
2474}
2475
2476impl std::fmt::Display for ClickPipePostKafkaSourceType {
2477    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2478        match self {
2479            Self::Kafka => write!(f, "kafka"),
2480            Self::Redpanda => write!(f, "redpanda"),
2481            Self::Msk => write!(f, "msk"),
2482            Self::Gcmk => write!(f, "gcmk"),
2483            Self::Confluent => write!(f, "confluent"),
2484            Self::Warpstream => write!(f, "warpstream"),
2485            Self::Azureeventhub => write!(f, "azureeventhub"),
2486            Self::Dokafka => write!(f, "dokafka"),
2487            Self::Unknown(s) => write!(f, "{s}"),
2488        }
2489    }
2490}
2491
2492/// Inline enum for `ClickPipePostKinesisSource.authentication`.
2493#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2494pub enum ClickPipePostKinesisSourceAuthentication {
2495    #[default]
2496    IAM_ROLE,
2497    IAM_USER,
2498    /// Catch-all for unknown or newly-added values.
2499    #[serde(untagged)]
2500    Unknown(String),
2501}
2502
2503impl std::fmt::Display for ClickPipePostKinesisSourceAuthentication {
2504    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2505        match self {
2506            Self::IAM_ROLE => write!(f, "IAM_ROLE"),
2507            Self::IAM_USER => write!(f, "IAM_USER"),
2508            Self::Unknown(s) => write!(f, "{s}"),
2509        }
2510    }
2511}
2512
2513/// Inline enum for `ClickPipePostKinesisSource.format`.
2514#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2515pub enum ClickPipePostKinesisSourceFormat {
2516    #[default]
2517    JSONEachRow,
2518    Avro,
2519    AvroConfluent,
2520    /// Catch-all for unknown or newly-added values.
2521    #[serde(untagged)]
2522    Unknown(String),
2523}
2524
2525impl std::fmt::Display for ClickPipePostKinesisSourceFormat {
2526    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2527        match self {
2528            Self::JSONEachRow => write!(f, "JSONEachRow"),
2529            Self::Avro => write!(f, "Avro"),
2530            Self::AvroConfluent => write!(f, "AvroConfluent"),
2531            Self::Unknown(s) => write!(f, "{s}"),
2532        }
2533    }
2534}
2535
2536/// Inline enum for `ClickPipePostKinesisSource.iteratorType`.
2537#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2538pub enum ClickPipePostKinesisSourceIteratortype {
2539    #[default]
2540    TRIM_HORIZON,
2541    LATEST,
2542    AT_TIMESTAMP,
2543    /// Catch-all for unknown or newly-added values.
2544    #[serde(untagged)]
2545    Unknown(String),
2546}
2547
2548impl std::fmt::Display for ClickPipePostKinesisSourceIteratortype {
2549    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2550        match self {
2551            Self::TRIM_HORIZON => write!(f, "TRIM_HORIZON"),
2552            Self::LATEST => write!(f, "LATEST"),
2553            Self::AT_TIMESTAMP => write!(f, "AT_TIMESTAMP"),
2554            Self::Unknown(s) => write!(f, "{s}"),
2555        }
2556    }
2557}
2558
2559/// Inline enum for `ClickPipePostObjectStorageSource.authentication`.
2560#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2561pub enum ClickPipePostObjectStorageSourceAuthentication {
2562    #[default]
2563    IAM_ROLE,
2564    IAM_USER,
2565    CONNECTION_STRING,
2566    SERVICE_ACCOUNT,
2567    /// Catch-all for unknown or newly-added values.
2568    #[serde(untagged)]
2569    Unknown(String),
2570}
2571
2572impl std::fmt::Display for ClickPipePostObjectStorageSourceAuthentication {
2573    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2574        match self {
2575            Self::IAM_ROLE => write!(f, "IAM_ROLE"),
2576            Self::IAM_USER => write!(f, "IAM_USER"),
2577            Self::CONNECTION_STRING => write!(f, "CONNECTION_STRING"),
2578            Self::SERVICE_ACCOUNT => write!(f, "SERVICE_ACCOUNT"),
2579            Self::Unknown(s) => write!(f, "{s}"),
2580        }
2581    }
2582}
2583
2584/// Inline enum for `ClickPipePostObjectStorageSource.compression`.
2585#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2586pub enum ClickPipePostObjectStorageSourceCompression {
2587    #[serde(rename = "none")]
2588    #[default]
2589    None,
2590    #[serde(rename = "gzip")]
2591    Gzip,
2592    #[serde(rename = "gz")]
2593    Gz,
2594    #[serde(rename = "brotli")]
2595    Brotli,
2596    #[serde(rename = "br")]
2597    Br,
2598    #[serde(rename = "xz")]
2599    Xz,
2600    LZMA,
2601    #[serde(rename = "zstd")]
2602    Zstd,
2603    #[serde(rename = "auto")]
2604    Auto,
2605    /// Catch-all for unknown or newly-added values.
2606    #[serde(untagged)]
2607    Unknown(String),
2608}
2609
2610impl std::fmt::Display for ClickPipePostObjectStorageSourceCompression {
2611    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2612        match self {
2613            Self::None => write!(f, "none"),
2614            Self::Gzip => write!(f, "gzip"),
2615            Self::Gz => write!(f, "gz"),
2616            Self::Brotli => write!(f, "brotli"),
2617            Self::Br => write!(f, "br"),
2618            Self::Xz => write!(f, "xz"),
2619            Self::LZMA => write!(f, "LZMA"),
2620            Self::Zstd => write!(f, "zstd"),
2621            Self::Auto => write!(f, "auto"),
2622            Self::Unknown(s) => write!(f, "{s}"),
2623        }
2624    }
2625}
2626
2627/// Inline enum for `ClickPipePostObjectStorageSource.format`.
2628#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2629pub enum ClickPipePostObjectStorageSourceFormat {
2630    #[default]
2631    JSONEachRow,
2632    JSONAsObject,
2633    CSV,
2634    CSVWithNames,
2635    TabSeparated,
2636    TabSeparatedWithNames,
2637    Parquet,
2638    Avro,
2639    /// Catch-all for unknown or newly-added values.
2640    #[serde(untagged)]
2641    Unknown(String),
2642}
2643
2644impl std::fmt::Display for ClickPipePostObjectStorageSourceFormat {
2645    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2646        match self {
2647            Self::JSONEachRow => write!(f, "JSONEachRow"),
2648            Self::JSONAsObject => write!(f, "JSONAsObject"),
2649            Self::CSV => write!(f, "CSV"),
2650            Self::CSVWithNames => write!(f, "CSVWithNames"),
2651            Self::TabSeparated => write!(f, "TabSeparated"),
2652            Self::TabSeparatedWithNames => write!(f, "TabSeparatedWithNames"),
2653            Self::Parquet => write!(f, "Parquet"),
2654            Self::Avro => write!(f, "Avro"),
2655            Self::Unknown(s) => write!(f, "{s}"),
2656        }
2657    }
2658}
2659
2660/// Inline enum for `ClickPipePostObjectStorageSource.type`.
2661#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2662pub enum ClickPipePostObjectStorageSourceType {
2663    #[serde(rename = "s3")]
2664    #[default]
2665    S3,
2666    #[serde(rename = "gcs")]
2667    Gcs,
2668    #[serde(rename = "dospaces")]
2669    Dospaces,
2670    #[serde(rename = "azureblobstorage")]
2671    Azureblobstorage,
2672    #[serde(rename = "cloudflarer2")]
2673    Cloudflarer2,
2674    #[serde(rename = "ovhobjectstorage")]
2675    Ovhobjectstorage,
2676    /// Catch-all for unknown or newly-added values.
2677    #[serde(untagged)]
2678    Unknown(String),
2679}
2680
2681impl std::fmt::Display for ClickPipePostObjectStorageSourceType {
2682    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2683        match self {
2684            Self::S3 => write!(f, "s3"),
2685            Self::Gcs => write!(f, "gcs"),
2686            Self::Dospaces => write!(f, "dospaces"),
2687            Self::Azureblobstorage => write!(f, "azureblobstorage"),
2688            Self::Cloudflarer2 => write!(f, "cloudflarer2"),
2689            Self::Ovhobjectstorage => write!(f, "ovhobjectstorage"),
2690            Self::Unknown(s) => write!(f, "{s}"),
2691        }
2692    }
2693}
2694
2695/// Inline enum for `ClickPipePostPubSubSource.authentication`.
2696#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2697pub enum ClickPipePostPubSubSourceAuthentication {
2698    #[serde(rename = "SERVICE_ACCOUNT")]
2699    #[default]
2700    ServiceAccount,
2701    /// Catch-all for unknown or newly-added values.
2702    #[serde(untagged)]
2703    Unknown(String),
2704}
2705
2706impl std::fmt::Display for ClickPipePostPubSubSourceAuthentication {
2707    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2708        match self {
2709            Self::ServiceAccount => write!(f, "SERVICE_ACCOUNT"),
2710            Self::Unknown(s) => write!(f, "{s}"),
2711        }
2712    }
2713}
2714
2715/// Inline enum for `ClickPipePostPubSubSource.format`.
2716#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2717pub enum ClickPipePostPubSubSourceFormat {
2718    #[default]
2719    JSONEachRow,
2720    Avro,
2721    Protobuf,
2722    /// Catch-all for unknown or newly-added values.
2723    #[serde(untagged)]
2724    Unknown(String),
2725}
2726
2727impl std::fmt::Display for ClickPipePostPubSubSourceFormat {
2728    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2729        match self {
2730            Self::JSONEachRow => write!(f, "JSONEachRow"),
2731            Self::Avro => write!(f, "Avro"),
2732            Self::Protobuf => write!(f, "Protobuf"),
2733            Self::Unknown(s) => write!(f, "{s}"),
2734        }
2735    }
2736}
2737
2738/// Inline enum for `ClickPipePostPubSubSource.seekType`.
2739#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2740pub enum ClickPipePostPubSubSourceSeektype {
2741    #[serde(rename = "latest")]
2742    #[default]
2743    Latest,
2744    #[serde(rename = "earliest")]
2745    Earliest,
2746    #[serde(rename = "timestamp")]
2747    Timestamp,
2748    #[serde(rename = "snapshot")]
2749    Snapshot,
2750    /// Catch-all for unknown or newly-added values.
2751    #[serde(untagged)]
2752    Unknown(String),
2753}
2754
2755impl std::fmt::Display for ClickPipePostPubSubSourceSeektype {
2756    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2757        match self {
2758            Self::Latest => write!(f, "latest"),
2759            Self::Earliest => write!(f, "earliest"),
2760            Self::Timestamp => write!(f, "timestamp"),
2761            Self::Snapshot => write!(f, "snapshot"),
2762            Self::Unknown(s) => write!(f, "{s}"),
2763        }
2764    }
2765}
2766
2767/// Inline enum for `ClickPipePostgresPipeSettings.replicationMode`.
2768#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2769pub enum ClickPipePostgresPipeSettingsReplicationmode {
2770    #[serde(rename = "cdc")]
2771    #[default]
2772    Cdc,
2773    #[serde(rename = "snapshot")]
2774    Snapshot,
2775    #[serde(rename = "cdc_only")]
2776    Cdc_only,
2777    /// Catch-all for unknown or newly-added values.
2778    #[serde(untagged)]
2779    Unknown(String),
2780}
2781
2782impl std::fmt::Display for ClickPipePostgresPipeSettingsReplicationmode {
2783    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2784        match self {
2785            Self::Cdc => write!(f, "cdc"),
2786            Self::Snapshot => write!(f, "snapshot"),
2787            Self::Cdc_only => write!(f, "cdc_only"),
2788            Self::Unknown(s) => write!(f, "{s}"),
2789        }
2790    }
2791}
2792
2793/// Inline enum for `ClickPipePostgresPipeTableMapping.tableEngine`.
2794#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2795pub enum ClickPipePostgresPipeTableMappingTableengine {
2796    #[default]
2797    MergeTree,
2798    ReplacingMergeTree,
2799    Null,
2800    /// Catch-all for unknown or newly-added values.
2801    #[serde(untagged)]
2802    Unknown(String),
2803}
2804
2805impl std::fmt::Display for ClickPipePostgresPipeTableMappingTableengine {
2806    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2807        match self {
2808            Self::MergeTree => write!(f, "MergeTree"),
2809            Self::ReplacingMergeTree => write!(f, "ReplacingMergeTree"),
2810            Self::Null => write!(f, "Null"),
2811            Self::Unknown(s) => write!(f, "{s}"),
2812        }
2813    }
2814}
2815
2816/// Inline enum for `ClickPipePostgresSource.authentication`.
2817#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2818pub enum ClickPipePostgresSourceAuthentication {
2819    #[serde(rename = "basic")]
2820    #[default]
2821    Basic,
2822    IAM_ROLE,
2823    /// Catch-all for unknown or newly-added values.
2824    #[serde(untagged)]
2825    Unknown(String),
2826}
2827
2828impl std::fmt::Display for ClickPipePostgresSourceAuthentication {
2829    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2830        match self {
2831            Self::Basic => write!(f, "basic"),
2832            Self::IAM_ROLE => write!(f, "IAM_ROLE"),
2833            Self::Unknown(s) => write!(f, "{s}"),
2834        }
2835    }
2836}
2837
2838/// Inline enum for `ClickPipePostgresSource.type`.
2839#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2840pub enum ClickPipePostgresSourceType {
2841    #[serde(rename = "postgres")]
2842    #[default]
2843    Postgres,
2844    #[serde(rename = "supabase")]
2845    Supabase,
2846    #[serde(rename = "neon")]
2847    Neon,
2848    #[serde(rename = "alloydb")]
2849    Alloydb,
2850    #[serde(rename = "planetscale")]
2851    Planetscale,
2852    #[serde(rename = "rdspostgres")]
2853    Rdspostgres,
2854    #[serde(rename = "aurorapostgres")]
2855    Aurorapostgres,
2856    #[serde(rename = "cloudsqlpostgres")]
2857    Cloudsqlpostgres,
2858    #[serde(rename = "azurepostgres")]
2859    Azurepostgres,
2860    #[serde(rename = "crunchybridge")]
2861    Crunchybridge,
2862    #[serde(rename = "tigerdata")]
2863    Tigerdata,
2864    /// Catch-all for unknown or newly-added values.
2865    #[serde(untagged)]
2866    Unknown(String),
2867}
2868
2869impl std::fmt::Display for ClickPipePostgresSourceType {
2870    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2871        match self {
2872            Self::Postgres => write!(f, "postgres"),
2873            Self::Supabase => write!(f, "supabase"),
2874            Self::Neon => write!(f, "neon"),
2875            Self::Alloydb => write!(f, "alloydb"),
2876            Self::Planetscale => write!(f, "planetscale"),
2877            Self::Rdspostgres => write!(f, "rdspostgres"),
2878            Self::Aurorapostgres => write!(f, "aurorapostgres"),
2879            Self::Cloudsqlpostgres => write!(f, "cloudsqlpostgres"),
2880            Self::Azurepostgres => write!(f, "azurepostgres"),
2881            Self::Crunchybridge => write!(f, "crunchybridge"),
2882            Self::Tigerdata => write!(f, "tigerdata"),
2883            Self::Unknown(s) => write!(f, "{s}"),
2884        }
2885    }
2886}
2887
2888/// Inline enum for `ClickPipePubSubSource.authentication`.
2889#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2890pub enum ClickPipePubSubSourceAuthentication {
2891    #[serde(rename = "SERVICE_ACCOUNT")]
2892    #[default]
2893    ServiceAccount,
2894    /// Catch-all for unknown or newly-added values.
2895    #[serde(untagged)]
2896    Unknown(String),
2897}
2898
2899impl std::fmt::Display for ClickPipePubSubSourceAuthentication {
2900    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2901        match self {
2902            Self::ServiceAccount => write!(f, "SERVICE_ACCOUNT"),
2903            Self::Unknown(s) => write!(f, "{s}"),
2904        }
2905    }
2906}
2907
2908/// Inline enum for `ClickPipePubSubSource.format`.
2909#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2910pub enum ClickPipePubSubSourceFormat {
2911    #[default]
2912    JSONEachRow,
2913    Avro,
2914    Protobuf,
2915    /// Catch-all for unknown or newly-added values.
2916    #[serde(untagged)]
2917    Unknown(String),
2918}
2919
2920impl std::fmt::Display for ClickPipePubSubSourceFormat {
2921    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2922        match self {
2923            Self::JSONEachRow => write!(f, "JSONEachRow"),
2924            Self::Avro => write!(f, "Avro"),
2925            Self::Protobuf => write!(f, "Protobuf"),
2926            Self::Unknown(s) => write!(f, "{s}"),
2927        }
2928    }
2929}
2930
2931/// Inline enum for `ClickPipePubSubSource.seekType`.
2932#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2933pub enum ClickPipePubSubSourceSeektype {
2934    #[serde(rename = "latest")]
2935    #[default]
2936    Latest,
2937    #[serde(rename = "earliest")]
2938    Earliest,
2939    #[serde(rename = "timestamp")]
2940    Timestamp,
2941    #[serde(rename = "snapshot")]
2942    Snapshot,
2943    /// Catch-all for unknown or newly-added values.
2944    #[serde(untagged)]
2945    Unknown(String),
2946}
2947
2948impl std::fmt::Display for ClickPipePubSubSourceSeektype {
2949    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2950        match self {
2951            Self::Latest => write!(f, "latest"),
2952            Self::Earliest => write!(f, "earliest"),
2953            Self::Timestamp => write!(f, "timestamp"),
2954            Self::Snapshot => write!(f, "snapshot"),
2955            Self::Unknown(s) => write!(f, "{s}"),
2956        }
2957    }
2958}
2959
2960/// Inline enum for `ClickPipeStatePatchRequest.command`.
2961#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2962pub enum ClickPipeStatePatchRequestCommand {
2963    #[serde(rename = "start")]
2964    #[default]
2965    Start,
2966    #[serde(rename = "stop")]
2967    Stop,
2968    #[serde(rename = "resync")]
2969    Resync,
2970    /// Catch-all for unknown or newly-added values.
2971    #[serde(untagged)]
2972    Unknown(String),
2973}
2974
2975impl std::fmt::Display for ClickPipeStatePatchRequestCommand {
2976    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2977        match self {
2978            Self::Start => write!(f, "start"),
2979            Self::Stop => write!(f, "stop"),
2980            Self::Resync => write!(f, "resync"),
2981            Self::Unknown(s) => write!(f, "{s}"),
2982        }
2983    }
2984}
2985
2986/// Inline enum for `ClickStackAlertChannelEmail.type`.
2987#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
2988pub enum ClickStackAlertChannelEmailType {
2989    #[serde(rename = "webhook")]
2990    #[default]
2991    Webhook,
2992    #[serde(rename = "email")]
2993    Email,
2994    /// Catch-all for unknown or newly-added values.
2995    #[serde(untagged)]
2996    Unknown(String),
2997}
2998
2999impl std::fmt::Display for ClickStackAlertChannelEmailType {
3000    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3001        match self {
3002            Self::Webhook => write!(f, "webhook"),
3003            Self::Email => write!(f, "email"),
3004            Self::Unknown(s) => write!(f, "{s}"),
3005        }
3006    }
3007}
3008
3009/// Inline enum for `ClickStackAlertChannelWebhook.severity`.
3010#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3011pub enum ClickStackAlertChannelWebhookSeverity {
3012    #[serde(rename = "critical")]
3013    #[default]
3014    Critical,
3015    #[serde(rename = "error")]
3016    Error,
3017    #[serde(rename = "warning")]
3018    Warning,
3019    #[serde(rename = "info")]
3020    Info,
3021    /// Catch-all for unknown or newly-added values.
3022    #[serde(untagged)]
3023    Unknown(String),
3024}
3025
3026impl std::fmt::Display for ClickStackAlertChannelWebhookSeverity {
3027    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3028        match self {
3029            Self::Critical => write!(f, "critical"),
3030            Self::Error => write!(f, "error"),
3031            Self::Warning => write!(f, "warning"),
3032            Self::Info => write!(f, "info"),
3033            Self::Unknown(s) => write!(f, "{s}"),
3034        }
3035    }
3036}
3037
3038/// Inline enum for `ClickStackAlertChannelWebhook.type`.
3039#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3040pub enum ClickStackAlertChannelWebhookType {
3041    #[serde(rename = "webhook")]
3042    #[default]
3043    Webhook,
3044    #[serde(rename = "email")]
3045    Email,
3046    /// Catch-all for unknown or newly-added values.
3047    #[serde(untagged)]
3048    Unknown(String),
3049}
3050
3051impl std::fmt::Display for ClickStackAlertChannelWebhookType {
3052    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3053        match self {
3054            Self::Webhook => write!(f, "webhook"),
3055            Self::Email => write!(f, "email"),
3056            Self::Unknown(s) => write!(f, "{s}"),
3057        }
3058    }
3059}
3060
3061/// Inline enum for `ClickStackAlertExecutionError.type`.
3062#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3063pub enum ClickStackAlertExecutionErrorType {
3064    #[default]
3065    QUERY_ERROR,
3066    WEBHOOK_ERROR,
3067    INVALID_ALERT,
3068    UNKNOWN,
3069    /// Catch-all for unknown or newly-added values.
3070    #[serde(untagged)]
3071    Unknown(String),
3072}
3073
3074impl std::fmt::Display for ClickStackAlertExecutionErrorType {
3075    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3076        match self {
3077            Self::QUERY_ERROR => write!(f, "QUERY_ERROR"),
3078            Self::WEBHOOK_ERROR => write!(f, "WEBHOOK_ERROR"),
3079            Self::INVALID_ALERT => write!(f, "INVALID_ALERT"),
3080            Self::UNKNOWN => write!(f, "UNKNOWN"),
3081            Self::Unknown(s) => write!(f, "{s}"),
3082        }
3083    }
3084}
3085
3086/// Inline enum for `ClickStackAlertResponse.interval`.
3087#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3088pub enum ClickStackAlertResponseInterval {
3089    #[serde(rename = "1m")]
3090    #[default]
3091    _1m,
3092    #[serde(rename = "5m")]
3093    _5m,
3094    #[serde(rename = "15m")]
3095    _15m,
3096    #[serde(rename = "30m")]
3097    _30m,
3098    #[serde(rename = "1h")]
3099    _1h,
3100    #[serde(rename = "6h")]
3101    _6h,
3102    #[serde(rename = "12h")]
3103    _12h,
3104    #[serde(rename = "1d")]
3105    _1d,
3106    /// Catch-all for unknown or newly-added values.
3107    #[serde(untagged)]
3108    Unknown(String),
3109}
3110
3111impl std::fmt::Display for ClickStackAlertResponseInterval {
3112    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3113        match self {
3114            Self::_1m => write!(f, "1m"),
3115            Self::_5m => write!(f, "5m"),
3116            Self::_15m => write!(f, "15m"),
3117            Self::_30m => write!(f, "30m"),
3118            Self::_1h => write!(f, "1h"),
3119            Self::_6h => write!(f, "6h"),
3120            Self::_12h => write!(f, "12h"),
3121            Self::_1d => write!(f, "1d"),
3122            Self::Unknown(s) => write!(f, "{s}"),
3123        }
3124    }
3125}
3126
3127/// Inline enum for `ClickStackAlertResponse.source`.
3128#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3129pub enum ClickStackAlertResponseSource {
3130    #[serde(rename = "saved_search")]
3131    #[default]
3132    Saved_search,
3133    #[serde(rename = "tile")]
3134    Tile,
3135    /// Catch-all for unknown or newly-added values.
3136    #[serde(untagged)]
3137    Unknown(String),
3138}
3139
3140impl std::fmt::Display for ClickStackAlertResponseSource {
3141    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3142        match self {
3143            Self::Saved_search => write!(f, "saved_search"),
3144            Self::Tile => write!(f, "tile"),
3145            Self::Unknown(s) => write!(f, "{s}"),
3146        }
3147    }
3148}
3149
3150/// Inline enum for `ClickStackAlertResponse.state`.
3151#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3152pub enum ClickStackAlertResponseState {
3153    #[default]
3154    ALERT,
3155    OK,
3156    INSUFFICIENT_DATA,
3157    DISABLED,
3158    /// Catch-all for unknown or newly-added values.
3159    #[serde(untagged)]
3160    Unknown(String),
3161}
3162
3163impl std::fmt::Display for ClickStackAlertResponseState {
3164    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3165        match self {
3166            Self::ALERT => write!(f, "ALERT"),
3167            Self::OK => write!(f, "OK"),
3168            Self::INSUFFICIENT_DATA => write!(f, "INSUFFICIENT_DATA"),
3169            Self::DISABLED => write!(f, "DISABLED"),
3170            Self::Unknown(s) => write!(f, "{s}"),
3171        }
3172    }
3173}
3174
3175/// Inline enum for `ClickStackAlertResponse.thresholdType`.
3176#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3177pub enum ClickStackAlertResponseThresholdtype {
3178    #[serde(rename = "above")]
3179    #[default]
3180    Above,
3181    #[serde(rename = "below")]
3182    Below,
3183    /// Catch-all for unknown or newly-added values.
3184    #[serde(untagged)]
3185    Unknown(String),
3186}
3187
3188impl std::fmt::Display for ClickStackAlertResponseThresholdtype {
3189    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3190        match self {
3191            Self::Above => write!(f, "above"),
3192            Self::Below => write!(f, "below"),
3193            Self::Unknown(s) => write!(f, "{s}"),
3194        }
3195    }
3196}
3197
3198/// Inline enum for `ClickStackBarBuilderChartConfig.displayType`.
3199#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3200pub enum ClickStackBarBuilderChartConfigDisplaytype {
3201    #[serde(rename = "stacked_bar")]
3202    #[default]
3203    Stacked_bar,
3204    /// Catch-all for unknown or newly-added values.
3205    #[serde(untagged)]
3206    Unknown(String),
3207}
3208
3209impl std::fmt::Display for ClickStackBarBuilderChartConfigDisplaytype {
3210    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3211        match self {
3212            Self::Stacked_bar => write!(f, "stacked_bar"),
3213            Self::Unknown(s) => write!(f, "{s}"),
3214        }
3215    }
3216}
3217
3218/// Inline enum for `ClickStackBarRawSqlChartConfig.configType`.
3219#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3220pub enum ClickStackBarRawSqlChartConfigConfigtype {
3221    #[serde(rename = "sql")]
3222    #[default]
3223    Sql,
3224    /// Catch-all for unknown or newly-added values.
3225    #[serde(untagged)]
3226    Unknown(String),
3227}
3228
3229impl std::fmt::Display for ClickStackBarRawSqlChartConfigConfigtype {
3230    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3231        match self {
3232            Self::Sql => write!(f, "sql"),
3233            Self::Unknown(s) => write!(f, "{s}"),
3234        }
3235    }
3236}
3237
3238/// Inline enum for `ClickStackBarRawSqlChartConfig.displayType`.
3239#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3240pub enum ClickStackBarRawSqlChartConfigDisplaytype {
3241    #[serde(rename = "stacked_bar")]
3242    #[default]
3243    Stacked_bar,
3244    /// Catch-all for unknown or newly-added values.
3245    #[serde(untagged)]
3246    Unknown(String),
3247}
3248
3249impl std::fmt::Display for ClickStackBarRawSqlChartConfigDisplaytype {
3250    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3251        match self {
3252            Self::Stacked_bar => write!(f, "stacked_bar"),
3253            Self::Unknown(s) => write!(f, "{s}"),
3254        }
3255    }
3256}
3257
3258/// Inline enum for `ClickStackCreateAlertRequest.interval`.
3259#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3260pub enum ClickStackCreateAlertRequestInterval {
3261    #[serde(rename = "1m")]
3262    #[default]
3263    _1m,
3264    #[serde(rename = "5m")]
3265    _5m,
3266    #[serde(rename = "15m")]
3267    _15m,
3268    #[serde(rename = "30m")]
3269    _30m,
3270    #[serde(rename = "1h")]
3271    _1h,
3272    #[serde(rename = "6h")]
3273    _6h,
3274    #[serde(rename = "12h")]
3275    _12h,
3276    #[serde(rename = "1d")]
3277    _1d,
3278    /// Catch-all for unknown or newly-added values.
3279    #[serde(untagged)]
3280    Unknown(String),
3281}
3282
3283impl std::fmt::Display for ClickStackCreateAlertRequestInterval {
3284    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3285        match self {
3286            Self::_1m => write!(f, "1m"),
3287            Self::_5m => write!(f, "5m"),
3288            Self::_15m => write!(f, "15m"),
3289            Self::_30m => write!(f, "30m"),
3290            Self::_1h => write!(f, "1h"),
3291            Self::_6h => write!(f, "6h"),
3292            Self::_12h => write!(f, "12h"),
3293            Self::_1d => write!(f, "1d"),
3294            Self::Unknown(s) => write!(f, "{s}"),
3295        }
3296    }
3297}
3298
3299/// Inline enum for `ClickStackCreateAlertRequest.source`.
3300#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3301pub enum ClickStackCreateAlertRequestSource {
3302    #[serde(rename = "saved_search")]
3303    #[default]
3304    Saved_search,
3305    #[serde(rename = "tile")]
3306    Tile,
3307    /// Catch-all for unknown or newly-added values.
3308    #[serde(untagged)]
3309    Unknown(String),
3310}
3311
3312impl std::fmt::Display for ClickStackCreateAlertRequestSource {
3313    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3314        match self {
3315            Self::Saved_search => write!(f, "saved_search"),
3316            Self::Tile => write!(f, "tile"),
3317            Self::Unknown(s) => write!(f, "{s}"),
3318        }
3319    }
3320}
3321
3322/// Inline enum for `ClickStackCreateAlertRequest.thresholdType`.
3323#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3324pub enum ClickStackCreateAlertRequestThresholdtype {
3325    #[serde(rename = "above")]
3326    #[default]
3327    Above,
3328    #[serde(rename = "below")]
3329    Below,
3330    /// Catch-all for unknown or newly-added values.
3331    #[serde(untagged)]
3332    Unknown(String),
3333}
3334
3335impl std::fmt::Display for ClickStackCreateAlertRequestThresholdtype {
3336    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3337        match self {
3338            Self::Above => write!(f, "above"),
3339            Self::Below => write!(f, "below"),
3340            Self::Unknown(s) => write!(f, "{s}"),
3341        }
3342    }
3343}
3344
3345/// Inline enum for `ClickStackCreateDashboardRequest.savedQueryLanguage`.
3346#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3347pub enum ClickStackCreateDashboardRequestSavedquerylanguage {
3348    #[serde(rename = "sql")]
3349    #[default]
3350    Sql,
3351    #[serde(rename = "lucene")]
3352    Lucene,
3353    /// Catch-all for unknown or newly-added values.
3354    #[serde(untagged)]
3355    Unknown(String),
3356}
3357
3358impl std::fmt::Display for ClickStackCreateDashboardRequestSavedquerylanguage {
3359    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3360        match self {
3361            Self::Sql => write!(f, "sql"),
3362            Self::Lucene => write!(f, "lucene"),
3363            Self::Unknown(s) => write!(f, "{s}"),
3364        }
3365    }
3366}
3367
3368/// Inline enum for `ClickStackDashboardResponse.savedQueryLanguage`.
3369#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3370pub enum ClickStackDashboardResponseSavedquerylanguage {
3371    #[serde(rename = "sql")]
3372    #[default]
3373    Sql,
3374    #[serde(rename = "lucene")]
3375    Lucene,
3376    /// Catch-all for unknown or newly-added values.
3377    #[serde(untagged)]
3378    Unknown(String),
3379}
3380
3381impl std::fmt::Display for ClickStackDashboardResponseSavedquerylanguage {
3382    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3383        match self {
3384            Self::Sql => write!(f, "sql"),
3385            Self::Lucene => write!(f, "lucene"),
3386            Self::Unknown(s) => write!(f, "{s}"),
3387        }
3388    }
3389}
3390
3391/// Inline enum for `ClickStackFilter.sourceMetricType`.
3392#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3393pub enum ClickStackFilterSourcemetrictype {
3394    #[serde(rename = "sum")]
3395    #[default]
3396    Sum,
3397    #[serde(rename = "gauge")]
3398    Gauge,
3399    #[serde(rename = "histogram")]
3400    Histogram,
3401    #[serde(rename = "summary")]
3402    Summary,
3403    #[serde(rename = "exponential histogram")]
3404    Exponential_histogram,
3405    /// Catch-all for unknown or newly-added values.
3406    #[serde(untagged)]
3407    Unknown(String),
3408}
3409
3410impl std::fmt::Display for ClickStackFilterSourcemetrictype {
3411    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3412        match self {
3413            Self::Sum => write!(f, "sum"),
3414            Self::Gauge => write!(f, "gauge"),
3415            Self::Histogram => write!(f, "histogram"),
3416            Self::Summary => write!(f, "summary"),
3417            Self::Exponential_histogram => write!(f, "exponential histogram"),
3418            Self::Unknown(s) => write!(f, "{s}"),
3419        }
3420    }
3421}
3422
3423/// Inline enum for `ClickStackFilter.type`.
3424#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3425pub enum ClickStackFilterType {
3426    #[default]
3427    QUERY_EXPRESSION,
3428    /// Catch-all for unknown or newly-added values.
3429    #[serde(untagged)]
3430    Unknown(String),
3431}
3432
3433impl std::fmt::Display for ClickStackFilterType {
3434    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3435        match self {
3436            Self::QUERY_EXPRESSION => write!(f, "QUERY_EXPRESSION"),
3437            Self::Unknown(s) => write!(f, "{s}"),
3438        }
3439    }
3440}
3441
3442/// Inline enum for `ClickStackFilter.whereLanguage`.
3443#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3444pub enum ClickStackFilterWherelanguage {
3445    #[serde(rename = "sql")]
3446    #[default]
3447    Sql,
3448    #[serde(rename = "lucene")]
3449    Lucene,
3450    /// Catch-all for unknown or newly-added values.
3451    #[serde(untagged)]
3452    Unknown(String),
3453}
3454
3455impl std::fmt::Display for ClickStackFilterWherelanguage {
3456    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3457        match self {
3458            Self::Sql => write!(f, "sql"),
3459            Self::Lucene => write!(f, "lucene"),
3460            Self::Unknown(s) => write!(f, "{s}"),
3461        }
3462    }
3463}
3464
3465/// Inline enum for `ClickStackFilterInput.sourceMetricType`.
3466#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3467pub enum ClickStackFilterInputSourcemetrictype {
3468    #[serde(rename = "sum")]
3469    #[default]
3470    Sum,
3471    #[serde(rename = "gauge")]
3472    Gauge,
3473    #[serde(rename = "histogram")]
3474    Histogram,
3475    #[serde(rename = "summary")]
3476    Summary,
3477    #[serde(rename = "exponential histogram")]
3478    Exponential_histogram,
3479    /// Catch-all for unknown or newly-added values.
3480    #[serde(untagged)]
3481    Unknown(String),
3482}
3483
3484impl std::fmt::Display for ClickStackFilterInputSourcemetrictype {
3485    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3486        match self {
3487            Self::Sum => write!(f, "sum"),
3488            Self::Gauge => write!(f, "gauge"),
3489            Self::Histogram => write!(f, "histogram"),
3490            Self::Summary => write!(f, "summary"),
3491            Self::Exponential_histogram => write!(f, "exponential histogram"),
3492            Self::Unknown(s) => write!(f, "{s}"),
3493        }
3494    }
3495}
3496
3497/// Inline enum for `ClickStackFilterInput.type`.
3498#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3499pub enum ClickStackFilterInputType {
3500    #[default]
3501    QUERY_EXPRESSION,
3502    /// Catch-all for unknown or newly-added values.
3503    #[serde(untagged)]
3504    Unknown(String),
3505}
3506
3507impl std::fmt::Display for ClickStackFilterInputType {
3508    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3509        match self {
3510            Self::QUERY_EXPRESSION => write!(f, "QUERY_EXPRESSION"),
3511            Self::Unknown(s) => write!(f, "{s}"),
3512        }
3513    }
3514}
3515
3516/// Inline enum for `ClickStackFilterInput.whereLanguage`.
3517#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3518pub enum ClickStackFilterInputWherelanguage {
3519    #[serde(rename = "sql")]
3520    #[default]
3521    Sql,
3522    #[serde(rename = "lucene")]
3523    Lucene,
3524    /// Catch-all for unknown or newly-added values.
3525    #[serde(untagged)]
3526    Unknown(String),
3527}
3528
3529impl std::fmt::Display for ClickStackFilterInputWherelanguage {
3530    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3531        match self {
3532            Self::Sql => write!(f, "sql"),
3533            Self::Lucene => write!(f, "lucene"),
3534            Self::Unknown(s) => write!(f, "{s}"),
3535        }
3536    }
3537}
3538
3539/// Inline enum for `ClickStackGenericWebhook.service`.
3540#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3541pub enum ClickStackGenericWebhookService {
3542    #[serde(rename = "generic")]
3543    #[default]
3544    Generic,
3545    /// Catch-all for unknown or newly-added values.
3546    #[serde(untagged)]
3547    Unknown(String),
3548}
3549
3550impl std::fmt::Display for ClickStackGenericWebhookService {
3551    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3552        match self {
3553            Self::Generic => write!(f, "generic"),
3554            Self::Unknown(s) => write!(f, "{s}"),
3555        }
3556    }
3557}
3558
3559/// Inline enum for `ClickStackHeatmapChartConfig.displayType`.
3560#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3561pub enum ClickStackHeatmapChartConfigDisplaytype {
3562    #[serde(rename = "heatmap")]
3563    #[default]
3564    Heatmap,
3565    /// Catch-all for unknown or newly-added values.
3566    #[serde(untagged)]
3567    Unknown(String),
3568}
3569
3570impl std::fmt::Display for ClickStackHeatmapChartConfigDisplaytype {
3571    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3572        match self {
3573            Self::Heatmap => write!(f, "heatmap"),
3574            Self::Unknown(s) => write!(f, "{s}"),
3575        }
3576    }
3577}
3578
3579/// Inline enum for `ClickStackHeatmapChartConfig.whereLanguage`.
3580#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3581pub enum ClickStackHeatmapChartConfigWherelanguage {
3582    #[serde(rename = "sql")]
3583    #[default]
3584    Sql,
3585    #[serde(rename = "lucene")]
3586    Lucene,
3587    /// Catch-all for unknown or newly-added values.
3588    #[serde(untagged)]
3589    Unknown(String),
3590}
3591
3592impl std::fmt::Display for ClickStackHeatmapChartConfigWherelanguage {
3593    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3594        match self {
3595            Self::Sql => write!(f, "sql"),
3596            Self::Lucene => write!(f, "lucene"),
3597            Self::Unknown(s) => write!(f, "{s}"),
3598        }
3599    }
3600}
3601
3602/// Inline enum for `ClickStackHeatmapSelectItem.heatmapScaleType`.
3603#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3604pub enum ClickStackHeatmapSelectItemHeatmapscaletype {
3605    #[serde(rename = "log")]
3606    #[default]
3607    Log,
3608    #[serde(rename = "linear")]
3609    Linear,
3610    /// Catch-all for unknown or newly-added values.
3611    #[serde(untagged)]
3612    Unknown(String),
3613}
3614
3615impl std::fmt::Display for ClickStackHeatmapSelectItemHeatmapscaletype {
3616    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3617        match self {
3618            Self::Log => write!(f, "log"),
3619            Self::Linear => write!(f, "linear"),
3620            Self::Unknown(s) => write!(f, "{s}"),
3621        }
3622    }
3623}
3624
3625/// Inline enum for `ClickStackIncidentIOWebhook.service`.
3626#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3627pub enum ClickStackIncidentIOWebhookService {
3628    #[serde(rename = "incidentio")]
3629    #[default]
3630    Incidentio,
3631    /// Catch-all for unknown or newly-added values.
3632    #[serde(untagged)]
3633    Unknown(String),
3634}
3635
3636impl std::fmt::Display for ClickStackIncidentIOWebhookService {
3637    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3638        match self {
3639            Self::Incidentio => write!(f, "incidentio"),
3640            Self::Unknown(s) => write!(f, "{s}"),
3641        }
3642    }
3643}
3644
3645/// Inline enum for `ClickStackLineBuilderChartConfig.displayType`.
3646#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3647pub enum ClickStackLineBuilderChartConfigDisplaytype {
3648    #[serde(rename = "line")]
3649    #[default]
3650    Line,
3651    /// Catch-all for unknown or newly-added values.
3652    #[serde(untagged)]
3653    Unknown(String),
3654}
3655
3656impl std::fmt::Display for ClickStackLineBuilderChartConfigDisplaytype {
3657    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3658        match self {
3659            Self::Line => write!(f, "line"),
3660            Self::Unknown(s) => write!(f, "{s}"),
3661        }
3662    }
3663}
3664
3665/// Inline enum for `ClickStackLineRawSqlChartConfig.configType`.
3666#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3667pub enum ClickStackLineRawSqlChartConfigConfigtype {
3668    #[serde(rename = "sql")]
3669    #[default]
3670    Sql,
3671    /// Catch-all for unknown or newly-added values.
3672    #[serde(untagged)]
3673    Unknown(String),
3674}
3675
3676impl std::fmt::Display for ClickStackLineRawSqlChartConfigConfigtype {
3677    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3678        match self {
3679            Self::Sql => write!(f, "sql"),
3680            Self::Unknown(s) => write!(f, "{s}"),
3681        }
3682    }
3683}
3684
3685/// Inline enum for `ClickStackLineRawSqlChartConfig.displayType`.
3686#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3687pub enum ClickStackLineRawSqlChartConfigDisplaytype {
3688    #[serde(rename = "line")]
3689    #[default]
3690    Line,
3691    /// Catch-all for unknown or newly-added values.
3692    #[serde(untagged)]
3693    Unknown(String),
3694}
3695
3696impl std::fmt::Display for ClickStackLineRawSqlChartConfigDisplaytype {
3697    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3698        match self {
3699            Self::Line => write!(f, "line"),
3700            Self::Unknown(s) => write!(f, "{s}"),
3701        }
3702    }
3703}
3704
3705/// Inline enum for `ClickStackLogSource.kind`.
3706#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3707pub enum ClickStackLogSourceKind {
3708    #[serde(rename = "log")]
3709    #[default]
3710    Log,
3711    /// Catch-all for unknown or newly-added values.
3712    #[serde(untagged)]
3713    Unknown(String),
3714}
3715
3716impl std::fmt::Display for ClickStackLogSourceKind {
3717    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3718        match self {
3719            Self::Log => write!(f, "log"),
3720            Self::Unknown(s) => write!(f, "{s}"),
3721        }
3722    }
3723}
3724
3725/// Inline enum for `ClickStackMarkdownChartConfig.displayType`.
3726#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3727pub enum ClickStackMarkdownChartConfigDisplaytype {
3728    #[serde(rename = "markdown")]
3729    #[default]
3730    Markdown,
3731    /// Catch-all for unknown or newly-added values.
3732    #[serde(untagged)]
3733    Unknown(String),
3734}
3735
3736impl std::fmt::Display for ClickStackMarkdownChartConfigDisplaytype {
3737    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3738        match self {
3739            Self::Markdown => write!(f, "markdown"),
3740            Self::Unknown(s) => write!(f, "{s}"),
3741        }
3742    }
3743}
3744
3745/// Inline enum for `ClickStackMarkdownChartSeries.type`.
3746#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3747pub enum ClickStackMarkdownChartSeriesType {
3748    #[serde(rename = "markdown")]
3749    #[default]
3750    Markdown,
3751    /// Catch-all for unknown or newly-added values.
3752    #[serde(untagged)]
3753    Unknown(String),
3754}
3755
3756impl std::fmt::Display for ClickStackMarkdownChartSeriesType {
3757    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3758        match self {
3759            Self::Markdown => write!(f, "markdown"),
3760            Self::Unknown(s) => write!(f, "{s}"),
3761        }
3762    }
3763}
3764
3765/// Inline enum for `ClickStackMaterializedView.minGranularity`.
3766#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3767pub enum ClickStackMaterializedViewMingranularity {
3768    #[serde(rename = "1s")]
3769    #[default]
3770    _1s,
3771    #[serde(rename = "15s")]
3772    _15s,
3773    #[serde(rename = "30s")]
3774    _30s,
3775    #[serde(rename = "1m")]
3776    _1m,
3777    #[serde(rename = "5m")]
3778    _5m,
3779    #[serde(rename = "15m")]
3780    _15m,
3781    #[serde(rename = "30m")]
3782    _30m,
3783    #[serde(rename = "1h")]
3784    _1h,
3785    #[serde(rename = "2h")]
3786    _2h,
3787    #[serde(rename = "6h")]
3788    _6h,
3789    #[serde(rename = "12h")]
3790    _12h,
3791    #[serde(rename = "1d")]
3792    _1d,
3793    #[serde(rename = "2d")]
3794    _2d,
3795    #[serde(rename = "7d")]
3796    _7d,
3797    #[serde(rename = "30d")]
3798    _30d,
3799    /// Catch-all for unknown or newly-added values.
3800    #[serde(untagged)]
3801    Unknown(String),
3802}
3803
3804impl std::fmt::Display for ClickStackMaterializedViewMingranularity {
3805    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3806        match self {
3807            Self::_1s => write!(f, "1s"),
3808            Self::_15s => write!(f, "15s"),
3809            Self::_30s => write!(f, "30s"),
3810            Self::_1m => write!(f, "1m"),
3811            Self::_5m => write!(f, "5m"),
3812            Self::_15m => write!(f, "15m"),
3813            Self::_30m => write!(f, "30m"),
3814            Self::_1h => write!(f, "1h"),
3815            Self::_2h => write!(f, "2h"),
3816            Self::_6h => write!(f, "6h"),
3817            Self::_12h => write!(f, "12h"),
3818            Self::_1d => write!(f, "1d"),
3819            Self::_2d => write!(f, "2d"),
3820            Self::_7d => write!(f, "7d"),
3821            Self::_30d => write!(f, "30d"),
3822            Self::Unknown(s) => write!(f, "{s}"),
3823        }
3824    }
3825}
3826
3827/// Inline enum for `ClickStackMetricSource.kind`.
3828#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3829pub enum ClickStackMetricSourceKind {
3830    #[serde(rename = "metric")]
3831    #[default]
3832    Metric,
3833    /// Catch-all for unknown or newly-added values.
3834    #[serde(untagged)]
3835    Unknown(String),
3836}
3837
3838impl std::fmt::Display for ClickStackMetricSourceKind {
3839    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3840        match self {
3841            Self::Metric => write!(f, "metric"),
3842            Self::Unknown(s) => write!(f, "{s}"),
3843        }
3844    }
3845}
3846
3847/// Inline enum for `ClickStackNumberBuilderChartConfig.displayType`.
3848#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3849pub enum ClickStackNumberBuilderChartConfigDisplaytype {
3850    #[serde(rename = "number")]
3851    #[default]
3852    Number,
3853    /// Catch-all for unknown or newly-added values.
3854    #[serde(untagged)]
3855    Unknown(String),
3856}
3857
3858impl std::fmt::Display for ClickStackNumberBuilderChartConfigDisplaytype {
3859    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3860        match self {
3861            Self::Number => write!(f, "number"),
3862            Self::Unknown(s) => write!(f, "{s}"),
3863        }
3864    }
3865}
3866
3867/// Inline enum for `ClickStackNumberChartSeries.aggFn`.
3868#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3869pub enum ClickStackNumberChartSeriesAggfn {
3870    #[serde(rename = "avg")]
3871    #[default]
3872    Avg,
3873    #[serde(rename = "count")]
3874    Count,
3875    #[serde(rename = "count_distinct")]
3876    Count_distinct,
3877    #[serde(rename = "last_value")]
3878    Last_value,
3879    #[serde(rename = "max")]
3880    Max,
3881    #[serde(rename = "min")]
3882    Min,
3883    #[serde(rename = "quantile")]
3884    Quantile,
3885    #[serde(rename = "sum")]
3886    Sum,
3887    #[serde(rename = "any")]
3888    Any,
3889    #[serde(rename = "none")]
3890    None,
3891    /// Catch-all for unknown or newly-added values.
3892    #[serde(untagged)]
3893    Unknown(String),
3894}
3895
3896impl std::fmt::Display for ClickStackNumberChartSeriesAggfn {
3897    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3898        match self {
3899            Self::Avg => write!(f, "avg"),
3900            Self::Count => write!(f, "count"),
3901            Self::Count_distinct => write!(f, "count_distinct"),
3902            Self::Last_value => write!(f, "last_value"),
3903            Self::Max => write!(f, "max"),
3904            Self::Min => write!(f, "min"),
3905            Self::Quantile => write!(f, "quantile"),
3906            Self::Sum => write!(f, "sum"),
3907            Self::Any => write!(f, "any"),
3908            Self::None => write!(f, "none"),
3909            Self::Unknown(s) => write!(f, "{s}"),
3910        }
3911    }
3912}
3913
3914/// Inline enum for `ClickStackNumberChartSeries.metricDataType`.
3915#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3916pub enum ClickStackNumberChartSeriesMetricdatatype {
3917    #[serde(rename = "sum")]
3918    #[default]
3919    Sum,
3920    #[serde(rename = "gauge")]
3921    Gauge,
3922    #[serde(rename = "histogram")]
3923    Histogram,
3924    #[serde(rename = "summary")]
3925    Summary,
3926    #[serde(rename = "exponential histogram")]
3927    Exponential_histogram,
3928    /// Catch-all for unknown or newly-added values.
3929    #[serde(untagged)]
3930    Unknown(String),
3931}
3932
3933impl std::fmt::Display for ClickStackNumberChartSeriesMetricdatatype {
3934    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3935        match self {
3936            Self::Sum => write!(f, "sum"),
3937            Self::Gauge => write!(f, "gauge"),
3938            Self::Histogram => write!(f, "histogram"),
3939            Self::Summary => write!(f, "summary"),
3940            Self::Exponential_histogram => write!(f, "exponential histogram"),
3941            Self::Unknown(s) => write!(f, "{s}"),
3942        }
3943    }
3944}
3945
3946/// Inline enum for `ClickStackNumberChartSeries.type`.
3947#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3948pub enum ClickStackNumberChartSeriesType {
3949    #[serde(rename = "number")]
3950    #[default]
3951    Number,
3952    /// Catch-all for unknown or newly-added values.
3953    #[serde(untagged)]
3954    Unknown(String),
3955}
3956
3957impl std::fmt::Display for ClickStackNumberChartSeriesType {
3958    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3959        match self {
3960            Self::Number => write!(f, "number"),
3961            Self::Unknown(s) => write!(f, "{s}"),
3962        }
3963    }
3964}
3965
3966/// Inline enum for `ClickStackNumberChartSeries.whereLanguage`.
3967#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3968pub enum ClickStackNumberChartSeriesWherelanguage {
3969    #[serde(rename = "sql")]
3970    #[default]
3971    Sql,
3972    #[serde(rename = "lucene")]
3973    Lucene,
3974    /// Catch-all for unknown or newly-added values.
3975    #[serde(untagged)]
3976    Unknown(String),
3977}
3978
3979impl std::fmt::Display for ClickStackNumberChartSeriesWherelanguage {
3980    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3981        match self {
3982            Self::Sql => write!(f, "sql"),
3983            Self::Lucene => write!(f, "lucene"),
3984            Self::Unknown(s) => write!(f, "{s}"),
3985        }
3986    }
3987}
3988
3989/// Inline enum for `ClickStackNumberFormat.numericUnit`.
3990#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
3991pub enum ClickStackNumberFormatNumericunit {
3992    #[serde(rename = "bytes_iec")]
3993    #[default]
3994    Bytes_iec,
3995    #[serde(rename = "bytes_si")]
3996    Bytes_si,
3997    #[serde(rename = "bits_iec")]
3998    Bits_iec,
3999    #[serde(rename = "bits_si")]
4000    Bits_si,
4001    #[serde(rename = "kibibytes")]
4002    Kibibytes,
4003    #[serde(rename = "kilobytes")]
4004    Kilobytes,
4005    #[serde(rename = "mebibytes")]
4006    Mebibytes,
4007    #[serde(rename = "megabytes")]
4008    Megabytes,
4009    #[serde(rename = "gibibytes")]
4010    Gibibytes,
4011    #[serde(rename = "gigabytes")]
4012    Gigabytes,
4013    #[serde(rename = "tebibytes")]
4014    Tebibytes,
4015    #[serde(rename = "terabytes")]
4016    Terabytes,
4017    #[serde(rename = "pebibytes")]
4018    Pebibytes,
4019    #[serde(rename = "petabytes")]
4020    Petabytes,
4021    #[serde(rename = "packets_sec")]
4022    Packets_sec,
4023    #[serde(rename = "bytes_sec_iec")]
4024    Bytes_sec_iec,
4025    #[serde(rename = "bytes_sec_si")]
4026    Bytes_sec_si,
4027    #[serde(rename = "bits_sec_iec")]
4028    Bits_sec_iec,
4029    #[serde(rename = "bits_sec_si")]
4030    Bits_sec_si,
4031    #[serde(rename = "kibibytes_sec")]
4032    Kibibytes_sec,
4033    #[serde(rename = "kibibits_sec")]
4034    Kibibits_sec,
4035    #[serde(rename = "kilobytes_sec")]
4036    Kilobytes_sec,
4037    #[serde(rename = "kilobits_sec")]
4038    Kilobits_sec,
4039    #[serde(rename = "mebibytes_sec")]
4040    Mebibytes_sec,
4041    #[serde(rename = "mebibits_sec")]
4042    Mebibits_sec,
4043    #[serde(rename = "megabytes_sec")]
4044    Megabytes_sec,
4045    #[serde(rename = "megabits_sec")]
4046    Megabits_sec,
4047    #[serde(rename = "gibibytes_sec")]
4048    Gibibytes_sec,
4049    #[serde(rename = "gibibits_sec")]
4050    Gibibits_sec,
4051    #[serde(rename = "gigabytes_sec")]
4052    Gigabytes_sec,
4053    #[serde(rename = "gigabits_sec")]
4054    Gigabits_sec,
4055    #[serde(rename = "tebibytes_sec")]
4056    Tebibytes_sec,
4057    #[serde(rename = "tebibits_sec")]
4058    Tebibits_sec,
4059    #[serde(rename = "terabytes_sec")]
4060    Terabytes_sec,
4061    #[serde(rename = "terabits_sec")]
4062    Terabits_sec,
4063    #[serde(rename = "pebibytes_sec")]
4064    Pebibytes_sec,
4065    #[serde(rename = "pebibits_sec")]
4066    Pebibits_sec,
4067    #[serde(rename = "petabytes_sec")]
4068    Petabytes_sec,
4069    #[serde(rename = "petabits_sec")]
4070    Petabits_sec,
4071    #[serde(rename = "cps")]
4072    Cps,
4073    #[serde(rename = "ops")]
4074    Ops,
4075    #[serde(rename = "rps")]
4076    Rps,
4077    #[serde(rename = "reads_sec")]
4078    Reads_sec,
4079    #[serde(rename = "wps")]
4080    Wps,
4081    #[serde(rename = "iops")]
4082    Iops,
4083    #[serde(rename = "cpm")]
4084    Cpm,
4085    #[serde(rename = "opm")]
4086    Opm,
4087    #[serde(rename = "rpm_reads")]
4088    Rpm_reads,
4089    #[serde(rename = "wpm")]
4090    Wpm,
4091    /// Catch-all for unknown or newly-added values.
4092    #[serde(untagged)]
4093    Unknown(String),
4094}
4095
4096impl std::fmt::Display for ClickStackNumberFormatNumericunit {
4097    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4098        match self {
4099            Self::Bytes_iec => write!(f, "bytes_iec"),
4100            Self::Bytes_si => write!(f, "bytes_si"),
4101            Self::Bits_iec => write!(f, "bits_iec"),
4102            Self::Bits_si => write!(f, "bits_si"),
4103            Self::Kibibytes => write!(f, "kibibytes"),
4104            Self::Kilobytes => write!(f, "kilobytes"),
4105            Self::Mebibytes => write!(f, "mebibytes"),
4106            Self::Megabytes => write!(f, "megabytes"),
4107            Self::Gibibytes => write!(f, "gibibytes"),
4108            Self::Gigabytes => write!(f, "gigabytes"),
4109            Self::Tebibytes => write!(f, "tebibytes"),
4110            Self::Terabytes => write!(f, "terabytes"),
4111            Self::Pebibytes => write!(f, "pebibytes"),
4112            Self::Petabytes => write!(f, "petabytes"),
4113            Self::Packets_sec => write!(f, "packets_sec"),
4114            Self::Bytes_sec_iec => write!(f, "bytes_sec_iec"),
4115            Self::Bytes_sec_si => write!(f, "bytes_sec_si"),
4116            Self::Bits_sec_iec => write!(f, "bits_sec_iec"),
4117            Self::Bits_sec_si => write!(f, "bits_sec_si"),
4118            Self::Kibibytes_sec => write!(f, "kibibytes_sec"),
4119            Self::Kibibits_sec => write!(f, "kibibits_sec"),
4120            Self::Kilobytes_sec => write!(f, "kilobytes_sec"),
4121            Self::Kilobits_sec => write!(f, "kilobits_sec"),
4122            Self::Mebibytes_sec => write!(f, "mebibytes_sec"),
4123            Self::Mebibits_sec => write!(f, "mebibits_sec"),
4124            Self::Megabytes_sec => write!(f, "megabytes_sec"),
4125            Self::Megabits_sec => write!(f, "megabits_sec"),
4126            Self::Gibibytes_sec => write!(f, "gibibytes_sec"),
4127            Self::Gibibits_sec => write!(f, "gibibits_sec"),
4128            Self::Gigabytes_sec => write!(f, "gigabytes_sec"),
4129            Self::Gigabits_sec => write!(f, "gigabits_sec"),
4130            Self::Tebibytes_sec => write!(f, "tebibytes_sec"),
4131            Self::Tebibits_sec => write!(f, "tebibits_sec"),
4132            Self::Terabytes_sec => write!(f, "terabytes_sec"),
4133            Self::Terabits_sec => write!(f, "terabits_sec"),
4134            Self::Pebibytes_sec => write!(f, "pebibytes_sec"),
4135            Self::Pebibits_sec => write!(f, "pebibits_sec"),
4136            Self::Petabytes_sec => write!(f, "petabytes_sec"),
4137            Self::Petabits_sec => write!(f, "petabits_sec"),
4138            Self::Cps => write!(f, "cps"),
4139            Self::Ops => write!(f, "ops"),
4140            Self::Rps => write!(f, "rps"),
4141            Self::Reads_sec => write!(f, "reads_sec"),
4142            Self::Wps => write!(f, "wps"),
4143            Self::Iops => write!(f, "iops"),
4144            Self::Cpm => write!(f, "cpm"),
4145            Self::Opm => write!(f, "opm"),
4146            Self::Rpm_reads => write!(f, "rpm_reads"),
4147            Self::Wpm => write!(f, "wpm"),
4148            Self::Unknown(s) => write!(f, "{s}"),
4149        }
4150    }
4151}
4152
4153/// Inline enum for `ClickStackNumberFormat.output`.
4154#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4155pub enum ClickStackNumberFormatOutput {
4156    #[serde(rename = "currency")]
4157    #[default]
4158    Currency,
4159    #[serde(rename = "percent")]
4160    Percent,
4161    #[serde(rename = "byte")]
4162    Byte,
4163    #[serde(rename = "time")]
4164    Time,
4165    #[serde(rename = "number")]
4166    Number,
4167    #[serde(rename = "data_rate")]
4168    Data_rate,
4169    #[serde(rename = "throughput")]
4170    Throughput,
4171    /// Catch-all for unknown or newly-added values.
4172    #[serde(untagged)]
4173    Unknown(String),
4174}
4175
4176impl std::fmt::Display for ClickStackNumberFormatOutput {
4177    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4178        match self {
4179            Self::Currency => write!(f, "currency"),
4180            Self::Percent => write!(f, "percent"),
4181            Self::Byte => write!(f, "byte"),
4182            Self::Time => write!(f, "time"),
4183            Self::Number => write!(f, "number"),
4184            Self::Data_rate => write!(f, "data_rate"),
4185            Self::Throughput => write!(f, "throughput"),
4186            Self::Unknown(s) => write!(f, "{s}"),
4187        }
4188    }
4189}
4190
4191/// Inline enum for `ClickStackNumberRawSqlChartConfig.configType`.
4192#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4193pub enum ClickStackNumberRawSqlChartConfigConfigtype {
4194    #[serde(rename = "sql")]
4195    #[default]
4196    Sql,
4197    /// Catch-all for unknown or newly-added values.
4198    #[serde(untagged)]
4199    Unknown(String),
4200}
4201
4202impl std::fmt::Display for ClickStackNumberRawSqlChartConfigConfigtype {
4203    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4204        match self {
4205            Self::Sql => write!(f, "sql"),
4206            Self::Unknown(s) => write!(f, "{s}"),
4207        }
4208    }
4209}
4210
4211/// Inline enum for `ClickStackNumberRawSqlChartConfig.displayType`.
4212#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4213pub enum ClickStackNumberRawSqlChartConfigDisplaytype {
4214    #[serde(rename = "number")]
4215    #[default]
4216    Number,
4217    /// Catch-all for unknown or newly-added values.
4218    #[serde(untagged)]
4219    Unknown(String),
4220}
4221
4222impl std::fmt::Display for ClickStackNumberRawSqlChartConfigDisplaytype {
4223    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4224        match self {
4225            Self::Number => write!(f, "number"),
4226            Self::Unknown(s) => write!(f, "{s}"),
4227        }
4228    }
4229}
4230
4231/// Inline enum for `ClickStackOnClickDashboard.type`.
4232#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4233pub enum ClickStackOnClickDashboardType {
4234    #[serde(rename = "dashboard")]
4235    #[default]
4236    Dashboard,
4237    /// Catch-all for unknown or newly-added values.
4238    #[serde(untagged)]
4239    Unknown(String),
4240}
4241
4242impl std::fmt::Display for ClickStackOnClickDashboardType {
4243    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4244        match self {
4245            Self::Dashboard => write!(f, "dashboard"),
4246            Self::Unknown(s) => write!(f, "{s}"),
4247        }
4248    }
4249}
4250
4251/// Inline enum for `ClickStackOnClickDashboard.whereLanguage`.
4252#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4253pub enum ClickStackOnClickDashboardWherelanguage {
4254    #[serde(rename = "sql")]
4255    #[default]
4256    Sql,
4257    #[serde(rename = "lucene")]
4258    Lucene,
4259    /// Catch-all for unknown or newly-added values.
4260    #[serde(untagged)]
4261    Unknown(String),
4262}
4263
4264impl std::fmt::Display for ClickStackOnClickDashboardWherelanguage {
4265    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4266        match self {
4267            Self::Sql => write!(f, "sql"),
4268            Self::Lucene => write!(f, "lucene"),
4269            Self::Unknown(s) => write!(f, "{s}"),
4270        }
4271    }
4272}
4273
4274/// Inline enum for `ClickStackOnClickFilterTemplate.kind`.
4275#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4276pub enum ClickStackOnClickFilterTemplateKind {
4277    #[serde(rename = "expressionTemplate")]
4278    #[default]
4279    ExpressionTemplate,
4280    /// Catch-all for unknown or newly-added values.
4281    #[serde(untagged)]
4282    Unknown(String),
4283}
4284
4285impl std::fmt::Display for ClickStackOnClickFilterTemplateKind {
4286    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4287        match self {
4288            Self::ExpressionTemplate => write!(f, "expressionTemplate"),
4289            Self::Unknown(s) => write!(f, "{s}"),
4290        }
4291    }
4292}
4293
4294/// Inline enum for `ClickStackOnClickSearch.type`.
4295#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4296pub enum ClickStackOnClickSearchType {
4297    #[serde(rename = "search")]
4298    #[default]
4299    Search,
4300    /// Catch-all for unknown or newly-added values.
4301    #[serde(untagged)]
4302    Unknown(String),
4303}
4304
4305impl std::fmt::Display for ClickStackOnClickSearchType {
4306    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4307        match self {
4308            Self::Search => write!(f, "search"),
4309            Self::Unknown(s) => write!(f, "{s}"),
4310        }
4311    }
4312}
4313
4314/// Inline enum for `ClickStackOnClickSearch.whereLanguage`.
4315#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4316pub enum ClickStackOnClickSearchWherelanguage {
4317    #[serde(rename = "sql")]
4318    #[default]
4319    Sql,
4320    #[serde(rename = "lucene")]
4321    Lucene,
4322    /// Catch-all for unknown or newly-added values.
4323    #[serde(untagged)]
4324    Unknown(String),
4325}
4326
4327impl std::fmt::Display for ClickStackOnClickSearchWherelanguage {
4328    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4329        match self {
4330            Self::Sql => write!(f, "sql"),
4331            Self::Lucene => write!(f, "lucene"),
4332            Self::Unknown(s) => write!(f, "{s}"),
4333        }
4334    }
4335}
4336
4337/// Inline enum for `ClickStackOnClickTargetIdVariant.mode`.
4338#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4339pub enum ClickStackOnClickTargetIdVariantMode {
4340    #[serde(rename = "id")]
4341    #[default]
4342    Id,
4343    /// Catch-all for unknown or newly-added values.
4344    #[serde(untagged)]
4345    Unknown(String),
4346}
4347
4348impl std::fmt::Display for ClickStackOnClickTargetIdVariantMode {
4349    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4350        match self {
4351            Self::Id => write!(f, "id"),
4352            Self::Unknown(s) => write!(f, "{s}"),
4353        }
4354    }
4355}
4356
4357/// Inline enum for `ClickStackOnClickTargetTemplateVariant.mode`.
4358#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4359pub enum ClickStackOnClickTargetTemplateVariantMode {
4360    #[serde(rename = "template")]
4361    #[default]
4362    Template,
4363    /// Catch-all for unknown or newly-added values.
4364    #[serde(untagged)]
4365    Unknown(String),
4366}
4367
4368impl std::fmt::Display for ClickStackOnClickTargetTemplateVariantMode {
4369    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4370        match self {
4371            Self::Template => write!(f, "template"),
4372            Self::Unknown(s) => write!(f, "{s}"),
4373        }
4374    }
4375}
4376
4377/// Inline enum for `ClickStackPagerDutyAPIWebhook.service`.
4378#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4379pub enum ClickStackPagerDutyAPIWebhookService {
4380    #[serde(rename = "pagerduty_api")]
4381    #[default]
4382    Pagerduty_api,
4383    /// Catch-all for unknown or newly-added values.
4384    #[serde(untagged)]
4385    Unknown(String),
4386}
4387
4388impl std::fmt::Display for ClickStackPagerDutyAPIWebhookService {
4389    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4390        match self {
4391            Self::Pagerduty_api => write!(f, "pagerduty_api"),
4392            Self::Unknown(s) => write!(f, "{s}"),
4393        }
4394    }
4395}
4396
4397/// Inline enum for `ClickStackPieBuilderChartConfig.displayType`.
4398#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4399pub enum ClickStackPieBuilderChartConfigDisplaytype {
4400    #[serde(rename = "pie")]
4401    #[default]
4402    Pie,
4403    /// Catch-all for unknown or newly-added values.
4404    #[serde(untagged)]
4405    Unknown(String),
4406}
4407
4408impl std::fmt::Display for ClickStackPieBuilderChartConfigDisplaytype {
4409    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4410        match self {
4411            Self::Pie => write!(f, "pie"),
4412            Self::Unknown(s) => write!(f, "{s}"),
4413        }
4414    }
4415}
4416
4417/// Inline enum for `ClickStackPieRawSqlChartConfig.configType`.
4418#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4419pub enum ClickStackPieRawSqlChartConfigConfigtype {
4420    #[serde(rename = "sql")]
4421    #[default]
4422    Sql,
4423    /// Catch-all for unknown or newly-added values.
4424    #[serde(untagged)]
4425    Unknown(String),
4426}
4427
4428impl std::fmt::Display for ClickStackPieRawSqlChartConfigConfigtype {
4429    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4430        match self {
4431            Self::Sql => write!(f, "sql"),
4432            Self::Unknown(s) => write!(f, "{s}"),
4433        }
4434    }
4435}
4436
4437/// Inline enum for `ClickStackPieRawSqlChartConfig.displayType`.
4438#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4439pub enum ClickStackPieRawSqlChartConfigDisplaytype {
4440    #[serde(rename = "pie")]
4441    #[default]
4442    Pie,
4443    /// Catch-all for unknown or newly-added values.
4444    #[serde(untagged)]
4445    Unknown(String),
4446}
4447
4448impl std::fmt::Display for ClickStackPieRawSqlChartConfigDisplaytype {
4449    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4450        match self {
4451            Self::Pie => write!(f, "pie"),
4452            Self::Unknown(s) => write!(f, "{s}"),
4453        }
4454    }
4455}
4456
4457/// Inline enum for `ClickStackSavedFilterValue.type`.
4458#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4459pub enum ClickStackSavedFilterValueType {
4460    #[serde(rename = "sql")]
4461    #[default]
4462    Sql,
4463    /// Catch-all for unknown or newly-added values.
4464    #[serde(untagged)]
4465    Unknown(String),
4466}
4467
4468impl std::fmt::Display for ClickStackSavedFilterValueType {
4469    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4470        match self {
4471            Self::Sql => write!(f, "sql"),
4472            Self::Unknown(s) => write!(f, "{s}"),
4473        }
4474    }
4475}
4476
4477/// Inline enum for `ClickStackSearchChartConfig.displayType`.
4478#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4479pub enum ClickStackSearchChartConfigDisplaytype {
4480    #[serde(rename = "search")]
4481    #[default]
4482    Search,
4483    /// Catch-all for unknown or newly-added values.
4484    #[serde(untagged)]
4485    Unknown(String),
4486}
4487
4488impl std::fmt::Display for ClickStackSearchChartConfigDisplaytype {
4489    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4490        match self {
4491            Self::Search => write!(f, "search"),
4492            Self::Unknown(s) => write!(f, "{s}"),
4493        }
4494    }
4495}
4496
4497/// Inline enum for `ClickStackSearchChartConfig.whereLanguage`.
4498#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4499pub enum ClickStackSearchChartConfigWherelanguage {
4500    #[serde(rename = "sql")]
4501    #[default]
4502    Sql,
4503    #[serde(rename = "lucene")]
4504    Lucene,
4505    /// Catch-all for unknown or newly-added values.
4506    #[serde(untagged)]
4507    Unknown(String),
4508}
4509
4510impl std::fmt::Display for ClickStackSearchChartConfigWherelanguage {
4511    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4512        match self {
4513            Self::Sql => write!(f, "sql"),
4514            Self::Lucene => write!(f, "lucene"),
4515            Self::Unknown(s) => write!(f, "{s}"),
4516        }
4517    }
4518}
4519
4520/// Inline enum for `ClickStackSearchChartSeries.type`.
4521#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4522pub enum ClickStackSearchChartSeriesType {
4523    #[serde(rename = "search")]
4524    #[default]
4525    Search,
4526    /// Catch-all for unknown or newly-added values.
4527    #[serde(untagged)]
4528    Unknown(String),
4529}
4530
4531impl std::fmt::Display for ClickStackSearchChartSeriesType {
4532    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4533        match self {
4534            Self::Search => write!(f, "search"),
4535            Self::Unknown(s) => write!(f, "{s}"),
4536        }
4537    }
4538}
4539
4540/// Inline enum for `ClickStackSearchChartSeries.whereLanguage`.
4541#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4542pub enum ClickStackSearchChartSeriesWherelanguage {
4543    #[serde(rename = "sql")]
4544    #[default]
4545    Sql,
4546    #[serde(rename = "lucene")]
4547    Lucene,
4548    /// Catch-all for unknown or newly-added values.
4549    #[serde(untagged)]
4550    Unknown(String),
4551}
4552
4553impl std::fmt::Display for ClickStackSearchChartSeriesWherelanguage {
4554    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4555        match self {
4556            Self::Sql => write!(f, "sql"),
4557            Self::Lucene => write!(f, "lucene"),
4558            Self::Unknown(s) => write!(f, "{s}"),
4559        }
4560    }
4561}
4562
4563/// Inline enum for `ClickStackSelectItem.aggFn`.
4564#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4565pub enum ClickStackSelectItemAggfn {
4566    #[serde(rename = "avg")]
4567    #[default]
4568    Avg,
4569    #[serde(rename = "count")]
4570    Count,
4571    #[serde(rename = "count_distinct")]
4572    Count_distinct,
4573    #[serde(rename = "last_value")]
4574    Last_value,
4575    #[serde(rename = "max")]
4576    Max,
4577    #[serde(rename = "min")]
4578    Min,
4579    #[serde(rename = "quantile")]
4580    Quantile,
4581    #[serde(rename = "sum")]
4582    Sum,
4583    #[serde(rename = "any")]
4584    Any,
4585    #[serde(rename = "none")]
4586    None,
4587    /// Catch-all for unknown or newly-added values.
4588    #[serde(untagged)]
4589    Unknown(String),
4590}
4591
4592impl std::fmt::Display for ClickStackSelectItemAggfn {
4593    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4594        match self {
4595            Self::Avg => write!(f, "avg"),
4596            Self::Count => write!(f, "count"),
4597            Self::Count_distinct => write!(f, "count_distinct"),
4598            Self::Last_value => write!(f, "last_value"),
4599            Self::Max => write!(f, "max"),
4600            Self::Min => write!(f, "min"),
4601            Self::Quantile => write!(f, "quantile"),
4602            Self::Sum => write!(f, "sum"),
4603            Self::Any => write!(f, "any"),
4604            Self::None => write!(f, "none"),
4605            Self::Unknown(s) => write!(f, "{s}"),
4606        }
4607    }
4608}
4609
4610/// Inline enum for `ClickStackSelectItem.level`.
4611#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4612pub enum ClickStackSelectItemLevel {
4613    #[serde(rename = "0.5")]
4614    #[default]
4615    _0_5,
4616    #[serde(rename = "0.9")]
4617    _0_9,
4618    #[serde(rename = "0.95")]
4619    _0_95,
4620    #[serde(rename = "0.99")]
4621    _0_99,
4622    /// Catch-all for unknown or newly-added values.
4623    #[serde(untagged)]
4624    Unknown(String),
4625}
4626
4627impl std::fmt::Display for ClickStackSelectItemLevel {
4628    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4629        match self {
4630            Self::_0_5 => write!(f, "0.5"),
4631            Self::_0_9 => write!(f, "0.9"),
4632            Self::_0_95 => write!(f, "0.95"),
4633            Self::_0_99 => write!(f, "0.99"),
4634            Self::Unknown(s) => write!(f, "{s}"),
4635        }
4636    }
4637}
4638
4639/// Inline enum for `ClickStackSelectItem.metricType`.
4640#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4641pub enum ClickStackSelectItemMetrictype {
4642    #[serde(rename = "sum")]
4643    #[default]
4644    Sum,
4645    #[serde(rename = "gauge")]
4646    Gauge,
4647    #[serde(rename = "histogram")]
4648    Histogram,
4649    #[serde(rename = "summary")]
4650    Summary,
4651    #[serde(rename = "exponential histogram")]
4652    Exponential_histogram,
4653    /// Catch-all for unknown or newly-added values.
4654    #[serde(untagged)]
4655    Unknown(String),
4656}
4657
4658impl std::fmt::Display for ClickStackSelectItemMetrictype {
4659    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4660        match self {
4661            Self::Sum => write!(f, "sum"),
4662            Self::Gauge => write!(f, "gauge"),
4663            Self::Histogram => write!(f, "histogram"),
4664            Self::Summary => write!(f, "summary"),
4665            Self::Exponential_histogram => write!(f, "exponential histogram"),
4666            Self::Unknown(s) => write!(f, "{s}"),
4667        }
4668    }
4669}
4670
4671/// Inline enum for `ClickStackSelectItem.periodAggFn`.
4672#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4673pub enum ClickStackSelectItemPeriodaggfn {
4674    #[serde(rename = "delta")]
4675    #[default]
4676    Delta,
4677    /// Catch-all for unknown or newly-added values.
4678    #[serde(untagged)]
4679    Unknown(String),
4680}
4681
4682impl std::fmt::Display for ClickStackSelectItemPeriodaggfn {
4683    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4684        match self {
4685            Self::Delta => write!(f, "delta"),
4686            Self::Unknown(s) => write!(f, "{s}"),
4687        }
4688    }
4689}
4690
4691/// Inline enum for `ClickStackSelectItem.whereLanguage`.
4692#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4693pub enum ClickStackSelectItemWherelanguage {
4694    #[serde(rename = "sql")]
4695    #[default]
4696    Sql,
4697    #[serde(rename = "lucene")]
4698    Lucene,
4699    /// Catch-all for unknown or newly-added values.
4700    #[serde(untagged)]
4701    Unknown(String),
4702}
4703
4704impl std::fmt::Display for ClickStackSelectItemWherelanguage {
4705    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4706        match self {
4707            Self::Sql => write!(f, "sql"),
4708            Self::Lucene => write!(f, "lucene"),
4709            Self::Unknown(s) => write!(f, "{s}"),
4710        }
4711    }
4712}
4713
4714/// Inline enum for `ClickStackSessionSource.kind`.
4715#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4716pub enum ClickStackSessionSourceKind {
4717    #[serde(rename = "session")]
4718    #[default]
4719    Session,
4720    /// Catch-all for unknown or newly-added values.
4721    #[serde(untagged)]
4722    Unknown(String),
4723}
4724
4725impl std::fmt::Display for ClickStackSessionSourceKind {
4726    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4727        match self {
4728            Self::Session => write!(f, "session"),
4729            Self::Unknown(s) => write!(f, "{s}"),
4730        }
4731    }
4732}
4733
4734/// Inline enum for `ClickStackSlackAPIWebhook.service`.
4735#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4736pub enum ClickStackSlackAPIWebhookService {
4737    #[serde(rename = "slack_api")]
4738    #[default]
4739    Slack_api,
4740    /// Catch-all for unknown or newly-added values.
4741    #[serde(untagged)]
4742    Unknown(String),
4743}
4744
4745impl std::fmt::Display for ClickStackSlackAPIWebhookService {
4746    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4747        match self {
4748            Self::Slack_api => write!(f, "slack_api"),
4749            Self::Unknown(s) => write!(f, "{s}"),
4750        }
4751    }
4752}
4753
4754/// Inline enum for `ClickStackSlackWebhook.service`.
4755#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4756pub enum ClickStackSlackWebhookService {
4757    #[serde(rename = "slack")]
4758    #[default]
4759    Slack,
4760    /// Catch-all for unknown or newly-added values.
4761    #[serde(untagged)]
4762    Unknown(String),
4763}
4764
4765impl std::fmt::Display for ClickStackSlackWebhookService {
4766    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4767        match self {
4768            Self::Slack => write!(f, "slack"),
4769            Self::Unknown(s) => write!(f, "{s}"),
4770        }
4771    }
4772}
4773
4774/// Inline enum for `ClickStackTableBuilderChartConfig.displayType`.
4775#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4776pub enum ClickStackTableBuilderChartConfigDisplaytype {
4777    #[serde(rename = "table")]
4778    #[default]
4779    Table,
4780    /// Catch-all for unknown or newly-added values.
4781    #[serde(untagged)]
4782    Unknown(String),
4783}
4784
4785impl std::fmt::Display for ClickStackTableBuilderChartConfigDisplaytype {
4786    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4787        match self {
4788            Self::Table => write!(f, "table"),
4789            Self::Unknown(s) => write!(f, "{s}"),
4790        }
4791    }
4792}
4793
4794/// Inline enum for `ClickStackTableChartSeries.aggFn`.
4795#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4796pub enum ClickStackTableChartSeriesAggfn {
4797    #[serde(rename = "avg")]
4798    #[default]
4799    Avg,
4800    #[serde(rename = "count")]
4801    Count,
4802    #[serde(rename = "count_distinct")]
4803    Count_distinct,
4804    #[serde(rename = "last_value")]
4805    Last_value,
4806    #[serde(rename = "max")]
4807    Max,
4808    #[serde(rename = "min")]
4809    Min,
4810    #[serde(rename = "quantile")]
4811    Quantile,
4812    #[serde(rename = "sum")]
4813    Sum,
4814    #[serde(rename = "any")]
4815    Any,
4816    #[serde(rename = "none")]
4817    None,
4818    /// Catch-all for unknown or newly-added values.
4819    #[serde(untagged)]
4820    Unknown(String),
4821}
4822
4823impl std::fmt::Display for ClickStackTableChartSeriesAggfn {
4824    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4825        match self {
4826            Self::Avg => write!(f, "avg"),
4827            Self::Count => write!(f, "count"),
4828            Self::Count_distinct => write!(f, "count_distinct"),
4829            Self::Last_value => write!(f, "last_value"),
4830            Self::Max => write!(f, "max"),
4831            Self::Min => write!(f, "min"),
4832            Self::Quantile => write!(f, "quantile"),
4833            Self::Sum => write!(f, "sum"),
4834            Self::Any => write!(f, "any"),
4835            Self::None => write!(f, "none"),
4836            Self::Unknown(s) => write!(f, "{s}"),
4837        }
4838    }
4839}
4840
4841/// Inline enum for `ClickStackTableChartSeries.metricDataType`.
4842#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4843pub enum ClickStackTableChartSeriesMetricdatatype {
4844    #[serde(rename = "sum")]
4845    #[default]
4846    Sum,
4847    #[serde(rename = "gauge")]
4848    Gauge,
4849    #[serde(rename = "histogram")]
4850    Histogram,
4851    #[serde(rename = "summary")]
4852    Summary,
4853    #[serde(rename = "exponential histogram")]
4854    Exponential_histogram,
4855    /// Catch-all for unknown or newly-added values.
4856    #[serde(untagged)]
4857    Unknown(String),
4858}
4859
4860impl std::fmt::Display for ClickStackTableChartSeriesMetricdatatype {
4861    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4862        match self {
4863            Self::Sum => write!(f, "sum"),
4864            Self::Gauge => write!(f, "gauge"),
4865            Self::Histogram => write!(f, "histogram"),
4866            Self::Summary => write!(f, "summary"),
4867            Self::Exponential_histogram => write!(f, "exponential histogram"),
4868            Self::Unknown(s) => write!(f, "{s}"),
4869        }
4870    }
4871}
4872
4873/// Inline enum for `ClickStackTableChartSeries.sortOrder`.
4874#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4875pub enum ClickStackTableChartSeriesSortorder {
4876    #[serde(rename = "desc")]
4877    #[default]
4878    Desc,
4879    #[serde(rename = "asc")]
4880    Asc,
4881    /// Catch-all for unknown or newly-added values.
4882    #[serde(untagged)]
4883    Unknown(String),
4884}
4885
4886impl std::fmt::Display for ClickStackTableChartSeriesSortorder {
4887    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4888        match self {
4889            Self::Desc => write!(f, "desc"),
4890            Self::Asc => write!(f, "asc"),
4891            Self::Unknown(s) => write!(f, "{s}"),
4892        }
4893    }
4894}
4895
4896/// Inline enum for `ClickStackTableChartSeries.type`.
4897#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4898pub enum ClickStackTableChartSeriesType {
4899    #[serde(rename = "table")]
4900    #[default]
4901    Table,
4902    /// Catch-all for unknown or newly-added values.
4903    #[serde(untagged)]
4904    Unknown(String),
4905}
4906
4907impl std::fmt::Display for ClickStackTableChartSeriesType {
4908    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4909        match self {
4910            Self::Table => write!(f, "table"),
4911            Self::Unknown(s) => write!(f, "{s}"),
4912        }
4913    }
4914}
4915
4916/// Inline enum for `ClickStackTableChartSeries.whereLanguage`.
4917#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4918pub enum ClickStackTableChartSeriesWherelanguage {
4919    #[serde(rename = "sql")]
4920    #[default]
4921    Sql,
4922    #[serde(rename = "lucene")]
4923    Lucene,
4924    /// Catch-all for unknown or newly-added values.
4925    #[serde(untagged)]
4926    Unknown(String),
4927}
4928
4929impl std::fmt::Display for ClickStackTableChartSeriesWherelanguage {
4930    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4931        match self {
4932            Self::Sql => write!(f, "sql"),
4933            Self::Lucene => write!(f, "lucene"),
4934            Self::Unknown(s) => write!(f, "{s}"),
4935        }
4936    }
4937}
4938
4939/// Inline enum for `ClickStackTableRawSqlChartConfig.configType`.
4940#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4941pub enum ClickStackTableRawSqlChartConfigConfigtype {
4942    #[serde(rename = "sql")]
4943    #[default]
4944    Sql,
4945    /// Catch-all for unknown or newly-added values.
4946    #[serde(untagged)]
4947    Unknown(String),
4948}
4949
4950impl std::fmt::Display for ClickStackTableRawSqlChartConfigConfigtype {
4951    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4952        match self {
4953            Self::Sql => write!(f, "sql"),
4954            Self::Unknown(s) => write!(f, "{s}"),
4955        }
4956    }
4957}
4958
4959/// Inline enum for `ClickStackTableRawSqlChartConfig.displayType`.
4960#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4961pub enum ClickStackTableRawSqlChartConfigDisplaytype {
4962    #[serde(rename = "table")]
4963    #[default]
4964    Table,
4965    /// Catch-all for unknown or newly-added values.
4966    #[serde(untagged)]
4967    Unknown(String),
4968}
4969
4970impl std::fmt::Display for ClickStackTableRawSqlChartConfigDisplaytype {
4971    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4972        match self {
4973            Self::Table => write!(f, "table"),
4974            Self::Unknown(s) => write!(f, "{s}"),
4975        }
4976    }
4977}
4978
4979/// Inline enum for `ClickStackTimeChartSeries.aggFn`.
4980#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
4981pub enum ClickStackTimeChartSeriesAggfn {
4982    #[serde(rename = "avg")]
4983    #[default]
4984    Avg,
4985    #[serde(rename = "count")]
4986    Count,
4987    #[serde(rename = "count_distinct")]
4988    Count_distinct,
4989    #[serde(rename = "last_value")]
4990    Last_value,
4991    #[serde(rename = "max")]
4992    Max,
4993    #[serde(rename = "min")]
4994    Min,
4995    #[serde(rename = "quantile")]
4996    Quantile,
4997    #[serde(rename = "sum")]
4998    Sum,
4999    #[serde(rename = "any")]
5000    Any,
5001    #[serde(rename = "none")]
5002    None,
5003    /// Catch-all for unknown or newly-added values.
5004    #[serde(untagged)]
5005    Unknown(String),
5006}
5007
5008impl std::fmt::Display for ClickStackTimeChartSeriesAggfn {
5009    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5010        match self {
5011            Self::Avg => write!(f, "avg"),
5012            Self::Count => write!(f, "count"),
5013            Self::Count_distinct => write!(f, "count_distinct"),
5014            Self::Last_value => write!(f, "last_value"),
5015            Self::Max => write!(f, "max"),
5016            Self::Min => write!(f, "min"),
5017            Self::Quantile => write!(f, "quantile"),
5018            Self::Sum => write!(f, "sum"),
5019            Self::Any => write!(f, "any"),
5020            Self::None => write!(f, "none"),
5021            Self::Unknown(s) => write!(f, "{s}"),
5022        }
5023    }
5024}
5025
5026/// Inline enum for `ClickStackTimeChartSeries.displayType`.
5027#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5028pub enum ClickStackTimeChartSeriesDisplaytype {
5029    #[serde(rename = "stacked_bar")]
5030    #[default]
5031    Stacked_bar,
5032    #[serde(rename = "line")]
5033    Line,
5034    /// Catch-all for unknown or newly-added values.
5035    #[serde(untagged)]
5036    Unknown(String),
5037}
5038
5039impl std::fmt::Display for ClickStackTimeChartSeriesDisplaytype {
5040    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5041        match self {
5042            Self::Stacked_bar => write!(f, "stacked_bar"),
5043            Self::Line => write!(f, "line"),
5044            Self::Unknown(s) => write!(f, "{s}"),
5045        }
5046    }
5047}
5048
5049/// Inline enum for `ClickStackTimeChartSeries.metricDataType`.
5050#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5051pub enum ClickStackTimeChartSeriesMetricdatatype {
5052    #[serde(rename = "sum")]
5053    #[default]
5054    Sum,
5055    #[serde(rename = "gauge")]
5056    Gauge,
5057    #[serde(rename = "histogram")]
5058    Histogram,
5059    #[serde(rename = "summary")]
5060    Summary,
5061    #[serde(rename = "exponential histogram")]
5062    Exponential_histogram,
5063    /// Catch-all for unknown or newly-added values.
5064    #[serde(untagged)]
5065    Unknown(String),
5066}
5067
5068impl std::fmt::Display for ClickStackTimeChartSeriesMetricdatatype {
5069    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5070        match self {
5071            Self::Sum => write!(f, "sum"),
5072            Self::Gauge => write!(f, "gauge"),
5073            Self::Histogram => write!(f, "histogram"),
5074            Self::Summary => write!(f, "summary"),
5075            Self::Exponential_histogram => write!(f, "exponential histogram"),
5076            Self::Unknown(s) => write!(f, "{s}"),
5077        }
5078    }
5079}
5080
5081/// Inline enum for `ClickStackTimeChartSeries.type`.
5082#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5083pub enum ClickStackTimeChartSeriesType {
5084    #[serde(rename = "time")]
5085    #[default]
5086    Time,
5087    /// Catch-all for unknown or newly-added values.
5088    #[serde(untagged)]
5089    Unknown(String),
5090}
5091
5092impl std::fmt::Display for ClickStackTimeChartSeriesType {
5093    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5094        match self {
5095            Self::Time => write!(f, "time"),
5096            Self::Unknown(s) => write!(f, "{s}"),
5097        }
5098    }
5099}
5100
5101/// Inline enum for `ClickStackTimeChartSeries.whereLanguage`.
5102#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5103pub enum ClickStackTimeChartSeriesWherelanguage {
5104    #[serde(rename = "sql")]
5105    #[default]
5106    Sql,
5107    #[serde(rename = "lucene")]
5108    Lucene,
5109    /// Catch-all for unknown or newly-added values.
5110    #[serde(untagged)]
5111    Unknown(String),
5112}
5113
5114impl std::fmt::Display for ClickStackTimeChartSeriesWherelanguage {
5115    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5116        match self {
5117            Self::Sql => write!(f, "sql"),
5118            Self::Lucene => write!(f, "lucene"),
5119            Self::Unknown(s) => write!(f, "{s}"),
5120        }
5121    }
5122}
5123
5124/// Inline enum for `ClickStackTraceSource.kind`.
5125#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5126pub enum ClickStackTraceSourceKind {
5127    #[serde(rename = "trace")]
5128    #[default]
5129    Trace,
5130    /// Catch-all for unknown or newly-added values.
5131    #[serde(untagged)]
5132    Unknown(String),
5133}
5134
5135impl std::fmt::Display for ClickStackTraceSourceKind {
5136    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5137        match self {
5138            Self::Trace => write!(f, "trace"),
5139            Self::Unknown(s) => write!(f, "{s}"),
5140        }
5141    }
5142}
5143
5144/// Inline enum for `ClickStackUpdateAlertRequest.interval`.
5145#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5146pub enum ClickStackUpdateAlertRequestInterval {
5147    #[serde(rename = "1m")]
5148    #[default]
5149    _1m,
5150    #[serde(rename = "5m")]
5151    _5m,
5152    #[serde(rename = "15m")]
5153    _15m,
5154    #[serde(rename = "30m")]
5155    _30m,
5156    #[serde(rename = "1h")]
5157    _1h,
5158    #[serde(rename = "6h")]
5159    _6h,
5160    #[serde(rename = "12h")]
5161    _12h,
5162    #[serde(rename = "1d")]
5163    _1d,
5164    /// Catch-all for unknown or newly-added values.
5165    #[serde(untagged)]
5166    Unknown(String),
5167}
5168
5169impl std::fmt::Display for ClickStackUpdateAlertRequestInterval {
5170    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5171        match self {
5172            Self::_1m => write!(f, "1m"),
5173            Self::_5m => write!(f, "5m"),
5174            Self::_15m => write!(f, "15m"),
5175            Self::_30m => write!(f, "30m"),
5176            Self::_1h => write!(f, "1h"),
5177            Self::_6h => write!(f, "6h"),
5178            Self::_12h => write!(f, "12h"),
5179            Self::_1d => write!(f, "1d"),
5180            Self::Unknown(s) => write!(f, "{s}"),
5181        }
5182    }
5183}
5184
5185/// Inline enum for `ClickStackUpdateAlertRequest.source`.
5186#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5187pub enum ClickStackUpdateAlertRequestSource {
5188    #[serde(rename = "saved_search")]
5189    #[default]
5190    Saved_search,
5191    #[serde(rename = "tile")]
5192    Tile,
5193    /// Catch-all for unknown or newly-added values.
5194    #[serde(untagged)]
5195    Unknown(String),
5196}
5197
5198impl std::fmt::Display for ClickStackUpdateAlertRequestSource {
5199    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5200        match self {
5201            Self::Saved_search => write!(f, "saved_search"),
5202            Self::Tile => write!(f, "tile"),
5203            Self::Unknown(s) => write!(f, "{s}"),
5204        }
5205    }
5206}
5207
5208/// Inline enum for `ClickStackUpdateAlertRequest.thresholdType`.
5209#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5210pub enum ClickStackUpdateAlertRequestThresholdtype {
5211    #[serde(rename = "above")]
5212    #[default]
5213    Above,
5214    #[serde(rename = "below")]
5215    Below,
5216    /// Catch-all for unknown or newly-added values.
5217    #[serde(untagged)]
5218    Unknown(String),
5219}
5220
5221impl std::fmt::Display for ClickStackUpdateAlertRequestThresholdtype {
5222    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5223        match self {
5224            Self::Above => write!(f, "above"),
5225            Self::Below => write!(f, "below"),
5226            Self::Unknown(s) => write!(f, "{s}"),
5227        }
5228    }
5229}
5230
5231/// Inline enum for `ClickStackUpdateDashboardRequest.savedQueryLanguage`.
5232#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5233pub enum ClickStackUpdateDashboardRequestSavedquerylanguage {
5234    #[serde(rename = "sql")]
5235    #[default]
5236    Sql,
5237    #[serde(rename = "lucene")]
5238    Lucene,
5239    /// Catch-all for unknown or newly-added values.
5240    #[serde(untagged)]
5241    Unknown(String),
5242}
5243
5244impl std::fmt::Display for ClickStackUpdateDashboardRequestSavedquerylanguage {
5245    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5246        match self {
5247            Self::Sql => write!(f, "sql"),
5248            Self::Lucene => write!(f, "lucene"),
5249            Self::Unknown(s) => write!(f, "{s}"),
5250        }
5251    }
5252}
5253
5254/// Inline enum for `CreateReversePrivateEndpoint.mskAuthentication`.
5255#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5256pub enum CreateReversePrivateEndpointMskauthentication {
5257    #[default]
5258    SASL_IAM,
5259    SASL_SCRAM,
5260    /// Catch-all for unknown or newly-added values.
5261    #[serde(untagged)]
5262    Unknown(String),
5263}
5264
5265impl std::fmt::Display for CreateReversePrivateEndpointMskauthentication {
5266    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5267        match self {
5268            Self::SASL_IAM => write!(f, "SASL_IAM"),
5269            Self::SASL_SCRAM => write!(f, "SASL_SCRAM"),
5270            Self::Unknown(s) => write!(f, "{s}"),
5271        }
5272    }
5273}
5274
5275/// Inline enum for `CreateReversePrivateEndpoint.type`.
5276#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5277pub enum CreateReversePrivateEndpointType {
5278    #[default]
5279    VPC_ENDPOINT_SERVICE,
5280    VPC_RESOURCE,
5281    MSK_MULTI_VPC,
5282    /// Catch-all for unknown or newly-added values.
5283    #[serde(untagged)]
5284    Unknown(String),
5285}
5286
5287impl std::fmt::Display for CreateReversePrivateEndpointType {
5288    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5289        match self {
5290            Self::VPC_ENDPOINT_SERVICE => write!(f, "VPC_ENDPOINT_SERVICE"),
5291            Self::VPC_RESOURCE => write!(f, "VPC_RESOURCE"),
5292            Self::MSK_MULTI_VPC => write!(f, "MSK_MULTI_VPC"),
5293            Self::Unknown(s) => write!(f, "{s}"),
5294        }
5295    }
5296}
5297
5298/// Inline enum for `CurrentScaling.effectiveAutoscalingMode`.
5299#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5300pub enum CurrentScalingEffectiveautoscalingmode {
5301    #[serde(rename = "vertical")]
5302    #[default]
5303    Vertical,
5304    #[serde(rename = "horizontal")]
5305    Horizontal,
5306    /// Catch-all for unknown or newly-added values.
5307    #[serde(untagged)]
5308    Unknown(String),
5309}
5310
5311impl std::fmt::Display for CurrentScalingEffectiveautoscalingmode {
5312    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5313        match self {
5314            Self::Vertical => write!(f, "vertical"),
5315            Self::Horizontal => write!(f, "horizontal"),
5316            Self::Unknown(s) => write!(f, "{s}"),
5317        }
5318    }
5319}
5320
5321/// Inline enum for `GcpBackupBucket.bucketProvider`.
5322#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5323pub enum GcpBackupBucketBucketprovider {
5324    #[default]
5325    GCP,
5326    /// Catch-all for unknown or newly-added values.
5327    #[serde(untagged)]
5328    Unknown(String),
5329}
5330
5331impl std::fmt::Display for GcpBackupBucketBucketprovider {
5332    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5333        match self {
5334            Self::GCP => write!(f, "GCP"),
5335            Self::Unknown(s) => write!(f, "{s}"),
5336        }
5337    }
5338}
5339
5340/// Inline enum for `GcpBackupBucketPatchRequestV1.bucketProvider`.
5341#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5342pub enum GcpBackupBucketPatchRequestV1Bucketprovider {
5343    #[default]
5344    GCP,
5345    /// Catch-all for unknown or newly-added values.
5346    #[serde(untagged)]
5347    Unknown(String),
5348}
5349
5350impl std::fmt::Display for GcpBackupBucketPatchRequestV1Bucketprovider {
5351    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5352        match self {
5353            Self::GCP => write!(f, "GCP"),
5354            Self::Unknown(s) => write!(f, "{s}"),
5355        }
5356    }
5357}
5358
5359/// Inline enum for `GcpBackupBucketPostRequestV1.bucketProvider`.
5360#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5361pub enum GcpBackupBucketPostRequestV1Bucketprovider {
5362    #[default]
5363    GCP,
5364    /// Catch-all for unknown or newly-added values.
5365    #[serde(untagged)]
5366    Unknown(String),
5367}
5368
5369impl std::fmt::Display for GcpBackupBucketPostRequestV1Bucketprovider {
5370    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5371        match self {
5372            Self::GCP => write!(f, "GCP"),
5373            Self::Unknown(s) => write!(f, "{s}"),
5374        }
5375    }
5376}
5377
5378/// Inline enum for `GcpBackupBucketProperties.bucketProvider`.
5379#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5380pub enum GcpBackupBucketPropertiesBucketprovider {
5381    #[default]
5382    GCP,
5383    /// Catch-all for unknown or newly-added values.
5384    #[serde(untagged)]
5385    Unknown(String),
5386}
5387
5388impl std::fmt::Display for GcpBackupBucketPropertiesBucketprovider {
5389    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5390        match self {
5391            Self::GCP => write!(f, "GCP"),
5392            Self::Unknown(s) => write!(f, "{s}"),
5393        }
5394    }
5395}
5396
5397/// Inline enum for `InstancePrivateEndpoint.cloudProvider`.
5398#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5399pub enum InstancePrivateEndpointCloudprovider {
5400    #[serde(rename = "gcp")]
5401    #[default]
5402    Gcp,
5403    #[serde(rename = "aws")]
5404    Aws,
5405    #[serde(rename = "azure")]
5406    Azure,
5407    /// Catch-all for unknown or newly-added values.
5408    #[serde(untagged)]
5409    Unknown(String),
5410}
5411
5412impl std::fmt::Display for InstancePrivateEndpointCloudprovider {
5413    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5414        match self {
5415            Self::Gcp => write!(f, "gcp"),
5416            Self::Aws => write!(f, "aws"),
5417            Self::Azure => write!(f, "azure"),
5418            Self::Unknown(s) => write!(f, "{s}"),
5419        }
5420    }
5421}
5422
5423/// Inline enum for `InstancePrivateEndpoint.region`.
5424#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5425pub enum InstancePrivateEndpointRegion {
5426    #[serde(rename = "ap-northeast-1")]
5427    #[default]
5428    Ap_northeast_1,
5429    #[serde(rename = "ap-northeast-2")]
5430    Ap_northeast_2,
5431    #[serde(rename = "ap-south-1")]
5432    Ap_south_1,
5433    #[serde(rename = "ap-southeast-1")]
5434    Ap_southeast_1,
5435    #[serde(rename = "ap-southeast-2")]
5436    Ap_southeast_2,
5437    #[serde(rename = "eu-central-1")]
5438    Eu_central_1,
5439    #[serde(rename = "eu-west-1")]
5440    Eu_west_1,
5441    #[serde(rename = "eu-west-2")]
5442    Eu_west_2,
5443    #[serde(rename = "il-central-1")]
5444    Il_central_1,
5445    #[serde(rename = "us-east-1")]
5446    Us_east_1,
5447    #[serde(rename = "us-east-2")]
5448    Us_east_2,
5449    #[serde(rename = "us-west-2")]
5450    Us_west_2,
5451    #[serde(rename = "us-east1")]
5452    Us_east1,
5453    #[serde(rename = "us-central1")]
5454    Us_central1,
5455    #[serde(rename = "europe-west4")]
5456    Europe_west4,
5457    #[serde(rename = "asia-southeast1")]
5458    Asia_southeast1,
5459    #[serde(rename = "asia-northeast1")]
5460    Asia_northeast1,
5461    #[serde(rename = "eastus")]
5462    Eastus,
5463    #[serde(rename = "eastus2")]
5464    Eastus2,
5465    #[serde(rename = "westus3")]
5466    Westus3,
5467    #[serde(rename = "germanywestcentral")]
5468    Germanywestcentral,
5469    #[serde(rename = "centralus")]
5470    Centralus,
5471    /// Catch-all for unknown or newly-added values.
5472    #[serde(untagged)]
5473    Unknown(String),
5474}
5475
5476impl std::fmt::Display for InstancePrivateEndpointRegion {
5477    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5478        match self {
5479            Self::Ap_northeast_1 => write!(f, "ap-northeast-1"),
5480            Self::Ap_northeast_2 => write!(f, "ap-northeast-2"),
5481            Self::Ap_south_1 => write!(f, "ap-south-1"),
5482            Self::Ap_southeast_1 => write!(f, "ap-southeast-1"),
5483            Self::Ap_southeast_2 => write!(f, "ap-southeast-2"),
5484            Self::Eu_central_1 => write!(f, "eu-central-1"),
5485            Self::Eu_west_1 => write!(f, "eu-west-1"),
5486            Self::Eu_west_2 => write!(f, "eu-west-2"),
5487            Self::Il_central_1 => write!(f, "il-central-1"),
5488            Self::Us_east_1 => write!(f, "us-east-1"),
5489            Self::Us_east_2 => write!(f, "us-east-2"),
5490            Self::Us_west_2 => write!(f, "us-west-2"),
5491            Self::Us_east1 => write!(f, "us-east1"),
5492            Self::Us_central1 => write!(f, "us-central1"),
5493            Self::Europe_west4 => write!(f, "europe-west4"),
5494            Self::Asia_southeast1 => write!(f, "asia-southeast1"),
5495            Self::Asia_northeast1 => write!(f, "asia-northeast1"),
5496            Self::Eastus => write!(f, "eastus"),
5497            Self::Eastus2 => write!(f, "eastus2"),
5498            Self::Westus3 => write!(f, "westus3"),
5499            Self::Germanywestcentral => write!(f, "germanywestcentral"),
5500            Self::Centralus => write!(f, "centralus"),
5501            Self::Unknown(s) => write!(f, "{s}"),
5502        }
5503    }
5504}
5505
5506/// Inline enum for `Invitation.role`.
5507#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5508pub enum InvitationRole {
5509    #[serde(rename = "admin")]
5510    #[default]
5511    Admin,
5512    #[serde(rename = "developer")]
5513    Developer,
5514    /// Catch-all for unknown or newly-added values.
5515    #[serde(untagged)]
5516    Unknown(String),
5517}
5518
5519impl std::fmt::Display for InvitationRole {
5520    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5521        match self {
5522            Self::Admin => write!(f, "admin"),
5523            Self::Developer => write!(f, "developer"),
5524            Self::Unknown(s) => write!(f, "{s}"),
5525        }
5526    }
5527}
5528
5529/// Inline enum for `InvitationPostRequest.role`.
5530#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5531pub enum InvitationPostRequestRole {
5532    #[serde(rename = "admin")]
5533    #[default]
5534    Admin,
5535    #[serde(rename = "developer")]
5536    Developer,
5537    /// Catch-all for unknown or newly-added values.
5538    #[serde(untagged)]
5539    Unknown(String),
5540}
5541
5542impl std::fmt::Display for InvitationPostRequestRole {
5543    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5544        match self {
5545            Self::Admin => write!(f, "admin"),
5546            Self::Developer => write!(f, "developer"),
5547            Self::Unknown(s) => write!(f, "{s}"),
5548        }
5549    }
5550}
5551
5552/// Inline enum for `Member.role`.
5553#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5554pub enum MemberRole {
5555    #[serde(rename = "admin")]
5556    #[default]
5557    Admin,
5558    #[serde(rename = "developer")]
5559    Developer,
5560    /// Catch-all for unknown or newly-added values.
5561    #[serde(untagged)]
5562    Unknown(String),
5563}
5564
5565impl std::fmt::Display for MemberRole {
5566    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5567        match self {
5568            Self::Admin => write!(f, "admin"),
5569            Self::Developer => write!(f, "developer"),
5570            Self::Unknown(s) => write!(f, "{s}"),
5571        }
5572    }
5573}
5574
5575/// Inline enum for `MemberPatchRequest.role`.
5576#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5577pub enum MemberPatchRequestRole {
5578    #[serde(rename = "admin")]
5579    #[default]
5580    Admin,
5581    #[serde(rename = "developer")]
5582    Developer,
5583    /// Catch-all for unknown or newly-added values.
5584    #[serde(untagged)]
5585    Unknown(String),
5586}
5587
5588impl std::fmt::Display for MemberPatchRequestRole {
5589    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5590        match self {
5591            Self::Admin => write!(f, "admin"),
5592            Self::Developer => write!(f, "developer"),
5593            Self::Unknown(s) => write!(f, "{s}"),
5594        }
5595    }
5596}
5597
5598/// Inline enum for `OrganizationPatchPrivateEndpoint.cloudProvider`.
5599#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5600pub enum OrganizationPatchPrivateEndpointCloudprovider {
5601    #[serde(rename = "gcp")]
5602    #[default]
5603    Gcp,
5604    #[serde(rename = "aws")]
5605    Aws,
5606    #[serde(rename = "azure")]
5607    Azure,
5608    /// Catch-all for unknown or newly-added values.
5609    #[serde(untagged)]
5610    Unknown(String),
5611}
5612
5613impl std::fmt::Display for OrganizationPatchPrivateEndpointCloudprovider {
5614    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5615        match self {
5616            Self::Gcp => write!(f, "gcp"),
5617            Self::Aws => write!(f, "aws"),
5618            Self::Azure => write!(f, "azure"),
5619            Self::Unknown(s) => write!(f, "{s}"),
5620        }
5621    }
5622}
5623
5624/// Inline enum for `OrganizationPatchPrivateEndpoint.region`.
5625#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5626pub enum OrganizationPatchPrivateEndpointRegion {
5627    #[serde(rename = "ap-northeast-1")]
5628    #[default]
5629    Ap_northeast_1,
5630    #[serde(rename = "ap-northeast-2")]
5631    Ap_northeast_2,
5632    #[serde(rename = "ap-south-1")]
5633    Ap_south_1,
5634    #[serde(rename = "ap-southeast-1")]
5635    Ap_southeast_1,
5636    #[serde(rename = "ap-southeast-2")]
5637    Ap_southeast_2,
5638    #[serde(rename = "eu-central-1")]
5639    Eu_central_1,
5640    #[serde(rename = "eu-west-1")]
5641    Eu_west_1,
5642    #[serde(rename = "eu-west-2")]
5643    Eu_west_2,
5644    #[serde(rename = "il-central-1")]
5645    Il_central_1,
5646    #[serde(rename = "us-east-1")]
5647    Us_east_1,
5648    #[serde(rename = "us-east-2")]
5649    Us_east_2,
5650    #[serde(rename = "us-west-2")]
5651    Us_west_2,
5652    #[serde(rename = "us-east1")]
5653    Us_east1,
5654    #[serde(rename = "us-central1")]
5655    Us_central1,
5656    #[serde(rename = "europe-west4")]
5657    Europe_west4,
5658    #[serde(rename = "asia-southeast1")]
5659    Asia_southeast1,
5660    #[serde(rename = "asia-northeast1")]
5661    Asia_northeast1,
5662    #[serde(rename = "eastus")]
5663    Eastus,
5664    #[serde(rename = "eastus2")]
5665    Eastus2,
5666    #[serde(rename = "westus3")]
5667    Westus3,
5668    #[serde(rename = "germanywestcentral")]
5669    Germanywestcentral,
5670    #[serde(rename = "centralus")]
5671    Centralus,
5672    /// Catch-all for unknown or newly-added values.
5673    #[serde(untagged)]
5674    Unknown(String),
5675}
5676
5677impl std::fmt::Display for OrganizationPatchPrivateEndpointRegion {
5678    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5679        match self {
5680            Self::Ap_northeast_1 => write!(f, "ap-northeast-1"),
5681            Self::Ap_northeast_2 => write!(f, "ap-northeast-2"),
5682            Self::Ap_south_1 => write!(f, "ap-south-1"),
5683            Self::Ap_southeast_1 => write!(f, "ap-southeast-1"),
5684            Self::Ap_southeast_2 => write!(f, "ap-southeast-2"),
5685            Self::Eu_central_1 => write!(f, "eu-central-1"),
5686            Self::Eu_west_1 => write!(f, "eu-west-1"),
5687            Self::Eu_west_2 => write!(f, "eu-west-2"),
5688            Self::Il_central_1 => write!(f, "il-central-1"),
5689            Self::Us_east_1 => write!(f, "us-east-1"),
5690            Self::Us_east_2 => write!(f, "us-east-2"),
5691            Self::Us_west_2 => write!(f, "us-west-2"),
5692            Self::Us_east1 => write!(f, "us-east1"),
5693            Self::Us_central1 => write!(f, "us-central1"),
5694            Self::Europe_west4 => write!(f, "europe-west4"),
5695            Self::Asia_southeast1 => write!(f, "asia-southeast1"),
5696            Self::Asia_northeast1 => write!(f, "asia-northeast1"),
5697            Self::Eastus => write!(f, "eastus"),
5698            Self::Eastus2 => write!(f, "eastus2"),
5699            Self::Westus3 => write!(f, "westus3"),
5700            Self::Germanywestcentral => write!(f, "germanywestcentral"),
5701            Self::Centralus => write!(f, "centralus"),
5702            Self::Unknown(s) => write!(f, "{s}"),
5703        }
5704    }
5705}
5706
5707/// Inline enum for `OrganizationPrivateEndpoint.cloudProvider`.
5708#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5709pub enum OrganizationPrivateEndpointCloudprovider {
5710    #[serde(rename = "gcp")]
5711    #[default]
5712    Gcp,
5713    #[serde(rename = "aws")]
5714    Aws,
5715    #[serde(rename = "azure")]
5716    Azure,
5717    /// Catch-all for unknown or newly-added values.
5718    #[serde(untagged)]
5719    Unknown(String),
5720}
5721
5722impl std::fmt::Display for OrganizationPrivateEndpointCloudprovider {
5723    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5724        match self {
5725            Self::Gcp => write!(f, "gcp"),
5726            Self::Aws => write!(f, "aws"),
5727            Self::Azure => write!(f, "azure"),
5728            Self::Unknown(s) => write!(f, "{s}"),
5729        }
5730    }
5731}
5732
5733/// Inline enum for `OrganizationPrivateEndpoint.region`.
5734#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5735pub enum OrganizationPrivateEndpointRegion {
5736    #[serde(rename = "ap-northeast-1")]
5737    #[default]
5738    Ap_northeast_1,
5739    #[serde(rename = "ap-northeast-2")]
5740    Ap_northeast_2,
5741    #[serde(rename = "ap-south-1")]
5742    Ap_south_1,
5743    #[serde(rename = "ap-southeast-1")]
5744    Ap_southeast_1,
5745    #[serde(rename = "ap-southeast-2")]
5746    Ap_southeast_2,
5747    #[serde(rename = "eu-central-1")]
5748    Eu_central_1,
5749    #[serde(rename = "eu-west-1")]
5750    Eu_west_1,
5751    #[serde(rename = "eu-west-2")]
5752    Eu_west_2,
5753    #[serde(rename = "il-central-1")]
5754    Il_central_1,
5755    #[serde(rename = "us-east-1")]
5756    Us_east_1,
5757    #[serde(rename = "us-east-2")]
5758    Us_east_2,
5759    #[serde(rename = "us-west-2")]
5760    Us_west_2,
5761    #[serde(rename = "us-east1")]
5762    Us_east1,
5763    #[serde(rename = "us-central1")]
5764    Us_central1,
5765    #[serde(rename = "europe-west4")]
5766    Europe_west4,
5767    #[serde(rename = "asia-southeast1")]
5768    Asia_southeast1,
5769    #[serde(rename = "asia-northeast1")]
5770    Asia_northeast1,
5771    #[serde(rename = "eastus")]
5772    Eastus,
5773    #[serde(rename = "eastus2")]
5774    Eastus2,
5775    #[serde(rename = "westus3")]
5776    Westus3,
5777    #[serde(rename = "germanywestcentral")]
5778    Germanywestcentral,
5779    #[serde(rename = "centralus")]
5780    Centralus,
5781    /// Catch-all for unknown or newly-added values.
5782    #[serde(untagged)]
5783    Unknown(String),
5784}
5785
5786impl std::fmt::Display for OrganizationPrivateEndpointRegion {
5787    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5788        match self {
5789            Self::Ap_northeast_1 => write!(f, "ap-northeast-1"),
5790            Self::Ap_northeast_2 => write!(f, "ap-northeast-2"),
5791            Self::Ap_south_1 => write!(f, "ap-south-1"),
5792            Self::Ap_southeast_1 => write!(f, "ap-southeast-1"),
5793            Self::Ap_southeast_2 => write!(f, "ap-southeast-2"),
5794            Self::Eu_central_1 => write!(f, "eu-central-1"),
5795            Self::Eu_west_1 => write!(f, "eu-west-1"),
5796            Self::Eu_west_2 => write!(f, "eu-west-2"),
5797            Self::Il_central_1 => write!(f, "il-central-1"),
5798            Self::Us_east_1 => write!(f, "us-east-1"),
5799            Self::Us_east_2 => write!(f, "us-east-2"),
5800            Self::Us_west_2 => write!(f, "us-west-2"),
5801            Self::Us_east1 => write!(f, "us-east1"),
5802            Self::Us_central1 => write!(f, "us-central1"),
5803            Self::Europe_west4 => write!(f, "europe-west4"),
5804            Self::Asia_southeast1 => write!(f, "asia-southeast1"),
5805            Self::Asia_northeast1 => write!(f, "asia-northeast1"),
5806            Self::Eastus => write!(f, "eastus"),
5807            Self::Eastus2 => write!(f, "eastus2"),
5808            Self::Westus3 => write!(f, "westus3"),
5809            Self::Germanywestcentral => write!(f, "germanywestcentral"),
5810            Self::Centralus => write!(f, "centralus"),
5811            Self::Unknown(s) => write!(f, "{s}"),
5812        }
5813    }
5814}
5815
5816/// Inline enum for `PostgresServiceSetState.command`.
5817#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5818pub enum PostgresServiceSetStateCommand {
5819    #[serde(rename = "restart")]
5820    #[default]
5821    Restart,
5822    #[serde(rename = "promote")]
5823    Promote,
5824    #[serde(rename = "switchover")]
5825    Switchover,
5826    /// Catch-all for unknown or newly-added values.
5827    #[serde(untagged)]
5828    Unknown(String),
5829}
5830
5831impl std::fmt::Display for PostgresServiceSetStateCommand {
5832    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5833        match self {
5834            Self::Restart => write!(f, "restart"),
5835            Self::Promote => write!(f, "promote"),
5836            Self::Switchover => write!(f, "switchover"),
5837            Self::Unknown(s) => write!(f, "{s}"),
5838        }
5839    }
5840}
5841
5842/// Inline enum for `RBACPolicy.allowDeny`.
5843#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5844pub enum RBACPolicyAllowdeny {
5845    #[default]
5846    ALLOW,
5847    DENY,
5848    /// Catch-all for unknown or newly-added values.
5849    #[serde(untagged)]
5850    Unknown(String),
5851}
5852
5853impl std::fmt::Display for RBACPolicyAllowdeny {
5854    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5855        match self {
5856            Self::ALLOW => write!(f, "ALLOW"),
5857            Self::DENY => write!(f, "DENY"),
5858            Self::Unknown(s) => write!(f, "{s}"),
5859        }
5860    }
5861}
5862
5863/// Inline enum for `RBACPolicyCreateRequest.allowDeny`.
5864#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5865pub enum RBACPolicyCreateRequestAllowdeny {
5866    #[default]
5867    ALLOW,
5868    DENY,
5869    /// Catch-all for unknown or newly-added values.
5870    #[serde(untagged)]
5871    Unknown(String),
5872}
5873
5874impl std::fmt::Display for RBACPolicyCreateRequestAllowdeny {
5875    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5876        match self {
5877            Self::ALLOW => write!(f, "ALLOW"),
5878            Self::DENY => write!(f, "DENY"),
5879            Self::Unknown(s) => write!(f, "{s}"),
5880        }
5881    }
5882}
5883
5884/// Inline enum for `RBACPolicyTags.roleV2`.
5885#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5886pub enum RBACPolicyTagsRolev2 {
5887    #[serde(rename = "sql-console-readonly")]
5888    #[default]
5889    Sql_console_readonly,
5890    #[serde(rename = "sql-console-admin")]
5891    Sql_console_admin,
5892    /// Catch-all for unknown or newly-added values.
5893    #[serde(untagged)]
5894    Unknown(String),
5895}
5896
5897impl std::fmt::Display for RBACPolicyTagsRolev2 {
5898    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5899        match self {
5900            Self::Sql_console_readonly => write!(f, "sql-console-readonly"),
5901            Self::Sql_console_admin => write!(f, "sql-console-admin"),
5902            Self::Unknown(s) => write!(f, "{s}"),
5903        }
5904    }
5905}
5906
5907/// Inline enum for `RBACRole.type`.
5908#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5909pub enum RBACRoleType {
5910    #[serde(rename = "system")]
5911    #[default]
5912    System,
5913    #[serde(rename = "custom")]
5914    Custom,
5915    /// Catch-all for unknown or newly-added values.
5916    #[serde(untagged)]
5917    Unknown(String),
5918}
5919
5920impl std::fmt::Display for RBACRoleType {
5921    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5922        match self {
5923            Self::System => write!(f, "system"),
5924            Self::Custom => write!(f, "custom"),
5925            Self::Unknown(s) => write!(f, "{s}"),
5926        }
5927    }
5928}
5929
5930/// Inline enum for `ReversePrivateEndpoint.mskAuthentication`.
5931#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5932pub enum ReversePrivateEndpointMskauthentication {
5933    #[default]
5934    SASL_IAM,
5935    SASL_SCRAM,
5936    /// Catch-all for unknown or newly-added values.
5937    #[serde(untagged)]
5938    Unknown(String),
5939}
5940
5941impl std::fmt::Display for ReversePrivateEndpointMskauthentication {
5942    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5943        match self {
5944            Self::SASL_IAM => write!(f, "SASL_IAM"),
5945            Self::SASL_SCRAM => write!(f, "SASL_SCRAM"),
5946            Self::Unknown(s) => write!(f, "{s}"),
5947        }
5948    }
5949}
5950
5951/// Inline enum for `ReversePrivateEndpoint.status`.
5952#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5953pub enum ReversePrivateEndpointStatus {
5954    #[default]
5955    Unknown,
5956    Provisioning,
5957    Deleting,
5958    Ready,
5959    Failed,
5960    PendingAcceptance,
5961    Rejected,
5962    Expired,
5963    /// Catch-all for unknown or newly-added values.
5964    #[serde(untagged)]
5965    Other(String),
5966}
5967
5968impl std::fmt::Display for ReversePrivateEndpointStatus {
5969    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5970        match self {
5971            Self::Unknown => write!(f, "Unknown"),
5972            Self::Provisioning => write!(f, "Provisioning"),
5973            Self::Deleting => write!(f, "Deleting"),
5974            Self::Ready => write!(f, "Ready"),
5975            Self::Failed => write!(f, "Failed"),
5976            Self::PendingAcceptance => write!(f, "PendingAcceptance"),
5977            Self::Rejected => write!(f, "Rejected"),
5978            Self::Expired => write!(f, "Expired"),
5979            Self::Other(s) => write!(f, "{s}"),
5980        }
5981    }
5982}
5983
5984/// Inline enum for `ReversePrivateEndpoint.type`.
5985#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
5986pub enum ReversePrivateEndpointType {
5987    #[default]
5988    VPC_ENDPOINT_SERVICE,
5989    VPC_RESOURCE,
5990    MSK_MULTI_VPC,
5991    /// Catch-all for unknown or newly-added values.
5992    #[serde(untagged)]
5993    Unknown(String),
5994}
5995
5996impl std::fmt::Display for ReversePrivateEndpointType {
5997    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5998        match self {
5999            Self::VPC_ENDPOINT_SERVICE => write!(f, "VPC_ENDPOINT_SERVICE"),
6000            Self::VPC_RESOURCE => write!(f, "VPC_RESOURCE"),
6001            Self::MSK_MULTI_VPC => write!(f, "MSK_MULTI_VPC"),
6002            Self::Unknown(s) => write!(f, "{s}"),
6003        }
6004    }
6005}
6006
6007/// Inline enum for `ScimPatchOperation.op`.
6008#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
6009pub enum ScimPatchOperationOp {
6010    #[serde(rename = "add")]
6011    #[default]
6012    Add,
6013    #[serde(rename = "replace")]
6014    Replace,
6015    #[serde(rename = "remove")]
6016    Remove,
6017    /// Catch-all for unknown or newly-added values.
6018    #[serde(untagged)]
6019    Unknown(String),
6020}
6021
6022impl std::fmt::Display for ScimPatchOperationOp {
6023    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6024        match self {
6025            Self::Add => write!(f, "add"),
6026            Self::Replace => write!(f, "replace"),
6027            Self::Remove => write!(f, "remove"),
6028            Self::Unknown(s) => write!(f, "{s}"),
6029        }
6030    }
6031}
6032
6033/// Inline enum for `Service.complianceType`.
6034#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
6035pub enum ServiceCompliancetype {
6036    #[serde(rename = "hipaa")]
6037    #[default]
6038    Hipaa,
6039    #[serde(rename = "pci")]
6040    Pci,
6041    /// Catch-all for unknown or newly-added values.
6042    #[serde(untagged)]
6043    Unknown(String),
6044}
6045
6046impl std::fmt::Display for ServiceCompliancetype {
6047    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6048        match self {
6049            Self::Hipaa => write!(f, "hipaa"),
6050            Self::Pci => write!(f, "pci"),
6051            Self::Unknown(s) => write!(f, "{s}"),
6052        }
6053    }
6054}
6055
6056/// Inline enum for `Service.profile`.
6057#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
6058pub enum ServiceProfile {
6059    #[serde(rename = "v1-default")]
6060    #[default]
6061    V1_default,
6062    #[serde(rename = "v1-highmem-xs")]
6063    V1_highmem_xs,
6064    #[serde(rename = "v1-highmem-s")]
6065    V1_highmem_s,
6066    #[serde(rename = "v1-highmem-m")]
6067    V1_highmem_m,
6068    #[serde(rename = "v1-highmem-l")]
6069    V1_highmem_l,
6070    #[serde(rename = "v1-highmem-xl")]
6071    V1_highmem_xl,
6072    /// Catch-all for unknown or newly-added values.
6073    #[serde(untagged)]
6074    Unknown(String),
6075}
6076
6077impl std::fmt::Display for ServiceProfile {
6078    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6079        match self {
6080            Self::V1_default => write!(f, "v1-default"),
6081            Self::V1_highmem_xs => write!(f, "v1-highmem-xs"),
6082            Self::V1_highmem_s => write!(f, "v1-highmem-s"),
6083            Self::V1_highmem_m => write!(f, "v1-highmem-m"),
6084            Self::V1_highmem_l => write!(f, "v1-highmem-l"),
6085            Self::V1_highmem_xl => write!(f, "v1-highmem-xl"),
6086            Self::Unknown(s) => write!(f, "{s}"),
6087        }
6088    }
6089}
6090
6091/// Inline enum for `Service.provider`.
6092#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
6093pub enum ServiceProvider {
6094    #[serde(rename = "aws")]
6095    #[default]
6096    Aws,
6097    #[serde(rename = "gcp")]
6098    Gcp,
6099    #[serde(rename = "azure")]
6100    Azure,
6101    /// Catch-all for unknown or newly-added values.
6102    #[serde(untagged)]
6103    Unknown(String),
6104}
6105
6106impl std::fmt::Display for ServiceProvider {
6107    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6108        match self {
6109            Self::Aws => write!(f, "aws"),
6110            Self::Gcp => write!(f, "gcp"),
6111            Self::Azure => write!(f, "azure"),
6112            Self::Unknown(s) => write!(f, "{s}"),
6113        }
6114    }
6115}
6116
6117/// Inline enum for `Service.region`.
6118#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
6119pub enum ServiceRegion {
6120    #[serde(rename = "ap-northeast-1")]
6121    #[default]
6122    Ap_northeast_1,
6123    #[serde(rename = "ap-northeast-2")]
6124    Ap_northeast_2,
6125    #[serde(rename = "ap-south-1")]
6126    Ap_south_1,
6127    #[serde(rename = "ap-southeast-1")]
6128    Ap_southeast_1,
6129    #[serde(rename = "ap-southeast-2")]
6130    Ap_southeast_2,
6131    #[serde(rename = "eu-central-1")]
6132    Eu_central_1,
6133    #[serde(rename = "eu-west-1")]
6134    Eu_west_1,
6135    #[serde(rename = "eu-west-2")]
6136    Eu_west_2,
6137    #[serde(rename = "il-central-1")]
6138    Il_central_1,
6139    #[serde(rename = "us-east-1")]
6140    Us_east_1,
6141    #[serde(rename = "us-east-2")]
6142    Us_east_2,
6143    #[serde(rename = "us-west-2")]
6144    Us_west_2,
6145    #[serde(rename = "us-east1")]
6146    Us_east1,
6147    #[serde(rename = "us-central1")]
6148    Us_central1,
6149    #[serde(rename = "europe-west4")]
6150    Europe_west4,
6151    #[serde(rename = "asia-southeast1")]
6152    Asia_southeast1,
6153    #[serde(rename = "asia-northeast1")]
6154    Asia_northeast1,
6155    #[serde(rename = "eastus")]
6156    Eastus,
6157    #[serde(rename = "eastus2")]
6158    Eastus2,
6159    #[serde(rename = "westus3")]
6160    Westus3,
6161    #[serde(rename = "germanywestcentral")]
6162    Germanywestcentral,
6163    #[serde(rename = "centralus")]
6164    Centralus,
6165    /// Catch-all for unknown or newly-added values.
6166    #[serde(untagged)]
6167    Unknown(String),
6168}
6169
6170impl std::fmt::Display for ServiceRegion {
6171    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6172        match self {
6173            Self::Ap_northeast_1 => write!(f, "ap-northeast-1"),
6174            Self::Ap_northeast_2 => write!(f, "ap-northeast-2"),
6175            Self::Ap_south_1 => write!(f, "ap-south-1"),
6176            Self::Ap_southeast_1 => write!(f, "ap-southeast-1"),
6177            Self::Ap_southeast_2 => write!(f, "ap-southeast-2"),
6178            Self::Eu_central_1 => write!(f, "eu-central-1"),
6179            Self::Eu_west_1 => write!(f, "eu-west-1"),
6180            Self::Eu_west_2 => write!(f, "eu-west-2"),
6181            Self::Il_central_1 => write!(f, "il-central-1"),
6182            Self::Us_east_1 => write!(f, "us-east-1"),
6183            Self::Us_east_2 => write!(f, "us-east-2"),
6184            Self::Us_west_2 => write!(f, "us-west-2"),
6185            Self::Us_east1 => write!(f, "us-east1"),
6186            Self::Us_central1 => write!(f, "us-central1"),
6187            Self::Europe_west4 => write!(f, "europe-west4"),
6188            Self::Asia_southeast1 => write!(f, "asia-southeast1"),
6189            Self::Asia_northeast1 => write!(f, "asia-northeast1"),
6190            Self::Eastus => write!(f, "eastus"),
6191            Self::Eastus2 => write!(f, "eastus2"),
6192            Self::Westus3 => write!(f, "westus3"),
6193            Self::Germanywestcentral => write!(f, "germanywestcentral"),
6194            Self::Centralus => write!(f, "centralus"),
6195            Self::Unknown(s) => write!(f, "{s}"),
6196        }
6197    }
6198}
6199
6200/// Inline enum for `Service.releaseChannel`.
6201#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
6202pub enum ServiceReleasechannel {
6203    #[serde(rename = "slow")]
6204    #[default]
6205    Slow,
6206    #[serde(rename = "default")]
6207    Default,
6208    #[serde(rename = "fast")]
6209    Fast,
6210    /// Catch-all for unknown or newly-added values.
6211    #[serde(untagged)]
6212    Unknown(String),
6213}
6214
6215impl std::fmt::Display for ServiceReleasechannel {
6216    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6217        match self {
6218            Self::Slow => write!(f, "slow"),
6219            Self::Default => write!(f, "default"),
6220            Self::Fast => write!(f, "fast"),
6221            Self::Unknown(s) => write!(f, "{s}"),
6222        }
6223    }
6224}
6225
6226/// Inline enum for `Service.state`.
6227#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
6228pub enum ServiceState {
6229    #[serde(rename = "starting")]
6230    #[default]
6231    Starting,
6232    #[serde(rename = "stopping")]
6233    Stopping,
6234    #[serde(rename = "terminating")]
6235    Terminating,
6236    #[serde(rename = "softdeleting")]
6237    Softdeleting,
6238    #[serde(rename = "awaking")]
6239    Awaking,
6240    #[serde(rename = "partially_running")]
6241    Partially_running,
6242    #[serde(rename = "provisioning")]
6243    Provisioning,
6244    #[serde(rename = "running")]
6245    Running,
6246    #[serde(rename = "stopped")]
6247    Stopped,
6248    #[serde(rename = "terminated")]
6249    Terminated,
6250    #[serde(rename = "softdeleted")]
6251    Softdeleted,
6252    #[serde(rename = "degraded")]
6253    Degraded,
6254    #[serde(rename = "failed")]
6255    Failed,
6256    #[serde(rename = "idle")]
6257    Idle,
6258    /// Catch-all for unknown or newly-added values.
6259    #[serde(untagged)]
6260    Unknown(String),
6261}
6262
6263impl std::fmt::Display for ServiceState {
6264    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6265        match self {
6266            Self::Starting => write!(f, "starting"),
6267            Self::Stopping => write!(f, "stopping"),
6268            Self::Terminating => write!(f, "terminating"),
6269            Self::Softdeleting => write!(f, "softdeleting"),
6270            Self::Awaking => write!(f, "awaking"),
6271            Self::Partially_running => write!(f, "partially_running"),
6272            Self::Provisioning => write!(f, "provisioning"),
6273            Self::Running => write!(f, "running"),
6274            Self::Stopped => write!(f, "stopped"),
6275            Self::Terminated => write!(f, "terminated"),
6276            Self::Softdeleted => write!(f, "softdeleted"),
6277            Self::Degraded => write!(f, "degraded"),
6278            Self::Failed => write!(f, "failed"),
6279            Self::Idle => write!(f, "idle"),
6280            Self::Unknown(s) => write!(f, "{s}"),
6281        }
6282    }
6283}
6284
6285/// Inline enum for `Service.tier`.
6286#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
6287pub enum ServiceTier {
6288    #[serde(rename = "development")]
6289    #[default]
6290    Development,
6291    #[serde(rename = "production")]
6292    Production,
6293    #[serde(rename = "dedicated_high_mem")]
6294    Dedicated_high_mem,
6295    #[serde(rename = "dedicated_high_cpu")]
6296    Dedicated_high_cpu,
6297    #[serde(rename = "dedicated_standard")]
6298    Dedicated_standard,
6299    #[serde(rename = "dedicated_standard_n2d_standard_4")]
6300    Dedicated_standard_n2d_standard_4,
6301    #[serde(rename = "dedicated_standard_n2d_standard_8")]
6302    Dedicated_standard_n2d_standard_8,
6303    #[serde(rename = "dedicated_standard_n2d_standard_32")]
6304    Dedicated_standard_n2d_standard_32,
6305    #[serde(rename = "dedicated_standard_n2d_standard_128")]
6306    Dedicated_standard_n2d_standard_128,
6307    #[serde(rename = "dedicated_standard_n2d_standard_32_16SSD")]
6308    Dedicated_standard_n2d_standard_32_16SSD,
6309    #[serde(rename = "dedicated_standard_n2d_standard_64_24SSD")]
6310    Dedicated_standard_n2d_standard_64_24SSD,
6311    /// Catch-all for unknown or newly-added values.
6312    #[serde(untagged)]
6313    Unknown(String),
6314}
6315
6316impl std::fmt::Display for ServiceTier {
6317    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6318        match self {
6319            Self::Development => write!(f, "development"),
6320            Self::Production => write!(f, "production"),
6321            Self::Dedicated_high_mem => write!(f, "dedicated_high_mem"),
6322            Self::Dedicated_high_cpu => write!(f, "dedicated_high_cpu"),
6323            Self::Dedicated_standard => write!(f, "dedicated_standard"),
6324            Self::Dedicated_standard_n2d_standard_4 => write!(f, "dedicated_standard_n2d_standard_4"),
6325            Self::Dedicated_standard_n2d_standard_8 => write!(f, "dedicated_standard_n2d_standard_8"),
6326            Self::Dedicated_standard_n2d_standard_32 => write!(f, "dedicated_standard_n2d_standard_32"),
6327            Self::Dedicated_standard_n2d_standard_128 => write!(f, "dedicated_standard_n2d_standard_128"),
6328            Self::Dedicated_standard_n2d_standard_32_16SSD => write!(f, "dedicated_standard_n2d_standard_32_16SSD"),
6329            Self::Dedicated_standard_n2d_standard_64_24SSD => write!(f, "dedicated_standard_n2d_standard_64_24SSD"),
6330            Self::Unknown(s) => write!(f, "{s}"),
6331        }
6332    }
6333}
6334
6335/// Inline enum for `ServiceEndpoint.protocol`.
6336#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
6337pub enum ServiceEndpointProtocol {
6338    #[serde(rename = "https")]
6339    #[default]
6340    Https,
6341    #[serde(rename = "nativesecure")]
6342    Nativesecure,
6343    #[serde(rename = "mysql")]
6344    Mysql,
6345    /// Catch-all for unknown or newly-added values.
6346    #[serde(untagged)]
6347    Unknown(String),
6348}
6349
6350impl std::fmt::Display for ServiceEndpointProtocol {
6351    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6352        match self {
6353            Self::Https => write!(f, "https"),
6354            Self::Nativesecure => write!(f, "nativesecure"),
6355            Self::Mysql => write!(f, "mysql"),
6356            Self::Unknown(s) => write!(f, "{s}"),
6357        }
6358    }
6359}
6360
6361/// Inline enum for `ServiceEndpointChange.protocol`.
6362#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
6363pub enum ServiceEndpointChangeProtocol {
6364    #[serde(rename = "mysql")]
6365    #[default]
6366    Mysql,
6367    /// Catch-all for unknown or newly-added values.
6368    #[serde(untagged)]
6369    Unknown(String),
6370}
6371
6372impl std::fmt::Display for ServiceEndpointChangeProtocol {
6373    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6374        match self {
6375            Self::Mysql => write!(f, "mysql"),
6376            Self::Unknown(s) => write!(f, "{s}"),
6377        }
6378    }
6379}
6380
6381/// Inline enum for `ServicePatchRequest.releaseChannel`.
6382#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
6383pub enum ServicePatchRequestReleasechannel {
6384    #[serde(rename = "slow")]
6385    #[default]
6386    Slow,
6387    #[serde(rename = "default")]
6388    Default,
6389    #[serde(rename = "fast")]
6390    Fast,
6391    /// Catch-all for unknown or newly-added values.
6392    #[serde(untagged)]
6393    Unknown(String),
6394}
6395
6396impl std::fmt::Display for ServicePatchRequestReleasechannel {
6397    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6398        match self {
6399            Self::Slow => write!(f, "slow"),
6400            Self::Default => write!(f, "default"),
6401            Self::Fast => write!(f, "fast"),
6402            Self::Unknown(s) => write!(f, "{s}"),
6403        }
6404    }
6405}
6406
6407/// Inline enum for `ServicePostRequest.complianceType`.
6408#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
6409pub enum ServicePostRequestCompliancetype {
6410    #[serde(rename = "hipaa")]
6411    #[default]
6412    Hipaa,
6413    #[serde(rename = "pci")]
6414    Pci,
6415    /// Catch-all for unknown or newly-added values.
6416    #[serde(untagged)]
6417    Unknown(String),
6418}
6419
6420impl std::fmt::Display for ServicePostRequestCompliancetype {
6421    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6422        match self {
6423            Self::Hipaa => write!(f, "hipaa"),
6424            Self::Pci => write!(f, "pci"),
6425            Self::Unknown(s) => write!(f, "{s}"),
6426        }
6427    }
6428}
6429
6430/// Inline enum for `ServicePostRequest.profile`.
6431#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
6432pub enum ServicePostRequestProfile {
6433    #[serde(rename = "v1-default")]
6434    #[default]
6435    V1_default,
6436    #[serde(rename = "v1-highmem-xs")]
6437    V1_highmem_xs,
6438    #[serde(rename = "v1-highmem-s")]
6439    V1_highmem_s,
6440    #[serde(rename = "v1-highmem-m")]
6441    V1_highmem_m,
6442    #[serde(rename = "v1-highmem-l")]
6443    V1_highmem_l,
6444    #[serde(rename = "v1-highmem-xl")]
6445    V1_highmem_xl,
6446    /// Catch-all for unknown or newly-added values.
6447    #[serde(untagged)]
6448    Unknown(String),
6449}
6450
6451impl std::fmt::Display for ServicePostRequestProfile {
6452    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6453        match self {
6454            Self::V1_default => write!(f, "v1-default"),
6455            Self::V1_highmem_xs => write!(f, "v1-highmem-xs"),
6456            Self::V1_highmem_s => write!(f, "v1-highmem-s"),
6457            Self::V1_highmem_m => write!(f, "v1-highmem-m"),
6458            Self::V1_highmem_l => write!(f, "v1-highmem-l"),
6459            Self::V1_highmem_xl => write!(f, "v1-highmem-xl"),
6460            Self::Unknown(s) => write!(f, "{s}"),
6461        }
6462    }
6463}
6464
6465/// Inline enum for `ServicePostRequest.provider`.
6466#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
6467pub enum ServicePostRequestProvider {
6468    #[serde(rename = "aws")]
6469    #[default]
6470    Aws,
6471    #[serde(rename = "gcp")]
6472    Gcp,
6473    #[serde(rename = "azure")]
6474    Azure,
6475    /// Catch-all for unknown or newly-added values.
6476    #[serde(untagged)]
6477    Unknown(String),
6478}
6479
6480impl std::fmt::Display for ServicePostRequestProvider {
6481    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6482        match self {
6483            Self::Aws => write!(f, "aws"),
6484            Self::Gcp => write!(f, "gcp"),
6485            Self::Azure => write!(f, "azure"),
6486            Self::Unknown(s) => write!(f, "{s}"),
6487        }
6488    }
6489}
6490
6491/// Inline enum for `ServicePostRequest.region`.
6492#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
6493pub enum ServicePostRequestRegion {
6494    #[serde(rename = "ap-northeast-1")]
6495    #[default]
6496    Ap_northeast_1,
6497    #[serde(rename = "ap-northeast-2")]
6498    Ap_northeast_2,
6499    #[serde(rename = "ap-south-1")]
6500    Ap_south_1,
6501    #[serde(rename = "ap-southeast-1")]
6502    Ap_southeast_1,
6503    #[serde(rename = "ap-southeast-2")]
6504    Ap_southeast_2,
6505    #[serde(rename = "eu-central-1")]
6506    Eu_central_1,
6507    #[serde(rename = "eu-west-1")]
6508    Eu_west_1,
6509    #[serde(rename = "eu-west-2")]
6510    Eu_west_2,
6511    #[serde(rename = "il-central-1")]
6512    Il_central_1,
6513    #[serde(rename = "us-east-1")]
6514    Us_east_1,
6515    #[serde(rename = "us-east-2")]
6516    Us_east_2,
6517    #[serde(rename = "us-west-2")]
6518    Us_west_2,
6519    #[serde(rename = "us-east1")]
6520    Us_east1,
6521    #[serde(rename = "us-central1")]
6522    Us_central1,
6523    #[serde(rename = "europe-west4")]
6524    Europe_west4,
6525    #[serde(rename = "asia-southeast1")]
6526    Asia_southeast1,
6527    #[serde(rename = "asia-northeast1")]
6528    Asia_northeast1,
6529    #[serde(rename = "eastus")]
6530    Eastus,
6531    #[serde(rename = "eastus2")]
6532    Eastus2,
6533    #[serde(rename = "westus3")]
6534    Westus3,
6535    #[serde(rename = "germanywestcentral")]
6536    Germanywestcentral,
6537    #[serde(rename = "centralus")]
6538    Centralus,
6539    /// Catch-all for unknown or newly-added values.
6540    #[serde(untagged)]
6541    Unknown(String),
6542}
6543
6544impl std::fmt::Display for ServicePostRequestRegion {
6545    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6546        match self {
6547            Self::Ap_northeast_1 => write!(f, "ap-northeast-1"),
6548            Self::Ap_northeast_2 => write!(f, "ap-northeast-2"),
6549            Self::Ap_south_1 => write!(f, "ap-south-1"),
6550            Self::Ap_southeast_1 => write!(f, "ap-southeast-1"),
6551            Self::Ap_southeast_2 => write!(f, "ap-southeast-2"),
6552            Self::Eu_central_1 => write!(f, "eu-central-1"),
6553            Self::Eu_west_1 => write!(f, "eu-west-1"),
6554            Self::Eu_west_2 => write!(f, "eu-west-2"),
6555            Self::Il_central_1 => write!(f, "il-central-1"),
6556            Self::Us_east_1 => write!(f, "us-east-1"),
6557            Self::Us_east_2 => write!(f, "us-east-2"),
6558            Self::Us_west_2 => write!(f, "us-west-2"),
6559            Self::Us_east1 => write!(f, "us-east1"),
6560            Self::Us_central1 => write!(f, "us-central1"),
6561            Self::Europe_west4 => write!(f, "europe-west4"),
6562            Self::Asia_southeast1 => write!(f, "asia-southeast1"),
6563            Self::Asia_northeast1 => write!(f, "asia-northeast1"),
6564            Self::Eastus => write!(f, "eastus"),
6565            Self::Eastus2 => write!(f, "eastus2"),
6566            Self::Westus3 => write!(f, "westus3"),
6567            Self::Germanywestcentral => write!(f, "germanywestcentral"),
6568            Self::Centralus => write!(f, "centralus"),
6569            Self::Unknown(s) => write!(f, "{s}"),
6570        }
6571    }
6572}
6573
6574/// Inline enum for `ServicePostRequest.releaseChannel`.
6575#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
6576pub enum ServicePostRequestReleasechannel {
6577    #[serde(rename = "slow")]
6578    #[default]
6579    Slow,
6580    #[serde(rename = "default")]
6581    Default,
6582    #[serde(rename = "fast")]
6583    Fast,
6584    /// Catch-all for unknown or newly-added values.
6585    #[serde(untagged)]
6586    Unknown(String),
6587}
6588
6589impl std::fmt::Display for ServicePostRequestReleasechannel {
6590    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6591        match self {
6592            Self::Slow => write!(f, "slow"),
6593            Self::Default => write!(f, "default"),
6594            Self::Fast => write!(f, "fast"),
6595            Self::Unknown(s) => write!(f, "{s}"),
6596        }
6597    }
6598}
6599
6600/// Inline enum for `ServicePostRequest.tier`.
6601#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
6602pub enum ServicePostRequestTier {
6603    #[serde(rename = "development")]
6604    #[default]
6605    Development,
6606    #[serde(rename = "production")]
6607    Production,
6608    #[serde(rename = "dedicated_high_mem")]
6609    Dedicated_high_mem,
6610    #[serde(rename = "dedicated_high_cpu")]
6611    Dedicated_high_cpu,
6612    #[serde(rename = "dedicated_standard")]
6613    Dedicated_standard,
6614    #[serde(rename = "dedicated_standard_n2d_standard_4")]
6615    Dedicated_standard_n2d_standard_4,
6616    #[serde(rename = "dedicated_standard_n2d_standard_8")]
6617    Dedicated_standard_n2d_standard_8,
6618    #[serde(rename = "dedicated_standard_n2d_standard_32")]
6619    Dedicated_standard_n2d_standard_32,
6620    #[serde(rename = "dedicated_standard_n2d_standard_128")]
6621    Dedicated_standard_n2d_standard_128,
6622    #[serde(rename = "dedicated_standard_n2d_standard_32_16SSD")]
6623    Dedicated_standard_n2d_standard_32_16SSD,
6624    #[serde(rename = "dedicated_standard_n2d_standard_64_24SSD")]
6625    Dedicated_standard_n2d_standard_64_24SSD,
6626    /// Catch-all for unknown or newly-added values.
6627    #[serde(untagged)]
6628    Unknown(String),
6629}
6630
6631impl std::fmt::Display for ServicePostRequestTier {
6632    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6633        match self {
6634            Self::Development => write!(f, "development"),
6635            Self::Production => write!(f, "production"),
6636            Self::Dedicated_high_mem => write!(f, "dedicated_high_mem"),
6637            Self::Dedicated_high_cpu => write!(f, "dedicated_high_cpu"),
6638            Self::Dedicated_standard => write!(f, "dedicated_standard"),
6639            Self::Dedicated_standard_n2d_standard_4 => write!(f, "dedicated_standard_n2d_standard_4"),
6640            Self::Dedicated_standard_n2d_standard_8 => write!(f, "dedicated_standard_n2d_standard_8"),
6641            Self::Dedicated_standard_n2d_standard_32 => write!(f, "dedicated_standard_n2d_standard_32"),
6642            Self::Dedicated_standard_n2d_standard_128 => write!(f, "dedicated_standard_n2d_standard_128"),
6643            Self::Dedicated_standard_n2d_standard_32_16SSD => write!(f, "dedicated_standard_n2d_standard_32_16SSD"),
6644            Self::Dedicated_standard_n2d_standard_64_24SSD => write!(f, "dedicated_standard_n2d_standard_64_24SSD"),
6645            Self::Unknown(s) => write!(f, "{s}"),
6646        }
6647    }
6648}
6649
6650/// Inline enum for `ServiceScalingPatchResponse.complianceType`.
6651#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
6652pub enum ServiceScalingPatchResponseCompliancetype {
6653    #[serde(rename = "hipaa")]
6654    #[default]
6655    Hipaa,
6656    #[serde(rename = "pci")]
6657    Pci,
6658    /// Catch-all for unknown or newly-added values.
6659    #[serde(untagged)]
6660    Unknown(String),
6661}
6662
6663impl std::fmt::Display for ServiceScalingPatchResponseCompliancetype {
6664    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6665        match self {
6666            Self::Hipaa => write!(f, "hipaa"),
6667            Self::Pci => write!(f, "pci"),
6668            Self::Unknown(s) => write!(f, "{s}"),
6669        }
6670    }
6671}
6672
6673/// Inline enum for `ServiceScalingPatchResponse.profile`.
6674#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
6675pub enum ServiceScalingPatchResponseProfile {
6676    #[serde(rename = "v1-default")]
6677    #[default]
6678    V1_default,
6679    #[serde(rename = "v1-highmem-xs")]
6680    V1_highmem_xs,
6681    #[serde(rename = "v1-highmem-s")]
6682    V1_highmem_s,
6683    #[serde(rename = "v1-highmem-m")]
6684    V1_highmem_m,
6685    #[serde(rename = "v1-highmem-l")]
6686    V1_highmem_l,
6687    #[serde(rename = "v1-highmem-xl")]
6688    V1_highmem_xl,
6689    /// Catch-all for unknown or newly-added values.
6690    #[serde(untagged)]
6691    Unknown(String),
6692}
6693
6694impl std::fmt::Display for ServiceScalingPatchResponseProfile {
6695    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6696        match self {
6697            Self::V1_default => write!(f, "v1-default"),
6698            Self::V1_highmem_xs => write!(f, "v1-highmem-xs"),
6699            Self::V1_highmem_s => write!(f, "v1-highmem-s"),
6700            Self::V1_highmem_m => write!(f, "v1-highmem-m"),
6701            Self::V1_highmem_l => write!(f, "v1-highmem-l"),
6702            Self::V1_highmem_xl => write!(f, "v1-highmem-xl"),
6703            Self::Unknown(s) => write!(f, "{s}"),
6704        }
6705    }
6706}
6707
6708/// Inline enum for `ServiceScalingPatchResponse.provider`.
6709#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
6710pub enum ServiceScalingPatchResponseProvider {
6711    #[serde(rename = "aws")]
6712    #[default]
6713    Aws,
6714    #[serde(rename = "gcp")]
6715    Gcp,
6716    #[serde(rename = "azure")]
6717    Azure,
6718    /// Catch-all for unknown or newly-added values.
6719    #[serde(untagged)]
6720    Unknown(String),
6721}
6722
6723impl std::fmt::Display for ServiceScalingPatchResponseProvider {
6724    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6725        match self {
6726            Self::Aws => write!(f, "aws"),
6727            Self::Gcp => write!(f, "gcp"),
6728            Self::Azure => write!(f, "azure"),
6729            Self::Unknown(s) => write!(f, "{s}"),
6730        }
6731    }
6732}
6733
6734/// Inline enum for `ServiceScalingPatchResponse.region`.
6735#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
6736pub enum ServiceScalingPatchResponseRegion {
6737    #[serde(rename = "ap-northeast-1")]
6738    #[default]
6739    Ap_northeast_1,
6740    #[serde(rename = "ap-northeast-2")]
6741    Ap_northeast_2,
6742    #[serde(rename = "ap-south-1")]
6743    Ap_south_1,
6744    #[serde(rename = "ap-southeast-1")]
6745    Ap_southeast_1,
6746    #[serde(rename = "ap-southeast-2")]
6747    Ap_southeast_2,
6748    #[serde(rename = "eu-central-1")]
6749    Eu_central_1,
6750    #[serde(rename = "eu-west-1")]
6751    Eu_west_1,
6752    #[serde(rename = "eu-west-2")]
6753    Eu_west_2,
6754    #[serde(rename = "il-central-1")]
6755    Il_central_1,
6756    #[serde(rename = "us-east-1")]
6757    Us_east_1,
6758    #[serde(rename = "us-east-2")]
6759    Us_east_2,
6760    #[serde(rename = "us-west-2")]
6761    Us_west_2,
6762    #[serde(rename = "us-east1")]
6763    Us_east1,
6764    #[serde(rename = "us-central1")]
6765    Us_central1,
6766    #[serde(rename = "europe-west4")]
6767    Europe_west4,
6768    #[serde(rename = "asia-southeast1")]
6769    Asia_southeast1,
6770    #[serde(rename = "asia-northeast1")]
6771    Asia_northeast1,
6772    #[serde(rename = "eastus")]
6773    Eastus,
6774    #[serde(rename = "eastus2")]
6775    Eastus2,
6776    #[serde(rename = "westus3")]
6777    Westus3,
6778    #[serde(rename = "germanywestcentral")]
6779    Germanywestcentral,
6780    #[serde(rename = "centralus")]
6781    Centralus,
6782    /// Catch-all for unknown or newly-added values.
6783    #[serde(untagged)]
6784    Unknown(String),
6785}
6786
6787impl std::fmt::Display for ServiceScalingPatchResponseRegion {
6788    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6789        match self {
6790            Self::Ap_northeast_1 => write!(f, "ap-northeast-1"),
6791            Self::Ap_northeast_2 => write!(f, "ap-northeast-2"),
6792            Self::Ap_south_1 => write!(f, "ap-south-1"),
6793            Self::Ap_southeast_1 => write!(f, "ap-southeast-1"),
6794            Self::Ap_southeast_2 => write!(f, "ap-southeast-2"),
6795            Self::Eu_central_1 => write!(f, "eu-central-1"),
6796            Self::Eu_west_1 => write!(f, "eu-west-1"),
6797            Self::Eu_west_2 => write!(f, "eu-west-2"),
6798            Self::Il_central_1 => write!(f, "il-central-1"),
6799            Self::Us_east_1 => write!(f, "us-east-1"),
6800            Self::Us_east_2 => write!(f, "us-east-2"),
6801            Self::Us_west_2 => write!(f, "us-west-2"),
6802            Self::Us_east1 => write!(f, "us-east1"),
6803            Self::Us_central1 => write!(f, "us-central1"),
6804            Self::Europe_west4 => write!(f, "europe-west4"),
6805            Self::Asia_southeast1 => write!(f, "asia-southeast1"),
6806            Self::Asia_northeast1 => write!(f, "asia-northeast1"),
6807            Self::Eastus => write!(f, "eastus"),
6808            Self::Eastus2 => write!(f, "eastus2"),
6809            Self::Westus3 => write!(f, "westus3"),
6810            Self::Germanywestcentral => write!(f, "germanywestcentral"),
6811            Self::Centralus => write!(f, "centralus"),
6812            Self::Unknown(s) => write!(f, "{s}"),
6813        }
6814    }
6815}
6816
6817/// Inline enum for `ServiceScalingPatchResponse.releaseChannel`.
6818#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
6819pub enum ServiceScalingPatchResponseReleasechannel {
6820    #[serde(rename = "slow")]
6821    #[default]
6822    Slow,
6823    #[serde(rename = "default")]
6824    Default,
6825    #[serde(rename = "fast")]
6826    Fast,
6827    /// Catch-all for unknown or newly-added values.
6828    #[serde(untagged)]
6829    Unknown(String),
6830}
6831
6832impl std::fmt::Display for ServiceScalingPatchResponseReleasechannel {
6833    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6834        match self {
6835            Self::Slow => write!(f, "slow"),
6836            Self::Default => write!(f, "default"),
6837            Self::Fast => write!(f, "fast"),
6838            Self::Unknown(s) => write!(f, "{s}"),
6839        }
6840    }
6841}
6842
6843/// Inline enum for `ServiceScalingPatchResponse.state`.
6844#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
6845pub enum ServiceScalingPatchResponseState {
6846    #[serde(rename = "starting")]
6847    #[default]
6848    Starting,
6849    #[serde(rename = "stopping")]
6850    Stopping,
6851    #[serde(rename = "terminating")]
6852    Terminating,
6853    #[serde(rename = "softdeleting")]
6854    Softdeleting,
6855    #[serde(rename = "awaking")]
6856    Awaking,
6857    #[serde(rename = "partially_running")]
6858    Partially_running,
6859    #[serde(rename = "provisioning")]
6860    Provisioning,
6861    #[serde(rename = "running")]
6862    Running,
6863    #[serde(rename = "stopped")]
6864    Stopped,
6865    #[serde(rename = "terminated")]
6866    Terminated,
6867    #[serde(rename = "softdeleted")]
6868    Softdeleted,
6869    #[serde(rename = "degraded")]
6870    Degraded,
6871    #[serde(rename = "failed")]
6872    Failed,
6873    #[serde(rename = "idle")]
6874    Idle,
6875    /// Catch-all for unknown or newly-added values.
6876    #[serde(untagged)]
6877    Unknown(String),
6878}
6879
6880impl std::fmt::Display for ServiceScalingPatchResponseState {
6881    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6882        match self {
6883            Self::Starting => write!(f, "starting"),
6884            Self::Stopping => write!(f, "stopping"),
6885            Self::Terminating => write!(f, "terminating"),
6886            Self::Softdeleting => write!(f, "softdeleting"),
6887            Self::Awaking => write!(f, "awaking"),
6888            Self::Partially_running => write!(f, "partially_running"),
6889            Self::Provisioning => write!(f, "provisioning"),
6890            Self::Running => write!(f, "running"),
6891            Self::Stopped => write!(f, "stopped"),
6892            Self::Terminated => write!(f, "terminated"),
6893            Self::Softdeleted => write!(f, "softdeleted"),
6894            Self::Degraded => write!(f, "degraded"),
6895            Self::Failed => write!(f, "failed"),
6896            Self::Idle => write!(f, "idle"),
6897            Self::Unknown(s) => write!(f, "{s}"),
6898        }
6899    }
6900}
6901
6902/// Inline enum for `ServiceScalingPatchResponse.tier`.
6903#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
6904pub enum ServiceScalingPatchResponseTier {
6905    #[serde(rename = "development")]
6906    #[default]
6907    Development,
6908    #[serde(rename = "production")]
6909    Production,
6910    #[serde(rename = "dedicated_high_mem")]
6911    Dedicated_high_mem,
6912    #[serde(rename = "dedicated_high_cpu")]
6913    Dedicated_high_cpu,
6914    #[serde(rename = "dedicated_standard")]
6915    Dedicated_standard,
6916    #[serde(rename = "dedicated_standard_n2d_standard_4")]
6917    Dedicated_standard_n2d_standard_4,
6918    #[serde(rename = "dedicated_standard_n2d_standard_8")]
6919    Dedicated_standard_n2d_standard_8,
6920    #[serde(rename = "dedicated_standard_n2d_standard_32")]
6921    Dedicated_standard_n2d_standard_32,
6922    #[serde(rename = "dedicated_standard_n2d_standard_128")]
6923    Dedicated_standard_n2d_standard_128,
6924    #[serde(rename = "dedicated_standard_n2d_standard_32_16SSD")]
6925    Dedicated_standard_n2d_standard_32_16SSD,
6926    #[serde(rename = "dedicated_standard_n2d_standard_64_24SSD")]
6927    Dedicated_standard_n2d_standard_64_24SSD,
6928    /// Catch-all for unknown or newly-added values.
6929    #[serde(untagged)]
6930    Unknown(String),
6931}
6932
6933impl std::fmt::Display for ServiceScalingPatchResponseTier {
6934    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6935        match self {
6936            Self::Development => write!(f, "development"),
6937            Self::Production => write!(f, "production"),
6938            Self::Dedicated_high_mem => write!(f, "dedicated_high_mem"),
6939            Self::Dedicated_high_cpu => write!(f, "dedicated_high_cpu"),
6940            Self::Dedicated_standard => write!(f, "dedicated_standard"),
6941            Self::Dedicated_standard_n2d_standard_4 => write!(f, "dedicated_standard_n2d_standard_4"),
6942            Self::Dedicated_standard_n2d_standard_8 => write!(f, "dedicated_standard_n2d_standard_8"),
6943            Self::Dedicated_standard_n2d_standard_32 => write!(f, "dedicated_standard_n2d_standard_32"),
6944            Self::Dedicated_standard_n2d_standard_128 => write!(f, "dedicated_standard_n2d_standard_128"),
6945            Self::Dedicated_standard_n2d_standard_32_16SSD => write!(f, "dedicated_standard_n2d_standard_32_16SSD"),
6946            Self::Dedicated_standard_n2d_standard_64_24SSD => write!(f, "dedicated_standard_n2d_standard_64_24SSD"),
6947            Self::Unknown(s) => write!(f, "{s}"),
6948        }
6949    }
6950}
6951
6952/// Inline enum for `ServiceStatePatchRequest.command`.
6953#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
6954pub enum ServiceStatePatchRequestCommand {
6955    #[serde(rename = "start")]
6956    #[default]
6957    Start,
6958    #[serde(rename = "stop")]
6959    Stop,
6960    #[serde(rename = "awake")]
6961    Awake,
6962    /// Catch-all for unknown or newly-added values.
6963    #[serde(untagged)]
6964    Unknown(String),
6965}
6966
6967impl std::fmt::Display for ServiceStatePatchRequestCommand {
6968    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6969        match self {
6970            Self::Start => write!(f, "start"),
6971            Self::Stop => write!(f, "stop"),
6972            Self::Awake => write!(f, "awake"),
6973            Self::Unknown(s) => write!(f, "{s}"),
6974        }
6975    }
6976}
6977
6978/// Inline enum for `UsageCostRecord.entityType`.
6979#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
6980pub enum UsageCostRecordEntitytype {
6981    #[serde(rename = "datawarehouse")]
6982    #[default]
6983    Datawarehouse,
6984    #[serde(rename = "service")]
6985    Service,
6986    #[serde(rename = "clickpipe")]
6987    Clickpipe,
6988    /// Catch-all for unknown or newly-added values.
6989    #[serde(untagged)]
6990    Unknown(String),
6991}
6992
6993impl std::fmt::Display for UsageCostRecordEntitytype {
6994    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6995        match self {
6996            Self::Datawarehouse => write!(f, "datawarehouse"),
6997            Self::Service => write!(f, "service"),
6998            Self::Clickpipe => write!(f, "clickpipe"),
6999            Self::Unknown(s) => write!(f, "{s}"),
7000        }
7001    }
7002}
7003
7004/// Inline enum for `pgConfig.default_transaction_isolation`.
7005#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7006pub enum PgConfigDefaultTransactionIsolation {
7007    #[serde(rename = "read committed")]
7008    #[default]
7009    Read_committed,
7010    #[serde(rename = "repeatable read")]
7011    Repeatable_read,
7012    #[serde(rename = "serializable")]
7013    Serializable,
7014    /// Catch-all for unknown or newly-added values.
7015    #[serde(untagged)]
7016    Unknown(String),
7017}
7018
7019impl std::fmt::Display for PgConfigDefaultTransactionIsolation {
7020    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
7021        match self {
7022            Self::Read_committed => write!(f, "read committed"),
7023            Self::Repeatable_read => write!(f, "repeatable read"),
7024            Self::Serializable => write!(f, "serializable"),
7025            Self::Unknown(s) => write!(f, "{s}"),
7026        }
7027    }
7028}
7029
7030/// Inline enum for `pgConfig.ssl_min_protocol_version`.
7031#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7032pub enum PgConfigSslMinProtocolVersion {
7033    #[serde(rename = "TLSv1")]
7034    #[default]
7035    TlsV1,
7036    #[serde(rename = "TLSv1.1")]
7037    TlsV1_1,
7038    #[serde(rename = "TLSv1.2")]
7039    TlsV1_2,
7040    #[serde(rename = "TLSv1.3")]
7041    TlsV1_3,
7042    /// Catch-all for unknown or newly-added values.
7043    #[serde(untagged)]
7044    Unknown(String),
7045}
7046
7047impl std::fmt::Display for PgConfigSslMinProtocolVersion {
7048    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
7049        match self {
7050            Self::TlsV1 => write!(f, "TLSv1"),
7051            Self::TlsV1_1 => write!(f, "TLSv1.1"),
7052            Self::TlsV1_2 => write!(f, "TLSv1.2"),
7053            Self::TlsV1_3 => write!(f, "TLSv1.3"),
7054            Self::Unknown(s) => write!(f, "{s}"),
7055        }
7056    }
7057}
7058
7059/// Inline enum for `pgConfig.wal_compression`.
7060#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7061pub enum PgConfigWalCompression {
7062    #[serde(rename = "off")]
7063    #[default]
7064    Off,
7065    #[serde(rename = "on")]
7066    On,
7067    #[serde(rename = "lz4")]
7068    Lz4,
7069    #[serde(rename = "zstd")]
7070    Zstd,
7071    /// Catch-all for unknown or newly-added values.
7072    #[serde(untagged)]
7073    Unknown(String),
7074}
7075
7076impl std::fmt::Display for PgConfigWalCompression {
7077    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
7078        match self {
7079            Self::Off => write!(f, "off"),
7080            Self::On => write!(f, "on"),
7081            Self::Lz4 => write!(f, "lz4"),
7082            Self::Zstd => write!(f, "zstd"),
7083            Self::Unknown(s) => write!(f, "{s}"),
7084        }
7085    }
7086}
7087
7088/// `BackupBucket` - one of multiple variants.
7089///
7090/// Uses `bucketProvider` as a discriminator: `"AWS"`, `"GCP"`, or `"AZURE"`.
7091#[derive(Debug, Clone, PartialEq, Serialize)]
7092#[serde(untagged)]
7093pub enum BackupBucket {
7094    AwsBackupBucket(AwsBackupBucket),
7095    GcpBackupBucket(GcpBackupBucket),
7096    AzureBackupBucket(AzureBackupBucket),
7097    /// Catch-all for unknown or newly-added values.
7098    Unknown(String),
7099}
7100
7101impl<'de> Deserialize<'de> for BackupBucket {
7102    fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
7103    where
7104        D: serde::Deserializer<'de>,
7105    {
7106        let value = serde_json::Value::deserialize(deserializer)?;
7107        match value.get("bucketProvider").and_then(|v| v.as_str()) {
7108            Some("AWS") => serde_json::from_value(value)
7109                .map(BackupBucket::AwsBackupBucket)
7110                .map_err(serde::de::Error::custom),
7111            Some("GCP") => serde_json::from_value(value)
7112                .map(BackupBucket::GcpBackupBucket)
7113                .map_err(serde::de::Error::custom),
7114            Some("AZURE") => serde_json::from_value(value)
7115                .map(BackupBucket::AzureBackupBucket)
7116                .map_err(serde::de::Error::custom),
7117            _ => Ok(BackupBucket::Unknown(value.to_string())),
7118        }
7119    }
7120}
7121
7122impl std::fmt::Display for BackupBucket {
7123    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
7124        match self {
7125            Self::AwsBackupBucket(_) => write!(f, "AwsBackupBucket"),
7126            Self::GcpBackupBucket(_) => write!(f, "GcpBackupBucket"),
7127            Self::AzureBackupBucket(_) => write!(f, "AzureBackupBucket"),
7128            Self::Unknown(s) => write!(f, "{s}"),
7129        }
7130    }
7131}
7132
7133/// `BackupBucketPatchRequest` - one of multiple variants.
7134///
7135/// Uses `bucketProvider` as a discriminator: `"AWS"`, `"GCP"`, or `"AZURE"`.
7136#[derive(Debug, Clone, PartialEq, Serialize)]
7137#[serde(untagged)]
7138pub enum BackupBucketPatchRequest {
7139    AwsBackupBucketPatchRequestV1(AwsBackupBucketPatchRequestV1),
7140    GcpBackupBucketPatchRequestV1(GcpBackupBucketPatchRequestV1),
7141    AzureBackupBucketPatchRequestV1(AzureBackupBucketPatchRequestV1),
7142    /// Catch-all for unknown or newly-added values.
7143    Unknown(String),
7144}
7145
7146impl<'de> Deserialize<'de> for BackupBucketPatchRequest {
7147    fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
7148    where
7149        D: serde::Deserializer<'de>,
7150    {
7151        let value = serde_json::Value::deserialize(deserializer)?;
7152        match value.get("bucketProvider").and_then(|v| v.as_str()) {
7153            Some("AWS") => serde_json::from_value(value)
7154                .map(BackupBucketPatchRequest::AwsBackupBucketPatchRequestV1)
7155                .map_err(serde::de::Error::custom),
7156            Some("GCP") => serde_json::from_value(value)
7157                .map(BackupBucketPatchRequest::GcpBackupBucketPatchRequestV1)
7158                .map_err(serde::de::Error::custom),
7159            Some("AZURE") => serde_json::from_value(value)
7160                .map(BackupBucketPatchRequest::AzureBackupBucketPatchRequestV1)
7161                .map_err(serde::de::Error::custom),
7162            _ => Ok(BackupBucketPatchRequest::Unknown(value.to_string())),
7163        }
7164    }
7165}
7166
7167impl std::fmt::Display for BackupBucketPatchRequest {
7168    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
7169        match self {
7170            Self::AwsBackupBucketPatchRequestV1(_) => write!(f, "AwsBackupBucketPatchRequestV1"),
7171            Self::GcpBackupBucketPatchRequestV1(_) => write!(f, "GcpBackupBucketPatchRequestV1"),
7172            Self::AzureBackupBucketPatchRequestV1(_) => write!(f, "AzureBackupBucketPatchRequestV1"),
7173            Self::Unknown(s) => write!(f, "{s}"),
7174        }
7175    }
7176}
7177
7178/// `BackupBucketPostRequest` - one of multiple variants.
7179///
7180/// Uses `bucketProvider` as a discriminator: `"AWS"`, `"GCP"`, or `"AZURE"`.
7181#[derive(Debug, Clone, PartialEq, Serialize)]
7182#[serde(untagged)]
7183pub enum BackupBucketPostRequest {
7184    AwsBackupBucketPostRequestV1(AwsBackupBucketPostRequestV1),
7185    GcpBackupBucketPostRequestV1(GcpBackupBucketPostRequestV1),
7186    AzureBackupBucketPostRequestV1(AzureBackupBucketPostRequestV1),
7187    /// Catch-all for unknown or newly-added values.
7188    Unknown(String),
7189}
7190
7191impl<'de> Deserialize<'de> for BackupBucketPostRequest {
7192    fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
7193    where
7194        D: serde::Deserializer<'de>,
7195    {
7196        let value = serde_json::Value::deserialize(deserializer)?;
7197        match value.get("bucketProvider").and_then(|v| v.as_str()) {
7198            Some("AWS") => serde_json::from_value(value)
7199                .map(BackupBucketPostRequest::AwsBackupBucketPostRequestV1)
7200                .map_err(serde::de::Error::custom),
7201            Some("GCP") => serde_json::from_value(value)
7202                .map(BackupBucketPostRequest::GcpBackupBucketPostRequestV1)
7203                .map_err(serde::de::Error::custom),
7204            Some("AZURE") => serde_json::from_value(value)
7205                .map(BackupBucketPostRequest::AzureBackupBucketPostRequestV1)
7206                .map_err(serde::de::Error::custom),
7207            _ => Ok(BackupBucketPostRequest::Unknown(value.to_string())),
7208        }
7209    }
7210}
7211
7212impl std::fmt::Display for BackupBucketPostRequest {
7213    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
7214        match self {
7215            Self::AwsBackupBucketPostRequestV1(_) => write!(f, "AwsBackupBucketPostRequestV1"),
7216            Self::GcpBackupBucketPostRequestV1(_) => write!(f, "GcpBackupBucketPostRequestV1"),
7217            Self::AzureBackupBucketPostRequestV1(_) => write!(f, "AzureBackupBucketPostRequestV1"),
7218            Self::Unknown(s) => write!(f, "{s}"),
7219        }
7220    }
7221}
7222
7223/// `BackupBucketProperties` - one of multiple variants.
7224///
7225/// Uses `bucketProvider` as a discriminator: `"AWS"`, `"GCP"`, or `"AZURE"`.
7226#[derive(Debug, Clone, PartialEq, Serialize)]
7227#[serde(untagged)]
7228pub enum BackupBucketProperties {
7229    AwsBackupBucketProperties(AwsBackupBucketProperties),
7230    GcpBackupBucketProperties(GcpBackupBucketProperties),
7231    AzureBackupBucketProperties(AzureBackupBucketProperties),
7232    /// Catch-all for unknown or newly-added values.
7233    Unknown(String),
7234}
7235
7236impl<'de> Deserialize<'de> for BackupBucketProperties {
7237    fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
7238    where
7239        D: serde::Deserializer<'de>,
7240    {
7241        let value = serde_json::Value::deserialize(deserializer)?;
7242        match value.get("bucketProvider").and_then(|v| v.as_str()) {
7243            Some("AWS") => serde_json::from_value(value)
7244                .map(BackupBucketProperties::AwsBackupBucketProperties)
7245                .map_err(serde::de::Error::custom),
7246            Some("GCP") => serde_json::from_value(value)
7247                .map(BackupBucketProperties::GcpBackupBucketProperties)
7248                .map_err(serde::de::Error::custom),
7249            Some("AZURE") => serde_json::from_value(value)
7250                .map(BackupBucketProperties::AzureBackupBucketProperties)
7251                .map_err(serde::de::Error::custom),
7252            _ => Ok(BackupBucketProperties::Unknown(value.to_string())),
7253        }
7254    }
7255}
7256
7257impl std::fmt::Display for BackupBucketProperties {
7258    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
7259        match self {
7260            Self::AwsBackupBucketProperties(_) => write!(f, "AwsBackupBucketProperties"),
7261            Self::GcpBackupBucketProperties(_) => write!(f, "GcpBackupBucketProperties"),
7262            Self::AzureBackupBucketProperties(_) => write!(f, "AzureBackupBucketProperties"),
7263            Self::Unknown(s) => write!(f, "{s}"),
7264        }
7265    }
7266}
7267
7268/// `ClickStackAlertChannel` - one of multiple variants.
7269#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
7270#[serde(untagged)]
7271pub enum ClickStackAlertChannel {
7272    ClickStackAlertChannelEmail(ClickStackAlertChannelEmail),
7273    ClickStackAlertChannelWebhook(ClickStackAlertChannelWebhook),
7274    /// Catch-all for unknown or newly-added values.
7275    Unknown(String),
7276}
7277
7278impl std::fmt::Display for ClickStackAlertChannel {
7279    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
7280        match self {
7281            Self::ClickStackAlertChannelEmail(_) => write!(f, "ClickStackAlertChannelEmail"),
7282            Self::ClickStackAlertChannelWebhook(_) => write!(f, "ClickStackAlertChannelWebhook"),
7283            Self::Unknown(s) => write!(f, "{s}"),
7284        }
7285    }
7286}
7287
7288/// `ClickStackBarChartConfig` - one of multiple variants.
7289#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
7290#[serde(untagged)]
7291pub enum ClickStackBarChartConfig {
7292    ClickStackBarBuilderChartConfig(ClickStackBarBuilderChartConfig),
7293    ClickStackBarRawSqlChartConfig(ClickStackBarRawSqlChartConfig),
7294    /// Catch-all for unknown or newly-added values.
7295    Unknown(String),
7296}
7297
7298impl std::fmt::Display for ClickStackBarChartConfig {
7299    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
7300        match self {
7301            Self::ClickStackBarBuilderChartConfig(_) => write!(f, "ClickStackBarBuilderChartConfig"),
7302            Self::ClickStackBarRawSqlChartConfig(_) => write!(f, "ClickStackBarRawSqlChartConfig"),
7303            Self::Unknown(s) => write!(f, "{s}"),
7304        }
7305    }
7306}
7307
7308/// `ClickStackDashboardChartSeries` - one of multiple variants.
7309#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
7310#[serde(untagged)]
7311pub enum ClickStackDashboardChartSeries {
7312    ClickStackTimeChartSeries(ClickStackTimeChartSeries),
7313    ClickStackTableChartSeries(ClickStackTableChartSeries),
7314    ClickStackNumberChartSeries(ClickStackNumberChartSeries),
7315    ClickStackSearchChartSeries(ClickStackSearchChartSeries),
7316    ClickStackMarkdownChartSeries(ClickStackMarkdownChartSeries),
7317    /// Catch-all for unknown or newly-added values.
7318    Unknown(String),
7319}
7320
7321impl std::fmt::Display for ClickStackDashboardChartSeries {
7322    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
7323        match self {
7324            Self::ClickStackTimeChartSeries(_) => write!(f, "ClickStackTimeChartSeries"),
7325            Self::ClickStackTableChartSeries(_) => write!(f, "ClickStackTableChartSeries"),
7326            Self::ClickStackNumberChartSeries(_) => write!(f, "ClickStackNumberChartSeries"),
7327            Self::ClickStackSearchChartSeries(_) => write!(f, "ClickStackSearchChartSeries"),
7328            Self::ClickStackMarkdownChartSeries(_) => write!(f, "ClickStackMarkdownChartSeries"),
7329            Self::Unknown(s) => write!(f, "{s}"),
7330        }
7331    }
7332}
7333
7334/// `ClickStackLineChartConfig` - one of multiple variants.
7335#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
7336#[serde(untagged)]
7337pub enum ClickStackLineChartConfig {
7338    ClickStackLineBuilderChartConfig(ClickStackLineBuilderChartConfig),
7339    ClickStackLineRawSqlChartConfig(ClickStackLineRawSqlChartConfig),
7340    /// Catch-all for unknown or newly-added values.
7341    Unknown(String),
7342}
7343
7344impl std::fmt::Display for ClickStackLineChartConfig {
7345    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
7346        match self {
7347            Self::ClickStackLineBuilderChartConfig(_) => write!(f, "ClickStackLineBuilderChartConfig"),
7348            Self::ClickStackLineRawSqlChartConfig(_) => write!(f, "ClickStackLineRawSqlChartConfig"),
7349            Self::Unknown(s) => write!(f, "{s}"),
7350        }
7351    }
7352}
7353
7354/// `ClickStackNumberChartConfig` - one of multiple variants.
7355#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
7356#[serde(untagged)]
7357pub enum ClickStackNumberChartConfig {
7358    ClickStackNumberBuilderChartConfig(ClickStackNumberBuilderChartConfig),
7359    ClickStackNumberRawSqlChartConfig(ClickStackNumberRawSqlChartConfig),
7360    /// Catch-all for unknown or newly-added values.
7361    Unknown(String),
7362}
7363
7364impl std::fmt::Display for ClickStackNumberChartConfig {
7365    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
7366        match self {
7367            Self::ClickStackNumberBuilderChartConfig(_) => write!(f, "ClickStackNumberBuilderChartConfig"),
7368            Self::ClickStackNumberRawSqlChartConfig(_) => write!(f, "ClickStackNumberRawSqlChartConfig"),
7369            Self::Unknown(s) => write!(f, "{s}"),
7370        }
7371    }
7372}
7373
7374/// `ClickStackOnClick` - one of multiple variants.
7375#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
7376#[serde(untagged)]
7377pub enum ClickStackOnClick {
7378    ClickStackOnClickSearch(ClickStackOnClickSearch),
7379    ClickStackOnClickDashboard(ClickStackOnClickDashboard),
7380    /// Catch-all for unknown or newly-added values.
7381    Unknown(String),
7382}
7383
7384impl Default for ClickStackOnClick {
7385    fn default() -> Self {
7386        Self::Unknown(String::new())
7387    }
7388}
7389
7390impl std::fmt::Display for ClickStackOnClick {
7391    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
7392        match self {
7393            Self::ClickStackOnClickSearch(_) => write!(f, "ClickStackOnClickSearch"),
7394            Self::ClickStackOnClickDashboard(_) => write!(f, "ClickStackOnClickDashboard"),
7395            Self::Unknown(s) => write!(f, "{s}"),
7396        }
7397    }
7398}
7399
7400/// `ClickStackOnClickTarget` - one of multiple variants.
7401#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
7402#[serde(untagged)]
7403pub enum ClickStackOnClickTarget {
7404    ClickStackOnClickTargetIdVariant(ClickStackOnClickTargetIdVariant),
7405    ClickStackOnClickTargetTemplateVariant(ClickStackOnClickTargetTemplateVariant),
7406    /// Catch-all for unknown or newly-added values.
7407    Unknown(String),
7408}
7409
7410impl Default for ClickStackOnClickTarget {
7411    fn default() -> Self {
7412        Self::Unknown(String::new())
7413    }
7414}
7415
7416impl std::fmt::Display for ClickStackOnClickTarget {
7417    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
7418        match self {
7419            Self::ClickStackOnClickTargetIdVariant(_) => write!(f, "ClickStackOnClickTargetIdVariant"),
7420            Self::ClickStackOnClickTargetTemplateVariant(_) => write!(f, "ClickStackOnClickTargetTemplateVariant"),
7421            Self::Unknown(s) => write!(f, "{s}"),
7422        }
7423    }
7424}
7425
7426/// `ClickStackPieChartConfig` - one of multiple variants.
7427#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
7428#[serde(untagged)]
7429pub enum ClickStackPieChartConfig {
7430    ClickStackPieBuilderChartConfig(ClickStackPieBuilderChartConfig),
7431    ClickStackPieRawSqlChartConfig(ClickStackPieRawSqlChartConfig),
7432    /// Catch-all for unknown or newly-added values.
7433    Unknown(String),
7434}
7435
7436impl std::fmt::Display for ClickStackPieChartConfig {
7437    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
7438        match self {
7439            Self::ClickStackPieBuilderChartConfig(_) => write!(f, "ClickStackPieBuilderChartConfig"),
7440            Self::ClickStackPieRawSqlChartConfig(_) => write!(f, "ClickStackPieRawSqlChartConfig"),
7441            Self::Unknown(s) => write!(f, "{s}"),
7442        }
7443    }
7444}
7445
7446/// `ClickStackSource` - one of multiple variants.
7447#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
7448#[serde(untagged)]
7449pub enum ClickStackSource {
7450    ClickStackLogSource(ClickStackLogSource),
7451    ClickStackTraceSource(ClickStackTraceSource),
7452    ClickStackMetricSource(ClickStackMetricSource),
7453    ClickStackSessionSource(ClickStackSessionSource),
7454    /// Catch-all for unknown or newly-added values.
7455    Unknown(String),
7456}
7457
7458impl std::fmt::Display for ClickStackSource {
7459    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
7460        match self {
7461            Self::ClickStackLogSource(_) => write!(f, "ClickStackLogSource"),
7462            Self::ClickStackTraceSource(_) => write!(f, "ClickStackTraceSource"),
7463            Self::ClickStackMetricSource(_) => write!(f, "ClickStackMetricSource"),
7464            Self::ClickStackSessionSource(_) => write!(f, "ClickStackSessionSource"),
7465            Self::Unknown(s) => write!(f, "{s}"),
7466        }
7467    }
7468}
7469
7470/// `ClickStackTableChartConfig` - one of multiple variants.
7471#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
7472#[serde(untagged)]
7473pub enum ClickStackTableChartConfig {
7474    ClickStackTableBuilderChartConfig(ClickStackTableBuilderChartConfig),
7475    ClickStackTableRawSqlChartConfig(ClickStackTableRawSqlChartConfig),
7476    /// Catch-all for unknown or newly-added values.
7477    Unknown(String),
7478}
7479
7480impl std::fmt::Display for ClickStackTableChartConfig {
7481    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
7482        match self {
7483            Self::ClickStackTableBuilderChartConfig(_) => write!(f, "ClickStackTableBuilderChartConfig"),
7484            Self::ClickStackTableRawSqlChartConfig(_) => write!(f, "ClickStackTableRawSqlChartConfig"),
7485            Self::Unknown(s) => write!(f, "{s}"),
7486        }
7487    }
7488}
7489
7490/// `ClickStackTileConfig` - one of multiple variants.
7491#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
7492#[serde(untagged)]
7493pub enum ClickStackTileConfig {
7494    ClickStackLineChartConfig(ClickStackLineChartConfig),
7495    ClickStackBarChartConfig(ClickStackBarChartConfig),
7496    ClickStackTableChartConfig(ClickStackTableChartConfig),
7497    ClickStackNumberChartConfig(ClickStackNumberChartConfig),
7498    ClickStackPieChartConfig(ClickStackPieChartConfig),
7499    ClickStackHeatmapChartConfig(ClickStackHeatmapChartConfig),
7500    ClickStackSearchChartConfig(ClickStackSearchChartConfig),
7501    ClickStackMarkdownChartConfig(ClickStackMarkdownChartConfig),
7502    /// Catch-all for unknown or newly-added values.
7503    Unknown(String),
7504}
7505
7506impl std::fmt::Display for ClickStackTileConfig {
7507    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
7508        match self {
7509            Self::ClickStackLineChartConfig(_) => write!(f, "ClickStackLineChartConfig"),
7510            Self::ClickStackBarChartConfig(_) => write!(f, "ClickStackBarChartConfig"),
7511            Self::ClickStackTableChartConfig(_) => write!(f, "ClickStackTableChartConfig"),
7512            Self::ClickStackNumberChartConfig(_) => write!(f, "ClickStackNumberChartConfig"),
7513            Self::ClickStackPieChartConfig(_) => write!(f, "ClickStackPieChartConfig"),
7514            Self::ClickStackHeatmapChartConfig(_) => write!(f, "ClickStackHeatmapChartConfig"),
7515            Self::ClickStackSearchChartConfig(_) => write!(f, "ClickStackSearchChartConfig"),
7516            Self::ClickStackMarkdownChartConfig(_) => write!(f, "ClickStackMarkdownChartConfig"),
7517            Self::Unknown(s) => write!(f, "{s}"),
7518        }
7519    }
7520}
7521
7522/// `ClickStackWebhook` - one of multiple variants.
7523#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
7524#[serde(untagged)]
7525pub enum ClickStackWebhook {
7526    ClickStackSlackWebhook(ClickStackSlackWebhook),
7527    ClickStackIncidentIOWebhook(ClickStackIncidentIOWebhook),
7528    ClickStackGenericWebhook(ClickStackGenericWebhook),
7529    ClickStackSlackAPIWebhook(ClickStackSlackAPIWebhook),
7530    ClickStackPagerDutyAPIWebhook(ClickStackPagerDutyAPIWebhook),
7531    /// Catch-all for unknown or newly-added values.
7532    Unknown(String),
7533}
7534
7535impl std::fmt::Display for ClickStackWebhook {
7536    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
7537        match self {
7538            Self::ClickStackSlackWebhook(_) => write!(f, "ClickStackSlackWebhook"),
7539            Self::ClickStackIncidentIOWebhook(_) => write!(f, "ClickStackIncidentIOWebhook"),
7540            Self::ClickStackGenericWebhook(_) => write!(f, "ClickStackGenericWebhook"),
7541            Self::ClickStackSlackAPIWebhook(_) => write!(f, "ClickStackSlackAPIWebhook"),
7542            Self::ClickStackPagerDutyAPIWebhook(_) => write!(f, "ClickStackPagerDutyAPIWebhook"),
7543            Self::Unknown(s) => write!(f, "{s}"),
7544        }
7545    }
7546}
7547
7548/// Type alias for `pgCreatedAtProperty`.
7549pub type PgCreatedAtProperty = chrono::DateTime<chrono::Utc>;
7550
7551/// Type alias for `pgIdProperty`.
7552pub type PgIdProperty = uuid::Uuid;
7553
7554/// Type alias for `pgIsPrimaryProperty`.
7555pub type PgIsPrimaryProperty = bool;
7556
7557/// Type alias for `pgNameProperty`.
7558pub type PgNameProperty = String;
7559
7560/// Type alias for `pgPassword`.
7561pub type PgPassword = String;
7562
7563/// Type alias for `pgPitrRestoreTargetProperty`.
7564pub type PgPitrRestoreTargetProperty = chrono::DateTime<chrono::Utc>;
7565
7566/// Type alias for `pgRegion`.
7567pub type PgRegion = String;
7568
7569/// Type alias for `pgStorageSize`.
7570pub type PgStorageSize = i64;
7571
7572/// Type alias for `pgTags`.
7573pub type PgTags = Vec<ResourceTagsV1>;
7574
7575/// `Activity` from the ClickHouse Cloud API.
7576#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7577pub struct Activity {
7578    #[serde(rename = "actorDetails", default)]
7579    pub actor_details: String,
7580    #[serde(rename = "actorId", default)]
7581    pub actor_id: String,
7582    #[serde(rename = "actorIpAddress", default)]
7583    pub actor_ip_address: String,
7584    #[serde(rename = "actorType", default)]
7585    pub actor_type: ActivityActortype,
7586    #[serde(rename = "createdAt", default)]
7587    pub created_at: chrono::DateTime<chrono::Utc>,
7588    #[serde(default)]
7589    pub id: String,
7590    #[serde(rename = "keyUpdateType", default)]
7591    pub key_update_type: ActivityKeyupdatetype,
7592    #[serde(rename = "organizationId", default)]
7593    pub organization_id: String,
7594    #[serde(rename = "serviceId", default)]
7595    pub service_id: String,
7596    #[serde(rename = "targetKeyId", default)]
7597    pub target_key_id: String,
7598    #[serde(default)]
7599    pub r#type: ActivityType,
7600    #[serde(rename = "userAgent", default)]
7601    pub user_agent: String,
7602}
7603
7604/// `ApiKey` from the ClickHouse Cloud API.
7605#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7606pub struct ApiKey {
7607    #[serde(rename = "assignedRoles", default)]
7608    pub assigned_roles: Vec<AssignedRole>,
7609    #[serde(rename = "createdAt", default)]
7610    pub created_at: chrono::DateTime<chrono::Utc>,
7611    #[serde(rename = "expireAt", skip_serializing_if = "Option::is_none", default)]
7612    pub expire_at: Option<chrono::DateTime<chrono::Utc>>,
7613    #[serde(default)]
7614    pub id: uuid::Uuid,
7615    #[serde(rename = "ipAccessList", default)]
7616    pub ip_access_list: Vec<IpAccessListEntry>,
7617    #[serde(rename = "keySuffix", default)]
7618    pub key_suffix: String,
7619    #[serde(default)]
7620    pub name: String,
7621    #[serde(default)]
7622    pub roles: Vec<String>,
7623    #[serde(default)]
7624    pub state: ApiKeyState,
7625    #[serde(rename = "usedAt", default)]
7626    pub used_at: chrono::DateTime<chrono::Utc>,
7627}
7628
7629/// `ApiKeyHashData` from the ClickHouse Cloud API.
7630#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7631pub struct ApiKeyHashData {
7632    #[serde(rename = "keyIdHash", default)]
7633    pub key_id_hash: String,
7634    #[serde(rename = "keyIdSuffix", default)]
7635    pub key_id_suffix: String,
7636    #[serde(rename = "keySecretHash", default)]
7637    pub key_secret_hash: String,
7638}
7639
7640/// `ApiKeyPatchRequest` from the ClickHouse Cloud API.
7641#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7642pub struct ApiKeyPatchRequest {
7643    #[serde(rename = "assignedRoleIds", skip_serializing_if = "Option::is_none", default)]
7644    pub assigned_role_ids: Option<Vec<uuid::Uuid>>,
7645    #[serde(rename = "expireAt", skip_serializing_if = "Option::is_none", default)]
7646    pub expire_at: Option<chrono::DateTime<chrono::Utc>>,
7647    #[serde(rename = "ipAccessList", skip_serializing_if = "Option::is_none", default)]
7648    pub ip_access_list: Option<Vec<IpAccessListEntry>>,
7649    #[serde(skip_serializing_if = "Option::is_none", default)]
7650    pub name: Option<String>,
7651    #[serde(skip_serializing_if = "Option::is_none", default)]
7652    pub roles: Option<Vec<String>>,
7653    #[serde(skip_serializing_if = "Option::is_none", default)]
7654    pub state: Option<ApiKeyPatchRequestState>,
7655}
7656
7657/// `ApiKeyPostRequest` from the ClickHouse Cloud API.
7658#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7659pub struct ApiKeyPostRequest {
7660    #[serde(rename = "assignedRoleIds", default)]
7661    pub assigned_role_ids: Vec<uuid::Uuid>,
7662    #[serde(rename = "expireAt", skip_serializing_if = "Option::is_none", default)]
7663    pub expire_at: Option<chrono::DateTime<chrono::Utc>>,
7664    #[serde(rename = "hashData", skip_serializing_if = "Option::is_none", default)]
7665    pub hash_data: Option<ApiKeyHashData>,
7666    #[serde(rename = "ipAccessList", default)]
7667    pub ip_access_list: Vec<IpAccessListEntry>,
7668    #[serde(default)]
7669    pub name: String,
7670    #[serde(skip_serializing_if = "Option::is_none", default)]
7671    pub roles: Option<Vec<String>>,
7672    #[serde(default)]
7673    pub state: ApiKeyPostRequestState,
7674}
7675
7676/// `ApiKeyPostResponse` from the ClickHouse Cloud API.
7677#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7678pub struct ApiKeyPostResponse {
7679    #[serde(default)]
7680    pub key: ApiKey,
7681    #[serde(rename = "keyId", default)]
7682    pub key_id: String,
7683    #[serde(rename = "keySecret", default)]
7684    pub key_secret: String,
7685}
7686
7687/// `AssignedRole` from the ClickHouse Cloud API.
7688#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7689pub struct AssignedRole {
7690    #[serde(rename = "roleId", default)]
7691    pub role_id: uuid::Uuid,
7692    #[serde(rename = "roleName", default)]
7693    pub role_name: String,
7694    #[serde(rename = "roleType", default)]
7695    pub role_type: AssignedRoleRoletype,
7696}
7697
7698/// `AwsBackupBucket` from the ClickHouse Cloud API.
7699#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7700pub struct AwsBackupBucket {
7701    #[serde(rename = "bucketPath", default)]
7702    pub bucket_path: String,
7703    #[serde(rename = "bucketProvider", default)]
7704    pub bucket_provider: AwsBackupBucketBucketprovider,
7705    #[serde(rename = "iamRoleArn", default)]
7706    pub iam_role_arn: String,
7707    #[serde(rename = "iamRoleSessionName", default)]
7708    pub iam_role_session_name: String,
7709    #[serde(default)]
7710    pub id: uuid::Uuid,
7711}
7712
7713/// `AwsBackupBucketPatchRequestV1` from the ClickHouse Cloud API.
7714#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7715pub struct AwsBackupBucketPatchRequestV1 {
7716    #[serde(rename = "bucketPath", default)]
7717    pub bucket_path: String,
7718    #[serde(rename = "bucketProvider", default)]
7719    pub bucket_provider: AwsBackupBucketPatchRequestV1Bucketprovider,
7720    #[serde(rename = "iamRoleArn", default)]
7721    pub iam_role_arn: String,
7722    #[serde(rename = "iamRoleSessionName", skip_serializing_if = "Option::is_none", default)]
7723    pub iam_role_session_name: Option<String>,
7724}
7725
7726/// `AwsBackupBucketPostRequestV1` from the ClickHouse Cloud API.
7727#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7728pub struct AwsBackupBucketPostRequestV1 {
7729    #[serde(rename = "bucketPath", default)]
7730    pub bucket_path: String,
7731    #[serde(rename = "bucketProvider", default)]
7732    pub bucket_provider: AwsBackupBucketPostRequestV1Bucketprovider,
7733    #[serde(rename = "iamRoleArn", default)]
7734    pub iam_role_arn: String,
7735    #[serde(rename = "iamRoleSessionName", default)]
7736    pub iam_role_session_name: String,
7737}
7738
7739/// `AwsBackupBucketProperties` from the ClickHouse Cloud API.
7740#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7741pub struct AwsBackupBucketProperties {
7742    #[serde(rename = "bucketPath", default)]
7743    pub bucket_path: String,
7744    #[serde(rename = "bucketProvider", default)]
7745    pub bucket_provider: AwsBackupBucketPropertiesBucketprovider,
7746    #[serde(rename = "iamRoleArn", default)]
7747    pub iam_role_arn: String,
7748    #[serde(rename = "iamRoleSessionName", default)]
7749    pub iam_role_session_name: String,
7750}
7751
7752/// `AzureBackupBucket` from the ClickHouse Cloud API.
7753#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7754pub struct AzureBackupBucket {
7755    #[serde(rename = "bucketProvider", default)]
7756    pub bucket_provider: AzureBackupBucketBucketprovider,
7757    #[serde(rename = "containerName", default)]
7758    pub container_name: String,
7759    #[serde(default)]
7760    pub id: uuid::Uuid,
7761}
7762
7763/// `AzureBackupBucketPatchRequestV1` from the ClickHouse Cloud API.
7764#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7765pub struct AzureBackupBucketPatchRequestV1 {
7766    #[serde(rename = "bucketProvider", default)]
7767    pub bucket_provider: AzureBackupBucketPatchRequestV1Bucketprovider,
7768    #[serde(rename = "connectionString", default)]
7769    pub connection_string: String,
7770    #[serde(rename = "containerName", default)]
7771    pub container_name: String,
7772}
7773
7774/// `AzureBackupBucketPostRequestV1` from the ClickHouse Cloud API.
7775#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7776pub struct AzureBackupBucketPostRequestV1 {
7777    #[serde(rename = "bucketProvider", default)]
7778    pub bucket_provider: AzureBackupBucketPostRequestV1Bucketprovider,
7779    #[serde(rename = "connectionString", default)]
7780    pub connection_string: String,
7781    #[serde(rename = "containerName", default)]
7782    pub container_name: String,
7783}
7784
7785/// `AzureBackupBucketProperties` from the ClickHouse Cloud API.
7786#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7787pub struct AzureBackupBucketProperties {
7788    #[serde(rename = "bucketProvider", default)]
7789    pub bucket_provider: AzureBackupBucketPropertiesBucketprovider,
7790    #[serde(rename = "containerName", default)]
7791    pub container_name: String,
7792}
7793
7794/// `AzureEventHub` from the ClickHouse Cloud API.
7795#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7796pub struct AzureEventHub {
7797    #[serde(rename = "connectionString", default)]
7798    pub connection_string: String,
7799}
7800
7801/// `Backup` from the ClickHouse Cloud API.
7802#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7803pub struct Backup {
7804    #[serde(rename = "backupName", default)]
7805    pub backup_name: String,
7806    #[serde(default)]
7807    pub bucket: serde_json::Value,
7808    #[serde(rename = "durationInSeconds", default)]
7809    pub duration_in_seconds: f64,
7810    #[serde(rename = "finishedAt", default)]
7811    pub finished_at: chrono::DateTime<chrono::Utc>,
7812    #[serde(default)]
7813    pub id: uuid::Uuid,
7814    #[serde(rename = "serviceId", default)]
7815    pub service_id: String,
7816    #[serde(rename = "sizeInBytes", default)]
7817    pub size_in_bytes: f64,
7818    #[serde(rename = "startedAt", default)]
7819    pub started_at: chrono::DateTime<chrono::Utc>,
7820    #[serde(default)]
7821    pub status: BackupStatus,
7822    #[serde(default)]
7823    pub r#type: BackupType,
7824}
7825
7826/// `BackupConfiguration` from the ClickHouse Cloud API.
7827#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7828pub struct BackupConfiguration {
7829    #[serde(rename = "backupPeriodInHours", default)]
7830    pub backup_period_in_hours: f64,
7831    #[serde(rename = "backupRetentionPeriodInHours", default)]
7832    pub backup_retention_period_in_hours: f64,
7833    #[serde(rename = "backupStartTime", default)]
7834    pub backup_start_time: String,
7835}
7836
7837/// `BackupConfigurationPatchRequest` from the ClickHouse Cloud API.
7838#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7839pub struct BackupConfigurationPatchRequest {
7840    #[serde(rename = "backupPeriodInHours", skip_serializing_if = "Option::is_none", default)]
7841    pub backup_period_in_hours: Option<f64>,
7842    #[serde(rename = "backupRetentionPeriodInHours", skip_serializing_if = "Option::is_none", default)]
7843    pub backup_retention_period_in_hours: Option<f64>,
7844    #[serde(rename = "backupStartTime", skip_serializing_if = "Option::is_none", default)]
7845    pub backup_start_time: Option<String>,
7846}
7847
7848/// `BasePostgresService` from the ClickHouse Cloud API.
7849#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7850pub struct BasePostgresService {
7851    #[serde(rename = "haType", default)]
7852    pub ha_type: PgHaType,
7853    #[serde(default)]
7854    pub name: PgNameProperty,
7855    #[serde(rename = "postgresVersion", default)]
7856    pub postgres_version: PgVersion,
7857    #[serde(default)]
7858    pub provider: PgProvider,
7859    #[serde(default)]
7860    pub region: PgRegion,
7861    #[serde(default)]
7862    pub size: PgSize,
7863    #[serde(rename = "storageSize", default)]
7864    pub storage_size: PgStorageSize,
7865    #[serde(default)]
7866    pub tags: PgTags,
7867}
7868
7869/// `ByocConfig` from the ClickHouse Cloud API.
7870#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7871pub struct ByocConfig {
7872    #[serde(rename = "accountName", default)]
7873    pub account_name: String,
7874    #[serde(rename = "cloudProvider", default)]
7875    pub cloud_provider: ByocConfigCloudprovider,
7876    #[serde(rename = "displayName", default)]
7877    pub display_name: String,
7878    #[serde(default)]
7879    pub id: String,
7880    #[serde(rename = "regionId", default)]
7881    pub region_id: ByocConfigRegionid,
7882    #[serde(default)]
7883    pub state: ByocConfigState,
7884}
7885
7886/// `ByocInfrastructurePatchRequest` from the ClickHouse Cloud API.
7887#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7888pub struct ByocInfrastructurePatchRequest {
7889    #[serde(rename = "displayName", skip_serializing_if = "Option::is_none", default)]
7890    pub display_name: Option<String>,
7891}
7892
7893/// `ByocInfrastructurePostRequest` from the ClickHouse Cloud API.
7894#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7895pub struct ByocInfrastructurePostRequest {
7896    #[serde(rename = "accountId", default)]
7897    pub account_id: String,
7898    #[serde(rename = "availabilityZoneSuffixes", default)]
7899    pub availability_zone_suffixes: Vec<String>,
7900    #[serde(rename = "displayName", default)]
7901    pub display_name: String,
7902    #[serde(rename = "regionId", default)]
7903    pub region_id: ByocInfrastructurePostRequestRegionid,
7904    #[serde(rename = "vpcCidrRange", default)]
7905    pub vpc_cidr_range: String,
7906}
7907
7908/// `ClickPipe` from the ClickHouse Cloud API.
7909#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7910pub struct ClickPipe {
7911    #[serde(rename = "createdAt", default)]
7912    pub created_at: chrono::DateTime<chrono::Utc>,
7913    #[serde(default)]
7914    pub destination: ClickPipeDestination,
7915    #[serde(rename = "fieldMappings", default)]
7916    pub field_mappings: Vec<ClickPipeFieldMapping>,
7917    #[serde(default)]
7918    pub id: uuid::Uuid,
7919    #[serde(default)]
7920    pub name: String,
7921    #[serde(default)]
7922    pub scaling: ClickPipeScaling,
7923    #[serde(rename = "serviceId", default)]
7924    pub service_id: uuid::Uuid,
7925    #[serde(default)]
7926    pub settings: ClickPipeSettings,
7927    #[serde(default)]
7928    pub source: ClickPipeSource,
7929    #[serde(default)]
7930    pub state: ClickPipeState,
7931    #[serde(rename = "updatedAt", default)]
7932    pub updated_at: chrono::DateTime<chrono::Utc>,
7933}
7934
7935/// `ClickPipeBigQueryPipeSettings` from the ClickHouse Cloud API.
7936#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7937pub struct ClickPipeBigQueryPipeSettings {
7938    #[serde(rename = "allowNullableColumns", default)]
7939    pub allow_nullable_columns: bool,
7940    #[serde(rename = "initialLoadParallelism", default)]
7941    pub initial_load_parallelism: f64,
7942    #[serde(rename = "replicationMode", default)]
7943    pub replication_mode: ClickPipeBigQueryPipeSettingsReplicationmode,
7944    #[serde(rename = "snapshotNumRowsPerPartition", default)]
7945    pub snapshot_num_rows_per_partition: f64,
7946    #[serde(rename = "snapshotNumberOfParallelTables", default)]
7947    pub snapshot_number_of_parallel_tables: f64,
7948}
7949
7950/// `ClickPipeBigQueryPipeTableMapping` from the ClickHouse Cloud API.
7951#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7952pub struct ClickPipeBigQueryPipeTableMapping {
7953    #[serde(rename = "excludedColumns", default)]
7954    pub excluded_columns: Vec<String>,
7955    #[serde(rename = "sortingKeys", default)]
7956    pub sorting_keys: Vec<String>,
7957    #[serde(rename = "sourceDatasetName", default)]
7958    pub source_dataset_name: String,
7959    #[serde(rename = "sourceTable", default)]
7960    pub source_table: String,
7961    #[serde(rename = "tableEngine", default)]
7962    pub table_engine: ClickPipeBigQueryPipeTableMappingTableengine,
7963    #[serde(rename = "targetTable", default)]
7964    pub target_table: String,
7965    #[serde(rename = "useCustomSortingKey", default)]
7966    pub use_custom_sorting_key: bool,
7967}
7968
7969/// `ClickPipeBigQuerySource` from the ClickHouse Cloud API.
7970#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7971pub struct ClickPipeBigQuerySource {
7972    #[serde(default)]
7973    pub settings: ClickPipeBigQueryPipeSettings,
7974    #[serde(rename = "snapshotStagingPath", default)]
7975    pub snapshot_staging_path: String,
7976    #[serde(rename = "tableMappings", default)]
7977    pub table_mappings: Vec<ClickPipeBigQueryPipeTableMapping>,
7978}
7979
7980/// `ClickPipeDestination` from the ClickHouse Cloud API.
7981#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7982pub struct ClickPipeDestination {
7983    #[serde(default)]
7984    pub columns: Vec<ClickPipeDestinationColumn>,
7985    #[serde(default)]
7986    pub database: String,
7987    #[serde(rename = "managedTable", default)]
7988    pub managed_table: bool,
7989    #[serde(default)]
7990    pub table: String,
7991    #[serde(rename = "tableDefinition", default)]
7992    pub table_definition: ClickPipeDestinationTableDefinition,
7993}
7994
7995/// `ClickPipeDestinationColumn` from the ClickHouse Cloud API.
7996#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7997pub struct ClickPipeDestinationColumn {
7998    #[serde(default)]
7999    pub name: String,
8000    #[serde(default)]
8001    pub r#type: String,
8002}
8003
8004/// `ClickPipeDestinationTableDefinition` from the ClickHouse Cloud API.
8005#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8006pub struct ClickPipeDestinationTableDefinition {
8007    #[serde(default)]
8008    pub engine: ClickPipeDestinationTableEngine,
8009    // API rejects empty strings / empty arrays for these keys. Spec has no
8010    // `required` array so the description-heuristic treats them as required;
8011    // skip at serialize time when unset instead of modeling as Option<T>.
8012    #[serde(rename = "partitionBy", skip_serializing_if = "String::is_empty", default)]
8013    pub partition_by: String,
8014    #[serde(rename = "primaryKey", skip_serializing_if = "String::is_empty", default)]
8015    pub primary_key: String,
8016    #[serde(rename = "sortingKey", skip_serializing_if = "Vec::is_empty", default)]
8017    pub sorting_key: Vec<String>,
8018}
8019
8020/// `ClickPipeDestinationTableEngine` from the ClickHouse Cloud API.
8021#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8022pub struct ClickPipeDestinationTableEngine {
8023    // columnIds only valid for SummingMergeTree. Skip when empty to avoid API
8024    // rejection for MergeTree/ReplacingMergeTree/Null engines. Spec has no
8025    // `required` array so the heuristic treats this as required; API rejects
8026    // empty values despite that.
8027    #[serde(rename = "columnIds", skip_serializing_if = "Vec::is_empty", default)]
8028    pub column_ids: Vec<String>,
8029    #[serde(default)]
8030    pub r#type: ClickPipeDestinationTableEngineType,
8031    #[serde(rename = "versionColumnId", skip_serializing_if = "Option::is_none", default)]
8032    pub version_column_id: Option<String>,
8033}
8034
8035/// `ClickPipeFieldMapping` from the ClickHouse Cloud API.
8036#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8037pub struct ClickPipeFieldMapping {
8038    #[serde(rename = "destinationField", default)]
8039    pub destination_field: String,
8040    #[serde(rename = "sourceField", default)]
8041    pub source_field: String,
8042}
8043
8044/// `ClickPipeKafkaOffset` from the ClickHouse Cloud API.
8045#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8046pub struct ClickPipeKafkaOffset {
8047    #[serde(default)]
8048    pub strategy: ClickPipeKafkaOffsetStrategy,
8049    #[serde(skip_serializing_if = "Option::is_none", default)]
8050    pub timestamp: Option<String>,
8051}
8052
8053/// `ClickPipeKafkaSchemaRegistry` from the ClickHouse Cloud API.
8054#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8055pub struct ClickPipeKafkaSchemaRegistry {
8056    #[serde(default)]
8057    pub authentication: ClickPipeKafkaSchemaRegistryAuthentication,
8058    #[serde(rename = "caCertificate", skip_serializing_if = "Option::is_none", default)]
8059    pub ca_certificate: Option<String>,
8060    #[serde(default)]
8061    pub url: String,
8062}
8063
8064/// `ClickPipeKafkaSchemaRegistryCredentials` from the ClickHouse Cloud API.
8065#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8066pub struct ClickPipeKafkaSchemaRegistryCredentials {
8067    #[serde(default)]
8068    pub password: String,
8069    #[serde(default)]
8070    pub username: String,
8071}
8072
8073/// `ClickPipeKafkaSource` from the ClickHouse Cloud API.
8074#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8075pub struct ClickPipeKafkaSource {
8076    #[serde(default)]
8077    pub authentication: ClickPipeKafkaSourceAuthentication,
8078    #[serde(default)]
8079    pub brokers: String,
8080    #[serde(rename = "caCertificate", skip_serializing_if = "Option::is_none", default)]
8081    pub ca_certificate: Option<String>,
8082    #[serde(rename = "consumerGroup", skip_serializing_if = "Option::is_none", default)]
8083    pub consumer_group: Option<String>,
8084    #[serde(default)]
8085    pub format: ClickPipeKafkaSourceFormat,
8086    #[serde(rename = "iamRole", skip_serializing_if = "Option::is_none", default)]
8087    pub iam_role: Option<String>,
8088    #[serde(skip_serializing_if = "Option::is_none", default)]
8089    pub offset: Option<ClickPipeKafkaOffset>,
8090    #[serde(rename = "reversePrivateEndpointIds", default, deserialize_with = "crate::serde_helpers::null_to_empty")]
8091    pub reverse_private_endpoint_ids: Vec<String>,
8092    #[serde(rename = "schemaRegistry", skip_serializing_if = "Option::is_none", default)]
8093    pub schema_registry: Option<ClickPipeKafkaSchemaRegistry>,
8094    #[serde(default)]
8095    pub topics: String,
8096    #[serde(default)]
8097    pub r#type: ClickPipeKafkaSourceType,
8098}
8099
8100/// `ClickPipeKinesisSource` from the ClickHouse Cloud API.
8101#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8102pub struct ClickPipeKinesisSource {
8103    #[serde(default)]
8104    pub authentication: ClickPipeKinesisSourceAuthentication,
8105    #[serde(default)]
8106    pub format: ClickPipeKinesisSourceFormat,
8107    #[serde(rename = "iamRole", skip_serializing_if = "Option::is_none", default)]
8108    pub iam_role: Option<String>,
8109    #[serde(rename = "iteratorType", default)]
8110    pub iterator_type: ClickPipeKinesisSourceIteratortype,
8111    #[serde(default)]
8112    pub region: String,
8113    #[serde(rename = "streamName", default)]
8114    pub stream_name: String,
8115    #[serde(skip_serializing_if = "Option::is_none", default)]
8116    pub timestamp: Option<i64>,
8117    #[serde(rename = "useEnhancedFanOut", skip_serializing_if = "Option::is_none", default)]
8118    pub use_enhanced_fan_out: Option<bool>,
8119}
8120
8121/// `ClickPipeMongoDBPipeSettings` from the ClickHouse Cloud API.
8122#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8123pub struct ClickPipeMongoDBPipeSettings {
8124    #[serde(rename = "deleteOnMerge", skip_serializing_if = "Option::is_none", default)]
8125    pub delete_on_merge: Option<bool>,
8126    #[serde(rename = "pullBatchSize", skip_serializing_if = "Option::is_none", default)]
8127    pub pull_batch_size: Option<i64>,
8128    #[serde(rename = "replicationMode")]
8129    pub replication_mode: ClickPipeMongoDBPipeSettingsReplicationmode,
8130    #[serde(rename = "snapshotNumRowsPerPartition", skip_serializing_if = "Option::is_none", default)]
8131    pub snapshot_num_rows_per_partition: Option<i64>,
8132    #[serde(rename = "snapshotNumberOfParallelTables", skip_serializing_if = "Option::is_none", default)]
8133    pub snapshot_number_of_parallel_tables: Option<i64>,
8134    #[serde(rename = "syncIntervalSeconds", skip_serializing_if = "Option::is_none", default)]
8135    pub sync_interval_seconds: Option<i64>,
8136    #[serde(rename = "useJsonNativeFormat", skip_serializing_if = "Option::is_none", default)]
8137    pub use_json_native_format: Option<bool>,
8138}
8139
8140/// `ClickPipeMongoDBPipeTableMapping` from the ClickHouse Cloud API.
8141#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8142pub struct ClickPipeMongoDBPipeTableMapping {
8143    #[serde(rename = "sourceCollection")]
8144    pub source_collection: String,
8145    #[serde(rename = "sourceDatabaseName")]
8146    pub source_database_name: String,
8147    #[serde(rename = "tableEngine", skip_serializing_if = "Option::is_none", default)]
8148    pub table_engine: Option<ClickPipeMongoDBPipeTableMappingTableengine>,
8149    #[serde(rename = "targetTable")]
8150    pub target_table: String,
8151}
8152
8153/// `ClickPipeMongoDBSource` from the ClickHouse Cloud API.
8154#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8155pub struct ClickPipeMongoDBSource {
8156    #[serde(rename = "caCertificate", skip_serializing_if = "Option::is_none", default)]
8157    pub ca_certificate: Option<String>,
8158    #[serde(rename = "disableTls", skip_serializing_if = "Option::is_none", default)]
8159    pub disable_tls: Option<bool>,
8160    #[serde(rename = "readPreference")]
8161    pub read_preference: ClickPipeMongoDBSourceReadpreference,
8162    #[serde(skip_serializing_if = "Option::is_none", default)]
8163    pub settings: Option<ClickPipeMongoDBPipeSettings>,
8164    #[serde(rename = "tableMappings", skip_serializing_if = "Option::is_none", default)]
8165    pub table_mappings: Option<Vec<ClickPipeMongoDBPipeTableMapping>>,
8166    #[serde(rename = "tlsHost", skip_serializing_if = "Option::is_none", default)]
8167    pub tls_host: Option<String>,
8168    pub uri: String,
8169}
8170
8171/// `ClickPipeMutateBigQuerySource` from the ClickHouse Cloud API.
8172#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8173pub struct ClickPipeMutateBigQuerySource {
8174    #[serde(default)]
8175    pub credentials: ServiceAccount,
8176    #[serde(default)]
8177    pub settings: ClickPipeBigQueryPipeSettings,
8178    #[serde(rename = "snapshotStagingPath", default)]
8179    pub snapshot_staging_path: String,
8180    #[serde(rename = "tableMappings", default)]
8181    pub table_mappings: Vec<ClickPipeBigQueryPipeTableMapping>,
8182}
8183
8184/// `ClickPipeMutateDestination` from the ClickHouse Cloud API.
8185#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8186pub struct ClickPipeMutateDestination {
8187    // The spec describes `columns`, `managedTable`, `table`, and
8188    // `tableDefinition` as "Required field for all pipe types except database
8189    // pipes (Postgres, MySQL, BigQuery)" — all four must be omitted entirely
8190    // for database pipes. Modeled with skip-when-empty / Option so callers can
8191    // build a single destination type and database pipes serialize cleanly.
8192    #[serde(skip_serializing_if = "Vec::is_empty", default)]
8193    pub columns: Vec<ClickPipeDestinationColumn>,
8194    #[serde(default)]
8195    pub database: String,
8196    #[serde(rename = "managedTable", skip_serializing_if = "Option::is_none", default)]
8197    pub managed_table: Option<bool>,
8198    #[serde(skip_serializing_if = "Vec::is_empty", default)]
8199    pub roles: Vec<String>,
8200    #[serde(skip_serializing_if = "Option::is_none", default)]
8201    pub table: Option<String>,
8202    #[serde(rename = "tableDefinition", skip_serializing_if = "Option::is_none", default)]
8203    pub table_definition: Option<ClickPipeDestinationTableDefinition>,
8204}
8205
8206/// `ClickPipeMutateKafkaSchemaRegistry` from the ClickHouse Cloud API.
8207#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8208pub struct ClickPipeMutateKafkaSchemaRegistry {
8209    #[serde(default)]
8210    pub authentication: ClickPipeMutateKafkaSchemaRegistryAuthentication,
8211    #[serde(rename = "caCertificate", skip_serializing_if = "Option::is_none", default)]
8212    pub ca_certificate: Option<String>,
8213    #[serde(default)]
8214    pub credentials: ClickPipeKafkaSchemaRegistryCredentials,
8215    #[serde(default)]
8216    pub url: String,
8217}
8218
8219/// `ClickPipeMutateMongoDBSource` from the ClickHouse Cloud API.
8220#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8221pub struct ClickPipeMutateMongoDBSource {
8222    #[serde(rename = "caCertificate", skip_serializing_if = "Option::is_none", default)]
8223    pub ca_certificate: Option<String>,
8224    #[serde(skip_serializing_if = "Option::is_none", default)]
8225    pub credentials: Option<PLAIN>,
8226    #[serde(rename = "disableTls", skip_serializing_if = "Option::is_none", default)]
8227    pub disable_tls: Option<bool>,
8228    #[serde(rename = "readPreference")]
8229    pub read_preference: ClickPipeMutateMongoDBSourceReadpreference,
8230    pub settings: ClickPipeMongoDBPipeSettings,
8231    #[serde(rename = "tableMappings")]
8232    pub table_mappings: Vec<ClickPipeMongoDBPipeTableMapping>,
8233    #[serde(rename = "tlsHost", skip_serializing_if = "Option::is_none", default)]
8234    pub tls_host: Option<String>,
8235    pub uri: String,
8236}
8237
8238/// `ClickPipeMutateMySQLSource` from the ClickHouse Cloud API.
8239#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8240pub struct ClickPipeMutateMySQLSource {
8241    #[serde(skip_serializing_if = "Option::is_none", default)]
8242    pub authentication: Option<ClickPipeMutateMySQLSourceAuthentication>,
8243    #[serde(rename = "caCertificate", skip_serializing_if = "Option::is_none", default)]
8244    pub ca_certificate: Option<String>,
8245    #[serde(skip_serializing_if = "Option::is_none", default)]
8246    pub credentials: Option<PLAIN>,
8247    #[serde(rename = "disableTls", skip_serializing_if = "Option::is_none", default)]
8248    pub disable_tls: Option<bool>,
8249    pub host: String,
8250    #[serde(rename = "iamRole", skip_serializing_if = "Option::is_none", default)]
8251    pub iam_role: Option<String>,
8252    pub port: i64,
8253    pub settings: ClickPipeMySQLPipeSettings,
8254    #[serde(rename = "skipCertVerification", skip_serializing_if = "Option::is_none", default)]
8255    pub skip_cert_verification: Option<bool>,
8256    #[serde(rename = "tableMappings")]
8257    pub table_mappings: Vec<ClickPipeMySQLPipeTableMapping>,
8258    #[serde(rename = "tlsHost", skip_serializing_if = "Option::is_none", default)]
8259    pub tls_host: Option<String>,
8260    #[serde(skip_serializing_if = "Option::is_none", default)]
8261    pub r#type: Option<ClickPipeMutateMySQLSourceType>,
8262}
8263
8264/// `ClickPipeMutatePostgresSource` from the ClickHouse Cloud API.
8265#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8266pub struct ClickPipeMutatePostgresSource {
8267    #[serde(default)]
8268    pub authentication: ClickPipeMutatePostgresSourceAuthentication,
8269    // caCertificate is `undefinedOr(isValidPEMCertificate)` server-side — sending
8270    // `""` (the bare-String default) fails PEM validation. Modeled as
8271    // `Option<String>` so callers can omit it.
8272    #[serde(rename = "caCertificate", skip_serializing_if = "Option::is_none", default)]
8273    pub ca_certificate: Option<String>,
8274    #[serde(default)]
8275    pub credentials: PLAIN,
8276    #[serde(default)]
8277    pub database: String,
8278    #[serde(default)]
8279    pub host: String,
8280    // iamRole only applies to RDS-style Postgres + IAM_ROLE auth. Spec marks
8281    // it required but the server rejects "" for Basic-auth Postgres. Modeled
8282    // as Option<String> so callers can omit it; same pattern as ca_certificate.
8283    #[serde(rename = "iamRole", skip_serializing_if = "Option::is_none", default)]
8284    pub iam_role: Option<String>,
8285    #[serde(default)]
8286    pub port: i64,
8287    #[serde(default)]
8288    pub settings: ClickPipePostgresPipeSettings,
8289    #[serde(rename = "tableMappings", default)]
8290    pub table_mappings: Vec<ClickPipePostgresPipeTableMapping>,
8291    // tlsHost is only set when the broker cert SAN doesn't match `host`.
8292    // Optional in practice; server rejects "" with PEM-style validation.
8293    #[serde(rename = "tlsHost", skip_serializing_if = "Option::is_none", default)]
8294    pub tls_host: Option<String>,
8295    #[serde(skip_serializing_if = "Option::is_none", default)]
8296    pub r#type: Option<ClickPipeMutatePostgresSourceType>,
8297}
8298
8299/// `ClickPipeMySQLPipeSettings` from the ClickHouse Cloud API.
8300#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8301pub struct ClickPipeMySQLPipeSettings {
8302    #[serde(rename = "allowNullableColumns", skip_serializing_if = "Option::is_none", default)]
8303    pub allow_nullable_columns: Option<bool>,
8304    #[serde(rename = "deleteOnMerge", skip_serializing_if = "Option::is_none", default)]
8305    pub delete_on_merge: Option<bool>,
8306    #[serde(rename = "initialLoadParallelism", skip_serializing_if = "Option::is_none", default)]
8307    pub initial_load_parallelism: Option<i64>,
8308    #[serde(rename = "pullBatchSize", skip_serializing_if = "Option::is_none", default)]
8309    pub pull_batch_size: Option<i64>,
8310    #[serde(rename = "replicationMechanism", skip_serializing_if = "Option::is_none", default)]
8311    pub replication_mechanism: Option<ClickPipeMySQLPipeSettingsReplicationmechanism>,
8312    #[serde(rename = "replicationMode")]
8313    pub replication_mode: ClickPipeMySQLPipeSettingsReplicationmode,
8314    #[serde(rename = "snapshotNumRowsPerPartition", skip_serializing_if = "Option::is_none", default)]
8315    pub snapshot_num_rows_per_partition: Option<i64>,
8316    #[serde(rename = "snapshotNumberOfParallelTables", skip_serializing_if = "Option::is_none", default)]
8317    pub snapshot_number_of_parallel_tables: Option<i64>,
8318    #[serde(rename = "syncIntervalSeconds", skip_serializing_if = "Option::is_none", default)]
8319    pub sync_interval_seconds: Option<i64>,
8320    #[serde(rename = "useCompression", skip_serializing_if = "Option::is_none", default)]
8321    pub use_compression: Option<bool>,
8322}
8323
8324/// `ClickPipeMySQLPipeTableMapping` from the ClickHouse Cloud API.
8325#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8326pub struct ClickPipeMySQLPipeTableMapping {
8327    #[serde(rename = "excludedColumns", skip_serializing_if = "Option::is_none", default)]
8328    pub excluded_columns: Option<Vec<String>>,
8329    #[serde(rename = "partitionKey", skip_serializing_if = "Option::is_none", default)]
8330    pub partition_key: Option<String>,
8331    #[serde(rename = "sortingKeys", skip_serializing_if = "Option::is_none", default)]
8332    pub sorting_keys: Option<Vec<String>>,
8333    #[serde(rename = "sourceSchemaName")]
8334    pub source_schema_name: String,
8335    #[serde(rename = "sourceTable")]
8336    pub source_table: String,
8337    #[serde(rename = "tableEngine", skip_serializing_if = "Option::is_none", default)]
8338    pub table_engine: Option<ClickPipeMySQLPipeTableMappingTableengine>,
8339    #[serde(rename = "targetTable")]
8340    pub target_table: String,
8341    #[serde(rename = "useCustomSortingKey", skip_serializing_if = "Option::is_none", default)]
8342    pub use_custom_sorting_key: Option<bool>,
8343}
8344
8345/// `ClickPipeMySQLSource` from the ClickHouse Cloud API.
8346#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8347pub struct ClickPipeMySQLSource {
8348    #[serde(skip_serializing_if = "Option::is_none", default)]
8349    pub authentication: Option<ClickPipeMySQLSourceAuthentication>,
8350    #[serde(rename = "caCertificate", skip_serializing_if = "Option::is_none", default)]
8351    pub ca_certificate: Option<String>,
8352    #[serde(rename = "disableTls", skip_serializing_if = "Option::is_none", default)]
8353    pub disable_tls: Option<bool>,
8354    pub host: String,
8355    #[serde(rename = "iamRole", skip_serializing_if = "Option::is_none", default)]
8356    pub iam_role: Option<String>,
8357    pub port: i64,
8358    pub settings: ClickPipeMySQLPipeSettings,
8359    #[serde(rename = "skipCertVerification", skip_serializing_if = "Option::is_none", default)]
8360    pub skip_cert_verification: Option<bool>,
8361    #[serde(rename = "tableMappings")]
8362    pub table_mappings: Vec<ClickPipeMySQLPipeTableMapping>,
8363    #[serde(rename = "tlsHost", skip_serializing_if = "Option::is_none", default)]
8364    pub tls_host: Option<String>,
8365    #[serde(skip_serializing_if = "Option::is_none", default)]
8366    pub r#type: Option<ClickPipeMySQLSourceType>,
8367}
8368
8369/// `ClickPipeObjectStorageSource` from the ClickHouse Cloud API.
8370#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8371pub struct ClickPipeObjectStorageSource {
8372    #[serde(skip_serializing_if = "Option::is_none", default)]
8373    pub authentication: Option<ClickPipeObjectStorageSourceAuthentication>,
8374    #[serde(rename = "azureContainerName", skip_serializing_if = "Option::is_none", default)]
8375    pub azure_container_name: Option<String>,
8376    #[serde(skip_serializing_if = "Option::is_none", default)]
8377    pub compression: Option<ClickPipeObjectStorageSourceCompression>,
8378    #[serde(rename = "connectionString", skip_serializing_if = "Option::is_none", default)]
8379    pub connection_string: Option<String>,
8380    #[serde(skip_serializing_if = "Option::is_none", default)]
8381    pub delimiter: Option<String>,
8382    #[serde(default)]
8383    pub format: ClickPipeObjectStorageSourceFormat,
8384    #[serde(rename = "iamRole", skip_serializing_if = "Option::is_none", default)]
8385    pub iam_role: Option<String>,
8386    #[serde(rename = "isContinuous", skip_serializing_if = "Option::is_none", default)]
8387    pub is_continuous: Option<bool>,
8388    #[serde(skip_serializing_if = "Option::is_none", default)]
8389    pub path: Option<String>,
8390    #[serde(rename = "queueUrl", skip_serializing_if = "Option::is_none", default)]
8391    pub queue_url: Option<String>,
8392    #[serde(default)]
8393    pub r#type: ClickPipeObjectStorageSourceType,
8394    #[serde(default)]
8395    pub url: String,
8396}
8397
8398/// `ClickPipePatchDestination` from the ClickHouse Cloud API.
8399#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8400pub struct ClickPipePatchDestination {
8401    #[serde(default)]
8402    pub columns: Vec<ClickPipeDestinationColumn>,
8403}
8404
8405/// `ClickPipePatchKafkaSource` from the ClickHouse Cloud API.
8406#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8407pub struct ClickPipePatchKafkaSource {
8408    #[serde(skip_serializing_if = "Option::is_none", default)]
8409    pub authentication: Option<ClickPipePatchKafkaSourceAuthentication>,
8410    #[serde(rename = "caCertificate", skip_serializing_if = "Option::is_none", default)]
8411    pub ca_certificate: Option<String>,
8412    #[serde(default)]
8413    pub credentials: serde_json::Value,
8414    #[serde(rename = "iamRole", skip_serializing_if = "Option::is_none", default)]
8415    pub iam_role: Option<String>,
8416    #[serde(rename = "reversePrivateEndpointIds", default, deserialize_with = "crate::serde_helpers::null_to_empty")]
8417    pub reverse_private_endpoint_ids: Vec<String>,
8418}
8419
8420/// `ClickPipePatchKinesisSource` from the ClickHouse Cloud API.
8421#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8422pub struct ClickPipePatchKinesisSource {
8423    #[serde(rename = "accessKey", skip_serializing_if = "Option::is_none", default)]
8424    pub access_key: Option<MskIamUser>,
8425    #[serde(skip_serializing_if = "Option::is_none", default)]
8426    pub authentication: Option<ClickPipePatchKinesisSourceAuthentication>,
8427    #[serde(rename = "iamRole", skip_serializing_if = "Option::is_none", default)]
8428    pub iam_role: Option<String>,
8429}
8430
8431/// `ClickPipePatchMongoDBPipeRemoveTableMapping` from the ClickHouse Cloud API.
8432#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8433pub struct ClickPipePatchMongoDBPipeRemoveTableMapping {
8434    #[serde(rename = "sourceCollection")]
8435    pub source_collection: Option<String>,
8436    #[serde(rename = "sourceDatabaseName")]
8437    pub source_database_name: Option<String>,
8438    #[serde(rename = "tableEngine", skip_serializing_if = "Option::is_none", default)]
8439    pub table_engine: Option<ClickPipePatchMongoDBPipeRemoveTableMappingTableengine>,
8440    #[serde(rename = "targetTable")]
8441    pub target_table: Option<String>,
8442}
8443
8444/// `ClickPipePatchMongoDBPipeSettings` from the ClickHouse Cloud API.
8445#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8446pub struct ClickPipePatchMongoDBPipeSettings {
8447    #[serde(rename = "pullBatchSize", skip_serializing_if = "Option::is_none", default)]
8448    pub pull_batch_size: Option<i64>,
8449    #[serde(rename = "syncIntervalSeconds", skip_serializing_if = "Option::is_none", default)]
8450    pub sync_interval_seconds: Option<i64>,
8451}
8452
8453/// `ClickPipePatchMongoDBSource` from the ClickHouse Cloud API.
8454#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8455pub struct ClickPipePatchMongoDBSource {
8456    #[serde(rename = "caCertificate", skip_serializing_if = "Option::is_none", default)]
8457    pub ca_certificate: Option<String>,
8458    #[serde(skip_serializing_if = "Option::is_none", default)]
8459    pub credentials: Option<PLAIN>,
8460    #[serde(rename = "disableTls", skip_serializing_if = "Option::is_none", default)]
8461    pub disable_tls: Option<bool>,
8462    #[serde(rename = "readPreference", skip_serializing_if = "Option::is_none", default)]
8463    pub read_preference: Option<ClickPipePatchMongoDBSourceReadpreference>,
8464    #[serde(skip_serializing_if = "Option::is_none", default)]
8465    pub settings: Option<ClickPipePatchMongoDBPipeSettings>,
8466    #[serde(rename = "tableMappingsToAdd", skip_serializing_if = "Option::is_none", default)]
8467    pub table_mappings_to_add: Option<Vec<ClickPipeMongoDBPipeTableMapping>>,
8468    #[serde(rename = "tableMappingsToRemove", skip_serializing_if = "Option::is_none", default)]
8469    pub table_mappings_to_remove: Option<Vec<ClickPipePatchMongoDBPipeRemoveTableMapping>>,
8470    #[serde(rename = "tlsHost", skip_serializing_if = "Option::is_none", default)]
8471    pub tls_host: Option<String>,
8472    pub uri: Option<String>,
8473}
8474
8475/// `ClickPipePatchMySQLPipeRemoveTableMapping` from the ClickHouse Cloud API.
8476#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8477pub struct ClickPipePatchMySQLPipeRemoveTableMapping {
8478    #[serde(rename = "partitionKey", skip_serializing_if = "Option::is_none", default)]
8479    pub partition_key: Option<String>,
8480    #[serde(rename = "sourceSchemaName")]
8481    pub source_schema_name: Option<String>,
8482    #[serde(rename = "sourceTable")]
8483    pub source_table: Option<String>,
8484    #[serde(rename = "tableEngine", skip_serializing_if = "Option::is_none", default)]
8485    pub table_engine: Option<ClickPipePatchMySQLPipeRemoveTableMappingTableengine>,
8486    #[serde(rename = "targetTable")]
8487    pub target_table: Option<String>,
8488}
8489
8490/// `ClickPipePatchMySQLPipeSettings` from the ClickHouse Cloud API.
8491#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8492pub struct ClickPipePatchMySQLPipeSettings {
8493    #[serde(rename = "pullBatchSize", skip_serializing_if = "Option::is_none", default)]
8494    pub pull_batch_size: Option<i64>,
8495    #[serde(rename = "syncIntervalSeconds", skip_serializing_if = "Option::is_none", default)]
8496    pub sync_interval_seconds: Option<i64>,
8497    #[serde(rename = "useCompression", skip_serializing_if = "Option::is_none", default)]
8498    pub use_compression: Option<bool>,
8499}
8500
8501/// `ClickPipePatchMySQLSource` from the ClickHouse Cloud API.
8502#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8503pub struct ClickPipePatchMySQLSource {
8504    #[serde(skip_serializing_if = "Option::is_none", default)]
8505    pub authentication: Option<ClickPipePatchMySQLSourceAuthentication>,
8506    #[serde(rename = "caCertificate", skip_serializing_if = "Option::is_none", default)]
8507    pub ca_certificate: Option<String>,
8508    #[serde(skip_serializing_if = "Option::is_none", default)]
8509    pub credentials: Option<PLAIN>,
8510    #[serde(rename = "disableTls", skip_serializing_if = "Option::is_none", default)]
8511    pub disable_tls: Option<bool>,
8512    pub host: Option<String>,
8513    #[serde(rename = "iamRole", skip_serializing_if = "Option::is_none", default)]
8514    pub iam_role: Option<String>,
8515    pub port: Option<i64>,
8516    #[serde(skip_serializing_if = "Option::is_none", default)]
8517    pub settings: Option<ClickPipePatchMySQLPipeSettings>,
8518    #[serde(rename = "skipCertVerification", skip_serializing_if = "Option::is_none", default)]
8519    pub skip_cert_verification: Option<bool>,
8520    #[serde(rename = "tableMappingsToAdd", skip_serializing_if = "Option::is_none", default)]
8521    pub table_mappings_to_add: Option<Vec<ClickPipeMySQLPipeTableMapping>>,
8522    #[serde(rename = "tableMappingsToRemove", skip_serializing_if = "Option::is_none", default)]
8523    pub table_mappings_to_remove: Option<Vec<ClickPipePatchMySQLPipeRemoveTableMapping>>,
8524    #[serde(rename = "tlsHost", skip_serializing_if = "Option::is_none", default)]
8525    pub tls_host: Option<String>,
8526}
8527
8528/// `ClickPipePatchObjectStorageSource` from the ClickHouse Cloud API.
8529#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8530pub struct ClickPipePatchObjectStorageSource {
8531    #[serde(rename = "accessKey", skip_serializing_if = "Option::is_none", default)]
8532    pub access_key: Option<MskIamUser>,
8533    #[serde(skip_serializing_if = "Option::is_none", default)]
8534    pub authentication: Option<ClickPipePatchObjectStorageSourceAuthentication>,
8535    #[serde(rename = "azureContainerName", skip_serializing_if = "Option::is_none", default)]
8536    pub azure_container_name: Option<String>,
8537    #[serde(rename = "connectionString", skip_serializing_if = "Option::is_none", default)]
8538    pub connection_string: Option<String>,
8539    #[serde(rename = "iamRole", skip_serializing_if = "Option::is_none", default)]
8540    pub iam_role: Option<String>,
8541    #[serde(skip_serializing_if = "Option::is_none", default)]
8542    pub path: Option<String>,
8543    #[serde(rename = "serviceAccountKey", skip_serializing_if = "Option::is_none", default)]
8544    pub service_account_key: Option<String>,
8545}
8546
8547/// `ClickPipePatchPostgresPipeRemoveTableMapping` from the ClickHouse Cloud API.
8548#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8549pub struct ClickPipePatchPostgresPipeRemoveTableMapping {
8550    #[serde(rename = "partitionKey", skip_serializing_if = "Option::is_none", default)]
8551    pub partition_key: Option<String>,
8552    #[serde(rename = "sourceSchemaName", skip_serializing_if = "Option::is_none", default)]
8553    pub source_schema_name: Option<String>,
8554    #[serde(rename = "sourceTable", skip_serializing_if = "Option::is_none", default)]
8555    pub source_table: Option<String>,
8556    #[serde(rename = "tableEngine", skip_serializing_if = "Option::is_none", default)]
8557    pub table_engine: Option<ClickPipePatchPostgresPipeRemoveTableMappingTableengine>,
8558    #[serde(rename = "targetTable", skip_serializing_if = "Option::is_none", default)]
8559    pub target_table: Option<String>,
8560}
8561
8562/// `ClickPipePatchPostgresPipeSettings` from the ClickHouse Cloud API.
8563#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8564pub struct ClickPipePatchPostgresPipeSettings {
8565    #[serde(rename = "pullBatchSize", skip_serializing_if = "Option::is_none", default)]
8566    pub pull_batch_size: Option<i64>,
8567    #[serde(rename = "syncIntervalSeconds", skip_serializing_if = "Option::is_none", default)]
8568    pub sync_interval_seconds: Option<i64>,
8569}
8570
8571/// `ClickPipePatchPostgresSource` from the ClickHouse Cloud API.
8572#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8573pub struct ClickPipePatchPostgresSource {
8574    #[serde(rename = "caCertificate", skip_serializing_if = "Option::is_none", default)]
8575    pub ca_certificate: Option<String>,
8576    #[serde(default)]
8577    pub credentials: PLAIN,
8578    #[serde(skip_serializing_if = "Option::is_none", default)]
8579    pub database: Option<String>,
8580    #[serde(skip_serializing_if = "Option::is_none", default)]
8581    pub host: Option<String>,
8582    #[serde(skip_serializing_if = "Option::is_none", default)]
8583    pub port: Option<i64>,
8584    #[serde(default)]
8585    pub settings: ClickPipePatchPostgresPipeSettings,
8586    #[serde(rename = "tableMappingsToAdd", default)]
8587    pub table_mappings_to_add: Vec<ClickPipePostgresPipeTableMapping>,
8588    #[serde(rename = "tableMappingsToRemove", default)]
8589    pub table_mappings_to_remove: Vec<ClickPipePatchPostgresPipeRemoveTableMapping>,
8590    #[serde(rename = "tlsHost", skip_serializing_if = "Option::is_none", default)]
8591    pub tls_host: Option<String>,
8592}
8593
8594/// `ClickPipePatchPubSubSource` from the ClickHouse Cloud API.
8595#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8596pub struct ClickPipePatchPubSubSource {
8597    #[serde(rename = "ackDeadline", skip_serializing_if = "Option::is_none", default)]
8598    pub ack_deadline: Option<i64>,
8599    pub authentication: Option<ClickPipePatchPubSubSourceAuthentication>,
8600    #[serde(rename = "serviceAccountKey")]
8601    pub service_account_key: Option<ServiceAccount>,
8602}
8603
8604/// `ClickPipePatchRequest` from the ClickHouse Cloud API.
8605#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8606pub struct ClickPipePatchRequest {
8607    #[serde(skip_serializing_if = "Option::is_none", default)]
8608    pub destination: Option<ClickPipePatchDestination>,
8609    #[serde(rename = "fieldMappings", skip_serializing_if = "Option::is_none", default)]
8610    pub field_mappings: Option<Vec<ClickPipeFieldMapping>>,
8611    #[serde(skip_serializing_if = "Option::is_none", default)]
8612    pub name: Option<String>,
8613    #[serde(skip_serializing_if = "Option::is_none", default)]
8614    pub settings: Option<ClickPipeSettings>,
8615    #[serde(skip_serializing_if = "Option::is_none", default)]
8616    pub source: Option<ClickPipePatchSource>,
8617}
8618
8619/// `ClickPipePatchSource` from the ClickHouse Cloud API.
8620#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8621pub struct ClickPipePatchSource {
8622    #[serde(skip_serializing_if = "Option::is_none", default)]
8623    pub kafka: Option<ClickPipePatchKafkaSource>,
8624    #[serde(skip_serializing_if = "Option::is_none", default)]
8625    pub kinesis: Option<ClickPipePatchKinesisSource>,
8626    #[serde(skip_serializing_if = "Option::is_none", default)]
8627    pub mongodb: Option<ClickPipePatchMongoDBSource>,
8628    #[serde(skip_serializing_if = "Option::is_none", default)]
8629    pub mysql: Option<ClickPipePatchMySQLSource>,
8630    #[serde(rename = "objectStorage", skip_serializing_if = "Option::is_none", default)]
8631    pub object_storage: Option<ClickPipePatchObjectStorageSource>,
8632    #[serde(skip_serializing_if = "Option::is_none", default)]
8633    pub postgres: Option<ClickPipePatchPostgresSource>,
8634    #[serde(skip_serializing_if = "Option::is_none", default)]
8635    pub pubsub: Option<ClickPipePatchPubSubSource>,
8636    #[serde(rename = "validateSamples", default)]
8637    pub validate_samples: bool,
8638}
8639
8640/// `ClickPipePostKafkaSource` from the ClickHouse Cloud API.
8641#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8642pub struct ClickPipePostKafkaSource {
8643    #[serde(default)]
8644    pub authentication: ClickPipePostKafkaSourceAuthentication,
8645    #[serde(default)]
8646    pub brokers: String,
8647    #[serde(rename = "caCertificate", skip_serializing_if = "Option::is_none", default)]
8648    pub ca_certificate: Option<String>,
8649    #[serde(rename = "consumerGroup", skip_serializing_if = "Option::is_none", default)]
8650    pub consumer_group: Option<String>,
8651    #[serde(default)]
8652    pub credentials: serde_json::Value,
8653    #[serde(default)]
8654    pub format: ClickPipePostKafkaSourceFormat,
8655    #[serde(rename = "iamRole", skip_serializing_if = "Option::is_none", default)]
8656    pub iam_role: Option<String>,
8657    #[serde(skip_serializing_if = "Option::is_none", default)]
8658    pub offset: Option<ClickPipeKafkaOffset>,
8659    #[serde(rename = "reversePrivateEndpointIds", default, deserialize_with = "crate::serde_helpers::null_to_empty")]
8660    pub reverse_private_endpoint_ids: Vec<String>,
8661    #[serde(rename = "schemaRegistry", skip_serializing_if = "Option::is_none", default)]
8662    pub schema_registry: Option<ClickPipeMutateKafkaSchemaRegistry>,
8663    #[serde(default)]
8664    pub topics: String,
8665    #[serde(default)]
8666    pub r#type: ClickPipePostKafkaSourceType,
8667}
8668
8669/// `ClickPipePostKinesisSource` from the ClickHouse Cloud API.
8670#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8671pub struct ClickPipePostKinesisSource {
8672    #[serde(rename = "accessKey", skip_serializing_if = "Option::is_none", default)]
8673    pub access_key: Option<MskIamUser>,
8674    #[serde(default)]
8675    pub authentication: ClickPipePostKinesisSourceAuthentication,
8676    #[serde(default)]
8677    pub format: ClickPipePostKinesisSourceFormat,
8678    #[serde(rename = "iamRole", skip_serializing_if = "Option::is_none", default)]
8679    pub iam_role: Option<String>,
8680    #[serde(rename = "iteratorType", default)]
8681    pub iterator_type: ClickPipePostKinesisSourceIteratortype,
8682    #[serde(default)]
8683    pub region: String,
8684    #[serde(rename = "streamName", default)]
8685    pub stream_name: String,
8686    #[serde(skip_serializing_if = "Option::is_none", default)]
8687    pub timestamp: Option<i64>,
8688    #[serde(rename = "useEnhancedFanOut", skip_serializing_if = "Option::is_none", default)]
8689    pub use_enhanced_fan_out: Option<bool>,
8690}
8691
8692/// `ClickPipePostObjectStorageSource` from the ClickHouse Cloud API.
8693#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8694pub struct ClickPipePostObjectStorageSource {
8695    #[serde(rename = "accessKey", skip_serializing_if = "Option::is_none", default)]
8696    pub access_key: Option<MskIamUser>,
8697    #[serde(skip_serializing_if = "Option::is_none", default)]
8698    pub authentication: Option<ClickPipePostObjectStorageSourceAuthentication>,
8699    #[serde(rename = "azureContainerName", skip_serializing_if = "Option::is_none", default)]
8700    pub azure_container_name: Option<String>,
8701    #[serde(skip_serializing_if = "Option::is_none", default)]
8702    pub compression: Option<ClickPipePostObjectStorageSourceCompression>,
8703    #[serde(rename = "connectionString", skip_serializing_if = "Option::is_none", default)]
8704    pub connection_string: Option<String>,
8705    #[serde(skip_serializing_if = "Option::is_none", default)]
8706    pub delimiter: Option<String>,
8707    #[serde(default)]
8708    pub format: ClickPipePostObjectStorageSourceFormat,
8709    #[serde(rename = "iamRole", skip_serializing_if = "Option::is_none", default)]
8710    pub iam_role: Option<String>,
8711    #[serde(rename = "isContinuous", skip_serializing_if = "Option::is_none", default)]
8712    pub is_continuous: Option<bool>,
8713    #[serde(skip_serializing_if = "Option::is_none", default)]
8714    pub path: Option<String>,
8715    #[serde(rename = "queueUrl", skip_serializing_if = "Option::is_none", default)]
8716    pub queue_url: Option<String>,
8717    #[serde(rename = "serviceAccountKey", skip_serializing_if = "Option::is_none", default)]
8718    pub service_account_key: Option<String>,
8719    #[serde(default)]
8720    pub r#type: ClickPipePostObjectStorageSourceType,
8721    #[serde(default)]
8722    pub url: String,
8723}
8724
8725/// `ClickPipePostPubSubSource` from the ClickHouse Cloud API.
8726#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8727pub struct ClickPipePostPubSubSource {
8728    #[serde(rename = "ackDeadline", skip_serializing_if = "Option::is_none", default)]
8729    pub ack_deadline: Option<i64>,
8730    pub authentication: ClickPipePostPubSubSourceAuthentication,
8731    #[serde(rename = "enableOrdering", skip_serializing_if = "Option::is_none", default)]
8732    pub enable_ordering: Option<bool>,
8733    #[serde(skip_serializing_if = "Option::is_none", default)]
8734    pub filter: Option<String>,
8735    pub format: ClickPipePostPubSubSourceFormat,
8736    #[serde(rename = "projectId")]
8737    pub project_id: String,
8738    #[serde(rename = "seekSnapshot", skip_serializing_if = "Option::is_none", default)]
8739    pub seek_snapshot: Option<String>,
8740    #[serde(rename = "seekTimestamp", skip_serializing_if = "Option::is_none", default)]
8741    pub seek_timestamp: Option<chrono::DateTime<chrono::Utc>>,
8742    #[serde(rename = "seekType")]
8743    pub seek_type: ClickPipePostPubSubSourceSeektype,
8744    #[serde(rename = "serviceAccountKey")]
8745    pub service_account_key: ServiceAccount,
8746    pub topic: String,
8747}
8748
8749/// `ClickPipePostRequest` from the ClickHouse Cloud API.
8750#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8751pub struct ClickPipePostRequest {
8752    #[serde(default)]
8753    pub destination: ClickPipeMutateDestination,
8754    // Empty arrays rejected by some API paths and never useful on create —
8755    // skip when empty. Non-Option to match the spec description heuristic.
8756    #[serde(rename = "fieldMappings", skip_serializing_if = "Vec::is_empty", default)]
8757    pub field_mappings: Vec<ClickPipeFieldMapping>,
8758    #[serde(default)]
8759    pub name: String,
8760    // scaling block default-serializes as {replicas: 0, ...} which the API
8761    // rejects ("replicas: Not between 1 and 40"). Modeled as Option so the
8762    // whole block is omitted when the caller doesn't set it.
8763    #[serde(skip_serializing_if = "Option::is_none", default)]
8764    pub scaling: Option<ClickPipeScaling>,
8765    // settings default-serializes as `{}` which the API also rejects.
8766    #[serde(skip_serializing_if = "Option::is_none", default)]
8767    pub settings: Option<ClickPipeSettings>,
8768    #[serde(default)]
8769    pub source: ClickPipePostSource,
8770}
8771
8772/// `ClickPipePostSource` from the ClickHouse Cloud API.
8773#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8774pub struct ClickPipePostSource {
8775    #[serde(skip_serializing_if = "Option::is_none", default)]
8776    pub bigquery: Option<ClickPipeMutateBigQuerySource>,
8777    #[serde(skip_serializing_if = "Option::is_none", default)]
8778    pub kafka: Option<ClickPipePostKafkaSource>,
8779    #[serde(skip_serializing_if = "Option::is_none", default)]
8780    pub kinesis: Option<ClickPipePostKinesisSource>,
8781    #[serde(skip_serializing_if = "Option::is_none", default)]
8782    pub mongodb: Option<ClickPipeMutateMongoDBSource>,
8783    #[serde(skip_serializing_if = "Option::is_none", default)]
8784    pub mysql: Option<ClickPipeMutateMySQLSource>,
8785    #[serde(rename = "objectStorage", skip_serializing_if = "Option::is_none", default)]
8786    pub object_storage: Option<ClickPipePostObjectStorageSource>,
8787    #[serde(skip_serializing_if = "Option::is_none", default)]
8788    pub postgres: Option<ClickPipeMutatePostgresSource>,
8789    #[serde(skip_serializing_if = "Option::is_none", default)]
8790    pub pubsub: Option<ClickPipePostPubSubSource>,
8791    #[serde(rename = "validateSamples", default)]
8792    pub validate_samples: bool,
8793}
8794
8795/// `ClickPipePostgresPipeSettings` from the ClickHouse Cloud API.
8796#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8797pub struct ClickPipePostgresPipeSettings {
8798    #[serde(rename = "allowNullableColumns", default)]
8799    pub allow_nullable_columns: bool,
8800    #[serde(rename = "deleteOnMerge", default)]
8801    pub delete_on_merge: bool,
8802    #[serde(rename = "enableFailoverSlots", default)]
8803    pub enable_failover_slots: bool,
8804    #[serde(rename = "initialLoadParallelism", skip_serializing_if = "Option::is_none", default)]
8805    pub initial_load_parallelism: Option<i64>,
8806    #[serde(rename = "publicationName", skip_serializing_if = "Option::is_none", default)]
8807    pub publication_name: Option<String>,
8808    #[serde(rename = "pullBatchSize", skip_serializing_if = "Option::is_none", default)]
8809    pub pull_batch_size: Option<i64>,
8810    #[serde(rename = "replicationMode", default)]
8811    pub replication_mode: ClickPipePostgresPipeSettingsReplicationmode,
8812    #[serde(rename = "replicationSlotName", skip_serializing_if = "Option::is_none", default)]
8813    pub replication_slot_name: Option<String>,
8814    #[serde(rename = "snapshotNumRowsPerPartition", skip_serializing_if = "Option::is_none", default)]
8815    pub snapshot_num_rows_per_partition: Option<i64>,
8816    #[serde(rename = "snapshotNumberOfParallelTables", skip_serializing_if = "Option::is_none", default)]
8817    pub snapshot_number_of_parallel_tables: Option<i64>,
8818    #[serde(rename = "syncIntervalSeconds", skip_serializing_if = "Option::is_none", default)]
8819    pub sync_interval_seconds: Option<i64>,
8820}
8821
8822/// `ClickPipePostgresPipeTableMapping` from the ClickHouse Cloud API.
8823#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8824pub struct ClickPipePostgresPipeTableMapping {
8825    #[serde(rename = "excludedColumns", default)]
8826    pub excluded_columns: Vec<String>,
8827    #[serde(rename = "partitionKey", default)]
8828    pub partition_key: String,
8829    #[serde(rename = "sortingKeys", default)]
8830    pub sorting_keys: Vec<String>,
8831    #[serde(rename = "sourceSchemaName", default)]
8832    pub source_schema_name: String,
8833    #[serde(rename = "sourceTable", default)]
8834    pub source_table: String,
8835    #[serde(rename = "tableEngine", default)]
8836    pub table_engine: ClickPipePostgresPipeTableMappingTableengine,
8837    #[serde(rename = "targetTable", default)]
8838    pub target_table: String,
8839    #[serde(rename = "useCustomSortingKey", default)]
8840    pub use_custom_sorting_key: bool,
8841}
8842
8843/// `ClickPipePostgresSource` from the ClickHouse Cloud API.
8844#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8845pub struct ClickPipePostgresSource {
8846    #[serde(default)]
8847    pub authentication: ClickPipePostgresSourceAuthentication,
8848    #[serde(rename = "caCertificate", default)]
8849    pub ca_certificate: String,
8850    #[serde(default)]
8851    pub database: String,
8852    #[serde(default)]
8853    pub host: String,
8854    #[serde(rename = "iamRole", default)]
8855    pub iam_role: String,
8856    #[serde(default)]
8857    pub port: i64,
8858    #[serde(default)]
8859    pub settings: ClickPipePostgresPipeSettings,
8860    #[serde(rename = "tableMappings", default)]
8861    pub table_mappings: Vec<ClickPipePostgresPipeTableMapping>,
8862    #[serde(rename = "tlsHost", default)]
8863    pub tls_host: String,
8864    #[serde(skip_serializing_if = "Option::is_none", default)]
8865    pub r#type: Option<ClickPipePostgresSourceType>,
8866}
8867
8868/// `ClickPipePubSubSource` from the ClickHouse Cloud API.
8869#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8870pub struct ClickPipePubSubSource {
8871    #[serde(rename = "ackDeadline", skip_serializing_if = "Option::is_none", default)]
8872    pub ack_deadline: Option<i64>,
8873    pub authentication: ClickPipePubSubSourceAuthentication,
8874    #[serde(rename = "enableOrdering", skip_serializing_if = "Option::is_none", default)]
8875    pub enable_ordering: Option<bool>,
8876    #[serde(skip_serializing_if = "Option::is_none", default)]
8877    pub filter: Option<String>,
8878    pub format: ClickPipePubSubSourceFormat,
8879    #[serde(rename = "projectId")]
8880    pub project_id: String,
8881    #[serde(rename = "seekSnapshot", skip_serializing_if = "Option::is_none", default)]
8882    pub seek_snapshot: Option<String>,
8883    #[serde(rename = "seekTimestamp", skip_serializing_if = "Option::is_none", default)]
8884    pub seek_timestamp: Option<chrono::DateTime<chrono::Utc>>,
8885    #[serde(rename = "seekType")]
8886    pub seek_type: ClickPipePubSubSourceSeektype,
8887    pub topic: String,
8888}
8889
8890/// `ClickPipeScaling` from the ClickHouse Cloud API.
8891#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8892pub struct ClickPipeScaling {
8893    #[serde(default)]
8894    pub concurrency: i64,
8895    #[serde(rename = "replicaCpuMillicores", default)]
8896    pub replica_cpu_millicores: i64,
8897    #[serde(rename = "replicaMemoryGb", default)]
8898    pub replica_memory_gb: f64,
8899    #[serde(default)]
8900    pub replicas: i64,
8901}
8902
8903/// `ClickPipeScalingPatchRequest` from the ClickHouse Cloud API.
8904#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8905pub struct ClickPipeScalingPatchRequest {
8906    #[serde(skip_serializing_if = "Option::is_none", default)]
8907    pub concurrency: Option<i64>,
8908    #[serde(rename = "replicaCpuMillicores", skip_serializing_if = "Option::is_none", default)]
8909    pub replica_cpu_millicores: Option<i64>,
8910    #[serde(rename = "replicaMemoryGb", skip_serializing_if = "Option::is_none", default)]
8911    pub replica_memory_gb: Option<f64>,
8912    #[serde(skip_serializing_if = "Option::is_none", default)]
8913    pub replicas: Option<i64>,
8914}
8915
8916/// `ClickPipeSettings` from the ClickHouse Cloud API.
8917#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8918pub struct ClickPipeSettings {
8919    #[serde(skip_serializing_if = "Option::is_none", default)]
8920    pub clickhouse_max_download_threads: Option<i64>,
8921    #[serde(skip_serializing_if = "Option::is_none", default)]
8922    pub clickhouse_max_insert_threads: Option<i64>,
8923    #[serde(skip_serializing_if = "Option::is_none", default)]
8924    pub clickhouse_max_threads: Option<i64>,
8925    #[serde(skip_serializing_if = "Option::is_none", default)]
8926    pub clickhouse_min_insert_block_size_bytes: Option<i64>,
8927    #[serde(skip_serializing_if = "Option::is_none", default)]
8928    pub clickhouse_parallel_distributed_insert_select: Option<i64>,
8929    #[serde(skip_serializing_if = "Option::is_none", default)]
8930    pub clickhouse_parallel_view_processing: Option<bool>,
8931    #[serde(skip_serializing_if = "Option::is_none", default)]
8932    pub object_storage_concurrency: Option<i64>,
8933    #[serde(skip_serializing_if = "Option::is_none", default)]
8934    pub object_storage_max_file_count: Option<i64>,
8935    #[serde(skip_serializing_if = "Option::is_none", default)]
8936    pub object_storage_max_insert_bytes: Option<i64>,
8937    #[serde(skip_serializing_if = "Option::is_none", default)]
8938    pub object_storage_polling_interval_ms: Option<i64>,
8939    #[serde(skip_serializing_if = "Option::is_none", default)]
8940    pub object_storage_use_cluster_function: Option<bool>,
8941    #[serde(skip_serializing_if = "Option::is_none", default)]
8942    pub streaming_max_insert_wait_ms: Option<i64>,
8943}
8944
8945/// `ClickPipeSettingsPutRequest` from the ClickHouse Cloud API.
8946#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8947pub struct ClickPipeSettingsPutRequest {
8948    #[serde(skip_serializing_if = "Option::is_none", default)]
8949    pub clickhouse_max_download_threads: Option<i64>,
8950    #[serde(skip_serializing_if = "Option::is_none", default)]
8951    pub clickhouse_max_insert_threads: Option<i64>,
8952    #[serde(skip_serializing_if = "Option::is_none", default)]
8953    pub clickhouse_max_threads: Option<i64>,
8954    #[serde(skip_serializing_if = "Option::is_none", default)]
8955    pub clickhouse_min_insert_block_size_bytes: Option<i64>,
8956    #[serde(skip_serializing_if = "Option::is_none", default)]
8957    pub clickhouse_parallel_distributed_insert_select: Option<i64>,
8958    #[serde(skip_serializing_if = "Option::is_none", default)]
8959    pub clickhouse_parallel_view_processing: Option<bool>,
8960    #[serde(skip_serializing_if = "Option::is_none", default)]
8961    pub object_storage_concurrency: Option<i64>,
8962    #[serde(skip_serializing_if = "Option::is_none", default)]
8963    pub object_storage_max_file_count: Option<i64>,
8964    #[serde(skip_serializing_if = "Option::is_none", default)]
8965    pub object_storage_max_insert_bytes: Option<i64>,
8966    #[serde(skip_serializing_if = "Option::is_none", default)]
8967    pub object_storage_polling_interval_ms: Option<i64>,
8968    #[serde(skip_serializing_if = "Option::is_none", default)]
8969    pub object_storage_use_cluster_function: Option<bool>,
8970    #[serde(skip_serializing_if = "Option::is_none", default)]
8971    pub streaming_max_insert_wait_ms: Option<i64>,
8972}
8973
8974/// `ClickPipeSource` from the ClickHouse Cloud API.
8975#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8976pub struct ClickPipeSource {
8977    #[serde(skip_serializing_if = "Option::is_none", default)]
8978    pub bigquery: Option<ClickPipeBigQuerySource>,
8979    #[serde(skip_serializing_if = "Option::is_none", default)]
8980    pub kafka: Option<ClickPipeKafkaSource>,
8981    #[serde(skip_serializing_if = "Option::is_none", default)]
8982    pub kinesis: Option<ClickPipeKinesisSource>,
8983    #[serde(skip_serializing_if = "Option::is_none", default)]
8984    pub mongodb: Option<ClickPipeMongoDBSource>,
8985    #[serde(skip_serializing_if = "Option::is_none", default)]
8986    pub mysql: Option<ClickPipeMySQLSource>,
8987    #[serde(rename = "objectStorage", skip_serializing_if = "Option::is_none", default)]
8988    pub object_storage: Option<ClickPipeObjectStorageSource>,
8989    #[serde(skip_serializing_if = "Option::is_none", default)]
8990    pub postgres: Option<ClickPipePostgresSource>,
8991    #[serde(skip_serializing_if = "Option::is_none", default)]
8992    pub pubsub: Option<ClickPipePubSubSource>,
8993}
8994
8995/// `ClickPipeStatePatchRequest` from the ClickHouse Cloud API.
8996#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
8997pub struct ClickPipeStatePatchRequest {
8998    #[serde(skip_serializing_if = "Option::is_none", default)]
8999    pub command: Option<ClickPipeStatePatchRequestCommand>,
9000}
9001
9002/// `ClickPipesCdcScaling` from the ClickHouse Cloud API.
9003#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9004pub struct ClickPipesCdcScaling {
9005    #[serde(rename = "replicaCpuMillicores", default)]
9006    pub replica_cpu_millicores: i64,
9007    #[serde(rename = "replicaMemoryGb", default)]
9008    pub replica_memory_gb: f64,
9009}
9010
9011/// `ClickPipesCdcScalingPatchRequest` from the ClickHouse Cloud API.
9012#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9013pub struct ClickPipesCdcScalingPatchRequest {
9014    #[serde(rename = "replicaCpuMillicores", skip_serializing_if = "Option::is_none", default)]
9015    pub replica_cpu_millicores: Option<i64>,
9016    #[serde(rename = "replicaMemoryGb", skip_serializing_if = "Option::is_none", default)]
9017    pub replica_memory_gb: Option<f64>,
9018}
9019
9020/// `ClickStackAggregatedColumn` from the ClickHouse Cloud API.
9021#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9022pub struct ClickStackAggregatedColumn {
9023    #[serde(rename = "aggFn")]
9024    pub agg_fn: String,
9025    #[serde(rename = "mvColumn")]
9026    pub mv_column: String,
9027    #[serde(rename = "sourceColumn", skip_serializing_if = "Option::is_none", default)]
9028    pub source_column: Option<String>,
9029}
9030
9031/// `ClickStackAlertChannelEmail` from the ClickHouse Cloud API.
9032#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9033pub struct ClickStackAlertChannelEmail {
9034    #[serde(rename = "emailRecipients")]
9035    pub email_recipients: Vec<String>,
9036    pub r#type: ClickStackAlertChannelEmailType,
9037}
9038
9039/// `ClickStackAlertChannelWebhook` from the ClickHouse Cloud API.
9040#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9041pub struct ClickStackAlertChannelWebhook {
9042    #[serde(skip_serializing_if = "Option::is_none", default)]
9043    pub severity: Option<ClickStackAlertChannelWebhookSeverity>,
9044    #[serde(rename = "slackChannelId", skip_serializing_if = "Option::is_none", default)]
9045    pub slack_channel_id: Option<String>,
9046    pub r#type: ClickStackAlertChannelWebhookType,
9047    #[serde(rename = "webhookId")]
9048    pub webhook_id: String,
9049    #[serde(rename = "webhookService", skip_serializing_if = "Option::is_none", default)]
9050    pub webhook_service: Option<String>,
9051}
9052
9053/// `ClickStackAlertExecutionError` from the ClickHouse Cloud API.
9054#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9055pub struct ClickStackAlertExecutionError {
9056    #[serde(default)]
9057    pub message: String,
9058    #[serde(default)]
9059    pub timestamp: chrono::DateTime<chrono::Utc>,
9060    #[serde(default)]
9061    pub r#type: ClickStackAlertExecutionErrorType,
9062}
9063
9064/// `ClickStackAlertResponse` from the ClickHouse Cloud API.
9065#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9066pub struct ClickStackAlertResponse {
9067    #[serde(default)]
9068    pub channel: ClickStackAlertChannel,
9069    #[serde(rename = "createdAt", skip_serializing_if = "Option::is_none", default)]
9070    pub created_at: Option<chrono::DateTime<chrono::Utc>>,
9071    #[serde(rename = "dashboardId", skip_serializing_if = "Option::is_none", default)]
9072    pub dashboard_id: Option<String>,
9073    #[serde(rename = "executionErrors", default)]
9074    pub execution_errors: Vec<ClickStackAlertExecutionError>,
9075    #[serde(rename = "groupBy", skip_serializing_if = "Option::is_none", default)]
9076    pub group_by: Option<String>,
9077    #[serde(default)]
9078    pub id: String,
9079    #[serde(default)]
9080    pub interval: ClickStackAlertResponseInterval,
9081    #[serde(skip_serializing_if = "Option::is_none", default)]
9082    pub message: Option<String>,
9083    #[serde(skip_serializing_if = "Option::is_none", default)]
9084    pub name: Option<String>,
9085    #[serde(skip_serializing_if = "Option::is_none", default)]
9086    pub note: Option<String>,
9087    #[serde(rename = "savedSearchId", skip_serializing_if = "Option::is_none", default)]
9088    pub saved_search_id: Option<String>,
9089    #[serde(rename = "scheduleOffsetMinutes", skip_serializing_if = "Option::is_none", default)]
9090    pub schedule_offset_minutes: Option<i64>,
9091    #[serde(rename = "scheduleStartAt", skip_serializing_if = "Option::is_none", default)]
9092    pub schedule_start_at: Option<chrono::DateTime<chrono::Utc>>,
9093    #[serde(skip_serializing_if = "Option::is_none", default)]
9094    pub silenced: Option<ClickStackAlertSilenced>,
9095    #[serde(default)]
9096    pub source: ClickStackAlertResponseSource,
9097    #[serde(default)]
9098    pub state: ClickStackAlertResponseState,
9099    #[serde(rename = "teamId", default)]
9100    pub team_id: String,
9101    #[serde(default)]
9102    pub threshold: f64,
9103    #[serde(rename = "thresholdMax", skip_serializing_if = "Option::is_none", default)]
9104    pub threshold_max: Option<f64>,
9105    #[serde(rename = "thresholdType", default)]
9106    pub threshold_type: ClickStackAlertResponseThresholdtype,
9107    #[serde(rename = "tileId", skip_serializing_if = "Option::is_none", default)]
9108    pub tile_id: Option<String>,
9109    #[serde(rename = "updatedAt", skip_serializing_if = "Option::is_none", default)]
9110    pub updated_at: Option<chrono::DateTime<chrono::Utc>>,
9111}
9112
9113/// `ClickStackAlertSilenced` from the ClickHouse Cloud API.
9114#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9115pub struct ClickStackAlertSilenced {
9116    #[serde(default)]
9117    pub at: chrono::DateTime<chrono::Utc>,
9118    #[serde(skip_serializing_if = "Option::is_none", default)]
9119    pub by: Option<String>,
9120    #[serde(default)]
9121    pub until: chrono::DateTime<chrono::Utc>,
9122}
9123
9124/// `ClickStackBarBuilderChartConfig` from the ClickHouse Cloud API.
9125#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9126pub struct ClickStackBarBuilderChartConfig {
9127    #[serde(rename = "alignDateRangeToGranularity", skip_serializing_if = "Option::is_none", default)]
9128    pub align_date_range_to_granularity: Option<bool>,
9129    #[serde(rename = "asRatio", skip_serializing_if = "Option::is_none", default)]
9130    pub as_ratio: Option<bool>,
9131    #[serde(rename = "displayType")]
9132    pub display_type: ClickStackBarBuilderChartConfigDisplaytype,
9133    #[serde(rename = "fillNulls", skip_serializing_if = "Option::is_none", default)]
9134    pub fill_nulls: Option<bool>,
9135    #[serde(rename = "groupBy", skip_serializing_if = "Option::is_none", default)]
9136    pub group_by: Option<String>,
9137    #[serde(rename = "numberFormat", skip_serializing_if = "Option::is_none", default)]
9138    pub number_format: Option<ClickStackNumberFormat>,
9139    pub select: Vec<ClickStackSelectItem>,
9140    #[serde(rename = "sourceId")]
9141    pub source_id: String,
9142}
9143
9144/// `ClickStackBarRawSqlChartConfig` from the ClickHouse Cloud API.
9145#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9146pub struct ClickStackBarRawSqlChartConfig {
9147    #[serde(rename = "alignDateRangeToGranularity", skip_serializing_if = "Option::is_none", default)]
9148    pub align_date_range_to_granularity: Option<bool>,
9149    #[serde(rename = "configType")]
9150    pub config_type: ClickStackBarRawSqlChartConfigConfigtype,
9151    #[serde(rename = "connectionId")]
9152    pub connection_id: String,
9153    #[serde(rename = "displayType")]
9154    pub display_type: ClickStackBarRawSqlChartConfigDisplaytype,
9155    #[serde(rename = "fillNulls", skip_serializing_if = "Option::is_none", default)]
9156    pub fill_nulls: Option<bool>,
9157    #[serde(rename = "numberFormat", skip_serializing_if = "Option::is_none", default)]
9158    pub number_format: Option<ClickStackNumberFormat>,
9159    #[serde(rename = "sourceId", skip_serializing_if = "Option::is_none", default)]
9160    pub source_id: Option<String>,
9161    #[serde(rename = "sqlTemplate")]
9162    pub sql_template: String,
9163}
9164
9165/// `ClickStackCreateAlertRequest` from the ClickHouse Cloud API.
9166#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9167pub struct ClickStackCreateAlertRequest {
9168    #[serde(default)]
9169    pub channel: ClickStackAlertChannel,
9170    #[serde(rename = "dashboardId", skip_serializing_if = "Option::is_none", default)]
9171    pub dashboard_id: Option<String>,
9172    #[serde(rename = "groupBy", skip_serializing_if = "Option::is_none", default)]
9173    pub group_by: Option<String>,
9174    #[serde(default)]
9175    pub interval: ClickStackCreateAlertRequestInterval,
9176    #[serde(skip_serializing_if = "Option::is_none", default)]
9177    pub message: Option<String>,
9178    #[serde(skip_serializing_if = "Option::is_none", default)]
9179    pub name: Option<String>,
9180    #[serde(skip_serializing_if = "Option::is_none", default)]
9181    pub note: Option<String>,
9182    #[serde(rename = "savedSearchId", skip_serializing_if = "Option::is_none", default)]
9183    pub saved_search_id: Option<String>,
9184    #[serde(rename = "scheduleOffsetMinutes", skip_serializing_if = "Option::is_none", default)]
9185    pub schedule_offset_minutes: Option<i64>,
9186    #[serde(rename = "scheduleStartAt", skip_serializing_if = "Option::is_none", default)]
9187    pub schedule_start_at: Option<chrono::DateTime<chrono::Utc>>,
9188    #[serde(default)]
9189    pub source: ClickStackCreateAlertRequestSource,
9190    #[serde(default)]
9191    pub threshold: f64,
9192    #[serde(rename = "thresholdMax", skip_serializing_if = "Option::is_none", default)]
9193    pub threshold_max: Option<f64>,
9194    #[serde(rename = "thresholdType", default)]
9195    pub threshold_type: ClickStackCreateAlertRequestThresholdtype,
9196    #[serde(rename = "tileId", skip_serializing_if = "Option::is_none", default)]
9197    pub tile_id: Option<String>,
9198}
9199
9200/// `ClickStackCreateDashboardRequest` from the ClickHouse Cloud API.
9201#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9202pub struct ClickStackCreateDashboardRequest {
9203    #[serde(skip_serializing_if = "Option::is_none", default)]
9204    pub containers: Option<Vec<ClickStackDashboardContainer>>,
9205    #[serde(skip_serializing_if = "Option::is_none", default)]
9206    pub filters: Option<Vec<ClickStackFilterInput>>,
9207    pub name: String,
9208    #[serde(rename = "savedFilterValues", skip_serializing_if = "Option::is_none", default)]
9209    pub saved_filter_values: Option<Vec<ClickStackSavedFilterValue>>,
9210    #[serde(rename = "savedQuery", skip_serializing_if = "Option::is_none", default)]
9211    pub saved_query: Option<String>,
9212    #[serde(rename = "savedQueryLanguage", skip_serializing_if = "Option::is_none", default)]
9213    pub saved_query_language: Option<ClickStackCreateDashboardRequestSavedquerylanguage>,
9214    #[serde(skip_serializing_if = "Option::is_none", default)]
9215    pub tags: Option<Vec<String>>,
9216    pub tiles: Vec<ClickStackTileInput>,
9217}
9218
9219/// `ClickStackDashboardContainer` from the ClickHouse Cloud API.
9220#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9221pub struct ClickStackDashboardContainer {
9222    #[serde(skip_serializing_if = "Option::is_none", default)]
9223    pub bordered: Option<bool>,
9224    pub collapsed: bool,
9225    #[serde(skip_serializing_if = "Option::is_none", default)]
9226    pub collapsible: Option<bool>,
9227    pub id: String,
9228    #[serde(skip_serializing_if = "Option::is_none", default)]
9229    pub tabs: Option<Vec<ClickStackDashboardContainerTab>>,
9230    pub title: String,
9231}
9232
9233/// `ClickStackDashboardContainerTab` from the ClickHouse Cloud API.
9234#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9235pub struct ClickStackDashboardContainerTab {
9236    pub id: String,
9237    pub title: String,
9238}
9239
9240/// `ClickStackDashboardResponse` from the ClickHouse Cloud API.
9241#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9242pub struct ClickStackDashboardResponse {
9243    #[serde(skip_serializing_if = "Option::is_none", default)]
9244    pub containers: Option<Vec<ClickStackDashboardContainer>>,
9245    #[serde(default)]
9246    pub filters: Vec<ClickStackFilter>,
9247    #[serde(default)]
9248    pub id: String,
9249    #[serde(default)]
9250    pub name: String,
9251    #[serde(rename = "savedFilterValues", skip_serializing_if = "Option::is_none", default)]
9252    pub saved_filter_values: Option<Vec<ClickStackSavedFilterValue>>,
9253    #[serde(rename = "savedQuery", skip_serializing_if = "Option::is_none", default)]
9254    pub saved_query: Option<String>,
9255    #[serde(rename = "savedQueryLanguage", skip_serializing_if = "Option::is_none", default)]
9256    pub saved_query_language: Option<ClickStackDashboardResponseSavedquerylanguage>,
9257    #[serde(default)]
9258    pub tags: Vec<String>,
9259    #[serde(default)]
9260    pub tiles: Vec<ClickStackTileOutput>,
9261}
9262
9263/// `ClickStackFilter` from the ClickHouse Cloud API.
9264#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9265pub struct ClickStackFilter {
9266    pub expression: String,
9267    pub id: String,
9268    pub name: String,
9269    #[serde(rename = "sourceId")]
9270    pub source_id: String,
9271    #[serde(rename = "sourceMetricType", skip_serializing_if = "Option::is_none", default)]
9272    pub source_metric_type: Option<ClickStackFilterSourcemetrictype>,
9273    pub r#type: ClickStackFilterType,
9274    #[serde(skip_serializing_if = "Option::is_none", default)]
9275    pub r#where: Option<String>,
9276    #[serde(rename = "whereLanguage", skip_serializing_if = "Option::is_none", default)]
9277    pub where_language: Option<ClickStackFilterWherelanguage>,
9278}
9279
9280/// `ClickStackFilterInput` from the ClickHouse Cloud API.
9281#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9282pub struct ClickStackFilterInput {
9283    pub expression: String,
9284    pub name: String,
9285    #[serde(rename = "sourceId")]
9286    pub source_id: String,
9287    #[serde(rename = "sourceMetricType", skip_serializing_if = "Option::is_none", default)]
9288    pub source_metric_type: Option<ClickStackFilterInputSourcemetrictype>,
9289    pub r#type: ClickStackFilterInputType,
9290    #[serde(skip_serializing_if = "Option::is_none", default)]
9291    pub r#where: Option<String>,
9292    #[serde(rename = "whereLanguage", skip_serializing_if = "Option::is_none", default)]
9293    pub where_language: Option<ClickStackFilterInputWherelanguage>,
9294}
9295
9296/// `ClickStackFilterSettingsColumn` from the ClickHouse Cloud API.
9297#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9298pub struct ClickStackFilterSettingsColumn {
9299    pub label: String,
9300    pub name: String,
9301}
9302
9303/// `ClickStackGenericWebhook` from the ClickHouse Cloud API.
9304#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9305pub struct ClickStackGenericWebhook {
9306    #[serde(skip_serializing_if = "Option::is_none", default)]
9307    pub body: Option<String>,
9308    #[serde(rename = "createdAt")]
9309    pub created_at: chrono::DateTime<chrono::Utc>,
9310    #[serde(skip_serializing_if = "Option::is_none", default)]
9311    pub description: Option<String>,
9312    pub id: String,
9313    pub name: String,
9314    pub service: ClickStackGenericWebhookService,
9315    #[serde(rename = "updatedAt")]
9316    pub updated_at: chrono::DateTime<chrono::Utc>,
9317    #[serde(skip_serializing_if = "Option::is_none", default)]
9318    pub url: Option<String>,
9319}
9320
9321/// `ClickStackHeatmapChartConfig` from the ClickHouse Cloud API.
9322#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9323pub struct ClickStackHeatmapChartConfig {
9324    #[serde(rename = "displayType")]
9325    pub display_type: ClickStackHeatmapChartConfigDisplaytype,
9326    #[serde(rename = "numberFormat", skip_serializing_if = "Option::is_none", default)]
9327    pub number_format: Option<ClickStackNumberFormat>,
9328    pub select: Vec<ClickStackHeatmapSelectItem>,
9329    #[serde(rename = "sourceId")]
9330    pub source_id: String,
9331    #[serde(rename = "where", skip_serializing_if = "Option::is_none", default)]
9332    pub r#where: Option<String>,
9333    #[serde(rename = "whereLanguage", skip_serializing_if = "Option::is_none", default)]
9334    pub where_language: Option<ClickStackHeatmapChartConfigWherelanguage>,
9335}
9336
9337/// `ClickStackHeatmapSelectItem` from the ClickHouse Cloud API.
9338#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9339pub struct ClickStackHeatmapSelectItem {
9340    #[serde(rename = "countExpression", skip_serializing_if = "Option::is_none", default)]
9341    pub count_expression: Option<String>,
9342    #[serde(rename = "heatmapScaleType", skip_serializing_if = "Option::is_none", default)]
9343    pub heatmap_scale_type: Option<ClickStackHeatmapSelectItemHeatmapscaletype>,
9344    #[serde(rename = "valueExpression")]
9345    pub value_expression: String,
9346}
9347
9348/// `ClickStackHighlightedAttributeExpression` from the ClickHouse Cloud API.
9349#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9350pub struct ClickStackHighlightedAttributeExpression {
9351    #[serde(skip_serializing_if = "Option::is_none", default)]
9352    pub alias: Option<String>,
9353    #[serde(rename = "luceneExpression", skip_serializing_if = "Option::is_none", default)]
9354    pub lucene_expression: Option<String>,
9355    #[serde(rename = "sqlExpression")]
9356    pub sql_expression: String,
9357}
9358
9359/// `ClickStackIncidentIOWebhook` from the ClickHouse Cloud API.
9360#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9361pub struct ClickStackIncidentIOWebhook {
9362    #[serde(rename = "createdAt")]
9363    pub created_at: chrono::DateTime<chrono::Utc>,
9364    #[serde(skip_serializing_if = "Option::is_none", default)]
9365    pub description: Option<String>,
9366    pub id: String,
9367    pub name: String,
9368    pub service: ClickStackIncidentIOWebhookService,
9369    #[serde(rename = "updatedAt")]
9370    pub updated_at: chrono::DateTime<chrono::Utc>,
9371    #[serde(skip_serializing_if = "Option::is_none", default)]
9372    pub url: Option<String>,
9373}
9374
9375/// `ClickStackLineBuilderChartConfig` from the ClickHouse Cloud API.
9376#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9377pub struct ClickStackLineBuilderChartConfig {
9378    #[serde(rename = "alignDateRangeToGranularity", skip_serializing_if = "Option::is_none", default)]
9379    pub align_date_range_to_granularity: Option<bool>,
9380    #[serde(rename = "asRatio", skip_serializing_if = "Option::is_none", default)]
9381    pub as_ratio: Option<bool>,
9382    #[serde(rename = "compareToPreviousPeriod", skip_serializing_if = "Option::is_none", default)]
9383    pub compare_to_previous_period: Option<bool>,
9384    #[serde(rename = "displayType")]
9385    pub display_type: ClickStackLineBuilderChartConfigDisplaytype,
9386    #[serde(rename = "fillNulls", skip_serializing_if = "Option::is_none", default)]
9387    pub fill_nulls: Option<bool>,
9388    #[serde(rename = "groupBy", skip_serializing_if = "Option::is_none", default)]
9389    pub group_by: Option<String>,
9390    #[serde(rename = "numberFormat", skip_serializing_if = "Option::is_none", default)]
9391    pub number_format: Option<ClickStackNumberFormat>,
9392    pub select: Vec<ClickStackSelectItem>,
9393    #[serde(rename = "sourceId")]
9394    pub source_id: String,
9395}
9396
9397/// `ClickStackLineRawSqlChartConfig` from the ClickHouse Cloud API.
9398#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9399pub struct ClickStackLineRawSqlChartConfig {
9400    #[serde(rename = "alignDateRangeToGranularity", skip_serializing_if = "Option::is_none", default)]
9401    pub align_date_range_to_granularity: Option<bool>,
9402    #[serde(rename = "compareToPreviousPeriod", skip_serializing_if = "Option::is_none", default)]
9403    pub compare_to_previous_period: Option<bool>,
9404    #[serde(rename = "configType")]
9405    pub config_type: ClickStackLineRawSqlChartConfigConfigtype,
9406    #[serde(rename = "connectionId")]
9407    pub connection_id: String,
9408    #[serde(rename = "displayType")]
9409    pub display_type: ClickStackLineRawSqlChartConfigDisplaytype,
9410    #[serde(rename = "fillNulls", skip_serializing_if = "Option::is_none", default)]
9411    pub fill_nulls: Option<bool>,
9412    #[serde(rename = "numberFormat", skip_serializing_if = "Option::is_none", default)]
9413    pub number_format: Option<ClickStackNumberFormat>,
9414    #[serde(rename = "sourceId", skip_serializing_if = "Option::is_none", default)]
9415    pub source_id: Option<String>,
9416    #[serde(rename = "sqlTemplate")]
9417    pub sql_template: String,
9418}
9419
9420/// `ClickStackLogSource` from the ClickHouse Cloud API.
9421#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9422pub struct ClickStackLogSource {
9423    #[serde(rename = "bodyExpression", skip_serializing_if = "Option::is_none", default)]
9424    pub body_expression: Option<String>,
9425    pub connection: String,
9426    #[serde(rename = "defaultTableSelectExpression")]
9427    pub default_table_select_expression: String,
9428    #[serde(rename = "displayedTimestampValueExpression", skip_serializing_if = "Option::is_none", default)]
9429    pub displayed_timestamp_value_expression: Option<String>,
9430    #[serde(rename = "eventAttributesExpression", skip_serializing_if = "Option::is_none", default)]
9431    pub event_attributes_expression: Option<String>,
9432    #[serde(rename = "filterSettings", skip_serializing_if = "Option::is_none", default)]
9433    pub filter_settings: Option<ClickStackSourceFilterSettings>,
9434    pub from: ClickStackSourceFrom,
9435    #[serde(rename = "highlightedRowAttributeExpressions", skip_serializing_if = "Option::is_none", default)]
9436    pub highlighted_row_attribute_expressions: Option<Vec<ClickStackHighlightedAttributeExpression>>,
9437    #[serde(rename = "highlightedTraceAttributeExpressions", skip_serializing_if = "Option::is_none", default)]
9438    pub highlighted_trace_attribute_expressions: Option<Vec<ClickStackHighlightedAttributeExpression>>,
9439    pub id: String,
9440    #[serde(rename = "implicitColumnExpression", skip_serializing_if = "Option::is_none", default)]
9441    pub implicit_column_expression: Option<String>,
9442    pub kind: ClickStackLogSourceKind,
9443    #[serde(rename = "materializedViews", skip_serializing_if = "Option::is_none", default)]
9444    pub materialized_views: Option<Vec<ClickStackMaterializedView>>,
9445    #[serde(rename = "metadataMaterializedViews", skip_serializing_if = "Option::is_none", default)]
9446    pub metadata_materialized_views: Option<ClickStackLogSourceMetadataMaterializedViews>,
9447    #[serde(rename = "metricSourceId", skip_serializing_if = "Option::is_none", default)]
9448    pub metric_source_id: Option<String>,
9449    pub name: String,
9450    #[serde(rename = "querySettings", skip_serializing_if = "Option::is_none", default)]
9451    pub query_settings: Option<Vec<ClickStackQuerySetting>>,
9452    #[serde(rename = "resourceAttributesExpression", skip_serializing_if = "Option::is_none", default)]
9453    pub resource_attributes_expression: Option<String>,
9454    #[serde(rename = "serviceNameExpression", skip_serializing_if = "Option::is_none", default)]
9455    pub service_name_expression: Option<String>,
9456    #[serde(rename = "severityTextExpression", skip_serializing_if = "Option::is_none", default)]
9457    pub severity_text_expression: Option<String>,
9458    #[serde(rename = "spanIdExpression", skip_serializing_if = "Option::is_none", default)]
9459    pub span_id_expression: Option<String>,
9460    #[serde(rename = "timestampValueExpression")]
9461    pub timestamp_value_expression: String,
9462    #[serde(rename = "traceIdExpression", skip_serializing_if = "Option::is_none", default)]
9463    pub trace_id_expression: Option<String>,
9464    #[serde(rename = "traceSourceId", skip_serializing_if = "Option::is_none", default)]
9465    pub trace_source_id: Option<String>,
9466}
9467
9468/// `ClickStackLogSourceMetadataMaterializedViews` from the ClickHouse Cloud API.
9469#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9470pub struct ClickStackLogSourceMetadataMaterializedViews {
9471    #[serde(default)]
9472    pub granularity: String,
9473    #[serde(rename = "keyRollupTable", default)]
9474    pub key_rollup_table: String,
9475    #[serde(rename = "kvRollupTable", default)]
9476    pub kv_rollup_table: String,
9477}
9478
9479/// `ClickStackMarkdownChartConfig` from the ClickHouse Cloud API.
9480#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9481pub struct ClickStackMarkdownChartConfig {
9482    #[serde(rename = "displayType")]
9483    pub display_type: ClickStackMarkdownChartConfigDisplaytype,
9484    #[serde(skip_serializing_if = "Option::is_none", default)]
9485    pub markdown: Option<String>,
9486}
9487
9488/// `ClickStackMarkdownChartSeries` from the ClickHouse Cloud API.
9489#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9490pub struct ClickStackMarkdownChartSeries {
9491    pub content: String,
9492    pub r#type: ClickStackMarkdownChartSeriesType,
9493}
9494
9495/// `ClickStackMaterializedView` from the ClickHouse Cloud API.
9496#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9497pub struct ClickStackMaterializedView {
9498    #[serde(rename = "aggregatedColumns")]
9499    pub aggregated_columns: Vec<ClickStackAggregatedColumn>,
9500    #[serde(rename = "databaseName")]
9501    pub database_name: String,
9502    #[serde(rename = "dimensionColumns")]
9503    pub dimension_columns: String,
9504    #[serde(rename = "minDate", skip_serializing_if = "Option::is_none", default)]
9505    pub min_date: Option<chrono::DateTime<chrono::Utc>>,
9506    #[serde(rename = "minGranularity")]
9507    pub min_granularity: ClickStackMaterializedViewMingranularity,
9508    #[serde(rename = "tableName")]
9509    pub table_name: String,
9510    #[serde(rename = "timestampColumn")]
9511    pub timestamp_column: String,
9512}
9513
9514/// `ClickStackMetricSource` from the ClickHouse Cloud API.
9515#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9516pub struct ClickStackMetricSource {
9517    pub connection: String,
9518    pub from: ClickStackMetricSourceFrom,
9519    pub id: String,
9520    pub kind: ClickStackMetricSourceKind,
9521    #[serde(rename = "logSourceId", skip_serializing_if = "Option::is_none", default)]
9522    pub log_source_id: Option<String>,
9523    #[serde(rename = "metricTables")]
9524    pub metric_tables: ClickStackMetricTables,
9525    pub name: String,
9526    #[serde(rename = "querySettings", skip_serializing_if = "Option::is_none", default)]
9527    pub query_settings: Option<Vec<ClickStackQuerySetting>>,
9528    #[serde(rename = "resourceAttributesExpression")]
9529    pub resource_attributes_expression: String,
9530    #[serde(rename = "timestampValueExpression")]
9531    pub timestamp_value_expression: String,
9532}
9533
9534/// `ClickStackMetricSourceFrom` from the ClickHouse Cloud API.
9535#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9536pub struct ClickStackMetricSourceFrom {
9537    #[serde(rename = "databaseName")]
9538    pub database_name: String,
9539    #[serde(rename = "tableName", skip_serializing_if = "Option::is_none", default)]
9540    pub table_name: Option<String>,
9541}
9542
9543/// `ClickStackMetricTables` from the ClickHouse Cloud API.
9544#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9545pub struct ClickStackMetricTables {
9546    #[serde(rename = "exponential histogram", default)]
9547    pub exponential_histogram: String,
9548    #[serde(default)]
9549    pub gauge: String,
9550    #[serde(default)]
9551    pub histogram: String,
9552    #[serde(default)]
9553    pub sum: String,
9554    #[serde(default)]
9555    pub summary: String,
9556}
9557
9558/// `ClickStackNumberBuilderChartConfig` from the ClickHouse Cloud API.
9559#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9560pub struct ClickStackNumberBuilderChartConfig {
9561    #[serde(rename = "displayType")]
9562    pub display_type: ClickStackNumberBuilderChartConfigDisplaytype,
9563    #[serde(rename = "numberFormat", skip_serializing_if = "Option::is_none", default)]
9564    pub number_format: Option<ClickStackNumberFormat>,
9565    pub select: Vec<ClickStackSelectItem>,
9566    #[serde(rename = "sourceId")]
9567    pub source_id: String,
9568}
9569
9570/// `ClickStackNumberChartSeries` from the ClickHouse Cloud API.
9571#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9572pub struct ClickStackNumberChartSeries {
9573    #[serde(rename = "aggFn")]
9574    pub agg_fn: ClickStackNumberChartSeriesAggfn,
9575    #[serde(skip_serializing_if = "Option::is_none", default)]
9576    pub alias: Option<String>,
9577    #[serde(skip_serializing_if = "Option::is_none", default)]
9578    pub field: Option<String>,
9579    #[serde(skip_serializing_if = "Option::is_none", default)]
9580    pub level: Option<f64>,
9581    #[serde(rename = "metricDataType", skip_serializing_if = "Option::is_none", default)]
9582    pub metric_data_type: Option<ClickStackNumberChartSeriesMetricdatatype>,
9583    #[serde(rename = "metricName", skip_serializing_if = "Option::is_none", default)]
9584    pub metric_name: Option<String>,
9585    #[serde(rename = "numberFormat", skip_serializing_if = "Option::is_none", default)]
9586    pub number_format: Option<ClickStackNumberFormat>,
9587    #[serde(rename = "sourceId")]
9588    pub source_id: String,
9589    pub r#type: ClickStackNumberChartSeriesType,
9590    pub r#where: String,
9591    #[serde(rename = "whereLanguage")]
9592    pub where_language: ClickStackNumberChartSeriesWherelanguage,
9593}
9594
9595/// `ClickStackNumberFormat` from the ClickHouse Cloud API.
9596#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9597pub struct ClickStackNumberFormat {
9598    #[serde(default)]
9599    pub average: bool,
9600    #[serde(rename = "currencySymbol", default)]
9601    pub currency_symbol: String,
9602    #[serde(rename = "decimalBytes", default)]
9603    pub decimal_bytes: bool,
9604    #[serde(default)]
9605    pub factor: f64,
9606    #[serde(default)]
9607    pub mantissa: i64,
9608    #[serde(rename = "numericUnit", default)]
9609    pub numeric_unit: ClickStackNumberFormatNumericunit,
9610    #[serde(default)]
9611    pub output: ClickStackNumberFormatOutput,
9612    #[serde(rename = "thousandSeparated", default)]
9613    pub thousand_separated: bool,
9614    #[serde(default)]
9615    pub unit: String,
9616}
9617
9618/// `ClickStackNumberRawSqlChartConfig` from the ClickHouse Cloud API.
9619#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9620pub struct ClickStackNumberRawSqlChartConfig {
9621    #[serde(rename = "configType")]
9622    pub config_type: ClickStackNumberRawSqlChartConfigConfigtype,
9623    #[serde(rename = "connectionId")]
9624    pub connection_id: String,
9625    #[serde(rename = "displayType")]
9626    pub display_type: ClickStackNumberRawSqlChartConfigDisplaytype,
9627    #[serde(rename = "numberFormat", skip_serializing_if = "Option::is_none", default)]
9628    pub number_format: Option<ClickStackNumberFormat>,
9629    #[serde(rename = "sourceId", skip_serializing_if = "Option::is_none", default)]
9630    pub source_id: Option<String>,
9631    #[serde(rename = "sqlTemplate")]
9632    pub sql_template: String,
9633}
9634
9635/// `ClickStackOnClickDashboard` from the ClickHouse Cloud API.
9636#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9637pub struct ClickStackOnClickDashboard {
9638    #[serde(skip_serializing_if = "Option::is_none", default)]
9639    pub filters: Option<Vec<ClickStackOnClickFilterTemplate>>,
9640    pub target: ClickStackOnClickTarget,
9641    pub r#type: ClickStackOnClickDashboardType,
9642    #[serde(rename = "whereLanguage", skip_serializing_if = "Option::is_none", default)]
9643    pub where_language: Option<ClickStackOnClickDashboardWherelanguage>,
9644    #[serde(rename = "whereTemplate", skip_serializing_if = "Option::is_none", default)]
9645    pub where_template: Option<String>,
9646}
9647
9648/// `ClickStackOnClickFilterTemplate` from the ClickHouse Cloud API.
9649#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9650pub struct ClickStackOnClickFilterTemplate {
9651    pub expression: String,
9652    pub kind: ClickStackOnClickFilterTemplateKind,
9653    pub template: String,
9654}
9655
9656/// `ClickStackOnClickSearch` from the ClickHouse Cloud API.
9657#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9658pub struct ClickStackOnClickSearch {
9659    #[serde(skip_serializing_if = "Option::is_none", default)]
9660    pub filters: Option<Vec<ClickStackOnClickFilterTemplate>>,
9661    pub target: ClickStackOnClickTarget,
9662    pub r#type: ClickStackOnClickSearchType,
9663    #[serde(rename = "whereLanguage", skip_serializing_if = "Option::is_none", default)]
9664    pub where_language: Option<ClickStackOnClickSearchWherelanguage>,
9665    #[serde(rename = "whereTemplate", skip_serializing_if = "Option::is_none", default)]
9666    pub where_template: Option<String>,
9667}
9668
9669/// `ClickStackOnClickTargetIdVariant` from the ClickHouse Cloud API.
9670#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9671pub struct ClickStackOnClickTargetIdVariant {
9672    pub id: String,
9673    pub mode: ClickStackOnClickTargetIdVariantMode,
9674}
9675
9676/// `ClickStackOnClickTargetTemplateVariant` from the ClickHouse Cloud API.
9677#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9678pub struct ClickStackOnClickTargetTemplateVariant {
9679    pub mode: ClickStackOnClickTargetTemplateVariantMode,
9680    pub template: String,
9681}
9682
9683/// `ClickStackPagerDutyAPIWebhook` from the ClickHouse Cloud API.
9684#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9685pub struct ClickStackPagerDutyAPIWebhook {
9686    #[serde(rename = "createdAt")]
9687    pub created_at: chrono::DateTime<chrono::Utc>,
9688    #[serde(skip_serializing_if = "Option::is_none", default)]
9689    pub description: Option<String>,
9690    pub id: String,
9691    pub name: String,
9692    pub service: ClickStackPagerDutyAPIWebhookService,
9693    #[serde(rename = "updatedAt")]
9694    pub updated_at: chrono::DateTime<chrono::Utc>,
9695    #[serde(skip_serializing_if = "Option::is_none", default)]
9696    pub url: Option<String>,
9697}
9698
9699/// `ClickStackPieBuilderChartConfig` from the ClickHouse Cloud API.
9700#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9701pub struct ClickStackPieBuilderChartConfig {
9702    #[serde(rename = "displayType")]
9703    pub display_type: ClickStackPieBuilderChartConfigDisplaytype,
9704    #[serde(rename = "groupBy", skip_serializing_if = "Option::is_none", default)]
9705    pub group_by: Option<String>,
9706    #[serde(rename = "numberFormat", skip_serializing_if = "Option::is_none", default)]
9707    pub number_format: Option<ClickStackNumberFormat>,
9708    pub select: Vec<ClickStackSelectItem>,
9709    #[serde(rename = "sourceId")]
9710    pub source_id: String,
9711}
9712
9713/// `ClickStackPieRawSqlChartConfig` from the ClickHouse Cloud API.
9714#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9715pub struct ClickStackPieRawSqlChartConfig {
9716    #[serde(rename = "configType")]
9717    pub config_type: ClickStackPieRawSqlChartConfigConfigtype,
9718    #[serde(rename = "connectionId")]
9719    pub connection_id: String,
9720    #[serde(rename = "displayType")]
9721    pub display_type: ClickStackPieRawSqlChartConfigDisplaytype,
9722    #[serde(rename = "numberFormat", skip_serializing_if = "Option::is_none", default)]
9723    pub number_format: Option<ClickStackNumberFormat>,
9724    #[serde(rename = "sourceId", skip_serializing_if = "Option::is_none", default)]
9725    pub source_id: Option<String>,
9726    #[serde(rename = "sqlTemplate")]
9727    pub sql_template: String,
9728}
9729
9730/// `ClickStackQuerySetting` from the ClickHouse Cloud API.
9731#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9732pub struct ClickStackQuerySetting {
9733    pub setting: String,
9734    pub value: String,
9735}
9736
9737/// `ClickStackSavedFilterValue` from the ClickHouse Cloud API.
9738#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9739pub struct ClickStackSavedFilterValue {
9740    pub condition: String,
9741    #[serde(skip_serializing_if = "Option::is_none", default)]
9742    pub r#type: Option<ClickStackSavedFilterValueType>,
9743}
9744
9745/// `ClickStackSearchChartConfig` from the ClickHouse Cloud API.
9746#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9747pub struct ClickStackSearchChartConfig {
9748    #[serde(rename = "displayType")]
9749    pub display_type: ClickStackSearchChartConfigDisplaytype,
9750    pub select: String,
9751    #[serde(rename = "sourceId")]
9752    pub source_id: String,
9753    #[serde(skip_serializing_if = "Option::is_none", default)]
9754    pub r#where: Option<String>,
9755    #[serde(rename = "whereLanguage")]
9756    pub where_language: ClickStackSearchChartConfigWherelanguage,
9757}
9758
9759/// `ClickStackSearchChartSeries` from the ClickHouse Cloud API.
9760#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9761pub struct ClickStackSearchChartSeries {
9762    pub fields: Vec<String>,
9763    #[serde(rename = "sourceId")]
9764    pub source_id: String,
9765    pub r#type: ClickStackSearchChartSeriesType,
9766    pub r#where: String,
9767    #[serde(rename = "whereLanguage")]
9768    pub where_language: ClickStackSearchChartSeriesWherelanguage,
9769}
9770
9771/// `ClickStackSelectItem` from the ClickHouse Cloud API.
9772#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9773pub struct ClickStackSelectItem {
9774    #[serde(rename = "aggFn")]
9775    pub agg_fn: ClickStackSelectItemAggfn,
9776    #[serde(skip_serializing_if = "Option::is_none", default)]
9777    pub alias: Option<String>,
9778    #[serde(skip_serializing_if = "Option::is_none", default)]
9779    pub level: Option<ClickStackSelectItemLevel>,
9780    #[serde(rename = "metricName", skip_serializing_if = "Option::is_none", default)]
9781    pub metric_name: Option<String>,
9782    #[serde(rename = "metricType", skip_serializing_if = "Option::is_none", default)]
9783    pub metric_type: Option<ClickStackSelectItemMetrictype>,
9784    #[serde(rename = "numberFormat", skip_serializing_if = "Option::is_none", default)]
9785    pub number_format: Option<ClickStackNumberFormat>,
9786    #[serde(rename = "periodAggFn", skip_serializing_if = "Option::is_none", default)]
9787    pub period_agg_fn: Option<ClickStackSelectItemPeriodaggfn>,
9788    #[serde(rename = "valueExpression", skip_serializing_if = "Option::is_none", default)]
9789    pub value_expression: Option<String>,
9790    #[serde(skip_serializing_if = "Option::is_none", default)]
9791    pub r#where: Option<String>,
9792    #[serde(rename = "whereLanguage", skip_serializing_if = "Option::is_none", default)]
9793    pub where_language: Option<ClickStackSelectItemWherelanguage>,
9794}
9795
9796/// `ClickStackSessionSource` from the ClickHouse Cloud API.
9797#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9798pub struct ClickStackSessionSource {
9799    pub connection: String,
9800    pub from: ClickStackSourceFrom,
9801    pub id: String,
9802    pub kind: ClickStackSessionSourceKind,
9803    pub name: String,
9804    #[serde(rename = "querySettings", skip_serializing_if = "Option::is_none", default)]
9805    pub query_settings: Option<Vec<ClickStackQuerySetting>>,
9806    #[serde(rename = "timestampValueExpression", skip_serializing_if = "Option::is_none", default)]
9807    pub timestamp_value_expression: Option<String>,
9808    #[serde(rename = "traceSourceId")]
9809    pub trace_source_id: String,
9810}
9811
9812/// `ClickStackSlackAPIWebhook` from the ClickHouse Cloud API.
9813#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9814pub struct ClickStackSlackAPIWebhook {
9815    #[serde(rename = "createdAt")]
9816    pub created_at: chrono::DateTime<chrono::Utc>,
9817    #[serde(skip_serializing_if = "Option::is_none", default)]
9818    pub description: Option<String>,
9819    pub id: String,
9820    pub name: String,
9821    pub service: ClickStackSlackAPIWebhookService,
9822    #[serde(rename = "updatedAt")]
9823    pub updated_at: chrono::DateTime<chrono::Utc>,
9824    #[serde(skip_serializing_if = "Option::is_none", default)]
9825    pub url: Option<String>,
9826}
9827
9828/// `ClickStackSlackWebhook` from the ClickHouse Cloud API.
9829#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9830pub struct ClickStackSlackWebhook {
9831    #[serde(rename = "createdAt")]
9832    pub created_at: chrono::DateTime<chrono::Utc>,
9833    #[serde(skip_serializing_if = "Option::is_none", default)]
9834    pub description: Option<String>,
9835    pub id: String,
9836    pub name: String,
9837    pub service: ClickStackSlackWebhookService,
9838    #[serde(rename = "updatedAt")]
9839    pub updated_at: chrono::DateTime<chrono::Utc>,
9840    #[serde(skip_serializing_if = "Option::is_none", default)]
9841    pub url: Option<String>,
9842}
9843
9844/// `ClickStackSourceFilterSettings` from the ClickHouse Cloud API.
9845#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9846pub struct ClickStackSourceFilterSettings {
9847    pub columns: Vec<ClickStackFilterSettingsColumn>,
9848    #[serde(rename = "databaseName")]
9849    pub database_name: String,
9850    #[serde(rename = "tableName")]
9851    pub table_name: String,
9852}
9853
9854/// `ClickStackSourceFrom` from the ClickHouse Cloud API.
9855#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9856pub struct ClickStackSourceFrom {
9857    #[serde(rename = "databaseName")]
9858    pub database_name: String,
9859    #[serde(rename = "tableName")]
9860    pub table_name: String,
9861}
9862
9863/// `ClickStackTableBuilderChartConfig` from the ClickHouse Cloud API.
9864#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9865pub struct ClickStackTableBuilderChartConfig {
9866    #[serde(rename = "asRatio", skip_serializing_if = "Option::is_none", default)]
9867    pub as_ratio: Option<bool>,
9868    #[serde(rename = "displayType")]
9869    pub display_type: ClickStackTableBuilderChartConfigDisplaytype,
9870    #[serde(rename = "groupBy", skip_serializing_if = "Option::is_none", default)]
9871    pub group_by: Option<String>,
9872    #[serde(rename = "groupByColumnsOnLeft", skip_serializing_if = "Option::is_none", default)]
9873    pub group_by_columns_on_left: Option<bool>,
9874    #[serde(skip_serializing_if = "Option::is_none", default)]
9875    pub having: Option<String>,
9876    #[serde(rename = "numberFormat", skip_serializing_if = "Option::is_none", default)]
9877    pub number_format: Option<ClickStackNumberFormat>,
9878    #[serde(rename = "onClick", skip_serializing_if = "Option::is_none", default)]
9879    pub on_click: Option<ClickStackOnClick>,
9880    #[serde(rename = "orderBy", skip_serializing_if = "Option::is_none", default)]
9881    pub order_by: Option<String>,
9882    pub select: Vec<ClickStackSelectItem>,
9883    #[serde(rename = "sourceId")]
9884    pub source_id: String,
9885}
9886
9887/// `ClickStackTableChartSeries` from the ClickHouse Cloud API.
9888#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9889pub struct ClickStackTableChartSeries {
9890    #[serde(rename = "aggFn")]
9891    pub agg_fn: ClickStackTableChartSeriesAggfn,
9892    #[serde(skip_serializing_if = "Option::is_none", default)]
9893    pub alias: Option<String>,
9894    #[serde(skip_serializing_if = "Option::is_none", default)]
9895    pub field: Option<String>,
9896    #[serde(rename = "groupBy")]
9897    pub group_by: Vec<String>,
9898    #[serde(skip_serializing_if = "Option::is_none", default)]
9899    pub level: Option<f64>,
9900    #[serde(rename = "metricDataType", skip_serializing_if = "Option::is_none", default)]
9901    pub metric_data_type: Option<ClickStackTableChartSeriesMetricdatatype>,
9902    #[serde(rename = "metricName", skip_serializing_if = "Option::is_none", default)]
9903    pub metric_name: Option<String>,
9904    #[serde(rename = "numberFormat", skip_serializing_if = "Option::is_none", default)]
9905    pub number_format: Option<ClickStackNumberFormat>,
9906    #[serde(rename = "sortOrder", skip_serializing_if = "Option::is_none", default)]
9907    pub sort_order: Option<ClickStackTableChartSeriesSortorder>,
9908    #[serde(rename = "sourceId")]
9909    pub source_id: String,
9910    pub r#type: ClickStackTableChartSeriesType,
9911    pub r#where: String,
9912    #[serde(rename = "whereLanguage")]
9913    pub where_language: ClickStackTableChartSeriesWherelanguage,
9914}
9915
9916/// `ClickStackTableRawSqlChartConfig` from the ClickHouse Cloud API.
9917#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9918pub struct ClickStackTableRawSqlChartConfig {
9919    #[serde(rename = "configType")]
9920    pub config_type: ClickStackTableRawSqlChartConfigConfigtype,
9921    #[serde(rename = "connectionId")]
9922    pub connection_id: String,
9923    #[serde(rename = "displayType")]
9924    pub display_type: ClickStackTableRawSqlChartConfigDisplaytype,
9925    #[serde(rename = "numberFormat", skip_serializing_if = "Option::is_none", default)]
9926    pub number_format: Option<ClickStackNumberFormat>,
9927    #[serde(rename = "onClick", skip_serializing_if = "Option::is_none", default)]
9928    pub on_click: Option<ClickStackOnClick>,
9929    #[serde(rename = "sourceId", skip_serializing_if = "Option::is_none", default)]
9930    pub source_id: Option<String>,
9931    #[serde(rename = "sqlTemplate")]
9932    pub sql_template: String,
9933}
9934
9935/// `ClickStackTileInput` from the ClickHouse Cloud API.
9936#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9937pub struct ClickStackTileInput {
9938    #[serde(rename = "asRatio", skip_serializing_if = "Option::is_none", default)]
9939    pub as_ratio: Option<bool>,
9940    #[serde(skip_serializing_if = "Option::is_none", default)]
9941    pub config: Option<ClickStackTileConfig>,
9942    #[serde(rename = "containerId", skip_serializing_if = "Option::is_none", default)]
9943    pub container_id: Option<String>,
9944    pub h: i64,
9945    #[serde(skip_serializing_if = "Option::is_none", default)]
9946    pub id: Option<String>,
9947    pub name: String,
9948    #[serde(skip_serializing_if = "Option::is_none", default)]
9949    pub series: Option<Vec<ClickStackDashboardChartSeries>>,
9950    #[serde(rename = "tabId", skip_serializing_if = "Option::is_none", default)]
9951    pub tab_id: Option<String>,
9952    pub w: i64,
9953    pub x: i64,
9954    pub y: i64,
9955}
9956
9957/// `ClickStackTileOutput` from the ClickHouse Cloud API.
9958#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9959pub struct ClickStackTileOutput {
9960    #[serde(skip_serializing_if = "Option::is_none", default)]
9961    pub config: Option<ClickStackTileConfig>,
9962    #[serde(rename = "containerId", skip_serializing_if = "Option::is_none", default)]
9963    pub container_id: Option<String>,
9964    pub h: i64,
9965    pub id: String,
9966    pub name: String,
9967    #[serde(rename = "tabId", skip_serializing_if = "Option::is_none", default)]
9968    pub tab_id: Option<String>,
9969    pub w: i64,
9970    pub x: i64,
9971    pub y: i64,
9972}
9973
9974/// `ClickStackTimeChartSeries` from the ClickHouse Cloud API.
9975#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
9976pub struct ClickStackTimeChartSeries {
9977    #[serde(rename = "aggFn")]
9978    pub agg_fn: ClickStackTimeChartSeriesAggfn,
9979    #[serde(skip_serializing_if = "Option::is_none", default)]
9980    pub alias: Option<String>,
9981    #[serde(rename = "displayType", skip_serializing_if = "Option::is_none", default)]
9982    pub display_type: Option<ClickStackTimeChartSeriesDisplaytype>,
9983    #[serde(skip_serializing_if = "Option::is_none", default)]
9984    pub field: Option<String>,
9985    #[serde(rename = "groupBy")]
9986    pub group_by: Vec<String>,
9987    #[serde(skip_serializing_if = "Option::is_none", default)]
9988    pub level: Option<f64>,
9989    #[serde(rename = "metricDataType", skip_serializing_if = "Option::is_none", default)]
9990    pub metric_data_type: Option<ClickStackTimeChartSeriesMetricdatatype>,
9991    #[serde(rename = "metricName", skip_serializing_if = "Option::is_none", default)]
9992    pub metric_name: Option<String>,
9993    #[serde(rename = "numberFormat", skip_serializing_if = "Option::is_none", default)]
9994    pub number_format: Option<ClickStackNumberFormat>,
9995    #[serde(rename = "sourceId")]
9996    pub source_id: String,
9997    pub r#type: ClickStackTimeChartSeriesType,
9998    pub r#where: String,
9999    #[serde(rename = "whereLanguage")]
10000    pub where_language: ClickStackTimeChartSeriesWherelanguage,
10001}
10002
10003/// `ClickStackTraceSource` from the ClickHouse Cloud API.
10004#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10005pub struct ClickStackTraceSource {
10006    pub connection: String,
10007    #[serde(rename = "defaultTableSelectExpression", skip_serializing_if = "Option::is_none", default)]
10008    pub default_table_select_expression: Option<String>,
10009    #[serde(rename = "durationExpression")]
10010    pub duration_expression: String,
10011    #[serde(rename = "durationPrecision")]
10012    pub duration_precision: i64,
10013    #[serde(rename = "eventAttributesExpression", skip_serializing_if = "Option::is_none", default)]
10014    pub event_attributes_expression: Option<String>,
10015    #[serde(rename = "filterSettings", skip_serializing_if = "Option::is_none", default)]
10016    pub filter_settings: Option<ClickStackSourceFilterSettings>,
10017    pub from: ClickStackSourceFrom,
10018    #[serde(rename = "highlightedRowAttributeExpressions", skip_serializing_if = "Option::is_none", default)]
10019    pub highlighted_row_attribute_expressions: Option<Vec<ClickStackHighlightedAttributeExpression>>,
10020    #[serde(rename = "highlightedTraceAttributeExpressions", skip_serializing_if = "Option::is_none", default)]
10021    pub highlighted_trace_attribute_expressions: Option<Vec<ClickStackHighlightedAttributeExpression>>,
10022    pub id: String,
10023    #[serde(rename = "implicitColumnExpression", skip_serializing_if = "Option::is_none", default)]
10024    pub implicit_column_expression: Option<String>,
10025    pub kind: ClickStackTraceSourceKind,
10026    #[serde(rename = "logSourceId", skip_serializing_if = "Option::is_none", default)]
10027    pub log_source_id: Option<String>,
10028    #[serde(rename = "materializedViews", skip_serializing_if = "Option::is_none", default)]
10029    pub materialized_views: Option<Vec<ClickStackMaterializedView>>,
10030    #[serde(rename = "metadataMaterializedViews", skip_serializing_if = "Option::is_none", default)]
10031    pub metadata_materialized_views: Option<ClickStackTraceSourceMetadataMaterializedViews>,
10032    #[serde(rename = "metricSourceId", skip_serializing_if = "Option::is_none", default)]
10033    pub metric_source_id: Option<String>,
10034    pub name: String,
10035    #[serde(rename = "parentSpanIdExpression")]
10036    pub parent_span_id_expression: String,
10037    #[serde(rename = "querySettings", skip_serializing_if = "Option::is_none", default)]
10038    pub query_settings: Option<Vec<ClickStackQuerySetting>>,
10039    #[serde(rename = "resourceAttributesExpression", skip_serializing_if = "Option::is_none", default)]
10040    pub resource_attributes_expression: Option<String>,
10041    #[serde(rename = "serviceNameExpression", skip_serializing_if = "Option::is_none", default)]
10042    pub service_name_expression: Option<String>,
10043    #[serde(rename = "sessionSourceId", skip_serializing_if = "Option::is_none", default)]
10044    pub session_source_id: Option<String>,
10045    #[serde(rename = "spanEventsValueExpression", skip_serializing_if = "Option::is_none", default)]
10046    pub span_events_value_expression: Option<String>,
10047    #[serde(rename = "spanIdExpression")]
10048    pub span_id_expression: String,
10049    #[serde(rename = "spanKindExpression")]
10050    pub span_kind_expression: String,
10051    #[serde(rename = "spanNameExpression")]
10052    pub span_name_expression: String,
10053    #[serde(rename = "statusCodeExpression", skip_serializing_if = "Option::is_none", default)]
10054    pub status_code_expression: Option<String>,
10055    #[serde(rename = "statusMessageExpression", skip_serializing_if = "Option::is_none", default)]
10056    pub status_message_expression: Option<String>,
10057    #[serde(rename = "timestampValueExpression")]
10058    pub timestamp_value_expression: String,
10059    #[serde(rename = "traceIdExpression")]
10060    pub trace_id_expression: String,
10061}
10062
10063/// `ClickStackTraceSourceMetadataMaterializedViews` from the ClickHouse Cloud API.
10064#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10065pub struct ClickStackTraceSourceMetadataMaterializedViews {
10066    #[serde(default)]
10067    pub granularity: String,
10068    #[serde(rename = "keyRollupTable", default)]
10069    pub key_rollup_table: String,
10070    #[serde(rename = "kvRollupTable", default)]
10071    pub kv_rollup_table: String,
10072}
10073
10074/// `ClickStackUpdateAlertRequest` from the ClickHouse Cloud API.
10075#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10076pub struct ClickStackUpdateAlertRequest {
10077    #[serde(default)]
10078    pub channel: ClickStackAlertChannel,
10079    #[serde(rename = "dashboardId", skip_serializing_if = "Option::is_none", default)]
10080    pub dashboard_id: Option<String>,
10081    #[serde(rename = "groupBy", skip_serializing_if = "Option::is_none", default)]
10082    pub group_by: Option<String>,
10083    #[serde(default)]
10084    pub interval: ClickStackUpdateAlertRequestInterval,
10085    #[serde(skip_serializing_if = "Option::is_none", default)]
10086    pub message: Option<String>,
10087    #[serde(skip_serializing_if = "Option::is_none", default)]
10088    pub name: Option<String>,
10089    #[serde(skip_serializing_if = "Option::is_none", default)]
10090    pub note: Option<String>,
10091    #[serde(rename = "savedSearchId", skip_serializing_if = "Option::is_none", default)]
10092    pub saved_search_id: Option<String>,
10093    #[serde(rename = "scheduleOffsetMinutes", skip_serializing_if = "Option::is_none", default)]
10094    pub schedule_offset_minutes: Option<i64>,
10095    #[serde(rename = "scheduleStartAt", skip_serializing_if = "Option::is_none", default)]
10096    pub schedule_start_at: Option<chrono::DateTime<chrono::Utc>>,
10097    #[serde(default)]
10098    pub source: ClickStackUpdateAlertRequestSource,
10099    #[serde(default)]
10100    pub threshold: f64,
10101    #[serde(rename = "thresholdMax", skip_serializing_if = "Option::is_none", default)]
10102    pub threshold_max: Option<f64>,
10103    #[serde(rename = "thresholdType", default)]
10104    pub threshold_type: ClickStackUpdateAlertRequestThresholdtype,
10105    #[serde(rename = "tileId", skip_serializing_if = "Option::is_none", default)]
10106    pub tile_id: Option<String>,
10107}
10108
10109/// `ClickStackUpdateDashboardRequest` from the ClickHouse Cloud API.
10110#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10111pub struct ClickStackUpdateDashboardRequest {
10112    #[serde(skip_serializing_if = "Option::is_none", default)]
10113    pub containers: Option<Vec<ClickStackDashboardContainer>>,
10114    #[serde(skip_serializing_if = "Option::is_none", default)]
10115    pub filters: Option<Vec<ClickStackFilter>>,
10116    pub name: String,
10117    #[serde(rename = "savedFilterValues", skip_serializing_if = "Option::is_none", default)]
10118    pub saved_filter_values: Option<Vec<ClickStackSavedFilterValue>>,
10119    #[serde(rename = "savedQuery", skip_serializing_if = "Option::is_none", default)]
10120    pub saved_query: Option<String>,
10121    #[serde(rename = "savedQueryLanguage", skip_serializing_if = "Option::is_none", default)]
10122    pub saved_query_language: Option<ClickStackUpdateDashboardRequestSavedquerylanguage>,
10123    #[serde(skip_serializing_if = "Option::is_none", default)]
10124    pub tags: Option<Vec<String>>,
10125    pub tiles: Vec<ClickStackTileInput>,
10126}
10127
10128/// `CreateReversePrivateEndpoint` from the ClickHouse Cloud API.
10129#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10130pub struct CreateReversePrivateEndpoint {
10131    #[serde(rename = "customPrivateDnsMappings", skip_serializing_if = "Option::is_none", default)]
10132    pub custom_private_dns_mappings: Option<Vec<CustomPrivateDnsMapping>>,
10133    #[serde(default)]
10134    pub description: String,
10135    #[serde(rename = "gcpServiceAttachment", skip_serializing_if = "Option::is_none", default)]
10136    pub gcp_service_attachment: Option<String>,
10137    #[serde(rename = "mskAuthentication", skip_serializing_if = "Option::is_none", default)]
10138    pub msk_authentication: Option<CreateReversePrivateEndpointMskauthentication>,
10139    #[serde(rename = "mskClusterArn", skip_serializing_if = "Option::is_none", default)]
10140    pub msk_cluster_arn: Option<String>,
10141    #[serde(default)]
10142    pub r#type: CreateReversePrivateEndpointType,
10143    #[serde(rename = "vpcEndpointServiceName", skip_serializing_if = "Option::is_none", default)]
10144    pub vpc_endpoint_service_name: Option<String>,
10145    #[serde(rename = "vpcResourceConfigurationId", skip_serializing_if = "Option::is_none", default)]
10146    pub vpc_resource_configuration_id: Option<String>,
10147    #[serde(rename = "vpcResourceShareArn", skip_serializing_if = "Option::is_none", default)]
10148    pub vpc_resource_share_arn: Option<String>,
10149}
10150
10151/// `CurrentScaling` from the ClickHouse Cloud API.
10152#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10153pub struct CurrentScaling {
10154    #[serde(rename = "activeEntryId", default)]
10155    pub active_entry_id: uuid::Uuid,
10156    #[serde(rename = "effectiveAutoscalingMode", default)]
10157    pub effective_autoscaling_mode: CurrentScalingEffectiveautoscalingmode,
10158    #[serde(rename = "effectiveIdleScaling", default)]
10159    pub effective_idle_scaling: bool,
10160    #[serde(rename = "effectiveIdleTimeoutMinutes", default)]
10161    pub effective_idle_timeout_minutes: i64,
10162    #[serde(rename = "effectiveMaxReplicaMemoryGb", default)]
10163    pub effective_max_replica_memory_gb: f64,
10164    #[serde(rename = "effectiveMaxReplicas", default)]
10165    pub effective_max_replicas: i64,
10166    #[serde(rename = "effectiveMinReplicaMemoryGb", default)]
10167    pub effective_min_replica_memory_gb: f64,
10168    #[serde(rename = "effectiveMinReplicas", default)]
10169    pub effective_min_replicas: i64,
10170}
10171
10172/// `CustomPrivateDnsMapping` from the ClickHouse Cloud API.
10173#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10174pub struct CustomPrivateDnsMapping {
10175    #[serde(rename = "privateDnsName", skip_serializing_if = "Option::is_none", default)]
10176    pub private_dns_name: Option<String>,
10177}
10178
10179/// `GcpBackupBucket` from the ClickHouse Cloud API.
10180#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10181pub struct GcpBackupBucket {
10182    #[serde(rename = "accessKeyId", default)]
10183    pub access_key_id: String,
10184    #[serde(rename = "bucketPath", default)]
10185    pub bucket_path: String,
10186    #[serde(rename = "bucketProvider", default)]
10187    pub bucket_provider: GcpBackupBucketBucketprovider,
10188    #[serde(default)]
10189    pub id: uuid::Uuid,
10190}
10191
10192/// `GcpBackupBucketPatchRequestV1` from the ClickHouse Cloud API.
10193#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10194pub struct GcpBackupBucketPatchRequestV1 {
10195    #[serde(rename = "accessKeyId", default)]
10196    pub access_key_id: String,
10197    #[serde(rename = "bucketPath", default)]
10198    pub bucket_path: String,
10199    #[serde(rename = "bucketProvider", default)]
10200    pub bucket_provider: GcpBackupBucketPatchRequestV1Bucketprovider,
10201    #[serde(rename = "secretAccessKey", default)]
10202    pub secret_access_key: String,
10203}
10204
10205/// `GcpBackupBucketPostRequestV1` from the ClickHouse Cloud API.
10206#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10207pub struct GcpBackupBucketPostRequestV1 {
10208    #[serde(rename = "accessKeyId", default)]
10209    pub access_key_id: String,
10210    #[serde(rename = "bucketPath", default)]
10211    pub bucket_path: String,
10212    #[serde(rename = "bucketProvider", default)]
10213    pub bucket_provider: GcpBackupBucketPostRequestV1Bucketprovider,
10214    #[serde(rename = "secretAccessKey", default)]
10215    pub secret_access_key: String,
10216}
10217
10218/// `GcpBackupBucketProperties` from the ClickHouse Cloud API.
10219#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10220pub struct GcpBackupBucketProperties {
10221    #[serde(rename = "accessKeyId", default)]
10222    pub access_key_id: String,
10223    #[serde(rename = "bucketPath", default)]
10224    pub bucket_path: String,
10225    #[serde(rename = "bucketProvider", default)]
10226    pub bucket_provider: GcpBackupBucketPropertiesBucketprovider,
10227}
10228
10229/// `InstancePrivateEndpoint` from the ClickHouse Cloud API.
10230#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10231pub struct InstancePrivateEndpoint {
10232    #[serde(rename = "cloudProvider", default)]
10233    pub cloud_provider: InstancePrivateEndpointCloudprovider,
10234    #[serde(default)]
10235    pub description: String,
10236    #[serde(default)]
10237    pub id: String,
10238    #[serde(default)]
10239    pub region: InstancePrivateEndpointRegion,
10240}
10241
10242/// `InstancePrivateEndpointsPatch` from the ClickHouse Cloud API.
10243#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10244pub struct InstancePrivateEndpointsPatch {
10245    #[serde(default)]
10246    pub add: Vec<String>,
10247    #[serde(default)]
10248    pub remove: Vec<String>,
10249}
10250
10251/// `InstanceServiceQueryApiEndpointsPostRequest` from the ClickHouse Cloud API.
10252#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10253pub struct InstanceServiceQueryApiEndpointsPostRequest {
10254    #[serde(rename = "allowedOrigins", default)]
10255    pub allowed_origins: String,
10256    #[serde(rename = "openApiKeys", default)]
10257    pub open_api_keys: Vec<String>,
10258    #[serde(default)]
10259    pub roles: Vec<String>,
10260}
10261
10262/// `InstanceTagsPatch` from the ClickHouse Cloud API.
10263#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10264pub struct InstanceTagsPatch {
10265    #[serde(default)]
10266    pub add: Vec<ResourceTagsV1>,
10267    #[serde(default)]
10268    pub remove: Vec<ResourceTagsV1>,
10269}
10270
10271/// `Invitation` from the ClickHouse Cloud API.
10272#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10273pub struct Invitation {
10274    #[serde(rename = "assignedRoles", default)]
10275    pub assigned_roles: Vec<AssignedRole>,
10276    #[serde(rename = "createdAt", default)]
10277    pub created_at: chrono::DateTime<chrono::Utc>,
10278    #[serde(default)]
10279    pub email: String,
10280    #[serde(rename = "expireAt", default)]
10281    pub expire_at: chrono::DateTime<chrono::Utc>,
10282    #[serde(default)]
10283    pub id: uuid::Uuid,
10284    #[serde(default)]
10285    pub role: InvitationRole,
10286}
10287
10288/// `InvitationPostRequest` from the ClickHouse Cloud API.
10289#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10290pub struct InvitationPostRequest {
10291    #[serde(rename = "assignedRoleIds", default)]
10292    pub assigned_role_ids: Vec<String>,
10293    #[serde(default)]
10294    pub email: String,
10295    #[serde(default)]
10296    pub role: InvitationPostRequestRole,
10297}
10298
10299/// `IpAccessListEntry` from the ClickHouse Cloud API.
10300#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10301pub struct IpAccessListEntry {
10302    #[serde(skip_serializing_if = "Option::is_none", default)]
10303    pub description: Option<String>,
10304    #[serde(default)]
10305    pub source: String,
10306}
10307
10308/// `IpAccessListPatch` from the ClickHouse Cloud API.
10309#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10310pub struct IpAccessListPatch {
10311    #[serde(default)]
10312    pub add: Vec<IpAccessListEntry>,
10313    #[serde(default)]
10314    pub remove: Vec<IpAccessListEntry>,
10315}
10316
10317/// `Member` from the ClickHouse Cloud API.
10318#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10319pub struct Member {
10320    #[serde(rename = "assignedRoles", default)]
10321    pub assigned_roles: Vec<AssignedRole>,
10322    #[serde(default)]
10323    pub email: String,
10324    #[serde(rename = "joinedAt", default)]
10325    pub joined_at: chrono::DateTime<chrono::Utc>,
10326    #[serde(default)]
10327    pub name: String,
10328    #[serde(default)]
10329    pub role: MemberRole,
10330    #[serde(rename = "userId", default)]
10331    pub user_id: String,
10332}
10333
10334/// `MemberPatchRequest` from the ClickHouse Cloud API.
10335#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10336pub struct MemberPatchRequest {
10337    #[serde(rename = "assignedRoleIds", skip_serializing_if = "Option::is_none", default)]
10338    pub assigned_role_ids: Option<Vec<String>>,
10339    #[serde(skip_serializing_if = "Option::is_none", default)]
10340    pub role: Option<MemberPatchRequestRole>,
10341}
10342
10343/// `MskIamUser` from the ClickHouse Cloud API.
10344#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10345pub struct MskIamUser {
10346    #[serde(rename = "accessKeyId", default)]
10347    pub access_key_id: String,
10348    #[serde(rename = "secretKey", default)]
10349    pub secret_key: String,
10350}
10351
10352/// `MutualTLS` from the ClickHouse Cloud API.
10353#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10354pub struct MutualTLS {
10355    #[serde(default)]
10356    pub certificate: String,
10357    #[serde(rename = "privateKey", default)]
10358    pub private_key: String,
10359}
10360
10361/// `Organization` from the ClickHouse Cloud API.
10362#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10363pub struct Organization {
10364    #[serde(rename = "byocConfig", default)]
10365    pub byoc_config: Vec<ByocConfig>,
10366    #[serde(rename = "createdAt", default)]
10367    pub created_at: chrono::DateTime<chrono::Utc>,
10368    #[serde(rename = "enableCoreDumps", default)]
10369    pub enable_core_dumps: bool,
10370    #[serde(default)]
10371    pub id: uuid::Uuid,
10372    #[serde(default)]
10373    pub name: String,
10374    #[serde(rename = "privateEndpoints", default)]
10375    pub private_endpoints: Vec<OrganizationPrivateEndpoint>,
10376}
10377
10378/// `OrganizationCloudRegionPrivateEndpointConfig` from the ClickHouse Cloud API.
10379#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10380pub struct OrganizationCloudRegionPrivateEndpointConfig {
10381    #[serde(rename = "endpointServiceId", default)]
10382    pub endpoint_service_id: String,
10383}
10384
10385/// `OrganizationPatchPrivateEndpoint` from the ClickHouse Cloud API.
10386#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10387pub struct OrganizationPatchPrivateEndpoint {
10388    #[serde(rename = "cloudProvider", default)]
10389    pub cloud_provider: OrganizationPatchPrivateEndpointCloudprovider,
10390    #[serde(skip_serializing_if = "Option::is_none", default)]
10391    pub description: Option<String>,
10392    #[serde(default)]
10393    pub id: String,
10394    #[serde(default)]
10395    pub region: OrganizationPatchPrivateEndpointRegion,
10396}
10397
10398/// `OrganizationPatchRequest` from the ClickHouse Cloud API.
10399#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10400pub struct OrganizationPatchRequest {
10401    #[serde(rename = "enableCoreDumps", skip_serializing_if = "Option::is_none", default)]
10402    pub enable_core_dumps: Option<bool>,
10403    #[serde(skip_serializing_if = "Option::is_none", default)]
10404    pub name: Option<String>,
10405    #[serde(rename = "privateEndpoints", skip_serializing_if = "Option::is_none", default)]
10406    pub private_endpoints: Option<OrganizationPrivateEndpointsPatch>,
10407}
10408
10409/// `OrganizationPrivateEndpoint` from the ClickHouse Cloud API.
10410#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10411pub struct OrganizationPrivateEndpoint {
10412    #[serde(rename = "cloudProvider", default)]
10413    pub cloud_provider: OrganizationPrivateEndpointCloudprovider,
10414    #[serde(default)]
10415    pub description: String,
10416    #[serde(default)]
10417    pub id: String,
10418    #[serde(default)]
10419    pub region: OrganizationPrivateEndpointRegion,
10420}
10421
10422/// `OrganizationPrivateEndpointsPatch` from the ClickHouse Cloud API.
10423#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10424pub struct OrganizationPrivateEndpointsPatch {
10425    #[serde(default)]
10426    pub add: Vec<OrganizationPatchPrivateEndpoint>,
10427    #[serde(default)]
10428    pub remove: Vec<OrganizationPatchPrivateEndpoint>,
10429}
10430
10431/// `PLAIN` from the ClickHouse Cloud API.
10432#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10433pub struct PLAIN {
10434    #[serde(default)]
10435    pub password: String,
10436    #[serde(default)]
10437    pub username: String,
10438}
10439
10440/// `PostgresService` from the ClickHouse Cloud API.
10441#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10442pub struct PostgresService {
10443    #[serde(rename = "connectionString", default)]
10444    pub connection_string: String,
10445    #[serde(rename = "createdAt", default)]
10446    pub created_at: PgCreatedAtProperty,
10447    #[serde(rename = "haType", default)]
10448    pub ha_type: PgHaType,
10449    #[serde(default)]
10450    pub hostname: String,
10451    #[serde(default)]
10452    pub id: PgIdProperty,
10453    #[serde(rename = "isPrimary", default)]
10454    pub is_primary: PgIsPrimaryProperty,
10455    #[serde(default)]
10456    pub name: PgNameProperty,
10457    #[serde(default)]
10458    pub password: String,
10459    #[serde(rename = "postgresVersion", default)]
10460    pub postgres_version: PgVersion,
10461    #[serde(default)]
10462    pub provider: PgProvider,
10463    #[serde(default)]
10464    pub region: PgRegion,
10465    #[serde(default)]
10466    pub size: PgSize,
10467    #[serde(default)]
10468    pub state: PgStateProperty,
10469    #[serde(rename = "storageSize", default)]
10470    pub storage_size: PgStorageSize,
10471    #[serde(default)]
10472    pub tags: PgTags,
10473    #[serde(default)]
10474    pub username: String,
10475}
10476
10477/// `PostgresServiceListItem` from the ClickHouse Cloud API.
10478#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10479pub struct PostgresServiceListItem {
10480    #[serde(rename = "createdAt", default)]
10481    pub created_at: PgCreatedAtProperty,
10482    #[serde(rename = "haType", default)]
10483    pub ha_type: PgHaType,
10484    #[serde(default)]
10485    pub id: PgIdProperty,
10486    #[serde(rename = "isPrimary", default)]
10487    pub is_primary: PgIsPrimaryProperty,
10488    #[serde(default)]
10489    pub name: PgNameProperty,
10490    #[serde(rename = "postgresVersion", default)]
10491    pub postgres_version: PgVersion,
10492    #[serde(default)]
10493    pub provider: PgProvider,
10494    #[serde(default)]
10495    pub region: PgRegion,
10496    #[serde(default)]
10497    pub size: PgSize,
10498    #[serde(default)]
10499    pub state: PgStateProperty,
10500    #[serde(rename = "storageSize", default)]
10501    pub storage_size: PgStorageSize,
10502    #[serde(default)]
10503    pub tags: PgTags,
10504}
10505
10506/// `PostgresServicePasswordResource` from the ClickHouse Cloud API.
10507#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10508pub struct PostgresServicePasswordResource {
10509    #[serde(default)]
10510    pub password: String,
10511}
10512
10513/// `PostgresServicePatchRequest` from the ClickHouse Cloud API.
10514#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10515pub struct PostgresServicePatchRequest {
10516    #[serde(rename = "haType", skip_serializing_if = "Option::is_none", default)]
10517    pub ha_type: Option<PgHaType>,
10518    #[serde(skip_serializing_if = "Option::is_none", default)]
10519    pub name: Option<PgNameProperty>,
10520    #[serde(rename = "postgresVersion", skip_serializing_if = "Option::is_none", default)]
10521    pub postgres_version: Option<PgVersion>,
10522    #[serde(skip_serializing_if = "Option::is_none", default)]
10523    pub provider: Option<PgProvider>,
10524    #[serde(skip_serializing_if = "Option::is_none", default)]
10525    pub region: Option<PgRegion>,
10526    #[serde(skip_serializing_if = "Option::is_none", default)]
10527    pub size: Option<PgSize>,
10528    #[serde(rename = "storageSize", skip_serializing_if = "Option::is_none", default)]
10529    pub storage_size: Option<PgStorageSize>,
10530    #[serde(skip_serializing_if = "Option::is_none", default)]
10531    pub tags: Option<PgTags>,
10532}
10533
10534/// `PostgresServicePostRequest` from the ClickHouse Cloud API.
10535#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10536pub struct PostgresServicePostRequest {
10537    #[serde(rename = "haType", skip_serializing_if = "Option::is_none", default)]
10538    pub ha_type: Option<PgHaType>,
10539    pub name: PgNameProperty,
10540    #[serde(rename = "pgBouncerConfig", skip_serializing_if = "Option::is_none", default)]
10541    pub pg_bouncer_config: Option<PgBouncerConfig>,
10542    #[serde(rename = "pgConfig", skip_serializing_if = "Option::is_none", default)]
10543    pub pg_config: Option<PgConfig>,
10544    #[serde(rename = "postgresVersion", skip_serializing_if = "Option::is_none", default)]
10545    pub postgres_version: Option<PgVersion>,
10546    pub provider: PgProvider,
10547    pub region: PgRegion,
10548    pub size: PgSize,
10549    #[serde(rename = "storageSize")]
10550    pub storage_size: PgStorageSize,
10551    #[serde(skip_serializing_if = "Option::is_none", default)]
10552    pub tags: Option<PgTags>,
10553}
10554
10555/// `PostgresServiceReadReplicaRequest` from the ClickHouse Cloud API.
10556#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10557pub struct PostgresServiceReadReplicaRequest {
10558    pub name: PgNameProperty,
10559    #[serde(rename = "pgBouncerConfig", skip_serializing_if = "Option::is_none", default)]
10560    pub pg_bouncer_config: Option<PgBouncerConfig>,
10561    #[serde(rename = "pgConfig", skip_serializing_if = "Option::is_none", default)]
10562    pub pg_config: Option<PgConfig>,
10563    #[serde(skip_serializing_if = "Option::is_none", default)]
10564    pub tags: Option<PgTags>,
10565}
10566
10567/// `PostgresServiceRestoreRequest` from the ClickHouse Cloud API.
10568#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10569pub struct PostgresServiceRestoreRequest {
10570    pub name: PgNameProperty,
10571    #[serde(rename = "pgBouncerConfig", skip_serializing_if = "Option::is_none", default)]
10572    pub pg_bouncer_config: Option<PgBouncerConfig>,
10573    #[serde(rename = "pgConfig", skip_serializing_if = "Option::is_none", default)]
10574    pub pg_config: Option<PgConfig>,
10575    #[serde(rename = "restoreTarget")]
10576    pub restore_target: PgPitrRestoreTargetProperty,
10577    #[serde(skip_serializing_if = "Option::is_none", default)]
10578    pub tags: Option<PgTags>,
10579}
10580
10581/// `PostgresServiceSetPassword` from the ClickHouse Cloud API.
10582#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10583pub struct PostgresServiceSetPassword {
10584    #[serde(default)]
10585    pub password: PgPassword,
10586}
10587
10588/// `PostgresServiceSetState` from the ClickHouse Cloud API.
10589#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10590pub struct PostgresServiceSetState {
10591    #[serde(default)]
10592    pub command: PostgresServiceSetStateCommand,
10593}
10594
10595/// `PrivateEndpointConfig` from the ClickHouse Cloud API.
10596#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10597pub struct PrivateEndpointConfig {
10598    #[serde(rename = "endpointServiceId", default)]
10599    pub endpoint_service_id: String,
10600    #[serde(rename = "privateDnsHostname", default)]
10601    pub private_dns_hostname: String,
10602}
10603
10604/// `RBACPolicy` from the ClickHouse Cloud API.
10605#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10606pub struct RBACPolicy {
10607    #[serde(rename = "allowDeny", default)]
10608    pub allow_deny: RBACPolicyAllowdeny,
10609    #[serde(default)]
10610    pub id: String,
10611    #[serde(default)]
10612    pub permissions: Vec<String>,
10613    #[serde(default)]
10614    pub resources: Vec<String>,
10615    #[serde(rename = "roleId", default)]
10616    pub role_id: String,
10617    #[serde(default)]
10618    pub tags: RBACPolicyTags,
10619    #[serde(rename = "tenantId", default)]
10620    pub tenant_id: String,
10621}
10622
10623/// `RBACPolicyCreateRequest` from the ClickHouse Cloud API.
10624#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10625pub struct RBACPolicyCreateRequest {
10626    #[serde(rename = "allowDeny")]
10627    pub allow_deny: RBACPolicyCreateRequestAllowdeny,
10628    pub permissions: Vec<String>,
10629    pub resources: Vec<String>,
10630    #[serde(skip_serializing_if = "Option::is_none", default)]
10631    pub tags: Option<RBACPolicyTags>,
10632}
10633
10634/// `RBACPolicyTags` from the ClickHouse Cloud API.
10635#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10636pub struct RBACPolicyTags {
10637    #[serde(skip_serializing_if = "Option::is_none", default)]
10638    pub grants: Option<Vec<String>>,
10639    #[serde(rename = "roleV2", skip_serializing_if = "Option::is_none", default)]
10640    pub role_v2: Option<RBACPolicyTagsRolev2>,
10641}
10642
10643/// `RBACRole` from the ClickHouse Cloud API.
10644#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10645pub struct RBACRole {
10646    #[serde(default)]
10647    pub actors: Vec<String>,
10648    #[serde(rename = "createdAt", default)]
10649    pub created_at: chrono::DateTime<chrono::Utc>,
10650    #[serde(default)]
10651    pub id: String,
10652    #[serde(default)]
10653    pub name: String,
10654    #[serde(rename = "ownerId", default)]
10655    pub owner_id: String,
10656    #[serde(default)]
10657    pub policies: Vec<RBACPolicy>,
10658    #[serde(rename = "tenantId", default)]
10659    pub tenant_id: String,
10660    #[serde(default)]
10661    pub r#type: RBACRoleType,
10662    #[serde(rename = "updatedAt", default)]
10663    pub updated_at: chrono::DateTime<chrono::Utc>,
10664}
10665
10666/// `ResourceTagsV1` from the ClickHouse Cloud API.
10667#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10668pub struct ResourceTagsV1 {
10669    pub key: String,
10670    #[serde(skip_serializing_if = "Option::is_none", default)]
10671    pub value: Option<String>,
10672}
10673
10674/// `ReversePrivateEndpoint` from the ClickHouse Cloud API.
10675#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10676pub struct ReversePrivateEndpoint {
10677    #[serde(rename = "customPrivateDnsMappings", skip_serializing_if = "Option::is_none", default)]
10678    pub custom_private_dns_mappings: Option<Vec<CustomPrivateDnsMapping>>,
10679    #[serde(default)]
10680    pub description: String,
10681    #[serde(rename = "dnsNames", default)]
10682    pub dns_names: Vec<String>,
10683    #[serde(rename = "endpointId", default)]
10684    pub endpoint_id: String,
10685    #[serde(rename = "gcpServiceAttachment", skip_serializing_if = "Option::is_none", default)]
10686    pub gcp_service_attachment: Option<String>,
10687    #[serde(default)]
10688    pub id: uuid::Uuid,
10689    #[serde(rename = "mskAuthentication", skip_serializing_if = "Option::is_none", default)]
10690    pub msk_authentication: Option<ReversePrivateEndpointMskauthentication>,
10691    #[serde(rename = "mskClusterArn", skip_serializing_if = "Option::is_none", default)]
10692    pub msk_cluster_arn: Option<String>,
10693    #[serde(rename = "privateDnsNames", default)]
10694    pub private_dns_names: Vec<String>,
10695    #[serde(rename = "serviceId", default)]
10696    pub service_id: uuid::Uuid,
10697    #[serde(default)]
10698    pub status: ReversePrivateEndpointStatus,
10699    #[serde(default)]
10700    pub r#type: ReversePrivateEndpointType,
10701    #[serde(rename = "vpcEndpointServiceName", skip_serializing_if = "Option::is_none", default)]
10702    pub vpc_endpoint_service_name: Option<String>,
10703    #[serde(rename = "vpcResourceConfigurationId", skip_serializing_if = "Option::is_none", default)]
10704    pub vpc_resource_configuration_id: Option<String>,
10705    #[serde(rename = "vpcResourceShareArn", skip_serializing_if = "Option::is_none", default)]
10706    pub vpc_resource_share_arn: Option<String>,
10707}
10708
10709/// `RoleCreateRequest` from the ClickHouse Cloud API.
10710#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10711pub struct RoleCreateRequest {
10712    pub actors: Vec<String>,
10713    pub name: String,
10714    pub policies: Vec<RBACPolicyCreateRequest>,
10715}
10716
10717/// `RoleUpdateRequest` from the ClickHouse Cloud API.
10718#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10719pub struct RoleUpdateRequest {
10720    #[serde(default)]
10721    pub actors: Vec<String>,
10722    #[serde(default)]
10723    pub name: String,
10724    #[serde(default)]
10725    pub policies: Vec<RBACPolicyCreateRequest>,
10726}
10727
10728/// `ScalingSchedule` from the ClickHouse Cloud API.
10729#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10730pub struct ScalingSchedule {
10731    #[serde(rename = "activeEntryId", skip_serializing_if = "Option::is_none", default)]
10732    pub active_entry_id: Option<uuid::Uuid>,
10733    #[serde(rename = "baseConfig", default)]
10734    pub base_config: ScalingScheduleBaseConfig,
10735    #[serde(default)]
10736    pub entries: Vec<ScalingScheduleEntry>,
10737}
10738
10739/// `ScalingScheduleBaseConfig` from the ClickHouse Cloud API.
10740#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10741pub struct ScalingScheduleBaseConfig {
10742    #[serde(rename = "idleScaling", default)]
10743    pub idle_scaling: bool,
10744    #[serde(rename = "idleTimeoutMinutes", default)]
10745    pub idle_timeout_minutes: i64,
10746    #[serde(rename = "maxReplicaMemoryGb", default)]
10747    pub max_replica_memory_gb: f64,
10748    #[serde(rename = "maxReplicas", default)]
10749    pub max_replicas: i64,
10750    #[serde(rename = "minReplicaMemoryGb", default)]
10751    pub min_replica_memory_gb: f64,
10752    #[serde(rename = "minReplicas", default)]
10753    pub min_replicas: i64,
10754}
10755
10756/// `ScalingScheduleEntry` from the ClickHouse Cloud API.
10757#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10758pub struct ScalingScheduleEntry {
10759    #[serde(rename = "endHourUtc", default)]
10760    pub end_hour_utc: i64,
10761    #[serde(default)]
10762    pub id: uuid::Uuid,
10763    #[serde(rename = "idleScaling", skip_serializing_if = "Option::is_none", default)]
10764    pub idle_scaling: Option<bool>,
10765    #[serde(rename = "idleTimeoutMinutes", skip_serializing_if = "Option::is_none", default)]
10766    pub idle_timeout_minutes: Option<i64>,
10767    #[serde(rename = "isActiveNow", default)]
10768    pub is_active_now: bool,
10769    #[serde(rename = "maxReplicaMemoryGb", skip_serializing_if = "Option::is_none", default)]
10770    pub max_replica_memory_gb: Option<f64>,
10771    #[serde(rename = "maxReplicas", skip_serializing_if = "Option::is_none", default)]
10772    pub max_replicas: Option<i64>,
10773    #[serde(rename = "minReplicaMemoryGb", skip_serializing_if = "Option::is_none", default)]
10774    pub min_replica_memory_gb: Option<f64>,
10775    #[serde(rename = "minReplicas", skip_serializing_if = "Option::is_none", default)]
10776    pub min_replicas: Option<i64>,
10777    #[serde(default)]
10778    pub name: String,
10779    #[serde(rename = "startHourUtc", default)]
10780    pub start_hour_utc: i64,
10781    #[serde(default)]
10782    pub weekdays: Vec<i64>,
10783}
10784
10785/// `ScalingScheduleEntryRequest` from the ClickHouse Cloud API.
10786#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10787pub struct ScalingScheduleEntryRequest {
10788    #[serde(rename = "endHourUtc", default)]
10789    pub end_hour_utc: i64,
10790    #[serde(rename = "idleScaling", skip_serializing_if = "Option::is_none", default)]
10791    pub idle_scaling: Option<bool>,
10792    #[serde(rename = "idleTimeoutMinutes", skip_serializing_if = "Option::is_none", default)]
10793    pub idle_timeout_minutes: Option<i64>,
10794    #[serde(rename = "maxReplicaMemoryGb", skip_serializing_if = "Option::is_none", default)]
10795    pub max_replica_memory_gb: Option<f64>,
10796    #[serde(rename = "maxReplicas", skip_serializing_if = "Option::is_none", default)]
10797    pub max_replicas: Option<i64>,
10798    #[serde(rename = "minReplicaMemoryGb", skip_serializing_if = "Option::is_none", default)]
10799    pub min_replica_memory_gb: Option<f64>,
10800    #[serde(rename = "minReplicas", skip_serializing_if = "Option::is_none", default)]
10801    pub min_replicas: Option<i64>,
10802    #[serde(default)]
10803    pub name: String,
10804    #[serde(rename = "startHourUtc", default)]
10805    pub start_hour_utc: i64,
10806    #[serde(default)]
10807    pub weekdays: Vec<i64>,
10808}
10809
10810/// `ScalingSchedulePostRequest` from the ClickHouse Cloud API.
10811#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10812pub struct ScalingSchedulePostRequest {
10813    #[serde(default)]
10814    pub entries: Vec<ScalingScheduleEntryRequest>,
10815}
10816
10817/// `ScimEnterpriseManager` from the ClickHouse Cloud API.
10818#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10819pub struct ScimEnterpriseManager {
10820    #[serde(rename = "$ref", default)]
10821    pub r#ref: String,
10822    #[serde(rename = "displayName", default)]
10823    pub display_name: String,
10824    #[serde(default)]
10825    pub value: String,
10826}
10827
10828/// `ScimEnterpriseUser` from the ClickHouse Cloud API.
10829#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10830pub struct ScimEnterpriseUser {
10831    #[serde(rename = "costCenter", default)]
10832    pub cost_center: String,
10833    #[serde(default)]
10834    pub department: String,
10835    #[serde(default)]
10836    pub division: String,
10837    #[serde(rename = "employeeNumber", default)]
10838    pub employee_number: String,
10839    #[serde(default)]
10840    pub manager: ScimEnterpriseManager,
10841    #[serde(default)]
10842    pub organization: String,
10843}
10844
10845/// `ScimGroup` from the ClickHouse Cloud API.
10846#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10847pub struct ScimGroup {
10848    #[serde(rename = "displayName")]
10849    pub display_name: String,
10850    #[serde(rename = "externalId", skip_serializing_if = "Option::is_none", default)]
10851    pub external_id: Option<String>,
10852    pub id: uuid::Uuid,
10853    #[serde(skip_serializing_if = "Option::is_none", default)]
10854    pub members: Option<Vec<ScimGroupMember>>,
10855    pub meta: ScimGroupMeta,
10856    pub schemas: Vec<String>,
10857}
10858
10859/// `ScimGroupListResponse` from the ClickHouse Cloud API.
10860#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10861pub struct ScimGroupListResponse {
10862    #[serde(rename = "Resources")]
10863    pub resources: Vec<ScimGroup>,
10864    #[serde(rename = "itemsPerPage")]
10865    pub items_per_page: i64,
10866    pub schemas: Vec<String>,
10867    #[serde(rename = "startIndex")]
10868    pub start_index: i64,
10869    #[serde(rename = "totalResults")]
10870    pub total_results: i64,
10871}
10872
10873/// `ScimGroupMember` from the ClickHouse Cloud API.
10874#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10875pub struct ScimGroupMember {
10876    #[serde(skip_serializing_if = "Option::is_none", default)]
10877    pub display: Option<String>,
10878    #[serde(skip_serializing_if = "Option::is_none", default)]
10879    pub r#type: Option<String>,
10880    pub value: String,
10881}
10882
10883/// `ScimGroupMeta` from the ClickHouse Cloud API.
10884#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10885pub struct ScimGroupMeta {
10886    pub created: chrono::DateTime<chrono::Utc>,
10887    #[serde(rename = "lastModified")]
10888    pub last_modified: chrono::DateTime<chrono::Utc>,
10889    #[serde(skip_serializing_if = "Option::is_none", default)]
10890    pub location: Option<String>,
10891    #[serde(rename = "resourceType")]
10892    pub resource_type: String,
10893}
10894
10895/// `ScimGroupPostRequest` from the ClickHouse Cloud API.
10896#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10897pub struct ScimGroupPostRequest {
10898    #[serde(rename = "displayName")]
10899    pub display_name: String,
10900    #[serde(rename = "externalId", skip_serializing_if = "Option::is_none", default)]
10901    pub external_id: Option<String>,
10902    #[serde(skip_serializing_if = "Option::is_none", default)]
10903    pub members: Option<Vec<ScimGroupMember>>,
10904    pub schemas: Vec<String>,
10905}
10906
10907/// `ScimGroupPutRequest` from the ClickHouse Cloud API.
10908#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10909pub struct ScimGroupPutRequest {
10910    #[serde(rename = "displayName")]
10911    pub display_name: String,
10912    #[serde(rename = "externalId", skip_serializing_if = "Option::is_none", default)]
10913    pub external_id: Option<String>,
10914    #[serde(skip_serializing_if = "Option::is_none", default)]
10915    pub id: Option<String>,
10916    #[serde(skip_serializing_if = "Option::is_none", default)]
10917    pub members: Option<Vec<ScimGroupMember>>,
10918    #[serde(skip_serializing_if = "Option::is_none", default)]
10919    pub meta: Option<ScimGroupMeta>,
10920    pub schemas: Vec<String>,
10921}
10922
10923/// `ScimListResponse` from the ClickHouse Cloud API.
10924#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10925pub struct ScimListResponse {
10926    #[serde(rename = "Resources")]
10927    pub resources: Vec<ScimUser>,
10928    #[serde(rename = "itemsPerPage")]
10929    pub items_per_page: i64,
10930    pub schemas: Vec<String>,
10931    #[serde(rename = "startIndex")]
10932    pub start_index: i64,
10933    #[serde(rename = "totalResults")]
10934    pub total_results: i64,
10935}
10936
10937/// `ScimPatchOp` from the ClickHouse Cloud API.
10938#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10939pub struct ScimPatchOp {
10940    #[serde(rename = "Operations")]
10941    pub operations: Vec<ScimPatchOperation>,
10942    pub schemas: Vec<String>,
10943}
10944
10945/// `ScimPatchOperation` from the ClickHouse Cloud API.
10946#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10947pub struct ScimPatchOperation {
10948    pub op: ScimPatchOperationOp,
10949    #[serde(skip_serializing_if = "Option::is_none", default)]
10950    pub path: Option<String>,
10951    #[serde(skip_serializing_if = "Option::is_none", default)]
10952    pub value: Option<String>,
10953}
10954
10955/// `ScimUser` from the ClickHouse Cloud API.
10956#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10957pub struct ScimUser {
10958    pub active: bool,
10959    #[serde(skip_serializing_if = "Option::is_none", default)]
10960    pub addresses: Option<Vec<ScimUserAddress>>,
10961    #[serde(rename = "displayName", skip_serializing_if = "Option::is_none", default)]
10962    pub display_name: Option<String>,
10963    pub emails: Vec<ScimUserEmail>,
10964    #[serde(skip_serializing_if = "Option::is_none", default)]
10965    pub entitlements: Option<Vec<ScimUserEntitlement>>,
10966    #[serde(rename = "externalId", skip_serializing_if = "Option::is_none", default)]
10967    pub external_id: Option<String>,
10968    #[serde(skip_serializing_if = "Option::is_none", default)]
10969    pub groups: Option<Vec<ScimUserGroup>>,
10970    pub id: String,
10971    #[serde(skip_serializing_if = "Option::is_none", default)]
10972    pub ims: Option<Vec<ScimUserIm>>,
10973    #[serde(skip_serializing_if = "Option::is_none", default)]
10974    pub locale: Option<String>,
10975    pub meta: ScimUserMeta,
10976    pub name: ScimUserName,
10977    #[serde(rename = "nickName", skip_serializing_if = "Option::is_none", default)]
10978    pub nick_name: Option<String>,
10979    #[serde(rename = "phoneNumbers", skip_serializing_if = "Option::is_none", default)]
10980    pub phone_numbers: Option<Vec<ScimUserPhoneNumber>>,
10981    #[serde(skip_serializing_if = "Option::is_none", default)]
10982    pub photos: Option<Vec<ScimUserPhoto>>,
10983    #[serde(rename = "preferredLanguage", skip_serializing_if = "Option::is_none", default)]
10984    pub preferred_language: Option<String>,
10985    #[serde(rename = "profileUrl", skip_serializing_if = "Option::is_none", default)]
10986    pub profile_url: Option<String>,
10987    #[serde(skip_serializing_if = "Option::is_none", default)]
10988    pub roles: Option<Vec<ScimUserRole>>,
10989    pub schemas: Vec<String>,
10990    #[serde(skip_serializing_if = "Option::is_none", default)]
10991    pub timezone: Option<String>,
10992    #[serde(skip_serializing_if = "Option::is_none", default)]
10993    pub title: Option<String>,
10994    #[serde(rename = "userName")]
10995    pub user_name: String,
10996    #[serde(rename = "userType", skip_serializing_if = "Option::is_none", default)]
10997    pub user_type: Option<String>,
10998    #[serde(rename = "x509Certificates", skip_serializing_if = "Option::is_none", default)]
10999    pub x509_certificates: Option<Vec<ScimX509Certificate>>,
11000}
11001
11002/// `ScimUserAddress` from the ClickHouse Cloud API.
11003#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11004pub struct ScimUserAddress {
11005    #[serde(default)]
11006    pub country: String,
11007    #[serde(default)]
11008    pub formatted: String,
11009    #[serde(default)]
11010    pub locality: String,
11011    #[serde(rename = "postalCode", default)]
11012    pub postal_code: String,
11013    #[serde(default)]
11014    pub primary: bool,
11015    #[serde(default)]
11016    pub region: String,
11017    #[serde(rename = "streetAddress", default)]
11018    pub street_address: String,
11019    #[serde(default)]
11020    pub r#type: String,
11021}
11022
11023/// `ScimUserEmail` from the ClickHouse Cloud API.
11024#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11025pub struct ScimUserEmail {
11026    #[serde(skip_serializing_if = "Option::is_none", default)]
11027    pub primary: Option<bool>,
11028    #[serde(skip_serializing_if = "Option::is_none", default)]
11029    pub r#type: Option<String>,
11030    pub value: String,
11031}
11032
11033/// `ScimUserEntitlement` from the ClickHouse Cloud API.
11034#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11035pub struct ScimUserEntitlement {
11036    #[serde(default)]
11037    pub display: String,
11038    #[serde(default)]
11039    pub primary: bool,
11040    #[serde(default)]
11041    pub r#type: String,
11042    #[serde(default)]
11043    pub value: String,
11044}
11045
11046/// `ScimUserGroup` from the ClickHouse Cloud API.
11047#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11048pub struct ScimUserGroup {
11049    #[serde(default)]
11050    pub display: String,
11051    #[serde(default)]
11052    pub r#type: String,
11053    #[serde(default)]
11054    pub value: String,
11055}
11056
11057/// `ScimUserIm` from the ClickHouse Cloud API.
11058#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11059pub struct ScimUserIm {
11060    #[serde(default)]
11061    pub primary: bool,
11062    #[serde(default)]
11063    pub r#type: String,
11064    #[serde(default)]
11065    pub value: String,
11066}
11067
11068/// `ScimUserMeta` from the ClickHouse Cloud API.
11069#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11070pub struct ScimUserMeta {
11071    pub created: chrono::DateTime<chrono::Utc>,
11072    #[serde(rename = "lastModified")]
11073    pub last_modified: chrono::DateTime<chrono::Utc>,
11074    #[serde(skip_serializing_if = "Option::is_none", default)]
11075    pub location: Option<String>,
11076    #[serde(rename = "resourceType")]
11077    pub resource_type: String,
11078}
11079
11080/// `ScimUserName` from the ClickHouse Cloud API.
11081#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11082pub struct ScimUserName {
11083    #[serde(rename = "familyName", default)]
11084    pub family_name: String,
11085    #[serde(default)]
11086    pub formatted: String,
11087    #[serde(rename = "givenName", default)]
11088    pub given_name: String,
11089    #[serde(rename = "honorificPrefix", default)]
11090    pub honorific_prefix: String,
11091    #[serde(rename = "honorificSuffix", default)]
11092    pub honorific_suffix: String,
11093    #[serde(rename = "middleName", default)]
11094    pub middle_name: String,
11095}
11096
11097/// `ScimUserPhoneNumber` from the ClickHouse Cloud API.
11098#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11099pub struct ScimUserPhoneNumber {
11100    #[serde(default)]
11101    pub primary: bool,
11102    #[serde(default)]
11103    pub r#type: String,
11104    #[serde(default)]
11105    pub value: String,
11106}
11107
11108/// `ScimUserPhoto` from the ClickHouse Cloud API.
11109#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11110pub struct ScimUserPhoto {
11111    #[serde(default)]
11112    pub primary: bool,
11113    #[serde(default)]
11114    pub r#type: String,
11115    #[serde(default)]
11116    pub value: String,
11117}
11118
11119/// `ScimUserPostRequest` from the ClickHouse Cloud API.
11120#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11121pub struct ScimUserPostRequest {
11122    #[serde(skip_serializing_if = "Option::is_none", default)]
11123    pub active: Option<bool>,
11124    #[serde(skip_serializing_if = "Option::is_none", default)]
11125    pub addresses: Option<Vec<ScimUserAddress>>,
11126    #[serde(rename = "displayName", skip_serializing_if = "Option::is_none", default)]
11127    pub display_name: Option<String>,
11128    pub emails: Vec<ScimUserEmail>,
11129    #[serde(skip_serializing_if = "Option::is_none", default)]
11130    pub entitlements: Option<Vec<ScimUserEntitlement>>,
11131    #[serde(rename = "externalId", skip_serializing_if = "Option::is_none", default)]
11132    pub external_id: Option<String>,
11133    #[serde(skip_serializing_if = "Option::is_none", default)]
11134    pub groups: Option<Vec<ScimUserGroup>>,
11135    #[serde(skip_serializing_if = "Option::is_none", default)]
11136    pub ims: Option<Vec<ScimUserIm>>,
11137    #[serde(skip_serializing_if = "Option::is_none", default)]
11138    pub locale: Option<String>,
11139    #[serde(skip_serializing_if = "Option::is_none", default)]
11140    pub name: Option<ScimUserName>,
11141    #[serde(rename = "nickName", skip_serializing_if = "Option::is_none", default)]
11142    pub nick_name: Option<String>,
11143    #[serde(skip_serializing_if = "Option::is_none", default)]
11144    pub password: Option<String>,
11145    #[serde(rename = "phoneNumbers", skip_serializing_if = "Option::is_none", default)]
11146    pub phone_numbers: Option<Vec<ScimUserPhoneNumber>>,
11147    #[serde(skip_serializing_if = "Option::is_none", default)]
11148    pub photos: Option<Vec<ScimUserPhoto>>,
11149    #[serde(rename = "preferredLanguage", skip_serializing_if = "Option::is_none", default)]
11150    pub preferred_language: Option<String>,
11151    #[serde(rename = "profileUrl", skip_serializing_if = "Option::is_none", default)]
11152    pub profile_url: Option<String>,
11153    #[serde(skip_serializing_if = "Option::is_none", default)]
11154    pub roles: Option<Vec<ScimUserRole>>,
11155    pub schemas: Vec<String>,
11156    #[serde(skip_serializing_if = "Option::is_none", default)]
11157    pub timezone: Option<String>,
11158    #[serde(skip_serializing_if = "Option::is_none", default)]
11159    pub title: Option<String>,
11160    #[serde(rename = "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User", skip_serializing_if = "Option::is_none", default)]
11161    pub urn_ietf_params_scim_schemas_extension_enterprise_2_0_user: Option<ScimEnterpriseUser>,
11162    #[serde(rename = "userName")]
11163    pub user_name: String,
11164    #[serde(rename = "userType", skip_serializing_if = "Option::is_none", default)]
11165    pub user_type: Option<String>,
11166    #[serde(rename = "x509Certificates", skip_serializing_if = "Option::is_none", default)]
11167    pub x509_certificates: Option<Vec<ScimX509Certificate>>,
11168}
11169
11170/// `ScimUserPutRequest` from the ClickHouse Cloud API.
11171#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11172pub struct ScimUserPutRequest {
11173    #[serde(skip_serializing_if = "Option::is_none", default)]
11174    pub active: Option<bool>,
11175    #[serde(skip_serializing_if = "Option::is_none", default)]
11176    pub addresses: Option<Vec<ScimUserAddress>>,
11177    #[serde(rename = "displayName", skip_serializing_if = "Option::is_none", default)]
11178    pub display_name: Option<String>,
11179    pub emails: Vec<ScimUserEmail>,
11180    #[serde(skip_serializing_if = "Option::is_none", default)]
11181    pub entitlements: Option<Vec<ScimUserEntitlement>>,
11182    #[serde(rename = "externalId", skip_serializing_if = "Option::is_none", default)]
11183    pub external_id: Option<String>,
11184    #[serde(skip_serializing_if = "Option::is_none", default)]
11185    pub groups: Option<Vec<ScimUserGroup>>,
11186    #[serde(skip_serializing_if = "Option::is_none", default)]
11187    pub id: Option<String>,
11188    #[serde(skip_serializing_if = "Option::is_none", default)]
11189    pub ims: Option<Vec<ScimUserIm>>,
11190    #[serde(skip_serializing_if = "Option::is_none", default)]
11191    pub locale: Option<String>,
11192    #[serde(skip_serializing_if = "Option::is_none", default)]
11193    pub meta: Option<ScimUserMeta>,
11194    #[serde(skip_serializing_if = "Option::is_none", default)]
11195    pub name: Option<ScimUserName>,
11196    #[serde(rename = "nickName", skip_serializing_if = "Option::is_none", default)]
11197    pub nick_name: Option<String>,
11198    #[serde(skip_serializing_if = "Option::is_none", default)]
11199    pub password: Option<String>,
11200    #[serde(rename = "phoneNumbers", skip_serializing_if = "Option::is_none", default)]
11201    pub phone_numbers: Option<Vec<ScimUserPhoneNumber>>,
11202    #[serde(skip_serializing_if = "Option::is_none", default)]
11203    pub photos: Option<Vec<ScimUserPhoto>>,
11204    #[serde(rename = "preferredLanguage", skip_serializing_if = "Option::is_none", default)]
11205    pub preferred_language: Option<String>,
11206    #[serde(rename = "profileUrl", skip_serializing_if = "Option::is_none", default)]
11207    pub profile_url: Option<String>,
11208    #[serde(skip_serializing_if = "Option::is_none", default)]
11209    pub roles: Option<Vec<ScimUserRole>>,
11210    pub schemas: Vec<String>,
11211    #[serde(skip_serializing_if = "Option::is_none", default)]
11212    pub timezone: Option<String>,
11213    #[serde(skip_serializing_if = "Option::is_none", default)]
11214    pub title: Option<String>,
11215    #[serde(rename = "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User", skip_serializing_if = "Option::is_none", default)]
11216    pub urn_ietf_params_scim_schemas_extension_enterprise_2_0_user: Option<ScimEnterpriseUser>,
11217    #[serde(rename = "userName")]
11218    pub user_name: String,
11219    #[serde(rename = "userType", skip_serializing_if = "Option::is_none", default)]
11220    pub user_type: Option<String>,
11221    #[serde(rename = "x509Certificates", skip_serializing_if = "Option::is_none", default)]
11222    pub x509_certificates: Option<Vec<ScimX509Certificate>>,
11223}
11224
11225/// `ScimUserRole` from the ClickHouse Cloud API.
11226#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11227pub struct ScimUserRole {
11228    #[serde(default)]
11229    pub display: String,
11230    #[serde(default)]
11231    pub primary: bool,
11232    #[serde(default)]
11233    pub r#type: String,
11234    #[serde(default)]
11235    pub value: String,
11236}
11237
11238/// `ScimX509Certificate` from the ClickHouse Cloud API.
11239#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11240pub struct ScimX509Certificate {
11241    #[serde(default)]
11242    pub value: String,
11243}
11244
11245/// `ScimAuthenticationScheme` from the ClickHouse Cloud API.
11246#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11247pub struct ScimAuthenticationScheme {
11248    pub description: String,
11249    pub name: String,
11250    #[serde(skip_serializing_if = "Option::is_none", default)]
11251    pub primary: Option<bool>,
11252    #[serde(rename = "specUri", skip_serializing_if = "Option::is_none", default)]
11253    pub spec_uri: Option<String>,
11254    #[serde(rename = "type")]
11255    pub r#type: String,
11256}
11257
11258/// `ScimBooleanFeature` from the ClickHouse Cloud API.
11259#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11260pub struct ScimBooleanFeature {
11261    pub supported: bool,
11262}
11263
11264/// `ScimResourceType` from the ClickHouse Cloud API.
11265#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11266pub struct ScimResourceType {
11267    pub description: String,
11268    pub endpoint: String,
11269    pub id: String,
11270    pub meta: ScimResourceTypeMeta,
11271    pub name: String,
11272    pub schema: String,
11273    #[serde(rename = "schemaExtensions")]
11274    pub schema_extensions: Vec<ScimSchemaExtension>,
11275    pub schemas: Vec<String>,
11276}
11277
11278/// `ScimResourceTypeListResponse` from the ClickHouse Cloud API.
11279#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11280pub struct ScimResourceTypeListResponse {
11281    #[serde(rename = "Resources")]
11282    pub resources: Vec<ScimResourceType>,
11283    #[serde(rename = "itemsPerPage")]
11284    pub items_per_page: i64,
11285    pub schemas: Vec<String>,
11286    #[serde(rename = "startIndex")]
11287    pub start_index: i64,
11288    #[serde(rename = "totalResults")]
11289    pub total_results: i64,
11290}
11291
11292/// `ScimResourceTypeMeta` from the ClickHouse Cloud API.
11293#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11294pub struct ScimResourceTypeMeta {
11295    pub location: String,
11296    #[serde(rename = "resourceType")]
11297    pub resource_type: String,
11298}
11299
11300/// `ScimSchema` from the ClickHouse Cloud API.
11301#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11302pub struct ScimSchema {
11303    pub attributes: Vec<ScimSchemaAttribute>,
11304    pub description: String,
11305    pub id: String,
11306    pub meta: ScimSchemaMeta,
11307    pub name: String,
11308    pub schemas: Vec<String>,
11309}
11310
11311/// `ScimSchemaAttribute` from the ClickHouse Cloud API.
11312#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11313pub struct ScimSchemaAttribute {
11314    #[serde(rename = "canonicalValues", skip_serializing_if = "Option::is_none", default)]
11315    pub canonical_values: Option<Vec<String>>,
11316    #[serde(rename = "caseExact", skip_serializing_if = "Option::is_none", default)]
11317    pub case_exact: Option<bool>,
11318    pub description: String,
11319    #[serde(rename = "multiValued")]
11320    pub multi_valued: bool,
11321    pub mutability: String,
11322    pub name: String,
11323    #[serde(rename = "referenceTypes", skip_serializing_if = "Option::is_none", default)]
11324    pub reference_types: Option<Vec<String>>,
11325    pub required: bool,
11326    pub returned: String,
11327    #[serde(rename = "subAttributes", skip_serializing_if = "Option::is_none", default)]
11328    pub sub_attributes: Option<Vec<ScimSchemaAttribute>>,
11329    #[serde(rename = "type")]
11330    pub r#type: String,
11331    #[serde(skip_serializing_if = "Option::is_none", default)]
11332    pub uniqueness: Option<String>,
11333}
11334
11335/// `ScimSchemaExtension` from the ClickHouse Cloud API.
11336#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11337pub struct ScimSchemaExtension {
11338    pub required: bool,
11339    pub schema: String,
11340}
11341
11342/// `ScimSchemaListResponse` from the ClickHouse Cloud API.
11343#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11344pub struct ScimSchemaListResponse {
11345    #[serde(rename = "Resources")]
11346    pub resources: Vec<ScimSchema>,
11347    #[serde(rename = "itemsPerPage")]
11348    pub items_per_page: i64,
11349    pub schemas: Vec<String>,
11350    #[serde(rename = "startIndex")]
11351    pub start_index: i64,
11352    #[serde(rename = "totalResults")]
11353    pub total_results: i64,
11354}
11355
11356/// `ScimSchemaMeta` from the ClickHouse Cloud API.
11357#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11358pub struct ScimSchemaMeta {
11359    pub location: String,
11360    #[serde(rename = "resourceType")]
11361    pub resource_type: String,
11362}
11363
11364/// `ScimServiceProviderConfig` from the ClickHouse Cloud API.
11365#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11366pub struct ScimServiceProviderConfig {
11367    #[serde(rename = "authenticationSchemes")]
11368    pub authentication_schemes: Vec<ScimAuthenticationScheme>,
11369    pub bulk: ScimServiceProviderConfigBulk,
11370    #[serde(rename = "changePassword")]
11371    pub change_password: ScimBooleanFeature,
11372    #[serde(rename = "documentationUri", skip_serializing_if = "Option::is_none", default)]
11373    pub documentation_uri: Option<String>,
11374    pub etag: ScimBooleanFeature,
11375    pub filter: ScimServiceProviderConfigFilter,
11376    pub meta: ScimServiceProviderConfigMeta,
11377    pub patch: ScimServiceProviderConfigPatch,
11378    pub schemas: Vec<String>,
11379    pub sort: ScimBooleanFeature,
11380}
11381
11382/// `ScimServiceProviderConfigBulk` from the ClickHouse Cloud API.
11383#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11384pub struct ScimServiceProviderConfigBulk {
11385    #[serde(rename = "maxOperations")]
11386    pub max_operations: i64,
11387    #[serde(rename = "maxPayloadSize")]
11388    pub max_payload_size: i64,
11389    pub supported: bool,
11390}
11391
11392/// `ScimServiceProviderConfigFilter` from the ClickHouse Cloud API.
11393#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11394pub struct ScimServiceProviderConfigFilter {
11395    #[serde(rename = "maxResults")]
11396    pub max_results: i64,
11397    pub supported: bool,
11398}
11399
11400/// `ScimServiceProviderConfigMeta` from the ClickHouse Cloud API.
11401#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11402pub struct ScimServiceProviderConfigMeta {
11403    pub location: String,
11404    #[serde(rename = "resourceType")]
11405    pub resource_type: String,
11406}
11407
11408/// `ScimServiceProviderConfigPatch` from the ClickHouse Cloud API.
11409#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11410pub struct ScimServiceProviderConfigPatch {
11411    pub supported: bool,
11412}
11413
11414/// `ServicPrivateEndpointePostRequest` from the ClickHouse Cloud API.
11415#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11416pub struct ServicPrivateEndpointePostRequest {
11417    #[serde(default)]
11418    pub description: String,
11419    #[serde(default)]
11420    pub id: String,
11421}
11422
11423/// `Service` from the ClickHouse Cloud API.
11424#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11425pub struct Service {
11426    #[serde(rename = "availablePrivateEndpointIds", default)]
11427    pub available_private_endpoint_ids: Vec<String>,
11428    #[serde(rename = "byocId", default)]
11429    pub byoc_id: String,
11430    #[serde(rename = "clickhouseVersion", default)]
11431    pub clickhouse_version: String,
11432    #[serde(rename = "complianceType", default)]
11433    pub compliance_type: ServiceCompliancetype,
11434    #[serde(rename = "createdAt", default)]
11435    pub created_at: chrono::DateTime<chrono::Utc>,
11436    #[serde(rename = "currentScaling", default)]
11437    pub current_scaling: CurrentScaling,
11438    #[serde(rename = "dataWarehouseId", default)]
11439    pub data_warehouse_id: String,
11440    #[serde(rename = "enableCoreDumps", default)]
11441    pub enable_core_dumps: bool,
11442    #[serde(rename = "encryptionAssumedRoleIdentifier", skip_serializing_if = "Option::is_none", default)]
11443    pub encryption_assumed_role_identifier: Option<String>,
11444    #[serde(rename = "encryptionKey", skip_serializing_if = "Option::is_none", default)]
11445    pub encryption_key: Option<String>,
11446    #[serde(rename = "encryptionRoleId", default)]
11447    pub encryption_role_id: String,
11448    #[serde(default)]
11449    pub endpoints: Vec<ServiceEndpoint>,
11450    #[serde(rename = "hasTransparentDataEncryption", default)]
11451    pub has_transparent_data_encryption: bool,
11452    #[serde(rename = "iamRole", default)]
11453    pub iam_role: String,
11454    #[serde(default)]
11455    pub id: uuid::Uuid,
11456    #[serde(rename = "idleScaling", default)]
11457    pub idle_scaling: bool,
11458    #[serde(rename = "idleTimeoutMinutes", default)]
11459    pub idle_timeout_minutes: f64,
11460    #[serde(rename = "ipAccessList", default)]
11461    pub ip_access_list: Vec<IpAccessListEntry>,
11462    #[serde(rename = "isPrimary", default)]
11463    pub is_primary: bool,
11464    #[serde(rename = "isReadonly", default)]
11465    pub is_readonly: bool,
11466    #[serde(rename = "maxReplicaMemoryGb", default)]
11467    pub max_replica_memory_gb: f64,
11468    #[serde(rename = "maxReplicas", default)]
11469    pub max_replicas: f64,
11470    #[serde(rename = "maxTotalMemoryGb", default)]
11471    pub max_total_memory_gb: f64,
11472    #[serde(rename = "minReplicaMemoryGb", default)]
11473    pub min_replica_memory_gb: f64,
11474    #[serde(rename = "minReplicas", default)]
11475    pub min_replicas: f64,
11476    #[serde(rename = "minTotalMemoryGb", default)]
11477    pub min_total_memory_gb: f64,
11478    #[serde(default)]
11479    pub name: String,
11480    #[serde(rename = "numReplicas", default)]
11481    pub num_replicas: f64,
11482    #[serde(rename = "privateEndpointIds", default)]
11483    pub private_endpoint_ids: Vec<String>,
11484    #[serde(default)]
11485    pub profile: ServiceProfile,
11486    #[serde(default)]
11487    pub provider: ServiceProvider,
11488    #[serde(default)]
11489    pub region: ServiceRegion,
11490    #[serde(rename = "releaseChannel", default)]
11491    pub release_channel: ServiceReleasechannel,
11492    #[serde(rename = "replicaMemoryGb", default)]
11493    pub replica_memory_gb: f64,
11494    #[serde(rename = "scalingSchedule", default)]
11495    pub scaling_schedule: ScalingSchedule,
11496    #[serde(default)]
11497    pub state: ServiceState,
11498    #[serde(default)]
11499    pub tags: Vec<ResourceTagsV1>,
11500    #[serde(default)]
11501    pub tier: ServiceTier,
11502    #[serde(rename = "transparentDataEncryptionKeyId", default)]
11503    pub transparent_data_encryption_key_id: String,
11504}
11505
11506/// `ServiceAccount` from the ClickHouse Cloud API.
11507#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11508pub struct ServiceAccount {
11509    #[serde(rename = "serviceAccountFile", default)]
11510    pub service_account_file: String,
11511}
11512
11513/// `ServiceClickhouseSetting` from the ClickHouse Cloud API.
11514#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11515pub struct ServiceClickhouseSetting {
11516    #[serde(default)]
11517    pub name: String,
11518    #[serde(default)]
11519    pub value: String,
11520}
11521
11522/// `ServiceClickhouseSettingSchemaEntry` from the ClickHouse Cloud API.
11523#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11524pub struct ServiceClickhouseSettingSchemaEntry {
11525    #[serde(rename = "deprecationNotice", default)]
11526    pub deprecation_notice: String,
11527    #[serde(default)]
11528    pub description: String,
11529    #[serde(default)]
11530    pub r#enum: Vec<i64>,
11531    #[serde(default)]
11532    pub example: String,
11533    #[serde(default)]
11534    pub name: String,
11535    #[serde(default)]
11536    pub r#type: String,
11537    #[serde(default)]
11538    pub warning: String,
11539}
11540
11541/// `ServiceClickhouseSettingWarning` from the ClickHouse Cloud API.
11542#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11543pub struct ServiceClickhouseSettingWarning {
11544    #[serde(default)]
11545    pub message: String,
11546    #[serde(default)]
11547    pub name: String,
11548}
11549
11550/// `ServiceClickhouseSettingsList` from the ClickHouse Cloud API.
11551#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11552pub struct ServiceClickhouseSettingsList {
11553    #[serde(default)]
11554    pub settings: Vec<ServiceClickhouseSetting>,
11555}
11556
11557/// `ServiceClickhouseSettingsPatchRequest` from the ClickHouse Cloud API.
11558#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11559pub struct ServiceClickhouseSettingsPatchRequest {
11560    #[serde(skip_serializing_if = "Option::is_none", default)]
11561    pub settings: Option<String>,
11562}
11563
11564/// `ServiceClickhouseSettingsPatchResponse` from the ClickHouse Cloud API.
11565#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11566pub struct ServiceClickhouseSettingsPatchResponse {
11567    #[serde(default)]
11568    pub settings: String,
11569    #[serde(default)]
11570    pub warnings: Vec<ServiceClickhouseSettingWarning>,
11571}
11572
11573/// `ServiceClickhouseSettingsSchema` from the ClickHouse Cloud API.
11574#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11575pub struct ServiceClickhouseSettingsSchema {
11576    #[serde(default)]
11577    pub settings: Vec<ServiceClickhouseSettingSchemaEntry>,
11578}
11579
11580/// `ServiceEndpoint` from the ClickHouse Cloud API.
11581#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11582pub struct ServiceEndpoint {
11583    #[serde(default)]
11584    pub host: String,
11585    #[serde(default)]
11586    pub port: f64,
11587    #[serde(default)]
11588    pub protocol: ServiceEndpointProtocol,
11589    #[serde(skip_serializing_if = "Option::is_none", default)]
11590    pub username: Option<String>,
11591}
11592
11593/// `ServiceEndpointChange` from the ClickHouse Cloud API.
11594#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11595pub struct ServiceEndpointChange {
11596    #[serde(default)]
11597    pub enabled: bool,
11598    #[serde(default)]
11599    pub protocol: ServiceEndpointChangeProtocol,
11600}
11601
11602/// `ServicePasswordPatchRequest` from the ClickHouse Cloud API.
11603#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11604pub struct ServicePasswordPatchRequest {
11605    #[serde(rename = "newDoubleSha1Hash", skip_serializing_if = "Option::is_none", default)]
11606    pub new_double_sha1_hash: Option<String>,
11607    #[serde(rename = "newPasswordHash", skip_serializing_if = "Option::is_none", default)]
11608    pub new_password_hash: Option<String>,
11609}
11610
11611/// `ServicePasswordPatchResponse` from the ClickHouse Cloud API.
11612#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11613pub struct ServicePasswordPatchResponse {
11614    #[serde(default)]
11615    pub password: String,
11616}
11617
11618/// `ServicePatchRequest` from the ClickHouse Cloud API.
11619#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11620pub struct ServicePatchRequest {
11621    #[serde(rename = "enableCoreDumps", skip_serializing_if = "Option::is_none", default)]
11622    pub enable_core_dumps: Option<bool>,
11623    #[serde(skip_serializing_if = "Option::is_none", default)]
11624    pub endpoints: Option<Vec<ServiceEndpointChange>>,
11625    #[serde(rename = "ipAccessList", skip_serializing_if = "Option::is_none", default)]
11626    pub ip_access_list: Option<IpAccessListPatch>,
11627    #[serde(skip_serializing_if = "Option::is_none", default)]
11628    pub name: Option<String>,
11629    #[serde(rename = "privateEndpointIds", skip_serializing_if = "Option::is_none", default)]
11630    pub private_endpoint_ids: Option<InstancePrivateEndpointsPatch>,
11631    #[serde(rename = "releaseChannel", skip_serializing_if = "Option::is_none", default)]
11632    pub release_channel: Option<ServicePatchRequestReleasechannel>,
11633    #[serde(skip_serializing_if = "Option::is_none", default)]
11634    pub tags: Option<InstanceTagsPatch>,
11635    #[serde(rename = "transparentDataEncryptionKeyId", skip_serializing_if = "Option::is_none", default)]
11636    pub transparent_data_encryption_key_id: Option<String>,
11637}
11638
11639/// `ServicePostRequest` from the ClickHouse Cloud API.
11640#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11641pub struct ServicePostRequest {
11642    #[serde(rename = "backupId", skip_serializing_if = "Option::is_none", default)]
11643    pub backup_id: Option<uuid::Uuid>,
11644    #[serde(rename = "byocId", skip_serializing_if = "Option::is_none", default)]
11645    pub byoc_id: Option<String>,
11646    #[serde(rename = "complianceType", skip_serializing_if = "Option::is_none", default)]
11647    pub compliance_type: Option<ServicePostRequestCompliancetype>,
11648    #[serde(rename = "dataWarehouseId", skip_serializing_if = "Option::is_none", default)]
11649    pub data_warehouse_id: Option<String>,
11650    #[serde(rename = "enableCoreDumps", skip_serializing_if = "Option::is_none", default)]
11651    pub enable_core_dumps: Option<bool>,
11652    #[serde(rename = "encryptionAssumedRoleIdentifier", skip_serializing_if = "Option::is_none", default)]
11653    pub encryption_assumed_role_identifier: Option<String>,
11654    #[serde(rename = "encryptionKey", skip_serializing_if = "Option::is_none", default)]
11655    pub encryption_key: Option<String>,
11656    #[serde(skip_serializing_if = "Option::is_none", default)]
11657    pub endpoints: Option<Vec<ServiceEndpointChange>>,
11658    #[serde(rename = "hasTransparentDataEncryption", skip_serializing_if = "Option::is_none", default)]
11659    pub has_transparent_data_encryption: Option<bool>,
11660    #[serde(rename = "idleScaling", skip_serializing_if = "Option::is_none", default)]
11661    pub idle_scaling: Option<bool>,
11662    #[serde(rename = "idleTimeoutMinutes", skip_serializing_if = "Option::is_none", default)]
11663    pub idle_timeout_minutes: Option<f64>,
11664    #[serde(rename = "ipAccessList", default)]
11665    pub ip_access_list: Vec<IpAccessListEntry>,
11666    #[serde(rename = "isReadonly", skip_serializing_if = "Option::is_none", default)]
11667    pub is_readonly: Option<bool>,
11668    #[serde(rename = "maxReplicaMemoryGb", skip_serializing_if = "Option::is_none", default)]
11669    pub max_replica_memory_gb: Option<f64>,
11670    #[serde(rename = "maxTotalMemoryGb", skip_serializing_if = "Option::is_none", default)]
11671    pub max_total_memory_gb: Option<f64>,
11672    #[serde(rename = "minReplicaMemoryGb", skip_serializing_if = "Option::is_none", default)]
11673    pub min_replica_memory_gb: Option<f64>,
11674    #[serde(rename = "minTotalMemoryGb", skip_serializing_if = "Option::is_none", default)]
11675    pub min_total_memory_gb: Option<f64>,
11676    #[serde(default)]
11677    pub name: String,
11678    #[serde(rename = "numReplicas", skip_serializing_if = "Option::is_none", default)]
11679    pub num_replicas: Option<f64>,
11680    #[serde(rename = "privateEndpointIds", skip_serializing_if = "Option::is_none", default)]
11681    pub private_endpoint_ids: Option<Vec<String>>,
11682    #[serde(rename = "privatePreviewTermsChecked", skip_serializing_if = "Option::is_none", default)]
11683    pub private_preview_terms_checked: Option<bool>,
11684    #[serde(skip_serializing_if = "Option::is_none", default)]
11685    pub profile: Option<ServicePostRequestProfile>,
11686    #[serde(default)]
11687    pub provider: ServicePostRequestProvider,
11688    #[serde(default)]
11689    pub region: ServicePostRequestRegion,
11690    #[serde(rename = "releaseChannel", skip_serializing_if = "Option::is_none", default)]
11691    pub release_channel: Option<ServicePostRequestReleasechannel>,
11692    #[serde(skip_serializing_if = "Option::is_none", default)]
11693    pub tags: Option<Vec<ResourceTagsV1>>,
11694    #[serde(skip_serializing_if = "Option::is_none", default)]
11695    pub tier: Option<ServicePostRequestTier>,
11696}
11697
11698/// `ServicePostResponse` from the ClickHouse Cloud API.
11699#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11700pub struct ServicePostResponse {
11701    #[serde(default)]
11702    pub password: String,
11703    #[serde(default)]
11704    pub service: Service,
11705}
11706
11707/// `ServiceQueryAPIEndpoint` from the ClickHouse Cloud API.
11708#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11709pub struct ServiceQueryAPIEndpoint {
11710    #[serde(rename = "allowedOrigins", default)]
11711    pub allowed_origins: String,
11712    #[serde(default)]
11713    pub id: String,
11714    #[serde(rename = "openApiKeys", default)]
11715    pub open_api_keys: Vec<String>,
11716    #[serde(default)]
11717    pub roles: Vec<String>,
11718}
11719
11720/// `ServiceReplicaScalingPatchRequest` from the ClickHouse Cloud API.
11721#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11722pub struct ServiceReplicaScalingPatchRequest {
11723    #[serde(rename = "idleScaling", skip_serializing_if = "Option::is_none", default)]
11724    pub idle_scaling: Option<bool>,
11725    #[serde(rename = "idleTimeoutMinutes", skip_serializing_if = "Option::is_none", default)]
11726    pub idle_timeout_minutes: Option<f64>,
11727    #[serde(rename = "maxReplicaMemoryGb", skip_serializing_if = "Option::is_none", default)]
11728    pub max_replica_memory_gb: Option<f64>,
11729    #[serde(rename = "maxReplicas", skip_serializing_if = "Option::is_none", default)]
11730    pub max_replicas: Option<f64>,
11731    #[serde(rename = "minReplicaMemoryGb", skip_serializing_if = "Option::is_none", default)]
11732    pub min_replica_memory_gb: Option<f64>,
11733    #[serde(rename = "minReplicas", skip_serializing_if = "Option::is_none", default)]
11734    pub min_replicas: Option<f64>,
11735    #[serde(rename = "numReplicas", skip_serializing_if = "Option::is_none", default)]
11736    pub num_replicas: Option<f64>,
11737    #[serde(rename = "replicaMemoryGb", skip_serializing_if = "Option::is_none", default)]
11738    pub replica_memory_gb: Option<f64>,
11739}
11740
11741/// `ServiceScalingPatchRequest` from the ClickHouse Cloud API.
11742#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11743pub struct ServiceScalingPatchRequest {
11744    #[serde(rename = "idleScaling", skip_serializing_if = "Option::is_none", default)]
11745    pub idle_scaling: Option<bool>,
11746    #[serde(rename = "idleTimeoutMinutes", skip_serializing_if = "Option::is_none", default)]
11747    pub idle_timeout_minutes: Option<f64>,
11748    #[serde(rename = "maxTotalMemoryGb", skip_serializing_if = "Option::is_none", default)]
11749    pub max_total_memory_gb: Option<f64>,
11750    #[serde(rename = "minTotalMemoryGb", skip_serializing_if = "Option::is_none", default)]
11751    pub min_total_memory_gb: Option<f64>,
11752    #[serde(rename = "numReplicas", skip_serializing_if = "Option::is_none", default)]
11753    pub num_replicas: Option<f64>,
11754}
11755
11756/// `ServiceScalingPatchResponse` from the ClickHouse Cloud API.
11757#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11758pub struct ServiceScalingPatchResponse {
11759    #[serde(rename = "availablePrivateEndpointIds", default)]
11760    pub available_private_endpoint_ids: Vec<String>,
11761    #[serde(rename = "byocId", default)]
11762    pub byoc_id: String,
11763    #[serde(rename = "clickhouseVersion", default)]
11764    pub clickhouse_version: String,
11765    #[serde(rename = "complianceType", default)]
11766    pub compliance_type: ServiceScalingPatchResponseCompliancetype,
11767    #[serde(rename = "createdAt", default)]
11768    pub created_at: chrono::DateTime<chrono::Utc>,
11769    #[serde(rename = "currentScaling", default)]
11770    pub current_scaling: CurrentScaling,
11771    #[serde(rename = "dataWarehouseId", default)]
11772    pub data_warehouse_id: String,
11773    #[serde(rename = "enableCoreDumps", default)]
11774    pub enable_core_dumps: bool,
11775    #[serde(rename = "encryptionAssumedRoleIdentifier", skip_serializing_if = "Option::is_none", default)]
11776    pub encryption_assumed_role_identifier: Option<String>,
11777    #[serde(rename = "encryptionKey", skip_serializing_if = "Option::is_none", default)]
11778    pub encryption_key: Option<String>,
11779    #[serde(rename = "encryptionRoleId", default)]
11780    pub encryption_role_id: String,
11781    #[serde(default)]
11782    pub endpoints: Vec<ServiceEndpoint>,
11783    #[serde(rename = "hasTransparentDataEncryption", default)]
11784    pub has_transparent_data_encryption: bool,
11785    #[serde(rename = "iamRole", default)]
11786    pub iam_role: String,
11787    #[serde(default)]
11788    pub id: uuid::Uuid,
11789    #[serde(rename = "idleScaling", default)]
11790    pub idle_scaling: bool,
11791    #[serde(rename = "idleTimeoutMinutes", default)]
11792    pub idle_timeout_minutes: f64,
11793    #[serde(rename = "ipAccessList", default)]
11794    pub ip_access_list: Vec<IpAccessListEntry>,
11795    #[serde(rename = "isPrimary", default)]
11796    pub is_primary: bool,
11797    #[serde(rename = "isReadonly", default)]
11798    pub is_readonly: bool,
11799    #[serde(rename = "maxReplicaMemoryGb", default)]
11800    pub max_replica_memory_gb: f64,
11801    #[serde(rename = "maxReplicas", default)]
11802    pub max_replicas: f64,
11803    #[serde(rename = "maxTotalMemoryGb", default)]
11804    pub max_total_memory_gb: f64,
11805    #[serde(rename = "minReplicaMemoryGb", default)]
11806    pub min_replica_memory_gb: f64,
11807    #[serde(rename = "minReplicas", default)]
11808    pub min_replicas: f64,
11809    #[serde(rename = "minTotalMemoryGb", default)]
11810    pub min_total_memory_gb: f64,
11811    #[serde(default)]
11812    pub name: String,
11813    #[serde(rename = "numReplicas", default)]
11814    pub num_replicas: f64,
11815    #[serde(rename = "privateEndpointIds", default)]
11816    pub private_endpoint_ids: Vec<String>,
11817    #[serde(default)]
11818    pub profile: ServiceScalingPatchResponseProfile,
11819    #[serde(default)]
11820    pub provider: ServiceScalingPatchResponseProvider,
11821    #[serde(default)]
11822    pub region: ServiceScalingPatchResponseRegion,
11823    #[serde(rename = "releaseChannel", default)]
11824    pub release_channel: ServiceScalingPatchResponseReleasechannel,
11825    #[serde(rename = "replicaMemoryGb", default)]
11826    pub replica_memory_gb: f64,
11827    #[serde(rename = "scalingSchedule", default)]
11828    pub scaling_schedule: ScalingSchedule,
11829    #[serde(default)]
11830    pub state: ServiceScalingPatchResponseState,
11831    #[serde(default)]
11832    pub tags: Vec<ResourceTagsV1>,
11833    #[serde(default)]
11834    pub tier: ServiceScalingPatchResponseTier,
11835    #[serde(rename = "transparentDataEncryptionKeyId", default)]
11836    pub transparent_data_encryption_key_id: String,
11837}
11838
11839/// `ServiceStatePatchRequest` from the ClickHouse Cloud API.
11840#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11841pub struct ServiceStatePatchRequest {
11842    #[serde(skip_serializing_if = "Option::is_none", default)]
11843    pub command: Option<ServiceStatePatchRequestCommand>,
11844}
11845
11846/// `UpgradeWindow` from the ClickHouse Cloud API.
11847#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11848pub struct UpgradeWindow {
11849    #[serde(default)]
11850    pub duration: i64,
11851    #[serde(rename = "startHourUtc", default)]
11852    pub start_hour_utc: i64,
11853    #[serde(default)]
11854    pub weekday: i64,
11855}
11856
11857/// `UpgradeWindowPutRequest` from the ClickHouse Cloud API.
11858#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11859pub struct UpgradeWindowPutRequest {
11860    #[serde(rename = "startHourUtc", default)]
11861    pub start_hour_utc: i64,
11862    #[serde(default)]
11863    pub weekday: i64,
11864}
11865
11866/// `UsageCost` from the ClickHouse Cloud API.
11867#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11868pub struct UsageCost {
11869    #[serde(default)]
11870    pub costs: Vec<UsageCostRecord>,
11871    #[serde(rename = "grandTotalCHC", default)]
11872    pub grand_total_chc: f64,
11873}
11874
11875/// `UsageCostMetrics` from the ClickHouse Cloud API.
11876#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11877pub struct UsageCostMetrics {
11878    #[serde(rename = "backupCHC", default)]
11879    pub backup_chc: f64,
11880    #[serde(rename = "computeCHC", default)]
11881    pub compute_chc: f64,
11882    #[serde(rename = "dataTransferCHC", default)]
11883    pub data_transfer_chc: f64,
11884    #[serde(rename = "initialLoadCHC", default)]
11885    pub initial_load_chc: f64,
11886    #[serde(rename = "interRegionTier1DataTransferCHC", default)]
11887    pub inter_region_tier1_data_transfer_chc: f64,
11888    #[serde(rename = "interRegionTier2DataTransferCHC", default)]
11889    pub inter_region_tier2_data_transfer_chc: f64,
11890    #[serde(rename = "interRegionTier3DataTransferCHC", default)]
11891    pub inter_region_tier3_data_transfer_chc: f64,
11892    #[serde(rename = "interRegionTier4DataTransferCHC", default)]
11893    pub inter_region_tier4_data_transfer_chc: f64,
11894    #[serde(rename = "publicDataTransferCHC", default)]
11895    pub public_data_transfer_chc: f64,
11896    #[serde(rename = "storageCHC", default)]
11897    pub storage_chc: f64,
11898}
11899
11900/// `UsageCostRecord` from the ClickHouse Cloud API.
11901#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11902pub struct UsageCostRecord {
11903    #[serde(rename = "dataWarehouseId", default)]
11904    pub data_warehouse_id: uuid::Uuid,
11905    #[serde(default)]
11906    pub date: String,
11907    #[serde(rename = "entityId", default)]
11908    pub entity_id: uuid::Uuid,
11909    #[serde(rename = "entityName", default)]
11910    pub entity_name: String,
11911    #[serde(rename = "entityType", default)]
11912    pub entity_type: UsageCostRecordEntitytype,
11913    #[serde(default)]
11914    pub locked: bool,
11915    #[serde(default)]
11916    pub metrics: UsageCostMetrics,
11917    #[serde(rename = "serviceId", skip_serializing_if = "Option::is_none", default)]
11918    pub service_id: Option<uuid::Uuid>,
11919    #[serde(rename = "totalCHC", default)]
11920    pub total_chc: f64,
11921}
11922
11923/// `pgBouncerConfig` from the ClickHouse Cloud API.
11924#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11925pub struct PgBouncerConfig {
11926}
11927
11928/// `pgConfig` from the ClickHouse Cloud API.
11929#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11930pub struct PgConfig {
11931    #[serde(default)]
11932    pub default_transaction_isolation: PgConfigDefaultTransactionIsolation,
11933    #[serde(default)]
11934    pub effective_cache_size: serde_json::Value,
11935    #[serde(default)]
11936    pub effective_io_concurrency: i64,
11937    #[serde(default)]
11938    pub idle_in_transaction_session_timeout: serde_json::Value,
11939    #[serde(default)]
11940    pub idle_session_timeout: serde_json::Value,
11941    #[serde(default)]
11942    pub lock_timeout: serde_json::Value,
11943    #[serde(default)]
11944    pub maintenance_work_mem: serde_json::Value,
11945    #[serde(default)]
11946    pub max_connections: i64,
11947    #[serde(default)]
11948    pub max_parallel_maintenance_workers: i64,
11949    #[serde(default)]
11950    pub max_parallel_workers: i64,
11951    #[serde(default)]
11952    pub max_parallel_workers_per_gather: i64,
11953    #[serde(default)]
11954    pub max_slot_wal_keep_size: serde_json::Value,
11955    #[serde(default)]
11956    pub max_wal_size: serde_json::Value,
11957    #[serde(default)]
11958    pub max_worker_processes: i64,
11959    #[serde(default)]
11960    pub min_wal_size: serde_json::Value,
11961    #[serde(default)]
11962    pub random_page_cost: f64,
11963    #[serde(default)]
11964    pub ssl_min_protocol_version: PgConfigSslMinProtocolVersion,
11965    #[serde(default)]
11966    pub statement_timeout: serde_json::Value,
11967    #[serde(default)]
11968    pub transaction_timeout: serde_json::Value,
11969    #[serde(default)]
11970    pub wal_compression: PgConfigWalCompression,
11971    #[serde(default)]
11972    pub wal_keep_size: serde_json::Value,
11973    #[serde(default)]
11974    pub wal_sender_timeout: serde_json::Value,
11975    #[serde(default)]
11976    pub work_mem: serde_json::Value,
11977}
11978
11979/// `postgresInstanceConfig` from the ClickHouse Cloud API.
11980#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11981pub struct PostgresInstanceConfig {
11982    #[serde(rename = "pgBouncerConfig")]
11983    pub pg_bouncer_config: PgBouncerConfig,
11984    #[serde(rename = "pgConfig")]
11985    pub pg_config: PgConfig,
11986}
11987
11988/// `postgresInstanceUpdateConfigResponse` from the ClickHouse Cloud API.
11989#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
11990pub struct PostgresInstanceUpdateConfigResponse {
11991    #[serde(skip_serializing_if = "Option::is_none", default)]
11992    pub message: Option<String>,
11993    #[serde(rename = "pgBouncerConfig")]
11994    pub pg_bouncer_config: PgBouncerConfig,
11995    #[serde(rename = "pgConfig")]
11996    pub pg_config: PgConfig,
11997}
11998
11999/// Standard API response wrapper.
12000#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
12001pub struct ApiResponse<T> {
12002    #[serde(skip_serializing_if = "Option::is_none", default)]
12003    pub status: Option<f64>,
12004    #[serde(skip_serializing_if = "Option::is_none", default, rename = "requestId")]
12005    pub request_id: Option<String>,
12006    pub result: Option<T>,
12007    #[serde(skip_serializing_if = "Option::is_none", default)]
12008    pub error: Option<String>,
12009}
12010
12011
12012impl Default for BackupBucket {
12013    fn default() -> Self {
12014        Self::AwsBackupBucket(AwsBackupBucket::default())
12015    }
12016}
12017
12018
12019impl Default for BackupBucketPatchRequest {
12020    fn default() -> Self {
12021        Self::AwsBackupBucketPatchRequestV1(AwsBackupBucketPatchRequestV1::default())
12022    }
12023}
12024
12025
12026impl Default for BackupBucketPostRequest {
12027    fn default() -> Self {
12028        Self::AwsBackupBucketPostRequestV1(AwsBackupBucketPostRequestV1::default())
12029    }
12030}
12031
12032
12033impl Default for BackupBucketProperties {
12034    fn default() -> Self {
12035        Self::AwsBackupBucketProperties(AwsBackupBucketProperties::default())
12036    }
12037}
12038
12039
12040impl Default for ClickStackAlertChannel {
12041    fn default() -> Self {
12042        Self::ClickStackAlertChannelEmail(ClickStackAlertChannelEmail::default())
12043    }
12044}
12045
12046
12047impl Default for ClickStackBarChartConfig {
12048    fn default() -> Self {
12049        Self::ClickStackBarBuilderChartConfig(ClickStackBarBuilderChartConfig::default())
12050    }
12051}
12052
12053
12054impl Default for ClickStackDashboardChartSeries {
12055    fn default() -> Self {
12056        Self::ClickStackTimeChartSeries(ClickStackTimeChartSeries::default())
12057    }
12058}
12059
12060
12061impl Default for ClickStackLineChartConfig {
12062    fn default() -> Self {
12063        Self::ClickStackLineBuilderChartConfig(ClickStackLineBuilderChartConfig::default())
12064    }
12065}
12066
12067
12068impl Default for ClickStackNumberChartConfig {
12069    fn default() -> Self {
12070        Self::ClickStackNumberBuilderChartConfig(ClickStackNumberBuilderChartConfig::default())
12071    }
12072}
12073
12074
12075impl Default for ClickStackPieChartConfig {
12076    fn default() -> Self {
12077        Self::ClickStackPieBuilderChartConfig(ClickStackPieBuilderChartConfig::default())
12078    }
12079}
12080
12081
12082impl Default for ClickStackSource {
12083    fn default() -> Self {
12084        Self::ClickStackLogSource(ClickStackLogSource::default())
12085    }
12086}
12087
12088
12089impl Default for ClickStackTableChartConfig {
12090    fn default() -> Self {
12091        Self::ClickStackTableBuilderChartConfig(ClickStackTableBuilderChartConfig::default())
12092    }
12093}
12094
12095
12096impl Default for ClickStackTileConfig {
12097    fn default() -> Self {
12098        Self::ClickStackLineChartConfig(ClickStackLineChartConfig::default())
12099    }
12100}
12101
12102
12103impl Default for ClickStackWebhook {
12104    fn default() -> Self {
12105        Self::ClickStackSlackWebhook(ClickStackSlackWebhook::default())
12106    }
12107}