@cloudfleet/sdk 0.0.1-19f2280 → 0.0.1-1a688b5

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 (94) hide show
  1. package/README.md +26 -2
  2. package/dist/@tanstack/react-query.gen.d.ts +1149 -0
  3. package/dist/@tanstack/react-query.gen.d.ts.map +1 -0
  4. package/dist/@tanstack/react-query.gen.js +1165 -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 +8 -7
  11. package/dist/client/index.d.ts.map +1 -1
  12. package/dist/client/index.js +6 -4
  13. package/dist/client/index.js.map +1 -1
  14. package/dist/client/{types.d.ts → types.gen.d.ts} +23 -22
  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.d.ts → utils.gen.d.ts} +17 -25
  19. package/dist/client/utils.gen.d.ts.map +1 -0
  20. package/dist/client/{utils.js → utils.gen.js} +66 -122
  21. package/dist/client/utils.gen.js.map +1 -0
  22. package/dist/client.gen.d.ts +3 -3
  23. package/dist/client.gen.d.ts.map +1 -1
  24. package/dist/client.gen.js +1 -3
  25. package/dist/client.gen.js.map +1 -1
  26. package/dist/core/{auth.d.ts → auth.gen.d.ts} +1 -1
  27. package/dist/core/auth.gen.d.ts.map +1 -0
  28. package/dist/core/{auth.js → auth.gen.js} +2 -1
  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.js → bodySerializer.gen.js} +6 -2
  33. package/dist/core/bodySerializer.gen.js.map +1 -0
  34. package/dist/core/{params.d.ts → params.gen.d.ts} +21 -1
  35. package/dist/core/params.gen.d.ts.map +1 -0
  36. package/dist/core/{params.js → params.gen.js} +24 -11
  37. package/dist/core/params.gen.js.map +1 -0
  38. package/dist/core/{pathSerializer.d.ts → pathSerializer.gen.d.ts} +1 -1
  39. package/dist/core/pathSerializer.gen.d.ts.map +1 -0
  40. package/dist/core/{pathSerializer.js → pathSerializer.gen.js} +5 -12
  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.d.ts → types.gen.d.ts} +21 -16
  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 +1585 -570
  59. package/dist/schemas.gen.d.ts.map +1 -1
  60. package/dist/schemas.gen.js +3000 -711
  61. package/dist/schemas.gen.js.map +1 -1
  62. package/dist/sdk.gen.d.ts +286 -164
  63. package/dist/sdk.gen.d.ts.map +1 -1
  64. package/dist/sdk.gen.js +406 -337
  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 +1797 -793
  68. package/dist/types.gen.d.ts.map +1 -1
  69. package/dist/zod.gen.d.ts +3800 -3733
  70. package/dist/zod.gen.d.ts.map +1 -1
  71. package/dist/zod.gen.js +1402 -1163
  72. package/dist/zod.gen.js.map +1 -1
  73. package/package.json +28 -8
  74. package/dist/client/client.d.ts +0 -3
  75. package/dist/client/client.d.ts.map +0 -1
  76. package/dist/client/client.js +0 -144
  77. package/dist/client/client.js.map +0 -1
  78. package/dist/client/types.d.ts.map +0 -1
  79. package/dist/client/types.js +0 -2
  80. package/dist/client/types.js.map +0 -1
  81. package/dist/client/utils.d.ts.map +0 -1
  82. package/dist/client/utils.js.map +0 -1
  83. package/dist/core/auth.d.ts.map +0 -1
  84. package/dist/core/auth.js.map +0 -1
  85. package/dist/core/bodySerializer.d.ts +0 -18
  86. package/dist/core/bodySerializer.d.ts.map +0 -1
  87. package/dist/core/bodySerializer.js.map +0 -1
  88. package/dist/core/params.d.ts.map +0 -1
  89. package/dist/core/params.js.map +0 -1
  90. package/dist/core/pathSerializer.d.ts.map +0 -1
  91. package/dist/core/pathSerializer.js.map +0 -1
  92. package/dist/core/types.d.ts.map +0 -1
  93. package/dist/core/types.js +0 -2
  94. package/dist/core/types.js.map +0 -1
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',
@@ -146,16 +146,12 @@ export const zBillingContact = z.object({
146
146
  });
147
147
  export const zBillingCredits = z.object({
148
148
  id: z.string().optional(),
149
- date_created: z.string().datetime(),
149
+ type: z.enum(['credit', 'discount']),
150
+ date_start: z.iso.datetime(),
151
+ date_end: z.iso.datetime().optional(),
150
152
  code: z.string(),
151
153
  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(),
154
+ value_total: z.number(),
159
155
  value_remaining: z.number().optional()
160
156
  });
