@cloudfleet/sdk 0.0.1-775f88b → 0.0.1-79703f6

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
@@ -248,6 +248,10 @@ export const zCluster = z.object({
248
248
  z.url(),
249
249
  z.enum([''])
250
250
  ]).optional(),
251
+ endpoint_public: z.union([
252
+ z.url(),
253
+ z.enum([''])
254
+ ]).optional(),
251
255
  certificate_ca: z.string().optional(),
252
256
  version_current: z.string().optional(),
253
257
  created_at: z.string().optional(),
@@ -262,56 +266,749 @@ export const zClusterUpdateInput = z.object({
262
266
  });
263
267
  export const zFleetCreateInput = z.object({
264
268
  limits: z.object({
265
- cpu: z.number().gte(0)
269
+ cpu: z.int().gte(0).lte(100000).optional()
266
270
  }).optional(),
267
271
  gcp: z.object({
268
- enabled: z.boolean().optional().default(true),
269
- project: z.string()
272
+ enabled: z.boolean(),
273
+ project: z.string().regex(/^[a-z][a-z0-9-]{4,28}[a-z0-9]$/).optional()
270
274
  }).optional(),
271
275
  hetzner: z.object({
272
- enabled: z.boolean().optional().default(true),
273
- apiKey: z.string()
276
+ enabled: z.boolean(),
277
+ apiKey: z.string().length(64).regex(/^[A-Za-z0-9]+$/).optional()
274
278
  }).optional(),
275
279
  aws: z.object({
276
- enabled: z.boolean().optional().default(true),
277
- controllerRoleArn: z.string()
280
+ enabled: z.boolean(),
281
+ controllerRoleArn: z.string().regex(/^arn:aws(-[a-z]+)*:iam::\d{12}:role\/[\w+=,.@\/-]+$/).optional()
278
282
  }).optional(),
283
+ constraints: z.object({
284
+ 'karpenter.sh/capacity-type': z.array(z.enum(['on-demand', 'spot'])).min(1).optional().default(['on-demand', 'spot']),
285
+ 'kubernetes.io/arch': z.array(z.enum(['amd64', 'arm64'])).min(1).optional().default(['amd64']),
286
+ 'cfke.io/instance-family': z.array(z.enum([
287
+ 'a1',
288
+ 'a2',
289
+ 'a3',
290
+ 'a4',
291
+ 'c1',
292
+ 'c2',
293
+ 'c2d',
294
+ 'c3',
295
+ 'c3d',
296
+ 'c4',
297
+ 'c4a',
298
+ 'c4d',
299
+ 'c5',
300
+ 'c5a',
301
+ 'c5ad',
302
+ 'c5d',
303
+ 'c5n',
304
+ 'c6a',
305
+ 'c6g',
306
+ 'c6gd',
307
+ 'c6gn',
308
+ 'c6i',
309
+ 'c6id',
310
+ 'c6in',
311
+ 'c7a',
312
+ 'c7g',
313
+ 'c7gd',
314
+ 'c7gn',
315
+ 'c7i',
316
+ 'c7i-flex',
317
+ 'c8g',
318
+ 'c8gd',
319
+ 'cax',
320
+ 'ccx',
321
+ 'cpx',
322
+ 'cx',
323
+ 'd2',
324
+ 'd3',
325
+ 'd3en',
326
+ 'dl1',
327
+ 'dl2q',
328
+ 'e2',
329
+ 'f1',
330
+ 'f2',
331
+ 'g1',
332
+ 'g2',
333
+ 'g4ad',
334
+ 'g4dn',
335
+ 'g5',
336
+ 'g5g',
337
+ 'g6',
338
+ 'g6e',
339
+ 'gr6',
340
+ 'h1',
341
+ 'h3',
342
+ 'hpc6a',
343
+ 'hpc6id',
344
+ 'hpc7a',
345
+ 'hpc7g',
346
+ 'i2',
347
+ 'i3',
348
+ 'i3en',
349
+ 'i4g',
350
+ 'i4i',
351
+ 'i7i',
352
+ 'i7ie',
353
+ 'i8g',
354
+ 'im4gn',
355
+ 'inf1',
356
+ 'inf2',
357
+ 'is4gen',
358
+ 'm1',
359
+ 'm2',
360
+ 'm3',
361
+ 'm4',
362
+ 'm5',
363
+ 'm5a',
364
+ 'm5ad',
365
+ 'm5d',
366
+ 'm5dn',
367
+ 'm5n',
368
+ 'm5zn',
369
+ 'm6a',
370
+ 'm6g',
371
+ 'm6gd',
372
+ 'm6i',
373
+ 'm6id',
374
+ 'm6idn',
375
+ 'm6in',
376
+ 'm7a',
377
+ 'm7g',
378
+ 'm7gd',
379
+ 'm7i',
380
+ 'm7i-flex',
381
+ 'm8g',
382
+ 'm8gd',
383
+ 'n1',
384
+ 'n2',
385
+ 'n2d',
386
+ 'n4',
387
+ 'p3',
388
+ 'p3dn',
389
+ 'p4d',
390
+ 'p4de',
391
+ 'p5',
392
+ 'p5e',
393
+ 'p5en',
394
+ 'p6-b200',
395
+ 'r3',
396
+ 'r4',
397
+ 'r5',
398
+ 'r5a',
399
+ 'r5ad',
400
+ 'r5b',
401
+ 'r5d',
402
+ 'r5dn',
403
+ 'r5n',
404
+ 'r6a',
405
+ 'r6g',
406
+ 'r6gd',
407
+ 'r6i',
408
+ 'r6id',
409
+ 'r6idn',
410
+ 'r6in',
411
+ 'r7a',
412
+ 'r7g',
413
+ 'r7gd',
414
+ 'r7i',
415
+ 'r7iz',
416
+ 'r8g',
417
+ 'r8gd',
418
+ 't2',
419
+ 't2a',
420
+ 't2d',
421
+ 't3',
422
+ 't3a',
423
+ 't4g',
424
+ 'trn1',
425
+ 'trn1n',
426
+ 'u-3tb1',
427
+ 'u-6tb1',
428
+ 'u7i-12tb',
429
+ 'u7i-6tb',
430
+ 'u7i-8tb',
431
+ 'u7in-16tb',
432
+ 'u7in-24tb',
433
+ 'u7in-32tb',
434
+ 'vt1',
435
+ 'x1',
436
+ 'x1e',
437
+ 'x2gd',
438
+ 'x2idn',
439
+ 'x2iedn',
440
+ 'x2iezn',
441
+ 'x4',
442
+ 'x8g',
443
+ 'z1d',
444
+ 'z3'
445
+ ])).optional(),
446
+ 'topology.kubernetes.io/region': z.array(z.enum([
447
+ 'africa-south1',
448
+ 'ap-northeast-1',
449
+ 'ap-northeast-2',
450
+ 'ap-northeast-3',
451
+ 'ap-south-1',
452
+ 'ap-southeast-1',
453
+ 'ap-southeast-2',
454
+ 'ash',
455
+ 'asia-east1',
456
+ 'asia-east2',
457
+ 'asia-northeast1',
458
+ 'asia-northeast2',
459
+ 'asia-northeast3',
460
+ 'asia-south1',
461
+ 'asia-south2',
462
+ 'asia-southeast1',
463
+ 'asia-southeast2',
464
+ 'australia-southeast1',
465
+ 'australia-southeast2',
466
+ 'ca-central-1',
467
+ 'eu-central-1',
468
+ 'eu-central-2',
469
+ 'eu-north-1',
470
+ 'eu-west-1',
471
+ 'eu-west-2',
472
+ 'eu-west-3',
473
+ 'europe-central2',
474
+ 'europe-north1',
475
+ 'europe-southwest1',
476
+ 'europe-west1',
477
+ 'europe-west10',
478
+ 'europe-west12',
479
+ 'europe-west2',
480
+ 'europe-west3',
481
+ 'europe-west4',
482
+ 'europe-west6',
483
+ 'europe-west8',
484
+ 'europe-west9',
485
+ 'fsn1',
486
+ 'hel1',
487
+ 'hil',
488
+ 'me-central1',
489
+ 'me-central2',
490
+ 'me-west1',
491
+ 'nbg1',
492
+ 'northamerica-northeast1',
493
+ 'northamerica-northeast2',
494
+ 'sa-east-1',
495
+ 'sin',
496
+ 'southamerica-east1',
497
+ 'southamerica-west1',
498
+ 'us-central1',
499
+ 'us-east-1',
500
+ 'us-east-2',
501
+ 'us-east1',
502
+ 'us-east4',
503
+ 'us-east5',
504
+ 'us-south1',
505
+ 'us-west-1',
506
+ 'us-west-2',
507
+ 'us-west1',
508
+ 'us-west2',
509
+ 'us-west3',
510
+ 'us-west4'
511
+ ])).optional()
512
+ }).optional(),
513
+ scalingProfile: z.enum(['aggressive', 'conservative']).optional().default('conservative'),
279
514
  id: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/)
280
515
  });
