@scenario-labs/sdk 2.1.0 → 2.2.1

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 (93) hide show
  1. package/CHANGELOG.md +38 -0
  2. package/index.d.mts +1 -1
  3. package/index.d.mts.map +1 -1
  4. package/index.d.ts +1 -1
  5. package/index.d.ts.map +1 -1
  6. package/index.js +6 -1
  7. package/index.js.map +1 -1
  8. package/index.mjs +1 -1
  9. package/index.mjs.map +1 -1
  10. package/lib/workflow_converter.d.mts +47 -2
  11. package/lib/workflow_converter.d.mts.map +1 -1
  12. package/lib/workflow_converter.d.ts +47 -2
  13. package/lib/workflow_converter.d.ts.map +1 -1
  14. package/lib/workflow_converter.js +253 -28
  15. package/lib/workflow_converter.js.map +1 -1
  16. package/lib/workflow_converter.mjs +248 -28
  17. package/lib/workflow_converter.mjs.map +1 -1
  18. package/lib/workflow_import_validator.d.mts +1 -1
  19. package/lib/workflow_import_validator.d.mts.map +1 -1
  20. package/lib/workflow_import_validator.d.ts +1 -1
  21. package/lib/workflow_import_validator.d.ts.map +1 -1
  22. package/lib/workflow_import_validator.js +2 -0
  23. package/lib/workflow_import_validator.js.map +1 -1
  24. package/lib/workflow_import_validator.mjs +2 -0
  25. package/lib/workflow_import_validator.mjs.map +1 -1
  26. package/package.json +1 -1
  27. package/resources/assets/assets.d.mts +289 -135
  28. package/resources/assets/assets.d.mts.map +1 -1
  29. package/resources/assets/assets.d.ts +289 -135
  30. package/resources/assets/assets.d.ts.map +1 -1
  31. package/resources/assets/assets.js.map +1 -1
  32. package/resources/assets/assets.mjs.map +1 -1
  33. package/resources/generate.d.mts +86 -48
  34. package/resources/generate.d.mts.map +1 -1
  35. package/resources/generate.d.ts +86 -48
  36. package/resources/generate.d.ts.map +1 -1
  37. package/resources/jobs.d.mts +6 -6
  38. package/resources/jobs.d.mts.map +1 -1
  39. package/resources/jobs.d.ts +6 -6
  40. package/resources/jobs.d.ts.map +1 -1
  41. package/resources/models/description.d.mts +54 -4
  42. package/resources/models/description.d.mts.map +1 -1
  43. package/resources/models/description.d.ts +54 -4
  44. package/resources/models/description.d.ts.map +1 -1
  45. package/resources/models/examples.d.mts +74 -36
  46. package/resources/models/examples.d.mts.map +1 -1
  47. package/resources/models/examples.d.ts +74 -36
  48. package/resources/models/examples.d.ts.map +1 -1
  49. package/resources/models/models.d.mts +21 -21
  50. package/resources/models/models.d.mts.map +1 -1
  51. package/resources/models/models.d.ts +21 -21
  52. package/resources/models/models.d.ts.map +1 -1
  53. package/resources/models/models.js.map +1 -1
  54. package/resources/models/models.mjs.map +1 -1
  55. package/resources/models/train.d.mts +8 -8
  56. package/resources/models/train.d.mts.map +1 -1
  57. package/resources/models/train.d.ts +8 -8
  58. package/resources/models/train.d.ts.map +1 -1
  59. package/resources/search.d.mts +6 -0
  60. package/resources/search.d.mts.map +1 -1
  61. package/resources/search.d.ts +6 -0
  62. package/resources/search.d.ts.map +1 -1
  63. package/resources/uploads.d.mts +4 -4
  64. package/resources/uploads.d.mts.map +1 -1
  65. package/resources/uploads.d.ts +4 -4
  66. package/resources/uploads.d.ts.map +1 -1
  67. package/resources/usages.d.mts +31 -6
  68. package/resources/usages.d.mts.map +1 -1
  69. package/resources/usages.d.ts +31 -6
  70. package/resources/usages.d.ts.map +1 -1
  71. package/resources/workflows.d.mts +36 -36
  72. package/resources/workflows.d.mts.map +1 -1
  73. package/resources/workflows.d.ts +36 -36
  74. package/resources/workflows.d.ts.map +1 -1
  75. package/src/index.ts +9 -0
  76. package/src/lib/workflow_converter.ts +347 -21
  77. package/src/lib/workflow_import_validator.ts +5 -1
  78. package/src/resources/assets/assets.ts +376 -118
  79. package/src/resources/generate.ts +106 -44
  80. package/src/resources/jobs.ts +6 -6
  81. package/src/resources/models/description.ts +68 -2
  82. package/src/resources/models/examples.ts +94 -32
  83. package/src/resources/models/models.ts +21 -14
  84. package/src/resources/models/train.ts +8 -6
  85. package/src/resources/search.ts +7 -0
  86. package/src/resources/uploads.ts +4 -4
  87. package/src/resources/usages.ts +41 -4
  88. package/src/resources/workflows.ts +36 -36
  89. package/src/version.ts +1 -1
  90. package/version.d.mts +1 -1
  91. package/version.d.ts +1 -1
  92. package/version.js +1 -1
  93. package/version.mjs +1 -1
