@cloudfleet/sdk 0.0.1-3de42b3 → 0.0.1-3dedc4b

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/README.md +26 -2
  2. package/dist/@tanstack/react-query.gen.d.ts +1084 -0
  3. package/dist/@tanstack/react-query.gen.d.ts.map +1 -0
  4. package/dist/@tanstack/react-query.gen.js +1305 -0
  5. package/dist/@tanstack/react-query.gen.js.map +1 -0
  6. package/dist/client/client.gen.d.ts +3 -0
  7. package/dist/client/client.gen.d.ts.map +1 -0
  8. package/dist/client/client.gen.js +217 -0
  9. package/dist/client/client.gen.js.map +1 -0
  10. package/dist/client/index.d.ts +9 -0
  11. package/dist/client/index.d.ts.map +1 -0
  12. package/dist/client/index.js +7 -0
  13. package/dist/client/index.js.map +1 -0
  14. package/dist/client/types.gen.d.ts +121 -0
  15. package/dist/client/types.gen.d.ts.map +1 -0
  16. package/dist/client/types.gen.js +3 -0
  17. package/dist/client/types.gen.js.map +1 -0
  18. package/dist/client/utils.gen.d.ts +38 -0
  19. package/dist/client/utils.gen.d.ts.map +1 -0
  20. package/dist/client/utils.gen.js +229 -0
  21. package/dist/client/utils.gen.js.map +1 -0
  22. package/dist/client.gen.d.ts +4 -4
  23. package/dist/client.gen.d.ts.map +1 -1
  24. package/dist/client.gen.js +2 -4
  25. package/dist/client.gen.js.map +1 -1
  26. package/dist/core/auth.gen.d.ts +19 -0
  27. package/dist/core/auth.gen.d.ts.map +1 -0
  28. package/dist/core/auth.gen.js +15 -0
  29. package/dist/core/auth.gen.js.map +1 -0
  30. package/dist/core/bodySerializer.gen.d.ts +26 -0
  31. package/dist/core/bodySerializer.gen.d.ts.map +1 -0
  32. package/dist/core/bodySerializer.gen.js +58 -0
  33. package/dist/core/bodySerializer.gen.js.map +1 -0
  34. package/dist/core/params.gen.d.ts +44 -0
  35. package/dist/core/params.gen.d.ts.map +1 -0
  36. package/dist/core/params.gen.js +101 -0
  37. package/dist/core/params.gen.js.map +1 -0
  38. package/dist/core/pathSerializer.gen.d.ts +34 -0
  39. package/dist/core/pathSerializer.gen.d.ts.map +1 -0
  40. package/dist/core/pathSerializer.gen.js +107 -0
  41. package/dist/core/pathSerializer.gen.js.map +1 -0
  42. package/dist/core/queryKeySerializer.gen.d.ts +19 -0
  43. package/dist/core/queryKeySerializer.gen.d.ts.map +1 -0
  44. package/dist/core/queryKeySerializer.gen.js +93 -0
  45. package/dist/core/queryKeySerializer.gen.js.map +1 -0
  46. package/dist/core/serverSentEvents.gen.d.ts +72 -0
  47. package/dist/core/serverSentEvents.gen.d.ts.map +1 -0
  48. package/dist/core/serverSentEvents.gen.js +133 -0
  49. package/dist/core/serverSentEvents.gen.js.map +1 -0
  50. package/dist/core/types.gen.d.ts +79 -0
  51. package/dist/core/types.gen.d.ts.map +1 -0
  52. package/dist/core/types.gen.js +3 -0
  53. package/dist/core/types.gen.js.map +1 -0
  54. package/dist/core/utils.gen.d.ts +20 -0
  55. package/dist/core/utils.gen.d.ts.map +1 -0
  56. package/dist/core/utils.gen.js +88 -0
  57. package/dist/core/utils.gen.js.map +1 -0
  58. package/dist/schemas.gen.d.ts +1907 -703
  59. package/dist/schemas.gen.d.ts.map +1 -1
  60. package/dist/schemas.gen.js +3328 -743
  61. package/dist/schemas.gen.js.map +1 -1
  62. package/dist/sdk.gen.d.ts +347 -172
  63. package/dist/sdk.gen.d.ts.map +1 -1
  64. package/dist/sdk.gen.js +503 -339
  65. package/dist/sdk.gen.js.map +1 -1
  66. package/dist/services/kubernetes/api.d.ts +20 -20
  67. package/dist/types.gen.d.ts +2112 -844
  68. package/dist/types.gen.d.ts.map +1 -1
  69. package/dist/zod.gen.d.ts +4229 -2328
  70. package/dist/zod.gen.d.ts.map +1 -1
  71. package/dist/zod.gen.js +1690 -853
  72. package/dist/zod.gen.js.map +1 -1
  73. package/package.json +28 -9
package/dist/zod.gen.js CHANGED
@@ -1,6 +1,7 @@
1
1
  // This file is auto-generated by @hey-api/openapi-ts