281
516
  export const zFleet = z.object({
282
517
  limits: z.object({
283
- cpu: z.number().gte(0)
518
+ cpu: z.int().gte(0).lte(100000).optional()
284
519
  }).optional(),
285
520
  gcp: z.object({
286
- enabled: z.boolean().optional().default(true),
287
- project: z.string()
521
+ enabled: z.boolean(),
522
+ project: z.string().regex(/^[a-z][a-z0-9-]{4,28}[a-z0-9]$/).optional()
288
523
  }).optional(),
289
524
  hetzner: z.object({
290
- enabled: z.boolean().optional().default(true),
291
- apiKey: z.string()
525
+ enabled: z.boolean(),
526
+ apiKey: z.string().regex(/^\*{64}$/).optional()
292
527
  }).optional(),
293
528
  aws: z.object({
294
- enabled: z.boolean().optional().default(true),
295
- controllerRoleArn: z.string()
529
+ enabled: z.boolean(),
530
+ controllerRoleArn: z.string().regex(/^arn:aws(-[a-z]+)*:iam::\d{12}:role\/[\w+=,.@\/-]+$/).optional()
531
+ }).optional(),
532
+ constraints: z.object({
533
+ 'karpenter.sh/capacity-type': z.array(z.enum(['on-demand', 'spot'])).min(1).optional().default(['on-demand', 'spot']),
534
+ 'kubernetes.io/arch': z.array(z.enum(['amd64', 'arm64'])).min(1).optional().default(['amd64']),
535
+ 'cfke.io/instance-family': z.array(z.enum([
536
+ 'a1',
537
+ 'a2',
538
+ 'a3',
539
+ 'a4',
540
+ 'c1',
541
+ 'c2',
542
+ 'c2d',
543
+ 'c3',
544
+ 'c3d',
545
+ 'c4',
546
+ 'c4a',
547
+ 'c4d',
548
+ 'c5',
549
+ 'c5a',
550
+ 'c5ad',
551
+ 'c5d',
552
+ 'c5n',
553
+ 'c6a',
554
+ 'c6g',
555
+ 'c6gd',
556
+ 'c6gn',
557
+ 'c6i',
558
+ 'c6id',
559
+ 'c6in',
560
+ 'c7a',
561
+ 'c7g',
562
+ 'c7gd',
563
+ 'c7gn',
564
+ 'c7i',
565
+ 'c7i-flex',
566
+ 'c8g',
567
+ 'c8gd',
568
+ 'cax',
569
+ 'ccx',
570
+ 'cpx',
571
+ 'cx',
572
+ 'd2',
573
+ 'd3',
574
+ 'd3en',
575
+ 'dl1',
576
+ 'dl2q',
577
+ 'e2',
578
+ 'f1',
579
+ 'f2',
580
+ 'g1',
581
+ 'g2',
582
+ 'g4ad',
583
+ 'g4dn',
584
+ 'g5',
585
+ 'g5g',
586
+ 'g6',
587
+ 'g6e',
588
+ 'gr6',
589
+ 'h1',
590
+ 'h3',
591
+ 'hpc6a',
592
+ 'hpc6id',
593
+ 'hpc7a',
594
+ 'hpc7g',
595
+ 'i2',
596
+ 'i3',
597
+ 'i3en',
598
+ 'i4g',
599
+ 'i4i',
600
+ 'i7i',
601
+ 'i7ie',
602
+ 'i8g',
603
+ 'im4gn',
604
+ 'inf1',
605
+ 'inf2',
606
+ 'is4gen',
607
+ 'm1',
608
+ 'm2',
609
+ 'm3',
610
+ 'm4',
611
+ 'm5',
612
+ 'm5a',
613
+ 'm5ad',
614
+ 'm5d',
615
+ 'm5dn',
616
+ 'm5n',
617
+ 'm5zn',
618
+ 'm6a',
619
+ 'm6g',
620
+ 'm6gd',
621
+ 'm6i',
622
+ 'm6id',
623
+ 'm6idn',
624
+ 'm6in',
625
+ 'm7a',
626
+ 'm7g',
627
+ 'm7gd',
628
+ 'm7i',
629
+ 'm7i-flex',
630
+ 'm8g',
631
+ 'm8gd',
632
+ 'n1',
633
+ 'n2',
634
+ 'n2d',
635
+ 'n4',
636
+ 'p3',
637
+ 'p3dn',
638
+ 'p4d',
639
+ 'p4de',
640
+ 'p5',
641
+ 'p5e',
642
+ 'p5en',
643
+ 'p6-b200',
644
+ 'r3',
645
+ 'r4',
646
+ 'r5',
647
+ 'r5a',
648
+ 'r5ad',
649
+ 'r5b',
650
+ 'r5d',
651
+ 'r5dn',
652
+ 'r5n',
653
+ 'r6a',
654
+ 'r6g',
655
+ 'r6gd',
656
+ 'r6i',
657
+ 'r6id',
658
+ 'r6idn',
659
+ 'r6in',
660
+ 'r7a',
661
+ 'r7g',
662
+ 'r7gd',
663
+ 'r7i',
664
+ 'r7iz',
665
+ 'r8g',
666
+ 'r8gd',
667
+ 't2',
668
+ 't2a',
669
+ 't2d',
670
+ 't3',
671
+ 't3a',
672
+ 't4g',
673
+ 'trn1',
674
+ 'trn1n',
675
+ 'u-3tb1',
676
+ 'u-6tb1',
677
+ 'u7i-12tb',
678
+ 'u7i-6tb',
679
+ 'u7i-8tb',
680
+ 'u7in-16tb',
681
+ 'u7in-24tb',
682
+ 'u7in-32tb',
683
+ 'vt1',
684
+ 'x1',
685
+ 'x1e',
686
+ 'x2gd',
687
+ 'x2idn',
688
+ 'x2iedn',
689
+ 'x2iezn',
690
+ 'x4',
691
+ 'x8g',
692
+ 'z1d',
693
+ 'z3'
694
+ ])).optional(),
695
+ 'topology.kubernetes.io/region': z.array(z.enum([
696
+ 'africa-south1',
697
+ 'ap-northeast-1',
698
+ 'ap-northeast-2',
699
+ 'ap-northeast-3',
700
+ 'ap-south-1',
701
+ 'ap-southeast-1',
702
+ 'ap-southeast-2',
703
+ 'ash',
704
+ 'asia-east1',
705
+ 'asia-east2',
706
+ 'asia-northeast1',
707
+ 'asia-northeast2',
708
+ 'asia-northeast3',
709
+ 'asia-south1',
710
+ 'asia-south2',
711
+ 'asia-southeast1',
712
+ 'asia-southeast2',
713
+ 'australia-southeast1',
714
+ 'australia-southeast2',
715
+ 'ca-central-1',
716
+ 'eu-central-1',
717
+ 'eu-central-2',
718
+ 'eu-north-1',
719
+ 'eu-west-1',
720
+ 'eu-west-2',
721
+ 'eu-west-3',
722
+ 'europe-central2',
723
+ 'europe-north1',
724
+ 'europe-southwest1',
725
+ 'europe-west1',
726
+ 'europe-west10',
727
+ 'europe-west12',
728
+ 'europe-west2',
729
+ 'europe-west3',
730
+ 'europe-west4',
731
+ 'europe-west6',
732
+ 'europe-west8',
733
+ 'europe-west9',
734
+ 'fsn1',
735
+ 'hel1',
736
+ 'hil',
737
+ 'me-central1',
738
+ 'me-central2',
739
+ 'me-west1',
740
+ 'nbg1',
741
+ 'northamerica-northeast1',
742
+ 'northamerica-northeast2',
743
+ 'sa-east-1',
744
+ 'sin',
745
+ 'southamerica-east1',
746
+ 'southamerica-west1',
747
+ 'us-central1',
748
+ 'us-east-1',
749
+ 'us-east-2',
750
+ 'us-east1',
751
+ 'us-east4',
752
+ 'us-east5',
753
+ 'us-south1',
754
+ 'us-west-1',
755
+ 'us-west-2',
756
+ 'us-west1',
757
+ 'us-west2',
758
+ 'us-west3',
759
+ 'us-west4'
760
+ ])).optional()
296
761
  }).optional(),
762
+ scalingProfile: z.enum(['aggressive', 'conservative']).default('conservative'),
297
763
  id: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/)
298
764
  });