@@ -72,7 +72,7 @@ export namespace DescriptionRetrieveResponse {
72
72
  /**
73
73
  * The kind of asset
74
74
  */
75
- kind: '3d' | 'audio' | 'document' | 'image' | 'image-hdr' | 'json' | 'video';
75
+ kind: '3d' | 'audio' | 'document' | 'image' | 'image-hdr' | 'json' | 'text' | 'video';
76
76
 
77
77
  /**
78
78
  * The mime type of the asset (example: "image/png")
@@ -108,6 +108,7 @@ export namespace DescriptionRetrieveResponse {
108
108
  | '3d:texture:normal'
109
109
  | '3d:texture:roughness'
110
110
  | 'audio2audio'
111
+ | 'audio2txt'
111
112
  | 'audio2video'
112
113
  | 'background-removal'
113
114
  | 'canvas'
@@ -118,6 +119,7 @@ export namespace DescriptionRetrieveResponse {
118
119
  | 'image-prompt-editing'
119
120
  | 'img23d'
120
121
  | 'img2img'
122
+ | 'img2txt'
121
123
  | 'img2video'
122
124
  | 'inference-control-net'
123
125
  | 'inference-control-net-img'
@@ -157,12 +159,14 @@ export namespace DescriptionRetrieveResponse {
157
159
  | 'txt23d'
158
160
  | 'txt2audio'
159
161
  | 'txt2img'
162
+ | 'txt2txt'
160
163
  | 'txt2video'
161
164
  | 'unknown'
162
165
  | 'uploaded'
163
166
  | 'uploaded-3d'
164
167
  | 'uploaded-audio'
165
168
  | 'uploaded-avatar'
169
+ | 'uploaded-text'
166
170
  | 'uploaded-video'
167
171
  | 'upscale'
168
172
  | 'upscale-skybox'
@@ -231,6 +235,13 @@ export namespace DescriptionRetrieveResponse {
231
235
  */
232
236
  channels?: number;
233
237
 
238
+ /**
239
+ * Number of Unicode code points in the text. Code-point-aware (so a non-BMP emoji
240
+ * counts as 1) but not full grapheme-cluster aware (a ZWJ sequence still counts as
241
+ * several).
242
+ */
243
+ charCount?: number;
244
+
234
245
  /**
235
246
  * Classification of the audio
236
247
  */
@@ -276,6 +287,14 @@ export namespace DescriptionRetrieveResponse {
276
287
  */
277
288
  hasAnimations?: boolean;
278
289
 
290
+ /**
291
+ * True when `preview` holds the entire content unmodified — consumers can use it
292
+ * directly without fetching `asset.url`. False or undefined means the content
293
+ * exceeds the preview budget and consumers must fetch the full body from S3 to
294
+ * read past the preview.
295
+ */
296
+ hasFullPreview?: boolean;
297
+
279
298
  /**
280
299
  * Whether the mesh has normal vectors
281
300
  */
@@ -298,6 +317,15 @@ export namespace DescriptionRetrieveResponse {
298
317
  */
299
318
  nbFrames?: number;
300
319
 
320
+ /**
321
+ * Leading slice of the content used for inline UI display and as a search
322
+ * shortcut. Capped at TEXT_PREVIEW_MAX_BYTES (UTF-8) and always cut on a
323
+ * code-point boundary so no character is split. Number of characters in the
324
+ * preview varies by script (around 1024 for ASCII, ~340 for CJK, ~256 for
325
+ * emoji-heavy text at the default 1 KB budget).
326
+ */
327
+ preview?: string;
328
+
301
329
  /**
302
330
  * Sample rate of the media in Hz
303
331
  */
@@ -314,6 +342,11 @@ export namespace DescriptionRetrieveResponse {
314
342
  vertexCount?: number;
315
343
 
316
344
  width?: number;
345
+
346
+ /**
347
+ * Number of whitespace-separated words in the text
348
+ */
349
+ wordCount?: number;
317
350
  }
318
351
 
319
352
  export namespace Properties {
@@ -463,7 +496,7 @@ export namespace DescriptionUpdateResponse {
463
496
  /**
464
497
  * The kind of asset
465
498
  */
466
- kind: '3d' | 'audio' | 'document' | 'image' | 'image-hdr' | 'json' | 'video';
499
+ kind: '3d' | 'audio' | 'document' | 'image' | 'image-hdr' | 'json' | 'text' | 'video';
467
500
 
468
501
  /**
469
502
  * The mime type of the asset (example: "image/png")
@@ -499,6 +532,7 @@ export namespace DescriptionUpdateResponse {
499
532
  | '3d:texture:normal'
500
533
  | '3d:texture:roughness'
501
534
  | 'audio2audio'
535
+ | 'audio2txt'
502
536
  | 'audio2video'
503
537
  | 'background-removal'
504
538
  | 'canvas'
@@ -509,6 +543,7 @@ export namespace DescriptionUpdateResponse {
509
543
  | 'image-prompt-editing'
510
544
  | 'img23d'
511
545
  | 'img2img'
546
+ | 'img2txt'
512
547
  | 'img2video'
513
548
  | 'inference-control-net'
514
549
  | 'inference-control-net-img'
@@ -548,12 +583,14 @@ export namespace DescriptionUpdateResponse {
548
583
  | 'txt23d'
549
584
  | 'txt2audio'
550
585
  | 'txt2img'
586
+ | 'txt2txt'
551
587
  | 'txt2video'
552
588
  | 'unknown'
553
589
  | 'uploaded'
554
590
  | 'uploaded-3d'
555
591
  | 'uploaded-audio'
556
592
  | 'uploaded-avatar'
593
+ | 'uploaded-text'
557
594
  | 'uploaded-video'
558
595
  | 'upscale'
559
596
  | 'upscale-skybox'
@@ -622,6 +659,13 @@ export namespace DescriptionUpdateResponse {
622
659
  */
623
660
  channels?: number;
624
661
 
662
+ /**
663
+ * Number of Unicode code points in the text. Code-point-aware (so a non-BMP emoji
664
+ * counts as 1) but not full grapheme-cluster aware (a ZWJ sequence still counts as
665
+ * several).
666
+ */
667
+ charCount?: number;
668
+
625
669
  /**
626
670
  * Classification of the audio
627
671
  */
@@ -667,6 +711,14 @@ export namespace DescriptionUpdateResponse {
667
711
  */
668
712
  hasAnimations?: boolean;
669
713
 
714
+ /**
715
+ * True when `preview` holds the entire content unmodified — consumers can use it
716
+ * directly without fetching `asset.url`. False or undefined means the content
717
+ * exceeds the preview budget and consumers must fetch the full body from S3 to
718
+ * read past the preview.
719
+ */
720
+ hasFullPreview?: boolean;
721
+
670
722
  /**
671
723
  * Whether the mesh has normal vectors
672
724
  */
@@ -689,6 +741,15 @@ export namespace DescriptionUpdateResponse {
689
741
  */
690
742
  nbFrames?: number;
691
743
 
744
+ /**
745
+ * Leading slice of the content used for inline UI display and as a search
746
+ * shortcut. Capped at TEXT_PREVIEW_MAX_BYTES (UTF-8) and always cut on a
747
+ * code-point boundary so no character is split. Number of characters in the
748
+ * preview varies by script (around 1024 for ASCII, ~340 for CJK, ~256 for
749
+ * emoji-heavy text at the default 1 KB budget).
750
+ */
751
+ preview?: string;
752
+
692
753
  /**
693
754
  * Sample rate of the media in Hz
694
755
  */
@@ -705,6 +766,11 @@ export namespace DescriptionUpdateResponse {
705
766
  vertexCount?: number;
706
767
 
707
768
  width?: number;
769
+
770
+ /**
771
+ * Number of whitespace-separated words in the text
772
+ */
773
+ wordCount?: number;
708
774
  }
709
775
 
710
776
  export namespace Properties {
@@ -111,7 +111,7 @@ export namespace ExampleUpdateResponse {
111
111
  /**
112
112
  * The kind of asset
113
113
  */
114
- kind: '3d' | 'audio' | 'document' | 'image' | 'image-hdr' | 'json' | 'video';
114
+ kind: '3d' | 'audio' | 'document' | 'image' | 'image-hdr' | 'json' | 'text' | 'video';
115
115
 
116
116
  /**
117
117
  * Metadata of the asset with some additional information
@@ -152,6 +152,7 @@ export namespace ExampleUpdateResponse {
152
152
  | '3d:texture:normal'
153
153
  | '3d:texture:roughness'
154
154
  | 'audio2audio'
155
+ | 'audio2txt'
155
156
  | 'audio2video'
156
157
  | 'background-removal'
157
158
  | 'canvas'
@@ -162,6 +163,7 @@ export namespace ExampleUpdateResponse {
162
163
  | 'image-prompt-editing'
163
164
  | 'img23d'
164
165
  | 'img2img'
166
+ | 'img2txt'
165
167
  | 'img2video'
166
168
  | 'inference-control-net'
167
169
  | 'inference-control-net-img'
@@ -201,12 +203,14 @@ export namespace ExampleUpdateResponse {
201
203
  | 'txt23d'
202
204
  | 'txt2audio'
203
205
  | 'txt2img'
206
+ | 'txt2txt'
204
207
  | 'txt2video'
205
208
  | 'unknown'
206
209
  | 'uploaded'
207
210
  | 'uploaded-3d'
208
211
  | 'uploaded-audio'
209
212
  | 'uploaded-avatar'
213
+ | 'uploaded-text'
210
214
  | 'uploaded-video'
211
215
  | 'upscale'
212
216
  | 'upscale-skybox'
@@ -321,7 +325,7 @@ export namespace ExampleUpdateResponse {
321
325
  * Metadata of the asset with some additional information
322
326
  */
323
327
  export interface Metadata {
324
- kind: '3d' | 'audio' | 'document' | 'image' | 'image-hdr' | 'json' | 'video';
328
+ kind: '3d' | 'audio' | 'document' | 'image' | 'image-hdr' | 'json' | 'text' | 'video';
325
329
 
326
330
  /**
327
331
  * The type of the asset. Ex: 'inference-txt2img' will represent an asset generated
@@ -337,6 +341,7 @@ export namespace ExampleUpdateResponse {
337
341
  | '3d23d'
338
342
  | '3d23d-texture'
339
343
  | 'audio2audio'
344
+ | 'audio2txt'
340
345
  | 'audio2video'
341
346
  | 'background-removal'
342
347
  | 'canvas'
@@ -347,6 +352,7 @@ export namespace ExampleUpdateResponse {
347
352
  | 'image-prompt-editing'
348
353
  | 'img23d'
349
354
  | 'img2img'
355
+ | 'img2txt'
350
356
  | 'img2video'
351
357
  | 'inference-controlnet'
352
358
  | 'inference-controlnet-img2img'
@@ -386,12 +392,14 @@ export namespace ExampleUpdateResponse {
386
392
  | 'txt23d'
387
393
  | 'txt2audio'
388
394
  | 'txt2img'
395
+ | 'txt2txt'
389
396
  | 'txt2video'
390
397
  | 'unknown'
391
398
  | 'uploaded'
392
399
  | 'uploaded-3d'
393
400
  | 'uploaded-audio'
394
401
  | 'uploaded-avatar'
402
+ | 'uploaded-text'
395
403
  | 'uploaded-video'
396
404
  | 'upscale'
397
405
  | 'upscale-skybox'
@@ -415,10 +423,6 @@ export namespace ExampleUpdateResponse {
415
423
  */
416
424
  aspectRatio?: string;
417
425
 
418
- /**
419
- * Int to set between 0 and 255 for the opacity of the background in the result
420
- * images.
421
- */
422
426
  backgroundOpacity?: number;
423
427
 
424
428
  /**
@@ -431,9 +435,6 @@ export namespace ExampleUpdateResponse {
431
435
  */
432
436
  bbox?: Array<number>;
433
437
 
434
- /**
435
- * Remove small dark spots (i.e. “pepper”) and connect small bright cracks.
436
- */
437
438
  betterQuality?: boolean;
438
439
 
439
440
  /**
@@ -509,9 +510,6 @@ export namespace ExampleUpdateResponse {
509
510
  */
510
511
  detailsLevel?: number;
511
512
 
512
- /**
513
- * The number of pixels to dilate the result masks.
514
- */
515
513
  dilate?: number;
516
514
 
517
515
  /**
@@ -816,12 +814,16 @@ export namespace ExampleUpdateResponse {
816
814
  resultContours?: boolean;
817
815
 
818
816
  /**
819
- * Boolean to able output the cut out object.
817
+ * Boolean to return the source image with the mask applied as alpha channel (RGBA
818
+ * PNG, transparent background) instead of the binary mask. Mutually exclusive with
819
+ * `resultMask` — passing both as `true` returns a 400 error. Note:
820
+ * `backgroundOpacity` is no longer honored — alpha is binary (0/255) only.
820
821
  */
821
822
  resultImage?: boolean;
822
823
 
823
824
  /**
824
- * Boolean to able return the masks (binary image) in the response.
825
+ * Boolean to return the binary masks in the response. Mutually exclusive with
826
+ * `resultImage` — passing both as `true` returns a 400 error.
825
827
  */
826
828
  resultMask?: boolean;
827
829
 
@@ -1041,6 +1043,13 @@ export namespace ExampleUpdateResponse {
1041
1043
  */
1042
1044
  channels?: number;
1043
1045
 
1046
+ /**
1047
+ * Number of Unicode code points in the text. Code-point-aware (so a non-BMP emoji
1048
+ * counts as 1) but not full grapheme-cluster aware (a ZWJ sequence still counts as
1049
+ * several).
1050
+ */
1051
+ charCount?: number;
1052
+
1044
1053
  /**
1045
1054
  * Classification of the audio
1046
1055
  */
@@ -1086,6 +1095,14 @@ export namespace ExampleUpdateResponse {
1086
1095
  */
1087
1096
  hasAnimations?: boolean;
1088
1097
 
1098
+ /**
1099
+ * True when `preview` holds the entire content unmodified — consumers can use it
1100
+ * directly without fetching `asset.url`. False or undefined means the content
1101
+ * exceeds the preview budget and consumers must fetch the full body from S3 to
1102
+ * read past the preview.
1103
+ */
1104
+ hasFullPreview?: boolean;
1105
+
1089
1106
  /**
1090
1107
  * Whether the mesh has normal vectors
1091
1108
  */
@@ -1108,6 +1125,15 @@ export namespace ExampleUpdateResponse {
1108
1125
  */
1109
1126
  nbFrames?: number;
1110
1127
 
1128
+ /**
1129
+ * Leading slice of the content used for inline UI display and as a search
1130
+ * shortcut. Capped at TEXT_PREVIEW_MAX_BYTES (UTF-8) and always cut on a
1131
+ * code-point boundary so no character is split. Number of characters in the
1132
+ * preview varies by script (around 1024 for ASCII, ~340 for CJK, ~256 for
1133
+ * emoji-heavy text at the default 1 KB budget).
1134
+ */
1135
+ preview?: string;
1136
+
1111
1137
  /**
1112
1138
  * Sample rate of the media in Hz
1113
1139
  */
@@ -1124,6 +1150,11 @@ export namespace ExampleUpdateResponse {
1124
1150
  vertexCount?: number;
1125
1151
 
1126
1152
  width?: number;
1153
+
1154
+ /**
1155
+ * Number of whitespace-separated words in the text
1156
+ */
1157
+ wordCount?: number;
1127
1158
  }
1128
1159
 
1129
1160
  export namespace Properties {
@@ -1917,7 +1948,7 @@ export namespace ExampleUpdateResponse {
1917
1948
  * not able to create the asset on the flight on API side with dataurl without
1918
1949
  * data:kind, prefix
1919
1950
  */
1920
- kind?: '3d' | 'audio' | 'document' | 'image' | 'image-hdr' | 'json' | 'video';
1951
+ kind?: '3d' | 'audio' | 'document' | 'image' | 'image-hdr' | 'json' | 'text' | 'video';
1921
1952
 
1922
1953
  /**
1923
1954
  * The label displayed in the UI for this input
@@ -2150,7 +2181,7 @@ export namespace ExampleUpdateResponse {
2150
2181
  * not able to create the asset on the flight on API side with dataurl without
2151
2182
  * data:kind, prefix
2152
2183
  */
2153
- kind?: '3d' | 'audio' | 'document' | 'image' | 'image-hdr' | 'json' | 'video';
2184
+ kind?: '3d' | 'audio' | 'document' | 'image' | 'image-hdr' | 'json' | 'text' | 'video';
2154
2185
 
2155
2186
  /**
2156
2187
  * The label displayed in the UI for this input
@@ -2585,7 +2616,7 @@ export namespace ExampleListResponse {
2585
2616
  /**
2586
2617
  * The kind of asset
2587
2618
  */
2588
- kind: '3d' | 'audio' | 'document' | 'image' | 'image-hdr' | 'json' | 'video';
2619
+ kind: '3d' | 'audio' | 'document' | 'image' | 'image-hdr' | 'json' | 'text' | 'video';
2589
2620
 
2590
2621
  /**
2591
2622
  * Metadata of the asset with some additional information
@@ -2626,6 +2657,7 @@ export namespace ExampleListResponse {
2626
2657
  | '3d:texture:normal'
2627
2658
  | '3d:texture:roughness'
2628
2659
  | 'audio2audio'
2660
+ | 'audio2txt'
2629
2661
  | 'audio2video'
2630
2662
  | 'background-removal'
2631
2663
  | 'canvas'
@@ -2636,6 +2668,7 @@ export namespace ExampleListResponse {
2636
2668
  | 'image-prompt-editing'
2637
2669
  | 'img23d'
2638
2670
  | 'img2img'
2671
+ | 'img2txt'
2639
2672
  | 'img2video'
2640
2673
  | 'inference-control-net'
2641
2674
  | 'inference-control-net-img'
@@ -2675,12 +2708,14 @@ export namespace ExampleListResponse {
2675
2708
  | 'txt23d'
2676
2709
  | 'txt2audio'
2677
2710
  | 'txt2img'
2711
+ | 'txt2txt'
2678
2712
  | 'txt2video'
2679
2713
  | 'unknown'
2680
2714
  | 'uploaded'
2681
2715
  | 'uploaded-3d'
2682
2716
  | 'uploaded-audio'
2683
2717
  | 'uploaded-avatar'
2718
+ | 'uploaded-text'
2684
2719
  | 'uploaded-video'
2685
2720
  | 'upscale'
2686
2721
  | 'upscale-skybox'
@@ -2795,7 +2830,7 @@ export namespace ExampleListResponse {
2795
2830
  * Metadata of the asset with some additional information
2796
2831
  */
2797
2832
  export interface Metadata {
2798
- kind: '3d' | 'audio' | 'document' | 'image' | 'image-hdr' | 'json' | 'video';
2833
+ kind: '3d' | 'audio' | 'document' | 'image' | 'image-hdr' | 'json' | 'text' | 'video';
2799
2834
 
2800
2835
  /**
2801
2836
  * The type of the asset. Ex: 'inference-txt2img' will represent an asset generated
@@ -2811,6 +2846,7 @@ export namespace ExampleListResponse {
2811
2846
  | '3d23d'
2812
2847
  | '3d23d-texture'
2813
2848
  | 'audio2audio'
2849
+ | 'audio2txt'
2814
2850
  | 'audio2video'
2815
2851
  | 'background-removal'
2816
2852
  | 'canvas'
@@ -2821,6 +2857,7 @@ export namespace ExampleListResponse {
2821
2857
  | 'image-prompt-editing'
2822
2858
  | 'img23d'
2823
2859
  | 'img2img'
2860
+ | 'img2txt'
2824
2861
  | 'img2video'
2825
2862
  | 'inference-controlnet'
2826
2863
  | 'inference-controlnet-img2img'
@@ -2860,12 +2897,14 @@ export namespace ExampleListResponse {
2860
2897
  | 'txt23d'
2861
2898
  | 'txt2audio'
2862
2899
  | 'txt2img'
2900
+ | 'txt2txt'
2863
2901
  | 'txt2video'
2864
2902
  | 'unknown'
2865
2903
  | 'uploaded'
2866
2904
  | 'uploaded-3d'
2867
2905
  | 'uploaded-audio'
2868
2906
  | 'uploaded-avatar'
2907
+ | 'uploaded-text'
2869
2908
  | 'uploaded-video'
2870
2909
  | 'upscale'
2871
2910
  | 'upscale-skybox'
@@ -2889,10 +2928,6 @@ export namespace ExampleListResponse {
2889
2928
  */
2890
2929
  aspectRatio?: string;
2891
2930
 
2892
- /**
2893
- * Int to set between 0 and 255 for the opacity of the background in the result
2894
- * images.
2895
- */
2896
2931
  backgroundOpacity?: number;
2897
2932
 
2898
2933
  /**
@@ -2905,9 +2940,6 @@ export namespace ExampleListResponse {
2905
2940
  */
2906
2941
  bbox?: Array<number>;
2907
2942
 
2908
- /**
2909
- * Remove small dark spots (i.e. “pepper”) and connect small bright cracks.
2910
- */
2911
2943
  betterQuality?: boolean;
2912
2944
 
2913
2945
  /**
@@ -2983,9 +3015,6 @@ export namespace ExampleListResponse {
2983
3015
  */
2984
3016
  detailsLevel?: number;
2985
3017
 
2986
- /**
2987
- * The number of pixels to dilate the result masks.
2988
- */
2989
3018
  dilate?: number;
2990
3019
 
2991
3020
  /**
@@ -3290,12 +3319,16 @@ export namespace ExampleListResponse {
3290
3319
  resultContours?: boolean;
3291
3320
 
3292
3321
  /**
3293
- * Boolean to able output the cut out object.
3322
+ * Boolean to return the source image with the mask applied as alpha channel (RGBA
3323
+ * PNG, transparent background) instead of the binary mask. Mutually exclusive with
3324
+ * `resultMask` — passing both as `true` returns a 400 error. Note:
3325
+ * `backgroundOpacity` is no longer honored — alpha is binary (0/255) only.
3294
3326
  */
3295
3327
  resultImage?: boolean;
3296
3328
 
3297
3329
  /**
3298
- * Boolean to able return the masks (binary image) in the response.
3330
+ * Boolean to return the binary masks in the response. Mutually exclusive with
3331
+ * `resultImage` — passing both as `true` returns a 400 error.
3299
3332
  */
3300
3333
  resultMask?: boolean;
3301
3334
 
@@ -3515,6 +3548,13 @@ export namespace ExampleListResponse {
3515
3548
  */
3516
3549
  channels?: number;
3517
3550
 
3551
+ /**
3552
+ * Number of Unicode code points in the text. Code-point-aware (so a non-BMP emoji
3553
+ * counts as 1) but not full grapheme-cluster aware (a ZWJ sequence still counts as
3554
+ * several).
3555
+ */
3556
+ charCount?: number;
3557
+
3518
3558
  /**
3519
3559
  * Classification of the audio
3520
3560
  */
@@ -3560,6 +3600,14 @@ export namespace ExampleListResponse {
3560
3600
  */
3561
3601
  hasAnimations?: boolean;
3562
3602
 
3603
+ /**
3604
+ * True when `preview` holds the entire content unmodified — consumers can use it
3605
+ * directly without fetching `asset.url`. False or undefined means the content
3606
+ * exceeds the preview budget and consumers must fetch the full body from S3 to
3607
+ * read past the preview.
3608
+ */
3609
+ hasFullPreview?: boolean;
3610
+
3563
3611
  /**
3564
3612
  * Whether the mesh has normal vectors
3565
3613
  */
@@ -3582,6 +3630,15 @@ export namespace ExampleListResponse {
3582
3630
  */
3583
3631
  nbFrames?: number;
3584
3632
 
3633
+ /**
3634
+ * Leading slice of the content used for inline UI display and as a search
3635
+ * shortcut. Capped at TEXT_PREVIEW_MAX_BYTES (UTF-8) and always cut on a
3636
+ * code-point boundary so no character is split. Number of characters in the
3637
+ * preview varies by script (around 1024 for ASCII, ~340 for CJK, ~256 for
3638
+ * emoji-heavy text at the default 1 KB budget).
3639
+ */
3640
+ preview?: string;
3641
+
3585
3642
  /**
3586
3643
  * Sample rate of the media in Hz
3587
3644
  */
@@ -3598,6 +3655,11 @@ export namespace ExampleListResponse {
3598
3655
  vertexCount?: number;
3599
3656
 
3600
3657
  width?: number;
3658
+
3659
+ /**
3660
+ * Number of whitespace-separated words in the text
3661
+ */
3662
+ wordCount?: number;
3601
3663
  }
3602
3664
 
3603
3665
  export namespace Properties {
@@ -4391,7 +4453,7 @@ export namespace ExampleListResponse {
4391
4453
  * not able to create the asset on the flight on API side with dataurl without
4392
4454
  * data:kind, prefix
4393
4455
  */
4394
- kind?: '3d' | 'audio' | 'document' | 'image' | 'image-hdr' | 'json' | 'video';
4456
+ kind?: '3d' | 'audio' | 'document' | 'image' | 'image-hdr' | 'json' | 'text' | 'video';
4395
4457
 
4396
4458
  /**
4397
4459
  * The label displayed in the UI for this input
@@ -4624,7 +4686,7 @@ export namespace ExampleListResponse {
4624
4686
  * not able to create the asset on the flight on API side with dataurl without
4625
4687
  * data:kind, prefix
4626
4688
  */
4627
- kind?: '3d' | 'audio' | 'document' | 'image' | 'image-hdr' | 'json' | 'video';
4689
+ kind?: '3d' | 'audio' | 'document' | 'image' | 'image-hdr' | 'json' | 'text' | 'video';
4628
4690
 
4629
4691
  /**
4630
4692
  * The label displayed in the UI for this input