161
157
  export const zChartCreateInput = z.object({
@@ -171,22 +167,7 @@ export const zChart = z.object({
171
167
  name: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
172
168
  namespace: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
173
169
  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
- ]),
170
+ status: z.string(),
190
171
  version_current: z.string(),
191
172
  created_at: z.string(),
192
173
  updated_at: z.string(),
@@ -196,28 +177,58 @@ export const zChartUpdateInput = z.object({
196
177
  values: z.string(),
197
178
  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
179
  });
180
+ /**
181
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
182
+ */
199
183
  export const zClusterCreateInput = z.object({
200
184
  name: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
201
- tier: z.enum([
202
- 'basic',
203
- 'pro'
204
- ]),
205
- region: z.enum([
206
- 'staging',
207
- 'northamerica-central-1',
208
- 'europe-central-1a'
209
- ]).optional(),
210
- 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')
185
+ tier: z.enum(['basic', 'pro']).optional().default('basic'),
186
+ 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'),
187
+ release_channel: z.enum([
188
+ 'rapid',
189
+ 'stable',
190
+ 'extended'
191
+ ]).optional().default('rapid'),
192
+ features: z.object({
193
+ gpu_sharing_strategy: z.enum([
194
+ 'none',
195
+ 'mps',
196
+ 'time_slicing'
197
+ ]).optional().default('none'),
198
+ gpu_max_shared_clients_per_gpu: z.int().gte(2).lte(48).optional().default(4),
199
+ cilium_socket_lb_host_namespace_only: z.boolean().optional()
200
+ }).optional().default({
201
+ gpu_sharing_strategy: 'none',
202
+ gpu_max_shared_clients_per_gpu: 4,
203
+ cilium_socket_lb_host_namespace_only: false
204
+ }),
205
+ region: z.string(),
206
+ networking: z.object({
207
+ pod_cidr: z.string().optional().default('10.244.0.0/16'),
208
+ service_cidr: z.string().optional().default('10.96.0.0/12'),
209
+ dual_stack: z.boolean().optional(),
210
+ pod_cidr_v6: z.string().optional().default('2001:db8:1:2::/48'),
211
+ service_cidr_v6: z.string().optional().default('2001:db8:1:1::/112')
212
+ }).optional().default({
213
+ pod_cidr: '10.244.0.0/16',
214
+ service_cidr: '10.96.0.0/12',
215
+ dual_stack: false,
216
+ pod_cidr_v6: '2001:db8:1:2::/48',
217
+ service_cidr_v6: '2001:db8:1:1::/112'
218
+ })
211
219
  });
212
220
  export const zClusterJoinInformation = z.object({
213
221
  certificate_authority: z.string(),
214
- endpoint: z.string().url(),
222
+ endpoint: z.url(),
223
+ cluster_dns: z.string(),
224
+ pod_cidr: z.string(),
215
225
  auth_key: z.string(),
216
226
  bootstrap_token: z.string(),
217
227
  versions: z.object({
218
228
  kubernetes: z.string(),
219
229
  tailscale: z.string(),
220
- containerd: z.string()
230
+ containerd: z.string(),
231
+ nvidia_driver: z.string()
221
232
  }),
222
233
  third_party_api_access_config: z.object({
223
234
  metadata_url: z.string(),
@@ -225,1356 +236,1584 @@ export const zClusterJoinInformation = z.object({
225
236
  gcp_workload_identity_provider: z.string()
226
237
  })
227
238
  });
239
+ /**
240
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
241
+ */
228
242
  export const zCluster = z.object({
229
243
  name: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
230
- tier: z.enum([
231
- 'basic',
232
- 'pro'
233
- ]),
234
- region: z.enum([
235
- 'staging',
236
- 'northamerica-central-1',
237
- 'europe-central-1a'
238
- ]).optional(),
239
- 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'),
240
- id: z.string().uuid(),
244
+ tier: z.enum(['basic', 'pro']).default('basic'),
245
+ 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'),
246
+ release_channel: z.enum([
247
+ 'rapid',
248
+ 'stable',
249
+ 'extended'
250
+ ]).default('rapid'),
251
+ features: z.object({
252
+ gpu_sharing_strategy: z.enum([
253
+ 'none',
254
+ 'mps',
255
+ 'time_slicing'
256
+ ]).default('none'),
257
+ gpu_max_shared_clients_per_gpu: z.int().gte(2).lte(48).default(4),
258
+ cilium_socket_lb_host_namespace_only: z.boolean()
259
+ }).default({
260
+ gpu_sharing_strategy: 'none',
261
+ gpu_max_shared_clients_per_gpu: 4,
262
+ cilium_socket_lb_host_namespace_only: false
263
+ }),
264
+ region: z.string(),
265
+ networking: z.object({
266
+ pod_cidr: z.string().default('10.244.0.0/16'),
267
+ service_cidr: z.string().default('10.96.0.0/12'),
268
+ dual_stack: z.boolean(),
269
+ pod_cidr_v6: z.string().default('2001:db8:1:2::/48'),
270
+ service_cidr_v6: z.string().default('2001:db8:1:1::/112')
271
+ }).default({
272
+ pod_cidr: '10.244.0.0/16',
273
+ service_cidr: '10.96.0.0/12',
274
+ dual_stack: false,
275
+ pod_cidr_v6: '2001:db8:1:2::/48',
276
+ service_cidr_v6: '2001:db8:1:1::/112'
277
+ }),
278
+ id: z.uuid(),
241
279
  status: z.enum([
242
- 'active',
243
- 'deleted',
244
280
  'creating',
245
281
  'deployed',
246
- 'failed',
247
- 'updating'
282
+ 'updating',
283
+ 'disabled'
248
284
  ]),
249
285
  endpoint: z.union([
250
- z.string().url(),
251
- z.enum([
252
- ''
253
- ])
286
+ z.url(),
287
+ z.enum([''])
288
+ ]).optional(),
289
+ endpoint_public: z.union([
290
+ z.url(),
291
+ z.enum([''])
254
292
  ]).optional(),
255
293
  certificate_ca: z.string().optional(),
256
294
  version_current: z.string().optional(),
257
295
  created_at: z.string().optional(),
258
296
  updated_at: z.string().optional(),
259
- ready: z.boolean().optional()
297
+ ready: z.boolean()
260
298
  });
299
+ /**
300
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
301
+ */
261
302
  export const zClusterUpdateInput = z.object({
262
- name: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/).optional(),
263
- tier: z.enum([
264
- 'basic',
265
- 'pro'
266
- ]),
267
- 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()
303
+ name: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
304
+ tier: z.enum(['basic', 'pro']).optional().default('basic'),
305
+ 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'),
306
+ release_channel: z.enum([
307
+ 'rapid',
308
+ 'stable',
309
+ 'extended'
310
+ ]).optional().default('rapid'),
311
+ features: z.object({
312
+ gpu_sharing_strategy: z.enum([
313
+ 'none',
314
+ 'mps',
315
+ 'time_slicing'
316
+ ]).optional().default('none'),
317
+ gpu_max_shared_clients_per_gpu: z.int().gte(2).lte(48).optional().default(4),
318
+ cilium_socket_lb_host_namespace_only: z.boolean().optional()
319
+ }).optional().default({
320
+ gpu_sharing_strategy: 'none',
321
+ gpu_max_shared_clients_per_gpu: 4,
322
+ cilium_socket_lb_host_namespace_only: false
323
+ })
268
324
  });
325
+ /**
326
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
327
+ */
269
328
  export const zFleetCreateInput = z.object({
270
329
  limits: z.object({
271
- cpu: z.number().gte(0)
330
+ cpu: z.int().gte(0).lte(100000).optional()
272
331
  }).optional(),
273
332
  gcp: z.object({
274
- enabled: z.boolean().optional().default(true),
275
- project: z.string()
333
+ enabled: z.boolean(),
334
+ project: z.string().regex(/^[a-z][a-z0-9-]{4,28}[a-z0-9]$/).optional()
276
335
  }).optional(),
277
336
  hetzner: z.object({
278
- enabled: z.boolean().optional().default(true),
279
- apiKey: z.string()
337
+ enabled: z.boolean(),
338
+ apiKey: z.string().length(64).regex(/^[A-Za-z0-9]+$/).optional()
280
339
  }).optional(),
281
340
  aws: z.object({
282
- enabled: z.boolean().optional().default(true),
283
- controllerRoleArn: z.string()
341
+ enabled: z.boolean(),
342
+ controllerRoleArn: z.string().regex(/^arn:aws(-[a-z]+)*:iam::\d{12}:role\/[\w+=,.@\/-]+$/).optional()
284
343
  }).optional(),
344
+ constraints: z.object({
345
+ 'karpenter.sh/capacity-type': z.array(z.enum(['on-demand', 'spot'])).min(1).optional().default(['on-demand', 'spot']),
346
+ 'kubernetes.io/arch': z.array(z.enum(['amd64', 'arm64'])).min(1).optional().default(['amd64']),
347
+ 'cfke.io/instance-family': z.array(z.enum([
348
+ 'a1',
349
+ 'a2',
350
+ 'a3',
351
+ 'a4',
352
+ 'c1',
353
+ 'c2',
354
+ 'c2d',
355
+ 'c3',
356
+ 'c3d',
357
+ 'c4',
358
+ 'c4a',
359
+ 'c4d',
360
+ 'c5',
361
+ 'c5a',
362
+ 'c5ad',
363
+ 'c5d',
364
+ 'c5n',
365
+ 'c6a',
366
+ 'c6g',
367
+ 'c6gd',
368
+ 'c6gn',
369
+ 'c6i',
370
+ 'c6id',
371
+ 'c6in',
372
+ 'c7a',
373
+ 'c7g',
374
+ 'c7gd',
375
+ 'c7gn',
376
+ 'c7i',
377
+ 'c7i-flex',
378
+ 'c8g',
379
+ 'c8gd',
380
+ 'cax',
381
+ 'ccx',
382
+ 'cpx',
383
+ 'cx',
384
+ 'd2',
385
+ 'd3',
386
+ 'd3en',
387
+ 'dl1',
388
+ 'dl2q',
389
+ 'e2',
390
+ 'f1',
391
+ 'f2',
392
+ 'g1',
393
+ 'g2',
394
+ 'g4ad',
395
+ 'g4dn',
396
+ 'g5',
397
+ 'g5g',
398
+ 'g6',
399
+ 'g6e',
400
+ 'gr6',
401
+ 'h1',
402
+ 'h3',
403
+ 'hpc6a',
404
+ 'hpc6id',
405
+ 'hpc7a',
406
+ 'hpc7g',
407
+ 'i2',
408
+ 'i3',
409
+ 'i3en',
410
+ 'i4g',
411
+ 'i4i',
412
+ 'i7i',
413
+ 'i7ie',
414
+ 'i8g',
415
+ 'im4gn',
416
+ 'inf1',
417
+ 'inf2',
418
+ 'is4gen',
419
+ 'm1',
420
+ 'm2',
421
+ 'm3',
422
+ 'm4',
423
+ 'm5',
424
+ 'm5a',
425
+ 'm5ad',
426
+ 'm5d',
427
+ 'm5dn',
428
+ 'm5n',
429
+ 'm5zn',
430
+ 'm6a',
431
+ 'm6g',
432
+ 'm6gd',
433
+ 'm6i',
434
+ 'm6id',
435
+ 'm6idn',
436
+ 'm6in',
437
+ 'm7a',
438
+ 'm7g',
439
+ 'm7gd',
440
+ 'm7i',
441
+ 'm7i-flex',
442
+ 'm8g',
443
+ 'm8gd',
444
+ 'n1',
445
+ 'n2',
446
+ 'n2d',
447
+ 'n4',
448
+ 'p3',
449
+ 'p3dn',
450
+ 'p4d',
451
+ 'p4de',
452
+ 'p5',
453
+ 'p5e',
454
+ 'p5en',
455
+ 'p6-b200',
456
+ 'r3',
457
+ 'r4',
458
+ 'r5',
459
+ 'r5a',
460
+ 'r5ad',
461
+ 'r5b',
462
+ 'r5d',
463
+ 'r5dn',
464
+ 'r5n',
465
+ 'r6a',
466
+ 'r6g',
467
+ 'r6gd',
468
+ 'r6i',
469
+ 'r6id',
470
+ 'r6idn',
471
+ 'r6in',
472
+ 'r7a',
473
+ 'r7g',
474
+ 'r7gd',
475
+ 'r7i',
476
+ 'r7iz',
477
+ 'r8g',
478
+ 'r8gd',
479
+ 't2',
480
+ 't2a',
481
+ 't2d',
482
+ 't3',
483
+ 't3a',
484
+ 't4g',
485
+ 'trn1',
486
+ 'trn1n',
487
+ 'u-3tb1',
488
+ 'u-6tb1',
489
+ 'u7i-12tb',
490
+ 'u7i-6tb',
491
+ 'u7i-8tb',
492
+ 'u7in-16tb',
493
+ 'u7in-24tb',
494
+ 'u7in-32tb',
495
+ 'vt1',
496
+ 'x1',
497
+ 'x1e',
498
+ 'x2gd',
499
+ 'x2idn',
500
+ 'x2iedn',
501
+ 'x2iezn',
502
+ 'x4',
503
+ 'x8g',
504
+ 'z1d',
505
+ 'z3'
506
+ ])).optional().default([]),
507
+ 'topology.kubernetes.io/region': z.array(z.enum([
508
+ 'africa-south1',
509
+ 'ap-northeast-1',
510
+ 'ap-northeast-2',
511
+ 'ap-northeast-3',
512
+ 'ap-south-1',
513
+ 'ap-southeast-1',
514
+ 'ap-southeast-2',
515
+ 'ash',
516
+ 'asia-east1',
517
+ 'asia-east2',
518
+ 'asia-northeast1',
519
+ 'asia-northeast2',
520
+ 'asia-northeast3',
521
+ 'asia-south1',
522
+ 'asia-south2',
523
+ 'asia-southeast1',
524
+ 'asia-southeast2',
525
+ 'australia-southeast1',
526
+ 'australia-southeast2',
527
+ 'ca-central-1',
528
+ 'eu-central-1',
529
+ 'eu-central-2',
530
+ 'eu-north-1',
531
+ 'eu-west-1',
532
+ 'eu-west-2',
533
+ 'eu-west-3',
534
+ 'europe-central2',
535
+ 'europe-north1',
536
+ 'europe-southwest1',
537
+ 'europe-west1',
538
+ 'europe-west10',
539
+ 'europe-west12',
540
+ 'europe-west2',
541
+ 'europe-west3',
542
+ 'europe-west4',
543
+ 'europe-west6',
544
+ 'europe-west8',
545
+ 'europe-west9',
546
+ 'fsn1',
547
+ 'hel1',
548
+ 'hil',
549
+ 'me-central1',
550
+ 'me-central2',
551
+ 'me-west1',
552
+ 'nbg1',
553
+ 'northamerica-northeast1',
554
+ 'northamerica-northeast2',
555
+ 'sa-east-1',
556
+ 'sin',
557
+ 'southamerica-east1',
558
+ 'southamerica-west1',
559
+ 'us-central1',
560
+ 'us-east-1',
561
+ 'us-east-2',
562
+ 'us-east1',
563
+ 'us-east4',
564
+ 'us-east5',
565
+ 'us-south1',
566
+ 'us-west-1',
567
+ 'us-west-2',
568
+ 'us-west1',
569
+ 'us-west2',
570
+ 'us-west3',
571
+ 'us-west4'
572
+ ])).optional().default([])
573
+ }).optional().default({
574
+ 'karpenter.sh/capacity-type': ['on-demand', 'spot'],
575
+ 'kubernetes.io/arch': ['amd64'],
576
+ 'cfke.io/instance-family': [],
577
+ 'topology.kubernetes.io/region': []
578
+ }),
579
+ scalingProfile: z.enum(['aggressive', 'conservative']).optional().default('conservative'),
285
580
  id: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/)
286
581
  });
582
+ /**
583
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
584
+ */
287
585
  export const zFleet = z.object({
288
586
  limits: z.object({
289
- cpu: z.number().gte(0)
587
+ cpu: z.int().gte(0).lte(100000).optional()
290
588
  }).optional(),
291
589
  gcp: z.object({
292
- enabled: z.boolean().optional().default(true),
293
- project: z.string()
590
+ enabled: z.boolean(),
591
+ project: z.string().regex(/^[a-z][a-z0-9-]{4,28}[a-z0-9]$/).optional()
294
592
  }).optional(),
295
593
  hetzner: z.object({
296
- enabled: z.boolean().optional().default(true),
297
- apiKey: z.string()
594
+ enabled: z.boolean(),
595
+ apiKey: z.string().regex(/^\*{64}$/).optional()
298
596
  }).optional(),
299
597
  aws: z.object({
300
- enabled: z.boolean().optional().default(true),
301
- controllerRoleArn: z.string()
598
+ enabled: z.boolean(),
599
+ controllerRoleArn: z.string().regex(/^arn:aws(-[a-z]+)*:iam::\d{12}:role\/[\w+=,.@\/-]+$/).optional()
302
600
  }).optional(),
303
- id: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/)
601
+ constraints: z.object({
602
+ 'karpenter.sh/capacity-type': z.array(z.enum(['on-demand', 'spot'])).min(1).default(['on-demand', 'spot']),
603
+ 'kubernetes.io/arch': z.array(z.enum(['amd64', 'arm64'])).min(1).default(['amd64']),
604
+ 'cfke.io/instance-family': z.array(z.enum([
605
+ 'a1',
606
+ 'a2',
607
+ 'a3',
608
+ 'a4',
609
+ 'c1',
610
+ 'c2',
611
+ 'c2d',
612
+ 'c3',
613
+ 'c3d',
614
+ 'c4',
615
+ 'c4a',
616
+ 'c4d',
617
+ 'c5',
618
+ 'c5a',
619
+ 'c5ad',
620
+ 'c5d',
621
+ 'c5n',
622
+ 'c6a',
623
+ 'c6g',
624
+ 'c6gd',
625
+ 'c6gn',
626
+ 'c6i',
627
+ 'c6id',
628
+ 'c6in',
629
+ 'c7a',
630
+ 'c7g',
631
+ 'c7gd',
632
+ 'c7gn',
633
+ 'c7i',
634
+ 'c7i-flex',
635
+ 'c8g',
636
+ 'c8gd',
637
+ 'cax',
638
+ 'ccx',
639
+ 'cpx',
640
+ 'cx',
641
+ 'd2',
642
+ 'd3',
643
+ 'd3en',
644
+ 'dl1',
645
+ 'dl2q',
646
+ 'e2',
647
+ 'f1',
648
+ 'f2',
649
+ 'g1',
650
+ 'g2',
651
+ 'g4ad',
652
+ 'g4dn',
653
+ 'g5',
654
+ 'g5g',
655
+ 'g6',
656
+ 'g6e',
657
+ 'gr6',
658
+ 'h1',
659
+ 'h3',
660
+ 'hpc6a',
661
+ 'hpc6id',
662
+ 'hpc7a',
663
+ 'hpc7g',
664
+ 'i2',
665
+ 'i3',
666
+ 'i3en',
667
+ 'i4g',
668
+ 'i4i',
669
+ 'i7i',
670
+ 'i7ie',
671
+ 'i8g',
672
+ 'im4gn',
673
+ 'inf1',
674
+ 'inf2',
675
+ 'is4gen',
676
+ 'm1',
677
+ 'm2',
678
+ 'm3',
679
+ 'm4',
680
+ 'm5',
681
+ 'm5a',
682
+ 'm5ad',
683
+ 'm5d',
684
+ 'm5dn',
685
+ 'm5n',
686
+ 'm5zn',
687
+ 'm6a',
688
+ 'm6g',
689
+ 'm6gd',
690
+ 'm6i',
691
+ 'm6id',
692
+ 'm6idn',
693
+ 'm6in',
694
+ 'm7a',
695
+ 'm7g',
696
+ 'm7gd',
697
+ 'm7i',
698
+ 'm7i-flex',
699
+ 'm8g',
700
+ 'm8gd',
701
+ 'n1',
702
+ 'n2',
703
+ 'n2d',
704
+ 'n4',
705
+ 'p3',
706
+ 'p3dn',
707
+ 'p4d',
708
+ 'p4de',
709
+ 'p5',
710
+ 'p5e',
711
+ 'p5en',
712
+ 'p6-b200',
713
+ 'r3',
714
+ 'r4',
715
+ 'r5',
716
+ 'r5a',
717
+ 'r5ad',
718
+ 'r5b',
719
+ 'r5d',
720
+ 'r5dn',
721
+ 'r5n',
722
+ 'r6a',
723
+ 'r6g',
724
+ 'r6gd',
725
+ 'r6i',
726
+ 'r6id',
727
+ 'r6idn',
728
+ 'r6in',
729
+ 'r7a',
730
+ 'r7g',
731
+ 'r7gd',
732
+ 'r7i',
733
+ 'r7iz',
734
+ 'r8g',
735
+ 'r8gd',
736
+ 't2',
737
+ 't2a',
738
+ 't2d',
739
+ 't3',
740
+ 't3a',
741
+ 't4g',
742
+ 'trn1',
743
+ 'trn1n',
744
+ 'u-3tb1',
745
+ 'u-6tb1',
746
+ 'u7i-12tb',
747
+ 'u7i-6tb',
748
+ 'u7i-8tb',
749
+ 'u7in-16tb',
750
+ 'u7in-24tb',
751
+ 'u7in-32tb',
752
+ 'vt1',
753
+ 'x1',
754
+ 'x1e',
755
+ 'x2gd',
756
+ 'x2idn',
757
+ 'x2iedn',
758
+ 'x2iezn',
759
+ 'x4',
760
+ 'x8g',
761
+ 'z1d',
762
+ 'z3'
763
+ ])).optional().default([]),
764
+ 'topology.kubernetes.io/region': z.array(z.enum([
765
+ 'africa-south1',
766
+ 'ap-northeast-1',
767
+ 'ap-northeast-2',
768
+ 'ap-northeast-3',
769
+ 'ap-south-1',
770
+ 'ap-southeast-1',
771
+ 'ap-southeast-2',
772
+ 'ash',
773
+ 'asia-east1',
774
+ 'asia-east2',
775
+ 'asia-northeast1',
776
+ 'asia-northeast2',
777
+ 'asia-northeast3',
778
+ 'asia-south1',
779
+ 'asia-south2',
780
+ 'asia-southeast1',
781
+ 'asia-southeast2',
782
+ 'australia-southeast1',
783
+ 'australia-southeast2',
784
+ 'ca-central-1',
785
+ 'eu-central-1',
786
+ 'eu-central-2',
787
+ 'eu-north-1',
788
+ 'eu-west-1',
789
+ 'eu-west-2',
790
+ 'eu-west-3',
791
+ 'europe-central2',
792
+ 'europe-north1',
793
+ 'europe-southwest1',
794
+ 'europe-west1',
795
+ 'europe-west10',
796
+ 'europe-west12',
797
+ 'europe-west2',
798
+ 'europe-west3',
799
+ 'europe-west4',
800
+ 'europe-west6',
801
+ 'europe-west8',
802
+ 'europe-west9',
803
+ 'fsn1',
804
+ 'hel1',
805
+ 'hil',
806
+ 'me-central1',
807
+ 'me-central2',
808
+ 'me-west1',
809
+ 'nbg1',
810
+ 'northamerica-northeast1',
811
+ 'northamerica-northeast2',
812
+ 'sa-east-1',
813
+ 'sin',
814
+ 'southamerica-east1',
815
+ 'southamerica-west1',
816
+ 'us-central1',
817
+ 'us-east-1',
818
+ 'us-east-2',
819
+ 'us-east1',
820
+ 'us-east4',
821
+ 'us-east5',
822
+ 'us-south1',
823
+ 'us-west-1',
824
+ 'us-west-2',
825
+ 'us-west1',
826
+ 'us-west2',
827
+ 'us-west3',
828
+ 'us-west4'
829
+ ])).optional().default([])
830
+ }).default({
831
+ 'karpenter.sh/capacity-type': ['on-demand', 'spot'],
832
+ 'kubernetes.io/arch': ['amd64'],
833
+ 'cfke.io/instance-family': [],
834
+ 'topology.kubernetes.io/region': []
835
+ }),
836
+ scalingProfile: z.enum(['aggressive', 'conservative']).default('conservative'),
837
+ id: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
838
+ ready: z.boolean(),
839
+ status_message: z.string().optional(),
840
+ created_at: z.string(),
841
+ updated_at: z.string()
304
842
  });
843
+ /**
844
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
845
+ */
305
846
  export const zFleetUpdateInput = z.object({
306
847
  limits: z.object({
307
- cpu: z.number().gte(0)
848
+ cpu: z.int().gte(0).lte(100000).optional()
308
849
  }).optional(),
309
850
  gcp: z.object({
310
- enabled: z.boolean().optional().default(true),
311
- project: z.string()
851
+ enabled: z.boolean(),
852
+ project: z.string().regex(/^[a-z][a-z0-9-]{4,28}[a-z0-9]$/).optional()
312
853
  }).optional(),
313
854
  hetzner: z.object({
314
- enabled: z.boolean().optional().default(true),
315
- apiKey: z.string()
855
+ enabled: z.boolean(),
856
+ apiKey: z.string().length(64).regex(/^[A-Za-z0-9]+$/).optional()
316
857
  }).optional(),
317
858
  aws: z.object({
318
- enabled: z.boolean().optional().default(true),
319
- controllerRoleArn: z.string()
320
- }).optional()
859
+ enabled: z.boolean(),
860
+ controllerRoleArn: z.string().regex(/^arn:aws(-[a-z]+)*:iam::\d{12}:role\/[\w+=,.@\/-]+$/).optional()
861
+ }).optional(),
862
+ constraints: z.object({
863
+ 'karpenter.sh/capacity-type': z.array(z.enum(['on-demand', 'spot'])).min(1).optional().default(['on-demand', 'spot']),
864
+ 'kubernetes.io/arch': z.array(z.enum(['amd64', 'arm64'])).min(1).optional().default(['amd64']),
865
+ 'cfke.io/instance-family': z.array(z.enum([
866
+ 'a1',
867
+ 'a2',
868
+ 'a3',
869
+ 'a4',
870
+ 'c1',
871
+ 'c2',
872
+ 'c2d',
873
+ 'c3',
874
+ 'c3d',
875
+ 'c4',
876
+ 'c4a',
877
+ 'c4d',
878
+ 'c5',
879
+ 'c5a',
880
+ 'c5ad',
881
+ 'c5d',
882
+ 'c5n',
883
+ 'c6a',
884
+ 'c6g',
885
+ 'c6gd',
886
+ 'c6gn',
887
+ 'c6i',
888
+ 'c6id',
889
+ 'c6in',
890
+ 'c7a',
891
+ 'c7g',
892
+ 'c7gd',
893
+ 'c7gn',
894
+ 'c7i',
895
+ 'c7i-flex',
896
+ 'c8g',
897
+ 'c8gd',
898
+ 'cax',
899
+ 'ccx',
900
+ 'cpx',
901
+ 'cx',
902
+ 'd2',
903
+ 'd3',
904
+ 'd3en',
905
+ 'dl1',
906
+ 'dl2q',
907
+ 'e2',
908
+ 'f1',
909
+ 'f2',
910
+ 'g1',
911
+ 'g2',
912
+ 'g4ad',
913
+ 'g4dn',
914
+ 'g5',
915
+ 'g5g',
916
+ 'g6',
917
+ 'g6e',
918
+ 'gr6',
919
+ 'h1',
920
+ 'h3',
921
+ 'hpc6a',
922
+ 'hpc6id',
923
+ 'hpc7a',
924
+ 'hpc7g',
925
+ 'i2',
926
+ 'i3',
927
+ 'i3en',
928
+ 'i4g',
929
+ 'i4i',
930
+ 'i7i',
931
+ 'i7ie',
932
+ 'i8g',
933
+ 'im4gn',
934
+ 'inf1',
935
+ 'inf2',
936
+ 'is4gen',
937
+ 'm1',
938
+ 'm2',
939
+ 'm3',
940
+ 'm4',
941
+ 'm5',
942
+ 'm5a',
943
+ 'm5ad',
944
+ 'm5d',
945
+ 'm5dn',
946
+ 'm5n',
947
+ 'm5zn',
948
+ 'm6a',
949
+ 'm6g',
950
+ 'm6gd',
951
+ 'm6i',
952
+ 'm6id',
953
+ 'm6idn',
954
+ 'm6in',
955
+ 'm7a',
956
+ 'm7g',
957
+ 'm7gd',
958
+ 'm7i',
959
+ 'm7i-flex',
960
+ 'm8g',
961
+ 'm8gd',
962
+ 'n1',
963
+ 'n2',
964
+ 'n2d',
965
+ 'n4',
966
+ 'p3',
967
+ 'p3dn',
968
+ 'p4d',
969
+ 'p4de',
970
+ 'p5',
971
+ 'p5e',
972
+ 'p5en',
973
+ 'p6-b200',
974
+ 'r3',
975
+ 'r4',
976
+ 'r5',
977
+ 'r5a',
978
+ 'r5ad',
979
+ 'r5b',
980
+ 'r5d',
981
+ 'r5dn',
982
+ 'r5n',
983
+ 'r6a',
984
+ 'r6g',
985
+ 'r6gd',
986
+ 'r6i',
987
+ 'r6id',
988
+ 'r6idn',
989
+ 'r6in',
990
+ 'r7a',
991
+ 'r7g',
992
+ 'r7gd',
993
+ 'r7i',
994
+ 'r7iz',
995
+ 'r8g',
996
+ 'r8gd',
997
+ 't2',
998
+ 't2a',
999
+ 't2d',
1000
+ 't3',
1001
+ 't3a',
1002
+ 't4g',
1003
+ 'trn1',
1004
+ 'trn1n',
1005
+ 'u-3tb1',
1006
+ 'u-6tb1',
1007
+ 'u7i-12tb',
1008
+ 'u7i-6tb',
1009
+ 'u7i-8tb',
1010
+ 'u7in-16tb',
1011
+ 'u7in-24tb',
1012
+ 'u7in-32tb',
1013
+ 'vt1',
1014
+ 'x1',
1015
+ 'x1e',
1016
+ 'x2gd',
1017
+ 'x2idn',
1018
+ 'x2iedn',
1019
+ 'x2iezn',
1020
+ 'x4',
1021
+ 'x8g',
1022
+ 'z1d',
1023
+ 'z3'
1024
+ ])).optional().default([]),
1025
+ 'topology.kubernetes.io/region': z.array(z.enum([
1026
+ 'africa-south1',
1027
+ 'ap-northeast-1',
1028
+ 'ap-northeast-2',
1029
+ 'ap-northeast-3',
1030
+ 'ap-south-1',
1031
+ 'ap-southeast-1',
1032
+ 'ap-southeast-2',
1033
+ 'ash',
1034
+ 'asia-east1',
1035
+ 'asia-east2',
1036
+ 'asia-northeast1',
1037
+ 'asia-northeast2',
1038
+ 'asia-northeast3',
1039
+ 'asia-south1',
1040
+ 'asia-south2',
1041
+ 'asia-southeast1',
1042
+ 'asia-southeast2',
1043
+ 'australia-southeast1',
1044
+ 'australia-southeast2',
1045
+ 'ca-central-1',
1046
+ 'eu-central-1',
1047
+ 'eu-central-2',
1048
+ 'eu-north-1',
1049
+ 'eu-west-1',
1050
+ 'eu-west-2',
1051
+ 'eu-west-3',
1052
+ 'europe-central2',
1053
+ 'europe-north1',
1054
+ 'europe-southwest1',
1055
+ 'europe-west1',
1056
+ 'europe-west10',
1057
+ 'europe-west12',
1058
+ 'europe-west2',
1059
+ 'europe-west3',
1060
+ 'europe-west4',
1061
+ 'europe-west6',
1062
+ 'europe-west8',
1063
+ 'europe-west9',
1064
+ 'fsn1',
1065
+ 'hel1',
1066
+ 'hil',
1067
+ 'me-central1',
1068
+ 'me-central2',
1069
+ 'me-west1',
1070
+ 'nbg1',
1071
+ 'northamerica-northeast1',
1072
+ 'northamerica-northeast2',
1073
+ 'sa-east-1',
1074
+ 'sin',
1075
+ 'southamerica-east1',
1076
+ 'southamerica-west1',
1077
+ 'us-central1',
1078
+ 'us-east-1',
1079
+ 'us-east-2',
1080
+ 'us-east1',
1081
+ 'us-east4',
1082
+ 'us-east5',
1083
+ 'us-south1',
1084
+ 'us-west-1',
1085
+ 'us-west-2',
1086
+ 'us-west1',
1087
+ 'us-west2',
1088
+ 'us-west3',
1089
+ 'us-west4'
1090
+ ])).optional().default([])
1091
+ }).optional().default({
1092
+ 'karpenter.sh/capacity-type': ['on-demand', 'spot'],
1093
+ 'kubernetes.io/arch': ['amd64'],
1094
+ 'cfke.io/instance-family': [],
1095
+ 'topology.kubernetes.io/region': []
1096
+ }),
1097
+ scalingProfile: z.enum(['aggressive', 'conservative']).optional().default('conservative')
1098
+ });
1099
+ export const zInviteCreateInput = z.object({
1100
+ email: z.email(),
1101
+ role: z.enum(['Administrator', 'User']).optional().default('User')
321
1102
  });