2
- import { z } from 'zod';
2
+ import * as z from 'zod';
3
3
  export const zBillingContact = z.object({
4
+ type: z.enum(['business', 'personal']),
4
5
  company: z.string().min(2).max(120).regex(/^(?!\s)(?!.*\s$)(?=.*[a-zA-ZÆÐƎƏƐƔIJŊŒẞÞǷȜæðǝəɛɣijŋœĸſßþƿȝĄƁÇĐƊĘĦĮƘŁØƠŞȘŢȚŦŲƯY̨Ƴąɓçđɗęħįƙłøơşșţțŧųưy̨ƴÁÀÂÄǍĂĀÃÅǺĄÆǼǢƁĆĊĈČÇĎḌĐƊÐÉÈĖÊËĚĔĒĘẸƎƏƐĠĜǦĞĢƔáàâäǎăāãåǻąæǽǣɓćċĉčçďḍđɗðéèėêëěĕēęẹǝəɛġĝǧğģɣĤḤĦIÍÌİÎÏǏĬĪĨĮỊIJĴĶƘĹĻŁĽĿʼNŃN̈ŇÑŅŊÓÒÔÖǑŎŌÕŐỌØǾƠŒĥḥħıíìiîïǐĭīĩįịijĵķƙĸĺļłľŀʼnńn̈ňñņŋóòôöǒŏōõőọøǿơœŔŘŖŚŜŠŞȘṢẞŤŢṬŦÞÚÙÛÜǓŬŪŨŰŮŲỤƯẂẀŴẄǷÝỲŶŸȲỸƳŹŻŽẒŕřŗſśŝšşșṣßťţṭŧþúùûüǔŭūũűůųụưẃẁŵẅƿýỳŷÿȳỹƴźżžẓ0-9])[a-zA-ZÆÐƎƏƐƔIJŊŒẞÞǷȜæðǝəɛɣijŋœĸſßþƿȝĄƁÇĐƊĘĦĮƘŁØƠŞȘŢȚŦŲƯY̨Ƴąɓçđɗęħįƙłøơşșţțŧųưy̨ƴÁÀÂÄǍĂĀÃÅǺĄÆǼǢƁĆĊĈČÇĎḌĐƊÐÉÈĖÊËĚĔĒĘẸƎƏƐĠĜǦĞĢƔáàâäǎăāãåǻąæǽǣɓćċĉčçďḍđɗðéèėêëěĕēęẹǝəɛġĝǧğģɣĤḤĦIÍÌİÎÏǏĬĪĨĮỊIJĴĶƘĹĻŁĽĿʼNŃN̈ŇÑŅŊÓÒÔÖǑŎŌÕŐỌØǾƠŒĥḥħıíìiîïǐĭīĩįịijĵķƙĸĺļłľŀʼnńn̈ňñņŋóòôöǒŏōõőọøǿơœŔŘŖŚŜŠŞȘṢẞŤŢṬŦÞÚÙÛÜǓŬŪŨŰŮŲỤƯẂẀŴẄǷÝỲŶŸȲỸƳŹŻŽẒŕřŗſśŝšşșṣßťţṭŧþúùûüǔŭūũűůųụưẃẁŵẅƿýỳŷÿȳỹƴźżžẓ0-9 -.]{2,}$/).optional(),
5
6
  address1: z.string().optional(),
6
7
  address2: z.string().optional(),
@@ -9,9 +10,8 @@ export const zBillingContact = z.object({
9
10
  state: z.string().optional(),
10
11
  country: z.string().optional(),
11
12
  phone: z.string().optional(),
12
- email: z.string().email(),
13
- first_name: z.string(),
14
- last_name: z.string(),
13
+ email: z.email(),
14
+ individual_name: z.string(),
15
15
  tax_id: z.string().optional(),
16
16
  tax_id_type: z.enum([
17
17
  'ad_nrt',
@@ -23,12 +23,17 @@ export const zBillingContact = z.object({
23
23
  'at_vat',
24
24
  'au_abn',
25
25
  'au_arn',
26
+ 'aw_tin',
27
+ 'az_tin',
26
28
  'ba_tin',
27
29
  'bb_tin',
30
+ 'bd_bin',
28
31
  'be_vat',
32
+ 'bf_ifu',
29
33
  'bg_uic',
30
34
  'bg_vat',
31
35
  'bh_vat',
36
+ 'bj_ifu',
32
37
  'bo_tin',
33
38
  'br_cnpj',
34
39
  'br_cpf',
@@ -44,9 +49,11 @@ export const zBillingContact = z.object({
44
49
  'ch_uid',
45
50
  'ch_vat',
46
51
  'cl_tin',
52
+ 'cm_niu',
47
53
  'cn_tin',
48
54
  'co_nit',
49
55
  'cr_tin',
56
+ 'cv_nif',
50
57
  'cy_vat',
51
58
  'cz_vat',
52
59
  'de_stn',
@@ -58,6 +65,7 @@ export const zBillingContact = z.object({
58
65
  'eg_tin',
59
66
  'es_cif',
60
67
  'es_vat',
68
+ 'et_tin',
61
69
  'eu_oss_vat',
62
70
  'fi_vat',
63
71
  'fr_vat',
@@ -80,11 +88,14 @@ export const zBillingContact = z.object({
80
88
  'jp_rn',
81
89
  'jp_trn',
82
90
  'ke_pin',
91
+ 'kg_tin',
83
92
  'kh_tin',
84
93
  'kr_brn',
85
94
  'kz_bin',
95
+ 'la_tin',
86
96
  'li_uid',
87
97
  'li_vat',
98
+ 'lk_vat',
88
99
  'lt_vat',
89
100
  'lu_vat',
90
101
  'lv_vat',
@@ -146,16 +157,12 @@ export const zBillingContact = z.object({
146
157
  });
147
158
  export const zBillingCredits = z.object({
148
159
  id: z.string().optional(),
149
- date_created: z.string().datetime(),
160
+ type: z.enum(['credit', 'discount']),
161
+ date_start: z.iso.datetime(),
162
+ date_end: z.iso.datetime().optional(),
150
163
  code: z.string(),
151
164
  description: z.string().optional(),
152
- products: z.array(z.string()).optional(),
153
- type: z.enum([
154
- 'credit',
155
- 'discount'
156
- ]),
157
- value: z.number(),
158
- billing_period: z.string().datetime(),
165
+ value_total: z.number(),
159
166
  value_remaining: z.number().optional()
160
167
  });
161
168
  export const zChartCreateInput = z.object({
@@ -171,22 +178,7 @@ export const zChart = z.object({
171
178
  name: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
172
179
  namespace: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
173
180
  chart: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
174
- status: z.enum([
175
- 'InstallSucceeded',
176
- 'InstallFailed',
177
- 'UpgradeSucceeded',
178
- 'UpgradeFailed',
179
- 'TestSucceeded',
180
- 'TestFailed',
181
- 'RollbackSucceeded',
182
- 'RollbackFailed',
183
- 'UninstallSucceeded',
184
- 'UninstallFailed',
185
- 'ArtifactFailed',
186
- 'DependencyNotReady',
187
- 'Progressing',
188
- 'SourceNotReady'
189
- ]),
181
+ status: z.string(),
190
182
  version_current: z.string(),
191
183
  created_at: z.string(),
192
184
  updated_at: z.string(),
@@ -196,27 +188,63 @@ export const zChartUpdateInput = z.object({
196
188
  values: z.string(),
197
189
  version_channel: z.string().regex(/^(x|X|0|[1-9]\d*)\.(x|X|0|[1-9]\d*)\.(x|X|0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/)
198
190
  });
191
+ /**
192
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
193
+ */
199
194
  export const zClusterCreateInput = z.object({
200
195
  name: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
201
- region: z.enum([
202
- 'staging',
203
- 'northamerica-central-1'
204
- ]).optional(),
205
196
  tier: z.enum([
206
197
  'basic',
207
- 'pro'
208
- ]),
209
- version_channel: z.string().regex(/^(x|X|0|[1-9]\d*)\.(x|X|0|[1-9]\d*)\.(x|X|0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/).optional().default('1.x.x-cfke.x')
198
+ 'pro',
199
+ 'enterprise'
200
+ ]).optional().default('basic'),
201
+ version_channel: z.string().regex(/^(x|X|0|[1-9]\d*)\.(x|X|0|[1-9]\d*)\.(x|X|0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/).optional().default('1.x.x-cfke.x'),
202
+ release_channel: z.enum([
203
+ 'rapid',
204
+ 'stable',
205
+ 'extended'
206
+ ]).optional().default('rapid'),
207
+ features: z.object({
208
+ gpu_sharing_strategy: z.enum([
209
+ 'none',
210
+ 'mps',
211
+ 'time_slicing'
212
+ ]).optional().default('none'),
213
+ gpu_max_shared_clients_per_gpu: z.int().gte(2).lte(48).optional().default(4),
214
+ cilium_socket_lb_host_namespace_only: z.boolean().optional()
215
+ }).optional().default({
216
+ gpu_sharing_strategy: 'none',
217
+ gpu_max_shared_clients_per_gpu: 4,
218
+ cilium_socket_lb_host_namespace_only: false
219
+ }),
220
+ region: z.string(),
221
+ networking: z.object({
222
+ pod_cidr: z.string().optional().default('10.244.0.0/16'),
223
+ service_cidr: z.string().optional().default('10.96.0.0/12'),
224
+ dual_stack: z.boolean().optional(),
225
+ pod_cidr_v6: z.string().optional().default('2001:db8:1:2::/48'),
226
+ service_cidr_v6: z.string().optional().default('2001:db8:1:1::/112')
227
+ }).optional().default({
228
+ pod_cidr: '10.244.0.0/16',
229
+ service_cidr: '10.96.0.0/12',
230
+ dual_stack: false,
231
+ pod_cidr_v6: '2001:db8:1:2::/48',
232
+ service_cidr_v6: '2001:db8:1:1::/112'
233
+ })
210
234
  });
211
235
  export const zClusterJoinInformation = z.object({
212
236
  certificate_authority: z.string(),
213
- endpoint: z.string().url(),
237
+ endpoint: z.url(),
238
+ cluster_dns: z.string(),
239
+ pod_cidr: z.string(),
214
240
  auth_key: z.string(),
241
+ login_server: z.string(),
215
242
  bootstrap_token: z.string(),
216
243
  versions: z.object({
217
244
  kubernetes: z.string(),
218
245
  tailscale: z.string(),
219
- containerd: z.string()
246
+ containerd: z.string(),
247
+ nvidia_driver: z.string()
220
248
  }),
221
249
  third_party_api_access_config: z.object({
222
250
  metadata_url: z.string(),
@@ -224,937 +252,1746 @@ export const zClusterJoinInformation = z.object({
224
252
  gcp_workload_identity_provider: z.string()
225
253
  })
226
254
  });
255
+ /**
256
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
257
+ */
227
258
  export const zCluster = z.object({
228
259
  name: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
229
- region: z.enum([
230
- 'staging',
231
- 'northamerica-central-1'
232
- ]).optional(),
233
260
  tier: z.enum([
234
261
  'basic',
235
- 'pro'
236
- ]),
237
- version_channel: z.string().regex(/^(x|X|0|[1-9]\d*)\.(x|X|0|[1-9]\d*)\.(x|X|0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/).optional().default('1.x.x-cfke.x'),
238
- id: z.string().uuid(),
262
+ 'pro',
263
+ 'enterprise'
264
+ ]).default('basic'),
265
+ version_channel: z.string().regex(/^(x|X|0|[1-9]\d*)\.(x|X|0|[1-9]\d*)\.(x|X|0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/).default('1.x.x-cfke.x'),
266
+ release_channel: z.enum([
267
+ 'rapid',
268
+ 'stable',
269
+ 'extended'
270
+ ]).default('rapid'),
271
+ features: z.object({
272
+ gpu_sharing_strategy: z.enum([
273
+ 'none',
274
+ 'mps',
275
+ 'time_slicing'
276
+ ]).default('none'),
277
+ gpu_max_shared_clients_per_gpu: z.int().gte(2).lte(48).default(4),
278
+ cilium_socket_lb_host_namespace_only: z.boolean()
279
+ }).default({
280
+ gpu_sharing_strategy: 'none',
281
+ gpu_max_shared_clients_per_gpu: 4,
282
+ cilium_socket_lb_host_namespace_only: false
283
+ }),
284
+ region: z.string(),
285
+ networking: z.object({
286
+ pod_cidr: z.string().default('10.244.0.0/16'),
287
+ service_cidr: z.string().default('10.96.0.0/12'),
288
+ dual_stack: z.boolean(),
289
+ pod_cidr_v6: z.string().default('2001:db8:1:2::/48'),
290
+ service_cidr_v6: z.string().default('2001:db8:1:1::/112')
291
+ }).default({
292
+ pod_cidr: '10.244.0.0/16',
293
+ service_cidr: '10.96.0.0/12',
294
+ dual_stack: false,
295
+ pod_cidr_v6: '2001:db8:1:2::/48',
296
+ service_cidr_v6: '2001:db8:1:1::/112'
297
+ }),
298
+ id: z.uuid(),
239
299
  status: z.enum([
240
- 'active',
241
- 'deleted',
242
300
  'creating',
243
301
  'deployed',
244
- 'failed',
245
- 'updating'
302
+ 'updating',
303
+ 'disabled'
246
304
  ]),
247
305
  endpoint: z.union([
248
- z.string().url(),
249
- z.enum([
250
- ''
251
- ])
306
+ z.url(),
307
+ z.enum([''])
308
+ ]).optional(),
309
+ endpoint_public: z.union([
310
+ z.url(),
311
+ z.enum([''])
252
312
  ]).optional(),
253
313
  certificate_ca: z.string().optional(),
254
314
  version_current: z.string().optional(),
255
315
  created_at: z.string().optional(),
256
316
  updated_at: z.string().optional(),
257
- ready: z.boolean().optional()
317
+ ready: z.boolean()
258
318
  });
319
+ /**
320
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
321
+ */
259
322
  export const zClusterUpdateInput = z.object({
260
- name: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/).optional(),
261
- version_channel: z.string().regex(/^(x|X|0|[1-9]\d*)\.(x|X|0|[1-9]\d*)\.(x|X|0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/).optional()
323
+ name: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
324
+ tier: z.enum([
325
+ 'basic',
326
+ 'pro',
327
+ 'enterprise'
328
+ ]).optional().default('basic'),
329
+ version_channel: z.string().regex(/^(x|X|0|[1-9]\d*)\.(x|X|0|[1-9]\d*)\.(x|X|0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/).optional().default('1.x.x-cfke.x'),
330
+ release_channel: z.enum([
331
+ 'rapid',
332
+ 'stable',
333
+ 'extended'
334
+ ]).optional().default('rapid'),
335
+ features: z.object({
336
+ gpu_sharing_strategy: z.enum([
337
+ 'none',
338
+ 'mps',
339
+ 'time_slicing'
340
+ ]).optional().default('none'),
341
+ gpu_max_shared_clients_per_gpu: z.int().gte(2).lte(48).optional().default(4),
342
+ cilium_socket_lb_host_namespace_only: z.boolean().optional()
343
+ }).optional().default({
344
+ gpu_sharing_strategy: 'none',
345
+ gpu_max_shared_clients_per_gpu: 4,
346
+ cilium_socket_lb_host_namespace_only: false
347
+ })
348
+ });
349
+ export const zFeedbackCreateInput = z.object({
350
+ sentiment: z.enum([
351
+ 'positive',
352
+ 'neutral',
353
+ 'negative'
354
+ ]),
355
+ message: z.string().min(1).max(2000),
356
+ context: z.string().max(2000).optional(),
357
+ source: z.enum([
358
+ 'cli',
359
+ 'mcp',
360
+ 'plugin',
361
+ 'console',
362
+ 'api'
363
+ ]).optional().default('api'),
364
+ client: z.string().max(100).optional()
262
365
  });
366
+ export const zFeedback = z.object({
367
+ id: z.string()
368
+ });
369
+ /**
370
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
371
+ */
263
372
  export const zFleetCreateInput = z.object({
264
373
  limits: z.object({
265
- cpu: z.number().gte(0)
374
+ cpu: z.int().gte(0).lte(100000).optional()
266
375
  }).optional(),
267
376
  gcp: z.object({
268
- enabled: z.boolean().optional().default(true),
269
- project: z.string()
377
+ enabled: z.boolean(),
378
+ project: z.string().regex(/^[a-z][a-z0-9-]{4,28}[a-z0-9]$/).optional()
379
+ }).optional(),
380
+ hetzner: z.object({
381
+ enabled: z.boolean(),
382
+ apiKey: z.string().length(64).regex(/^([A-Za-z0-9]{64}|\*{64})$/).optional()
270
383
  }).optional(),
271
- hetzner: z.union([
272
- z.object({
273
- enabled: z.boolean().optional().default(true),
274
- apiKey: z.string().optional()
275
- }),
276
- z.object({
277
- apiKey: z.string().optional(),
278
- enabled: z.boolean().optional().default(true)
279
- })
280
- ]).optional(),
281
384
  aws: z.object({
282
- enabled: z.boolean().optional().default(true),
283
- controllerRoleArn: z.string()
385
+ enabled: z.boolean(),
386
+ controllerRoleArn: z.string().regex(/^arn:aws(-[a-z]+)*:iam::\d{12}:role\/[\w+=,.@\/-]+$/).optional()
284
387
  }).optional(),
285
- id: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
286
- type: z.enum([
287
- 'managed',
288
- 'connected'
289
- ])
388
+ constraints: z.object({
389
+ 'karpenter.sh/capacity-type': z.array(z.enum(['on-demand', 'spot'])).min(1).optional().default(['on-demand', 'spot']),
390
+ 'kubernetes.io/arch': z.array(z.enum(['amd64', 'arm64'])).min(1).optional().default(['amd64']),
391
+ 'cfke.io/instance-family': z.array(z.enum([
392
+ 'a1',
393
+ 'a2',
394
+ 'a3',
395
+ 'a4',
396
+ 'c1',
397
+ 'c2',
398
+ 'c2d',
399
+ 'c3',
400
+ 'c3d',
401
+ 'c4',
402
+ 'c4a',
403
+ 'c4d',
404
+ 'c5',
405
+ 'c5a',
406
+ 'c5ad',
407
+ 'c5d',
408
+ 'c5n',
409
+ 'c6a',
410
+ 'c6g',
411
+ 'c6gd',
412
+ 'c6gn',
413
+ 'c6i',
414
+ 'c6id',
415
+ 'c6in',
416
+ 'c7a',
417
+ 'c7g',
418
+ 'c7gd',
419
+ 'c7gn',
420
+ 'c7i',
421
+ 'c7i-flex',
422
+ 'c8g',
423
+ 'c8gd',
424
+ 'cax',
425
+ 'ccx',
426
+ 'cpx',
427
+ 'cx',
428
+ 'd2',
429
+ 'd3',
430
+ 'd3en',
431
+ 'dl1',
432
+ 'dl2q',
433
+ 'e2',
434
+ 'f1',
435
+ 'f2',
436
+ 'g1',
437
+ 'g2',
438
+ 'g4ad',
439
+ 'g4dn',
440
+ 'g5',
441
+ 'g5g',
442
+ 'g6',
443
+ 'g6e',
444
+ 'gr6',
445
+ 'h1',
446
+ 'h3',
447
+ 'hpc6a',
448
+ 'hpc6id',
449
+ 'hpc7a',
450
+ 'hpc7g',
451
+ 'i2',
452
+ 'i3',
453
+ 'i3en',
454
+ 'i4g',
455
+ 'i4i',
456
+ 'i7i',
457
+ 'i7ie',
458
+ 'i8g',
459
+ 'im4gn',
460
+ 'inf1',
461
+ 'inf2',
462
+ 'is4gen',
463
+ 'm1',
464
+ 'm2',
465
+ 'm3',
466
+ 'm4',
467
+ 'm5',
468
+ 'm5a',
469
+ 'm5ad',
470
+ 'm5d',
471
+ 'm5dn',
472
+ 'm5n',
473
+ 'm5zn',
474
+ 'm6a',
475
+ 'm6g',
476
+ 'm6gd',
477
+ 'm6i',
478
+ 'm6id',
479
+ 'm6idn',
480
+ 'm6in',
481
+ 'm7a',
482
+ 'm7g',
483
+ 'm7gd',
484
+ 'm7i',
485
+ 'm7i-flex',
486
+ 'm8g',
487
+ 'm8gd',
488
+ 'n1',
489
+ 'n2',
490
+ 'n2d',
491
+ 'n4',
492
+ 'p3',
493
+ 'p3dn',
494
+ 'p4d',
495
+ 'p4de',
496
+ 'p5',
497
+ 'p5e',
498
+ 'p5en',
499
+ 'p6-b200',
500
+ 'r3',
501
+ 'r4',
502
+ 'r5',
503
+ 'r5a',
504
+ 'r5ad',
505
+ 'r5b',
506
+ 'r5d',
507
+ 'r5dn',
508
+ 'r5n',
509
+ 'r6a',
510
+ 'r6g',
511
+ 'r6gd',
512
+ 'r6i',
513
+ 'r6id',
514
+ 'r6idn',
515
+ 'r6in',
516
+ 'r7a',
517
+ 'r7g',
518
+ 'r7gd',
519
+ 'r7i',
520
+ 'r7iz',
521
+ 'r8g',
522
+ 'r8gd',
523
+ 't2',
524
+ 't2a',
525
+ 't2d',
526
+ 't3',
527
+ 't3a',
528
+ 't4g',
529
+ 'trn1',
530
+ 'trn1n',
531
+ 'u-3tb1',
532
+ 'u-6tb1',
533
+ 'u7i-12tb',
534
+ 'u7i-6tb',
535
+ 'u7i-8tb',
536
+ 'u7in-16tb',
537
+ 'u7in-24tb',
538
+ 'u7in-32tb',
539
+ 'vt1',
540
+ 'x1',
541
+ 'x1e',
542
+ 'x2gd',
543
+ 'x2idn',
544
+ 'x2iedn',
545
+ 'x2iezn',
546
+ 'x4',
547
+ 'x8g',
548
+ 'z1d',
549
+ 'z3'
550
+ ])).optional().default([]),
551
+ 'topology.kubernetes.io/region': z.array(z.enum([
552
+ 'africa-south1',
553
+ 'ap-northeast-1',
554
+ 'ap-northeast-2',
555
+ 'ap-northeast-3',
556
+ 'ap-south-1',
557
+ 'ap-southeast-1',
558
+ 'ap-southeast-2',
559
+ 'ash',
560
+ 'asia-east1',
561
+ 'asia-east2',
562
+ 'asia-northeast1',
563
+ 'asia-northeast2',
564
+ 'asia-northeast3',
565
+ 'asia-south1',
566
+ 'asia-south2',
567
+ 'asia-southeast1',
568
+ 'asia-southeast2',
569
+ 'australia-southeast1',
570
+ 'australia-southeast2',
571
+ 'ca-central-1',
572
+ 'eu-central-1',
573
+ 'eu-central-2',
574
+ 'eu-north-1',
575
+ 'eu-west-1',
576
+ 'eu-west-2',
577
+ 'eu-west-3',
578
+ 'europe-central2',
579
+ 'europe-north1',
580
+ 'europe-southwest1',
581
+ 'europe-west1',
582
+ 'europe-west10',
583
+ 'europe-west12',
584
+ 'europe-west2',
585
+ 'europe-west3',
586
+ 'europe-west4',
587
+ 'europe-west6',
588
+ 'europe-west8',
589
+ 'europe-west9',
590
+ 'fsn1',
591
+ 'hel1',
592
+ 'hil',
593
+ 'me-central1',
594
+ 'me-central2',
595
+ 'me-west1',
596
+ 'nbg1',
597
+ 'northamerica-northeast1',
598
+ 'northamerica-northeast2',
599
+ 'sa-east-1',
600
+ 'sin',
601
+ 'southamerica-east1',
602
+ 'southamerica-west1',
603
+ 'us-central1',
604
+ 'us-east-1',
605
+ 'us-east-2',
606
+ 'us-east1',
607
+ 'us-east4',
608
+ 'us-east5',
609
+ 'us-south1',
610
+ 'us-west-1',
611
+ 'us-west-2',
612
+ 'us-west1',
613
+ 'us-west2',
614
+ 'us-west3',
615
+ 'us-west4'
616
+ ])).optional().default([])
617
+ }).optional().default({
618
+ 'karpenter.sh/capacity-type': ['on-demand', 'spot'],
619
+ 'kubernetes.io/arch': ['amd64'],
620
+ 'cfke.io/instance-family': [],
621
+ 'topology.kubernetes.io/region': []
622
+ }),
623
+ scalingProfile: z.enum(['aggressive', 'conservative']).optional().default('conservative'),
624
+ taints: z.array(z.object({
625
+ key: z.string(),
626
+ value: z.string().max(63).regex(/^([A-Za-z0-9]([-A-Za-z0-9_.]*[A-Za-z0-9])?)?$/).optional(),
627
+ effect: z.enum([
628
+ 'NoSchedule',
629
+ 'PreferNoSchedule',
630
+ 'NoExecute'
631
+ ])
632
+ })).max(50).optional().default([]),
633
+ id: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/)
290
634
  });
635
+ /**
636
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
637
+ */
291
638
  export const zFleet = z.object({
292
639
  limits: z.object({
293
- cpu: z.number().gte(0)
640
+ cpu: z.int().gte(0).lte(100000).optional()
294
641
  }).optional(),
295
642
  gcp: z.object({
296
- enabled: z.boolean().optional().default(true),
297
- project: z.string()
643
+ enabled: z.boolean(),
644
+ project: z.string().regex(/^[a-z][a-z0-9-]{4,28}[a-z0-9]$/).optional()
645
+ }).optional(),
646
+ hetzner: z.object({
647
+ enabled: z.boolean(),
648
+ apiKey: z.string().regex(/^\*{64}$/).optional()
298
649
  }).optional(),
299
- hetzner: z.union([
300
- z.object({
301
- enabled: z.boolean().optional().default(true),
302
- apiKey: z.string().optional()
303
- }),
304
- z.object({
305
- apiKey: z.string().optional(),
306
- enabled: z.boolean().optional().default(true)
307
- })
308
- ]).optional(),
309
650
  aws: z.object({
310
- enabled: z.boolean().optional().default(true),
311
- controllerRoleArn: z.string()
651
+ enabled: z.boolean(),
652
+ controllerRoleArn: z.string().regex(/^arn:aws(-[a-z]+)*:iam::\d{12}:role\/[\w+=,.@\/-]+$/).optional()
312
653
  }).optional(),
654
+ constraints: z.object({
655
+ 'karpenter.sh/capacity-type': z.array(z.enum(['on-demand', 'spot'])).min(1).default(['on-demand', 'spot']),
656
+ 'kubernetes.io/arch': z.array(z.enum(['amd64', 'arm64'])).min(1).default(['amd64']),
657
+ 'cfke.io/instance-family': z.array(z.enum([
658
+ 'a1',
659
+ 'a2',
660
+ 'a3',
661
+ 'a4',
662
+ 'c1',
663
+ 'c2',
664
+ 'c2d',
665
+ 'c3',
666
+ 'c3d',
667
+ 'c4',
668
+ 'c4a',
669
+ 'c4d',
670
+ 'c5',
671
+ 'c5a',
672
+ 'c5ad',
673
+ 'c5d',
674
+ 'c5n',
675
+ 'c6a',
676
+ 'c6g',
677
+ 'c6gd',
678
+ 'c6gn',
679
+ 'c6i',
680
+ 'c6id',
681
+ 'c6in',
682
+ 'c7a',
683
+ 'c7g',
684
+ 'c7gd',
685
+ 'c7gn',
686
+ 'c7i',
687
+ 'c7i-flex',
688
+ 'c8g',
689
+ 'c8gd',
690
+ 'cax',
691
+ 'ccx',
692
+ 'cpx',
693
+ 'cx',
694
+ 'd2',
695
+ 'd3',
696
+ 'd3en',
697
+ 'dl1',
698
+ 'dl2q',
699
+ 'e2',
700
+ 'f1',
701
+ 'f2',
702
+ 'g1',
703
+ 'g2',
704
+ 'g4ad',
705
+ 'g4dn',
706
+ 'g5',
707
+ 'g5g',
708
+ 'g6',
709
+ 'g6e',
710
+ 'gr6',
711
+ 'h1',
712
+ 'h3',
713
+ 'hpc6a',
714
+ 'hpc6id',
715
+ 'hpc7a',
716
+ 'hpc7g',
717
+ 'i2',
718
+ 'i3',
719
+ 'i3en',
720
+ 'i4g',
721
+ 'i4i',
722
+ 'i7i',
723
+ 'i7ie',
724
+ 'i8g',
725
+ 'im4gn',
726
+ 'inf1',
727
+ 'inf2',
728
+ 'is4gen',
729
+ 'm1',
730
+ 'm2',
731
+ 'm3',
732
+ 'm4',
733
+ 'm5',
734
+ 'm5a',
735
+ 'm5ad',
736
+ 'm5d',
737
+ 'm5dn',
738
+ 'm5n',
739
+ 'm5zn',
740
+ 'm6a',
741
+ 'm6g',
742
+ 'm6gd',
743
+ 'm6i',
744
+ 'm6id',
745
+ 'm6idn',
746
+ 'm6in',
747
+ 'm7a',
748
+ 'm7g',
749
+ 'm7gd',
750
+ 'm7i',
751
+ 'm7i-flex',
752
+ 'm8g',
753
+ 'm8gd',
754
+ 'n1',
755
+ 'n2',
756
+ 'n2d',
757
+ 'n4',
758
+ 'p3',
759
+ 'p3dn',
760
+ 'p4d',
761
+ 'p4de',
762
+ 'p5',
763
+ 'p5e',
764
+ 'p5en',
765
+ 'p6-b200',
766
+ 'r3',
767
+ 'r4',
768
+ 'r5',
769
+ 'r5a',
770
+ 'r5ad',
771
+ 'r5b',
772
+ 'r5d',
773
+ 'r5dn',
774
+ 'r5n',
775
+ 'r6a',
776
+ 'r6g',
777
+ 'r6gd',
778
+ 'r6i',
779
+ 'r6id',
780
+ 'r6idn',
781
+ 'r6in',
782
+ 'r7a',
783
+ 'r7g',
784
+ 'r7gd',
785
+ 'r7i',
786
+ 'r7iz',
787
+ 'r8g',
788
+ 'r8gd',
789
+ 't2',
790
+ 't2a',
791
+ 't2d',
792
+ 't3',
793
+ 't3a',
794
+ 't4g',
795
+ 'trn1',
796
+ 'trn1n',
797
+ 'u-3tb1',
798
+ 'u-6tb1',
799
+ 'u7i-12tb',
800
+ 'u7i-6tb',
801
+ 'u7i-8tb',
802
+ 'u7in-16tb',
803
+ 'u7in-24tb',
804
+ 'u7in-32tb',
805
+ 'vt1',
806
+ 'x1',
807
+ 'x1e',
808
+ 'x2gd',
809
+ 'x2idn',
810
+ 'x2iedn',
811
+ 'x2iezn',
812
+ 'x4',
813
+ 'x8g',
814
+ 'z1d',
815
+ 'z3'
816
+ ])).optional().default([]),
817
+ 'topology.kubernetes.io/region': z.array(z.enum([
818
+ 'africa-south1',
819
+ 'ap-northeast-1',
820
+ 'ap-northeast-2',
821
+ 'ap-northeast-3',
822
+ 'ap-south-1',
823
+ 'ap-southeast-1',
824
+ 'ap-southeast-2',
825
+ 'ash',
826
+ 'asia-east1',
827
+ 'asia-east2',
828
+ 'asia-northeast1',
829
+ 'asia-northeast2',
830
+ 'asia-northeast3',
831
+ 'asia-south1',
832
+ 'asia-south2',
833
+ 'asia-southeast1',
834
+ 'asia-southeast2',
835
+ 'australia-southeast1',
836
+ 'australia-southeast2',
837
+ 'ca-central-1',
838
+ 'eu-central-1',
839
+ 'eu-central-2',
840
+ 'eu-north-1',
841
+ 'eu-west-1',
842
+ 'eu-west-2',
843
+ 'eu-west-3',
844
+ 'europe-central2',
845
+ 'europe-north1',
846
+ 'europe-southwest1',
847
+ 'europe-west1',
848
+ 'europe-west10',
849
+ 'europe-west12',
850
+ 'europe-west2',
851
+ 'europe-west3',
852
+ 'europe-west4',
853
+ 'europe-west6',
854
+ 'europe-west8',
855
+ 'europe-west9',
856
+ 'fsn1',
857
+ 'hel1',
858
+ 'hil',
859
+ 'me-central1',
860
+ 'me-central2',
861
+ 'me-west1',
862
+ 'nbg1',
863
+ 'northamerica-northeast1',
864
+ 'northamerica-northeast2',
865
+ 'sa-east-1',
866
+ 'sin',
867
+ 'southamerica-east1',
868
+ 'southamerica-west1',
869
+ 'us-central1',
870
+ 'us-east-1',
871
+ 'us-east-2',
872
+ 'us-east1',
873
+ 'us-east4',
874
+ 'us-east5',
875
+ 'us-south1',
876
+ 'us-west-1',
877
+ 'us-west-2',
878
+ 'us-west1',
879
+ 'us-west2',
880
+ 'us-west3',
881
+ 'us-west4'
882
+ ])).optional().default([])
883
+ }).default({
884
+ 'karpenter.sh/capacity-type': ['on-demand', 'spot'],
885
+ 'kubernetes.io/arch': ['amd64'],
886
+ 'cfke.io/instance-family': [],
887
+ 'topology.kubernetes.io/region': []
888
+ }),
889
+ scalingProfile: z.enum(['aggressive', 'conservative']).default('conservative'),
890
+ taints: z.array(z.object({
891
+ key: z.string(),
892
+ value: z.string().max(63).regex(/^([A-Za-z0-9]([-A-Za-z0-9_.]*[A-Za-z0-9])?)?$/).optional(),
893
+ effect: z.enum([
894
+ 'NoSchedule',
895
+ 'PreferNoSchedule',
896
+ 'NoExecute'
897
+ ])
898
+ })).max(50).default([]),
313
899
  id: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
314
- type: z.enum([
315
- 'managed',
316
- 'connected'
317
- ])
900
+ ready: z.boolean(),
901
+ status_message: z.string().optional(),
902
+ created_at: z.string(),
903
+ updated_at: z.string()
318
904
  });
905
+ /**
906
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
907
+ */
319
908
  export const zFleetUpdateInput = z.object({
320
909
  limits: z.object({
321
- cpu: z.number().gte(0)
910
+ cpu: z.int().gte(0).lte(100000).optional()
322
911
  }).optional(),
323
912
  gcp: z.object({
324
- enabled: z.boolean().optional().default(true),
325
- project: z.string()
913
+ enabled: z.boolean(),
914
+ project: z.string().regex(/^[a-z][a-z0-9-]{4,28}[a-z0-9]$/).optional()
915
+ }).optional(),
916
+ hetzner: z.object({
917
+ enabled: z.boolean(),
918
+ apiKey: z.string().length(64).regex(/^([A-Za-z0-9]{64}|\*{64})$/).optional()
326
919
  }).optional(),
327
- hetzner: z.union([
328
- z.object({
329
- enabled: z.boolean().optional().default(true),
330
- apiKey: z.string().optional()
331
- }),
332
- z.object({
333
- apiKey: z.string().optional(),
334
- enabled: z.boolean().optional().default(true)
335
- })
336
- ]).optional(),
337
920
  aws: z.object({
338
- enabled: z.boolean().optional().default(true),
339
- controllerRoleArn: z.string()
340
- }).optional()
921
+ enabled: z.boolean(),
922
+ controllerRoleArn: z.string().regex(/^arn:aws(-[a-z]+)*:iam::\d{12}:role\/[\w+=,.@\/-]+$/).optional()
923
+ }).optional(),
924
+ constraints: z.object({
925
+ 'karpenter.sh/capacity-type': z.array(z.enum(['on-demand', 'spot'])).min(1).optional().default(['on-demand', 'spot']),
926
+ 'kubernetes.io/arch': z.array(z.enum(['amd64', 'arm64'])).min(1).optional().default(['amd64']),
927
+ 'cfke.io/instance-family': z.array(z.enum([
928
+ 'a1',
929
+ 'a2',
930
+ 'a3',
931
+ 'a4',
932
+ 'c1',
933
+ 'c2',
934
+ 'c2d',
935
+ 'c3',
936
+ 'c3d',
937
+ 'c4',
938
+ 'c4a',
939
+ 'c4d',
940
+ 'c5',
941
+ 'c5a',
942
+ 'c5ad',
943
+ 'c5d',
944
+ 'c5n',
945
+ 'c6a',
946
+ 'c6g',
947
+ 'c6gd',
948
+ 'c6gn',
949
+ 'c6i',
950
+ 'c6id',
951
+ 'c6in',
952
+ 'c7a',
953
+ 'c7g',
954
+ 'c7gd',
955
+ 'c7gn',
956
+ 'c7i',
957
+ 'c7i-flex',
958
+ 'c8g',
959
+ 'c8gd',
960
+ 'cax',
961
+ 'ccx',
962
+ 'cpx',
963
+ 'cx',
964
+ 'd2',
965
+ 'd3',
966
+ 'd3en',
967
+ 'dl1',
968
+ 'dl2q',
969
+ 'e2',
970
+ 'f1',
971
+ 'f2',
972
+ 'g1',
973
+ 'g2',
974
+ 'g4ad',
975
+ 'g4dn',
976
+ 'g5',
977
+ 'g5g',
978
+ 'g6',
979
+ 'g6e',
980
+ 'gr6',
981
+ 'h1',
982
+ 'h3',
983
+ 'hpc6a',
984
+ 'hpc6id',
985
+ 'hpc7a',
986
+ 'hpc7g',
987
+ 'i2',
988
+ 'i3',
989
+ 'i3en',
990
+ 'i4g',
991
+ 'i4i',
992
+ 'i7i',
993
+ 'i7ie',
994
+ 'i8g',
995
+ 'im4gn',
996
+ 'inf1',
997
+ 'inf2',
998
+ 'is4gen',
999
+ 'm1',
1000
+ 'm2',
1001
+ 'm3',
1002
+ 'm4',
1003
+ 'm5',
1004
+ 'm5a',
1005
+ 'm5ad',
1006
+ 'm5d',
1007
+ 'm5dn',
1008
+ 'm5n',
1009
+ 'm5zn',
1010
+ 'm6a',
1011
+ 'm6g',
1012
+ 'm6gd',
1013
+ 'm6i',
1014
+ 'm6id',
1015
+ 'm6idn',
1016
+ 'm6in',
1017
+ 'm7a',
1018
+ 'm7g',
1019
+ 'm7gd',
1020
+ 'm7i',
1021
+ 'm7i-flex',
1022
+ 'm8g',
1023
+ 'm8gd',
1024
+ 'n1',
1025
+ 'n2',
1026
+ 'n2d',
1027
+ 'n4',
1028
+ 'p3',
1029
+ 'p3dn',
1030
+ 'p4d',
1031
+ 'p4de',
1032
+ 'p5',
1033
+ 'p5e',
1034
+ 'p5en',
1035
+ 'p6-b200',
1036
+ 'r3',
1037
+ 'r4',
1038
+ 'r5',
1039
+ 'r5a',
1040
+ 'r5ad',
1041
+ 'r5b',
1042
+ 'r5d',
1043
+ 'r5dn',
1044
+ 'r5n',
1045
+ 'r6a',
1046
+ 'r6g',
1047
+ 'r6gd',
1048
+ 'r6i',
1049
+ 'r6id',
1050
+ 'r6idn',
1051
+ 'r6in',
1052
+ 'r7a',
1053
+ 'r7g',
1054
+ 'r7gd',
1055
+ 'r7i',
1056
+ 'r7iz',
1057
+ 'r8g',
1058
+ 'r8gd',
1059
+ 't2',
1060
+ 't2a',
1061
+ 't2d',
1062
+ 't3',
1063
+ 't3a',
1064
+ 't4g',
1065
+ 'trn1',
1066
+ 'trn1n',
1067
+ 'u-3tb1',
1068
+ 'u-6tb1',
1069
+ 'u7i-12tb',
1070
+ 'u7i-6tb',
1071
+ 'u7i-8tb',
1072
+ 'u7in-16tb',
1073
+ 'u7in-24tb',
1074
+ 'u7in-32tb',
1075
+ 'vt1',
1076
+ 'x1',
1077
+ 'x1e',
1078
+ 'x2gd',
1079
+ 'x2idn',
1080
+ 'x2iedn',
1081
+ 'x2iezn',
1082
+ 'x4',
1083
+ 'x8g',
1084
+ 'z1d',
1085
+ 'z3'
1086
+ ])).optional().default([]),
1087
+ 'topology.kubernetes.io/region': z.array(z.enum([
1088
+ 'africa-south1',
1089
+ 'ap-northeast-1',
1090
+ 'ap-northeast-2',
1091
+ 'ap-northeast-3',
1092
+ 'ap-south-1',
1093
+ 'ap-southeast-1',
1094
+ 'ap-southeast-2',
1095
+ 'ash',
1096
+ 'asia-east1',
1097
+ 'asia-east2',
1098
+ 'asia-northeast1',
1099
+ 'asia-northeast2',
1100
+ 'asia-northeast3',
1101
+ 'asia-south1',
1102
+ 'asia-south2',
1103
+ 'asia-southeast1',
1104
+ 'asia-southeast2',
1105
+ 'australia-southeast1',
1106
+ 'australia-southeast2',
1107
+ 'ca-central-1',
1108
+ 'eu-central-1',
1109
+ 'eu-central-2',
1110
+ 'eu-north-1',
1111
+ 'eu-west-1',
1112
+ 'eu-west-2',
1113
+ 'eu-west-3',
1114
+ 'europe-central2',
1115
+ 'europe-north1',
1116
+ 'europe-southwest1',
1117
+ 'europe-west1',
1118
+ 'europe-west10',
1119
+ 'europe-west12',
1120
+ 'europe-west2',
1121
+ 'europe-west3',
1122
+ 'europe-west4',
1123
+ 'europe-west6',
1124
+ 'europe-west8',
1125
+ 'europe-west9',
1126
+ 'fsn1',
1127
+ 'hel1',
1128
+ 'hil',
1129
+ 'me-central1',
1130
+ 'me-central2',
1131
+ 'me-west1',
1132
+ 'nbg1',
1133
+ 'northamerica-northeast1',
1134
+ 'northamerica-northeast2',
1135
+ 'sa-east-1',
1136
+ 'sin',
1137
+ 'southamerica-east1',
1138
+ 'southamerica-west1',
1139
+ 'us-central1',
1140
+ 'us-east-1',
1141
+ 'us-east-2',
1142
+ 'us-east1',
1143
+ 'us-east4',
1144
+ 'us-east5',
1145
+ 'us-south1',
1146
+ 'us-west-1',
1147
+ 'us-west-2',
1148
+ 'us-west1',
1149
+ 'us-west2',
1150
+ 'us-west3',
1151
+ 'us-west4'
1152
+ ])).optional().default([])
1153
+ }).optional().default({
1154
+ 'karpenter.sh/capacity-type': ['on-demand', 'spot'],
1155
+ 'kubernetes.io/arch': ['amd64'],
1156
+ 'cfke.io/instance-family': [],
1157
+ 'topology.kubernetes.io/region': []
1158
+ }),
1159
+ scalingProfile: z.enum(['aggressive', 'conservative']).optional().default('conservative'),
1160
+ taints: z.array(z.object({
1161
+ key: z.string(),
1162
+ value: z.string().max(63).regex(/^([A-Za-z0-9]([-A-Za-z0-9_.]*[A-Za-z0-9])?)?$/).optional(),
1163
+ effect: z.enum([
1164
+ 'NoSchedule',
1165
+ 'PreferNoSchedule',
1166
+ 'NoExecute'
1167
+ ])
1168
+ })).max(50).optional().default([])
1169
+ });
1170
+ export const zInviteCreateInput = z.object({
1171
+ email: z.email(),
1172
+ role: z.enum(['Administrator', 'User']).optional().default('User')
341
1173
  });
342
1174
  export const zInvite = z.object({
343
1175
  id: z.string().optional(),
344
- organization_id: z.string().uuid().optional(),
345
- date_created: z.string().datetime(),
346
- email: z.string().email().optional(),
347
- code: z.string().optional()
1176
+ organization_id: z.uuid().optional(),
1177
+ date_created: z.iso.datetime(),
1178
+ email: z.email().optional(),
1179
+ code: z.string().optional(),
1180
+ role: z.enum(['Administrator', 'User']).optional().default('User')
348
1181
  });
349
- export const zInvoice = z.object({
350
- id: z.string().uuid().optional(),
351
- organizationId: z.string().uuid().optional(),
1182
+ export const zInvoicePaymentAttempt = z.object({
1183
+ invoice_id: z.string(),
1184
+ number: z.string(),
1185
+ amount: z.number(),
1186
+ currency: z.string(),
352
1187
  status: z.enum([
353
- 'DRAFT',
354
- 'COMMITTED',
355
- 'VOID'
356
- ]).optional(),
357
- amount: z.number().optional(),
358
- currency: z.enum([
359
- 'AED',
360
- 'AFN',
361
- 'ALL',
362
- 'AMD',
363
- 'ANG',
364
- 'AOA',
365
- 'ARS',
366
- 'AUD',
367
- 'AWG',
368
- 'AZN',
369
- 'BAM',
370
- 'BBD',
371
- 'BDT',
372
- 'BGN',
373
- 'BHD',
374
- 'BIF',
375
- 'BMD',
376
- 'BND',
377
- 'BOB',
378
- 'BRL',
379
- 'BSD',
380
- 'BTN',
381
- 'BWP',
382
- 'BYR',
383
- 'BZD',
384
- 'CAD',
385
- 'CDF',
386
- 'CHF',
387
- 'CLP',
388
- 'CNY',
389
- 'COP',
390
- 'CRC',
391
- 'CUC',
392
- 'CUP',
393
- 'CVE',
394
- 'CZK',
395
- 'DJF',
396
- 'DKK',
397
- 'DOP',
398
- 'DZD',
399
- 'EGP',
400
- 'ERN',
401
- 'ETB',
402
- 'EUR',
403
- 'FJD',
404
- 'FKP',
405
- 'GBP',
406
- 'GEL',
407
- 'GGP',
408
- 'GHS',
409
- 'GIP',
410
- 'GMD',
411
- 'GNF',
412
- 'GTQ',
413
- 'GYD',
414
- 'HKD',
415
- 'HNL',
416
- 'HRK',
417
- 'HTG',
418
- 'HUF',
419
- 'IDR',
420
- 'ILS',
421
- 'IMP',
422
- 'INR',
423
- 'IQD',
424
- 'IRR',
425
- 'ISK',
426
- 'JEP',
427
- 'JMD',
428
- 'JOD',
429
- 'JPY',
430
- 'KES',
431
- 'KGS',
432
- 'KHR',
433
- 'KMF',
434
- 'KPW',
435
- 'KRW',
436
- 'KWD',
437
- 'KYD',
438
- 'KZT',
439
- 'LAK',
440
- 'LBP',
441
- 'LKR',
442
- 'LRD',
443
- 'LSL',
444
- 'LTL',
445
- 'LVL',
446
- 'LYD',
447
- 'MAD',
448
- 'MDL',
449
- 'MGA',
450
- 'MKD',
451
- 'MMK',
452
- 'MNT',
453
- 'MOP',
454
- 'MRO',
455
- 'MUR',
456
- 'MVR',
457
- 'MWK',
458
- 'MXN',
459
- 'MYR',
460
- 'MZN',
461
- 'NAD',
462
- 'NGN',
463
- 'NIO',
464
- 'NOK',
465
- 'NPR',
466
- 'NZD',
467
- 'OMR',
468
- 'PAB',
469
- 'PEN',
470
- 'PGK',
471
- 'PHP',
472
- 'PKR',
473
- 'PLN',
474
- 'PYG',
475
- 'QAR',
476
- 'RON',
477
- 'RSD',
478
- 'RUB',
479
- 'RWF',
480
- 'SAR',
481
- 'SBD',
482
- 'SCR',
483
- 'SDG',
484
- 'SEK',
485
- 'SGD',
486
- 'SHP',
487
- 'SLL',
488
- 'SOS',
489
- 'SPL',
490
- 'SRD',
491
- 'STD',
492
- 'SVC',
493
- 'SYP',
494
- 'SZL',
495
- 'THB',
496
- 'TJS',
497
- 'TMT',
498
- 'TND',
499
- 'TOP',
500
- 'TRY',
501
- 'TTD',
502
- 'TVD',
503
- 'TWD',
504
- 'TZS',
505
- 'UAH',
506
- 'UGX',
507
- 'USD',
508
- 'UYU',
509
- 'UZS',
510
- 'VEF',
511
- 'VND',
512
- 'VUV',
513
- 'WST',
514
- 'XAF',
515
- 'XCD',
516
- 'XDR',
517
- 'XOF',
518
- 'XPF',
519
- 'YER',
520
- 'ZAR',
521
- 'ZMW',
522
- 'ZWD',
523
- 'BTC'
524
- ]).optional(),
525
- creditAdj: z.number().optional(),
526
- refundAdj: z.number().optional(),
527
- invoiceDate: z.string().optional(),
528
- targetDate: z.string().optional(),
529
- invoiceNumber: z.string().optional(),
530
- balance: z.number().optional(),
531
- bundleKeys: z.string().optional(),
532
- credits: z.array(z.object({
533
- id: z.string().uuid().optional(),
534
- linkedInvoiceItemId: z.string().uuid().optional(),
535
- productName: z.string().optional(),
536
- planName: z.string().optional(),
537
- phaseName: z.string().optional(),
538
- usageName: z.string().optional(),
539
- prettyProductName: z.string().optional(),
540
- prettyPlanName: z.string().optional(),
541
- prettyPhaseName: z.string().optional(),
542
- prettyUsageName: z.string().optional(),
543
- itemType: z.enum([
544
- 'EXTERNAL_CHARGE',
545
- 'FIXED',
546
- 'RECURRING',
547
- 'REPAIR_ADJ',
548
- 'CBA_ADJ',
549
- 'CREDIT_ADJ',
550
- 'ITEM_ADJ',
551
- 'USAGE',
552
- 'TAX',
553
- 'PARENT_SUMMARY'
554
- ]).optional(),
555
- description: z.string().optional(),
556
- startDate: z.string().optional(),
557
- endDate: z.string().optional(),
558
- amount: z.number().optional(),
559
- rate: z.number().optional(),
560
- currency: z.enum([
561
- 'AED',
562
- 'AFN',
563
- 'ALL',
564
- 'AMD',
565
- 'ANG',
566
- 'AOA',
567
- 'ARS',
568
- 'AUD',
569
- 'AWG',
570
- 'AZN',
571
- 'BAM',
572
- 'BBD',
573
- 'BDT',
574
- 'BGN',
575
- 'BHD',
576
- 'BIF',
577
- 'BMD',
578
- 'BND',
579
- 'BOB',
580
- 'BRL',
581
- 'BSD',
582
- 'BTN',
583
- 'BWP',
584
- 'BYR',
585
- 'BZD',
586
- 'CAD',
587
- 'CDF',
588
- 'CHF',
589
- 'CLP',
590
- 'CNY',
591
- 'COP',
592
- 'CRC',
593
- 'CUC',
594
- 'CUP',
595
- 'CVE',
596
- 'CZK',
597
- 'DJF',
598
- 'DKK',
599
- 'DOP',
600
- 'DZD',
601
- 'EGP',
602
- 'ERN',
603
- 'ETB',
604
- 'EUR',
605
- 'FJD',
606
- 'FKP',
607
- 'GBP',
608
- 'GEL',
609
- 'GGP',
610
- 'GHS',
611
- 'GIP',
612
- 'GMD',
613
- 'GNF',
614
- 'GTQ',
615
- 'GYD',
616
- 'HKD',
617
- 'HNL',
618
- 'HRK',
619
- 'HTG',
620
- 'HUF',
621
- 'IDR',
622
- 'ILS',
623
- 'IMP',
624
- 'INR',
625
- 'IQD',
626
- 'IRR',
627
- 'ISK',
628
- 'JEP',
629
- 'JMD',
630
- 'JOD',
631
- 'JPY',
632
- 'KES',
633
- 'KGS',
634
- 'KHR',
635
- 'KMF',
636
- 'KPW',
637
- 'KRW',
638
- 'KWD',
639
- 'KYD',
640
- 'KZT',
641
- 'LAK',
642
- 'LBP',
643
- 'LKR',
644
- 'LRD',
645
- 'LSL',
646
- 'LTL',
647
- 'LVL',
648
- 'LYD',
649
- 'MAD',
650
- 'MDL',
651
- 'MGA',
652
- 'MKD',
653
- 'MMK',
654
- 'MNT',
655
- 'MOP',
656
- 'MRO',
657
- 'MUR',
658
- 'MVR',
659
- 'MWK',
660
- 'MXN',
661
- 'MYR',
662
- 'MZN',
663
- 'NAD',
664
- 'NGN',
665
- 'NIO',
666
- 'NOK',
667
- 'NPR',
668
- 'NZD',
669
- 'OMR',
670
- 'PAB',
671
- 'PEN',
672
- 'PGK',
673
- 'PHP',
674
- 'PKR',
675
- 'PLN',
676
- 'PYG',
677
- 'QAR',
678
- 'RON',
679
- 'RSD',
680
- 'RUB',
681
- 'RWF',
682
- 'SAR',
683
- 'SBD',
684
- 'SCR',
685
- 'SDG',
686
- 'SEK',
687
- 'SGD',
688
- 'SHP',
689
- 'SLL',
690
- 'SOS',
691
- 'SPL',
692
- 'SRD',
693
- 'STD',
694
- 'SVC',
695
- 'SYP',
696
- 'SZL',
697
- 'THB',
698
- 'TJS',
699
- 'TMT',
700
- 'TND',
701
- 'TOP',
702
- 'TRY',
703
- 'TTD',
704
- 'TVD',
705
- 'TWD',
706
- 'TZS',
707
- 'UAH',
708
- 'UGX',
709
- 'USD',
710
- 'UYU',
711
- 'UZS',
712
- 'VEF',
713
- 'VND',
714
- 'VUV',
715
- 'WST',
716
- 'XAF',
717
- 'XCD',
718
- 'XDR',
719
- 'XOF',
720
- 'XPF',
721
- 'YER',
722
- 'ZAR',
723
- 'ZMW',
724
- 'ZWD',
725
- 'BTC'
726
- ]).optional(),
727
- quantity: z.number().optional(),
728
- itemDetails: z.string().optional(),
729
- catalogEffectiveDate: z.string().optional(),
730
- childItems: z.array(z.unknown()).optional()
731
- })).optional(),
732
- items: z.array(z.object({
733
- id: z.string().uuid().optional(),
734
- linkedInvoiceItemId: z.string().uuid().optional(),
735
- productName: z.string().optional(),
736
- planName: z.string().optional(),
737
- phaseName: z.string().optional(),
738
- usageName: z.string().optional(),
739
- prettyProductName: z.string().optional(),
740
- prettyPlanName: z.string().optional(),
741
- prettyPhaseName: z.string().optional(),
742
- prettyUsageName: z.string().optional(),
743
- itemType: z.enum([
744
- 'EXTERNAL_CHARGE',
745
- 'FIXED',
746
- 'RECURRING',
747
- 'REPAIR_ADJ',
748
- 'CBA_ADJ',
749
- 'CREDIT_ADJ',
750
- 'ITEM_ADJ',
751
- 'USAGE',
752
- 'TAX',
753
- 'PARENT_SUMMARY'
754
- ]).optional(),
755
- description: z.string().optional(),
756
- startDate: z.string().optional(),
757
- endDate: z.string().optional(),
758
- amount: z.number().optional(),
759
- rate: z.number().optional(),
760
- currency: z.enum([
761
- 'AED',
762
- 'AFN',
763
- 'ALL',
764
- 'AMD',
765
- 'ANG',
766
- 'AOA',
767
- 'ARS',
768
- 'AUD',
769
- 'AWG',
770
- 'AZN',
771
- 'BAM',
772
- 'BBD',
773
- 'BDT',
774
- 'BGN',
775
- 'BHD',
776
- 'BIF',
777
- 'BMD',
778
- 'BND',
779
- 'BOB',
780
- 'BRL',
781
- 'BSD',
782
- 'BTN',
783
- 'BWP',
784
- 'BYR',
785
- 'BZD',
786
- 'CAD',
787
- 'CDF',
788
- 'CHF',
789
- 'CLP',
790
- 'CNY',
791
- 'COP',
792
- 'CRC',
793
- 'CUC',
794
- 'CUP',
795
- 'CVE',
796
- 'CZK',
797
- 'DJF',
798
- 'DKK',
799
- 'DOP',
800
- 'DZD',
801
- 'EGP',
802
- 'ERN',
803
- 'ETB',
804
- 'EUR',
805
- 'FJD',
806
- 'FKP',
807
- 'GBP',
808
- 'GEL',
809
- 'GGP',
810
- 'GHS',
811
- 'GIP',
812
- 'GMD',
813
- 'GNF',
814
- 'GTQ',
815
- 'GYD',
816
- 'HKD',
817
- 'HNL',
818
- 'HRK',
819
- 'HTG',
820
- 'HUF',
821
- 'IDR',
822
- 'ILS',
823
- 'IMP',
824
- 'INR',
825
- 'IQD',
826
- 'IRR',
827
- 'ISK',
828
- 'JEP',
829
- 'JMD',
830
- 'JOD',
831
- 'JPY',
832
- 'KES',
833
- 'KGS',
834
- 'KHR',
835
- 'KMF',
836
- 'KPW',
837
- 'KRW',
838
- 'KWD',
839
- 'KYD',
840
- 'KZT',
841
- 'LAK',
842
- 'LBP',
843
- 'LKR',
844
- 'LRD',
845
- 'LSL',
846
- 'LTL',
847
- 'LVL',
848
- 'LYD',
849
- 'MAD',
850
- 'MDL',
851
- 'MGA',
852
- 'MKD',
853
- 'MMK',
854
- 'MNT',
855
- 'MOP',
856
- 'MRO',
857
- 'MUR',
858
- 'MVR',
859
- 'MWK',
860
- 'MXN',
861
- 'MYR',
862
- 'MZN',
863
- 'NAD',
864
- 'NGN',
865
- 'NIO',
866
- 'NOK',
867
- 'NPR',
868
- 'NZD',
869
- 'OMR',
870
- 'PAB',
871
- 'PEN',
872
- 'PGK',
873
- 'PHP',
874
- 'PKR',
875
- 'PLN',
876
- 'PYG',
877
- 'QAR',
878
- 'RON',
879
- 'RSD',
880
- 'RUB',
881
- 'RWF',
882
- 'SAR',
883
- 'SBD',
884
- 'SCR',
885
- 'SDG',
886
- 'SEK',
887
- 'SGD',
888
- 'SHP',
889
- 'SLL',
890
- 'SOS',
891
- 'SPL',
892
- 'SRD',
893
- 'STD',
894
- 'SVC',
895
- 'SYP',
896
- 'SZL',
897
- 'THB',
898
- 'TJS',
899
- 'TMT',
900
- 'TND',
901
- 'TOP',
902
- 'TRY',
903
- 'TTD',
904
- 'TVD',
905
- 'TWD',
906
- 'TZS',
907
- 'UAH',
908
- 'UGX',
909
- 'USD',
910
- 'UYU',
911
- 'UZS',
912
- 'VEF',
913
- 'VND',
914
- 'VUV',
915
- 'WST',
916
- 'XAF',
917
- 'XCD',
918
- 'XDR',
919
- 'XOF',
920
- 'XPF',
921
- 'YER',
922
- 'ZAR',
923
- 'ZMW',
924
- 'ZWD',
925
- 'BTC'
926
- ]).optional(),
927
- quantity: z.number().optional(),
928
- itemDetails: z.string().optional(),
929
- catalogEffectiveDate: z.string().optional(),
930
- childItems: z.array(z.unknown()).optional()
931
- })).optional()
1188
+ 'paid',
1189
+ 'processing',
1190
+ 'requires_action',
1191
+ 'failed'
1192
+ ]),
1193
+ client_secret: z.string(),
1194
+ failure_code: z.string(),
1195
+ failure_message: z.string()
1196
+ });
1197
+ export const zInvoicePaymentResult = z.object({
1198
+ code: z.enum([
1199
+ 'paid',
1200
+ 'processing',
1201
+ 'action_required',
1202
+ 'partially_paid',
1203
+ 'failed',
1204
+ 'nothing_due',
1205
+ 'bank_transfer_due'
1206
+ ]),
1207
+ message: z.string(),
1208
+ results: z.array(z.object({
1209
+ invoice_id: z.string(),
1210
+ number: z.string(),
1211
+ amount: z.number(),
1212
+ currency: z.string(),
1213
+ status: z.enum([
1214
+ 'paid',
1215
+ 'processing',
1216
+ 'requires_action',
1217
+ 'failed'
1218
+ ]),
1219
+ client_secret: z.string(),
1220
+ failure_code: z.string(),
1221
+ failure_message: z.string()
1222
+ }))
1223
+ });
1224
+ export const zInvoice = z.object({
1225
+ id: z.string().optional(),
1226
+ number: z.string().optional(),
1227
+ status: z.string().optional(),
1228
+ total: z.number().optional(),
1229
+ currency: z.string().optional(),
1230
+ created: z.iso.datetime(),
1231
+ period_start: z.iso.datetime(),
1232
+ period_end: z.iso.datetime(),
1233
+ invoice_pdf: z.string().optional()
1234
+ });
1235
+ export const zMarketplaceListingFiles = z.object({
1236
+ chartYaml: z.string().optional(),
1237
+ valuesYaml: z.string().optional(),
1238
+ valuesSchemaJson: z.string().optional()
932
1239
  });
933
1240
  export const zMarketplaceListing = z.object({
934
- id: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
935
1241
  name: z.string(),
936
- developer: z.string(),
937
- description: z.string(),
938
- logoUrl: z.string(),
939
- longDescription: z.string(),
940
- categories: z.array(z.string()),
1242
+ versions: z.array(z.string().regex(/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/)),
941
1243
  version_channels: z.array(z.string().regex(/^(x|X|0|[1-9]\d*)\.(x|X|0|[1-9]\d*)\.(x|X|0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/)),
942
- value_schemas: z.array(z.object({
943
- version: z.string().regex(/^(x|X|0|[1-9]\d*)\.(x|X|0|[1-9]\d*)\.(x|X|0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/),
944
- schema: z.string(),
945
- placeholder: z.string()
946
- }))
1244
+ latestVersion: z.string(),
1245
+ metadata: z.object({
1246
+ name: z.string(),
1247
+ version: z.string(),
1248
+ description: z.string().optional(),
1249
+ appVersion: z.string().optional(),
1250
+ apiVersion: z.string().optional(),
1251
+ keywords: z.array(z.string()).optional(),
1252
+ home: z.string().optional(),
1253
+ icon: z.string().optional(),
1254
+ sources: z.array(z.string()).optional(),
1255
+ maintainers: z.array(z.object({
1256
+ name: z.string(),
1257
+ email: z.string().optional()
1258
+ })).optional()
1259
+ }).optional()
947
1260
  });
948
1261
  export const zOrganizationCreateInput = z.object({
949
- email: z.string().email(),
950
- first_name: z.string(),
951
- last_name: z.string(),
1262
+ type: z.enum(['business', 'personal']),
1263
+ email: z.email(),
1264
+ first_name: z.string().min(1),
1265
+ last_name: z.string().min(1),
952
1266
  company_name: z.string().min(2).max(120).regex(/^(?!\s)(?!.*\s$)(?=.*[a-zA-ZÆÐƎƏƐƔIJŊŒẞÞǷȜæðǝəɛɣijŋœĸſßþƿȝĄƁÇĐƊĘĦĮƘŁØƠŞȘŢȚŦŲƯY̨Ƴąɓçđɗęħįƙłøơşșţțŧųưy̨ƴÁÀÂÄǍĂĀÃÅǺĄÆǼǢƁĆĊĈČÇĎḌĐƊÐÉÈĖÊËĚĔĒĘẸƎƏƐĠĜǦĞĢƔáàâäǎăāãåǻąæǽǣɓćċĉčçďḍđɗðéèėêëěĕēęẹǝəɛġĝǧğģɣĤḤĦIÍÌİÎÏǏĬĪĨĮỊIJĴĶƘĹĻŁĽĿʼNŃN̈ŇÑŅŊÓÒÔÖǑŎŌÕŐỌØǾƠŒĥḥħıíìiîïǐĭīĩįịijĵķƙĸĺļłľŀʼnńn̈ňñņŋóòôöǒŏōõőọøǿơœŔŘŖŚŜŠŞȘṢẞŤŢṬŦÞÚÙÛÜǓŬŪŨŰŮŲỤƯẂẀŴẄǷÝỲŶŸȲỸƳŹŻŽẒŕřŗſśŝšşșṣßťţṭŧþúùûüǔŭūũűůųụưẃẁŵẅƿýỳŷÿȳỹƴźżžẓ0-9])[a-zA-ZÆÐƎƏƐƔIJŊŒẞÞǷȜæðǝəɛɣijŋœĸſßþƿȝĄƁÇĐƊĘĦĮƘŁØƠŞȘŢȚŦŲƯY̨Ƴąɓçđɗęħįƙłøơşșţțŧųưy̨ƴÁÀÂÄǍĂĀÃÅǺĄÆǼǢƁĆĊĈČÇĎḌĐƊÐÉÈĖÊËĚĔĒĘẸƎƏƐĠĜǦĞĢƔáàâäǎăāãåǻąæǽǣɓćċĉčçďḍđɗðéèėêëěĕēęẹǝəɛġĝǧğģɣĤḤĦIÍÌİÎÏǏĬĪĨĮỊIJĴĶƘĹĻŁĽĿʼNŃN̈ŇÑŅŊÓÒÔÖǑŎŌÕŐỌØǾƠŒĥḥħıíìiîïǐĭīĩįịijĵķƙĸĺļłľŀʼnńn̈ňñņŋóòôöǒŏōõőọøǿơœŔŘŖŚŜŠŞȘṢẞŤŢṬŦÞÚÙÛÜǓŬŪŨŰŮŲỤƯẂẀŴẄǷÝỲŶŸȲỸƳŹŻŽẒŕřŗſśŝšşșṣßťţṭŧþúùûüǔŭūũűůųụưẃẁŵẅƿýỳŷÿȳỹƴźżžẓ0-9 -.]{2,}$/),
953
1267
  password: z.string().min(8)
954
1268
  });
1269
+ export const zOrganizationCreateOutput = z.object({
1270
+ id: z.string()
1271
+ });
955
1272
  export const zOrganization = z.object({
956
- id: z.string().uuid(),
1273
+ id: z.uuid(),
957
1274
  name: z.string().min(2).max(120).optional(),
958
- date_created: z.string().datetime(),
1275
+ type: z.enum(['business', 'personal']),
1276
+ date_created: z.iso.datetime(),
959
1277
  quota: z.object({
960
- basic_clusters_max: z.number().int().gte(0),
961
- basic_clusters_available: z.number().int(),
962
- pro_clusters_max: z.number().int().gte(0),
963
- pro_clusters_available: z.number().int(),
964
- fleets_max: z.number().int().gte(0),
965
- managed_fleets_cpu_max: z.number().int().gte(0),
1278
+ basic_clusters_max: z.int().gte(0),
1279
+ basic_clusters_available: z.int(),
1280
+ pro_clusters_max: z.int().gte(0),
1281
+ pro_clusters_available: z.int(),
1282
+ enterprise_clusters_max: z.int().gte(0),
1283
+ enterprise_clusters_available: z.int(),
1284
+ fleets_max: z.int().gte(0),
966
1285
  cluster_tiers: z.array(z.string()).min(0),
967
1286
  regions: z.array(z.string()).min(1),
968
1287
  versions: z.array(z.object({
969
1288
  id: z.string(),
970
1289
  label: z.string()
971
- })).min(1)
1290
+ })).min(1),
1291
+ cfcr_storage_gb: z.int().gte(-1)
972
1292
  }),
973
1293
  status: z.enum([
974
1294
  'active',
975
1295
  'closed',
976
1296
  'suspended'
1297
+ ]),
1298
+ verification: z.enum([
1299
+ 'none',
1300
+ 'submitted',
1301
+ 'verified'
977
1302
  ])
978
1303
  });
979
1304
  export const zPaymentMethod = z.object({
980
- id: z.string().uuid(),
981
- setup: z.boolean(),
1305
+ id: z.string(),
982
1306
  type: z.enum([
983
- 'card'
1307
+ 'card',
1308
+ 'sepa_debit',
1309
+ 'bank_transfer'
984
1310
  ]),
985
1311
  last4: z.string(),
986
- exp_month: z.number().int().gte(1).lte(12),
987
- exp_year: z.number().int().gte(2024),
988
- brand: z.enum([
989
- 'amex',
990
- 'diners',
991
- 'discover',
992
- 'eftpos_au',
993
- 'jcb',
994
- 'mastercard',
995
- 'unionpay',
996
- 'visa',
997
- 'unknown'
1312
+ exp_month: z.int().gte(1).lte(12),
1313
+ exp_year: z.int(),
1314
+ brand: z.string(),
1315
+ iban: z.string(),
1316
+ bic: z.string(),
1317
+ account_holder_name: z.string(),
1318
+ is_default: z.boolean()
1319
+ });
1320
+ export const zPlatformQuota = z.object({
1321
+ basic_clusters_max: z.int().gte(0),
1322
+ basic_clusters_available: z.int(),
1323
+ pro_clusters_max: z.int().gte(0),
1324
+ pro_clusters_available: z.int(),
1325
+ enterprise_clusters_max: z.int().gte(0),
1326
+ enterprise_clusters_available: z.int(),
1327
+ fleets_max: z.int().gte(0),
1328
+ cluster_tiers: z.array(z.string()).min(0),
1329
+ regions: z.array(z.string()).min(1),
1330
+ versions: z.array(z.object({
1331
+ id: z.string(),
1332
+ label: z.string()
1333
+ })).min(1),
1334
+ cfcr_storage_gb: z.int().gte(-1)
1335
+ });
1336
+ export const zRegistryRepository = z.object({
1337
+ name: z.string(),
1338
+ region: z.string(),
1339
+ uri: z.string()
1340
+ });
1341
+ export const zRegistryRepositoryWithTags = z.object({
1342
+ name: z.string(),
1343
+ region: z.string(),
1344
+ uri: z.string(),
1345
+ tags: z.array(z.object({
1346
+ name: z.string(),
1347
+ size: z.number(),
1348
+ mediaType: z.string().optional(),
1349
+ platforms: z.array(z.string()).optional()
1350
+ })),
1351
+ totalSize: z.number()
1352
+ });
1353
+ export const zRegistryTag = z.object({
1354
+ name: z.string(),
1355
+ digest: z.string(),
1356
+ mediaType: z.string().optional(),
1357
+ config: z.object({
1358
+ size: z.number()
1359
+ }).optional(),
1360
+ layers: z.array(z.object({
1361
+ digest: z.string().optional(),
1362
+ size: z.number()
1363
+ })).optional(),
1364
+ manifests: z.array(z.object({
1365
+ digest: z.string(),
1366
+ platform: z.object({
1367
+ architecture: z.string(),
1368
+ os: z.string(),
1369
+ variant: z.string().optional()
1370
+ }).optional(),
1371
+ layers: z.array(z.object({
1372
+ digest: z.string().optional(),
1373
+ size: z.number()
1374
+ })).optional(),
1375
+ size: z.number().optional()
1376
+ })).optional(),
1377
+ size: z.number(),
1378
+ region: z.string(),
1379
+ repository: z.string(),
1380
+ uri: z.string()
1381
+ });
1382
+ export const zRoadmapItemCreateInput = z.object({
1383
+ text: z.string().min(1).max(500)
1384
+ });
1385
+ export const zRoadmapItem = z.object({
1386
+ id: z.string(),
1387
+ text: z.string(),
1388
+ vote: z.union([
1389
+ z.literal(-1),
1390
+ z.literal(1),
1391
+ z.literal(2)
1392
+ ])
1393
+ });
1394
+ export const zRoadmapVoteInput = z.object({
1395
+ value: z.union([
1396
+ z.literal(-1),
1397
+ z.literal(1),
1398
+ z.literal(2)
998
1399
  ])
999
1400
  });
1401
+ export const zTicketAttachment = z.object({
1402
+ id: z.string(),
1403
+ filename: z.string(),
1404
+ content_type: z.string(),
1405
+ size: z.int()
1406
+ });
1407
+ export const zTicketCreateInput = z.object({
1408
+ category: z.enum([
1409
+ 'billing',
1410
+ 'technical',
1411
+ 'general'
1412
+ ]),
1413
+ body: z.string().min(1).max(50000).regex(/\S/),
1414
+ properties: z.record(z.string(), z.unknown()).optional(),
1415
+ grant_support_access: z.boolean().optional()
1416
+ });
1417
+ export const zTicketMessageInput = z.object({
1418
+ body: z.string().min(1).max(50000).regex(/\S/)
1419
+ });
1420
+ export const zTicketMessage = z.object({
1421
+ id: z.string(),
1422
+ type: z.enum(['customer_reply', 'agent_reply']),
1423
+ body: z.string(),
1424
+ author_first_name: z.string().optional(),
1425
+ author_last_name: z.string().optional(),
1426
+ attachments: z.array(z.object({
1427
+ id: z.string(),
1428
+ filename: z.string(),
1429
+ content_type: z.string(),
1430
+ size: z.int()
1431
+ })).optional(),
1432
+ date_created: z.iso.datetime()
1433
+ });
1434
+ export const zTicket = z.object({
1435
+ id: z.string(),
1436
+ status: z.enum([
1437
+ 'waiting_on_us',
1438
+ 'waiting_on_user',
1439
+ 'closed'
1440
+ ]),
1441
+ category: z.enum([
1442
+ 'billing',
1443
+ 'technical',
1444
+ 'general'
1445
+ ]),
1446
+ summary: z.string(),
1447
+ support_access_granted: z.boolean(),
1448
+ support_access_granted_at: z.iso.datetime(),
1449
+ closed_at: z.iso.datetime().optional(),
1450
+ date_created: z.iso.datetime(),
1451
+ date_updated: z.iso.datetime(),
1452
+ messages: z.array(z.object({
1453
+ id: z.string(),
1454
+ type: z.enum(['customer_reply', 'agent_reply']),
1455
+ body: z.string(),
1456
+ author_first_name: z.string().optional(),
1457
+ author_last_name: z.string().optional(),
1458
+ attachments: z.array(z.object({
1459
+ id: z.string(),
1460
+ filename: z.string(),
1461
+ content_type: z.string(),
1462
+ size: z.int()
1463
+ })).optional(),
1464
+ date_created: z.iso.datetime()
1465
+ })).optional()
1466
+ });
1000
1467
  export const zTokenCreateInput = z.object({
1001
1468
  name: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
1002
- role: z.enum([
1003
- 'Administrator',
1004
- 'User'
1005
- ])
1469
+ role: z.enum(['Administrator', 'User'])
1006
1470
  });
1007
1471
  export const zToken = z.object({
1008
1472
  name: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
1009
- role: z.enum([
1010
- 'Administrator',
1011
- 'User'
1012
- ]),
1473
+ role: z.enum(['Administrator', 'User']),
1013
1474
  id: z.string().optional(),
1014
1475
  secret: z.string().optional(),
1015
- date_created: z.string().datetime()
1476
+ date_created: z.iso.datetime()
1016
1477
  });
1017
1478
  export const zTokenUpdateInput = z.object({
1018
1479
  name: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/).optional(),
1019
- role: z.enum([
1020
- 'Administrator',
1021
- 'User'
1022
- ]).optional()
1480
+ role: z.enum(['Administrator', 'User']).optional()
1481
+ });
1482
+ export const zUsageFacets = z.object({
1483
+ cluster_id: z.array(z.string()).optional(),
1484
+ product: z.array(z.enum([
1485
+ 'cfke_controlplane_basic',
1486
+ 'cfke_controlplane_pro',
1487
+ 'cfke_controlplane_enterprise',
1488
+ 'cfke_connected_nodes_basic',
1489
+ 'cfke_connected_nodes_pro',
1490
+ 'cfke_connected_nodes_enterprise',
1491
+ 'cfcr_storage'
1492
+ ])).optional()
1493
+ });
1494
+ export const zUsageResponse = z.object({
1495
+ data: z.array(z.object({
1496
+ hour: z.string(),
1497
+ cluster_id: z.string(),
1498
+ product: z.enum([
1499
+ 'cfke_controlplane_basic',
1500
+ 'cfke_controlplane_pro',
1501
+ 'cfke_controlplane_enterprise',
1502
+ 'cfke_connected_nodes_basic',
1503
+ 'cfke_connected_nodes_pro',
1504
+ 'cfke_connected_nodes_enterprise',
1505
+ 'cfcr_storage'
1506
+ ]),
1507
+ value: z.number(),
1508
+ price: z.number(),
1509
+ total: z.number()
1510
+ })),
1511
+ facets: z.object({
1512
+ cluster_id: z.array(z.string()).optional(),
1513
+ product: z.array(z.enum([
1514
+ 'cfke_controlplane_basic',
1515
+ 'cfke_controlplane_pro',
1516
+ 'cfke_controlplane_enterprise',
1517
+ 'cfke_connected_nodes_basic',
1518
+ 'cfke_connected_nodes_pro',
1519
+ 'cfke_connected_nodes_enterprise',
1520
+ 'cfcr_storage'
1521
+ ])).optional()
1522
+ })
1023
1523
  });
1024
1524
  export const zUsage = z.object({
1025
- hour: z.string().optional(),
1026
- cluster_id: z.string().uuid(),
1027
- cluster_tier: z.enum([
1028
- 'basic',
1029
- 'pro',
1030
- ''
1031
- ]),
1525
+ hour: z.string(),
1526
+ cluster_id: z.string(),
1032
1527
  product: z.enum([
1033
- 'cfke_controlplane',
1034
- 'cfke_connected_nodes',
1035
- 'infra_compute',
1036
- 'infra_storage',
1037
- 'infra_loadbalancing',
1038
- 'infra_traffic',
1528
+ 'cfke_controlplane_basic',
1529
+ 'cfke_controlplane_pro',
1530
+ 'cfke_controlplane_enterprise',
1531
+ 'cfke_connected_nodes_basic',
1532
+ 'cfke_connected_nodes_pro',
1533
+ 'cfke_connected_nodes_enterprise',
1039
1534
  'cfcr_storage'
1040
1535
  ]),
1041
- node_name: z.string(),
1042
- sku: z.string(),
1043
- cpu: z.union([
1044
- z.number(),
1045
- z.enum([
1046
- ''
1047
- ])
1048
- ]),
1049
- price: z.union([
1050
- z.number(),
1051
- z.enum([
1052
- ''
1053
- ])
1054
- ]),
1055
- value: z.union([
1056
- z.number(),
1057
- z.enum([
1058
- ''
1059
- ])
1060
- ]),
1061
- total: z.union([
1062
- z.number(),
1063
- z.enum([
1064
- ''
1065
- ])
1066
- ])
1536
+ value: z.number(),
1537
+ price: z.number(),
1538
+ total: z.number()
1067
1539
  });
1068
1540
  export const zUserCreateInput = z.object({
1069
- email: z.string().email(),
1541
+ email: z.email(),
1070
1542
  first_name: z.string().min(1).max(50),
1071
1543
  last_name: z.string().min(1).max(50),
1072
1544
  code: z.string(),
1073
- password: z.string().min(8),
1074
- status: z.enum([
1075
- 'active',
1076
- 'inactive'
1077
- ]).optional(),
1078
- role: z.enum([
1079
- 'Administrator',
1080
- 'User'
1081
- ]).optional()
1545
+ password: z.string().min(8)
1082
1546
  });
1083
1547
  export const zUser = z.object({
1084
- email: z.string().email(),
1548
+ email: z.email(),
1085
1549
  first_name: z.string().min(1).max(50),
1086
1550
  last_name: z.string().min(1).max(50),
1087
- role: z.enum([
1088
- 'Administrator',
1089
- 'User'
1090
- ]),
1091
- status: z.enum([
1092
- 'active',
1093
- 'inactive'
1094
- ]),
1095
- id: z.string().uuid(),
1096
- date_created: z.string().datetime()
1551
+ role: z.enum(['Administrator', 'User']),
1552
+ status: z.enum(['active', 'inactive']),
1553
+ id: z.uuid(),
1554
+ date_created: z.iso.datetime()
1097
1555
  });
1098
1556
  export const zUserUpdateInput = z.object({
1099
- email: z.string().email().optional(),
1557
+ email: z.email().optional(),
1100
1558
  first_name: z.string().min(1).max(50).optional(),
1101
1559
  last_name: z.string().min(1).max(50).optional(),
1102
- role: z.enum([
1103
- 'Administrator',
1104
- 'User'
1560
+ role: z.enum(['Administrator', 'User']).optional(),
1561
+ status: z.enum(['active', 'inactive']).optional()
1562
+ });
1563
+ export const zListUserOrganizationsPath = z.object({
1564
+ email: z.string()
1565
+ });
1566
+ /**
1567
+ * An array of organizations the user belongs to.
1568
+ */
1569
+ export const zListUserOrganizationsResponse = z.array(z.object({
1570
+ realm: z.string().optional(),
1571
+ displayName: z.string().optional()
1572
+ }));
1573
+ /**
1574
+ * An array of users
1575
+ */
1576
+ export const zListUsersResponse = z.array(zUser);
1577
+ export const zCreateUserBody = zUserCreateInput;
1578
+ /**
1579
+ * Successfully created. Returns created user details.
1580
+ */
1581
+ export const zCreateUserResponse = zUser;
1582
+ export const zDeleteUserPath = z.object({
1583
+ user_id: z.string()
1584
+ });
1585
+ /**
1586
+ * User profile information
1587
+ */
1588
+ export const zDeleteUserResponse = zUser;
1589
+ export const zGetUserPath = z.object({
1590
+ user_id: z.string()
1591
+ });
1592
+ /**
1593
+ * User profile information
1594
+ */
1595
+ export const zGetUserResponse = zUser;
1596
+ export const zUpdateUserBody = zUserUpdateInput;
1597
+ export const zUpdateUserPath = z.object({
1598
+ user_id: z.string()
1599
+ });
1600
+ /**
1601
+ * Successfully created. Returns created user details.
1602
+ */
1603
+ export const zUpdateUserResponse = zUser;
1604
+ /**
1605
+ * Returns a list of access token details with masked secrets.
1606
+ */
1607
+ export const zListTokensResponse = z.array(zToken);
1608
+ export const zCreateTokenBody = zTokenCreateInput;
1609
+ /**
1610
+ * Successfully created. Returns created token details with unmasked/raw secret.
1611
+ */
1612
+ export const zCreateTokenResponse = zToken;
1613
+ export const zDeleteTokenPath = z.object({
1614
+ token_id: z.string()
1615
+ });
1616
+ export const zGetTokenPath = z.object({
1617
+ token_id: z.string()
1618
+ });
1619
+ /**
1620
+ * Returns access token details with masked secret.
1621
+ */
1622
+ export const zGetTokenResponse = zToken;
1623
+ export const zUpdateTokenBody = zTokenUpdateInput;
1624
+ export const zUpdateTokenPath = z.object({
1625
+ token_id: z.string()
1626
+ });
1627
+ /**
1628
+ * Successfully updated. Returns updated token details with masked secret.
1629
+ */
1630
+ export const zUpdateTokenResponse = zToken;
1631
+ export const zRegenerateTokenPath = z.object({
1632
+ token_id: z.string()
1633
+ });
1634
+ /**
1635
+ * Successfully updated. Returns updated token details with unmasked / raw secret.
1636
+ */
1637
+ export const zRegenerateTokenResponse = zToken;
1638
+ /**
1639
+ * An array of tickets for the organization, newest first.
1640
+ */
1641
+ export const zListTicketsResponse = z.array(zTicket);
1642
+ export const zCreateTicketBody = z.object({
1643
+ payload: z.string().optional(),
1644
+ attachments: z.array(z.string()).optional()
1645
+ });
1646
+ /**
1647
+ * Ticket created.
1648
+ */
1649
+ export const zCreateTicketResponse = zTicket;
1650
+ export const zCloseTicketPath = z.object({
1651
+ ticket_id: z.string()
1652
+ });
1653
+ /**
1654
+ * Ticket closed.
1655
+ */
1656
+ export const zCloseTicketResponse = zTicket;
1657
+ export const zGetTicketPath = z.object({
1658
+ ticket_id: z.string()
1659
+ });
1660
+ /**
1661
+ * Ticket with messages (internal notes excluded).
1662
+ */
1663
+ export const zGetTicketResponse = zTicket;
1664
+ export const zGrantTicketSupportAccessPath = z.object({
1665
+ ticket_id: z.string()
1666
+ });
1667
+ /**
1668
+ * Support access granted.
1669
+ */
1670
+ export const zGrantTicketSupportAccessResponse = zTicket;
1671
+ export const zReplyTicketBody = z.object({
1672
+ payload: z.string().optional(),
1673
+ attachments: z.array(z.string()).optional()
1674
+ });
1675
+ export const zReplyTicketPath = z.object({
1676
+ ticket_id: z.string()
1677
+ });
1678
+ /**
1679
+ * Reply appended.
1680
+ */
1681
+ export const zReplyTicketResponse = zTicketMessage;
1682
+ export const zGetTicketAttachmentPath = z.object({
1683
+ ticket_id: z.string(),
1684
+ attachment_id: z.string()
1685
+ });
1686
+ /**
1687
+ * Attachment binary stream.
1688
+ */
1689
+ export const zGetTicketAttachmentResponse = z.string();
1690
+ /**
1691
+ * An array of roadmap items, newest first.
1692
+ */
1693
+ export const zListRoadmapResponse = z.array(zRoadmapItem);
1694
+ export const zSuggestRoadmapBody = zRoadmapItemCreateInput;
1695
+ /**
1696
+ * Suggestion submitted for review.
1697
+ */
1698
+ export const zSuggestRoadmapResponse = zRoadmapItem;
1699
+ export const zUnvoteRoadmapPath = z.object({
1700
+ item_id: z.string()
1701
+ });
1702
+ /**
1703
+ * Vote removed. Returns the item without a vote.
1704
+ */
1705
+ export const zUnvoteRoadmapResponse = zRoadmapItem;
1706
+ export const zVoteRoadmapBody = zRoadmapVoteInput;
1707
+ export const zVoteRoadmapPath = z.object({
1708
+ item_id: z.string()
1709
+ });
1710
+ /**
1711
+ * Vote saved. Returns the item with your vote.
1712
+ */
1713
+ export const zVoteRoadmapResponse = zRoadmapItem;
1714
+ /**
1715
+ * List of repositories
1716
+ */
1717
+ export const zListRepositoriesResponse = z.array(zRegistryRepository);
1718
+ export const zListTagsPath = z.object({
1719
+ region: z.string(),
1720
+ repository: z.string()
1721
+ });
1722
+ /**
1723
+ * Repository with tags
1724
+ */
1725
+ export const zListTagsResponse = zRegistryRepositoryWithTags;
1726
+ export const zDeleteTagPath = z.object({
1727
+ region: z.string(),
1728
+ repository: z.string(),
1729
+ tag: z.string()
1730
+ });
1731
+ export const zGetTagPath = z.object({
1732
+ region: z.string(),
1733
+ repository: z.string(),
1734
+ tag: z.string()
1735
+ });
1736
+ /**
1737
+ * Tag details
1738
+ */
1739
+ export const zGetTagResponse = zRegistryTag;
1740
+ /**
1741
+ * Returns a single object containing organization details.
1742
+ */
1743
+ export const zGetOrganizationResponse = zOrganization;
1744
+ export const zCreateOrganizationBody = zOrganizationCreateInput;
1745
+ /**
1746
+ * Organization signup accepted. Returns the generated organization id immediately; provisioning (billing, Keycloak realm, user) continues asynchronously in the background.
1747
+ *
1748
+ */
1749
+ export const zCreateOrganizationResponse = zOrganizationCreateOutput;
1750
+ /**
1751
+ * JSON-RPC 2.0 request payload
1752
+ */
1753
+ export const zPostMcpBody = z.object({
1754
+ jsonrpc: z.string().optional(),
1755
+ method: z.string().optional(),
1756
+ id: z.union([
1757
+ z.string(),
1758
+ z.number()
1105
1759
  ]).optional(),
1106
- status: z.enum([
1107
- 'active',
1108
- 'inactive'
1109
- ]).optional()
1760
+ params: z.record(z.string(), z.unknown()).optional()
1110
1761
  });
1111
- export const zGetUsageResponse = z.array(zUsage);
1112
- export const zGetBalanceResponse = z.number();
1113
- export const zGetPaymentMethodResponse = zPaymentMethod;
1114
- export const zGetPaymentMethodSecretResponse = z.object({
1115
- id: z.string().optional()
1762
+ /**
1763
+ * JSON-RPC 2.0 success or error response
1764
+ */
1765
+ export const zPostMcpResponse = z.object({
1766
+ jsonrpc: z.string().optional(),
1767
+ id: z.union([
1768
+ z.string(),
1769
+ z.number()
1770
+ ]).optional(),
1771
+ result: z.record(z.string(), z.unknown()).optional(),
1772
+ error: z.object({
1773
+ code: z.int().optional(),
1774
+ message: z.string().optional()
1775
+ }).optional()
1116
1776
  });
1117
- export const zListInvoicesResponse = z.array(zInvoice);
1118
- export const zGetInvoiceResponse = z.object({
1119
- html: z.string().optional()
1777
+ /**
1778
+ * An array of chart listings in the marketplace.
1779
+ */
1780
+ export const zListMarketplaceChartsResponse = z.array(zMarketplaceListing);
1781
+ export const zGetMarketplaceChartFilesPath = z.object({
1782
+ chart_name: z.string(),
1783
+ version_channel: z.string()
1120
1784
  });
1121
- export const zGetContactResponse = zBillingContact;
1122
- export const zUpdateContactResponse = zBillingContact;
1123
- export const zGetCreditsResponse = z.array(zBillingCredits);
1124
- export const zListChartsResponse = z.array(zChart);
1125
- export const zCreateChartResponse = z.string();
1126
- export const zDeleteChartResponse = z.string();
1127
- export const zGetChartResponse = zChart;
1128
- export const zUpdateChartResponse = z.string();
1785
+ /**
1786
+ * Returns an object containing the chart files for the latest matching version.
1787
+ */
1788
+ export const zGetMarketplaceChartFilesResponse = zMarketplaceListingFiles;
1789
+ /**
1790
+ * An array of invites
1791
+ */
1792
+ export const zListInvitesResponse = z.array(zInvite);
1793
+ export const zCreateInviteBody = zInviteCreateInput;
1794
+ /**
1795
+ * Successfully created. Returns created invite details.
1796
+ */
1797
+ export const zCreateInviteResponse = zInvite;
1798
+ export const zGetInvitePath = z.object({
1799
+ code: z.string()
1800
+ });
1801
+ /**
1802
+ * The invitation code is valid. Returns the invited email and organization.
1803
+ */
1804
+ export const zGetInviteResponse = z.object({
1805
+ email: z.email().optional(),
1806
+ organization_id: z.string().optional()
1807
+ });
1808
+ export const zDeleteInvitePath = z.object({
1809
+ email: z.email()
1810
+ });
1811
+ export const zSendFeedbackBody = zFeedbackCreateInput;
1812
+ /**
1813
+ * Feedback received.
1814
+ */
1815
+ export const zSendFeedbackResponse = zFeedback;
1816
+ export const zQueryClusterPath = z.object({
1817
+ cluster_id: z.string()
1818
+ });
1819
+ export const zListFleetsPath = z.object({
1820
+ cluster_id: z.string()
1821
+ });
1822
+ /**
1823
+ * An array of fleets
1824
+ */
1129
1825
  export const zListFleetsResponse = z.array(zFleet);
1826
+ export const zCreateFleetBody = zFleetCreateInput;
1827
+ export const zCreateFleetPath = z.object({
1828
+ cluster_id: z.string()
1829
+ });
1830
+ /**
1831
+ * Successfully created. Returns created Fleet ID.
1832
+ */
1130
1833
  export const zCreateFleetResponse = z.string();
1834
+ export const zDeleteFleetPath = z.object({
1835
+ cluster_id: z.string(),
1836
+ fleet_name: z.string()
1837
+ });
1838
+ /**
1839
+ * Successfully deleted.
1840
+ */
1131
1841
  export const zDeleteFleetResponse = z.string();
1842
+ export const zGetFleetPath = z.object({
1843
+ cluster_id: z.string(),
1844
+ fleet_name: z.string()
1845
+ });
1846
+ /**
1847
+ * Returns a single object containing fleet details.
1848
+ */
1132
1849
  export const zGetFleetResponse = zFleet;
1850
+ export const zUpdateFleetBody = zFleetUpdateInput;
1851
+ export const zUpdateFleetPath = z.object({
1852
+ cluster_id: z.string(),
1853
+ fleet_name: z.string()
1854
+ });
1855
+ /**
1856
+ * Successfully updated.
1857
+ */
1133
1858
  export const zUpdateFleetResponse = z.string();
1859
+ export const zListChartsPath = z.object({
1860
+ cluster_id: z.string()
1861
+ });
1862
+ /**
1863
+ * An array of charts
1864
+ */
1865
+ export const zListChartsResponse = z.array(zChart);
1866
+ export const zCreateChartBody = zChartCreateInput;
1867
+ export const zCreateChartPath = z.object({
1868
+ cluster_id: z.string()
1869
+ });
1870
+ /**
1871
+ * Successfully created. Returns created Chart ID.
1872
+ */
1873
+ export const zCreateChartResponse = z.string();
1874
+ export const zDeleteChartPath = z.object({
1875
+ cluster_id: z.string(),
1876
+ chart_name: z.string()
1877
+ });
1878
+ /**
1879
+ * Successfully deleted.
1880
+ */
1881
+ export const zDeleteChartResponse = z.string();
1882
+ export const zGetChartPath = z.object({
1883
+ cluster_id: z.string(),
1884
+ chart_name: z.string()
1885
+ });
1886
+ /**
1887
+ * Returns a single object containing chart details.
1888
+ */
1889
+ export const zGetChartResponse = zChart;
1890
+ export const zUpdateChartBody = zChartUpdateInput;
1891
+ export const zUpdateChartPath = z.object({
1892
+ cluster_id: z.string(),
1893
+ chart_name: z.string()
1894
+ });
1895
+ /**
1896
+ * Successfully updated.
1897
+ */
1898
+ export const zUpdateChartResponse = z.string();
1899
+ /**
1900
+ * An array of clusters
1901
+ */
1134
1902
  export const zListClustersResponse = z.array(zCluster);
1903
+ export const zCreateClusterBody = zClusterCreateInput;
1904
+ /**
1905
+ * Successfully created. Returns created Cluster ID.
1906
+ */
1135
1907
  export const zCreateClusterResponse = z.string();
1908
+ export const zDeleteClusterPath = z.object({
1909
+ cluster_id: z.string()
1910
+ });
1911
+ /**
1912
+ * Successfully deleted. The cluster has been torn down.
1913
+ */
1136
1914
  export const zDeleteClusterResponse = z.string();
1915
+ export const zGetClusterPath = z.object({
1916
+ cluster_id: z.string()
1917
+ });
1918
+ /**
1919
+ * Returns a single object containing cluster details.
1920
+ */
1137
1921
  export const zGetClusterResponse = zCluster;
1922
+ export const zUpdateClusterBody = zClusterUpdateInput;
1923
+ export const zUpdateClusterPath = z.object({
1924
+ cluster_id: z.string()
1925
+ });
1926
+ /**
1927
+ * Successfully updated. Returns updated cluster details.
1928
+ */
1138
1929
  export const zUpdateClusterResponse = zCluster;
1139
- export const zGetJoinInformationResponse = zCluster;
1140
- export const zListInvitesResponse = z.array(zInvite);
1141
- export const zCreateInviteResponse = zInvite;
1142
- export const zGetInviteResponse = zInvite;
1143
- export const zListMarketplaceChartsResponse = z.array(zMarketplaceListing);
1144
- export const zGetMarketplaceChartResponse = zMarketplaceListing;
1145
- export const zGetOrganizationResponse = zOrganization;
1146
- export const zListTokensResponse = z.array(zToken);
1147
- export const zCreateTokenResponse = zToken;
1148
- export const zGetTokenResponse = zToken;
1149
- export const zUpdateTokenResponse = zToken;
1150
- export const zRegenerateTokenResponse = zToken;
1151
- export const zListUserOrganizationsResponse = z.array(z.object({
1152
- realm: z.string().optional(),
1153
- displayName: z.string().optional()
1154
- }));
1155
- export const zListUsersResponse = z.array(zUser);
1156
- export const zCreateUserResponse = zUser;
1157
- export const zDeleteUserResponse = zUser;
1158
- export const zGetUserResponse = zUser;
1159
- export const zUpdateUserResponse = zUser;
1930
+ export const zGetJoinInformationPath = z.object({
1931
+ cluster_id: z.string()
1932
+ });
1933
+ /**
1934
+ * An object of cluster join information
1935
+ */
1936
+ export const zGetJoinInformationResponse = zClusterJoinInformation;
1937
+ export const zGetUsageQuery = z.object({
1938
+ granularity: z.enum([
1939
+ 'hourly',
1940
+ 'daily',
1941
+ 'monthly'
1942
+ ]).optional().default('daily')
1943
+ });
1944
+ /**
1945
+ * Usage data with facets for filtering
1946
+ */
1947
+ export const zGetUsageResponse = zUsageResponse;
1948
+ /**
1949
+ * The client secret. Used for client-side retrieval using a publishable key. The client secret can be used to complete a payment from your frontend. It should not be stored, logged, or exposed to anyone other than the customer. Make sure that you have TLS enabled on any page that includes the client secret.
1950
+ *
1951
+ */
1952
+ export const zGetPaymentMethodSecretResponse = z.object({
1953
+ id: z.string().optional()
1954
+ });
1955
+ /**
1956
+ * An array of payment methods.
1957
+ */
1958
+ export const zListPaymentMethodsResponse = z.array(zPaymentMethod);
1959
+ export const zSetDefaultPaymentMethodPath = z.object({
1960
+ paymentMethodId: z.string()
1961
+ });
1962
+ /**
1963
+ * Default payment method updated.
1964
+ */
1965
+ export const zSetDefaultPaymentMethodResponse = z.void();
1966
+ export const zDeletePaymentMethodPath = z.object({
1967
+ paymentMethodId: z.string()
1968
+ });
1969
+ /**
1970
+ * Payment method deleted.
1971
+ */
1972
+ export const zDeletePaymentMethodResponse = z.void();
1973
+ /**
1974
+ * An array of usage records.
1975
+ */
1976
+ export const zListInvoicesResponse = z.array(zInvoice);
1977
+ /**
1978
+ * The outcome of the attempt.
1979
+ */
1980
+ export const zPayOpenInvoicesResponse = zInvoicePaymentResult;
1981
+ /**
1982
+ * Returns a single object containing organization contact and billing address details.
1983
+ */
1984
+ export const zGetContactResponse = zBillingContact;
1985
+ export const zUpdateContactBody = zBillingContact;
1986
+ /**
1987
+ * Successfully updated. Returns updated organization details.
1988
+ */
1989
+ export const zUpdateContactResponse = zBillingContact;
1990
+ /**
1991
+ * An array of the applied promotional credits records.
1992
+ */
1993
+ export const zGetCreditsResponse = z.array(zBillingCredits);
1994
+ export const zRedeemCreditsBody = z.object({
1995
+ code: z.string().optional()
1996
+ });
1160
1997
  //# sourceMappingURL=zod.gen.js.map