@cloudfleet/sdk 0.0.1-a104fac → 0.0.1-a3d32c9

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.
package/dist/zod.gen.js CHANGED
@@ -1,6 +1,20 @@
1
1
  // This file is auto-generated by @hey-api/openapi-ts
2
2
  import * as z from 'zod';
3
+ export const zBasicPriceConsentInput = z.object({
4
+ decision: z.enum(['accepted', 'rejected'])
5
+ });
6
+ export const zBasicPriceConsent = z.object({
7
+ status: z.enum([
8
+ 'not_applicable',
9
+ 'pending',
10
+ 'accepted',
11
+ 'rejected'
12
+ ]),
13
+ decided_at: z.iso.datetime().optional(),
14
+ decided_by: z.string().optional()
15
+ });
3
16
  export const zBillingContact = z.object({
17
+ type: z.enum(['business', 'personal']),
4
18
  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
19
  address1: z.string().optional(),
6
20
  address2: z.string().optional(),
@@ -166,22 +180,7 @@ export const zChart = z.object({
166
180
  name: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
167
181
  namespace: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
168
182
  chart: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
169
- status: z.enum([
170
- 'InstallSucceeded',
171
- 'InstallFailed',
172
- 'UpgradeSucceeded',
173
- 'UpgradeFailed',
174
- 'TestSucceeded',
175
- 'TestFailed',
176
- 'RollbackSucceeded',
177
- 'RollbackFailed',
178
- 'UninstallSucceeded',
179
- 'UninstallFailed',
180
- 'ArtifactFailed',
181
- 'DependencyNotReady',
182
- 'Progressing',
183
- 'SourceNotReady'
184
- ]),
183
+ status: z.string(),
185
184
  version_current: z.string(),
186
185
  created_at: z.string(),
187
186
  updated_at: z.string(),
@@ -191,27 +190,57 @@ export const zChartUpdateInput = z.object({
191
190
  values: z.string(),
192
191
  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-]+)*))?$/)
193
192
  });
193
+ /**
194
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
195
+ */
194
196
  export const zClusterCreateInput = z.object({
195
197
  name: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
196
- tier: z.enum(['basic', 'pro']),
197
- region: z.enum([
198
- 'staging-1a',
199
- 'northamerica-central-1',
200
- 'europe-central-1a',
201
- 'northamerica-central-1a'
202
- ]).optional().default('staging-1a'),
203
- version_channel: z.enum([
204
- '1.x.x-cfke.x',
205
- '1.31.x-cfke.x',
206
- '1.32.x-cfke.x',
207
- '1.33.x-cfke.x'
208
- ]).optional().default('1.x.x-cfke.x')
198
+ tier: z.enum([
199
+ 'basic',
200
+ 'pro',
201
+ 'enterprise'
202
+ ]).optional().default('basic'),
203
+ 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'),
204
+ release_channel: z.enum([
205
+ 'rapid',
206
+ 'stable',
207
+ 'extended'
208
+ ]).optional().default('rapid'),
209
+ features: z.object({
210
+ gpu_sharing_strategy: z.enum([
211
+ 'none',
212
+ 'mps',
213
+ 'time_slicing'
214
+ ]).optional().default('none'),
215
+ gpu_max_shared_clients_per_gpu: z.int().gte(2).lte(48).optional().default(4),
216
+ cilium_socket_lb_host_namespace_only: z.boolean().optional()
217
+ }).optional().default({
218
+ gpu_sharing_strategy: 'none',
219
+ gpu_max_shared_clients_per_gpu: 4,
220
+ cilium_socket_lb_host_namespace_only: false
221
+ }),
222
+ region: z.string(),
223
+ networking: z.object({
224
+ pod_cidr: z.string().optional().default('10.244.0.0/16'),
225
+ service_cidr: z.string().optional().default('10.96.0.0/12'),
226
+ dual_stack: z.boolean().optional(),
227
+ pod_cidr_v6: z.string().optional().default('2001:db8:1:2::/48'),
228
+ service_cidr_v6: z.string().optional().default('2001:db8:1:1::/112')
229
+ }).optional().default({
230
+ pod_cidr: '10.244.0.0/16',
231
+ service_cidr: '10.96.0.0/12',
232
+ dual_stack: false,
233
+ pod_cidr_v6: '2001:db8:1:2::/48',
234
+ service_cidr_v6: '2001:db8:1:1::/112'
235
+ })
209
236
  });
210
237
  export const zClusterJoinInformation = z.object({
211
238
  certificate_authority: z.string(),
212
239
  endpoint: z.url(),
213
240
  cluster_dns: z.string(),
241
+ pod_cidr: z.string(),
214
242
  auth_key: z.string(),
243
+ login_server: z.string(),
215
244
  bootstrap_token: z.string(),
216
245
  versions: z.object({
217
246
  kubernetes: z.string(),
@@ -225,100 +254,885 @@ export const zClusterJoinInformation = z.object({
225
254
  gcp_workload_identity_provider: z.string()
226
255
  })
227
256
  });
257
+ /**
258
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
259
+ */
228
260
  export const zCluster = z.object({
229
261
  name: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
230
- tier: z.enum(['basic', 'pro']),
231
- region: z.enum([
232
- 'staging-1a',
233
- 'northamerica-central-1',
234
- 'europe-central-1a',
235
- 'northamerica-central-1a'
236
- ]).optional().default('staging-1a'),
262
+ tier: z.enum([
263
+ 'basic',
264
+ 'pro',
265
+ 'enterprise'
266
+ ]).default('basic'),
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-]+)*))?$/).default('1.x.x-cfke.x'),
268
+ release_channel: z.enum([
269
+ 'rapid',
270
+ 'stable',
271
+ 'extended'
272
+ ]).default('rapid'),
273
+ features: z.object({
274
+ gpu_sharing_strategy: z.enum([
275
+ 'none',
276
+ 'mps',
277
+ 'time_slicing'
278
+ ]).default('none'),
279
+ gpu_max_shared_clients_per_gpu: z.int().gte(2).lte(48).default(4),
280
+ cilium_socket_lb_host_namespace_only: z.boolean()
281
+ }).default({
282
+ gpu_sharing_strategy: 'none',
283
+ gpu_max_shared_clients_per_gpu: 4,
284
+ cilium_socket_lb_host_namespace_only: false
285
+ }),
286
+ region: z.string(),
287
+ networking: z.object({
288
+ pod_cidr: z.string().default('10.244.0.0/16'),
289
+ service_cidr: z.string().default('10.96.0.0/12'),
290
+ dual_stack: z.boolean(),
291
+ pod_cidr_v6: z.string().default('2001:db8:1:2::/48'),
292
+ service_cidr_v6: z.string().default('2001:db8:1:1::/112')
293
+ }).default({
294
+ pod_cidr: '10.244.0.0/16',
295
+ service_cidr: '10.96.0.0/12',
296
+ dual_stack: false,
297
+ pod_cidr_v6: '2001:db8:1:2::/48',
298
+ service_cidr_v6: '2001:db8:1:1::/112'
299
+ }),
237
300
  id: z.uuid(),
238
301
  status: z.enum([
239
- 'active',
240
- 'disabled',
241
- 'deleted',
242
302
  'creating',
243
303
  'deployed',
244
- 'failed',
245
- 'updating'
304
+ 'updating',
305
+ 'disabled'
246
306
  ]),
247
307
  endpoint: z.union([
248
308
  z.url(),
249
309
  z.enum([''])
250
310
  ]).optional(),
311
+ endpoint_public: z.union([
312
+ z.url(),
313
+ z.enum([''])
314
+ ]).optional(),
251
315
  certificate_ca: z.string().optional(),
252
316
  version_current: z.string().optional(),
253
317
  created_at: z.string().optional(),
254
318
  updated_at: z.string().optional(),
255
- ready: z.boolean().optional(),
256
- 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()
319
+ ready: z.boolean()
257
320
  });