322
1103
  export const zInvite = z.object({
323
1104
  id: z.string().optional(),
324
- organization_id: z.string().uuid().optional(),
325
- date_created: z.string().datetime(),
326
- email: z.string().email().optional(),
327
- code: z.string().optional()
1105
+ organization_id: z.uuid().optional(),
1106
+ date_created: z.iso.datetime(),
1107
+ email: z.email().optional(),
1108
+ code: z.string().optional(),
1109
+ role: z.enum(['Administrator', 'User']).optional().default('User')
328
1110
  });
329
1111
  export const zInvoice = z.object({
330
- id: z.string().uuid().optional(),
331
- organizationId: z.string().uuid().optional(),
332
- status: z.enum([
333
- 'DRAFT',
334
- 'COMMITTED',
335
- 'VOID'
336
- ]).optional(),
337
- amount: z.number().optional(),
338
- currency: z.enum([
339
- 'AED',
340
- 'AFN',
341
- 'ALL',
342
- 'AMD',
343
- 'ANG',
344
- 'AOA',
345
- 'ARS',
346
- 'AUD',
347
- 'AWG',
348
- 'AZN',
349
- 'BAM',
350
- 'BBD',
351
- 'BDT',
352
- 'BGN',
353
- 'BHD',
354
- 'BIF',
355
- 'BMD',
356
- 'BND',
357
- 'BOB',
358
- 'BRL',
359
- 'BSD',
360
- 'BTN',
361
- 'BWP',
362
- 'BYR',
363
- 'BZD',
364
- 'CAD',
365
- 'CDF',
366
- 'CHF',
367
- 'CLP',
368
- 'CNY',
369
- 'COP',
370
- 'CRC',
371
- 'CUC',
372
- 'CUP',
373
- 'CVE',
374
- 'CZK',
375
- 'DJF',
376
- 'DKK',
377
- 'DOP',
378
- 'DZD',
379
- 'EGP',
380
- 'ERN',
381
- 'ETB',
382
- 'EUR',
383
- 'FJD',
384
- 'FKP',
385
- 'GBP',
386
- 'GEL',
387
- 'GGP',
388
- 'GHS',
389
- 'GIP',
390
- 'GMD',
391
- 'GNF',
392
- 'GTQ',
393
- 'GYD',
394
- 'HKD',
395
- 'HNL',
396
- 'HRK',
397
- 'HTG',
398
- 'HUF',
399
- 'IDR',
400
- 'ILS',
401
- 'IMP',
402
- 'INR',
403
- 'IQD',
404
- 'IRR',
405
- 'ISK',
406
- 'JEP',
407
- 'JMD',
408
- 'JOD',
409
- 'JPY',
410
- 'KES',
411
- 'KGS',
412
- 'KHR',
413
- 'KMF',
414
- 'KPW',
415
- 'KRW',
416
- 'KWD',
417
- 'KYD',
418
- 'KZT',
419
- 'LAK',
420
- 'LBP',
421
- 'LKR',
422
- 'LRD',
423
- 'LSL',
424
- 'LTL',
425
- 'LVL',
426
- 'LYD',
427
- 'MAD',
428
- 'MDL',
429
- 'MGA',
430
- 'MKD',
431
- 'MMK',
432
- 'MNT',
433
- 'MOP',
434
- 'MRO',
435
- 'MUR',
436
- 'MVR',
437
- 'MWK',
438
- 'MXN',
439
- 'MYR',
440
- 'MZN',
441
- 'NAD',
442
- 'NGN',
443
- 'NIO',
444
- 'NOK',
445
- 'NPR',
446
- 'NZD',
447
- 'OMR',
448
- 'PAB',
449
- 'PEN',
450
- 'PGK',
451
- 'PHP',
452
- 'PKR',
453
- 'PLN',
454
- 'PYG',
455
- 'QAR',
456
- 'RON',
457
- 'RSD',
458
- 'RUB',
459
- 'RWF',
460
- 'SAR',
461
- 'SBD',
462
- 'SCR',
463
- 'SDG',
464
- 'SEK',
465
- 'SGD',
466
- 'SHP',
467
- 'SLL',
468
- 'SOS',
469
- 'SPL',
470
- 'SRD',
471
- 'STD',
472
- 'SVC',
473
- 'SYP',
474
- 'SZL',
475
- 'THB',
476
- 'TJS',
477
- 'TMT',
478
- 'TND',
479
- 'TOP',
480
- 'TRY',
481
- 'TTD',
482
- 'TVD',
483
- 'TWD',
484
- 'TZS',
485
- 'UAH',
486
- 'UGX',
487
- 'USD',
488
- 'UYU',
489
- 'UZS',
490
- 'VEF',
491
- 'VND',
492
- 'VUV',
493
- 'WST',
494
- 'XAF',
495
- 'XCD',
496
- 'XDR',
497
- 'XOF',
498
- 'XPF',
499
- 'YER',
500
- 'ZAR',
501
- 'ZMW',
502
- 'ZWD',
503
- 'BTC'
504
- ]).optional(),
505
- creditAdj: z.number().optional(),
506
- refundAdj: z.number().optional(),
507
- invoiceDate: z.string().optional(),
508
- targetDate: z.string().optional(),
509
- invoiceNumber: z.string().optional(),
510
- balance: z.number().optional(),
511
- bundleKeys: z.string().optional(),
512
- credits: z.array(z.object({
513
- id: z.string().uuid().optional(),
514
- linkedInvoiceItemId: z.string().uuid().optional(),
515
- productName: z.string().optional(),
516
- planName: z.string().optional(),
517
- phaseName: z.string().optional(),
518
- usageName: z.string().optional(),
519
- prettyProductName: z.string().optional(),
520
- prettyPlanName: z.string().optional(),
521
- prettyPhaseName: z.string().optional(),
522
- prettyUsageName: z.string().optional(),
523
- itemType: z.enum([
524
- 'EXTERNAL_CHARGE',
525
- 'FIXED',
526
- 'RECURRING',
527
- 'REPAIR_ADJ',
528
- 'CBA_ADJ',
529
- 'CREDIT_ADJ',
530
- 'ITEM_ADJ',
531
- 'USAGE',
532
- 'TAX',
533
- 'PARENT_SUMMARY'
534
- ]).optional(),
535
- description: z.string().optional(),
536
- startDate: z.string().optional(),
537
- endDate: z.string().optional(),
538
- amount: z.number().optional(),
539
- rate: z.number().optional(),
540
- currency: z.enum([
541
- 'AED',
542
- 'AFN',
543
- 'ALL',
544
- 'AMD',
545
- 'ANG',
546
- 'AOA',
547
- 'ARS',
548
- 'AUD',
549
- 'AWG',
550
- 'AZN',
551
- 'BAM',
552
- 'BBD',
553
- 'BDT',
554
- 'BGN',
555
- 'BHD',
556
- 'BIF',
557
- 'BMD',
558
- 'BND',
559
- 'BOB',
560
- 'BRL',
561
- 'BSD',
562
- 'BTN',
563
- 'BWP',
564
- 'BYR',
565
- 'BZD',
566
- 'CAD',
567
- 'CDF',
568
- 'CHF',
569
- 'CLP',
570
- 'CNY',
571
- 'COP',
572
- 'CRC',
573
- 'CUC',
574
- 'CUP',
575
- 'CVE',
576
- 'CZK',
577
- 'DJF',
578
- 'DKK',
579
- 'DOP',
580
- 'DZD',
581
- 'EGP',
582
- 'ERN',
583
- 'ETB',
584
- 'EUR',
585
- 'FJD',
586
- 'FKP',
587
- 'GBP',
588
- 'GEL',
589
- 'GGP',
590
- 'GHS',
591
- 'GIP',
592
- 'GMD',
593
- 'GNF',
594
- 'GTQ',
595
- 'GYD',
596
- 'HKD',
597
- 'HNL',
598
- 'HRK',
599
- 'HTG',
600
- 'HUF',
601
- 'IDR',
602
- 'ILS',
603
- 'IMP',
604
- 'INR',
605
- 'IQD',
606
- 'IRR',
607
- 'ISK',
608
- 'JEP',
609
- 'JMD',
610
- 'JOD',
611
- 'JPY',
612
- 'KES',
613
- 'KGS',
614
- 'KHR',
615
- 'KMF',
616
- 'KPW',
617
- 'KRW',
618
- 'KWD',
619
- 'KYD',
620
- 'KZT',
621
- 'LAK',
622
- 'LBP',
623
- 'LKR',
624
- 'LRD',
625
- 'LSL',
626
- 'LTL',
627
- 'LVL',
628
- 'LYD',
629
- 'MAD',
630
- 'MDL',
631
- 'MGA',
632
- 'MKD',
633
- 'MMK',
634
- 'MNT',
635
- 'MOP',
636
- 'MRO',
637
- 'MUR',
638
- 'MVR',
639
- 'MWK',
640
- 'MXN',
641
- 'MYR',
642
- 'MZN',
643
- 'NAD',
644
- 'NGN',
645
- 'NIO',
646
- 'NOK',
647
- 'NPR',
648
- 'NZD',
649
- 'OMR',
650
- 'PAB',
651
- 'PEN',
652
- 'PGK',
653
- 'PHP',
654
- 'PKR',
655
- 'PLN',
656
- 'PYG',
657
- 'QAR',
658
- 'RON',
659
- 'RSD',
660
- 'RUB',
661
- 'RWF',
662
- 'SAR',
663
- 'SBD',
664
- 'SCR',
665
- 'SDG',
666
- 'SEK',
667
- 'SGD',
668
- 'SHP',
669
- 'SLL',
670
- 'SOS',
671
- 'SPL',
672
- 'SRD',
673
- 'STD',
674
- 'SVC',
675
- 'SYP',
676
- 'SZL',
677
- 'THB',
678
- 'TJS',
679
- 'TMT',
680
- 'TND',
681
- 'TOP',
682
- 'TRY',
683
- 'TTD',
684
- 'TVD',
685
- 'TWD',
686
- 'TZS',
687
- 'UAH',
688
- 'UGX',
689
- 'USD',
690
- 'UYU',
691
- 'UZS',
692
- 'VEF',
693
- 'VND',
694
- 'VUV',
695
- 'WST',
696
- 'XAF',
697
- 'XCD',
698
- 'XDR',
699
- 'XOF',
700
- 'XPF',
701
- 'YER',
702
- 'ZAR',
703
- 'ZMW',
704
- 'ZWD',
705
- 'BTC'
706
- ]).optional(),
707
- quantity: z.number().optional(),
708
- itemDetails: z.string().optional(),
709
- catalogEffectiveDate: z.string().optional(),
710
- childItems: z.array(z.union([
711
- z.array(z.unknown()),
712
- z.boolean(),
713
- z.number(),
714
- z.object({}),
715
- z.string()
716
- ])).optional()
717
- })).optional(),
718
- items: z.array(z.object({
719
- id: z.string().uuid().optional(),
720
- linkedInvoiceItemId: z.string().uuid().optional(),
721
- productName: z.string().optional(),
722
- planName: z.string().optional(),
723
- phaseName: z.string().optional(),
724
- usageName: z.string().optional(),
725
- prettyProductName: z.string().optional(),
726
- prettyPlanName: z.string().optional(),
727
- prettyPhaseName: z.string().optional(),
728
- prettyUsageName: z.string().optional(),
729
- itemType: z.enum([
730
- 'EXTERNAL_CHARGE',
731
- 'FIXED',
732
- 'RECURRING',
733
- 'REPAIR_ADJ',
734
- 'CBA_ADJ',
735
- 'CREDIT_ADJ',
736
- 'ITEM_ADJ',
737
- 'USAGE',
738
- 'TAX',
739
- 'PARENT_SUMMARY'
740
- ]).optional(),
741
- description: z.string().optional(),
742
- startDate: z.string().optional(),
743
- endDate: z.string().optional(),
744
- amount: z.number().optional(),
745
- rate: z.number().optional(),
746
- currency: z.enum([
747
- 'AED',
748
- 'AFN',
749
- 'ALL',
750
- 'AMD',
751
- 'ANG',
752
- 'AOA',
753
- 'ARS',
754
- 'AUD',
755
- 'AWG',
756
- 'AZN',
757
- 'BAM',
758
- 'BBD',
759
- 'BDT',
760
- 'BGN',
761
- 'BHD',
762
- 'BIF',
763
- 'BMD',
764
- 'BND',
765
- 'BOB',
766
- 'BRL',
767
- 'BSD',
768
- 'BTN',
769
- 'BWP',
770
- 'BYR',
771
- 'BZD',
772
- 'CAD',
773
- 'CDF',
774
- 'CHF',
775
- 'CLP',
776
- 'CNY',
777
- 'COP',
778
- 'CRC',
779
- 'CUC',
780
- 'CUP',
781
- 'CVE',
782
- 'CZK',
783
- 'DJF',
784
- 'DKK',
785
- 'DOP',
786
- 'DZD',
787
- 'EGP',
788
- 'ERN',
789
- 'ETB',
790
- 'EUR',
791
- 'FJD',
792
- 'FKP',
793
- 'GBP',
794
- 'GEL',
795
- 'GGP',
796
- 'GHS',
797
- 'GIP',
798
- 'GMD',
799
- 'GNF',
800
- 'GTQ',
801
- 'GYD',
802
- 'HKD',
803
- 'HNL',
804
- 'HRK',
805
- 'HTG',
806
- 'HUF',
807
- 'IDR',
808
- 'ILS',
809
- 'IMP',
810
- 'INR',
811
- 'IQD',
812
- 'IRR',
813
- 'ISK',
814
- 'JEP',
815
- 'JMD',
816
- 'JOD',
817
- 'JPY',
818
- 'KES',
819
- 'KGS',
820
- 'KHR',
821
- 'KMF',
822
- 'KPW',
823
- 'KRW',
824
- 'KWD',
825
- 'KYD',
826
- 'KZT',
827
- 'LAK',
828
- 'LBP',
829
- 'LKR',
830
- 'LRD',
831
- 'LSL',
832
- 'LTL',
833
- 'LVL',
834
- 'LYD',
835
- 'MAD',
836
- 'MDL',
837
- 'MGA',
838
- 'MKD',
839
- 'MMK',
840
- 'MNT',
841
- 'MOP',
842
- 'MRO',
843
- 'MUR',
844
- 'MVR',
845
- 'MWK',
846
- 'MXN',
847
- 'MYR',
848
- 'MZN',
849
- 'NAD',
850
- 'NGN',
851
- 'NIO',
852
- 'NOK',
853
- 'NPR',
854
- 'NZD',
855
- 'OMR',
856
- 'PAB',
857
- 'PEN',
858
- 'PGK',
859
- 'PHP',
860
- 'PKR',
861
- 'PLN',
862
- 'PYG',
863
- 'QAR',
864
- 'RON',
865
- 'RSD',
866
- 'RUB',
867
- 'RWF',
868
- 'SAR',
869
- 'SBD',
870
- 'SCR',
871
- 'SDG',
872
- 'SEK',
873
- 'SGD',
874
- 'SHP',
875
- 'SLL',
876
- 'SOS',
877
- 'SPL',
878
- 'SRD',
879
- 'STD',
880
- 'SVC',
881
- 'SYP',
882
- 'SZL',
883
- 'THB',
884
- 'TJS',
885
- 'TMT',
886
- 'TND',
887
- 'TOP',
888
- 'TRY',
889
- 'TTD',
890
- 'TVD',
891
- 'TWD',
892
- 'TZS',
893
- 'UAH',
894
- 'UGX',
895
- 'USD',
896
- 'UYU',
897
- 'UZS',
898
- 'VEF',
899
- 'VND',
900
- 'VUV',
901
- 'WST',
902
- 'XAF',
903
- 'XCD',
904
- 'XDR',
905
- 'XOF',
906
- 'XPF',
907
- 'YER',
908
- 'ZAR',
909
- 'ZMW',
910
- 'ZWD',
911
- 'BTC'
912
- ]).optional(),
913
- quantity: z.number().optional(),
914
- itemDetails: z.string().optional(),
915
- catalogEffectiveDate: z.string().optional(),
916
- childItems: z.array(z.union([
917
- z.array(z.unknown()),
918
- z.boolean(),
919
- z.number(),
920
- z.object({}),
921
- z.string()
922
- ])).optional()
923
- })).optional()
1112
+ id: z.string().optional(),
1113
+ number: z.string().optional(),
1114
+ status: z.string().optional(),
1115
+ total: z.number().optional(),
1116
+ currency: z.string().optional(),
1117
+ created: z.iso.datetime(),
1118
+ period_start: z.iso.datetime(),
1119
+ period_end: z.iso.datetime(),
1120
+ invoice_pdf: z.string().optional()
1121
+ });
1122
+ export const zMarketplaceListingFiles = z.object({
1123
+ chartYaml: z.string().optional(),
1124
+ valuesYaml: z.string().optional(),
1125
+ valuesSchemaJson: z.string().optional()
924
1126
  });