299
765
  export const zFleetUpdateInput = z.object({
300
766
  limits: z.object({
301
- cpu: z.number().gte(0)
767
+ cpu: z.int().gte(0).lte(100000).optional()
302
768
  }).optional(),
303
769
  gcp: z.object({
304
- enabled: z.boolean().optional().default(true),
305
- project: z.string()
770
+ enabled: z.boolean(),
771
+ project: z.string().regex(/^[a-z][a-z0-9-]{4,28}[a-z0-9]$/).optional()
306
772
  }).optional(),
307
773
  hetzner: z.object({
308
- enabled: z.boolean().optional().default(true),
309
- apiKey: z.string()
774
+ enabled: z.boolean(),
775
+ apiKey: z.string().length(64).regex(/^[A-Za-z0-9]+$/).optional()
310
776
  }).optional(),
311
777
  aws: z.object({
312
- enabled: z.boolean().optional().default(true),
313
- controllerRoleArn: z.string()
314
- }).optional()
778
+ enabled: z.boolean(),
779
+ controllerRoleArn: z.string().regex(/^arn:aws(-[a-z]+)*:iam::\d{12}:role\/[\w+=,.@\/-]+$/).optional()
780
+ }).optional(),
781
+ constraints: z.object({
782
+ 'karpenter.sh/capacity-type': z.array(z.enum(['on-demand', 'spot'])).min(1).optional(),
783
+ 'kubernetes.io/arch': z.array(z.enum(['amd64', 'arm64'])).min(1).optional(),
784
+ 'cfke.io/instance-family': z.array(z.enum([
785
+ 'a1',
786
+ 'a2',
787
+ 'a3',
788
+ 'a4',
789
+ 'c1',
790
+ 'c2',
791
+ 'c2d',
792
+ 'c3',
793
+ 'c3d',
794
+ 'c4',
795
+ 'c4a',
796
+ 'c4d',
797
+ 'c5',
798
+ 'c5a',
799
+ 'c5ad',
800
+ 'c5d',
801
+ 'c5n',
802
+ 'c6a',
803
+ 'c6g',
804
+ 'c6gd',
805
+ 'c6gn',
806
+ 'c6i',
807
+ 'c6id',
808
+ 'c6in',
809
+ 'c7a',
810
+ 'c7g',
811
+ 'c7gd',
812
+ 'c7gn',
813
+ 'c7i',
814
+ 'c7i-flex',
815
+ 'c8g',
816
+ 'c8gd',
817
+ 'cax',
818
+ 'ccx',
819
+ 'cpx',
820
+ 'cx',
821
+ 'd2',
822
+ 'd3',
823
+ 'd3en',
824
+ 'dl1',
825
+ 'dl2q',
826
+ 'e2',
827
+ 'f1',
828
+ 'f2',
829
+ 'g1',
830
+ 'g2',
831
+ 'g4ad',
832
+ 'g4dn',
833
+ 'g5',
834
+ 'g5g',
835
+ 'g6',
836
+ 'g6e',
837
+ 'gr6',
838
+ 'h1',
839
+ 'h3',
840
+ 'hpc6a',
841
+ 'hpc6id',
842
+ 'hpc7a',
843
+ 'hpc7g',
844
+ 'i2',
845
+ 'i3',
846
+ 'i3en',
847
+ 'i4g',
848
+ 'i4i',
849
+ 'i7i',
850
+ 'i7ie',
851
+ 'i8g',
852
+ 'im4gn',
853
+ 'inf1',
854
+ 'inf2',
855
+ 'is4gen',
856
+ 'm1',
857
+ 'm2',
858
+ 'm3',
859
+ 'm4',
860
+ 'm5',
861
+ 'm5a',
862
+ 'm5ad',
863
+ 'm5d',
864
+ 'm5dn',
865
+ 'm5n',
866
+ 'm5zn',
867
+ 'm6a',
868
+ 'm6g',
869
+ 'm6gd',
870
+ 'm6i',
871
+ 'm6id',
872
+ 'm6idn',
873
+ 'm6in',
874
+ 'm7a',
875
+ 'm7g',
876
+ 'm7gd',
877
+ 'm7i',
878
+ 'm7i-flex',
879
+ 'm8g',
880
+ 'm8gd',
881
+ 'n1',
882
+ 'n2',
883
+ 'n2d',
884
+ 'n4',
885
+ 'p3',
886
+ 'p3dn',
887
+ 'p4d',
888
+ 'p4de',
889
+ 'p5',
890
+ 'p5e',
891
+ 'p5en',
892
+ 'p6-b200',
893
+ 'r3',
894
+ 'r4',
895
+ 'r5',
896
+ 'r5a',
897
+ 'r5ad',
898
+ 'r5b',
899
+ 'r5d',
900
+ 'r5dn',
901
+ 'r5n',
902
+ 'r6a',
903
+ 'r6g',
904
+ 'r6gd',
905
+ 'r6i',
906
+ 'r6id',
907
+ 'r6idn',
908
+ 'r6in',
909
+ 'r7a',
910
+ 'r7g',
911
+ 'r7gd',
912
+ 'r7i',
913
+ 'r7iz',
914
+ 'r8g',
915
+ 'r8gd',
916
+ 't2',
917
+ 't2a',
918
+ 't2d',
919
+ 't3',
920
+ 't3a',
921
+ 't4g',
922
+ 'trn1',
923
+ 'trn1n',
924
+ 'u-3tb1',
925
+ 'u-6tb1',
926
+ 'u7i-12tb',
927
+ 'u7i-6tb',
928
+ 'u7i-8tb',
929
+ 'u7in-16tb',
930
+ 'u7in-24tb',
931
+ 'u7in-32tb',
932
+ 'vt1',
933
+ 'x1',
934
+ 'x1e',
935
+ 'x2gd',
936
+ 'x2idn',
937
+ 'x2iedn',
938
+ 'x2iezn',
939
+ 'x4',
940
+ 'x8g',
941
+ 'z1d',
942
+ 'z3'
943
+ ])).optional(),
944
+ 'topology.kubernetes.io/region': z.array(z.enum([
945
+ 'africa-south1',
946
+ 'ap-northeast-1',
947
+ 'ap-northeast-2',
948
+ 'ap-northeast-3',
949
+ 'ap-south-1',
950
+ 'ap-southeast-1',
951
+ 'ap-southeast-2',
952
+ 'ash',
953
+ 'asia-east1',
954
+ 'asia-east2',
955
+ 'asia-northeast1',
956
+ 'asia-northeast2',
957
+ 'asia-northeast3',
958
+ 'asia-south1',
959
+ 'asia-south2',
960
+ 'asia-southeast1',
961
+ 'asia-southeast2',
962
+ 'australia-southeast1',
963
+ 'australia-southeast2',
964
+ 'ca-central-1',
965
+ 'eu-central-1',
966
+ 'eu-central-2',
967
+ 'eu-north-1',
968
+ 'eu-west-1',
969
+ 'eu-west-2',
970
+ 'eu-west-3',
971
+ 'europe-central2',
972
+ 'europe-north1',
973
+ 'europe-southwest1',
974
+ 'europe-west1',
975
+ 'europe-west10',
976
+ 'europe-west12',
977
+ 'europe-west2',
978
+ 'europe-west3',
979
+ 'europe-west4',
980
+ 'europe-west6',
981
+ 'europe-west8',
982
+ 'europe-west9',
983
+ 'fsn1',
984
+ 'hel1',
985
+ 'hil',
986
+ 'me-central1',
987
+ 'me-central2',
988
+ 'me-west1',
989
+ 'nbg1',
990
+ 'northamerica-northeast1',
991
+ 'northamerica-northeast2',
992
+ 'sa-east-1',
993
+ 'sin',
994
+ 'southamerica-east1',
995
+ 'southamerica-west1',
996
+ 'us-central1',
997
+ 'us-east-1',
998
+ 'us-east-2',
999
+ 'us-east1',
1000
+ 'us-east4',
1001
+ 'us-east5',
1002
+ 'us-south1',
1003
+ 'us-west-1',
1004
+ 'us-west-2',
1005
+ 'us-west1',
1006
+ 'us-west2',
1007
+ 'us-west3',
1008
+ 'us-west4'
1009
+ ])).optional()
1010
+ }).optional(),
1011
+ scalingProfile: z.enum(['aggressive', 'conservative'])
315
1012
  });