321
+ /**
322
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
323
+ */
258
324
  export const zClusterUpdateInput = z.object({
259
- name: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/).optional(),
260
- tier: z.enum(['basic', 'pro']),
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()
325
+ name: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
326
+ tier: z.enum([
327
+ 'basic',
328
+ 'pro',
329
+ 'enterprise'
330
+ ]).optional().default('basic'),
331
+ 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'),
332
+ release_channel: z.enum([
333
+ 'rapid',
334
+ 'stable',
335
+ 'extended'
336
+ ]).optional().default('rapid'),
337
+ features: z.object({
338
+ gpu_sharing_strategy: z.enum([
339
+ 'none',
340
+ 'mps',
341
+ 'time_slicing'
342
+ ]).optional().default('none'),
343
+ gpu_max_shared_clients_per_gpu: z.int().gte(2).lte(48).optional().default(4),
344
+ cilium_socket_lb_host_namespace_only: z.boolean().optional()
345
+ }).optional().default({
346
+ gpu_sharing_strategy: 'none',
347
+ gpu_max_shared_clients_per_gpu: 4,
348
+ cilium_socket_lb_host_namespace_only: false
349
+ })
262
350
  });
351
+ /**
352
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
353
+ */
263
354
  export const zFleetCreateInput = z.object({
264
355
  limits: z.object({
265
- cpu: z.number().gte(0)
356
+ cpu: z.int().gte(0).lte(100000).optional()
266
357
  }).optional(),
267
358
  gcp: z.object({
268
- enabled: z.boolean().optional().default(true),
269
- project: z.string()
359
+ enabled: z.boolean(),
360
+ project: z.string().regex(/^[a-z][a-z0-9-]{4,28}[a-z0-9]$/).optional()
270
361
  }).optional(),
271
362
  hetzner: z.object({
272
- enabled: z.boolean().optional().default(true),
273
- apiKey: z.string()
363
+ enabled: z.boolean(),
364
+ apiKey: z.string().length(64).regex(/^([A-Za-z0-9]{64}|\*{64})$/).optional()
274
365
  }).optional(),
275
366
  aws: z.object({
276
- enabled: z.boolean().optional().default(true),
277
- controllerRoleArn: z.string()
367
+ enabled: z.boolean(),
368
+ controllerRoleArn: z.string().regex(/^arn:aws(-[a-z]+)*:iam::\d{12}:role\/[\w+=,.@\/-]+$/).optional()
278
369
  }).optional(),
370
+ constraints: z.object({
371
+ 'karpenter.sh/capacity-type': z.array(z.enum(['on-demand', 'spot'])).min(1).optional().default(['on-demand', 'spot']),
372
+ 'kubernetes.io/arch': z.array(z.enum(['amd64', 'arm64'])).min(1).optional().default(['amd64']),
373
+ 'cfke.io/instance-family': z.array(z.enum([
374
+ 'a1',
375
+ 'a2',
376
+ 'a3',
377
+ 'a4',
378
+ 'c1',
379
+ 'c2',
380
+ 'c2d',
381
+ 'c3',
382
+ 'c3d',
383
+ 'c4',
384
+ 'c4a',
385
+ 'c4d',
386
+ 'c5',
387
+ 'c5a',
388
+ 'c5ad',
389
+ 'c5d',
390
+ 'c5n',
391
+ 'c6a',
392
+ 'c6g',
393
+ 'c6gd',
394
+ 'c6gn',
395
+ 'c6i',
396
+ 'c6id',
397
+ 'c6in',
398
+ 'c7a',
399
+ 'c7g',
400
+ 'c7gd',
401
+ 'c7gn',
402
+ 'c7i',
403
+ 'c7i-flex',
404
+ 'c8g',
405
+ 'c8gd',
406
+ 'cax',
407
+ 'ccx',
408
+ 'cpx',
409
+ 'cx',
410
+ 'd2',
411
+ 'd3',
412
+ 'd3en',
413
+ 'dl1',
414
+ 'dl2q',
415
+ 'e2',
416
+ 'f1',
417
+ 'f2',
418
+ 'g1',
419
+ 'g2',
420
+ 'g4ad',
421
+ 'g4dn',
422
+ 'g5',
423
+ 'g5g',
424
+ 'g6',
425
+ 'g6e',
426
+ 'gr6',
427
+ 'h1',
428
+ 'h3',
429
+ 'hpc6a',
430
+ 'hpc6id',
431
+ 'hpc7a',
432
+ 'hpc7g',
433
+ 'i2',
434
+ 'i3',
435
+ 'i3en',
436
+ 'i4g',
437
+ 'i4i',
438
+ 'i7i',
439
+ 'i7ie',
440
+ 'i8g',
441
+ 'im4gn',
442
+ 'inf1',
443
+ 'inf2',
444
+ 'is4gen',
445
+ 'm1',
446
+ 'm2',
447
+ 'm3',
448
+ 'm4',
449
+ 'm5',
450
+ 'm5a',
451
+ 'm5ad',
452
+ 'm5d',
453
+ 'm5dn',
454
+ 'm5n',
455
+ 'm5zn',
456
+ 'm6a',
457
+ 'm6g',
458
+ 'm6gd',
459
+ 'm6i',
460
+ 'm6id',
461
+ 'm6idn',
462
+ 'm6in',
463
+ 'm7a',
464
+ 'm7g',
465
+ 'm7gd',
466
+ 'm7i',
467
+ 'm7i-flex',
468
+ 'm8g',
469
+ 'm8gd',
470
+ 'n1',
471
+ 'n2',
472
+ 'n2d',
473
+ 'n4',
474
+ 'p3',
475
+ 'p3dn',
476
+ 'p4d',
477
+ 'p4de',
478
+ 'p5',
479
+ 'p5e',
480
+ 'p5en',
481
+ 'p6-b200',
482
+ 'r3',
483
+ 'r4',
484
+ 'r5',
485
+ 'r5a',
486
+ 'r5ad',
487
+ 'r5b',
488
+ 'r5d',
489
+ 'r5dn',
490
+ 'r5n',
491
+ 'r6a',
492
+ 'r6g',
493
+ 'r6gd',
494
+ 'r6i',
495
+ 'r6id',
496
+ 'r6idn',
497
+ 'r6in',
498
+ 'r7a',
499
+ 'r7g',
500
+ 'r7gd',
501
+ 'r7i',
502
+ 'r7iz',
503
+ 'r8g',
504
+ 'r8gd',
505
+ 't2',
506
+ 't2a',
507
+ 't2d',
508
+ 't3',
509
+ 't3a',
510
+ 't4g',
511
+ 'trn1',
512
+ 'trn1n',
513
+ 'u-3tb1',
514
+ 'u-6tb1',
515
+ 'u7i-12tb',
516
+ 'u7i-6tb',
517
+ 'u7i-8tb',
518
+ 'u7in-16tb',
519
+ 'u7in-24tb',
520
+ 'u7in-32tb',
521
+ 'vt1',
522
+ 'x1',
523
+ 'x1e',
524
+ 'x2gd',
525
+ 'x2idn',
526
+ 'x2iedn',
527
+ 'x2iezn',
528
+ 'x4',
529
+ 'x8g',
530
+ 'z1d',
531
+ 'z3'
532
+ ])).optional().default([]),
533
+ 'topology.kubernetes.io/region': z.array(z.enum([
534
+ 'africa-south1',
535
+ 'ap-northeast-1',
536
+ 'ap-northeast-2',
537
+ 'ap-northeast-3',
538
+ 'ap-south-1',
539
+ 'ap-southeast-1',
540
+ 'ap-southeast-2',
541
+ 'ash',
542
+ 'asia-east1',
543
+ 'asia-east2',
544
+ 'asia-northeast1',
545
+ 'asia-northeast2',
546
+ 'asia-northeast3',
547
+ 'asia-south1',
548
+ 'asia-south2',
549
+ 'asia-southeast1',
550
+ 'asia-southeast2',
551
+ 'australia-southeast1',
552
+ 'australia-southeast2',
553
+ 'ca-central-1',
554
+ 'eu-central-1',
555
+ 'eu-central-2',
556
+ 'eu-north-1',
557
+ 'eu-west-1',
558
+ 'eu-west-2',
559
+ 'eu-west-3',
560
+ 'europe-central2',
561
+ 'europe-north1',
562
+ 'europe-southwest1',
563
+ 'europe-west1',
564
+ 'europe-west10',
565
+ 'europe-west12',
566
+ 'europe-west2',
567
+ 'europe-west3',
568
+ 'europe-west4',
569
+ 'europe-west6',
570
+ 'europe-west8',
571
+ 'europe-west9',
572
+ 'fsn1',
573
+ 'hel1',
574
+ 'hil',
575
+ 'me-central1',
576
+ 'me-central2',
577
+ 'me-west1',
578
+ 'nbg1',
579
+ 'northamerica-northeast1',
580
+ 'northamerica-northeast2',
581
+ 'sa-east-1',
582
+ 'sin',
583
+ 'southamerica-east1',
584
+ 'southamerica-west1',
585
+ 'us-central1',
586
+ 'us-east-1',
587
+ 'us-east-2',
588
+ 'us-east1',
589
+ 'us-east4',
590
+ 'us-east5',
591
+ 'us-south1',
592
+ 'us-west-1',
593
+ 'us-west-2',
594
+ 'us-west1',
595
+ 'us-west2',
596
+ 'us-west3',
597
+ 'us-west4'
598
+ ])).optional().default([])
599
+ }).optional().default({
600
+ 'karpenter.sh/capacity-type': ['on-demand', 'spot'],
601
+ 'kubernetes.io/arch': ['amd64'],
602
+ 'cfke.io/instance-family': [],
603
+ 'topology.kubernetes.io/region': []
604
+ }),
605
+ scalingProfile: z.enum(['aggressive', 'conservative']).optional().default('conservative'),
279
606
  id: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/)
280
607
  });