925
1127
  export const zMarketplaceListing = z.object({
926
- id: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
927
1128
  name: z.string(),
928
- developer: z.string(),
929
- description: z.string(),
930
- logoUrl: z.string(),
931
- longDescription: z.string(),
932
- categories: z.array(z.string()),
1129
+ 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-]+)*))?$/)),
933
1130
  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-]+)*))?$/)),
934
- value_schemas: z.array(z.object({
935
- 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-]+)*))?$/),
936
- schema: z.string(),
937
- placeholder: z.string()
938
- }))
1131
+ latestVersion: z.string(),
1132
+ metadata: z.object({
1133
+ name: z.string(),
1134
+ version: z.string(),
1135
+ description: z.string().optional(),
1136
+ appVersion: z.string().optional(),
1137
+ apiVersion: z.string().optional(),
1138
+ keywords: z.array(z.string()).optional(),
1139
+ home: z.string().optional(),
1140
+ icon: z.string().optional(),
1141
+ sources: z.array(z.string()).optional(),
1142
+ maintainers: z.array(z.object({
1143
+ name: z.string(),
1144
+ email: z.string().optional()
1145
+ })).optional()
1146
+ }).optional()
939
1147
  });
940
1148
  export const zOrganizationCreateInput = z.object({
941
- email: z.string().email(),
942
- first_name: z.string(),
943
- last_name: z.string(),
1149
+ type: z.enum(['business', 'personal']),
1150
+ email: z.email(),
1151
+ first_name: z.string().min(1),
1152
+ last_name: z.string().min(1),
944
1153
  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,}$/),