316
1013
  export const zInvite = z.object({
317
1014
  id: z.string().optional(),
@@ -467,6 +1164,102 @@ export const zRegistryTag = z.object({
467
1164
  repository: z.string(),
468
1165
  uri: z.string()
469
1166
  });
1167
+ export const zTicketAttachment = z.object({
1168
+ id: z.string(),
1169
+ filename: z.string(),
1170
+ content_type: z.string(),
1171
+ size: z.int()
1172
+ });
1173
+ export const zTicketCreateInput = z.object({
1174
+ category: z.enum([
1175
+ 'billing',
1176
+ 'technical',
1177
+ 'general'
1178
+ ]),
1179
+ body: z.string().min(1).max(50000).regex(/\S/),
1180
+ properties: z.record(z.string(), z.unknown()).optional()
1181
+ });
1182
+ export const zTicketListResponse = z.object({
1183
+ items: z.array(z.object({
1184
+ id: z.string(),
1185
+ status: z.enum([
1186
+ 'waiting_on_us',
1187
+ 'waiting_on_user',
1188
+ 'closed'
1189
+ ]),
1190
+ category: z.enum([
1191
+ 'billing',
1192
+ 'technical',
1193
+ 'general'
1194
+ ]),
1195
+ summary: z.string(),
1196
+ closed_at: z.iso.datetime().optional(),
1197
+ date_created: z.iso.datetime(),
1198
+ date_updated: z.iso.datetime(),
1199
+ messages: z.array(z.object({
1200
+ id: z.string(),
1201
+ type: z.enum(['customer_reply', 'agent_reply']),
1202
+ body: z.string(),
1203
+ author_first_name: z.string().optional(),
1204
+ author_last_name: z.string().optional(),
1205
+ attachments: z.array(z.object({
1206
+ id: z.string(),
1207
+ filename: z.string(),
1208
+ content_type: z.string(),
1209
+ size: z.int()
1210
+ })).optional(),
1211
+ date_created: z.iso.datetime()
1212
+ })).optional()
1213
+ }))
1214
+ });
1215
+ export const zTicketMessageInput = z.object({
1216
+ body: z.string().min(1).max(50000).regex(/\S/)
1217
+ });
1218
+ export const zTicketMessage = z.object({
1219
+ id: z.string(),
1220
+ type: z.enum(['customer_reply', 'agent_reply']),
1221
+ body: z.string(),
1222
+ author_first_name: z.string().optional(),
1223
+ author_last_name: z.string().optional(),
1224
+ attachments: z.array(z.object({
1225
+ id: z.string(),
1226
+ filename: z.string(),
1227
+ content_type: z.string(),
1228
+ size: z.int()
1229
+ })).optional(),
1230
+ date_created: z.iso.datetime()
1231
+ });
1232
+ export const zTicket = z.object({
1233
+ id: z.string(),
1234
+ status: z.enum([
1235
+ 'waiting_on_us',
1236
+ 'waiting_on_user',
1237
+ 'closed'
1238
+ ]),
1239
+ category: z.enum([
1240
+ 'billing',
1241
+ 'technical',
1242
+ 'general'
1243
+ ]),
1244
+ summary: z.string(),
1245
+ closed_at: z.iso.datetime().optional(),
1246
+ date_created: z.iso.datetime(),
1247
+ date_updated: z.iso.datetime(),
1248
+ messages: z.array(z.object({
1249
+ id: z.string(),
1250
+ type: z.enum(['customer_reply', 'agent_reply']),
1251
+ body: z.string(),
1252
+ author_first_name: z.string().optional(),
1253
+ author_last_name: z.string().optional(),
1254
+ attachments: z.array(z.object({
1255
+ id: z.string(),
1256
+ filename: z.string(),
1257
+ content_type: z.string(),
1258
+ size: z.int()
1259
+ })).optional(),
1260
+ date_created: z.iso.datetime()
1261
+ })).optional()
1262
+ });
470
1263
  export const zTokenCreateInput = z.object({
471
1264
  name: z.string().min(1).max(63).regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/),
472
1265
  role: z.enum(['Administrator', 'User'])
@@ -689,13 +1482,6 @@ export const zUpdateClusterPath = z.object({
689
1482
  * Successfully updated. Returns updated cluster details.
690
1483
  */
691
1484
  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
1485
  export const zGetJoinInformationPath = z.object({
700
1486
  cluster_id: z.string()
701
1487
  });
@@ -794,6 +1580,51 @@ export const zGetTagPath = z.object({
794
1580
  * Tag details
795
1581
  */
796
1582
  export const zGetTagResponse = zRegistryTag;
1583
+ /**
1584
+ * Tickets for the organization.
1585
+ */
1586
+ export const zListTicketsResponse = zTicketListResponse;
1587
+ export const zCreateTicketBody = z.object({
1588
+ payload: z.string().optional(),
1589
+ attachments: z.array(z.string()).optional()
1590
+ });
1591
+ /**
1592
+ * Ticket created.
1593
+ */
1594
+ export const zCreateTicketResponse = zTicket;
1595
+ export const zCloseTicketPath = z.object({
1596
+ ticket_id: z.string()
1597
+ });
1598
+ /**
1599
+ * Ticket closed.
1600
+ */
1601
+ export const zCloseTicketResponse = zTicket;
1602
+ export const zGetTicketPath = z.object({
1603
+ ticket_id: z.string()
1604
+ });
1605
+ /**
1606
+ * Ticket with messages (internal notes excluded).
1607
+ */
1608
+ export const zGetTicketResponse = zTicket;
1609
+ export const zReplyTicketBody = z.object({
1610
+ payload: z.string().optional(),
1611
+ attachments: z.array(z.string()).optional()
1612
+ });
1613
+ export const zReplyTicketPath = z.object({
1614
+ ticket_id: z.string()
1615
+ });
1616
+ /**
1617
+ * Reply appended.
1618
+ */
1619
+ export const zReplyTicketResponse = zTicketMessage;
1620
+ export const zGetTicketAttachmentPath = z.object({
1621
+ ticket_id: z.string(),
1622
+ attachment_id: z.string()
1623
+ });
1624
+ /**
1625
+ * Attachment binary stream.
1626
+ */
1627
+ export const zGetTicketAttachmentResponse = z.string();
797
1628
  /**
798
1629
  * Returns a list of access token details with masked secrets.
799
1630
  */