608
+ /**
609
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
610
+ */
281
611
  export const zFleet = z.object({
282
612
  limits: z.object({
283
- cpu: z.number().gte(0)
613
+ cpu: z.int().gte(0).lte(100000).optional()
284
614
  }).optional(),
285
615
  gcp: z.object({
286
- enabled: z.boolean().optional().default(true),
287
- project: z.string()
616
+ enabled: z.boolean(),
617
+ project: z.string().regex(/^[a-z][a-z0-9-]{4,28}[a-z0-9]$/).optional()
288
618
  }).optional(),
289
619
  hetzner: z.object({
290
- enabled: z.boolean().optional().default(true),
291
- apiKey: z.string()
620
+ enabled: z.boolean(),
621
+ apiKey: z.string().regex(/^\*{64}$/).optional()
292
622
  }).optional(),
293
623
  aws: z.object({
294
- enabled: z.boolean().optional().default(true),
295
- controllerRoleArn: z.string()
624
+ enabled: z.boolean(),
625
+ controllerRoleArn: z.string().regex(/^arn:aws(-[a-z]+)*:iam::\d{12}:role\/[\w+=,.@\/-]+$/).optional()
296
626
  }).optional(),
297
- id: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/)
627
+ constraints: z.object({
628
+ 'karpenter.sh/capacity-type': z.array(z.enum(['on-demand', 'spot'])).min(1).default(['on-demand', 'spot']),
629
+ 'kubernetes.io/arch': z.array(z.enum(['amd64', 'arm64'])).min(1).default(['amd64']),
630
+ 'cfke.io/instance-family': z.array(z.enum([
631
+ 'a1',
632
+ 'a2',
633
+ 'a3',
634
+ 'a4',
635
+ 'c1',
636
+ 'c2',
637
+ 'c2d',
638
+ 'c3',
639
+ 'c3d',
640
+ 'c4',
641
+ 'c4a',
642
+ 'c4d',
643
+ 'c5',
644
+ 'c5a',
645
+ 'c5ad',
646
+ 'c5d',
647
+ 'c5n',
648
+ 'c6a',
649
+ 'c6g',
650
+ 'c6gd',
651
+ 'c6gn',
652
+ 'c6i',
653
+ 'c6id',
654
+ 'c6in',
655
+ 'c7a',
656
+ 'c7g',
657
+ 'c7gd',
658
+ 'c7gn',
659
+ 'c7i',
660
+ 'c7i-flex',
661
+ 'c8g',
662
+ 'c8gd',
663
+ 'cax',
664
+ 'ccx',
665
+ 'cpx',
666
+ 'cx',
667
+ 'd2',
668
+ 'd3',
669
+ 'd3en',
670
+ 'dl1',
671
+ 'dl2q',
672
+ 'e2',
673
+ 'f1',
674
+ 'f2',
675
+ 'g1',
676
+ 'g2',
677
+ 'g4ad',
678
+ 'g4dn',
679
+ 'g5',
680
+ 'g5g',
681
+ 'g6',
682
+ 'g6e',
683
+ 'gr6',
684
+ 'h1',
685
+ 'h3',
686
+ 'hpc6a',
687
+ 'hpc6id',
688
+ 'hpc7a',
689
+ 'hpc7g',
690
+ 'i2',
691
+ 'i3',
692
+ 'i3en',
693
+ 'i4g',
694
+ 'i4i',
695
+ 'i7i',
696
+ 'i7ie',
697
+ 'i8g',
698
+ 'im4gn',
699
+ 'inf1',
700
+ 'inf2',
701
+ 'is4gen',
702
+ 'm1',
703
+ 'm2',
704
+ 'm3',
705
+ 'm4',
706
+ 'm5',
707
+ 'm5a',
708
+ 'm5ad',
709
+ 'm5d',
710
+ 'm5dn',
711
+ 'm5n',
712
+ 'm5zn',
713
+ 'm6a',
714
+ 'm6g',
715
+ 'm6gd',
716
+ 'm6i',
717
+ 'm6id',
718
+ 'm6idn',
719
+ 'm6in',
720
+ 'm7a',
721
+ 'm7g',
722
+ 'm7gd',
723
+ 'm7i',
724
+ 'm7i-flex',
725
+ 'm8g',
726
+ 'm8gd',
727
+ 'n1',
728
+ 'n2',
729
+ 'n2d',
730
+ 'n4',
731
+ 'p3',
732
+ 'p3dn',
733
+ 'p4d',
734
+ 'p4de',
735
+ 'p5',
736
+ 'p5e',
737
+ 'p5en',
738
+ 'p6-b200',
739
+ 'r3',
740
+ 'r4',
741
+ 'r5',
742
+ 'r5a',
743
+ 'r5ad',
744
+ 'r5b',
745
+ 'r5d',
746
+ 'r5dn',
747
+ 'r5n',
748
+ 'r6a',
749
+ 'r6g',
750
+ 'r6gd',
751
+ 'r6i',
752
+ 'r6id',
753
+ 'r6idn',
754
+ 'r6in',
755
+ 'r7a',
756
+ 'r7g',
757
+ 'r7gd',
758
+ 'r7i',
759
+ 'r7iz',
760
+ 'r8g',
761
+ 'r8gd',
762
+ 't2',
763
+ 't2a',
764
+ 't2d',
765
+ 't3',
766
+ 't3a',
767
+ 't4g',
768
+ 'trn1',
769
+ 'trn1n',
770
+ 'u-3tb1',
771
+ 'u-6tb1',
772
+ 'u7i-12tb',
773
+ 'u7i-6tb',
774
+ 'u7i-8tb',
775
+ 'u7in-16tb',
776
+ 'u7in-24tb',
777
+ 'u7in-32tb',
778
+ 'vt1',
779
+ 'x1',
780
+ 'x1e',
781
+ 'x2gd',
782
+ 'x2idn',
783
+ 'x2iedn',
784
+ 'x2iezn',
785
+ 'x4',
786
+ 'x8g',
787
+ 'z1d',
788
+ 'z3'
789
+ ])).optional().default([]),
790
+ 'topology.kubernetes.io/region': z.array(z.enum([
791
+ 'africa-south1',
792
+ 'ap-northeast-1',
793
+ 'ap-northeast-2',
794
+ 'ap-northeast-3',
795
+ 'ap-south-1',
796
+ 'ap-southeast-1',
797
+ 'ap-southeast-2',
798
+ 'ash',
799
+ 'asia-east1',
800
+ 'asia-east2',
801
+ 'asia-northeast1',
802
+ 'asia-northeast2',
803
+ 'asia-northeast3',
804
+ 'asia-south1',
805
+ 'asia-south2',
806
+ 'asia-southeast1',
807
+ 'asia-southeast2',
808
+ 'australia-southeast1',
809
+ 'australia-southeast2',
810
+ 'ca-central-1',
811
+ 'eu-central-1',
812
+ 'eu-central-2',
813
+ 'eu-north-1',
814
+ 'eu-west-1',
815
+ 'eu-west-2',
816
+ 'eu-west-3',
817
+ 'europe-central2',
818
+ 'europe-north1',
819
+ 'europe-southwest1',
820
+ 'europe-west1',
821
+ 'europe-west10',
822
+ 'europe-west12',
823
+ 'europe-west2',
824
+ 'europe-west3',
825
+ 'europe-west4',
826
+ 'europe-west6',
827
+ 'europe-west8',
828
+ 'europe-west9',
829
+ 'fsn1',
830
+ 'hel1',
831
+ 'hil',
832
+ 'me-central1',
833
+ 'me-central2',
834
+ 'me-west1',
835
+ 'nbg1',
836
+ 'northamerica-northeast1',
837
+ 'northamerica-northeast2',
838
+ 'sa-east-1',
839
+ 'sin',
840
+ 'southamerica-east1',
841
+ 'southamerica-west1',
842
+ 'us-central1',
843
+ 'us-east-1',
844
+ 'us-east-2',
845
+ 'us-east1',
846
+ 'us-east4',
847
+ 'us-east5',
848
+ 'us-south1',
849
+ 'us-west-1',
850
+ 'us-west-2',
851
+ 'us-west1',
852
+ 'us-west2',
853
+ 'us-west3',
854
+ 'us-west4'
855
+ ])).optional().default([])
856
+ }).default({
857
+ 'karpenter.sh/capacity-type': ['on-demand', 'spot'],
858
+ 'kubernetes.io/arch': ['amd64'],
859
+ 'cfke.io/instance-family': [],
860
+ 'topology.kubernetes.io/region': []
861
+ }),
862
+ scalingProfile: z.enum(['aggressive', 'conservative']).default('conservative'),
863
+ id: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
864
+ ready: z.boolean(),
865
+ status_message: z.string().optional(),
866
+ created_at: z.string(),
867
+ updated_at: z.string()
298
868
  });