945
1154
  password: z.string().min(8)
946
1155
  });
1156
+ export const zOrganizationCreateOutput = z.object({
1157
+ id: z.string()
1158
+ });
947
1159
  export const zOrganization = z.object({
948
- id: z.string().uuid(),
1160
+ id: z.uuid(),
949
1161
  name: z.string().min(2).max(120).optional(),
950
- date_created: z.string().datetime(),
1162
+ type: z.enum(['business', 'personal']),
1163
+ date_created: z.iso.datetime(),
951
1164
  quota: z.object({
952
- basic_clusters_max: z.number().int().gte(0),
953
- basic_clusters_available: z.number().int(),
954
- pro_clusters_max: z.number().int().gte(0),
955
- pro_clusters_available: z.number().int(),
956
- fleets_max: z.number().int().gte(0),
1165
+ basic_clusters_max: z.int().gte(0),
1166
+ basic_clusters_available: z.int(),
1167
+ pro_clusters_max: z.int().gte(0),
1168
+ pro_clusters_available: z.int(),
1169
+ fleets_max: z.int().gte(0),
957
1170
  cluster_tiers: z.array(z.string()).min(0),
958
1171
  regions: z.array(z.string()).min(1),
959
1172
  versions: z.array(z.object({
960
1173
  id: z.string(),
961
1174
  label: z.string()
962
- })).min(1)
1175
+ })).min(1),
1176
+ cfcr_storage_gb: z.int().gte(-1)
963
1177
  }),
964
1178
  status: z.enum([
965
1179
  'active',
966
1180
  'closed',
967
1181
  'suspended'
1182
+ ]),
1183
+ verification: z.enum([
1184
+ 'none',
1185
+ 'submitted',
1186
+ 'verified'
968
1187
  ])
969
1188
  });
