@indreamai/client 0.3.0 → 0.3.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 (3) hide show
  1. package/dist/index.d.cts +355 -224
  2. package/dist/index.d.ts +355 -224
  3. package/package.json +1 -1
package/dist/index.d.cts CHANGED
@@ -12,7 +12,7 @@ interface components {
12
12
  CreateProjectRequest: {
13
13
  title?: string;
14
14
  description?: string | null;
15
- editorState: components["schemas"]["editor-state.v1.schema"];
15
+ editorState: components['schemas']['editor-state.v1.schema'];
16
16
  stateVersion?: string;
17
17
  };
18
18
  PatchProjectRequest: {
@@ -21,23 +21,23 @@ interface components {
21
21
  };
22
22
  /** @description Request body for autosave-style editor state sync. */
23
23
  SyncProjectRequest: {
24
- editorState: components["schemas"]["editor-state.v1.schema"];
24
+ editorState: components['schemas']['editor-state.v1.schema'];
25
25
  stateVersion?: string;
26
26
  };
27
27
  /** @description Request body for stateless export creation. */
28
28
  CreateExportRequest: {
29
29
  clientTaskId?: string;
30
- editorState: components["schemas"]["editor-state.v1.schema"];
30
+ editorState: components['schemas']['editor-state.v1.schema'];
31
31
  stateVersion?: string;
32
32
  /** @enum {integer} */
33
33
  fps: 30 | 60;
34
34
  compositionWidth?: number;
35
35
  compositionHeight?: number;
36
36
  /** @enum {string} */
37
- ratio: "16:9" | "9:16" | "1:1" | "4:3" | "3:4" | "custom";
37
+ ratio: '16:9' | '9:16' | '1:1' | '4:3' | '3:4' | 'custom';
38
38
  scale: number;
39
39
  /** @enum {string} */
40
- format: "mp4" | "webm";
40
+ format: 'mp4' | 'webm';
41
41
  callbackUrl?: string;
42
42
  callbackHeaders?: {
43
43
  [key: string]: string;
@@ -49,10 +49,10 @@ interface components {
49
49
  /** @enum {integer} */
50
50
  fps: 30 | 60;
51
51
  /** @enum {string} */
52
- ratio: "16:9" | "9:16" | "1:1" | "4:3" | "3:4" | "custom";
52
+ ratio: '16:9' | '9:16' | '1:1' | '4:3' | '3:4' | 'custom';
53
53
  scale: number;
54
54
  /** @enum {string} */
55
- format: "mp4" | "webm";
55
+ format: 'mp4' | 'webm';
56
56
  callbackUrl?: string;
57
57
  callbackHeaders?: {
58
58
  [key: string]: string;
@@ -73,8 +73,8 @@ interface components {
73
73
  updatedAt: string;
74
74
  };
75
75
  /** @description Project detail response, including the latest persisted editor state. */
76
- ProjectDetail: components["schemas"]["ProjectSummary"] & {
77
- editorState: components["schemas"]["editor-state.v1.schema"];
76
+ ProjectDetail: components['schemas']['ProjectSummary'] & {
77
+ editorState: components['schemas']['editor-state.v1.schema'];
78
78
  stateVersion: string;
79
79
  };
80
80
  ProjectMetadata: {
@@ -130,7 +130,7 @@ interface components {
130
130
  createdByApiKeyId: string | null;
131
131
  clientTaskId: string | null;
132
132
  /** @enum {string} */
133
- status: "PENDING" | "PROCESSING" | "COMPLETED" | "FAILED" | "PAUSED" | "CANCELED";
133
+ status: 'PENDING' | 'PROCESSING' | 'COMPLETED' | 'FAILED' | 'PAUSED' | 'CANCELED';
134
134
  progress: number;
135
135
  error: string | null;
136
136
  outputUrl: string | null;
@@ -213,28 +213,28 @@ interface components {
213
213
  };
214
214
  EditorValidationResult: {
215
215
  valid: boolean;
216
- errors: components["schemas"]["EditorValidationError"][];
216
+ errors: components['schemas']['EditorValidationError'][];
217
217
  };
218
218
  ProjectSummaryEnvelope: {
219
- data: components["schemas"]["ProjectSummary"];
219
+ data: components['schemas']['ProjectSummary'];
220
220
  meta: {
221
221
  [key: string]: unknown;
222
222
  };
223
223
  };
224
224
  ProjectDetailEnvelope: {
225
- data: components["schemas"]["ProjectDetail"];
225
+ data: components['schemas']['ProjectDetail'];
226
226
  meta: {
227
227
  [key: string]: unknown;
228
228
  };
229
229
  };
230
230
  ProjectMetadataEnvelope: {
231
- data: components["schemas"]["ProjectMetadata"];
231
+ data: components['schemas']['ProjectMetadata'];
232
232
  meta: {
233
233
  [key: string]: unknown;
234
234
  };
235
235
  };
236
236
  SyncProjectEnvelope: {
237
- data: components["schemas"]["SyncProjectResponseData"];
237
+ data: components['schemas']['SyncProjectResponseData'];
238
238
  meta: {
239
239
  [key: string]: unknown;
240
240
  };
@@ -250,13 +250,13 @@ interface components {
250
250
  };
251
251
  };
252
252
  AssetEnvelope: {
253
- data: components["schemas"]["Asset"];
253
+ data: components['schemas']['Asset'];
254
254
  meta: {
255
255
  [key: string]: unknown;
256
256
  };
257
257
  };
258
258
  ListAssetsResponseEnvelope: {
259
- data: components["schemas"]["Asset"][];
259
+ data: components['schemas']['Asset'][];
260
260
  meta: {
261
261
  nextPageCursor?: string | null;
262
262
  } & {
@@ -297,19 +297,19 @@ interface components {
297
297
  };
298
298
  };
299
299
  CreateExportResponseEnvelope: {
300
- data: components["schemas"]["CreateExportResponseData"];
300
+ data: components['schemas']['CreateExportResponseData'];
301
301
  meta: {
302
302
  [key: string]: unknown;
303
303
  };
304
304
  };
305
305
  GetExportResponseEnvelope: {
306
- data: components["schemas"]["ExportTask"];
306
+ data: components['schemas']['ExportTask'];
307
307
  meta: {
308
308
  [key: string]: unknown;
309
309
  };
310
310
  };
311
311
  ListExportsResponseEnvelope: {
312
- data: components["schemas"]["ExportTask"][];
312
+ data: components['schemas']['ExportTask'][];
313
313
  meta: {
314
314
  nextPageCursor?: string | null;
315
315
  } & {
@@ -317,7 +317,7 @@ interface components {
317
317
  };
318
318
  };
319
319
  ListProjectsResponseEnvelope: {
320
- data: components["schemas"]["ProjectSummary"][];
320
+ data: components['schemas']['ProjectSummary'][];
321
321
  meta: {
322
322
  nextPageCursor?: string | null;
323
323
  } & {
@@ -325,13 +325,13 @@ interface components {
325
325
  };
326
326
  };
327
327
  EditorCapabilitiesResponseEnvelope: {
328
- data: components["schemas"]["EditorCapabilities"];
328
+ data: components['schemas']['EditorCapabilities'];
329
329
  meta: {
330
330
  [key: string]: unknown;
331
331
  };
332
332
  };
333
333
  EditorValidateResponseEnvelope: {
334
- data: components["schemas"]["EditorValidationResult"];
334
+ data: components['schemas']['EditorValidationResult'];
335
335
  meta: {
336
336
  capabilitiesVersion?: string;
337
337
  } & {
@@ -349,38 +349,43 @@ interface components {
349
349
  } & {
350
350
  [key: string]: unknown;
351
351
  };
352
+ captionEntry: {
353
+ text: string;
354
+ startMs: number;
355
+ endMs: number;
356
+ timestampMs?: number | null;
357
+ confidence?: number | null;
358
+ };
352
359
  primitive: string | number | boolean;
353
360
  animationSpec: {
354
361
  /** @enum {string} */
355
- type: "fade" | "slide-up" | "slide-down" | "slide-left" | "slide-right" | "zoom-in" | "zoom-out";
362
+ type: 'fade' | 'slide-up' | 'slide-down' | 'slide-left' | 'slide-right' | 'zoom-in' | 'zoom-out';
356
363
  durationTicks: number;
357
364
  /** @enum {string} */
358
- easing?: "linear" | "ease-in" | "ease-out" | "ease-in-out";
365
+ easing?: 'linear' | 'ease-in' | 'ease-out' | 'ease-in-out';
359
366
  params?: {
360
- [key: string]: components["schemas"]["primitive"];
367
+ [key: string]: components['schemas']['primitive'];
361
368
  };
362
- } & {
363
- [key: string]: unknown;
364
369
  };
365
370
  captionAnimationSpec: {
366
371
  /** @enum {string} */
367
- type: "converge" | "elastic-pop" | "typewriter" | "lay-down" | "center-type-out" | "curtain-close" | "jitter" | "rainbow" | "sweep-shine";
372
+ type: 'converge' | 'elastic-pop' | 'typewriter' | 'lay-down' | 'center-type-out' | 'curtain-close' | 'jitter' | 'rainbow' | 'sweep-shine';
368
373
  durationTicks: number;
369
374
  /** @enum {string} */
370
- easing?: "linear" | "ease-in" | "ease-out" | "ease-in-out";
375
+ easing?: 'linear' | 'ease-in' | 'ease-out' | 'ease-in-out';
371
376
  params?: {
372
- [key: string]: components["schemas"]["primitive"];
377
+ [key: string]: components['schemas']['primitive'];
373
378
  };
374
- } & {
375
- [key: string]: unknown;
376
379
  };
377
380
  keyframePoint: {
381
+ /** @description Local clip time in ticks. Service-level semantic validation requires timeTicks < item.durationTicks. */
378
382
  timeTicks: number;
379
383
  value: number;
380
384
  };
381
385
  animatedNumberTrack: {
382
386
  value: number;
383
- keyframes: components["schemas"]["keyframePoint"][];
387
+ /** @description Keyframes are expressed in local clip ticks and must stay inside the clip range. */
388
+ keyframes: components['schemas']['keyframePoint'][];
384
389
  };
385
390
  timelineItemBase: {
386
391
  id: string;
@@ -392,79 +397,182 @@ interface components {
392
397
  [key: string]: unknown;
393
398
  };
394
399
  geometryItemBase: {
395
- top: components["schemas"]["animatedNumberTrack"];
396
- left: components["schemas"]["animatedNumberTrack"];
397
- width: components["schemas"]["animatedNumberTrack"];
398
- height: components["schemas"]["animatedNumberTrack"];
399
- scaleX: components["schemas"]["animatedNumberTrack"];
400
- scaleY: components["schemas"]["animatedNumberTrack"];
401
- opacity: components["schemas"]["animatedNumberTrack"];
400
+ top: components['schemas']['animatedNumberTrack'];
401
+ left: components['schemas']['animatedNumberTrack'];
402
+ width: components['schemas']['animatedNumberTrack'];
403
+ height: components['schemas']['animatedNumberTrack'];
404
+ scaleX: components['schemas']['animatedNumberTrack'];
405
+ scaleY: components['schemas']['animatedNumberTrack'];
406
+ opacity: components['schemas']['animatedNumberTrack'];
402
407
  } & {
403
408
  [key: string]: unknown;
404
409
  };
405
- baseItem: components["schemas"]["timelineItemBase"] & components["schemas"]["geometryItemBase"];
410
+ baseItem: components['schemas']['timelineItemBase'] & components['schemas']['geometryItemBase'];
406
411
  clipAnimations: {
407
- in?: components["schemas"]["animationSpec"];
408
- out?: components["schemas"]["animationSpec"];
412
+ in?: components['schemas']['animationSpec'];
413
+ out?: components['schemas']['animationSpec'];
414
+ };
415
+ fontStyle: {
416
+ variant: string;
417
+ weight: string;
418
+ };
419
+ textBackground: {
420
+ color: string;
421
+ horizontalPadding: number;
422
+ borderRadius: number;
409
423
  };
410
424
  captionClipAnimations: {
411
- in?: components["schemas"]["captionAnimationSpec"];
412
- out?: components["schemas"]["captionAnimationSpec"];
413
- loop?: components["schemas"]["captionAnimationSpec"];
425
+ in?: components['schemas']['captionAnimationSpec'];
426
+ out?: components['schemas']['captionAnimationSpec'];
427
+ loop?: components['schemas']['captionAnimationSpec'];
428
+ };
429
+ textTemplateImageNode: {
430
+ id: string;
431
+ /** @constant */
432
+ type: 'image';
433
+ /** @enum {string} */
434
+ imageType: 'svg' | 'lottie';
435
+ imageComponentId: string | null;
436
+ imageLottieJson: {
437
+ [key: string]: unknown;
438
+ } | null;
439
+ x: number;
440
+ y: number;
441
+ width: number;
442
+ height: number;
443
+ opacity: number;
444
+ animations?: components['schemas']['clipAnimations'];
414
445
  };
446
+ textTemplateTextNode: {
447
+ id: string;
448
+ /** @constant */
449
+ type: 'text';
450
+ x: number;
451
+ y: number;
452
+ width: number;
453
+ height: number;
454
+ text: string;
455
+ color: string;
456
+ /** @enum {string} */
457
+ align: 'left' | 'center' | 'right';
458
+ fontFamily: string;
459
+ fontStyle: components['schemas']['fontStyle'];
460
+ fontSize: number;
461
+ lineHeight: number;
462
+ letterSpacing: number;
463
+ /** @enum {string} */
464
+ direction: 'ltr' | 'rtl';
465
+ strokeWidth: number;
466
+ strokeColor: string;
467
+ background: null | components['schemas']['textBackground'];
468
+ animations?: components['schemas']['clipAnimations'];
469
+ captionAnimations?: components['schemas']['captionClipAnimations'];
470
+ };
471
+ chartSeries: {
472
+ key: string;
473
+ label: string;
474
+ };
475
+ chartRowValues: {
476
+ [key: string]: number;
477
+ };
478
+ chartXYRow: {
479
+ label: string;
480
+ values: components['schemas']['chartRowValues'];
481
+ };
482
+ chartXYData: {
483
+ series: components['schemas']['chartSeries'][];
484
+ rows: components['schemas']['chartXYRow'][];
485
+ };
486
+ chartPieSlice: {
487
+ label: string;
488
+ value: number;
489
+ };
490
+ chartPieData: {
491
+ slices: components['schemas']['chartPieSlice'][];
492
+ };
493
+ chartScatterPoint: {
494
+ seriesKey: string;
495
+ x: number;
496
+ y: number;
497
+ };
498
+ chartScatterData: {
499
+ series: components['schemas']['chartSeries'][];
500
+ points: components['schemas']['chartScatterPoint'][];
501
+ };
502
+ assetUploadProgress: {
503
+ progress: number;
504
+ loadedBytes: number;
505
+ totalBytes: number;
506
+ };
507
+ assetUploadState: {
508
+ /** @constant */
509
+ type: 'pending-upload';
510
+ } | {
511
+ /** @constant */
512
+ type: 'in-progress';
513
+ progress: components['schemas']['assetUploadProgress'];
514
+ } | {
515
+ /** @constant */
516
+ type: 'uploaded';
517
+ } | {
518
+ /** @constant */
519
+ type: 'error';
520
+ error: string | null | {
521
+ [key: string]: unknown;
522
+ };
523
+ canRetry: boolean;
524
+ };
525
+ /** @description One timeline track. Items in the same track must not overlap in time, but may touch end-to-start. */
415
526
  track: {
416
527
  id: string;
528
+ /** @description Ordered item ids for a single track. Same-track items cannot overlap in time. */
417
529
  items: string[];
418
530
  hidden: boolean;
419
531
  muted: boolean;
420
- } & {
421
- [key: string]: unknown;
422
532
  };
423
- imageAsset: components["schemas"]["baseAsset"] & {
533
+ imageAsset: components['schemas']['baseAsset'] & {
424
534
  /** @constant */
425
- type: "image";
535
+ type: 'image';
426
536
  width: number;
427
537
  height: number;
428
538
  };
429
- videoAsset: components["schemas"]["baseAsset"] & {
539
+ videoAsset: components['schemas']['baseAsset'] & {
430
540
  /** @constant */
431
- type: "video";
541
+ type: 'video';
432
542
  durationInSeconds: number;
433
543
  hasAudioTrack: boolean;
434
544
  width: number;
435
545
  height: number;
436
546
  };
437
- gifAsset: components["schemas"]["baseAsset"] & {
547
+ gifAsset: components['schemas']['baseAsset'] & {
438
548
  /** @constant */
439
- type: "gif";
549
+ type: 'gif';
440
550
  durationInSeconds: number;
441
551
  width: number;
442
552
  height: number;
443
553
  /** @enum {string} */
444
- loopBehavior: "finite" | "loop";
554
+ loopBehavior: 'finite' | 'loop';
445
555
  };
446
- audioAsset: components["schemas"]["baseAsset"] & {
556
+ audioAsset: components['schemas']['baseAsset'] & {
447
557
  /** @constant */
448
- type: "audio";
558
+ type: 'audio';
449
559
  durationInSeconds: number;
450
560
  };
451
- captionAsset: components["schemas"]["baseAsset"] & {
561
+ captionAsset: components['schemas']['baseAsset'] & {
452
562
  /** @constant */
453
- type: "caption";
454
- captions: {
455
- [key: string]: unknown;
456
- }[];
563
+ type: 'caption';
564
+ captions: components['schemas']['captionEntry'][];
457
565
  /** @enum {string} */
458
- timingGranularity: "word" | "line";
566
+ timingGranularity: 'word' | 'line';
459
567
  };
460
- lottieAsset: components["schemas"]["baseAsset"] & {
568
+ lottieAsset: components['schemas']['baseAsset'] & {
461
569
  /** @constant */
462
- type: "lottie";
570
+ type: 'lottie';
463
571
  durationInSeconds: number;
464
572
  width: number;
465
573
  height: number;
466
574
  /** @enum {string} */
467
- resourceType: "lottie" | "svg";
575
+ resourceType: 'lottie' | 'svg';
468
576
  resourceJson?: {
469
577
  [key: string]: unknown;
470
578
  } | null;
@@ -473,291 +581,314 @@ interface components {
473
581
  [key: string]: unknown;
474
582
  } | null;
475
583
  };
476
- imageItem: components["schemas"]["baseItem"] & {
584
+ imageItem: components['schemas']['baseItem'] & {
477
585
  /** @constant */
478
- type: "image";
586
+ type: 'image';
479
587
  assetId: string;
480
588
  stickerId?: string | null;
481
589
  stickerVersion?: number | null;
482
590
  keepAspectRatio: boolean;
483
- borderRadius: components["schemas"]["animatedNumberTrack"];
484
- rotation: components["schemas"]["animatedNumberTrack"];
485
- cropLeft?: components["schemas"]["animatedNumberTrack"];
486
- cropTop?: components["schemas"]["animatedNumberTrack"];
487
- cropRight?: components["schemas"]["animatedNumberTrack"];
488
- cropBottom?: components["schemas"]["animatedNumberTrack"];
489
- animations?: components["schemas"]["clipAnimations"];
490
- };
491
- videoItem: components["schemas"]["baseItem"] & {
591
+ borderRadius: components['schemas']['animatedNumberTrack'];
592
+ rotation: components['schemas']['animatedNumberTrack'];
593
+ cropLeft?: components['schemas']['animatedNumberTrack'];
594
+ cropTop?: components['schemas']['animatedNumberTrack'];
595
+ cropRight?: components['schemas']['animatedNumberTrack'];
596
+ cropBottom?: components['schemas']['animatedNumberTrack'];
597
+ animations?: components['schemas']['clipAnimations'];
598
+ };
599
+ videoItem: components['schemas']['baseItem'] & {
492
600
  /** @constant */
493
- type: "video";
601
+ type: 'video';
494
602
  assetId: string;
495
603
  keepAspectRatio: boolean;
496
- borderRadius: components["schemas"]["animatedNumberTrack"];
497
- rotation: components["schemas"]["animatedNumberTrack"];
604
+ borderRadius: components['schemas']['animatedNumberTrack'];
605
+ rotation: components['schemas']['animatedNumberTrack'];
498
606
  videoStartFromInSeconds: number;
499
- decibelAdjustment: components["schemas"]["animatedNumberTrack"];
607
+ decibelAdjustment: components['schemas']['animatedNumberTrack'];
500
608
  playbackRate: number;
501
609
  audioFadeInDurationInSeconds: number;
502
610
  audioFadeOutDurationInSeconds: number;
503
- cropLeft?: components["schemas"]["animatedNumberTrack"];
504
- cropTop?: components["schemas"]["animatedNumberTrack"];
505
- cropRight?: components["schemas"]["animatedNumberTrack"];
506
- cropBottom?: components["schemas"]["animatedNumberTrack"];
507
- animations?: components["schemas"]["clipAnimations"];
611
+ cropLeft?: components['schemas']['animatedNumberTrack'];
612
+ cropTop?: components['schemas']['animatedNumberTrack'];
613
+ cropRight?: components['schemas']['animatedNumberTrack'];
614
+ cropBottom?: components['schemas']['animatedNumberTrack'];
615
+ animations?: components['schemas']['clipAnimations'];
508
616
  };
509
- gifItem: components["schemas"]["baseItem"] & {
617
+ gifItem: components['schemas']['baseItem'] & {
510
618
  /** @constant */
511
- type: "gif";
619
+ type: 'gif';
512
620
  assetId: string;
513
621
  keepAspectRatio: boolean;
514
- borderRadius: components["schemas"]["animatedNumberTrack"];
515
- rotation: components["schemas"]["animatedNumberTrack"];
622
+ borderRadius: components['schemas']['animatedNumberTrack'];
623
+ rotation: components['schemas']['animatedNumberTrack'];
516
624
  gifStartFromInSeconds: number;
517
625
  playbackRate: number;
518
- cropLeft?: components["schemas"]["animatedNumberTrack"];
519
- cropTop?: components["schemas"]["animatedNumberTrack"];
520
- cropRight?: components["schemas"]["animatedNumberTrack"];
521
- cropBottom?: components["schemas"]["animatedNumberTrack"];
522
- animations?: components["schemas"]["clipAnimations"];
626
+ cropLeft?: components['schemas']['animatedNumberTrack'];
627
+ cropTop?: components['schemas']['animatedNumberTrack'];
628
+ cropRight?: components['schemas']['animatedNumberTrack'];
629
+ cropBottom?: components['schemas']['animatedNumberTrack'];
630
+ animations?: components['schemas']['clipAnimations'];
523
631
  };
524
- lottieItem: components["schemas"]["baseItem"] & {
632
+ lottieItem: components['schemas']['baseItem'] & {
525
633
  /** @constant */
526
- type: "lottie";
634
+ type: 'lottie';
527
635
  assetId: string;
528
636
  keepAspectRatio: boolean;
529
- rotation: components["schemas"]["animatedNumberTrack"];
637
+ rotation: components['schemas']['animatedNumberTrack'];
530
638
  lottieStartFromInSeconds: number;
531
639
  playbackRate: number;
532
- animations?: components["schemas"]["clipAnimations"];
640
+ animations?: components['schemas']['clipAnimations'];
533
641
  };
534
- audioItem: components["schemas"]["baseItem"] & {
642
+ audioItem: components['schemas']['baseItem'] & {
535
643
  /** @constant */
536
- type: "audio";
644
+ type: 'audio';
537
645
  assetId: string;
538
646
  audioStartFromInSeconds: number;
539
- decibelAdjustment: components["schemas"]["animatedNumberTrack"];
647
+ decibelAdjustment: components['schemas']['animatedNumberTrack'];
540
648
  playbackRate: number;
541
649
  audioFadeInDurationInSeconds: number;
542
650
  audioFadeOutDurationInSeconds: number;
543
651
  };
544
- textItem: components["schemas"]["baseItem"] & {
652
+ textItem: components['schemas']['baseItem'] & {
545
653
  /** @constant */
546
- type: "text";
654
+ type: 'text';
547
655
  text: string;
548
656
  color: string;
549
657
  /** @enum {string} */
550
- align: "left" | "center" | "right";
658
+ align: 'left' | 'center' | 'right';
551
659
  fontFamily: string;
552
- fontStyle: {
553
- variant: string;
554
- weight: string;
555
- } & {
556
- [key: string]: unknown;
557
- };
660
+ fontStyle: components['schemas']['fontStyle'];
558
661
  fontSize: number;
559
662
  lineHeight: number;
560
663
  letterSpacing: number;
561
664
  resizeOnEdit: boolean;
562
665
  /** @enum {string} */
563
- direction: "ltr" | "rtl";
666
+ direction: 'ltr' | 'rtl';
564
667
  strokeWidth: number;
565
668
  strokeColor: string;
566
- background?: null | ({
567
- color: string;
568
- horizontalPadding: number;
569
- borderRadius: number;
570
- } & {
571
- [key: string]: unknown;
572
- });
573
- rotation?: components["schemas"]["animatedNumberTrack"];
574
- animations?: components["schemas"]["clipAnimations"];
575
- captionAnimations?: components["schemas"]["captionClipAnimations"];
669
+ background?: null | components['schemas']['textBackground'];
670
+ rotation?: components['schemas']['animatedNumberTrack'];
671
+ animations?: components['schemas']['clipAnimations'];
672
+ captionAnimations?: components['schemas']['captionClipAnimations'];
576
673
  };
577
- textTemplateItem: components["schemas"]["baseItem"] & {
674
+ textTemplateItem: components['schemas']['baseItem'] & {
578
675
  /** @constant */
579
- type: "text-template";
676
+ type: 'text-template';
580
677
  /** @constant */
581
678
  schemaVersion: 2;
582
679
  templateId: string;
583
680
  templateCategory: string;
584
- nodes: ({
585
- /** @enum {string} */
586
- type: "image" | "text";
587
- } & {
588
- [key: string]: unknown;
589
- })[];
590
- rotation?: components["schemas"]["animatedNumberTrack"];
591
- animations?: components["schemas"]["clipAnimations"];
681
+ nodes: (components['schemas']['textTemplateImageNode'] | components['schemas']['textTemplateTextNode'])[];
682
+ rotation?: components['schemas']['animatedNumberTrack'];
683
+ animations?: components['schemas']['clipAnimations'];
592
684
  };
593
- captionsItem: components["schemas"]["baseItem"] & {
685
+ captionsItem: components['schemas']['baseItem'] & {
594
686
  /** @constant */
595
- type: "captions";
687
+ type: 'captions';
596
688
  assetId: string;
597
689
  fontFamily: string;
598
- fontStyle: {
599
- variant: string;
600
- weight: string;
601
- } & {
602
- [key: string]: unknown;
603
- };
690
+ fontStyle: components['schemas']['fontStyle'];
604
691
  lineHeight: number;
605
692
  letterSpacing: number;
606
693
  fontSize: number;
607
694
  /** @enum {string} */
608
- align: "left" | "center" | "right";
695
+ align: 'left' | 'center' | 'right';
609
696
  color: string;
610
697
  highlightColor: string;
611
698
  strokeWidth: number;
612
699
  strokeColor: string;
613
700
  /** @enum {string} */
614
- direction: "ltr" | "rtl";
701
+ direction: 'ltr' | 'rtl';
615
702
  pageDurationInMilliseconds: number;
616
- captionStartInSeconds: number;
617
703
  maxLines: number;
704
+ contentStartOffsetMs: number;
618
705
  /** @enum {string} */
619
- source: "manual" | "auto" | "upload";
706
+ source: 'manual' | 'auto' | 'upload';
620
707
  captionGroupId: string | null;
621
- background: null | ({
622
- color: string;
623
- horizontalPadding: number;
624
- borderRadius: number;
625
- } & {
626
- [key: string]: unknown;
627
- });
628
- rotation?: components["schemas"]["animatedNumberTrack"];
629
- animations?: components["schemas"]["clipAnimations"];
630
- captionAnimations?: components["schemas"]["captionClipAnimations"];
708
+ background: null | components['schemas']['textBackground'];
709
+ rotation?: components['schemas']['animatedNumberTrack'];
710
+ animations?: components['schemas']['clipAnimations'];
711
+ captionAnimations?: components['schemas']['captionClipAnimations'];
631
712
  };
632
- solidItem: components["schemas"]["baseItem"] & {
713
+ solidItem: components['schemas']['baseItem'] & {
633
714
  /** @constant */
634
- type: "solid";
715
+ type: 'solid';
635
716
  color: string;
636
717
  /** @enum {string} */
637
- shape: "rectangle" | "circle" | "triangle" | "star";
718
+ shape: 'rectangle' | 'circle' | 'triangle' | 'star';
638
719
  keepAspectRatio: boolean;
639
- borderRadius: components["schemas"]["animatedNumberTrack"];
640
- rotation: components["schemas"]["animatedNumberTrack"];
641
- animations?: components["schemas"]["clipAnimations"];
720
+ borderRadius: components['schemas']['animatedNumberTrack'];
721
+ rotation: components['schemas']['animatedNumberTrack'];
722
+ animations?: components['schemas']['clipAnimations'];
642
723
  };
643
- illustrationItem: components["schemas"]["baseItem"] & {
724
+ illustrationItem: components['schemas']['baseItem'] & {
644
725
  /** @constant */
645
- type: "illustration";
726
+ type: 'illustration';
646
727
  illustrationName: string;
647
728
  color: string;
648
729
  keepAspectRatio: boolean;
649
- rotation: components["schemas"]["animatedNumberTrack"];
650
- animations?: components["schemas"]["clipAnimations"];
730
+ rotation: components['schemas']['animatedNumberTrack'];
731
+ animations?: components['schemas']['clipAnimations'];
651
732
  };
652
- effectItem: components["schemas"]["timelineItemBase"] & {
733
+ effectItem: components['schemas']['timelineItemBase'] & {
653
734
  /** @constant */
654
- type: "effect";
735
+ type: 'effect';
655
736
  /** @enum {string} */
656
- effectType: "flash-to-black" | "blur" | "blurred-opening" | "fade-in" | "fade-out";
737
+ effectType: 'flash-to-black' | 'blur' | 'blurred-opening' | 'fade-in' | 'fade-out';
657
738
  intensity: number;
658
739
  params?: {
659
- [key: string]: components["schemas"]["primitive"];
740
+ [key: string]: components['schemas']['primitive'];
660
741
  };
661
742
  };
662
- filterItem: components["schemas"]["timelineItemBase"] & {
743
+ filterItem: components['schemas']['timelineItemBase'] & {
663
744
  /** @constant */
664
- type: "filter";
745
+ type: 'filter';
665
746
  /** @enum {string} */
666
- filterType: "verdant-glow" | "cyberpunk-neon" | "vaporwave-blue" | "sunset-orange" | "lemon-cyan" | "absolute-red" | "sakura-pink" | "twilight-dusk";
747
+ filterType: 'verdant-glow' | 'cyberpunk-neon' | 'vaporwave-blue' | 'sunset-orange' | 'lemon-cyan' | 'absolute-red' | 'sakura-pink' | 'twilight-dusk';
667
748
  intensity: number;
668
749
  params?: {
669
- [key: string]: components["schemas"]["primitive"];
750
+ [key: string]: components['schemas']['primitive'];
670
751
  };
671
752
  };
672
- chartItem: components["schemas"]["baseItem"] & {
753
+ chartItem: components['schemas']['baseItem'] & ({
673
754
  /** @constant */
674
- type: "chart";
675
- chartType: string;
755
+ type: 'chart';
756
+ /** @constant */
757
+ chartType: 'line';
676
758
  themeColor: string;
677
- data: {
678
- [key: string]: unknown;
679
- };
759
+ data: components['schemas']['chartXYData'];
680
760
  animationDurationTicks: number;
681
761
  keepAspectRatio: boolean;
682
- rotation: components["schemas"]["animatedNumberTrack"];
683
- animations?: components["schemas"]["clipAnimations"];
684
- };
762
+ rotation: components['schemas']['animatedNumberTrack'];
763
+ animations?: components['schemas']['clipAnimations'];
764
+ } | {
765
+ /** @constant */
766
+ type: 'chart';
767
+ /** @constant */
768
+ chartType: 'bar';
769
+ themeColor: string;
770
+ data: components['schemas']['chartXYData'];
771
+ animationDurationTicks: number;
772
+ keepAspectRatio: boolean;
773
+ rotation: components['schemas']['animatedNumberTrack'];
774
+ animations?: components['schemas']['clipAnimations'];
775
+ } | {
776
+ /** @constant */
777
+ type: 'chart';
778
+ /** @constant */
779
+ chartType: 'area';
780
+ themeColor: string;
781
+ data: components['schemas']['chartXYData'];
782
+ animationDurationTicks: number;
783
+ keepAspectRatio: boolean;
784
+ rotation: components['schemas']['animatedNumberTrack'];
785
+ animations?: components['schemas']['clipAnimations'];
786
+ } | {
787
+ /** @constant */
788
+ type: 'chart';
789
+ /** @constant */
790
+ chartType: 'pie';
791
+ themeColor: string;
792
+ data: components['schemas']['chartPieData'];
793
+ animationDurationTicks: number;
794
+ keepAspectRatio: boolean;
795
+ rotation: components['schemas']['animatedNumberTrack'];
796
+ animations?: components['schemas']['clipAnimations'];
797
+ } | {
798
+ /** @constant */
799
+ type: 'chart';
800
+ /** @constant */
801
+ chartType: 'radar';
802
+ themeColor: string;
803
+ data: components['schemas']['chartXYData'];
804
+ animationDurationTicks: number;
805
+ keepAspectRatio: boolean;
806
+ rotation: components['schemas']['animatedNumberTrack'];
807
+ animations?: components['schemas']['clipAnimations'];
808
+ } | {
809
+ /** @constant */
810
+ type: 'chart';
811
+ /** @constant */
812
+ chartType: 'scatter';
813
+ themeColor: string;
814
+ data: components['schemas']['chartScatterData'];
815
+ animationDurationTicks: number;
816
+ keepAspectRatio: boolean;
817
+ rotation: components['schemas']['animatedNumberTrack'];
818
+ animations?: components['schemas']['clipAnimations'];
819
+ });
685
820
  transition: {
686
821
  id: string;
687
822
  trackId: string;
688
823
  fromClipId: string;
689
824
  toClipId: string;
690
825
  /** @enum {string} */
691
- type: "fade" | "slide" | "wipe" | "flip" | "clock-wipe" | "iris";
826
+ type: 'fade' | 'slide' | 'wipe' | 'flip' | 'clock-wipe' | 'iris';
692
827
  durationTicks: number;
693
828
  /** @enum {string} */
694
- easing?: "linear" | "ease-in" | "ease-out" | "ease-in-out";
829
+ easing?: 'linear' | 'ease-in' | 'ease-out' | 'ease-in-out';
695
830
  params?: {
696
- [key: string]: components["schemas"]["primitive"];
831
+ [key: string]: components['schemas']['primitive'];
697
832
  };
698
- } & {
699
- [key: string]: unknown;
700
833
  };
701
834
  globalBackground: {
702
835
  /** @constant */
703
- type: "none";
704
- } | ({
836
+ type: 'none';
837
+ } | {
705
838
  /** @constant */
706
- type: "color";
839
+ type: 'color';
707
840
  color: string;
708
841
  gradient: string | null;
709
- } & {
710
- [key: string]: unknown;
711
- }) | {
842
+ } | {
712
843
  /** @constant */
713
- type: "blur";
844
+ type: 'blur';
714
845
  /** @enum {integer} */
715
846
  level: 0 | 1 | 2 | 3 | 4;
716
- } | ({
847
+ } | {
717
848
  /** @constant */
718
- type: "image";
849
+ type: 'image';
719
850
  imageAssetId: string | null;
720
851
  imageUrl: string;
721
852
  /** @enum {string} */
722
- source: "preset" | "custom";
723
- } & {
724
- [key: string]: unknown;
725
- });
726
- brandRuntime: ({
727
- brandId?: string | null;
728
- logoX?: number;
729
- logoY?: number;
730
- managedItemIds?: string[];
731
- managedAssetIds?: string[];
732
- introShiftInFrames?: number;
733
- overlayTrackId?: string | null;
734
- underlayTrackId?: string | null;
735
- } & {
736
- [key: string]: unknown;
737
- }) | null;
853
+ source: 'preset' | 'custom';
854
+ };
855
+ brandRuntime: null | {
856
+ brandId: string | null;
857
+ logoX: number;
858
+ logoY: number;
859
+ managedItemIds: string[];
860
+ managedAssetIds: string[];
861
+ introShiftInFrames: number;
862
+ overlayTrackId: string | null;
863
+ underlayTrackId: string | null;
864
+ };
865
+ deletedAssetEntry: {
866
+ assetId: string;
867
+ remoteUrl: string | null;
868
+ remoteKey: string | null;
869
+ statusAtDeletion: components['schemas']['assetUploadState'];
870
+ };
738
871
  /** IndreamEditorStateV1 */
739
- "editor-state.v1.schema": {
872
+ 'editor-state.v1.schema': {
740
873
  compositionWidth: number;
741
874
  compositionHeight: number;
742
875
  /** @constant */
743
876
  timebaseTicksPerSecond: 240000;
744
877
  /** @enum {string} */
745
- outputRatio?: "16:9" | "9:16" | "1:1" | "4:3" | "3:4" | "custom";
746
- tracks: components["schemas"]["track"][];
878
+ outputRatio?: '16:9' | '9:16' | '1:1' | '4:3' | '3:4' | 'custom';
879
+ tracks: components['schemas']['track'][];
747
880
  assets: {
748
- [key: string]: components["schemas"]["imageAsset"] | components["schemas"]["videoAsset"] | components["schemas"]["gifAsset"] | components["schemas"]["audioAsset"] | components["schemas"]["captionAsset"] | components["schemas"]["lottieAsset"];
881
+ [key: string]: components['schemas']['imageAsset'] | components['schemas']['videoAsset'] | components['schemas']['gifAsset'] | components['schemas']['audioAsset'] | components['schemas']['captionAsset'] | components['schemas']['lottieAsset'];
749
882
  };
750
883
  items: {
751
- [key: string]: components["schemas"]["imageItem"] | components["schemas"]["videoItem"] | components["schemas"]["gifItem"] | components["schemas"]["lottieItem"] | components["schemas"]["audioItem"] | components["schemas"]["textItem"] | components["schemas"]["textTemplateItem"] | components["schemas"]["captionsItem"] | components["schemas"]["solidItem"] | components["schemas"]["illustrationItem"] | components["schemas"]["effectItem"] | components["schemas"]["filterItem"] | components["schemas"]["chartItem"];
884
+ [key: string]: components['schemas']['imageItem'] | components['schemas']['videoItem'] | components['schemas']['gifItem'] | components['schemas']['lottieItem'] | components['schemas']['audioItem'] | components['schemas']['textItem'] | components['schemas']['textTemplateItem'] | components['schemas']['captionsItem'] | components['schemas']['solidItem'] | components['schemas']['illustrationItem'] | components['schemas']['effectItem'] | components['schemas']['filterItem'] | components['schemas']['chartItem'];
752
885
  };
753
886
  transitions: {
754
- [key: string]: components["schemas"]["transition"];
887
+ [key: string]: components['schemas']['transition'];
755
888
  };
756
- globalBackground?: components["schemas"]["globalBackground"];
757
- brandRuntime?: components["schemas"]["brandRuntime"];
758
- deletedAssets?: {
759
- [key: string]: unknown;
760
- }[];
889
+ globalBackground?: components['schemas']['globalBackground'];
890
+ brandRuntime?: components['schemas']['brandRuntime'];
891
+ deletedAssets?: components['schemas']['deletedAssetEntry'][];
761
892
  } & {
762
893
  [key: string]: unknown;
763
894
  };
@@ -769,7 +900,7 @@ interface components {
769
900
  [name: string]: unknown;
770
901
  };
771
902
  content: {
772
- "application/json": components["schemas"]["Problem"];
903
+ 'application/json': components['schemas']['Problem'];
773
904
  };
774
905
  };
775
906
  };