869
+ /**
870
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
871
+ */
299
872
  export const zFleetUpdateInput = z.object({
300
873
  limits: z.object({
301
- cpu: z.number().gte(0)
874
+ cpu: z.int().gte(0).lte(100000).optional()
302
875
  }).optional(),
303
876
  gcp: z.object({
304
- enabled: z.boolean().optional().default(true),
305
- project: z.string()
877
+ enabled: z.boolean(),
878
+ project: z.string().regex(/^[a-z][a-z0-9-]{4,28}[a-z0-9]$/).optional()
306
879
  }).optional(),
307
880
  hetzner: z.object({
308
- enabled: z.boolean().optional().default(true),
309
- apiKey: z.string()
881
+ enabled: z.boolean(),
882
+ apiKey: z.string().length(64).regex(/^([A-Za-z0-9]{64}|\*{64})$/).optional()
310
883
  }).optional(),
311
884
  aws: z.object({
312
- enabled: z.boolean().optional().default(true),
313
- controllerRoleArn: z.string()
314
- }).optional()
885
+ enabled: z.boolean(),
886
+ controllerRoleArn: z.string().regex(/^arn:aws(-[a-z]+)*:iam::\d{12}:role\/[\w+=,.@\/-]+$/).optional()
887
+ }).optional(),
888
+ constraints: z.object({
889
+ 'karpenter.sh/capacity-type': z.array(z.enum(['on-demand', 'spot'])).min(1).optional().default(['on-demand', 'spot']),
890
+ 'kubernetes.io/arch': z.array(z.enum(['amd64', 'arm64'])).min(1).optional().default(['amd64']),
891
+ 'cfke.io/instance-family': z.array(z.enum([
892
+ 'a1',
893
+ 'a2',
894
+ 'a3',
895
+ 'a4',
896
+ 'c1',
897
+ 'c2',
898
+ 'c2d',
899
+ 'c3',
900
+ 'c3d',
901
+ 'c4',
902
+ 'c4a',
903
+ 'c4d',
904
+ 'c5',
905
+ 'c5a',
906
+ 'c5ad',
907
+ 'c5d',
908
+ 'c5n',
909
+ 'c6a',
910
+ 'c6g',
911
+ 'c6gd',
912
+ 'c6gn',
913
+ 'c6i',
914
+ 'c6id',
915
+ 'c6in',
916
+ 'c7a',
917
+ 'c7g',
918
+ 'c7gd',
919
+ 'c7gn',
920
+ 'c7i',
921
+ 'c7i-flex',
922
+ 'c8g',
923
+ 'c8gd',
924
+ 'cax',
925
+ 'ccx',
926
+ 'cpx',
927
+ 'cx',
928
+ 'd2',
929
+ 'd3',
930
+ 'd3en',
931
+ 'dl1',
932
+ 'dl2q',
933
+ 'e2',
934
+ 'f1',
935
+ 'f2',
936
+ 'g1',
937
+ 'g2',
938
+ 'g4ad',
939
+ 'g4dn',
940
+ 'g5',
941
+ 'g5g',
942
+ 'g6',
943
+ 'g6e',
944
+ 'gr6',
945
+ 'h1',
946
+ 'h3',
947
+ 'hpc6a',
948
+ 'hpc6id',
949
+ 'hpc7a',
950
+ 'hpc7g',
951
+ 'i2',
952
+ 'i3',
953
+ 'i3en',
954
+ 'i4g',
955
+ 'i4i',
956
+ 'i7i',
957
+ 'i7ie',
958
+ 'i8g',
959
+ 'im4gn',
960
+ 'inf1',
961
+ 'inf2',
962
+ 'is4gen',
963
+ 'm1',
964
+ 'm2',
965
+ 'm3',
966
+ 'm4',
967
+ 'm5',
968
+ 'm5a',
969
+ 'm5ad',
970
+ 'm5d',
971
+ 'm5dn',
972
+ 'm5n',
973
+ 'm5zn',
974
+ 'm6a',
975
+ 'm6g',
976
+ 'm6gd',
977
+ 'm6i',
978
+ 'm6id',
979
+ 'm6idn',
980
+ 'm6in',
981
+ 'm7a',
982
+ 'm7g',
983
+ 'm7gd',
984
+ 'm7i',
985
+ 'm7i-flex',
986
+ 'm8g',
987
+ 'm8gd',
988
+ 'n1',
989
+ 'n2',
990
+ 'n2d',
991
+ 'n4',
992
+ 'p3',
993
+ 'p3dn',
994
+ 'p4d',
995
+ 'p4de',
996
+ 'p5',
997
+ 'p5e',
998
+ 'p5en',
999
+ 'p6-b200',
1000
+ 'r3',
1001
+ 'r4',
1002
+ 'r5',
1003
+ 'r5a',
1004
+ 'r5ad',
1005
+ 'r5b',
1006
+ 'r5d',
1007
+ 'r5dn',
1008
+ 'r5n',
1009
+ 'r6a',
1010
+ 'r6g',
1011
+ 'r6gd',
1012
+ 'r6i',
1013
+ 'r6id',
1014
+ 'r6idn',
1015
+ 'r6in',
1016
+ 'r7a',
1017
+ 'r7g',
1018
+ 'r7gd',
1019
+ 'r7i',
1020
+ 'r7iz',
1021
+ 'r8g',
1022
+ 'r8gd',
1023
+ 't2',
1024
+ 't2a',
1025
+ 't2d',
1026
+ 't3',
1027
+ 't3a',
1028
+ 't4g',
1029
+ 'trn1',
1030
+ 'trn1n',
1031
+ 'u-3tb1',
1032
+ 'u-6tb1',
1033
+ 'u7i-12tb',
1034
+ 'u7i-6tb',
1035
+ 'u7i-8tb',
1036
+ 'u7in-16tb',
1037
+ 'u7in-24tb',
1038
+ 'u7in-32tb',
1039
+ 'vt1',
1040
+ 'x1',
1041
+ 'x1e',
1042
+ 'x2gd',
1043
+ 'x2idn',
1044
+ 'x2iedn',
1045
+ 'x2iezn',
1046
+ 'x4',
1047
+ 'x8g',
1048
+ 'z1d',
1049
+ 'z3'
1050
+ ])).optional().default([]),
1051
+ 'topology.kubernetes.io/region': z.array(z.enum([
1052
+ 'africa-south1',
1053
+ 'ap-northeast-1',
1054
+ 'ap-northeast-2',
1055
+ 'ap-northeast-3',
1056
+ 'ap-south-1',
1057
+ 'ap-southeast-1',
1058
+ 'ap-southeast-2',
1059
+ 'ash',
1060
+ 'asia-east1',
1061
+ 'asia-east2',
1062
+ 'asia-northeast1',
1063
+ 'asia-northeast2',
1064
+ 'asia-northeast3',
1065
+ 'asia-south1',
1066
+ 'asia-south2',
1067
+ 'asia-southeast1',
1068
+ 'asia-southeast2',
1069
+ 'australia-southeast1',
1070
+ 'australia-southeast2',
1071
+ 'ca-central-1',
1072
+ 'eu-central-1',
1073
+ 'eu-central-2',
1074
+ 'eu-north-1',
1075
+ 'eu-west-1',
1076
+ 'eu-west-2',
1077
+ 'eu-west-3',
1078
+ 'europe-central2',
1079
+ 'europe-north1',
1080
+ 'europe-southwest1',
1081
+ 'europe-west1',
1082
+ 'europe-west10',
1083
+ 'europe-west12',
1084
+ 'europe-west2',
1085
+ 'europe-west3',
1086
+ 'europe-west4',
1087
+ 'europe-west6',
1088
+ 'europe-west8',
1089
+ 'europe-west9',
1090
+ 'fsn1',
1091
+ 'hel1',
1092
+ 'hil',
1093
+ 'me-central1',
1094
+ 'me-central2',
1095
+ 'me-west1',
1096
+ 'nbg1',
1097
+ 'northamerica-northeast1',
1098
+ 'northamerica-northeast2',
1099
+ 'sa-east-1',
1100
+ 'sin',
1101
+ 'southamerica-east1',
1102
+ 'southamerica-west1',
1103
+ 'us-central1',
1104
+ 'us-east-1',
1105
+ 'us-east-2',
1106
+ 'us-east1',
1107
+ 'us-east4',
1108
+ 'us-east5',
1109
+ 'us-south1',
1110
+ 'us-west-1',
1111
+ 'us-west-2',
1112
+ 'us-west1',
1113
+ 'us-west2',
1114
+ 'us-west3',
1115
+ 'us-west4'
1116
+ ])).optional().default([])
1117
+ }).optional().default({
1118
+ 'karpenter.sh/capacity-type': ['on-demand', 'spot'],
1119
+ 'kubernetes.io/arch': ['amd64'],
1120
+ 'cfke.io/instance-family': [],
1121
+ 'topology.kubernetes.io/region': []
1122
+ }),
1123
+ scalingProfile: z.enum(['aggressive', 'conservative']).optional().default('conservative')
1124
+ });
1125
+ export const zInviteCreateInput = z.object({
1126
+ email: z.email(),
1127
+ role: z.enum(['Administrator', 'User']).optional().default('User')
315
1128
  });