970
1189
  export const zPaymentMethod = z.object({
971
- id: z.string().uuid(),
972
- setup: z.boolean(),
1190
+ id: z.string(),
973
1191
  type: z.enum([
974
- 'card'
1192
+ 'card',
1193
+ 'sepa_debit',
1194
+ 'bank_transfer'
975
1195
  ]),
976
1196
  last4: z.string(),
977
- exp_month: z.number().int().gte(1).lte(12),
978
- exp_year: z.number().int().gte(2024),
979
- brand: z.enum([
980
- 'amex',
981
- 'diners',
982
- 'discover',
983
- 'eftpos_au',
984
- 'jcb',
985
- 'mastercard',
986
- 'unionpay',
987
- 'visa',
988
- 'unknown'
989
- ])
1197
+ exp_month: z.int().gte(1).lte(12),
1198
+ exp_year: z.int(),
1199
+ brand: z.string(),
1200
+ iban: z.string(),
1201
+ bic: z.string(),
1202
+ account_holder_name: z.string(),
1203
+ is_default: z.boolean()
1204
+ });
1205
+ export const zPlatformQuota = z.object({
1206
+ basic_clusters_max: z.int().gte(0),
1207
+ basic_clusters_available: z.int(),
1208
+ pro_clusters_max: z.int().gte(0),
1209
+ pro_clusters_available: z.int(),
1210
+ fleets_max: z.int().gte(0),
1211
+ cluster_tiers: z.array(z.string()).min(0),
1212
+ regions: z.array(z.string()).min(1),
1213
+ versions: z.array(z.object({
1214
+ id: z.string(),
1215
+ label: z.string()
1216
+ })).min(1),
1217
+ cfcr_storage_gb: z.int().gte(-1)
1218
+ });
1219
+ export const zRegistryRepository = z.object({
1220
+ name: z.string(),
1221
+ region: z.string(),
1222
+ uri: z.string()
1223
+ });
1224
+ export const zRegistryRepositoryWithTags = z.object({
1225
+ name: z.string(),
1226
+ region: z.string(),
1227
+ uri: z.string(),
1228
+ tags: z.array(z.object({
1229
+ name: z.string(),
1230
+ size: z.number(),
1231
+ mediaType: z.string().optional(),
1232
+ platforms: z.array(z.string()).optional()
1233
+ })),
1234
+ totalSize: z.number()
1235
+ });
1236
+ export const zRegistryTag = z.object({
1237
+ name: z.string(),
1238
+ digest: z.string(),
1239
+ mediaType: z.string().optional(),
1240
+ config: z.object({
1241
+ size: z.number()
1242
+ }).optional(),
1243
+ layers: z.array(z.object({
1244
+ digest: z.string().optional(),
1245
+ size: z.number()
1246
+ })).optional(),
1247
+ manifests: z.array(z.object({
1248
+ digest: z.string(),
1249
+ platform: z.object({
1250
+ architecture: z.string(),
1251
+ os: z.string(),
1252
+ variant: z.string().optional()
1253
+ }).optional(),
1254
+ layers: z.array(z.object({
1255
+ digest: z.string().optional(),
1256
+ size: z.number()
1257
+ })).optional(),
1258
+ size: z.number().optional()
1259
+ })).optional(),
1260
+ size: z.number(),
1261
+ region: z.string(),
1262
+ repository: z.string(),
1263
+ uri: z.string()
1264
+ });
1265
+ export const zTicketAttachment = z.object({
1266
+ id: z.string(),
1267
+ filename: z.string(),
1268
+ content_type: z.string(),
1269
+ size: z.int()
1270
+ });
1271
+ export const zTicketCreateInput = z.object({
1272
+ category: z.enum([
1273
+ 'billing',
1274
+ 'technical',
1275
+ 'general'
1276
+ ]),
1277
+ body: z.string().min(1).max(50000).regex(/\S/),
1278
+ properties: z.record(z.string(), z.unknown()).optional()
1279
+ });
1280
+ export const zTicketListResponse = z.object({
1281
+ items: z.array(z.object({
1282
+ id: z.string(),
1283
+ status: z.enum([
1284
+ 'waiting_on_us',
1285
+ 'waiting_on_user',
1286
+ 'closed'
1287
+ ]),
1288
+ category: z.enum([
1289
+ 'billing',
1290
+ 'technical',
1291
+ 'general'
1292
+ ]),
1293
+ summary: z.string(),
1294
+ closed_at: z.iso.datetime().optional(),
1295
+ date_created: z.iso.datetime(),
1296
+ date_updated: z.iso.datetime(),
1297
+ messages: z.array(z.object({
1298
+ id: z.string(),
1299
+ type: z.enum(['customer_reply', 'agent_reply']),
1300
+ body: z.string(),
1301
+ author_first_name: z.string().optional(),
1302
+ author_last_name: z.string().optional(),
1303
+ attachments: z.array(z.object({
1304
+ id: z.string(),
1305
+ filename: z.string(),
1306
+ content_type: z.string(),
1307
+ size: z.int()
1308
+ })).optional(),
1309
+ date_created: z.iso.datetime()
1310
+ })).optional()
1311
+ }))
1312
+ });
1313
+ export const zTicketMessageInput = z.object({
1314
+ body: z.string().min(1).max(50000).regex(/\S/)
1315
+ });
1316
+ export const zTicketMessage = z.object({
1317
+ id: z.string(),
1318
+ type: z.enum(['customer_reply', 'agent_reply']),
1319
+ body: z.string(),
1320
+ author_first_name: z.string().optional(),
1321
+ author_last_name: z.string().optional(),
1322
+ attachments: z.array(z.object({
1323
+ id: z.string(),
1324
+ filename: z.string(),
1325
+ content_type: z.string(),
1326
+ size: z.int()
1327
+ })).optional(),
1328
+ date_created: z.iso.datetime()
1329
+ });
1330
+ export const zTicket = z.object({
1331
+ id: z.string(),
1332
+ status: z.enum([
1333
+ 'waiting_on_us',
1334
+ 'waiting_on_user',
1335
+ 'closed'
1336
+ ]),
1337
+ category: z.enum([
1338
+ 'billing',
1339
+ 'technical',
1340
+ 'general'
1341
+ ]),
1342
+ summary: z.string(),
1343
+ closed_at: z.iso.datetime().optional(),
1344
+ date_created: z.iso.datetime(),
1345
+ date_updated: z.iso.datetime(),
1346
+ messages: z.array(z.object({
1347
+ id: z.string(),
1348
+ type: z.enum(['customer_reply', 'agent_reply']),
1349
+ body: z.string(),
1350
+ author_first_name: z.string().optional(),
1351
+ author_last_name: z.string().optional(),
1352
+ attachments: z.array(z.object({
1353
+ id: z.string(),
1354
+ filename: z.string(),
1355
+ content_type: z.string(),
1356
+ size: z.int()
1357
+ })).optional(),
1358
+ date_created: z.iso.datetime()
1359
+ })).optional()
990
1360
  });
991
1361
  export const zTokenCreateInput = z.object({
992
1362
  name: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
993
- role: z.enum([
994
- 'Administrator',
995
- 'User'
996
- ])
1363
+ role: z.enum(['Administrator', 'User'])
997
1364
  });
998
1365
  export const zToken = z.object({
999
1366
  name: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
1000
- role: z.enum([
1001
- 'Administrator',
1002
- 'User'
1003
- ]),
1367
+ role: z.enum(['Administrator', 'User']),
1004
1368
  id: z.string().optional(),
1005
1369
  secret: z.string().optional(),
1006
- date_created: z.string().datetime()
1370
+ date_created: z.iso.datetime()
1007
1371
  });
1008
1372
  export const zTokenUpdateInput = z.object({
1009
1373
  name: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/).optional(),
1010
- role: z.enum([
1011
- 'Administrator',
1012
- 'User'
1013
- ]).optional()
1374
+ role: z.enum(['Administrator', 'User']).optional()
1375
+ });
1376
+ export const zUsageFacets = z.object({
1377
+ cluster_id: z.array(z.string()).optional(),
1378
+ product: z.array(z.string()).optional()
1379
+ });
1380
+ export const zUsageResponse = z.object({
1381
+ data: z.array(z.object({
1382
+ hour: z.string(),
1383
+ cluster_id: z.string(),
1384
+ product: z.string(),
1385
+ value: z.number(),
1386
+ price: z.number(),
1387
+ total: z.number()
1388
+ })),
1389
+ facets: z.object({
1390
+ cluster_id: z.array(z.string()).optional(),
1391
+ product: z.array(z.string()).optional()
1392
+ })
1014
1393
  });
1015
1394
  export const zUsage = z.object({
1016
- hour: z.string().optional(),
1017
- cluster_id: z.string().uuid(),
1018
- cluster_tier: z.enum([
1019
- 'basic',
1020
- 'pro',
1021
- ''
1022
- ]),
1023
- product: z.enum([
1024
- 'cfke_controlplane',
1025
- 'cfke_connected_nodes',
1026
- 'infra_compute',
1027
- 'infra_storage',
1028
- 'infra_loadbalancing',
1029
- 'infra_traffic',
1030
- 'cfcr_storage'
1031
- ]),
1032
- node_name: z.string(),
1033
- sku: z.string(),
1034
- cpu: z.union([
1035
- z.number(),
1036
- z.enum([
1037
- ''
1038
- ])
1039
- ]),
1040
- price: z.union([
1041
- z.number(),
1042
- z.enum([
1043
- ''
1044
- ])
1045
- ]),
1046
- value: z.union([
1047
- z.number(),
1048
- z.enum([
1049
- ''
1050
- ])
1051
- ]),
1052
- total: z.union([
1053
- z.number(),
1054
- z.enum([
1055
- ''
1056
- ])
1057
- ])
1395
+ hour: z.string(),
1396
+ cluster_id: z.string(),
1397
+ product: z.string(),
1398
+ value: z.number(),
1399
+ price: z.number(),
1400
+ total: z.number()
1058
1401
  });
1059
1402
  export const zUserCreateInput = z.object({
1060
- email: z.string().email(),
1403
+ email: z.email(),
1061
1404
  first_name: z.string().min(1).max(50),
1062
1405
  last_name: z.string().min(1).max(50),
1063
1406
  code: z.string(),
1064
- password: z.string().min(8),
1065
- status: z.enum([
1066
- 'active',
1067
- 'inactive'
1068
- ]).optional(),
1069
- role: z.enum([
1070
- 'Administrator',
1071
- 'User'
1072
- ]).optional()
1407
+ password: z.string().min(8)
1073
1408
  });
1074
1409
  export const zUser = z.object({
1075
- email: z.string().email(),
1410
+ email: z.email(),
1076
1411
  first_name: z.string().min(1).max(50),
1077
1412
  last_name: z.string().min(1).max(50),
1078
- role: z.enum([
1079
- 'Administrator',
1080
- 'User'
1081
- ]),
1082
- status: z.enum([
1083
- 'active',
1084
- 'inactive'
1085
- ]),
1086
- id: z.string().uuid(),
1087
- date_created: z.string().datetime()
1413
+ role: z.enum(['Administrator', 'User']),
1414
+ status: z.enum(['active', 'inactive']),
1415
+ id: z.uuid(),
1416
+ date_created: z.iso.datetime()
1088
1417
  });
1089
1418
  export const zUserUpdateInput = z.object({
1090
- email: z.string().email().optional(),
1419
+ email: z.email().optional(),
1091
1420
  first_name: z.string().min(1).max(50).optional(),
1092
1421
  last_name: z.string().min(1).max(50).optional(),
1093
- role: z.enum([
1094
- 'Administrator',
1095
- 'User'
1096
- ]).optional(),
1097
- status: z.enum([
1098
- 'active',
1099
- 'inactive'
1100
- ]).optional()
1422
+ role: z.enum(['Administrator', 'User']).optional(),
1423
+ status: z.enum(['active', 'inactive']).optional()
1101
1424
  });