316
1129
  export const zInvite = z.object({
317
1130
  id: z.string().optional(),
318
1131
  organization_id: z.uuid().optional(),
319
1132
  date_created: z.iso.datetime(),
320
1133
  email: z.email().optional(),
321
- code: z.string().optional()
1134
+ code: z.string().optional(),
1135
+ role: z.enum(['Administrator', 'User']).optional().default('User')
322
1136
  });
323
1137
  export const zInvoice = z.object({
324
1138
  id: z.string().optional(),
@@ -358,21 +1172,28 @@ export const zMarketplaceListing = z.object({
358
1172
  }).optional()
359
1173
  });
360
1174
  export const zOrganizationCreateInput = z.object({
1175
+ type: z.enum(['business', 'personal']),
361
1176
  email: z.email(),
362
- first_name: z.string(),
363
- last_name: z.string(),
1177
+ first_name: z.string().min(1),
1178
+ last_name: z.string().min(1),
364
1179
  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,}$/),
365
1180
  password: z.string().min(8)
366
1181
  });
1182
+ export const zOrganizationCreateOutput = z.object({
1183
+ id: z.string()
1184
+ });
367
1185
  export const zOrganization = z.object({
368
1186
  id: z.uuid(),
369
1187
  name: z.string().min(2).max(120).optional(),
1188
+ type: z.enum(['business', 'personal']),
370
1189
  date_created: z.iso.datetime(),
371
1190
  quota: z.object({
372
1191
  basic_clusters_max: z.int().gte(0),
373
1192
  basic_clusters_available: z.int(),
374
1193
  pro_clusters_max: z.int().gte(0),
375
1194
  pro_clusters_available: z.int(),
1195
+ enterprise_clusters_max: z.int().gte(0),
1196
+ enterprise_clusters_available: z.int(),
376
1197
  fleets_max: z.int().gte(0),
377
1198
  cluster_tiers: z.array(z.string()).min(0),
378
1199
  regions: z.array(z.string()).min(1),
@@ -386,32 +1207,36 @@ export const zOrganization = z.object({
386
1207
  'active',
387
1208
  'closed',
388
1209
  'suspended'
1210
+ ]),
1211
+ verification: z.enum([
1212
+ 'none',
1213
+ 'submitted',
1214
+ 'verified'
389
1215
  ])
390
1216
  });
391
1217
  export const zPaymentMethod = z.object({
392
- id: z.uuid(),
393
- setup: z.boolean(),
394
- type: z.enum(['card']),
1218
+ id: z.string(),
1219
+ type: z.enum([
1220
+ 'card',
1221
+ 'sepa_debit',
1222
+ 'bank_transfer'
1223
+ ]),
395
1224
  last4: z.string(),
396
1225
  exp_month: z.int().gte(1).lte(12),
397
- exp_year: z.int().gte(2024),
398
- brand: z.enum([
399
- 'amex',
400
- 'diners',
401
- 'discover',
402
- 'eftpos_au',
403
- 'jcb',
404
- 'mastercard',
405
- 'unionpay',
406
- 'visa',
407
- 'unknown'
408
- ])
1226
+ exp_year: z.int(),
1227
+ brand: z.string(),
1228
+ iban: z.string(),
1229
+ bic: z.string(),
1230
+ account_holder_name: z.string(),
1231
+ is_default: z.boolean()
409
1232
  });
410
1233
  export const zPlatformQuota = z.object({
411
1234
  basic_clusters_max: z.int().gte(0),
412
1235
  basic_clusters_available: z.int(),
413
1236
  pro_clusters_max: z.int().gte(0),
414
1237
  pro_clusters_available: z.int(),
1238
+ enterprise_clusters_max: z.int().gte(0),
1239
+ enterprise_clusters_available: z.int(),
415
1240
  fleets_max: z.int().gte(0),
416
1241
  cluster_tiers: z.array(z.string()).min(0),
417
1242
  regions: z.array(z.string()).min(1),
@@ -467,6 +1292,69 @@ export const zRegistryTag = z.object({
467
1292
  repository: z.string(),
468
1293
  uri: z.string()
469
1294
  });
1295
+ export const zTicketAttachment = z.object({
1296
+ id: z.string(),
1297
+ filename: z.string(),
1298
+ content_type: z.string(),
1299
+ size: z.int()
1300
+ });
1301
+ export const zTicketCreateInput = z.object({
1302
+ category: z.enum([
1303
+ 'billing',
1304
+ 'technical',
1305
+ 'general'
1306
+ ]),
1307
+ body: z.string().min(1).max(50000).regex(/\S/),
1308
+ properties: z.record(z.string(), z.unknown()).optional()
1309
+ });
1310
+ export const zTicketMessageInput = z.object({
1311
+ body: z.string().min(1).max(50000).regex(/\S/)
1312
+ });
1313
+ export const zTicketMessage = z.object({
1314
+ id: z.string(),
1315
+ type: z.enum(['customer_reply', 'agent_reply']),
1316
+ body: z.string(),
1317
+ author_first_name: z.string().optional(),
1318
+ author_last_name: z.string().optional(),
1319
+ attachments: z.array(z.object({
1320
+ id: z.string(),
1321
+ filename: z.string(),
1322
+ content_type: z.string(),
1323
+ size: z.int()
1324
+ })).optional(),
1325
+ date_created: z.iso.datetime()
1326
+ });
1327
+ export const zTicket = z.object({
1328
+ id: z.string(),
1329
+ status: z.enum([
1330
+ 'waiting_on_us',
1331
+ 'waiting_on_user',
1332
+ 'closed'
1333
+ ]),
1334
+ category: z.enum([
1335
+ 'billing',
1336
+ 'technical',
1337
+ 'general'
1338
+ ]),
1339
+ summary: z.string(),
1340
+ closed_at: z.iso.datetime().optional(),
1341
+ date_created: z.iso.datetime(),
1342
+ date_updated: z.iso.datetime(),
1343
+ messages: z.array(z.object({
1344
+ id: z.string(),
1345
+ type: z.enum(['customer_reply', 'agent_reply']),
1346
+ body: z.string(),
1347
+ author_first_name: z.string().optional(),
1348
+ author_last_name: z.string().optional(),
1349
+ attachments: z.array(z.object({
1350
+ id: z.string(),
1351
+ filename: z.string(),
1352
+ content_type: z.string(),
1353
+ size: z.int()
1354
+ })).optional(),
1355
+ date_created: z.iso.datetime()
1356
+ })).optional()
1357
+ });
470
1358
  export const zTokenCreateInput = z.object({
471
1359
  name: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
472
1360
  role: z.enum(['Administrator', 'User'])
@@ -484,26 +1372,58 @@ export const zTokenUpdateInput = z.object({
484
1372
  });
485
1373
  export const zUsageFacets = z.object({
486
1374
  cluster_id: z.array(z.string()).optional(),
487
- product: z.array(z.string()).optional()
1375
+ product: z.array(z.enum([
1376
+ 'cfke_controlplane_basic',
1377
+ 'cfke_controlplane_pro',
1378
+ 'cfke_controlplane_enterprise',
1379
+ 'cfke_connected_nodes_basic',
1380
+ 'cfke_connected_nodes_pro',
1381
+ 'cfke_connected_nodes_enterprise',
1382
+ 'cfcr_storage'
1383
+ ])).optional()
488
1384
  });
489
1385
  export const zUsageResponse = z.object({
490
1386
  data: z.array(z.object({
491
1387
  hour: z.string(),
492
1388
  cluster_id: z.string(),
493
- product: z.string(),
1389
+ product: z.enum([
1390
+ 'cfke_controlplane_basic',
1391
+ 'cfke_controlplane_pro',
1392
+ 'cfke_controlplane_enterprise',
1393
+ 'cfke_connected_nodes_basic',
1394
+ 'cfke_connected_nodes_pro',
1395
+ 'cfke_connected_nodes_enterprise',
1396
+ 'cfcr_storage'
1397
+ ]),
494
1398
  value: z.number(),
495
1399
  price: z.number(),
496
1400
  total: z.number()
497
1401
  })),
498
1402
  facets: z.object({
499
1403
  cluster_id: z.array(z.string()).optional(),
500
- product: z.array(z.string()).optional()
1404
+ product: z.array(z.enum([
1405
+ 'cfke_controlplane_basic',
1406
+ 'cfke_controlplane_pro',
1407
+ 'cfke_controlplane_enterprise',
1408
+ 'cfke_connected_nodes_basic',
1409
+ 'cfke_connected_nodes_pro',
1410
+ 'cfke_connected_nodes_enterprise',
1411
+ 'cfcr_storage'
1412
+ ])).optional()
501
1413
  })
502
1414
  });
503
1415
  export const zUsage = z.object({
504
1416
  hour: z.string(),
505
1417
  cluster_id: z.string(),
506
- product: z.string(),
1418
+ product: z.enum([
1419
+ 'cfke_controlplane_basic',
1420
+ 'cfke_controlplane_pro',
1421
+ 'cfke_controlplane_enterprise',
1422
+ 'cfke_connected_nodes_basic',
1423
+ 'cfke_connected_nodes_pro',
1424
+ 'cfke_connected_nodes_enterprise',
1425
+ 'cfcr_storage'
1426
+ ]),
507
1427
  value: z.number(),
508
1428
  price: z.number(),
509
1429
  total: z.number()
@@ -513,9 +1433,7 @@ export const zUserCreateInput = z.object({
513
1433
  first_name: z.string().min(1).max(50),
514
1434
  last_name: z.string().min(1).max(50),
515
1435
  code: z.string(),
516
- password: z.string().min(8),
517
- status: z.enum(['active', 'inactive']).optional(),
518
- role: z.enum(['Administrator', 'User']).optional()
1436
+ password: z.string().min(8)
519
1437
  });
520
1438
  export const zUser = z.object({
521
1439
  email: z.email(),
@@ -533,88 +1451,235 @@ export const zUserUpdateInput = z.object({
533
1451
  role: z.enum(['Administrator', 'User']).optional(),
534
1452
  status: z.enum(['active', 'inactive']).optional()
535
1453
  });
536
- export const zGetUsageQuery = z.object({
537
- granularity: z.enum([
538
- 'hourly',
539
- 'daily',
540
- 'monthly'
541
- ]).optional().default('daily')
1454
+ export const zListUserOrganizationsPath = z.object({
1455
+ email: z.string()
542
1456
  });
543
1457
  /**
544
- * Usage data with facets for filtering
1458
+ * An array of organizations the user belongs to.
545
1459
  */
546
- export const zGetUsageResponse = zUsageResponse;
1460
+ export const zListUserOrganizationsResponse = z.array(z.object({
1461
+ realm: z.string().optional(),
1462
+ displayName: z.string().optional()
1463
+ }));
547
1464
  /**
548
- * Redacted payment card information.
1465
+ * An array of users
549
1466
  */
550
- export const zGetPaymentMethodResponse = zPaymentMethod;
1467
+ export const zListUsersResponse = z.array(zUser);
1468
+ export const zCreateUserBody = zUserCreateInput;
551
1469
  /**
552
- * 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.
553
- *
1470
+ * Successfully created. Returns created user details.
554
1471
  */
555
- export const zGetPaymentMethodSecretResponse = z.object({
556
- id: z.string().optional()
1472
+ export const zCreateUserResponse = zUser;
1473
+ export const zDeleteUserPath = z.object({
1474
+ user_id: z.string()
557
1475
  });
558
1476
  /**
559
- * An array of usage records.
1477
+ * User profile information
560
1478
  */
561
- export const zListInvoicesResponse = z.array(zInvoice);
1479
+ export const zDeleteUserResponse = zUser;
1480
+ export const zGetUserPath = z.object({
1481
+ user_id: z.string()
1482
+ });
562
1483
  /**
563
- * Returns a single object containing organization contact and billing address details.
1484
+ * User profile information
564
1485
  */
565
- export const zGetContactResponse = zBillingContact;
566
- export const zUpdateContactBody = zBillingContact;
1486
+ export const zGetUserResponse = zUser;
1487
+ export const zUpdateUserBody = zUserUpdateInput;
1488
+ export const zUpdateUserPath = z.object({
1489
+ user_id: z.string()
1490
+ });
567
1491
  /**
568
- * Successfully updated. Returns updated organization details.
1492
+ * Successfully created. Returns created user details.
569
1493
  */
570
- export const zUpdateContactResponse = zBillingContact;
1494
+ export const zUpdateUserResponse = zUser;
571
1495
  /**
572
- * An array of the applied promotional credits records.
1496
+ * Returns a list of access token details with masked secrets.
573
1497
  */
574
- export const zGetCreditsResponse = z.array(zBillingCredits);
575
- export const zRedeemCreditsBody = z.object({
576
- code: z.string().optional()
1498
+ export const zListTokensResponse = z.array(zToken);
1499
+ export const zCreateTokenBody = zTokenCreateInput;
1500
+ /**
1501
+ * Successfully created. Returns created token details with unmasked/raw secret.
1502
+ */
1503
+ export const zCreateTokenResponse = zToken;
1504
+ export const zDeleteTokenPath = z.object({
1505
+ token_id: z.string()
577
1506
  });
578
- export const zListChartsPath = z.object({
579
- cluster_id: z.string()
1507
+ export const zGetTokenPath = z.object({
1508
+ token_id: z.string()
580
1509
  });
581
1510
  /**
582
- * An array of charts
1511
+ * Returns access token details with masked secret.
583
1512
  */
584
- export const zListChartsResponse = z.array(zChart);
585
- export const zCreateChartBody = zChartCreateInput;
586
- export const zCreateChartPath = z.object({
587
- cluster_id: z.string()
1513
+ export const zGetTokenResponse = zToken;
1514
+ export const zUpdateTokenBody = zTokenUpdateInput;
1515
+ export const zUpdateTokenPath = z.object({
1516
+ token_id: z.string()
588
1517
  });
589
1518
  /**
590
- * Successfully created. Returns created Chart ID.
1519
+ * Successfully updated. Returns updated token details with masked secret.
591
1520
  */
592
- export const zCreateChartResponse = z.string();
593
- export const zDeleteChartPath = z.object({
594
- cluster_id: z.string(),
595
- chart_name: z.string()
1521
+ export const zUpdateTokenResponse = zToken;
1522
+ export const zRegenerateTokenPath = z.object({
1523
+ token_id: z.string()
596
1524
  });
597
1525
  /**
598
- * Successfully deleted.
1526
+ * Successfully updated. Returns updated token details with unmasked / raw secret.
599
1527
  */
600
- export const zDeleteChartResponse = z.string();
601
- export const zGetChartPath = z.object({
602
- cluster_id: z.string(),
603
- chart_name: z.string()
1528
+ export const zRegenerateTokenResponse = zToken;
1529
+ /**
1530
+ * An array of tickets for the organization, newest first.
1531
+ */
1532
+ export const zListTicketsResponse = z.array(zTicket);
1533
+ export const zCreateTicketBody = z.object({
1534
+ payload: z.string().optional(),
1535
+ attachments: z.array(z.string()).optional()
604
1536
  });
605
1537
  /**
606
- * Returns a single object containing chart details.
1538
+ * Ticket created.
607
1539
  */
608
- export const zGetChartResponse = zChart;
609
- export const zUpdateChartBody = zChartUpdateInput;
610
- export const zUpdateChartPath = z.object({
611
- cluster_id: z.string(),
612
- chart_name: z.string()
1540
+ export const zCreateTicketResponse = zTicket;
1541
+ export const zCloseTicketPath = z.object({
1542
+ ticket_id: z.string()
613
1543
  });
614
1544
  /**
615
- * Successfully updated.
1545
+ * Ticket closed.
616
1546
  */
617
- export const zUpdateChartResponse = z.string();
1547
+ export const zCloseTicketResponse = zTicket;
1548
+ export const zGetTicketPath = z.object({
1549
+ ticket_id: z.string()
1550
+ });
1551
+ /**
1552
+ * Ticket with messages (internal notes excluded).
1553
+ */
1554
+ export const zGetTicketResponse = zTicket;
1555
+ export const zReplyTicketBody = z.object({
1556
+ payload: z.string().optional(),
1557
+ attachments: z.array(z.string()).optional()
1558
+ });
1559
+ export const zReplyTicketPath = z.object({
1560
+ ticket_id: z.string()
1561
+ });
1562
+ /**
1563
+ * Reply appended.
1564
+ */
1565
+ export const zReplyTicketResponse = zTicketMessage;
1566
+ export const zGetTicketAttachmentPath = z.object({
1567
+ ticket_id: z.string(),
1568
+ attachment_id: z.string()
1569
+ });
1570
+ /**
1571
+ * Attachment binary stream.
1572
+ */
1573
+ export const zGetTicketAttachmentResponse = z.string();
1574
+ /**
1575
+ * List of repositories
1576
+ */
1577
+ export const zListRepositoriesResponse = z.array(zRegistryRepository);
1578
+ export const zListTagsPath = z.object({
1579
+ region: z.string(),
1580
+ repository: z.string()
1581
+ });
1582
+ /**
1583
+ * Repository with tags
1584
+ */
1585
+ export const zListTagsResponse = zRegistryRepositoryWithTags;
1586
+ export const zDeleteTagPath = z.object({
1587
+ region: z.string(),
1588
+ repository: z.string(),
1589
+ tag: z.string()
1590
+ });
1591
+ export const zGetTagPath = z.object({
1592
+ region: z.string(),
1593
+ repository: z.string(),
1594
+ tag: z.string()
1595
+ });
1596
+ /**
1597
+ * Tag details
1598
+ */
1599
+ export const zGetTagResponse = zRegistryTag;
1600
+ /**
1601
+ * Returns a single object containing organization details.
1602
+ */
1603
+ export const zGetOrganizationResponse = zOrganization;
1604
+ export const zCreateOrganizationBody = zOrganizationCreateInput;
1605
+ /**
1606
+ * Organization signup accepted. Returns the generated organization id immediately; provisioning (billing, Keycloak realm, user) continues asynchronously in the background.
1607
+ *
1608
+ */
1609
+ export const zCreateOrganizationResponse = zOrganizationCreateOutput;
1610
+ /**
1611
+ * Returns the current consent status.
1612
+ */
1613
+ export const zGetBasicPriceConsentResponse = zBasicPriceConsent;
1614
+ export const zSetBasicPriceConsentBody = zBasicPriceConsentInput;
1615
+ /**
1616
+ * Decision recorded. Returns the updated consent status.
1617
+ */
1618
+ export const zSetBasicPriceConsentResponse = zBasicPriceConsent;
1619
+ /**
1620
+ * JSON-RPC 2.0 request payload
1621
+ */
1622
+ export const zPostMcpBody = z.object({
1623
+ jsonrpc: z.string().optional(),
1624
+ method: z.string().optional(),
1625
+ id: z.union([
1626
+ z.string(),
1627
+ z.number()
1628
+ ]).optional(),
1629
+ params: z.record(z.string(), z.unknown()).optional()
1630
+ });
1631
+ /**
1632
+ * JSON-RPC 2.0 success or error response
1633
+ */
1634
+ export const zPostMcpResponse = z.object({
1635
+ jsonrpc: z.string().optional(),
1636
+ id: z.union([
1637
+ z.string(),
1638
+ z.number()
1639
+ ]).optional(),
1640
+ result: z.record(z.string(), z.unknown()).optional(),
1641
+ error: z.object({
1642
+ code: z.int().optional(),
1643
+ message: z.string().optional()
1644
+ }).optional()
1645
+ });
1646
+ /**
1647
+ * An array of chart listings in the marketplace.
1648
+ */
1649
+ export const zListMarketplaceChartsResponse = z.array(zMarketplaceListing);
1650
+ export const zGetMarketplaceChartFilesPath = z.object({
1651
+ chart_name: z.string(),
1652
+ version_channel: z.string()
1653
+ });
1654
+ /**
1655
+ * Returns an object containing the chart files for the latest matching version.
1656
+ */
1657
+ export const zGetMarketplaceChartFilesResponse = zMarketplaceListingFiles;
1658
+ /**
1659
+ * An array of invites
1660
+ */
1661
+ export const zListInvitesResponse = z.array(zInvite);
1662
+ export const zCreateInviteBody = zInviteCreateInput;
1663
+ /**
1664
+ * Successfully created. Returns created invite details.
1665
+ */
1666
+ export const zCreateInviteResponse = zInvite;
1667
+ export const zGetInvitePath = z.object({
1668
+ code: z.string()
1669
+ });
1670
+ /**
1671
+ * The invitation code is valid. Returns the invited email and organization.
1672
+ */
1673
+ export const zGetInviteResponse = z.object({
1674
+ email: z.email().optional(),
1675
+ organization_id: z.string().optional()
1676
+ });
1677
+ export const zDeleteInvitePath = z.object({
1678
+ email: z.email()
1679
+ });
1680
+ export const zQueryClusterPath = z.object({
1681
+ cluster_id: z.string()
1682
+ });
618
1683
  export const zListFleetsPath = z.object({
619
1684
  cluster_id: z.string()
620
1685
  });
@@ -655,9 +1720,46 @@ export const zUpdateFleetPath = z.object({
655
1720
  * Successfully updated.
656
1721
  */
657
1722
  export const zUpdateFleetResponse = z.string();
658
- export const zQueryClusterPath = z.object({
1723
+ export const zListChartsPath = z.object({
659
1724
  cluster_id: z.string()
660
1725
  });
1726
+ /**
1727
+ * An array of charts
1728
+ */
1729
+ export const zListChartsResponse = z.array(zChart);
1730
+ export const zCreateChartBody = zChartCreateInput;
1731
+ export const zCreateChartPath = z.object({
1732
+ cluster_id: z.string()
1733
+ });
1734
+ /**
1735
+ * Successfully created. Returns created Chart ID.
1736
+ */
1737
+ export const zCreateChartResponse = z.string();
1738
+ export const zDeleteChartPath = z.object({
1739
+ cluster_id: z.string(),
1740
+ chart_name: z.string()
1741
+ });
1742
+ /**
1743
+ * Successfully deleted.
1744
+ */
1745
+ export const zDeleteChartResponse = z.string();
1746
+ export const zGetChartPath = z.object({
1747
+ cluster_id: z.string(),
1748
+ chart_name: z.string()
1749
+ });
1750
+ /**
1751
+ * Returns a single object containing chart details.
1752
+ */
1753
+ export const zGetChartResponse = zChart;
1754
+ export const zUpdateChartBody = zChartUpdateInput;
1755
+ export const zUpdateChartPath = z.object({
1756
+ cluster_id: z.string(),
1757
+ chart_name: z.string()
1758
+ });
1759
+ /**
1760
+ * Successfully updated.
1761
+ */
1762
+ export const zUpdateChartResponse = z.string();
661
1763
  /**
662
1764
  * An array of clusters
663
1765
  */
@@ -671,7 +1773,7 @@ export const zDeleteClusterPath = z.object({
671
1773
  cluster_id: z.string()
672
1774
  });
673
1775
  /**
674
- * Successfully deleted.
1776
+ * Successfully deleted. The cluster has been torn down.
675
1777
  */
676
1778
  export const zDeleteClusterResponse = z.string();
677
1779
  export const zGetClusterPath = z.object({
@@ -689,13 +1791,6 @@ export const zUpdateClusterPath = z.object({
689
1791
  * Successfully updated. Returns updated cluster details.
690
1792
  */
691
1793
  export const zUpdateClusterResponse = zCluster;
692
- export const zGetClusterCaPath = z.object({
693
- cluster_id: z.string()
694
- });
695
- /**
696
- * PEM-encoded certificate authority of the cluster.
697
- */
698
- export const zGetClusterCaResponse = z.string();
699
1794
  export const zGetJoinInformationPath = z.object({
700
1795
  cluster_id: z.string()
701
1796
  });
@@ -703,170 +1798,60 @@ export const zGetJoinInformationPath = z.object({
703
1798
  * An object of cluster join information
704
1799
  */
705
1800
  export const zGetJoinInformationResponse = zClusterJoinInformation;
706
- /**
707
- * An array of invites
708
- */
709
- export const zListInvitesResponse = z.array(zInvite);
710
- export const zCreateInviteBody = z.object({
711
- email: z.string().optional()
712
- });
713
- /**
714
- * Successfully created. Returns created invite details.
715
- */
716
- export const zCreateInviteResponse = zInvite;
717
- export const zGetInvitePath = z.object({
718
- code: z.string()
719
- });
720
- /**
721
- * Returns a single object containing invite details.
722
- */
723
- export const zGetInviteResponse = zInvite;
724
- export const zDeleteInvitePath = z.object({
725
- email: z.string()
726
- });
727
- /**
728
- * An array of chart listings in the marketplace.
729
- */
730
- export const zListMarketplaceChartsResponse = z.array(zMarketplaceListing);
731
- export const zGetMarketplaceChartFilesPath = z.object({
732
- chart_name: z.string(),
733
- version_channel: z.string()
734
- });
735
- /**
736
- * Returns an object containing the chart files for the latest matching version.
737
- */
738
- export const zGetMarketplaceChartFilesResponse = zMarketplaceListingFiles;
739
- /**
740
- * JSON-RPC 2.0 request payload
741
- */
742
- export const zPostMcpBody = z.object({
743
- jsonrpc: z.string().optional(),
744
- method: z.string().optional(),
745
- id: z.union([
746
- z.string(),
747
- z.number()
748
- ]).optional(),
749
- params: z.record(z.string(), z.unknown()).optional()
750
- });
751
- /**
752
- * JSON-RPC 2.0 success or error response
753
- */
754
- export const zPostMcpResponse = z.object({
755
- jsonrpc: z.string().optional(),
756
- id: z.union([
757
- z.string(),
758
- z.number()
759
- ]).optional(),
760
- result: z.record(z.string(), z.unknown()).optional(),
761
- error: z.object({
762
- code: z.int().optional(),
763
- message: z.string().optional()
764
- }).optional()
765
- });
766
- /**
767
- * Returns a single object containing organization details.
768
- */
769
- export const zGetOrganizationResponse = zOrganization;
770
- export const zCreateOrganizationBody = zOrganizationCreateInput;
771
- /**
772
- * List of repositories
773
- */
774
- export const zListRepositoriesResponse = z.array(zRegistryRepository);
775
- export const zListTagsPath = z.object({
776
- region: z.string(),
777
- repository: z.string()
778
- });
779
- /**
780
- * Repository with tags
781
- */
782
- export const zListTagsResponse = zRegistryRepositoryWithTags;
783
- export const zDeleteTagPath = z.object({
784
- region: z.string(),
785
- repository: z.string(),
786
- tag: z.string()
787
- });
788
- export const zGetTagPath = z.object({
789
- region: z.string(),
790
- repository: z.string(),
791
- tag: z.string()
1801
+ export const zGetUsageQuery = z.object({
1802
+ granularity: z.enum([
1803
+ 'hourly',
1804
+ 'daily',
1805
+ 'monthly'
1806
+ ]).optional().default('daily')
792
1807
  });
793
1808
  /**
794
- * Tag details
795
- */
796
- export const zGetTagResponse = zRegistryTag;
797
- /**
798
- * Returns a list of access token details with masked secrets.
799
- */
800
- export const zListTokensResponse = z.array(zToken);
801
- export const zCreateTokenBody = zTokenCreateInput;
802
- /**
803
- * Successfully created. Returns created token details with unmasked/raw secret.
1809
+ * Usage data with facets for filtering
804
1810
  */
805
- export const zCreateTokenResponse = zToken;
806
- export const zDeleteTokenPath = z.object({
807
- token_id: z.string()
808
- });
809
- export const zGetTokenPath = z.object({
810
- token_id: z.string()
811
- });
1811
+ export const zGetUsageResponse = zUsageResponse;
812
1812
  /**
813
- * Returns access token details with masked secret.
1813
+ * 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.
1814
+ *
814
1815
  */
815
- export const zGetTokenResponse = zToken;
816
- export const zUpdateTokenBody = zTokenUpdateInput;
817
- export const zUpdateTokenPath = z.object({
818
- token_id: z.string()
1816
+ export const zGetPaymentMethodSecretResponse = z.object({
1817
+ id: z.string().optional()
819
1818
  });
820
1819
  /**
821
- * Successfully updated. Returns updated token details with masked secret.
1820
+ * An array of payment methods.
822
1821
  */
823
- export const zUpdateTokenResponse = zToken;
824
- export const zRegenerateTokenPath = z.object({
825
- token_id: z.string()
1822
+ export const zListPaymentMethodsResponse = z.array(zPaymentMethod);
1823
+ export const zSetDefaultPaymentMethodPath = z.object({
1824
+ paymentMethodId: z.string()
826
1825
  });
827
1826
  /**
828
- * Successfully updated. Returns updated token details with unmasked / raw secret.
1827
+ * Default payment method updated.
829
1828
  */
830
- export const zRegenerateTokenResponse = zToken;
831
- export const zListUserOrganizationsPath = z.object({
832
- email: z.string()
1829
+ export const zSetDefaultPaymentMethodResponse = z.void();
1830
+ export const zDeletePaymentMethodPath = z.object({
1831
+ paymentMethodId: z.string()
833
1832
  });
834
1833
  /**
835
- * An array of organizations the user belongs to.
1834
+ * Payment method deleted.
836
1835
  */
837
- export const zListUserOrganizationsResponse = z.array(z.object({
838
- realm: z.string().optional(),
839
- displayName: z.string().optional()
840
- }));
1836
+ export const zDeletePaymentMethodResponse = z.void();
841
1837
  /**
842
- * An array of users
1838
+ * An array of usage records.
843
1839
  */
844
- export const zListUsersResponse = z.array(zUser);
845
- export const zCreateUserBody = zUserCreateInput;
1840
+ export const zListInvoicesResponse = z.array(zInvoice);
846
1841
  /**
847
- * Successfully created. Returns created user details.
1842
+ * Returns a single object containing organization contact and billing address details.
848
1843
  */
849
- export const zCreateUserResponse = zUser;
850
- export const zDeleteUserPath = z.object({
851
- user_id: z.string()
852
- });
1844
+ export const zGetContactResponse = zBillingContact;
1845
+ export const zUpdateContactBody = zBillingContact;
853
1846
  /**
854
- * User profile information
1847
+ * Successfully updated. Returns updated organization details.
855
1848
  */
856
- export const zDeleteUserResponse = zUser;
857
- export const zGetUserPath = z.object({
858
- user_id: z.string()
859
- });
1849
+ export const zUpdateContactResponse = zBillingContact;
860
1850
  /**
861
- * User profile information
1851
+ * An array of the applied promotional credits records.
862
1852
  */
863
- export const zGetUserResponse = zUser;
864
- export const zUpdateUserBody = zUserUpdateInput;
865
- export const zUpdateUserPath = z.object({
866
- user_id: z.string()
1853
+ export const zGetCreditsResponse = z.array(zBillingCredits);
1854
+ export const zRedeemCreditsBody = z.object({
1855
+ code: z.string().optional()
867
1856
  });
868
- /**
869
- * Successfully created. Returns created user details.
870
- */
871
- export const zUpdateUserResponse = zUser;
872
1857
  //# sourceMappingURL=zod.gen.js.map