1102
- export const zGetUsageData = z.object({
1103
- body: z.never().optional(),
1104
- path: z.never().optional(),
1105
- query: z.never().optional()
1425
+ export const zListUserOrganizationsPath = z.object({
1426
+ email: z.string()
1106
1427
  });
1107
1428
  /**
1108
- * An array of usage records.
1429
+ * An array of organizations the user belongs to.
1109
1430
  */
1110
- export const zGetUsageResponse = z.array(zUsage);
1111
- export const zGetBalanceData = z.object({
1112
- body: z.never().optional(),
1113
- path: z.never().optional(),
1114
- query: z.never().optional()
1431
+ export const zListUserOrganizationsResponse = z.array(z.object({
1432
+ realm: z.string().optional(),
1433
+ displayName: z.string().optional()
1434
+ }));
1435
+ /**
1436
+ * An array of users
1437
+ */
1438
+ export const zListUsersResponse = z.array(zUser);
1439
+ export const zCreateUserBody = zUserCreateInput;
1440
+ /**
1441
+ * Successfully created. Returns created user details.
1442
+ */
1443
+ export const zCreateUserResponse = zUser;
1444
+ export const zDeleteUserPath = z.object({
1445
+ user_id: z.string()
1115
1446
  });
1116
1447
  /**
1117
- * Current balance of the organization in USD as a floating-point number.
1448
+ * User profile information
1118
1449
  */
1119
- export const zGetBalanceResponse = z.number();
1120
- export const zGetPaymentMethodData = z.object({
1121
- body: z.never().optional(),
1122
- path: z.never().optional(),
1123
- query: z.never().optional()
1450
+ export const zDeleteUserResponse = zUser;
1451
+ export const zGetUserPath = z.object({
1452
+ user_id: z.string()
1124
1453
  });
1125
1454
  /**
1126
- * Redacted payment card information.
1455
+ * User profile information
1127
1456
  */
1128
- export const zGetPaymentMethodResponse = zPaymentMethod;
1129
- export const zGetPaymentMethodSecretData = z.object({
1130
- body: z.never().optional(),
1131
- path: z.never().optional(),
1132
- query: z.never().optional()
1457
+ export const zGetUserResponse = zUser;
1458
+ export const zUpdateUserBody = zUserUpdateInput;
1459
+ export const zUpdateUserPath = z.object({
1460
+ user_id: z.string()
1133
1461
  });
1134
1462
  /**
1135
- * 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.
1136
- *
1463
+ * Successfully created. Returns created user details.
1137
1464
  */
1138
- export const zGetPaymentMethodSecretResponse = z.object({
1139
- id: z.string().optional()
1465
+ export const zUpdateUserResponse = zUser;
1466
+ /**
1467
+ * Returns a list of access token details with masked secrets.
1468
+ */
1469
+ export const zListTokensResponse = z.array(zToken);
1470
+ export const zCreateTokenBody = zTokenCreateInput;
1471
+ /**
1472
+ * Successfully created. Returns created token details with unmasked/raw secret.
1473
+ */
1474
+ export const zCreateTokenResponse = zToken;
1475
+ export const zDeleteTokenPath = z.object({
1476
+ token_id: z.string()
1140
1477
  });
1141
- export const zListInvoicesData = z.object({
1142
- body: z.never().optional(),
1143
- path: z.never().optional(),
1144
- query: z.object({
1145
- start_date: z.string(),
1146
- end_date: z.string()
1147
- })
1478
+ export const zGetTokenPath = z.object({
1479
+ token_id: z.string()
1148
1480
  });
1149
1481
  /**
1150
- * An array of usage records.
1482
+ * Returns access token details with masked secret.
1151
1483
  */
1152
- export const zListInvoicesResponse = z.array(zInvoice);
1153
- export const zGetInvoiceData = z.object({
1154
- body: z.never().optional(),
1155
- path: z.object({
1156
- id: z.string()
1157
- }),
1158
- query: z.never().optional()
1484
+ export const zGetTokenResponse = zToken;
1485
+ export const zUpdateTokenBody = zTokenUpdateInput;
1486
+ export const zUpdateTokenPath = z.object({
1487
+ token_id: z.string()
1159
1488
  });
1160
1489
  /**
1161
- * Returns a single Invoice HTML representation under `html` property.
1490
+ * Successfully updated. Returns updated token details with masked secret.
1162
1491
  */
1163
- export const zGetInvoiceResponse = z.object({
1164
- html: z.string().optional()
1492
+ export const zUpdateTokenResponse = zToken;
1493
+ export const zRegenerateTokenPath = z.object({
1494
+ token_id: z.string()
1165
1495
  });
1166
- export const zGetContactData = z.object({
1167
- body: z.never().optional(),
1168
- path: z.never().optional(),
1169
- query: z.never().optional()
1496
+ /**
1497
+ * Successfully updated. Returns updated token details with unmasked / raw secret.
1498
+ */
1499
+ export const zRegenerateTokenResponse = zToken;
1500
+ /**
1501
+ * Tickets for the organization.
1502
+ */
1503
+ export const zListTicketsResponse = zTicketListResponse;
1504
+ export const zCreateTicketBody = z.object({
1505
+ payload: z.string().optional(),
1506
+ attachments: z.array(z.string()).optional()
1170
1507
  });
1171
1508
  /**
1172
- * Returns a single object containing organization contact and billing address details.
1509
+ * Ticket created.
1173
1510
  */
1174
- export const zGetContactResponse = zBillingContact;
1175
- export const zUpdateContactData = z.object({
1176
- body: zBillingContact,
1177
- path: z.never().optional(),
1178
- query: z.never().optional()
1511
+ export const zCreateTicketResponse = zTicket;
1512
+ export const zCloseTicketPath = z.object({
1513
+ ticket_id: z.string()
1179
1514
  });
1180
1515
  /**
1181
- * Successfully updated. Returns updated organization details.
1516
+ * Ticket closed.
1182
1517
  */
1183
- export const zUpdateContactResponse = zBillingContact;
1184
- export const zGetCreditsData = z.object({
1185
- body: z.never().optional(),
1186
- path: z.never().optional(),
1187
- query: z.never().optional()
1518
+ export const zCloseTicketResponse = zTicket;
1519
+ export const zGetTicketPath = z.object({
1520
+ ticket_id: z.string()
1188
1521
  });
1189
1522
  /**
1190
- * An array of the applied promotional credits records.
1523
+ * Ticket with messages (internal notes excluded).
1191
1524
  */
1192
- export const zGetCreditsResponse = z.array(zBillingCredits);
1193
- export const zRedeemCreditsData = z.object({
1194
- body: z.object({
1195
- code: z.string().optional()
1196
- }),
1197
- path: z.never().optional(),
1198
- query: z.never().optional()
1525
+ export const zGetTicketResponse = zTicket;
1526
+ export const zReplyTicketBody = z.object({
1527
+ payload: z.string().optional(),
1528
+ attachments: z.array(z.string()).optional()
1199
1529
  });
1200
- export const zListChartsData = z.object({
1201
- body: z.never().optional(),
1202
- path: z.object({
1203
- cluster_id: z.string()
1204
- }),
1205
- query: z.never().optional()
1530
+ export const zReplyTicketPath = z.object({
1531
+ ticket_id: z.string()
1206
1532
  });
1207
1533
  /**
1208
- * An array of charts
1534
+ * Reply appended.
1209
1535
  */
1210
- export const zListChartsResponse = z.array(zChart);
1211
- export const zCreateChartData = z.object({
1212
- body: zChartCreateInput,
1213
- path: z.object({
1214
- cluster_id: z.string()
1215
- }),
1216
- query: z.never().optional()
1536
+ export const zReplyTicketResponse = zTicketMessage;
1537
+ export const zGetTicketAttachmentPath = z.object({
1538
+ ticket_id: z.string(),
1539
+ attachment_id: z.string()
1217
1540
  });
1218
1541
  /**
1219
- * Successfully created. Returns created Chart ID.
1542
+ * Attachment binary stream.
1220
1543
  */
1221
- export const zCreateChartResponse = z.string();
1222
- export const zDeleteChartData = z.object({
1223
- body: z.never().optional(),
1224
- path: z.object({
1225
- cluster_id: z.string(),
1226
- chart_name: z.string()
1227
- }),
1228
- query: z.never().optional()
1544
+ export const zGetTicketAttachmentResponse = z.string();
1545
+ /**
1546
+ * List of repositories
1547
+ */
1548
+ export const zListRepositoriesResponse = z.array(zRegistryRepository);
1549
+ export const zListTagsPath = z.object({
1550
+ region: z.string(),
1551
+ repository: z.string()
1229
1552
  });
1230
1553
  /**
1231
- * Successfully deleted.
1554
+ * Repository with tags
1232
1555
  */
1233
- export const zDeleteChartResponse = z.string();
1234
- export const zGetChartData = z.object({
1235
- body: z.never().optional(),
1236
- path: z.object({
1237
- cluster_id: z.string(),
1238
- chart_name: z.string()
1239
- }),
1240
- query: z.never().optional()
1556
+ export const zListTagsResponse = zRegistryRepositoryWithTags;
1557
+ export const zDeleteTagPath = z.object({
1558
+ region: z.string(),
1559
+ repository: z.string(),
1560
+ tag: z.string()
1561
+ });
1562
+ export const zGetTagPath = z.object({
1563
+ region: z.string(),
1564
+ repository: z.string(),
1565
+ tag: z.string()
1241
1566
  });
1242
1567
  /**
1243
- * Returns a single object containing chart details.
1568
+ * Tag details
1244
1569
  */
1245
- export const zGetChartResponse = zChart;
1246
- export const zUpdateChartData = z.object({
1247
- body: zChartUpdateInput,
1248
- path: z.object({
1249
- cluster_id: z.string(),
1250
- chart_name: z.string()
1251
- }),
1252
- query: z.never().optional()
1570
+ export const zGetTagResponse = zRegistryTag;
1571
+ /**
1572
+ * Returns a single object containing organization details.
1573
+ */
1574
+ export const zGetOrganizationResponse = zOrganization;
1575
+ export const zCreateOrganizationBody = zOrganizationCreateInput;
1576
+ /**
1577
+ * Organization signup accepted. Returns the generated organization id immediately; provisioning (billing, Keycloak realm, user) continues asynchronously in the background.
1578
+ *
1579
+ */
1580
+ export const zCreateOrganizationResponse = zOrganizationCreateOutput;
1581
+ /**
1582
+ * JSON-RPC 2.0 request payload
1583
+ */
1584
+ export const zPostMcpBody = z.object({
1585
+ jsonrpc: z.string().optional(),
1586
+ method: z.string().optional(),
1587
+ id: z.union([
1588
+ z.string(),
1589
+ z.number()
1590
+ ]).optional(),
1591
+ params: z.record(z.string(), z.unknown()).optional()
1253
1592
  });
1254
1593
  /**
1255
- * Successfully updated.
1594
+ * JSON-RPC 2.0 success or error response
1256
1595
  */
1257
- export const zUpdateChartResponse = z.string();
1258
- export const zListFleetsData = z.object({
1259
- body: z.never().optional(),
1260
- path: z.object({
1261
- cluster_id: z.string()
1262
- }),
1263
- query: z.never().optional()
1596
+ export const zPostMcpResponse = z.object({
1597
+ jsonrpc: z.string().optional(),
1598
+ id: z.union([
1599
+ z.string(),
1600
+ z.number()
1601
+ ]).optional(),
1602
+ result: z.record(z.string(), z.unknown()).optional(),
1603
+ error: z.object({
1604
+ code: z.int().optional(),
1605
+ message: z.string().optional()
1606
+ }).optional()
1607
+ });
1608
+ /**
1609
+ * An array of chart listings in the marketplace.
1610
+ */
1611
+ export const zListMarketplaceChartsResponse = z.array(zMarketplaceListing);
1612
+ export const zGetMarketplaceChartFilesPath = z.object({
1613
+ chart_name: z.string(),
1614
+ version_channel: z.string()
1615
+ });
1616
+ /**
1617
+ * Returns an object containing the chart files for the latest matching version.
1618
+ */
1619
+ export const zGetMarketplaceChartFilesResponse = zMarketplaceListingFiles;
1620
+ /**
1621
+ * An array of invites
1622
+ */
1623
+ export const zListInvitesResponse = z.array(zInvite);
1624
+ export const zCreateInviteBody = zInviteCreateInput;
1625
+ /**
1626
+ * Successfully created. Returns created invite details.
1627
+ */
1628
+ export const zCreateInviteResponse = zInvite;
1629
+ export const zGetInvitePath = z.object({
1630
+ code: z.string()
1631
+ });
1632
+ /**
1633
+ * The invitation code is valid. Returns the invited email and organization.
1634
+ */
1635
+ export const zGetInviteResponse = z.object({
1636
+ email: z.email().optional(),
1637
+ organization_id: z.string().optional()
1638
+ });
1639
+ export const zDeleteInvitePath = z.object({
1640
+ email: z.email()
1641
+ });
1642
+ export const zQueryClusterPath = z.object({
1643
+ cluster_id: z.string()
1644
+ });
1645
+ export const zListFleetsPath = z.object({
1646
+ cluster_id: z.string()
1264
1647
  });
1265
1648
  /**
1266
1649
  * An array of fleets
1267
1650
  */
1268
1651
  export const zListFleetsResponse = z.array(zFleet);
1269
- export const zCreateFleetData = z.object({
1270
- body: zFleetCreateInput,
1271
- path: z.object({
1272
- cluster_id: z.string()
1273
- }),
1274
- query: z.never().optional()
1652
+ export const zCreateFleetBody = zFleetCreateInput;
1653
+ export const zCreateFleetPath = z.object({
1654
+ cluster_id: z.string()
1275
1655
  });
1276
1656
  /**
1277
1657
  * Successfully created. Returns created Fleet ID.
1278
1658
  */
1279
1659
  export const zCreateFleetResponse = z.string();
1280
- export const zDeleteFleetData = z.object({
1281
- body: z.never().optional(),
1282
- path: z.object({
1283
- cluster_id: z.string(),
1284
- fleet_name: z.string()
1285
- }),
1286
- query: z.never().optional()
1660
+ export const zDeleteFleetPath = z.object({
1661
+ cluster_id: z.string(),
1662
+ fleet_name: z.string()
1287
1663
  });
1288
1664
  /**
1289
1665
  * Successfully deleted.
1290
1666
  */
1291
1667
  export const zDeleteFleetResponse = z.string();
1292
- export const zGetFleetData = z.object({
1293
- body: z.never().optional(),
1294
- path: z.object({
1295
- cluster_id: z.string(),
1296
- fleet_name: z.string()
1297
- }),
1298
- query: z.never().optional()
1668
+ export const zGetFleetPath = z.object({
1669
+ cluster_id: z.string(),
1670
+ fleet_name: z.string()
1299
1671
  });
1300
1672
  /**
1301
1673
  * Returns a single object containing fleet details.
1302
1674
  */
1303
1675
  export const zGetFleetResponse = zFleet;
1304
- export const zUpdateFleetData = z.object({
1305
- body: zFleetUpdateInput,
1306
- path: z.object({
1307
- cluster_id: z.string(),
1308
- fleet_name: z.string()
1309
- }),
1310
- query: z.never().optional()
1676
+ export const zUpdateFleetBody = zFleetUpdateInput;
1677
+ export const zUpdateFleetPath = z.object({
1678
+ cluster_id: z.string(),
1679
+ fleet_name: z.string()
1311
1680
  });
1312
1681
  /**
1313
1682
  * Successfully updated.
1314
1683
  */
1315
1684
  export const zUpdateFleetResponse = z.string();
1316
- export const zQueryClusterData = z.object({
1317
- body: z.never().optional(),
1318
- path: z.object({
1319
- cluster_id: z.string()
1320
- }),
1321
- query: z.never().optional()
1322
- });
1323
- export const zListClustersData = z.object({
1324
- body: z.never().optional(),
1325
- path: z.never().optional(),
1326
- query: z.never().optional()
1685
+ export const zListChartsPath = z.object({
1686
+ cluster_id: z.string()
1327
1687
  });
1328
1688
  /**
1329
- * An array of clusters
1689
+ * An array of charts
1330
1690
  */
1331
- export const zListClustersResponse = z.array(zCluster);
1332
- export const zCreateClusterData = z.object({
1333
- body: zClusterCreateInput,
1334
- path: z.never().optional(),
1335
- query: z.never().optional()
1691
+ export const zListChartsResponse = z.array(zChart);
1692
+ export const zCreateChartBody = zChartCreateInput;
1693
+ export const zCreateChartPath = z.object({
1694
+ cluster_id: z.string()
1336
1695
  });
1337
1696
  /**
1338
- * Successfully created. Returns created Cluster ID.
1697
+ * Successfully created. Returns created Chart ID.
1339
1698
  */
1340
- export const zCreateClusterResponse = z.string();
1341
- export const zDeleteClusterData = z.object({
1342
- body: z.never().optional(),
1343
- path: z.object({
1344
- cluster_id: z.string()
1345
- }),
1346
- query: z.never().optional()
1699
+ export const zCreateChartResponse = z.string();
1700
+ export const zDeleteChartPath = z.object({
1701
+ cluster_id: z.string(),
1702
+ chart_name: z.string()
1347
1703
  });
1348
1704
  /**
1349
1705
  * Successfully deleted.
1350
1706
  */
1351
- export const zDeleteClusterResponse = z.string();
1352
- export const zGetClusterData = z.object({
1353
- body: z.never().optional(),
1354
- path: z.object({
1355
- cluster_id: z.string()
1356
- }),
1357
- query: z.never().optional()
1358
- });
1359
- /**
1360
- * Returns a single object containing cluster details.
1361
- */
1362
- export const zGetClusterResponse = zCluster;
1363
- export const zUpdateClusterData = z.object({
1364
- body: zClusterUpdateInput,
1365
- path: z.object({
1366
- cluster_id: z.string()
1367
- }),
1368
- query: z.never().optional()
1369
- });
1370
- /**
1371
- * Successfully updated. Returns updated cluster details.
1372
- */
1373
- export const zUpdateClusterResponse = zCluster;
1374
- export const zGetJoinInformationData = z.object({
1375
- body: z.never().optional(),
1376
- path: z.object({
1377
- cluster_id: z.string()
1378
- }),
1379
- query: z.never().optional()
1707
+ export const zDeleteChartResponse = z.string();
1708
+ export const zGetChartPath = z.object({
1709
+ cluster_id: z.string(),
1710
+ chart_name: z.string()
1380
1711
  });
1381
1712
  /**
1382
- * An object of cluster join information
1713
+ * Returns a single object containing chart details.
1383
1714
  */
1384
- export const zGetJoinInformationResponse = zCluster;
1385
- export const zListInvitesData = z.object({
1386
- body: z.never().optional(),
1387
- path: z.never().optional(),
1388
- query: z.never().optional()
1715
+ export const zGetChartResponse = zChart;
1716
+ export const zUpdateChartBody = zChartUpdateInput;
1717
+ export const zUpdateChartPath = z.object({
1718
+ cluster_id: z.string(),
1719
+ chart_name: z.string()
1389
1720
  });
1390
1721
  /**
1391
- * An array of invites
1722
+ * Successfully updated.
1392
1723
  */
1393
- export const zListInvitesResponse = z.array(zInvite);
1394
- export const zCreateInviteData = z.object({
1395
- body: z.object({
1396
- email: z.string().optional()
1397
- }),
1398
- path: z.never().optional(),
1399
- query: z.never().optional()
1400
- });
1724
+ export const zUpdateChartResponse = z.string();
1401
1725
  /**
1402
- * Successfully created. Returns created invite details.
1726
+ * An array of clusters
1403
1727
  */
1404
- export const zCreateInviteResponse = zInvite;
1405
- export const zGetInviteData = z.object({
1406
- body: z.never().optional(),
1407
- path: z.object({
1408
- code: z.string()
1409
- }),
1410
- query: z.never().optional()
1411
- });
1728
+ export const zListClustersResponse = z.array(zCluster);
1729
+ export const zCreateClusterBody = zClusterCreateInput;
1412
1730
  /**
1413
- * Returns a single object containing invite details.
1731
+ * Successfully created. Returns created Cluster ID.
1414
1732
  */
1415
- export const zGetInviteResponse = zInvite;
1416
- export const zDeleteInviteData = z.object({
1417
- body: z.never().optional(),
1418
- path: z.object({
1419
- email: z.string()
1420
- }),
1421
- query: z.never().optional()
1422
- });
1423
- export const zListMarketplaceChartsData = z.object({
1424
- body: z.never().optional(),
1425
- path: z.never().optional(),
1426
- query: z.never().optional()
1733
+ export const zCreateClusterResponse = z.string();
1734
+ export const zDeleteClusterPath = z.object({
1735
+ cluster_id: z.string()
1427
1736
  });
1428
1737
  /**
1429
- * An array of chart listings in the marketplace.
1738
+ * Successfully deleted. The cluster has been torn down.
1430
1739
  */
1431
- export const zListMarketplaceChartsResponse = z.array(zMarketplaceListing);
1432
- export const zGetMarketplaceChartData = z.object({
1433
- body: z.never().optional(),
1434
- path: z.object({
1435
- listing_id: z.string()
1436
- }),
1437
- query: z.never().optional()
1740
+ export const zDeleteClusterResponse = z.string();
1741
+ export const zGetClusterPath = z.object({
1742
+ cluster_id: z.string()
1438
1743
  });
1439
1744
  /**
1440
- * Returns an object containing the chart listing details.
1745
+ * Returns a single object containing cluster details.
1441
1746
  */
1442
- export const zGetMarketplaceChartResponse = zMarketplaceListing;
1443
- export const zGetOrganizationData = z.object({
1444
- body: z.never().optional(),
1445
- path: z.never().optional(),
1446
- query: z.never().optional()
1747
+ export const zGetClusterResponse = zCluster;
1748
+ export const zUpdateClusterBody = zClusterUpdateInput;
1749
+ export const zUpdateClusterPath = z.object({
1750
+ cluster_id: z.string()
1447
1751
  });
1448
1752
  /**
1449
- * Returns a single object containing organization details.
1753
+ * Successfully updated. Returns updated cluster details.
1450
1754
  */
1451
- export const zGetOrganizationResponse = zOrganization;
1452
- export const zCreateOrganizationData = z.object({
1453
- body: zOrganizationCreateInput,
1454
- path: z.never().optional(),
1455
- query: z.never().optional()
1456
- });
1457
- export const zListTokensData = z.object({
1458
- body: z.never().optional(),
1459
- path: z.never().optional(),
1460
- query: z.never().optional()
1755
+ export const zUpdateClusterResponse = zCluster;
1756
+ export const zGetJoinInformationPath = z.object({
1757
+ cluster_id: z.string()
1461
1758
  });
1462
1759
  /**
1463
- * Returns a list of access token details with masked secrets.
1760
+ * An object of cluster join information
1464
1761
  */
1465
- export const zListTokensResponse = z.array(zToken);
1466
- export const zCreateTokenData = z.object({
1467
- body: zTokenCreateInput,
1468
- path: z.never().optional(),
1469
- query: z.never().optional()
1762
+ export const zGetJoinInformationResponse = zClusterJoinInformation;
1763
+ export const zGetUsageQuery = z.object({
1764
+ granularity: z.enum([
1765
+ 'hourly',
1766
+ 'daily',
1767
+ 'monthly'
1768
+ ]).optional().default('daily')
1470
1769
  });
1471
1770
  /**
1472
- * Successfully created. Returns created token details with unmasked/raw secret.
1771
+ * Usage data with facets for filtering
1473
1772
  */
1474
- export const zCreateTokenResponse = zToken;
1475
- export const zDeleteTokenData = z.object({
1476
- body: z.never().optional(),
1477
- path: z.object({
1478
- token_id: z.string()
1479
- }),
1480
- query: z.never().optional()
1481
- });
1482
- export const zGetTokenData = z.object({
1483
- body: z.never().optional(),
1484
- path: z.object({
1485
- token_id: z.string()
1486
- }),
1487
- query: z.never().optional()
1488
- });
1773
+ export const zGetUsageResponse = zUsageResponse;
1489
1774
  /**
1490
- * Returns access token details with masked secret.
1775
+ * 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.
1776
+ *
1491
1777
  */
1492
- export const zGetTokenResponse = zToken;
1493
- export const zUpdateTokenData = z.object({
1494
- body: zTokenUpdateInput,
1495
- path: z.object({
1496
- token_id: z.string()
1497
- }),
1498
- query: z.never().optional()
1778
+ export const zGetPaymentMethodSecretResponse = z.object({
1779
+ id: z.string().optional()
1499
1780
  });
1500
1781
  /**
1501
- * Successfully updated. Returns updated token details with masked secret.
1782
+ * An array of payment methods.
1502
1783
  */
1503
- export const zUpdateTokenResponse = zToken;
1504
- export const zRegenerateTokenData = z.object({
1505
- body: z.never().optional(),
1506
- path: z.object({
1507
- token_id: z.string()
1508
- }),
1509
- query: z.never().optional()
1784
+ export const zListPaymentMethodsResponse = z.array(zPaymentMethod);
1785
+ export const zSetDefaultPaymentMethodPath = z.object({
1786
+ paymentMethodId: z.string()
1510
1787
  });
1511
1788
  /**
1512
- * Successfully updated. Returns updated token details with unmasked / raw secret.
1789
+ * Default payment method updated.
1513
1790
  */
1514
- export const zRegenerateTokenResponse = zToken;
1515
- export const zListUserOrganizationsData = z.object({
1516
- body: z.never().optional(),
1517
- path: z.object({
1518
- email: z.string()
1519
- }),
1520
- query: z.never().optional()
1791
+ export const zSetDefaultPaymentMethodResponse = z.void();
1792
+ export const zDeletePaymentMethodPath = z.object({
1793
+ paymentMethodId: z.string()
1521
1794
  });
1522
1795
  /**
1523
- * An array of organizations the user belongs to.
1796
+ * Payment method deleted.
1524
1797
  */
1525
- export const zListUserOrganizationsResponse = z.array(z.object({
1526
- realm: z.string().optional(),
1527
- displayName: z.string().optional()
1528
- }));
1529
- export const zListUsersData = z.object({
1530
- body: z.never().optional(),
1531
- path: z.never().optional(),
1532
- query: z.never().optional()
1533
- });
1798
+ export const zDeletePaymentMethodResponse = z.void();
1534
1799
  /**
1535
- * An array of users
1800
+ * An array of usage records.
1536
1801
  */
1537
- export const zListUsersResponse = z.array(zUser);
1538
- export const zCreateUserData = z.object({
1539
- body: zUserCreateInput,
1540
- path: z.never().optional(),
1541
- query: z.never().optional()
1542
- });
1802
+ export const zListInvoicesResponse = z.array(zInvoice);
1543
1803
  /**
1544
- * Successfully created. Returns created user details.
1804
+ * Returns a single object containing organization contact and billing address details.
1545
1805
  */
1546
- export const zCreateUserResponse = zUser;
1547
- export const zDeleteUserData = z.object({
1548
- body: z.never().optional(),
1549
- path: z.object({
1550
- user_id: z.string()
1551
- }),
1552
- query: z.never().optional()
1553
- });
1806
+ export const zGetContactResponse = zBillingContact;
1807
+ export const zUpdateContactBody = zBillingContact;
1554
1808
  /**
1555
- * User profile information
1809
+ * Successfully updated. Returns updated organization details.
1556
1810
  */
1557
- export const zDeleteUserResponse = zUser;
1558
- export const zGetUserData = z.object({
1559
- body: z.never().optional(),
1560
- path: z.object({
1561
- user_id: z.string()
1562
- }),
1563
- query: z.never().optional()
1564
- });
1811
+ export const zUpdateContactResponse = zBillingContact;
1565
1812
  /**
1566
- * User profile information
1813
+ * An array of the applied promotional credits records.
1567
1814
  */
1568
- export const zGetUserResponse = zUser;
1569
- export const zUpdateUserData = z.object({
1570
- body: zUserUpdateInput,
1571
- path: z.object({
1572
- user_id: z.string()
1573
- }),
1574
- query: z.never().optional()
1815
+ export const zGetCreditsResponse = z.array(zBillingCredits);
1816
+ export const zRedeemCreditsBody = z.object({
1817
+ code: z.string().optional()
1575
1818
  });
1576
- /**
1577
- * Successfully created. Returns created user details.
1578
- */
1579
- export const zUpdateUserResponse = zUser;
1580
1819
  //# sourceMappingURL=zod.gen.js.map