@clipwright/core 0.36.0 → 0.37.0

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 (88) hide show
  1. package/dist/actors.d.ts +8 -0
  2. package/dist/actors.js +2 -0
  3. package/dist/actors.js.map +1 -1
  4. package/dist/caption-geometry.d.ts +43 -0
  5. package/dist/caption-geometry.js +41 -0
  6. package/dist/caption-geometry.js.map +1 -0
  7. package/dist/contract-dispositions.d.ts +997 -35
  8. package/dist/contract-dispositions.js +25 -5
  9. package/dist/contract-dispositions.js.map +1 -1
  10. package/dist/contracts/v1/workflow-brief.d.ts +2024 -38
  11. package/dist/contracts/v1/workflow-brief.js +2 -2
  12. package/dist/contracts/v1/workflow-brief.js.map +1 -1
  13. package/dist/contracts/v1/workflow-catalog.d.ts +2154 -72
  14. package/dist/contracts/v1/workflow-client.d.ts +1207 -70
  15. package/dist/contracts/v1/workflow-plan.d.ts +3234 -111
  16. package/dist/edit-billing.d.ts +1 -0
  17. package/dist/edit-billing.js +2 -0
  18. package/dist/edit-billing.js.map +1 -1
  19. package/dist/edit-document.d.ts +22 -0
  20. package/dist/edit-document.js +3 -0
  21. package/dist/edit-document.js.map +1 -1
  22. package/dist/edit-long-form.js +1 -1
  23. package/dist/edit-long-form.js.map +1 -1
  24. package/dist/edit-revision.d.ts +9 -0
  25. package/dist/edit-rules.d.ts +1 -0
  26. package/dist/edit-rules.js +3 -0
  27. package/dist/edit-rules.js.map +1 -1
  28. package/dist/edit-shots.d.ts +2 -0
  29. package/dist/edit-validate.d.ts +4 -2
  30. package/dist/edit-validate.js +18 -2
  31. package/dist/edit-validate.js.map +1 -1
  32. package/dist/errors.d.ts +1 -0
  33. package/dist/faceless-media-record.d.ts +27 -0
  34. package/dist/faceless-media-record.js +15 -1
  35. package/dist/faceless-media-record.js.map +1 -1
  36. package/dist/faceless-public.d.ts +107 -0
  37. package/dist/faceless-public.js +34 -1
  38. package/dist/faceless-public.js.map +1 -1
  39. package/dist/index.d.ts +4 -0
  40. package/dist/index.js +4 -0
  41. package/dist/index.js.map +1 -1
  42. package/dist/long-form-revision.d.ts +8 -0
  43. package/dist/openapi.js +2 -2
  44. package/dist/openapi.js.map +1 -1
  45. package/dist/presenter-beats.d.ts +1 -1
  46. package/dist/reference-analysis.d.ts +436 -75
  47. package/dist/reference-analysis.js +149 -28
  48. package/dist/reference-analysis.js.map +1 -1
  49. package/dist/reference-display.d.ts +36 -0
  50. package/dist/reference-display.js +78 -0
  51. package/dist/reference-display.js.map +1 -0
  52. package/dist/reference-profile.d.ts +2352 -36
  53. package/dist/reference-profile.js +138 -10
  54. package/dist/reference-profile.js.map +1 -1
  55. package/dist/reference-staging.d.ts +59 -57
  56. package/dist/reference-staging.js +6 -5
  57. package/dist/reference-staging.js.map +1 -1
  58. package/dist/resolved-timeline.d.ts +199 -2
  59. package/dist/resolved-timeline.js +17 -5
  60. package/dist/resolved-timeline.js.map +1 -1
  61. package/dist/scene-place.d.ts +225 -0
  62. package/dist/scene-place.js +120 -0
  63. package/dist/scene-place.js.map +1 -0
  64. package/dist/skills.d.ts +4677 -22
  65. package/dist/skills.js +130 -17
  66. package/dist/skills.js.map +1 -1
  67. package/dist/templates/index.d.ts +14 -4
  68. package/dist/templates/index.js +49 -5
  69. package/dist/templates/index.js.map +1 -1
  70. package/dist/ugc-interview.d.ts +122 -0
  71. package/dist/ugc-interview.js +260 -0
  72. package/dist/ugc-interview.js.map +1 -0
  73. package/dist/ugc-layers.d.ts +88 -6
  74. package/dist/ugc-layers.js +193 -5
  75. package/dist/ugc-layers.js.map +1 -1
  76. package/dist/voice-admission.d.ts +947 -2
  77. package/dist/workflows/methods/faceless-explainer.d.ts +599 -13
  78. package/dist/workflows/methods/kinetic-launch.d.ts +599 -13
  79. package/dist/workflows/methods/product-image-story.d.ts +599 -13
  80. package/dist/workflows/methods/reference-remake.d.ts +599 -13
  81. package/dist/workflows/methods/shared.d.ts +599 -13
  82. package/dist/workflows/methods/ugc-faq-answer.d.ts +599 -13
  83. package/dist/workflows/methods/ugc-product-intro.d.ts +599 -13
  84. package/dist/workflows/methods/website-proof-demo.d.ts +599 -13
  85. package/dist/workflows/reference-remake.d.ts +131 -35
  86. package/dist/workflows/reference-remake.js +179 -18
  87. package/dist/workflows/reference-remake.js.map +1 -1
  88. package/package.json +1 -1
@@ -21,18 +21,82 @@ export declare const REFERENCE_HOOK_MAX_SECONDS = 6;
21
21
  /** What a graphic does at a state change, in a closed set. The reference's words live in transcript, hook, spoken_summary and label_hint. */
22
22
  export declare const REFERENCE_STATE_CHANGES: readonly ["appears", "disappears", "toggles_on", "toggles_off", "checked", "value_changes", "highlighted", "other"];
23
23
  export type ReferenceStateChange = (typeof REFERENCE_STATE_CHANGES)[number];
24
+ export declare const MAX_BEAT_FRAMES = 12;
25
+ /** Who speaks, where they look and what their hands do (#978): closed lists, each claim with the seconds of the frames that show it. */
26
+ export declare const REFERENCE_SPEAKER_ROLES: readonly ["presenter", "interviewer", "guest", "narrator", "other"];
27
+ export declare const REFERENCE_MOUTHS: readonly ["moving", "closed", "not_visible"];
28
+ export declare const REFERENCE_MOUTH_MEASURES: readonly ["moving", "still", "not_measured"];
29
+ export declare const REFERENCE_GAZES: readonly ["camera", "off_left", "off_right", "up", "down", "closed", "mixed", "not_visible"];
30
+ export declare const REFERENCE_GESTURES: readonly ["both_hands_to_viewer", "point_at_viewer", "point_at_element", "count_on_fingers", "hold_object", "open_palms", "wave", "shrug", "thumbs_up", "other"];
31
+ export declare const MAX_REFERENCE_SPEAKERS = 6;
32
+ export declare const MAX_REFERENCE_SEGMENTS = 200;
33
+ export declare const MAX_CLAIM_FRAMES = 6;
34
+ export declare const MAX_REFERENCE_SPELLINGS = 40;
35
+ export declare const speakerId: z.ZodString;
36
+ export declare const referenceSpeaker: z.ZodObject<{
37
+ id: z.ZodString;
38
+ on_screen: z.ZodBoolean;
39
+ role: z.ZodEnum<{
40
+ guest: "guest";
41
+ interviewer: "interviewer";
42
+ narrator: "narrator";
43
+ other: "other";
44
+ presenter: "presenter";
45
+ }>;
46
+ word_count: z.ZodNumber;
47
+ caption: z.ZodNullable<z.ZodObject<{
48
+ colour: z.ZodNullable<z.ZodString>;
49
+ style: z.ZodString;
50
+ position: z.ZodNullable<z.ZodEnum<{
51
+ bottom: "bottom";
52
+ lower: "lower";
53
+ middle: "middle";
54
+ top: "top";
55
+ }>>;
56
+ box: z.ZodOptional<z.ZodObject<{
57
+ left: z.ZodNumber;
58
+ top: z.ZodNumber;
59
+ width: z.ZodNumber;
60
+ height: z.ZodNumber;
61
+ }, z.core.$strict>>;
62
+ }, z.core.$strict>>;
63
+ frames_s: z.ZodArray<z.ZodNumber>;
64
+ }, z.core.$strict>;
65
+ export type ReferenceSpeaker = z.infer<typeof referenceSpeaker>;
66
+ export declare const referenceSegment: z.ZodObject<{
67
+ start_s: z.ZodNumber;
68
+ end_s: z.ZodNumber;
69
+ text: z.ZodString;
70
+ speaker: z.ZodString;
71
+ mouth: z.ZodOptional<z.ZodObject<{
72
+ vision: z.ZodNullable<z.ZodEnum<{
73
+ closed: "closed";
74
+ moving: "moving";
75
+ not_visible: "not_visible";
76
+ }>>;
77
+ measured: z.ZodEnum<{
78
+ moving: "moving";
79
+ not_measured: "not_measured";
80
+ still: "still";
81
+ }>;
82
+ score: z.ZodNullable<z.ZodNumber>;
83
+ }, z.core.$strict>>;
84
+ frames_s: z.ZodArray<z.ZodNumber>;
85
+ }, z.core.$strict>;
86
+ export type ReferenceSegment = z.infer<typeof referenceSegment>;
24
87
  export declare const referenceWord: z.ZodObject<{
25
88
  text: z.ZodString;
26
89
  start_s: z.ZodNumber;
27
90
  end_s: z.ZodNumber;
28
91
  speaker: z.ZodOptional<z.ZodString>;
29
92
  }, z.core.$strict>;
93
+ export declare const referenceLanguage: z.ZodNullable<z.ZodString>;
30
94
  export declare const referenceHook: z.ZodObject<{
31
95
  text: z.ZodString;
32
96
  end_s: z.ZodNumber;
33
97
  caption: z.ZodOptional<z.ZodString>;
34
98
  }, z.core.$strict>;
35
- export declare const referenceProfile: z.ZodObject<{
99
+ declare const profileHead: {
36
100
  version: z.ZodLiteral<"reference-profile-v1">;
37
101
  source: z.ZodObject<{
38
102
  digest: z.ZodString;
@@ -187,6 +251,43 @@ export declare const referenceProfile: z.ZodObject<{
187
251
  reacting: "reacting";
188
252
  speaking: "speaking";
189
253
  }>;
254
+ key_frame_s: z.ZodOptional<z.ZodNumber>;
255
+ frames_s: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
256
+ speaker: z.ZodOptional<z.ZodNullable<z.ZodString>>;
257
+ speakers: z.ZodOptional<z.ZodArray<z.ZodObject<{
258
+ id: z.ZodString;
259
+ seconds: z.ZodNumber;
260
+ }, z.core.$strict>>>;
261
+ gaze: z.ZodOptional<z.ZodObject<{
262
+ direction: z.ZodEnum<{
263
+ camera: "camera";
264
+ closed: "closed";
265
+ down: "down";
266
+ mixed: "mixed";
267
+ not_visible: "not_visible";
268
+ off_left: "off_left";
269
+ off_right: "off_right";
270
+ up: "up";
271
+ }>;
272
+ frames_s: z.ZodArray<z.ZodNumber>;
273
+ }, z.core.$strict>>;
274
+ gestures: z.ZodOptional<z.ZodArray<z.ZodObject<{
275
+ kind: z.ZodEnum<{
276
+ both_hands_to_viewer: "both_hands_to_viewer";
277
+ count_on_fingers: "count_on_fingers";
278
+ hold_object: "hold_object";
279
+ open_palms: "open_palms";
280
+ other: "other";
281
+ point_at_element: "point_at_element";
282
+ point_at_viewer: "point_at_viewer";
283
+ shrug: "shrug";
284
+ thumbs_up: "thumbs_up";
285
+ wave: "wave";
286
+ }>;
287
+ at_s: z.ZodNumber;
288
+ label: z.ZodString;
289
+ frames_s: z.ZodArray<z.ZodNumber>;
290
+ }, z.core.$strict>>>;
190
291
  }, z.core.$strict>>;
191
292
  captions: z.ZodObject<{
192
293
  present: z.ZodBoolean;
@@ -204,6 +305,12 @@ export declare const referenceProfile: z.ZodObject<{
204
305
  punch: "punch";
205
306
  }>;
206
307
  hidden_under_graphics: z.ZodBoolean;
308
+ box: z.ZodOptional<z.ZodObject<{
309
+ left: z.ZodNumber;
310
+ top: z.ZodNumber;
311
+ width: z.ZodNumber;
312
+ height: z.ZodNumber;
313
+ }, z.core.$strict>>;
207
314
  }, z.core.$strict>;
208
315
  pacing: z.ZodObject<{
209
316
  layer_change_every_s: z.ZodNumber;
@@ -216,12 +323,9 @@ export declare const referenceProfile: z.ZodObject<{
216
323
  beat_index: z.ZodNumber;
217
324
  suggested_substitute: z.ZodString;
218
325
  }, z.core.$strict>>;
219
- analysis: z.ZodObject<{
220
- models: z.ZodArray<z.ZodString>;
221
- cost_usd: z.ZodOptional<z.ZodNumber>;
222
- latency_ms: z.ZodNumber;
223
- warnings: z.ZodOptional<z.ZodArray<z.ZodString>>;
224
- }, z.core.$strict>;
326
+ };
327
+ declare const profileTail: {
328
+ /** Optional since S7: a profile written before it has none and still parses. */
225
329
  voice: z.ZodOptional<z.ZodObject<{
226
330
  version: z.ZodLiteral<"voice-profile-v1">;
227
331
  method: z.ZodObject<{
@@ -358,11 +462,14 @@ export declare const referenceProfile: z.ZodObject<{
358
462
  }>>;
359
463
  }, z.core.$strict>>;
360
464
  }, z.core.$strict>>;
465
+ /** Optional since #884 S5d; absent reads as close. */
361
466
  presenter_framing: z.ZodOptional<z.ZodEnum<{
362
467
  close: "close";
363
468
  wide: "wide";
364
469
  }>>;
470
+ /** Optional since #884 S5d; absent reads as false. */
365
471
  presenter_mic: z.ZodOptional<z.ZodBoolean>;
472
+ /** Optional since #914 D1: a profile without it parses, and every field inside it is absent when not measured. */
366
473
  staging: z.ZodOptional<z.ZodObject<{
367
474
  version: z.ZodLiteral<"reference-staging-v1">;
368
475
  analysis_width: z.ZodNumber;
@@ -418,13 +525,13 @@ export declare const referenceProfile: z.ZodObject<{
418
525
  height: z.ZodNumber;
419
526
  }, z.core.$strict>>;
420
527
  rect_method: z.ZodOptional<z.ZodEnum<{
421
- "cv-before-after/v1": "cv-before-after/v1";
422
- "cv-cells/v1": "cv-cells/v1";
423
- "cv-parallax/v1": "cv-parallax/v1";
424
- "cv-template/v1": "cv-template/v1";
425
- "vision-still": "vision-still";
426
- "vision-video": "vision-video";
427
- "yunet-native/v1": "yunet-native/v1";
528
+ "estimated-still": "estimated-still";
529
+ "estimated-video": "estimated-video";
530
+ "frames-box/v1": "frames-box/v1";
531
+ "frames-face/v1": "frames-face/v1";
532
+ "frames-layer/v1": "frames-layer/v1";
533
+ "frames-motion/v1": "frames-motion/v1";
534
+ "frames-split/v1": "frames-split/v1";
428
535
  }>>;
429
536
  rects: z.ZodOptional<z.ZodArray<z.ZodObject<{
430
537
  t_s: z.ZodNumber;
@@ -469,13 +576,13 @@ export declare const referenceProfile: z.ZodObject<{
469
576
  displacement: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
470
577
  scale_from: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
471
578
  method: z.ZodOptional<z.ZodEnum<{
472
- "cv-before-after/v1": "cv-before-after/v1";
473
- "cv-cells/v1": "cv-cells/v1";
474
- "cv-parallax/v1": "cv-parallax/v1";
475
- "cv-template/v1": "cv-template/v1";
476
- "vision-still": "vision-still";
477
- "vision-video": "vision-video";
478
- "yunet-native/v1": "yunet-native/v1";
579
+ "estimated-still": "estimated-still";
580
+ "estimated-video": "estimated-video";
581
+ "frames-box/v1": "frames-box/v1";
582
+ "frames-face/v1": "frames-face/v1";
583
+ "frames-layer/v1": "frames-layer/v1";
584
+ "frames-motion/v1": "frames-motion/v1";
585
+ "frames-split/v1": "frames-split/v1";
479
586
  }>>;
480
587
  }, z.core.$strict>>;
481
588
  exit: z.ZodOptional<z.ZodObject<{
@@ -511,13 +618,13 @@ export declare const referenceProfile: z.ZodObject<{
511
618
  duration_s: z.ZodOptional<z.ZodNumber>;
512
619
  displacement: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
513
620
  method: z.ZodOptional<z.ZodEnum<{
514
- "cv-before-after/v1": "cv-before-after/v1";
515
- "cv-cells/v1": "cv-cells/v1";
516
- "cv-parallax/v1": "cv-parallax/v1";
517
- "cv-template/v1": "cv-template/v1";
518
- "vision-still": "vision-still";
519
- "vision-video": "vision-video";
520
- "yunet-native/v1": "yunet-native/v1";
621
+ "estimated-still": "estimated-still";
622
+ "estimated-video": "estimated-video";
623
+ "frames-box/v1": "frames-box/v1";
624
+ "frames-face/v1": "frames-face/v1";
625
+ "frames-layer/v1": "frames-layer/v1";
626
+ "frames-motion/v1": "frames-motion/v1";
627
+ "frames-split/v1": "frames-split/v1";
521
628
  }>>;
522
629
  }, z.core.$strict>>;
523
630
  layer: z.ZodOptional<z.ZodObject<{
@@ -529,13 +636,13 @@ export declare const referenceProfile: z.ZodObject<{
529
636
  unknown: "unknown";
530
637
  }>;
531
638
  method: z.ZodEnum<{
532
- "cv-before-after/v1": "cv-before-after/v1";
533
- "cv-cells/v1": "cv-cells/v1";
534
- "cv-parallax/v1": "cv-parallax/v1";
535
- "cv-template/v1": "cv-template/v1";
536
- "vision-still": "vision-still";
537
- "vision-video": "vision-video";
538
- "yunet-native/v1": "yunet-native/v1";
639
+ "estimated-still": "estimated-still";
640
+ "estimated-video": "estimated-video";
641
+ "frames-box/v1": "frames-box/v1";
642
+ "frames-face/v1": "frames-face/v1";
643
+ "frames-layer/v1": "frames-layer/v1";
644
+ "frames-motion/v1": "frames-motion/v1";
645
+ "frames-split/v1": "frames-split/v1";
539
646
  }>;
540
647
  covered_by: z.ZodArray<z.ZodEnum<{
541
648
  body: "body";
@@ -632,19 +739,2218 @@ export declare const referenceProfile: z.ZodObject<{
632
739
  }>;
633
740
  }, z.core.$strict>>;
634
741
  }, z.core.$strict>>;
742
+ /** Optional since #930 S1, as is hook: a profile written before them parses. */
635
743
  transcript: z.ZodOptional<z.ZodArray<z.ZodObject<{
636
744
  text: z.ZodString;
637
745
  start_s: z.ZodNumber;
638
746
  end_s: z.ZodNumber;
639
747
  speaker: z.ZodOptional<z.ZodString>;
640
748
  }, z.core.$strict>>>;
749
+ /** Optional since #990. */
750
+ transcript_language: z.ZodOptional<z.ZodNullable<z.ZodString>>;
641
751
  hook: z.ZodOptional<z.ZodObject<{
642
752
  text: z.ZodString;
643
753
  end_s: z.ZodNumber;
644
754
  caption: z.ZodOptional<z.ZodString>;
645
755
  }, z.core.$strict>>;
756
+ /** Optional since #978: who speaks, on or off screen, with each one's caption look; segments are the transcript as turns. */
757
+ speakers: z.ZodOptional<z.ZodArray<z.ZodObject<{
758
+ id: z.ZodString;
759
+ on_screen: z.ZodBoolean;
760
+ role: z.ZodEnum<{
761
+ guest: "guest";
762
+ interviewer: "interviewer";
763
+ narrator: "narrator";
764
+ other: "other";
765
+ presenter: "presenter";
766
+ }>;
767
+ word_count: z.ZodNumber;
768
+ caption: z.ZodNullable<z.ZodObject<{
769
+ colour: z.ZodNullable<z.ZodString>;
770
+ style: z.ZodString;
771
+ position: z.ZodNullable<z.ZodEnum<{
772
+ bottom: "bottom";
773
+ lower: "lower";
774
+ middle: "middle";
775
+ top: "top";
776
+ }>>;
777
+ box: z.ZodOptional<z.ZodObject<{
778
+ left: z.ZodNumber;
779
+ top: z.ZodNumber;
780
+ width: z.ZodNumber;
781
+ height: z.ZodNumber;
782
+ }, z.core.$strict>>;
783
+ }, z.core.$strict>>;
784
+ frames_s: z.ZodArray<z.ZodNumber>;
785
+ }, z.core.$strict>>>;
786
+ segments: z.ZodOptional<z.ZodArray<z.ZodObject<{
787
+ start_s: z.ZodNumber;
788
+ end_s: z.ZodNumber;
789
+ text: z.ZodString;
790
+ speaker: z.ZodString;
791
+ mouth: z.ZodOptional<z.ZodObject<{
792
+ vision: z.ZodNullable<z.ZodEnum<{
793
+ closed: "closed";
794
+ moving: "moving";
795
+ not_visible: "not_visible";
796
+ }>>;
797
+ measured: z.ZodEnum<{
798
+ moving: "moving";
799
+ not_measured: "not_measured";
800
+ still: "still";
801
+ }>;
802
+ score: z.ZodNullable<z.ZodNumber>;
803
+ }, z.core.$strict>>;
804
+ frames_s: z.ZodArray<z.ZodNumber>;
805
+ }, z.core.$strict>>>;
806
+ /** Optional since #989. */
807
+ spellings: z.ZodOptional<z.ZodArray<z.ZodObject<{
808
+ heard: z.ZodString;
809
+ shown: z.ZodString;
810
+ start_s: z.ZodNumber;
811
+ end_s: z.ZodNumber;
812
+ }, z.core.$strict>>>;
813
+ };
814
+ type ProfileBody = z.infer<z.ZodObject<typeof profileHead & typeof profileTail>>;
815
+ declare function checkProfile(profile: ProfileBody, ctx: z.RefinementCtx): void;
816
+ /** The profile's fields but `analysis`, and its checks: the profile as kept with an analysis is built from them where it is written. */
817
+ export declare const referenceProfileShape: {
818
+ version: z.ZodLiteral<"reference-profile-v1">;
819
+ source: z.ZodObject<{
820
+ digest: z.ZodString;
821
+ duration_s: z.ZodNumber;
822
+ width: z.ZodNumber;
823
+ height: z.ZodNumber;
824
+ url: z.ZodOptional<z.ZodString>;
825
+ }, z.core.$strict>;
826
+ format: z.ZodEnum<{
827
+ broll: "broll";
828
+ faceless: "faceless";
829
+ other: "other";
830
+ talking_head_graphics: "talking_head_graphics";
831
+ }>;
832
+ beats: z.ZodArray<z.ZodObject<{
833
+ start_frac: z.ZodNumber;
834
+ end_frac: z.ZodNumber;
835
+ start_s: z.ZodNumber;
836
+ end_s: z.ZodNumber;
837
+ role: z.ZodEnum<{
838
+ agitation: "agitation";
839
+ before_after: "before_after";
840
+ cta: "cta";
841
+ demo: "demo";
842
+ hook: "hook";
843
+ offer: "offer";
844
+ other: "other";
845
+ problem: "problem";
846
+ proof: "proof";
847
+ social_proof: "social_proof";
848
+ solution: "solution";
849
+ }>;
850
+ spoken_summary: z.ZodString;
851
+ graphics: z.ZodArray<z.ZodObject<{
852
+ kind: z.ZodEnum<{
853
+ callout: "callout";
854
+ checklist: "checklist";
855
+ compare: "compare";
856
+ end_card: "end_card";
857
+ insert_media: "insert_media";
858
+ layout_split: "layout_split";
859
+ lower_third: "lower_third";
860
+ notification: "notification";
861
+ overlay_media: "overlay_media";
862
+ particles: "particles";
863
+ phone_call: "phone_call";
864
+ progress: "progress";
865
+ quote: "quote";
866
+ rating: "rating";
867
+ stat: "stat";
868
+ tag: "tag";
869
+ title_card: "title_card";
870
+ unmapped: "unmapped";
871
+ }>;
872
+ source_kind: z.ZodEnum<{
873
+ banner: "banner";
874
+ before_after_split: "before_after_split";
875
+ callout: "callout";
876
+ checklist: "checklist";
877
+ comment_box: "comment_box";
878
+ compare: "compare";
879
+ concept_card: "concept_card";
880
+ end_card: "end_card";
881
+ insert_media: "insert_media";
882
+ layout_split: "layout_split";
883
+ logo_card: "logo_card";
884
+ lower_third: "lower_third";
885
+ notification: "notification";
886
+ other: "other";
887
+ overlay_media: "overlay_media";
888
+ particles: "particles";
889
+ phone_call: "phone_call";
890
+ price_card: "price_card";
891
+ product_ui: "product_ui";
892
+ progress: "progress";
893
+ quote: "quote";
894
+ rating: "rating";
895
+ screenshot: "screenshot";
896
+ split_screen: "split_screen";
897
+ stat: "stat";
898
+ tag: "tag";
899
+ title_card: "title_card";
900
+ toggle_checklist: "toggle_checklist";
901
+ unmapped: "unmapped";
902
+ }>;
903
+ position: z.ZodEnum<{
904
+ bottom: "bottom";
905
+ bottom_left: "bottom_left";
906
+ bottom_right: "bottom_right";
907
+ center: "center";
908
+ full_screen: "full_screen";
909
+ other: "other";
910
+ split_bottom: "split_bottom";
911
+ split_top: "split_top";
912
+ top: "top";
913
+ top_left: "top_left";
914
+ top_right: "top_right";
915
+ }>;
916
+ state_changes: z.ZodArray<z.ZodObject<{
917
+ at_frac: z.ZodNumber;
918
+ change: z.ZodEnum<{
919
+ appears: "appears";
920
+ checked: "checked";
921
+ disappears: "disappears";
922
+ highlighted: "highlighted";
923
+ other: "other";
924
+ toggles_off: "toggles_off";
925
+ toggles_on: "toggles_on";
926
+ value_changes: "value_changes";
927
+ }>;
928
+ }, z.core.$strict>>;
929
+ label_hint: z.ZodString;
930
+ }, z.core.$strict>>;
931
+ camera: z.ZodEnum<{
932
+ other: "other";
933
+ punch_in: "punch_in";
934
+ shake: "shake";
935
+ static: "static";
936
+ zoom_out: "zoom_out";
937
+ }>;
938
+ transition_in: z.ZodEnum<{
939
+ cut: "cut";
940
+ flash: "flash";
941
+ none: "none";
942
+ other: "other";
943
+ wipe: "wipe";
944
+ zoom: "zoom";
945
+ }>;
946
+ sounds: z.ZodArray<z.ZodObject<{
947
+ at_frac: z.ZodNumber;
948
+ kind: z.ZodEnum<{
949
+ answer: "answer";
950
+ click: "click";
951
+ edit: "edit";
952
+ flash: "flash";
953
+ hangup: "hangup";
954
+ money: "money";
955
+ music: "music";
956
+ notify: "notify";
957
+ other: "other";
958
+ pop: "pop";
959
+ recorded_audio: "recorded_audio";
960
+ ring: "ring";
961
+ step: "step";
962
+ toggle: "toggle";
963
+ whoosh: "whoosh";
964
+ }>;
965
+ }, z.core.$strict>>;
966
+ presenter_behaviour: z.ZodEnum<{
967
+ absent: "absent";
968
+ listening: "listening";
969
+ reacting: "reacting";
970
+ speaking: "speaking";
971
+ }>;
972
+ key_frame_s: z.ZodOptional<z.ZodNumber>;
973
+ frames_s: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
974
+ speaker: z.ZodOptional<z.ZodNullable<z.ZodString>>;
975
+ speakers: z.ZodOptional<z.ZodArray<z.ZodObject<{
976
+ id: z.ZodString;
977
+ seconds: z.ZodNumber;
978
+ }, z.core.$strict>>>;
979
+ gaze: z.ZodOptional<z.ZodObject<{
980
+ direction: z.ZodEnum<{
981
+ camera: "camera";
982
+ closed: "closed";
983
+ down: "down";
984
+ mixed: "mixed";
985
+ not_visible: "not_visible";
986
+ off_left: "off_left";
987
+ off_right: "off_right";
988
+ up: "up";
989
+ }>;
990
+ frames_s: z.ZodArray<z.ZodNumber>;
991
+ }, z.core.$strict>>;
992
+ gestures: z.ZodOptional<z.ZodArray<z.ZodObject<{
993
+ kind: z.ZodEnum<{
994
+ both_hands_to_viewer: "both_hands_to_viewer";
995
+ count_on_fingers: "count_on_fingers";
996
+ hold_object: "hold_object";
997
+ open_palms: "open_palms";
998
+ other: "other";
999
+ point_at_element: "point_at_element";
1000
+ point_at_viewer: "point_at_viewer";
1001
+ shrug: "shrug";
1002
+ thumbs_up: "thumbs_up";
1003
+ wave: "wave";
1004
+ }>;
1005
+ at_s: z.ZodNumber;
1006
+ label: z.ZodString;
1007
+ frames_s: z.ZodArray<z.ZodNumber>;
1008
+ }, z.core.$strict>>>;
1009
+ }, z.core.$strict>>;
1010
+ captions: z.ZodObject<{
1011
+ present: z.ZodBoolean;
1012
+ words_per_caption_max: z.ZodNumber;
1013
+ position: z.ZodEnum<{
1014
+ bottom: "bottom";
1015
+ lower: "lower";
1016
+ middle: "middle";
1017
+ top: "top";
1018
+ }>;
1019
+ emphasis_style: z.ZodEnum<{
1020
+ color: "color";
1021
+ none: "none";
1022
+ pill: "pill";
1023
+ punch: "punch";
1024
+ }>;
1025
+ hidden_under_graphics: z.ZodBoolean;
1026
+ box: z.ZodOptional<z.ZodObject<{
1027
+ left: z.ZodNumber;
1028
+ top: z.ZodNumber;
1029
+ width: z.ZodNumber;
1030
+ height: z.ZodNumber;
1031
+ }, z.core.$strict>>;
1032
+ }, z.core.$strict>;
1033
+ pacing: z.ZodObject<{
1034
+ layer_change_every_s: z.ZodNumber;
1035
+ face_share: z.ZodNumber;
1036
+ }, z.core.$strict>;
1037
+ palette: z.ZodArray<z.ZodString>;
1038
+ music: z.ZodString;
1039
+ unmapped: z.ZodArray<z.ZodObject<{
1040
+ what: z.ZodString;
1041
+ beat_index: z.ZodNumber;
1042
+ suggested_substitute: z.ZodString;
1043
+ }, z.core.$strict>>;
1044
+ /** Optional since S7: a profile written before it has none and still parses. */
1045
+ voice: z.ZodOptional<z.ZodObject<{
1046
+ version: z.ZodLiteral<"voice-profile-v1">;
1047
+ method: z.ZodObject<{
1048
+ pause_drop_db: z.ZodNumber;
1049
+ pause_min_run_s: z.ZodNumber;
1050
+ cut_safe_db: z.ZodNumber;
1051
+ pitch: z.ZodLiteral<"yin">;
1052
+ sample_rate: z.ZodNumber;
1053
+ }, z.core.$strict>;
1054
+ presenter_speaker: z.ZodNullable<z.ZodString>;
1055
+ speakers: z.ZodArray<z.ZodObject<{
1056
+ speaker: z.ZodString;
1057
+ word_count: z.ZodNumber;
1058
+ sentence_count: z.ZodNumber;
1059
+ pace: z.ZodObject<{
1060
+ status: z.ZodEnum<{
1061
+ measured: "measured";
1062
+ unmeasured: "unmeasured";
1063
+ }>;
1064
+ words_per_second: z.ZodNullable<z.ZodNumber>;
1065
+ basis: z.ZodEnum<{
1066
+ sentence_spans: "sentence_spans";
1067
+ turn_spans: "turn_spans";
1068
+ }>;
1069
+ }, z.core.$strict>;
1070
+ pauses: z.ZodObject<{
1071
+ sentence_end: z.ZodObject<{
1072
+ timestamp: z.ZodObject<{
1073
+ count: z.ZodNumber;
1074
+ median_s: z.ZodNullable<z.ZodNumber>;
1075
+ p90_s: z.ZodNullable<z.ZodNumber>;
1076
+ count_ge150ms: z.ZodNumber;
1077
+ }, z.core.$strict>;
1078
+ acoustic_pause: z.ZodObject<{
1079
+ count: z.ZodNumber;
1080
+ median_s: z.ZodNullable<z.ZodNumber>;
1081
+ p90_s: z.ZodNullable<z.ZodNumber>;
1082
+ count_ge150ms: z.ZodNumber;
1083
+ }, z.core.$strict>;
1084
+ cut_safe: z.ZodObject<{
1085
+ count: z.ZodNumber;
1086
+ median_s: z.ZodNullable<z.ZodNumber>;
1087
+ p90_s: z.ZodNullable<z.ZodNumber>;
1088
+ count_ge150ms: z.ZodNumber;
1089
+ }, z.core.$strict>;
1090
+ acoustic_no_dip_count: z.ZodNumber;
1091
+ acoustic_unconfirmed_count: z.ZodNumber;
1092
+ }, z.core.$strict>;
1093
+ comma: z.ZodObject<{
1094
+ timestamp: z.ZodObject<{
1095
+ count: z.ZodNumber;
1096
+ median_s: z.ZodNullable<z.ZodNumber>;
1097
+ p90_s: z.ZodNullable<z.ZodNumber>;
1098
+ count_ge150ms: z.ZodNumber;
1099
+ }, z.core.$strict>;
1100
+ acoustic_pause: z.ZodObject<{
1101
+ count: z.ZodNumber;
1102
+ median_s: z.ZodNullable<z.ZodNumber>;
1103
+ p90_s: z.ZodNullable<z.ZodNumber>;
1104
+ count_ge150ms: z.ZodNumber;
1105
+ }, z.core.$strict>;
1106
+ cut_safe: z.ZodObject<{
1107
+ count: z.ZodNumber;
1108
+ median_s: z.ZodNullable<z.ZodNumber>;
1109
+ p90_s: z.ZodNullable<z.ZodNumber>;
1110
+ count_ge150ms: z.ZodNumber;
1111
+ }, z.core.$strict>;
1112
+ acoustic_no_dip_count: z.ZodNumber;
1113
+ acoustic_unconfirmed_count: z.ZodNumber;
1114
+ }, z.core.$strict>;
1115
+ mid_phrase: z.ZodObject<{
1116
+ timestamp: z.ZodObject<{
1117
+ count: z.ZodNumber;
1118
+ median_s: z.ZodNullable<z.ZodNumber>;
1119
+ p90_s: z.ZodNullable<z.ZodNumber>;
1120
+ count_ge150ms: z.ZodNumber;
1121
+ }, z.core.$strict>;
1122
+ acoustic_pause: z.ZodObject<{
1123
+ count: z.ZodNumber;
1124
+ median_s: z.ZodNullable<z.ZodNumber>;
1125
+ p90_s: z.ZodNullable<z.ZodNumber>;
1126
+ count_ge150ms: z.ZodNumber;
1127
+ }, z.core.$strict>;
1128
+ cut_safe: z.ZodObject<{
1129
+ count: z.ZodNumber;
1130
+ median_s: z.ZodNullable<z.ZodNumber>;
1131
+ p90_s: z.ZodNullable<z.ZodNumber>;
1132
+ count_ge150ms: z.ZodNumber;
1133
+ }, z.core.$strict>;
1134
+ acoustic_no_dip_count: z.ZodNumber;
1135
+ acoustic_unconfirmed_count: z.ZodNumber;
1136
+ }, z.core.$strict>;
1137
+ }, z.core.$strict>;
1138
+ long_pause_count: z.ZodNumber;
1139
+ hinge: z.ZodObject<{
1140
+ status: z.ZodEnum<{
1141
+ measured: "measured";
1142
+ not_evaluated: "not_evaluated";
1143
+ }>;
1144
+ sentence_share: z.ZodNullable<z.ZodNumber>;
1145
+ evaluated_sentences: z.ZodNumber;
1146
+ coverage: z.ZodNullable<z.ZodNumber>;
1147
+ timestamp_sentence_share: z.ZodNullable<z.ZodNumber>;
1148
+ median_position: z.ZodNullable<z.ZodNumber>;
1149
+ median_seconds: z.ZodNullable<z.ZodNumber>;
1150
+ }, z.core.$strict>;
1151
+ pitch: z.ZodObject<{
1152
+ status: z.ZodEnum<{
1153
+ measured: "measured";
1154
+ no_voiced_frames: "no_voiced_frames";
1155
+ }>;
1156
+ ceiling_hz: z.ZodNumber;
1157
+ ceiling_basis: z.ZodEnum<{
1158
+ configured: "configured";
1159
+ default: "default";
1160
+ low_f0: "low_f0";
1161
+ }>;
1162
+ median_hz: z.ZodNullable<z.ZodNumber>;
1163
+ p10_hz: z.ZodNullable<z.ZodNumber>;
1164
+ p90_hz: z.ZodNullable<z.ZodNumber>;
1165
+ range_st: z.ZodNullable<z.ZodNumber>;
1166
+ voiced_frames: z.ZodNumber;
1167
+ }, z.core.$strict>;
1168
+ loudness: z.ZodObject<{
1169
+ status: z.ZodEnum<{
1170
+ measured: "measured";
1171
+ unmeasured: "unmeasured";
1172
+ }>;
1173
+ range_db_p10_p90: z.ZodNullable<z.ZodNumber>;
1174
+ }, z.core.$strict>;
1175
+ warnings: z.ZodArray<z.ZodEnum<{
1176
+ background_music_present_f0_and_intensity_may_be_contaminated: "background_music_present_f0_and_intensity_may_be_contaminated";
1177
+ no_sentence_terminal_punctuation_pace_uses_turn_spans: "no_sentence_terminal_punctuation_pace_uses_turn_spans";
1178
+ }>>;
1179
+ }, z.core.$strict>>;
1180
+ }, z.core.$strict>>;
1181
+ /** Optional since #884 S5d; absent reads as close. */
1182
+ presenter_framing: z.ZodOptional<z.ZodEnum<{
1183
+ close: "close";
1184
+ wide: "wide";
1185
+ }>>;
1186
+ /** Optional since #884 S5d; absent reads as false. */
1187
+ presenter_mic: z.ZodOptional<z.ZodBoolean>;
1188
+ /** Optional since #914 D1: a profile without it parses, and every field inside it is absent when not measured. */
1189
+ staging: z.ZodOptional<z.ZodObject<{
1190
+ version: z.ZodLiteral<"reference-staging-v1">;
1191
+ analysis_width: z.ZodNumber;
1192
+ anchors: z.ZodArray<z.ZodObject<{
1193
+ id: z.ZodString;
1194
+ t_s: z.ZodNumber;
1195
+ }, z.core.$strict>>;
1196
+ elements: z.ZodArray<z.ZodObject<{
1197
+ id: z.ZodString;
1198
+ beat_index: z.ZodNumber;
1199
+ graphic_index: z.ZodNullable<z.ZodNumber>;
1200
+ kind: z.ZodEnum<{
1201
+ banner: "banner";
1202
+ before_after_split: "before_after_split";
1203
+ callout: "callout";
1204
+ checklist: "checklist";
1205
+ comment_box: "comment_box";
1206
+ compare: "compare";
1207
+ concept_card: "concept_card";
1208
+ end_card: "end_card";
1209
+ insert_media: "insert_media";
1210
+ layout_split: "layout_split";
1211
+ logo_card: "logo_card";
1212
+ lower_third: "lower_third";
1213
+ notification: "notification";
1214
+ other: "other";
1215
+ overlay_media: "overlay_media";
1216
+ particles: "particles";
1217
+ phone_call: "phone_call";
1218
+ price_card: "price_card";
1219
+ product_ui: "product_ui";
1220
+ progress: "progress";
1221
+ quote: "quote";
1222
+ rating: "rating";
1223
+ screenshot: "screenshot";
1224
+ split_screen: "split_screen";
1225
+ stat: "stat";
1226
+ tag: "tag";
1227
+ title_card: "title_card";
1228
+ toggle_checklist: "toggle_checklist";
1229
+ unmapped: "unmapped";
1230
+ }>;
1231
+ rect_hold: z.ZodOptional<z.ZodObject<{
1232
+ left: z.ZodNumber;
1233
+ top: z.ZodNumber;
1234
+ width: z.ZodNumber;
1235
+ height: z.ZodNumber;
1236
+ }, z.core.$strict>>;
1237
+ rect_hold_face: z.ZodOptional<z.ZodObject<{
1238
+ left: z.ZodNumber;
1239
+ top: z.ZodNumber;
1240
+ width: z.ZodNumber;
1241
+ height: z.ZodNumber;
1242
+ }, z.core.$strict>>;
1243
+ rect_method: z.ZodOptional<z.ZodEnum<{
1244
+ "estimated-still": "estimated-still";
1245
+ "estimated-video": "estimated-video";
1246
+ "frames-box/v1": "frames-box/v1";
1247
+ "frames-face/v1": "frames-face/v1";
1248
+ "frames-layer/v1": "frames-layer/v1";
1249
+ "frames-motion/v1": "frames-motion/v1";
1250
+ "frames-split/v1": "frames-split/v1";
1251
+ }>>;
1252
+ rects: z.ZodOptional<z.ZodArray<z.ZodObject<{
1253
+ t_s: z.ZodNumber;
1254
+ rect: z.ZodObject<{
1255
+ left: z.ZodNumber;
1256
+ top: z.ZodNumber;
1257
+ width: z.ZodNumber;
1258
+ height: z.ZodNumber;
1259
+ }, z.core.$strict>;
1260
+ visible: z.ZodNumber;
1261
+ }, z.core.$strict>>>;
1262
+ entry: z.ZodOptional<z.ZodObject<{
1263
+ first_visible_s: z.ZodOptional<z.ZodNumber>;
1264
+ settled_s: z.ZodOptional<z.ZodNumber>;
1265
+ anchors: z.ZodOptional<z.ZodArray<z.ZodObject<{
1266
+ id: z.ZodString;
1267
+ offset_s: z.ZodNumber;
1268
+ }, z.core.$strict>>>;
1269
+ style: z.ZodOptional<z.ZodEnum<{
1270
+ blur_in: "blur_in";
1271
+ fade: "fade";
1272
+ pop: "pop";
1273
+ scale_up: "scale_up";
1274
+ slide: "slide";
1275
+ tilt_in: "tilt_in";
1276
+ typewriter: "typewriter";
1277
+ unknown: "unknown";
1278
+ wipe: "wipe";
1279
+ }>>;
1280
+ from: z.ZodOptional<z.ZodEnum<{
1281
+ bottom: "bottom";
1282
+ left: "left";
1283
+ lower_left: "lower_left";
1284
+ lower_right: "lower_right";
1285
+ none: "none";
1286
+ right: "right";
1287
+ top: "top";
1288
+ upper_left: "upper_left";
1289
+ upper_right: "upper_right";
1290
+ }>>;
1291
+ duration_s: z.ZodOptional<z.ZodNumber>;
1292
+ displacement: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
1293
+ scale_from: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1294
+ method: z.ZodOptional<z.ZodEnum<{
1295
+ "estimated-still": "estimated-still";
1296
+ "estimated-video": "estimated-video";
1297
+ "frames-box/v1": "frames-box/v1";
1298
+ "frames-face/v1": "frames-face/v1";
1299
+ "frames-layer/v1": "frames-layer/v1";
1300
+ "frames-motion/v1": "frames-motion/v1";
1301
+ "frames-split/v1": "frames-split/v1";
1302
+ }>>;
1303
+ }, z.core.$strict>>;
1304
+ exit: z.ZodOptional<z.ZodObject<{
1305
+ last_visible_s: z.ZodOptional<z.ZodNumber>;
1306
+ anchors: z.ZodOptional<z.ZodArray<z.ZodObject<{
1307
+ id: z.ZodString;
1308
+ offset_s: z.ZodNumber;
1309
+ }, z.core.$strict>>>;
1310
+ style: z.ZodOptional<z.ZodEnum<{
1311
+ blur_in: "blur_in";
1312
+ cut: "cut";
1313
+ fade: "fade";
1314
+ flash: "flash";
1315
+ pop: "pop";
1316
+ scale_up: "scale_up";
1317
+ slide: "slide";
1318
+ tilt_in: "tilt_in";
1319
+ typewriter: "typewriter";
1320
+ unknown: "unknown";
1321
+ wipe: "wipe";
1322
+ }>>;
1323
+ to: z.ZodOptional<z.ZodEnum<{
1324
+ bottom: "bottom";
1325
+ left: "left";
1326
+ lower_left: "lower_left";
1327
+ lower_right: "lower_right";
1328
+ none: "none";
1329
+ right: "right";
1330
+ top: "top";
1331
+ upper_left: "upper_left";
1332
+ upper_right: "upper_right";
1333
+ }>>;
1334
+ duration_s: z.ZodOptional<z.ZodNumber>;
1335
+ displacement: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
1336
+ method: z.ZodOptional<z.ZodEnum<{
1337
+ "estimated-still": "estimated-still";
1338
+ "estimated-video": "estimated-video";
1339
+ "frames-box/v1": "frames-box/v1";
1340
+ "frames-face/v1": "frames-face/v1";
1341
+ "frames-layer/v1": "frames-layer/v1";
1342
+ "frames-motion/v1": "frames-motion/v1";
1343
+ "frames-split/v1": "frames-split/v1";
1344
+ }>>;
1345
+ }, z.core.$strict>>;
1346
+ layer: z.ZodOptional<z.ZodObject<{
1347
+ value: z.ZodEnum<{
1348
+ behind_presenter: "behind_presenter";
1349
+ in_front_of_presenter: "in_front_of_presenter";
1350
+ no_overlap: "no_overlap";
1351
+ presenter_absent: "presenter_absent";
1352
+ unknown: "unknown";
1353
+ }>;
1354
+ method: z.ZodEnum<{
1355
+ "estimated-still": "estimated-still";
1356
+ "estimated-video": "estimated-video";
1357
+ "frames-box/v1": "frames-box/v1";
1358
+ "frames-face/v1": "frames-face/v1";
1359
+ "frames-layer/v1": "frames-layer/v1";
1360
+ "frames-motion/v1": "frames-motion/v1";
1361
+ "frames-split/v1": "frames-split/v1";
1362
+ }>;
1363
+ covered_by: z.ZodArray<z.ZodEnum<{
1364
+ body: "body";
1365
+ chair: "chair";
1366
+ desk: "desk";
1367
+ face: "face";
1368
+ hair: "hair";
1369
+ hand: "hand";
1370
+ microphone: "microphone";
1371
+ other: "other";
1372
+ shoulder: "shoulder";
1373
+ }>>;
1374
+ face_clear: z.ZodOptional<z.ZodBoolean>;
1375
+ face_core_cover_max: z.ZodOptional<z.ZodNumber>;
1376
+ face_covered_share: z.ZodOptional<z.ZodNumber>;
1377
+ blurs_presenter: z.ZodOptional<z.ZodBoolean>;
1378
+ }, z.core.$strict>>;
1379
+ motion: z.ZodOptional<z.ZodObject<{
1380
+ kind: z.ZodOptional<z.ZodEnum<{
1381
+ drift: "drift";
1382
+ float: "float";
1383
+ moves_with_frame: "moves_with_frame";
1384
+ pushed: "pushed";
1385
+ scale: "scale";
1386
+ static: "static";
1387
+ }>>;
1388
+ drift_per_s: z.ZodOptional<z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>>;
1389
+ scale_per_s: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1390
+ wobble: z.ZodOptional<z.ZodOptional<z.ZodObject<{
1391
+ amplitude: z.ZodNumber;
1392
+ period_s: z.ZodNumber;
1393
+ }, z.core.$strict>>>;
1394
+ }, z.core.$strict>>;
1395
+ }, z.core.$strict>>;
1396
+ freezes: z.ZodArray<z.ZodObject<{
1397
+ start_s: z.ZodNumber;
1398
+ end_s: z.ZodNumber;
1399
+ anchors: z.ZodArray<z.ZodObject<{
1400
+ id: z.ZodString;
1401
+ offset_s: z.ZodNumber;
1402
+ }, z.core.$strict>>;
1403
+ face_box_start: z.ZodObject<{
1404
+ left: z.ZodNumber;
1405
+ top: z.ZodNumber;
1406
+ width: z.ZodNumber;
1407
+ height: z.ZodNumber;
1408
+ }, z.core.$strict>;
1409
+ face_box_end: z.ZodObject<{
1410
+ left: z.ZodNumber;
1411
+ top: z.ZodNumber;
1412
+ width: z.ZodNumber;
1413
+ height: z.ZodNumber;
1414
+ }, z.core.$strict>;
1415
+ roll_deg: z.ZodNumber;
1416
+ yaw: z.ZodNumber;
1417
+ pitch: z.ZodNumber;
1418
+ gaze: z.ZodOptional<z.ZodEnum<{
1419
+ camera: "camera";
1420
+ closed: "closed";
1421
+ down: "down";
1422
+ element: "element";
1423
+ left: "left";
1424
+ right: "right";
1425
+ up_left: "up_left";
1426
+ up_right: "up_right";
1427
+ }>>;
1428
+ head_roll: z.ZodEnum<{
1429
+ left: "left";
1430
+ right: "right";
1431
+ upright: "upright";
1432
+ }>;
1433
+ expression: z.ZodOptional<z.ZodEnum<{
1434
+ neutral: "neutral";
1435
+ other: "other";
1436
+ smile: "smile";
1437
+ surprised: "surprised";
1438
+ thinking: "thinking";
1439
+ }>>;
1440
+ hands: z.ZodOptional<z.ZodEnum<{
1441
+ at_chest: "at_chest";
1442
+ gesturing: "gesturing";
1443
+ other: "other";
1444
+ out_of_frame: "out_of_frame";
1445
+ }>>;
1446
+ frame_motion: z.ZodOptional<z.ZodObject<{
1447
+ scale_end: z.ZodNumber;
1448
+ centre_shift: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
1449
+ }, z.core.$strict>>;
1450
+ ends_with: z.ZodEnum<{
1451
+ cut: "cut";
1452
+ end: "end";
1453
+ flash: "flash";
1454
+ unfreeze: "unfreeze";
1455
+ }>;
1456
+ }, z.core.$strict>>;
1457
+ }, z.core.$strict>>;
1458
+ /** Optional since #930 S1, as is hook: a profile written before them parses. */
1459
+ transcript: z.ZodOptional<z.ZodArray<z.ZodObject<{
1460
+ text: z.ZodString;
1461
+ start_s: z.ZodNumber;
1462
+ end_s: z.ZodNumber;
1463
+ speaker: z.ZodOptional<z.ZodString>;
1464
+ }, z.core.$strict>>>;
1465
+ /** Optional since #990. */
1466
+ transcript_language: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1467
+ hook: z.ZodOptional<z.ZodObject<{
1468
+ text: z.ZodString;
1469
+ end_s: z.ZodNumber;
1470
+ caption: z.ZodOptional<z.ZodString>;
1471
+ }, z.core.$strict>>;
1472
+ /** Optional since #978: who speaks, on or off screen, with each one's caption look; segments are the transcript as turns. */
1473
+ speakers: z.ZodOptional<z.ZodArray<z.ZodObject<{
1474
+ id: z.ZodString;
1475
+ on_screen: z.ZodBoolean;
1476
+ role: z.ZodEnum<{
1477
+ guest: "guest";
1478
+ interviewer: "interviewer";
1479
+ narrator: "narrator";
1480
+ other: "other";
1481
+ presenter: "presenter";
1482
+ }>;
1483
+ word_count: z.ZodNumber;
1484
+ caption: z.ZodNullable<z.ZodObject<{
1485
+ colour: z.ZodNullable<z.ZodString>;
1486
+ style: z.ZodString;
1487
+ position: z.ZodNullable<z.ZodEnum<{
1488
+ bottom: "bottom";
1489
+ lower: "lower";
1490
+ middle: "middle";
1491
+ top: "top";
1492
+ }>>;
1493
+ box: z.ZodOptional<z.ZodObject<{
1494
+ left: z.ZodNumber;
1495
+ top: z.ZodNumber;
1496
+ width: z.ZodNumber;
1497
+ height: z.ZodNumber;
1498
+ }, z.core.$strict>>;
1499
+ }, z.core.$strict>>;
1500
+ frames_s: z.ZodArray<z.ZodNumber>;
1501
+ }, z.core.$strict>>>;
1502
+ segments: z.ZodOptional<z.ZodArray<z.ZodObject<{
1503
+ start_s: z.ZodNumber;
1504
+ end_s: z.ZodNumber;
1505
+ text: z.ZodString;
1506
+ speaker: z.ZodString;
1507
+ mouth: z.ZodOptional<z.ZodObject<{
1508
+ vision: z.ZodNullable<z.ZodEnum<{
1509
+ closed: "closed";
1510
+ moving: "moving";
1511
+ not_visible: "not_visible";
1512
+ }>>;
1513
+ measured: z.ZodEnum<{
1514
+ moving: "moving";
1515
+ not_measured: "not_measured";
1516
+ still: "still";
1517
+ }>;
1518
+ score: z.ZodNullable<z.ZodNumber>;
1519
+ }, z.core.$strict>>;
1520
+ frames_s: z.ZodArray<z.ZodNumber>;
1521
+ }, z.core.$strict>>>;
1522
+ /** Optional since #989. */
1523
+ spellings: z.ZodOptional<z.ZodArray<z.ZodObject<{
1524
+ heard: z.ZodString;
1525
+ shown: z.ZodString;
1526
+ start_s: z.ZodNumber;
1527
+ end_s: z.ZodNumber;
1528
+ }, z.core.$strict>>>;
1529
+ };
1530
+ export declare const checkReferenceProfile: typeof checkProfile;
1531
+ export declare const referenceAnalysisWarningsField: {
1532
+ warnings: z.ZodOptional<z.ZodArray<z.ZodString>>;
1533
+ };
1534
+ /** The profile an answer carries: `analysis` holds only its warnings. */
1535
+ export declare const referenceProfileAnswer: z.ZodObject<{
1536
+ version: z.ZodLiteral<"reference-profile-v1">;
1537
+ source: z.ZodObject<{
1538
+ digest: z.ZodString;
1539
+ duration_s: z.ZodNumber;
1540
+ width: z.ZodNumber;
1541
+ height: z.ZodNumber;
1542
+ url: z.ZodOptional<z.ZodString>;
1543
+ }, z.core.$strict>;
1544
+ format: z.ZodEnum<{
1545
+ broll: "broll";
1546
+ faceless: "faceless";
1547
+ other: "other";
1548
+ talking_head_graphics: "talking_head_graphics";
1549
+ }>;
1550
+ beats: z.ZodArray<z.ZodObject<{
1551
+ start_frac: z.ZodNumber;
1552
+ end_frac: z.ZodNumber;
1553
+ start_s: z.ZodNumber;
1554
+ end_s: z.ZodNumber;
1555
+ role: z.ZodEnum<{
1556
+ agitation: "agitation";
1557
+ before_after: "before_after";
1558
+ cta: "cta";
1559
+ demo: "demo";
1560
+ hook: "hook";
1561
+ offer: "offer";
1562
+ other: "other";
1563
+ problem: "problem";
1564
+ proof: "proof";
1565
+ social_proof: "social_proof";
1566
+ solution: "solution";
1567
+ }>;
1568
+ spoken_summary: z.ZodString;
1569
+ graphics: z.ZodArray<z.ZodObject<{
1570
+ kind: z.ZodEnum<{
1571
+ callout: "callout";
1572
+ checklist: "checklist";
1573
+ compare: "compare";
1574
+ end_card: "end_card";
1575
+ insert_media: "insert_media";
1576
+ layout_split: "layout_split";
1577
+ lower_third: "lower_third";
1578
+ notification: "notification";
1579
+ overlay_media: "overlay_media";
1580
+ particles: "particles";
1581
+ phone_call: "phone_call";
1582
+ progress: "progress";
1583
+ quote: "quote";
1584
+ rating: "rating";
1585
+ stat: "stat";
1586
+ tag: "tag";
1587
+ title_card: "title_card";
1588
+ unmapped: "unmapped";
1589
+ }>;
1590
+ source_kind: z.ZodEnum<{
1591
+ banner: "banner";
1592
+ before_after_split: "before_after_split";
1593
+ callout: "callout";
1594
+ checklist: "checklist";
1595
+ comment_box: "comment_box";
1596
+ compare: "compare";
1597
+ concept_card: "concept_card";
1598
+ end_card: "end_card";
1599
+ insert_media: "insert_media";
1600
+ layout_split: "layout_split";
1601
+ logo_card: "logo_card";
1602
+ lower_third: "lower_third";
1603
+ notification: "notification";
1604
+ other: "other";
1605
+ overlay_media: "overlay_media";
1606
+ particles: "particles";
1607
+ phone_call: "phone_call";
1608
+ price_card: "price_card";
1609
+ product_ui: "product_ui";
1610
+ progress: "progress";
1611
+ quote: "quote";
1612
+ rating: "rating";
1613
+ screenshot: "screenshot";
1614
+ split_screen: "split_screen";
1615
+ stat: "stat";
1616
+ tag: "tag";
1617
+ title_card: "title_card";
1618
+ toggle_checklist: "toggle_checklist";
1619
+ unmapped: "unmapped";
1620
+ }>;
1621
+ position: z.ZodEnum<{
1622
+ bottom: "bottom";
1623
+ bottom_left: "bottom_left";
1624
+ bottom_right: "bottom_right";
1625
+ center: "center";
1626
+ full_screen: "full_screen";
1627
+ other: "other";
1628
+ split_bottom: "split_bottom";
1629
+ split_top: "split_top";
1630
+ top: "top";
1631
+ top_left: "top_left";
1632
+ top_right: "top_right";
1633
+ }>;
1634
+ state_changes: z.ZodArray<z.ZodObject<{
1635
+ at_frac: z.ZodNumber;
1636
+ change: z.ZodEnum<{
1637
+ appears: "appears";
1638
+ checked: "checked";
1639
+ disappears: "disappears";
1640
+ highlighted: "highlighted";
1641
+ other: "other";
1642
+ toggles_off: "toggles_off";
1643
+ toggles_on: "toggles_on";
1644
+ value_changes: "value_changes";
1645
+ }>;
1646
+ }, z.core.$strict>>;
1647
+ label_hint: z.ZodString;
1648
+ }, z.core.$strict>>;
1649
+ camera: z.ZodEnum<{
1650
+ other: "other";
1651
+ punch_in: "punch_in";
1652
+ shake: "shake";
1653
+ static: "static";
1654
+ zoom_out: "zoom_out";
1655
+ }>;
1656
+ transition_in: z.ZodEnum<{
1657
+ cut: "cut";
1658
+ flash: "flash";
1659
+ none: "none";
1660
+ other: "other";
1661
+ wipe: "wipe";
1662
+ zoom: "zoom";
1663
+ }>;
1664
+ sounds: z.ZodArray<z.ZodObject<{
1665
+ at_frac: z.ZodNumber;
1666
+ kind: z.ZodEnum<{
1667
+ answer: "answer";
1668
+ click: "click";
1669
+ edit: "edit";
1670
+ flash: "flash";
1671
+ hangup: "hangup";
1672
+ money: "money";
1673
+ music: "music";
1674
+ notify: "notify";
1675
+ other: "other";
1676
+ pop: "pop";
1677
+ recorded_audio: "recorded_audio";
1678
+ ring: "ring";
1679
+ step: "step";
1680
+ toggle: "toggle";
1681
+ whoosh: "whoosh";
1682
+ }>;
1683
+ }, z.core.$strict>>;
1684
+ presenter_behaviour: z.ZodEnum<{
1685
+ absent: "absent";
1686
+ listening: "listening";
1687
+ reacting: "reacting";
1688
+ speaking: "speaking";
1689
+ }>;
1690
+ key_frame_s: z.ZodOptional<z.ZodNumber>;
1691
+ frames_s: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
1692
+ speaker: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1693
+ speakers: z.ZodOptional<z.ZodArray<z.ZodObject<{
1694
+ id: z.ZodString;
1695
+ seconds: z.ZodNumber;
1696
+ }, z.core.$strict>>>;
1697
+ gaze: z.ZodOptional<z.ZodObject<{
1698
+ direction: z.ZodEnum<{
1699
+ camera: "camera";
1700
+ closed: "closed";
1701
+ down: "down";
1702
+ mixed: "mixed";
1703
+ not_visible: "not_visible";
1704
+ off_left: "off_left";
1705
+ off_right: "off_right";
1706
+ up: "up";
1707
+ }>;
1708
+ frames_s: z.ZodArray<z.ZodNumber>;
1709
+ }, z.core.$strict>>;
1710
+ gestures: z.ZodOptional<z.ZodArray<z.ZodObject<{
1711
+ kind: z.ZodEnum<{
1712
+ both_hands_to_viewer: "both_hands_to_viewer";
1713
+ count_on_fingers: "count_on_fingers";
1714
+ hold_object: "hold_object";
1715
+ open_palms: "open_palms";
1716
+ other: "other";
1717
+ point_at_element: "point_at_element";
1718
+ point_at_viewer: "point_at_viewer";
1719
+ shrug: "shrug";
1720
+ thumbs_up: "thumbs_up";
1721
+ wave: "wave";
1722
+ }>;
1723
+ at_s: z.ZodNumber;
1724
+ label: z.ZodString;
1725
+ frames_s: z.ZodArray<z.ZodNumber>;
1726
+ }, z.core.$strict>>>;
1727
+ }, z.core.$strict>>;
1728
+ captions: z.ZodObject<{
1729
+ present: z.ZodBoolean;
1730
+ words_per_caption_max: z.ZodNumber;
1731
+ position: z.ZodEnum<{
1732
+ bottom: "bottom";
1733
+ lower: "lower";
1734
+ middle: "middle";
1735
+ top: "top";
1736
+ }>;
1737
+ emphasis_style: z.ZodEnum<{
1738
+ color: "color";
1739
+ none: "none";
1740
+ pill: "pill";
1741
+ punch: "punch";
1742
+ }>;
1743
+ hidden_under_graphics: z.ZodBoolean;
1744
+ box: z.ZodOptional<z.ZodObject<{
1745
+ left: z.ZodNumber;
1746
+ top: z.ZodNumber;
1747
+ width: z.ZodNumber;
1748
+ height: z.ZodNumber;
1749
+ }, z.core.$strict>>;
1750
+ }, z.core.$strict>;
1751
+ pacing: z.ZodObject<{
1752
+ layer_change_every_s: z.ZodNumber;
1753
+ face_share: z.ZodNumber;
1754
+ }, z.core.$strict>;
1755
+ palette: z.ZodArray<z.ZodString>;
1756
+ music: z.ZodString;
1757
+ unmapped: z.ZodArray<z.ZodObject<{
1758
+ what: z.ZodString;
1759
+ beat_index: z.ZodNumber;
1760
+ suggested_substitute: z.ZodString;
1761
+ }, z.core.$strict>>;
1762
+ voice: z.ZodOptional<z.ZodObject<{
1763
+ version: z.ZodLiteral<"voice-profile-v1">;
1764
+ method: z.ZodObject<{
1765
+ pause_drop_db: z.ZodNumber;
1766
+ pause_min_run_s: z.ZodNumber;
1767
+ cut_safe_db: z.ZodNumber;
1768
+ pitch: z.ZodLiteral<"yin">;
1769
+ sample_rate: z.ZodNumber;
1770
+ }, z.core.$strict>;
1771
+ presenter_speaker: z.ZodNullable<z.ZodString>;
1772
+ speakers: z.ZodArray<z.ZodObject<{
1773
+ speaker: z.ZodString;
1774
+ word_count: z.ZodNumber;
1775
+ sentence_count: z.ZodNumber;
1776
+ pace: z.ZodObject<{
1777
+ status: z.ZodEnum<{
1778
+ measured: "measured";
1779
+ unmeasured: "unmeasured";
1780
+ }>;
1781
+ words_per_second: z.ZodNullable<z.ZodNumber>;
1782
+ basis: z.ZodEnum<{
1783
+ sentence_spans: "sentence_spans";
1784
+ turn_spans: "turn_spans";
1785
+ }>;
1786
+ }, z.core.$strict>;
1787
+ pauses: z.ZodObject<{
1788
+ sentence_end: z.ZodObject<{
1789
+ timestamp: z.ZodObject<{
1790
+ count: z.ZodNumber;
1791
+ median_s: z.ZodNullable<z.ZodNumber>;
1792
+ p90_s: z.ZodNullable<z.ZodNumber>;
1793
+ count_ge150ms: z.ZodNumber;
1794
+ }, z.core.$strict>;
1795
+ acoustic_pause: z.ZodObject<{
1796
+ count: z.ZodNumber;
1797
+ median_s: z.ZodNullable<z.ZodNumber>;
1798
+ p90_s: z.ZodNullable<z.ZodNumber>;
1799
+ count_ge150ms: z.ZodNumber;
1800
+ }, z.core.$strict>;
1801
+ cut_safe: z.ZodObject<{
1802
+ count: z.ZodNumber;
1803
+ median_s: z.ZodNullable<z.ZodNumber>;
1804
+ p90_s: z.ZodNullable<z.ZodNumber>;
1805
+ count_ge150ms: z.ZodNumber;
1806
+ }, z.core.$strict>;
1807
+ acoustic_no_dip_count: z.ZodNumber;
1808
+ acoustic_unconfirmed_count: z.ZodNumber;
1809
+ }, z.core.$strict>;
1810
+ comma: z.ZodObject<{
1811
+ timestamp: z.ZodObject<{
1812
+ count: z.ZodNumber;
1813
+ median_s: z.ZodNullable<z.ZodNumber>;
1814
+ p90_s: z.ZodNullable<z.ZodNumber>;
1815
+ count_ge150ms: z.ZodNumber;
1816
+ }, z.core.$strict>;
1817
+ acoustic_pause: z.ZodObject<{
1818
+ count: z.ZodNumber;
1819
+ median_s: z.ZodNullable<z.ZodNumber>;
1820
+ p90_s: z.ZodNullable<z.ZodNumber>;
1821
+ count_ge150ms: z.ZodNumber;
1822
+ }, z.core.$strict>;
1823
+ cut_safe: z.ZodObject<{
1824
+ count: z.ZodNumber;
1825
+ median_s: z.ZodNullable<z.ZodNumber>;
1826
+ p90_s: z.ZodNullable<z.ZodNumber>;
1827
+ count_ge150ms: z.ZodNumber;
1828
+ }, z.core.$strict>;
1829
+ acoustic_no_dip_count: z.ZodNumber;
1830
+ acoustic_unconfirmed_count: z.ZodNumber;
1831
+ }, z.core.$strict>;
1832
+ mid_phrase: z.ZodObject<{
1833
+ timestamp: z.ZodObject<{
1834
+ count: z.ZodNumber;
1835
+ median_s: z.ZodNullable<z.ZodNumber>;
1836
+ p90_s: z.ZodNullable<z.ZodNumber>;
1837
+ count_ge150ms: z.ZodNumber;
1838
+ }, z.core.$strict>;
1839
+ acoustic_pause: z.ZodObject<{
1840
+ count: z.ZodNumber;
1841
+ median_s: z.ZodNullable<z.ZodNumber>;
1842
+ p90_s: z.ZodNullable<z.ZodNumber>;
1843
+ count_ge150ms: z.ZodNumber;
1844
+ }, z.core.$strict>;
1845
+ cut_safe: z.ZodObject<{
1846
+ count: z.ZodNumber;
1847
+ median_s: z.ZodNullable<z.ZodNumber>;
1848
+ p90_s: z.ZodNullable<z.ZodNumber>;
1849
+ count_ge150ms: z.ZodNumber;
1850
+ }, z.core.$strict>;
1851
+ acoustic_no_dip_count: z.ZodNumber;
1852
+ acoustic_unconfirmed_count: z.ZodNumber;
1853
+ }, z.core.$strict>;
1854
+ }, z.core.$strict>;
1855
+ long_pause_count: z.ZodNumber;
1856
+ hinge: z.ZodObject<{
1857
+ status: z.ZodEnum<{
1858
+ measured: "measured";
1859
+ not_evaluated: "not_evaluated";
1860
+ }>;
1861
+ sentence_share: z.ZodNullable<z.ZodNumber>;
1862
+ evaluated_sentences: z.ZodNumber;
1863
+ coverage: z.ZodNullable<z.ZodNumber>;
1864
+ timestamp_sentence_share: z.ZodNullable<z.ZodNumber>;
1865
+ median_position: z.ZodNullable<z.ZodNumber>;
1866
+ median_seconds: z.ZodNullable<z.ZodNumber>;
1867
+ }, z.core.$strict>;
1868
+ pitch: z.ZodObject<{
1869
+ status: z.ZodEnum<{
1870
+ measured: "measured";
1871
+ no_voiced_frames: "no_voiced_frames";
1872
+ }>;
1873
+ ceiling_hz: z.ZodNumber;
1874
+ ceiling_basis: z.ZodEnum<{
1875
+ configured: "configured";
1876
+ default: "default";
1877
+ low_f0: "low_f0";
1878
+ }>;
1879
+ median_hz: z.ZodNullable<z.ZodNumber>;
1880
+ p10_hz: z.ZodNullable<z.ZodNumber>;
1881
+ p90_hz: z.ZodNullable<z.ZodNumber>;
1882
+ range_st: z.ZodNullable<z.ZodNumber>;
1883
+ voiced_frames: z.ZodNumber;
1884
+ }, z.core.$strict>;
1885
+ loudness: z.ZodObject<{
1886
+ status: z.ZodEnum<{
1887
+ measured: "measured";
1888
+ unmeasured: "unmeasured";
1889
+ }>;
1890
+ range_db_p10_p90: z.ZodNullable<z.ZodNumber>;
1891
+ }, z.core.$strict>;
1892
+ warnings: z.ZodArray<z.ZodEnum<{
1893
+ background_music_present_f0_and_intensity_may_be_contaminated: "background_music_present_f0_and_intensity_may_be_contaminated";
1894
+ no_sentence_terminal_punctuation_pace_uses_turn_spans: "no_sentence_terminal_punctuation_pace_uses_turn_spans";
1895
+ }>>;
1896
+ }, z.core.$strict>>;
1897
+ }, z.core.$strict>>;
1898
+ presenter_framing: z.ZodOptional<z.ZodEnum<{
1899
+ close: "close";
1900
+ wide: "wide";
1901
+ }>>;
1902
+ presenter_mic: z.ZodOptional<z.ZodBoolean>;
1903
+ staging: z.ZodOptional<z.ZodObject<{
1904
+ version: z.ZodLiteral<"reference-staging-v1">;
1905
+ analysis_width: z.ZodNumber;
1906
+ anchors: z.ZodArray<z.ZodObject<{
1907
+ id: z.ZodString;
1908
+ t_s: z.ZodNumber;
1909
+ }, z.core.$strict>>;
1910
+ elements: z.ZodArray<z.ZodObject<{
1911
+ id: z.ZodString;
1912
+ beat_index: z.ZodNumber;
1913
+ graphic_index: z.ZodNullable<z.ZodNumber>;
1914
+ kind: z.ZodEnum<{
1915
+ banner: "banner";
1916
+ before_after_split: "before_after_split";
1917
+ callout: "callout";
1918
+ checklist: "checklist";
1919
+ comment_box: "comment_box";
1920
+ compare: "compare";
1921
+ concept_card: "concept_card";
1922
+ end_card: "end_card";
1923
+ insert_media: "insert_media";
1924
+ layout_split: "layout_split";
1925
+ logo_card: "logo_card";
1926
+ lower_third: "lower_third";
1927
+ notification: "notification";
1928
+ other: "other";
1929
+ overlay_media: "overlay_media";
1930
+ particles: "particles";
1931
+ phone_call: "phone_call";
1932
+ price_card: "price_card";
1933
+ product_ui: "product_ui";
1934
+ progress: "progress";
1935
+ quote: "quote";
1936
+ rating: "rating";
1937
+ screenshot: "screenshot";
1938
+ split_screen: "split_screen";
1939
+ stat: "stat";
1940
+ tag: "tag";
1941
+ title_card: "title_card";
1942
+ toggle_checklist: "toggle_checklist";
1943
+ unmapped: "unmapped";
1944
+ }>;
1945
+ rect_hold: z.ZodOptional<z.ZodObject<{
1946
+ left: z.ZodNumber;
1947
+ top: z.ZodNumber;
1948
+ width: z.ZodNumber;
1949
+ height: z.ZodNumber;
1950
+ }, z.core.$strict>>;
1951
+ rect_hold_face: z.ZodOptional<z.ZodObject<{
1952
+ left: z.ZodNumber;
1953
+ top: z.ZodNumber;
1954
+ width: z.ZodNumber;
1955
+ height: z.ZodNumber;
1956
+ }, z.core.$strict>>;
1957
+ rect_method: z.ZodOptional<z.ZodEnum<{
1958
+ "estimated-still": "estimated-still";
1959
+ "estimated-video": "estimated-video";
1960
+ "frames-box/v1": "frames-box/v1";
1961
+ "frames-face/v1": "frames-face/v1";
1962
+ "frames-layer/v1": "frames-layer/v1";
1963
+ "frames-motion/v1": "frames-motion/v1";
1964
+ "frames-split/v1": "frames-split/v1";
1965
+ }>>;
1966
+ rects: z.ZodOptional<z.ZodArray<z.ZodObject<{
1967
+ t_s: z.ZodNumber;
1968
+ rect: z.ZodObject<{
1969
+ left: z.ZodNumber;
1970
+ top: z.ZodNumber;
1971
+ width: z.ZodNumber;
1972
+ height: z.ZodNumber;
1973
+ }, z.core.$strict>;
1974
+ visible: z.ZodNumber;
1975
+ }, z.core.$strict>>>;
1976
+ entry: z.ZodOptional<z.ZodObject<{
1977
+ first_visible_s: z.ZodOptional<z.ZodNumber>;
1978
+ settled_s: z.ZodOptional<z.ZodNumber>;
1979
+ anchors: z.ZodOptional<z.ZodArray<z.ZodObject<{
1980
+ id: z.ZodString;
1981
+ offset_s: z.ZodNumber;
1982
+ }, z.core.$strict>>>;
1983
+ style: z.ZodOptional<z.ZodEnum<{
1984
+ blur_in: "blur_in";
1985
+ fade: "fade";
1986
+ pop: "pop";
1987
+ scale_up: "scale_up";
1988
+ slide: "slide";
1989
+ tilt_in: "tilt_in";
1990
+ typewriter: "typewriter";
1991
+ unknown: "unknown";
1992
+ wipe: "wipe";
1993
+ }>>;
1994
+ from: z.ZodOptional<z.ZodEnum<{
1995
+ bottom: "bottom";
1996
+ left: "left";
1997
+ lower_left: "lower_left";
1998
+ lower_right: "lower_right";
1999
+ none: "none";
2000
+ right: "right";
2001
+ top: "top";
2002
+ upper_left: "upper_left";
2003
+ upper_right: "upper_right";
2004
+ }>>;
2005
+ duration_s: z.ZodOptional<z.ZodNumber>;
2006
+ displacement: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
2007
+ scale_from: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2008
+ method: z.ZodOptional<z.ZodEnum<{
2009
+ "estimated-still": "estimated-still";
2010
+ "estimated-video": "estimated-video";
2011
+ "frames-box/v1": "frames-box/v1";
2012
+ "frames-face/v1": "frames-face/v1";
2013
+ "frames-layer/v1": "frames-layer/v1";
2014
+ "frames-motion/v1": "frames-motion/v1";
2015
+ "frames-split/v1": "frames-split/v1";
2016
+ }>>;
2017
+ }, z.core.$strict>>;
2018
+ exit: z.ZodOptional<z.ZodObject<{
2019
+ last_visible_s: z.ZodOptional<z.ZodNumber>;
2020
+ anchors: z.ZodOptional<z.ZodArray<z.ZodObject<{
2021
+ id: z.ZodString;
2022
+ offset_s: z.ZodNumber;
2023
+ }, z.core.$strict>>>;
2024
+ style: z.ZodOptional<z.ZodEnum<{
2025
+ blur_in: "blur_in";
2026
+ cut: "cut";
2027
+ fade: "fade";
2028
+ flash: "flash";
2029
+ pop: "pop";
2030
+ scale_up: "scale_up";
2031
+ slide: "slide";
2032
+ tilt_in: "tilt_in";
2033
+ typewriter: "typewriter";
2034
+ unknown: "unknown";
2035
+ wipe: "wipe";
2036
+ }>>;
2037
+ to: z.ZodOptional<z.ZodEnum<{
2038
+ bottom: "bottom";
2039
+ left: "left";
2040
+ lower_left: "lower_left";
2041
+ lower_right: "lower_right";
2042
+ none: "none";
2043
+ right: "right";
2044
+ top: "top";
2045
+ upper_left: "upper_left";
2046
+ upper_right: "upper_right";
2047
+ }>>;
2048
+ duration_s: z.ZodOptional<z.ZodNumber>;
2049
+ displacement: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
2050
+ method: z.ZodOptional<z.ZodEnum<{
2051
+ "estimated-still": "estimated-still";
2052
+ "estimated-video": "estimated-video";
2053
+ "frames-box/v1": "frames-box/v1";
2054
+ "frames-face/v1": "frames-face/v1";
2055
+ "frames-layer/v1": "frames-layer/v1";
2056
+ "frames-motion/v1": "frames-motion/v1";
2057
+ "frames-split/v1": "frames-split/v1";
2058
+ }>>;
2059
+ }, z.core.$strict>>;
2060
+ layer: z.ZodOptional<z.ZodObject<{
2061
+ value: z.ZodEnum<{
2062
+ behind_presenter: "behind_presenter";
2063
+ in_front_of_presenter: "in_front_of_presenter";
2064
+ no_overlap: "no_overlap";
2065
+ presenter_absent: "presenter_absent";
2066
+ unknown: "unknown";
2067
+ }>;
2068
+ method: z.ZodEnum<{
2069
+ "estimated-still": "estimated-still";
2070
+ "estimated-video": "estimated-video";
2071
+ "frames-box/v1": "frames-box/v1";
2072
+ "frames-face/v1": "frames-face/v1";
2073
+ "frames-layer/v1": "frames-layer/v1";
2074
+ "frames-motion/v1": "frames-motion/v1";
2075
+ "frames-split/v1": "frames-split/v1";
2076
+ }>;
2077
+ covered_by: z.ZodArray<z.ZodEnum<{
2078
+ body: "body";
2079
+ chair: "chair";
2080
+ desk: "desk";
2081
+ face: "face";
2082
+ hair: "hair";
2083
+ hand: "hand";
2084
+ microphone: "microphone";
2085
+ other: "other";
2086
+ shoulder: "shoulder";
2087
+ }>>;
2088
+ face_clear: z.ZodOptional<z.ZodBoolean>;
2089
+ face_core_cover_max: z.ZodOptional<z.ZodNumber>;
2090
+ face_covered_share: z.ZodOptional<z.ZodNumber>;
2091
+ blurs_presenter: z.ZodOptional<z.ZodBoolean>;
2092
+ }, z.core.$strict>>;
2093
+ motion: z.ZodOptional<z.ZodObject<{
2094
+ kind: z.ZodOptional<z.ZodEnum<{
2095
+ drift: "drift";
2096
+ float: "float";
2097
+ moves_with_frame: "moves_with_frame";
2098
+ pushed: "pushed";
2099
+ scale: "scale";
2100
+ static: "static";
2101
+ }>>;
2102
+ drift_per_s: z.ZodOptional<z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>>;
2103
+ scale_per_s: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2104
+ wobble: z.ZodOptional<z.ZodOptional<z.ZodObject<{
2105
+ amplitude: z.ZodNumber;
2106
+ period_s: z.ZodNumber;
2107
+ }, z.core.$strict>>>;
2108
+ }, z.core.$strict>>;
2109
+ }, z.core.$strict>>;
2110
+ freezes: z.ZodArray<z.ZodObject<{
2111
+ start_s: z.ZodNumber;
2112
+ end_s: z.ZodNumber;
2113
+ anchors: z.ZodArray<z.ZodObject<{
2114
+ id: z.ZodString;
2115
+ offset_s: z.ZodNumber;
2116
+ }, z.core.$strict>>;
2117
+ face_box_start: z.ZodObject<{
2118
+ left: z.ZodNumber;
2119
+ top: z.ZodNumber;
2120
+ width: z.ZodNumber;
2121
+ height: z.ZodNumber;
2122
+ }, z.core.$strict>;
2123
+ face_box_end: z.ZodObject<{
2124
+ left: z.ZodNumber;
2125
+ top: z.ZodNumber;
2126
+ width: z.ZodNumber;
2127
+ height: z.ZodNumber;
2128
+ }, z.core.$strict>;
2129
+ roll_deg: z.ZodNumber;
2130
+ yaw: z.ZodNumber;
2131
+ pitch: z.ZodNumber;
2132
+ gaze: z.ZodOptional<z.ZodEnum<{
2133
+ camera: "camera";
2134
+ closed: "closed";
2135
+ down: "down";
2136
+ element: "element";
2137
+ left: "left";
2138
+ right: "right";
2139
+ up_left: "up_left";
2140
+ up_right: "up_right";
2141
+ }>>;
2142
+ head_roll: z.ZodEnum<{
2143
+ left: "left";
2144
+ right: "right";
2145
+ upright: "upright";
2146
+ }>;
2147
+ expression: z.ZodOptional<z.ZodEnum<{
2148
+ neutral: "neutral";
2149
+ other: "other";
2150
+ smile: "smile";
2151
+ surprised: "surprised";
2152
+ thinking: "thinking";
2153
+ }>>;
2154
+ hands: z.ZodOptional<z.ZodEnum<{
2155
+ at_chest: "at_chest";
2156
+ gesturing: "gesturing";
2157
+ other: "other";
2158
+ out_of_frame: "out_of_frame";
2159
+ }>>;
2160
+ frame_motion: z.ZodOptional<z.ZodObject<{
2161
+ scale_end: z.ZodNumber;
2162
+ centre_shift: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
2163
+ }, z.core.$strict>>;
2164
+ ends_with: z.ZodEnum<{
2165
+ cut: "cut";
2166
+ end: "end";
2167
+ flash: "flash";
2168
+ unfreeze: "unfreeze";
2169
+ }>;
2170
+ }, z.core.$strict>>;
2171
+ }, z.core.$strict>>;
2172
+ transcript: z.ZodOptional<z.ZodArray<z.ZodObject<{
2173
+ text: z.ZodString;
2174
+ start_s: z.ZodNumber;
2175
+ end_s: z.ZodNumber;
2176
+ speaker: z.ZodOptional<z.ZodString>;
2177
+ }, z.core.$strict>>>;
2178
+ transcript_language: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2179
+ hook: z.ZodOptional<z.ZodObject<{
2180
+ text: z.ZodString;
2181
+ end_s: z.ZodNumber;
2182
+ caption: z.ZodOptional<z.ZodString>;
2183
+ }, z.core.$strict>>;
2184
+ speakers: z.ZodOptional<z.ZodArray<z.ZodObject<{
2185
+ id: z.ZodString;
2186
+ on_screen: z.ZodBoolean;
2187
+ role: z.ZodEnum<{
2188
+ guest: "guest";
2189
+ interviewer: "interviewer";
2190
+ narrator: "narrator";
2191
+ other: "other";
2192
+ presenter: "presenter";
2193
+ }>;
2194
+ word_count: z.ZodNumber;
2195
+ caption: z.ZodNullable<z.ZodObject<{
2196
+ colour: z.ZodNullable<z.ZodString>;
2197
+ style: z.ZodString;
2198
+ position: z.ZodNullable<z.ZodEnum<{
2199
+ bottom: "bottom";
2200
+ lower: "lower";
2201
+ middle: "middle";
2202
+ top: "top";
2203
+ }>>;
2204
+ box: z.ZodOptional<z.ZodObject<{
2205
+ left: z.ZodNumber;
2206
+ top: z.ZodNumber;
2207
+ width: z.ZodNumber;
2208
+ height: z.ZodNumber;
2209
+ }, z.core.$strict>>;
2210
+ }, z.core.$strict>>;
2211
+ frames_s: z.ZodArray<z.ZodNumber>;
2212
+ }, z.core.$strict>>>;
2213
+ segments: z.ZodOptional<z.ZodArray<z.ZodObject<{
2214
+ start_s: z.ZodNumber;
2215
+ end_s: z.ZodNumber;
2216
+ text: z.ZodString;
2217
+ speaker: z.ZodString;
2218
+ mouth: z.ZodOptional<z.ZodObject<{
2219
+ vision: z.ZodNullable<z.ZodEnum<{
2220
+ closed: "closed";
2221
+ moving: "moving";
2222
+ not_visible: "not_visible";
2223
+ }>>;
2224
+ measured: z.ZodEnum<{
2225
+ moving: "moving";
2226
+ not_measured: "not_measured";
2227
+ still: "still";
2228
+ }>;
2229
+ score: z.ZodNullable<z.ZodNumber>;
2230
+ }, z.core.$strict>>;
2231
+ frames_s: z.ZodArray<z.ZodNumber>;
2232
+ }, z.core.$strict>>>;
2233
+ spellings: z.ZodOptional<z.ZodArray<z.ZodObject<{
2234
+ heard: z.ZodString;
2235
+ shown: z.ZodString;
2236
+ start_s: z.ZodNumber;
2237
+ end_s: z.ZodNumber;
2238
+ }, z.core.$strict>>>;
2239
+ analysis: z.ZodObject<{
2240
+ warnings: z.ZodOptional<z.ZodArray<z.ZodString>>;
2241
+ }, z.core.$strict>;
2242
+ }, z.core.$strict>;
2243
+ export type ReferenceProfileAnswer = z.infer<typeof referenceProfileAnswer>;
2244
+ /** The profile a client passes back: any other `analysis` field is dropped, so one read before the answer shed them still compiles. */
2245
+ export declare const referenceProfileInput: z.ZodObject<{
2246
+ version: z.ZodLiteral<"reference-profile-v1">;
2247
+ source: z.ZodObject<{
2248
+ digest: z.ZodString;
2249
+ duration_s: z.ZodNumber;
2250
+ width: z.ZodNumber;
2251
+ height: z.ZodNumber;
2252
+ url: z.ZodOptional<z.ZodString>;
2253
+ }, z.core.$strict>;
2254
+ format: z.ZodEnum<{
2255
+ broll: "broll";
2256
+ faceless: "faceless";
2257
+ other: "other";
2258
+ talking_head_graphics: "talking_head_graphics";
2259
+ }>;
2260
+ beats: z.ZodArray<z.ZodObject<{
2261
+ start_frac: z.ZodNumber;
2262
+ end_frac: z.ZodNumber;
2263
+ start_s: z.ZodNumber;
2264
+ end_s: z.ZodNumber;
2265
+ role: z.ZodEnum<{
2266
+ agitation: "agitation";
2267
+ before_after: "before_after";
2268
+ cta: "cta";
2269
+ demo: "demo";
2270
+ hook: "hook";
2271
+ offer: "offer";
2272
+ other: "other";
2273
+ problem: "problem";
2274
+ proof: "proof";
2275
+ social_proof: "social_proof";
2276
+ solution: "solution";
2277
+ }>;
2278
+ spoken_summary: z.ZodString;
2279
+ graphics: z.ZodArray<z.ZodObject<{
2280
+ kind: z.ZodEnum<{
2281
+ callout: "callout";
2282
+ checklist: "checklist";
2283
+ compare: "compare";
2284
+ end_card: "end_card";
2285
+ insert_media: "insert_media";
2286
+ layout_split: "layout_split";
2287
+ lower_third: "lower_third";
2288
+ notification: "notification";
2289
+ overlay_media: "overlay_media";
2290
+ particles: "particles";
2291
+ phone_call: "phone_call";
2292
+ progress: "progress";
2293
+ quote: "quote";
2294
+ rating: "rating";
2295
+ stat: "stat";
2296
+ tag: "tag";
2297
+ title_card: "title_card";
2298
+ unmapped: "unmapped";
2299
+ }>;
2300
+ source_kind: z.ZodEnum<{
2301
+ banner: "banner";
2302
+ before_after_split: "before_after_split";
2303
+ callout: "callout";
2304
+ checklist: "checklist";
2305
+ comment_box: "comment_box";
2306
+ compare: "compare";
2307
+ concept_card: "concept_card";
2308
+ end_card: "end_card";
2309
+ insert_media: "insert_media";
2310
+ layout_split: "layout_split";
2311
+ logo_card: "logo_card";
2312
+ lower_third: "lower_third";
2313
+ notification: "notification";
2314
+ other: "other";
2315
+ overlay_media: "overlay_media";
2316
+ particles: "particles";
2317
+ phone_call: "phone_call";
2318
+ price_card: "price_card";
2319
+ product_ui: "product_ui";
2320
+ progress: "progress";
2321
+ quote: "quote";
2322
+ rating: "rating";
2323
+ screenshot: "screenshot";
2324
+ split_screen: "split_screen";
2325
+ stat: "stat";
2326
+ tag: "tag";
2327
+ title_card: "title_card";
2328
+ toggle_checklist: "toggle_checklist";
2329
+ unmapped: "unmapped";
2330
+ }>;
2331
+ position: z.ZodEnum<{
2332
+ bottom: "bottom";
2333
+ bottom_left: "bottom_left";
2334
+ bottom_right: "bottom_right";
2335
+ center: "center";
2336
+ full_screen: "full_screen";
2337
+ other: "other";
2338
+ split_bottom: "split_bottom";
2339
+ split_top: "split_top";
2340
+ top: "top";
2341
+ top_left: "top_left";
2342
+ top_right: "top_right";
2343
+ }>;
2344
+ state_changes: z.ZodArray<z.ZodObject<{
2345
+ at_frac: z.ZodNumber;
2346
+ change: z.ZodEnum<{
2347
+ appears: "appears";
2348
+ checked: "checked";
2349
+ disappears: "disappears";
2350
+ highlighted: "highlighted";
2351
+ other: "other";
2352
+ toggles_off: "toggles_off";
2353
+ toggles_on: "toggles_on";
2354
+ value_changes: "value_changes";
2355
+ }>;
2356
+ }, z.core.$strict>>;
2357
+ label_hint: z.ZodString;
2358
+ }, z.core.$strict>>;
2359
+ camera: z.ZodEnum<{
2360
+ other: "other";
2361
+ punch_in: "punch_in";
2362
+ shake: "shake";
2363
+ static: "static";
2364
+ zoom_out: "zoom_out";
2365
+ }>;
2366
+ transition_in: z.ZodEnum<{
2367
+ cut: "cut";
2368
+ flash: "flash";
2369
+ none: "none";
2370
+ other: "other";
2371
+ wipe: "wipe";
2372
+ zoom: "zoom";
2373
+ }>;
2374
+ sounds: z.ZodArray<z.ZodObject<{
2375
+ at_frac: z.ZodNumber;
2376
+ kind: z.ZodEnum<{
2377
+ answer: "answer";
2378
+ click: "click";
2379
+ edit: "edit";
2380
+ flash: "flash";
2381
+ hangup: "hangup";
2382
+ money: "money";
2383
+ music: "music";
2384
+ notify: "notify";
2385
+ other: "other";
2386
+ pop: "pop";
2387
+ recorded_audio: "recorded_audio";
2388
+ ring: "ring";
2389
+ step: "step";
2390
+ toggle: "toggle";
2391
+ whoosh: "whoosh";
2392
+ }>;
2393
+ }, z.core.$strict>>;
2394
+ presenter_behaviour: z.ZodEnum<{
2395
+ absent: "absent";
2396
+ listening: "listening";
2397
+ reacting: "reacting";
2398
+ speaking: "speaking";
2399
+ }>;
2400
+ key_frame_s: z.ZodOptional<z.ZodNumber>;
2401
+ frames_s: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
2402
+ speaker: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2403
+ speakers: z.ZodOptional<z.ZodArray<z.ZodObject<{
2404
+ id: z.ZodString;
2405
+ seconds: z.ZodNumber;
2406
+ }, z.core.$strict>>>;
2407
+ gaze: z.ZodOptional<z.ZodObject<{
2408
+ direction: z.ZodEnum<{
2409
+ camera: "camera";
2410
+ closed: "closed";
2411
+ down: "down";
2412
+ mixed: "mixed";
2413
+ not_visible: "not_visible";
2414
+ off_left: "off_left";
2415
+ off_right: "off_right";
2416
+ up: "up";
2417
+ }>;
2418
+ frames_s: z.ZodArray<z.ZodNumber>;
2419
+ }, z.core.$strict>>;
2420
+ gestures: z.ZodOptional<z.ZodArray<z.ZodObject<{
2421
+ kind: z.ZodEnum<{
2422
+ both_hands_to_viewer: "both_hands_to_viewer";
2423
+ count_on_fingers: "count_on_fingers";
2424
+ hold_object: "hold_object";
2425
+ open_palms: "open_palms";
2426
+ other: "other";
2427
+ point_at_element: "point_at_element";
2428
+ point_at_viewer: "point_at_viewer";
2429
+ shrug: "shrug";
2430
+ thumbs_up: "thumbs_up";
2431
+ wave: "wave";
2432
+ }>;
2433
+ at_s: z.ZodNumber;
2434
+ label: z.ZodString;
2435
+ frames_s: z.ZodArray<z.ZodNumber>;
2436
+ }, z.core.$strict>>>;
2437
+ }, z.core.$strict>>;
2438
+ captions: z.ZodObject<{
2439
+ present: z.ZodBoolean;
2440
+ words_per_caption_max: z.ZodNumber;
2441
+ position: z.ZodEnum<{
2442
+ bottom: "bottom";
2443
+ lower: "lower";
2444
+ middle: "middle";
2445
+ top: "top";
2446
+ }>;
2447
+ emphasis_style: z.ZodEnum<{
2448
+ color: "color";
2449
+ none: "none";
2450
+ pill: "pill";
2451
+ punch: "punch";
2452
+ }>;
2453
+ hidden_under_graphics: z.ZodBoolean;
2454
+ box: z.ZodOptional<z.ZodObject<{
2455
+ left: z.ZodNumber;
2456
+ top: z.ZodNumber;
2457
+ width: z.ZodNumber;
2458
+ height: z.ZodNumber;
2459
+ }, z.core.$strict>>;
2460
+ }, z.core.$strict>;
2461
+ pacing: z.ZodObject<{
2462
+ layer_change_every_s: z.ZodNumber;
2463
+ face_share: z.ZodNumber;
2464
+ }, z.core.$strict>;
2465
+ palette: z.ZodArray<z.ZodString>;
2466
+ music: z.ZodString;
2467
+ unmapped: z.ZodArray<z.ZodObject<{
2468
+ what: z.ZodString;
2469
+ beat_index: z.ZodNumber;
2470
+ suggested_substitute: z.ZodString;
2471
+ }, z.core.$strict>>;
2472
+ voice: z.ZodOptional<z.ZodObject<{
2473
+ version: z.ZodLiteral<"voice-profile-v1">;
2474
+ method: z.ZodObject<{
2475
+ pause_drop_db: z.ZodNumber;
2476
+ pause_min_run_s: z.ZodNumber;
2477
+ cut_safe_db: z.ZodNumber;
2478
+ pitch: z.ZodLiteral<"yin">;
2479
+ sample_rate: z.ZodNumber;
2480
+ }, z.core.$strict>;
2481
+ presenter_speaker: z.ZodNullable<z.ZodString>;
2482
+ speakers: z.ZodArray<z.ZodObject<{
2483
+ speaker: z.ZodString;
2484
+ word_count: z.ZodNumber;
2485
+ sentence_count: z.ZodNumber;
2486
+ pace: z.ZodObject<{
2487
+ status: z.ZodEnum<{
2488
+ measured: "measured";
2489
+ unmeasured: "unmeasured";
2490
+ }>;
2491
+ words_per_second: z.ZodNullable<z.ZodNumber>;
2492
+ basis: z.ZodEnum<{
2493
+ sentence_spans: "sentence_spans";
2494
+ turn_spans: "turn_spans";
2495
+ }>;
2496
+ }, z.core.$strict>;
2497
+ pauses: z.ZodObject<{
2498
+ sentence_end: z.ZodObject<{
2499
+ timestamp: z.ZodObject<{
2500
+ count: z.ZodNumber;
2501
+ median_s: z.ZodNullable<z.ZodNumber>;
2502
+ p90_s: z.ZodNullable<z.ZodNumber>;
2503
+ count_ge150ms: z.ZodNumber;
2504
+ }, z.core.$strict>;
2505
+ acoustic_pause: z.ZodObject<{
2506
+ count: z.ZodNumber;
2507
+ median_s: z.ZodNullable<z.ZodNumber>;
2508
+ p90_s: z.ZodNullable<z.ZodNumber>;
2509
+ count_ge150ms: z.ZodNumber;
2510
+ }, z.core.$strict>;
2511
+ cut_safe: z.ZodObject<{
2512
+ count: z.ZodNumber;
2513
+ median_s: z.ZodNullable<z.ZodNumber>;
2514
+ p90_s: z.ZodNullable<z.ZodNumber>;
2515
+ count_ge150ms: z.ZodNumber;
2516
+ }, z.core.$strict>;
2517
+ acoustic_no_dip_count: z.ZodNumber;
2518
+ acoustic_unconfirmed_count: z.ZodNumber;
2519
+ }, z.core.$strict>;
2520
+ comma: z.ZodObject<{
2521
+ timestamp: z.ZodObject<{
2522
+ count: z.ZodNumber;
2523
+ median_s: z.ZodNullable<z.ZodNumber>;
2524
+ p90_s: z.ZodNullable<z.ZodNumber>;
2525
+ count_ge150ms: z.ZodNumber;
2526
+ }, z.core.$strict>;
2527
+ acoustic_pause: z.ZodObject<{
2528
+ count: z.ZodNumber;
2529
+ median_s: z.ZodNullable<z.ZodNumber>;
2530
+ p90_s: z.ZodNullable<z.ZodNumber>;
2531
+ count_ge150ms: z.ZodNumber;
2532
+ }, z.core.$strict>;
2533
+ cut_safe: z.ZodObject<{
2534
+ count: z.ZodNumber;
2535
+ median_s: z.ZodNullable<z.ZodNumber>;
2536
+ p90_s: z.ZodNullable<z.ZodNumber>;
2537
+ count_ge150ms: z.ZodNumber;
2538
+ }, z.core.$strict>;
2539
+ acoustic_no_dip_count: z.ZodNumber;
2540
+ acoustic_unconfirmed_count: z.ZodNumber;
2541
+ }, z.core.$strict>;
2542
+ mid_phrase: z.ZodObject<{
2543
+ timestamp: z.ZodObject<{
2544
+ count: z.ZodNumber;
2545
+ median_s: z.ZodNullable<z.ZodNumber>;
2546
+ p90_s: z.ZodNullable<z.ZodNumber>;
2547
+ count_ge150ms: z.ZodNumber;
2548
+ }, z.core.$strict>;
2549
+ acoustic_pause: z.ZodObject<{
2550
+ count: z.ZodNumber;
2551
+ median_s: z.ZodNullable<z.ZodNumber>;
2552
+ p90_s: z.ZodNullable<z.ZodNumber>;
2553
+ count_ge150ms: z.ZodNumber;
2554
+ }, z.core.$strict>;
2555
+ cut_safe: z.ZodObject<{
2556
+ count: z.ZodNumber;
2557
+ median_s: z.ZodNullable<z.ZodNumber>;
2558
+ p90_s: z.ZodNullable<z.ZodNumber>;
2559
+ count_ge150ms: z.ZodNumber;
2560
+ }, z.core.$strict>;
2561
+ acoustic_no_dip_count: z.ZodNumber;
2562
+ acoustic_unconfirmed_count: z.ZodNumber;
2563
+ }, z.core.$strict>;
2564
+ }, z.core.$strict>;
2565
+ long_pause_count: z.ZodNumber;
2566
+ hinge: z.ZodObject<{
2567
+ status: z.ZodEnum<{
2568
+ measured: "measured";
2569
+ not_evaluated: "not_evaluated";
2570
+ }>;
2571
+ sentence_share: z.ZodNullable<z.ZodNumber>;
2572
+ evaluated_sentences: z.ZodNumber;
2573
+ coverage: z.ZodNullable<z.ZodNumber>;
2574
+ timestamp_sentence_share: z.ZodNullable<z.ZodNumber>;
2575
+ median_position: z.ZodNullable<z.ZodNumber>;
2576
+ median_seconds: z.ZodNullable<z.ZodNumber>;
2577
+ }, z.core.$strict>;
2578
+ pitch: z.ZodObject<{
2579
+ status: z.ZodEnum<{
2580
+ measured: "measured";
2581
+ no_voiced_frames: "no_voiced_frames";
2582
+ }>;
2583
+ ceiling_hz: z.ZodNumber;
2584
+ ceiling_basis: z.ZodEnum<{
2585
+ configured: "configured";
2586
+ default: "default";
2587
+ low_f0: "low_f0";
2588
+ }>;
2589
+ median_hz: z.ZodNullable<z.ZodNumber>;
2590
+ p10_hz: z.ZodNullable<z.ZodNumber>;
2591
+ p90_hz: z.ZodNullable<z.ZodNumber>;
2592
+ range_st: z.ZodNullable<z.ZodNumber>;
2593
+ voiced_frames: z.ZodNumber;
2594
+ }, z.core.$strict>;
2595
+ loudness: z.ZodObject<{
2596
+ status: z.ZodEnum<{
2597
+ measured: "measured";
2598
+ unmeasured: "unmeasured";
2599
+ }>;
2600
+ range_db_p10_p90: z.ZodNullable<z.ZodNumber>;
2601
+ }, z.core.$strict>;
2602
+ warnings: z.ZodArray<z.ZodEnum<{
2603
+ background_music_present_f0_and_intensity_may_be_contaminated: "background_music_present_f0_and_intensity_may_be_contaminated";
2604
+ no_sentence_terminal_punctuation_pace_uses_turn_spans: "no_sentence_terminal_punctuation_pace_uses_turn_spans";
2605
+ }>>;
2606
+ }, z.core.$strict>>;
2607
+ }, z.core.$strict>>;
2608
+ presenter_framing: z.ZodOptional<z.ZodEnum<{
2609
+ close: "close";
2610
+ wide: "wide";
2611
+ }>>;
2612
+ presenter_mic: z.ZodOptional<z.ZodBoolean>;
2613
+ staging: z.ZodOptional<z.ZodObject<{
2614
+ version: z.ZodLiteral<"reference-staging-v1">;
2615
+ analysis_width: z.ZodNumber;
2616
+ anchors: z.ZodArray<z.ZodObject<{
2617
+ id: z.ZodString;
2618
+ t_s: z.ZodNumber;
2619
+ }, z.core.$strict>>;
2620
+ elements: z.ZodArray<z.ZodObject<{
2621
+ id: z.ZodString;
2622
+ beat_index: z.ZodNumber;
2623
+ graphic_index: z.ZodNullable<z.ZodNumber>;
2624
+ kind: z.ZodEnum<{
2625
+ banner: "banner";
2626
+ before_after_split: "before_after_split";
2627
+ callout: "callout";
2628
+ checklist: "checklist";
2629
+ comment_box: "comment_box";
2630
+ compare: "compare";
2631
+ concept_card: "concept_card";
2632
+ end_card: "end_card";
2633
+ insert_media: "insert_media";
2634
+ layout_split: "layout_split";
2635
+ logo_card: "logo_card";
2636
+ lower_third: "lower_third";
2637
+ notification: "notification";
2638
+ other: "other";
2639
+ overlay_media: "overlay_media";
2640
+ particles: "particles";
2641
+ phone_call: "phone_call";
2642
+ price_card: "price_card";
2643
+ product_ui: "product_ui";
2644
+ progress: "progress";
2645
+ quote: "quote";
2646
+ rating: "rating";
2647
+ screenshot: "screenshot";
2648
+ split_screen: "split_screen";
2649
+ stat: "stat";
2650
+ tag: "tag";
2651
+ title_card: "title_card";
2652
+ toggle_checklist: "toggle_checklist";
2653
+ unmapped: "unmapped";
2654
+ }>;
2655
+ rect_hold: z.ZodOptional<z.ZodObject<{
2656
+ left: z.ZodNumber;
2657
+ top: z.ZodNumber;
2658
+ width: z.ZodNumber;
2659
+ height: z.ZodNumber;
2660
+ }, z.core.$strict>>;
2661
+ rect_hold_face: z.ZodOptional<z.ZodObject<{
2662
+ left: z.ZodNumber;
2663
+ top: z.ZodNumber;
2664
+ width: z.ZodNumber;
2665
+ height: z.ZodNumber;
2666
+ }, z.core.$strict>>;
2667
+ rect_method: z.ZodOptional<z.ZodEnum<{
2668
+ "estimated-still": "estimated-still";
2669
+ "estimated-video": "estimated-video";
2670
+ "frames-box/v1": "frames-box/v1";
2671
+ "frames-face/v1": "frames-face/v1";
2672
+ "frames-layer/v1": "frames-layer/v1";
2673
+ "frames-motion/v1": "frames-motion/v1";
2674
+ "frames-split/v1": "frames-split/v1";
2675
+ }>>;
2676
+ rects: z.ZodOptional<z.ZodArray<z.ZodObject<{
2677
+ t_s: z.ZodNumber;
2678
+ rect: z.ZodObject<{
2679
+ left: z.ZodNumber;
2680
+ top: z.ZodNumber;
2681
+ width: z.ZodNumber;
2682
+ height: z.ZodNumber;
2683
+ }, z.core.$strict>;
2684
+ visible: z.ZodNumber;
2685
+ }, z.core.$strict>>>;
2686
+ entry: z.ZodOptional<z.ZodObject<{
2687
+ first_visible_s: z.ZodOptional<z.ZodNumber>;
2688
+ settled_s: z.ZodOptional<z.ZodNumber>;
2689
+ anchors: z.ZodOptional<z.ZodArray<z.ZodObject<{
2690
+ id: z.ZodString;
2691
+ offset_s: z.ZodNumber;
2692
+ }, z.core.$strict>>>;
2693
+ style: z.ZodOptional<z.ZodEnum<{
2694
+ blur_in: "blur_in";
2695
+ fade: "fade";
2696
+ pop: "pop";
2697
+ scale_up: "scale_up";
2698
+ slide: "slide";
2699
+ tilt_in: "tilt_in";
2700
+ typewriter: "typewriter";
2701
+ unknown: "unknown";
2702
+ wipe: "wipe";
2703
+ }>>;
2704
+ from: z.ZodOptional<z.ZodEnum<{
2705
+ bottom: "bottom";
2706
+ left: "left";
2707
+ lower_left: "lower_left";
2708
+ lower_right: "lower_right";
2709
+ none: "none";
2710
+ right: "right";
2711
+ top: "top";
2712
+ upper_left: "upper_left";
2713
+ upper_right: "upper_right";
2714
+ }>>;
2715
+ duration_s: z.ZodOptional<z.ZodNumber>;
2716
+ displacement: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
2717
+ scale_from: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2718
+ method: z.ZodOptional<z.ZodEnum<{
2719
+ "estimated-still": "estimated-still";
2720
+ "estimated-video": "estimated-video";
2721
+ "frames-box/v1": "frames-box/v1";
2722
+ "frames-face/v1": "frames-face/v1";
2723
+ "frames-layer/v1": "frames-layer/v1";
2724
+ "frames-motion/v1": "frames-motion/v1";
2725
+ "frames-split/v1": "frames-split/v1";
2726
+ }>>;
2727
+ }, z.core.$strict>>;
2728
+ exit: z.ZodOptional<z.ZodObject<{
2729
+ last_visible_s: z.ZodOptional<z.ZodNumber>;
2730
+ anchors: z.ZodOptional<z.ZodArray<z.ZodObject<{
2731
+ id: z.ZodString;
2732
+ offset_s: z.ZodNumber;
2733
+ }, z.core.$strict>>>;
2734
+ style: z.ZodOptional<z.ZodEnum<{
2735
+ blur_in: "blur_in";
2736
+ cut: "cut";
2737
+ fade: "fade";
2738
+ flash: "flash";
2739
+ pop: "pop";
2740
+ scale_up: "scale_up";
2741
+ slide: "slide";
2742
+ tilt_in: "tilt_in";
2743
+ typewriter: "typewriter";
2744
+ unknown: "unknown";
2745
+ wipe: "wipe";
2746
+ }>>;
2747
+ to: z.ZodOptional<z.ZodEnum<{
2748
+ bottom: "bottom";
2749
+ left: "left";
2750
+ lower_left: "lower_left";
2751
+ lower_right: "lower_right";
2752
+ none: "none";
2753
+ right: "right";
2754
+ top: "top";
2755
+ upper_left: "upper_left";
2756
+ upper_right: "upper_right";
2757
+ }>>;
2758
+ duration_s: z.ZodOptional<z.ZodNumber>;
2759
+ displacement: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
2760
+ method: z.ZodOptional<z.ZodEnum<{
2761
+ "estimated-still": "estimated-still";
2762
+ "estimated-video": "estimated-video";
2763
+ "frames-box/v1": "frames-box/v1";
2764
+ "frames-face/v1": "frames-face/v1";
2765
+ "frames-layer/v1": "frames-layer/v1";
2766
+ "frames-motion/v1": "frames-motion/v1";
2767
+ "frames-split/v1": "frames-split/v1";
2768
+ }>>;
2769
+ }, z.core.$strict>>;
2770
+ layer: z.ZodOptional<z.ZodObject<{
2771
+ value: z.ZodEnum<{
2772
+ behind_presenter: "behind_presenter";
2773
+ in_front_of_presenter: "in_front_of_presenter";
2774
+ no_overlap: "no_overlap";
2775
+ presenter_absent: "presenter_absent";
2776
+ unknown: "unknown";
2777
+ }>;
2778
+ method: z.ZodEnum<{
2779
+ "estimated-still": "estimated-still";
2780
+ "estimated-video": "estimated-video";
2781
+ "frames-box/v1": "frames-box/v1";
2782
+ "frames-face/v1": "frames-face/v1";
2783
+ "frames-layer/v1": "frames-layer/v1";
2784
+ "frames-motion/v1": "frames-motion/v1";
2785
+ "frames-split/v1": "frames-split/v1";
2786
+ }>;
2787
+ covered_by: z.ZodArray<z.ZodEnum<{
2788
+ body: "body";
2789
+ chair: "chair";
2790
+ desk: "desk";
2791
+ face: "face";
2792
+ hair: "hair";
2793
+ hand: "hand";
2794
+ microphone: "microphone";
2795
+ other: "other";
2796
+ shoulder: "shoulder";
2797
+ }>>;
2798
+ face_clear: z.ZodOptional<z.ZodBoolean>;
2799
+ face_core_cover_max: z.ZodOptional<z.ZodNumber>;
2800
+ face_covered_share: z.ZodOptional<z.ZodNumber>;
2801
+ blurs_presenter: z.ZodOptional<z.ZodBoolean>;
2802
+ }, z.core.$strict>>;
2803
+ motion: z.ZodOptional<z.ZodObject<{
2804
+ kind: z.ZodOptional<z.ZodEnum<{
2805
+ drift: "drift";
2806
+ float: "float";
2807
+ moves_with_frame: "moves_with_frame";
2808
+ pushed: "pushed";
2809
+ scale: "scale";
2810
+ static: "static";
2811
+ }>>;
2812
+ drift_per_s: z.ZodOptional<z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>>;
2813
+ scale_per_s: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
2814
+ wobble: z.ZodOptional<z.ZodOptional<z.ZodObject<{
2815
+ amplitude: z.ZodNumber;
2816
+ period_s: z.ZodNumber;
2817
+ }, z.core.$strict>>>;
2818
+ }, z.core.$strict>>;
2819
+ }, z.core.$strict>>;
2820
+ freezes: z.ZodArray<z.ZodObject<{
2821
+ start_s: z.ZodNumber;
2822
+ end_s: z.ZodNumber;
2823
+ anchors: z.ZodArray<z.ZodObject<{
2824
+ id: z.ZodString;
2825
+ offset_s: z.ZodNumber;
2826
+ }, z.core.$strict>>;
2827
+ face_box_start: z.ZodObject<{
2828
+ left: z.ZodNumber;
2829
+ top: z.ZodNumber;
2830
+ width: z.ZodNumber;
2831
+ height: z.ZodNumber;
2832
+ }, z.core.$strict>;
2833
+ face_box_end: z.ZodObject<{
2834
+ left: z.ZodNumber;
2835
+ top: z.ZodNumber;
2836
+ width: z.ZodNumber;
2837
+ height: z.ZodNumber;
2838
+ }, z.core.$strict>;
2839
+ roll_deg: z.ZodNumber;
2840
+ yaw: z.ZodNumber;
2841
+ pitch: z.ZodNumber;
2842
+ gaze: z.ZodOptional<z.ZodEnum<{
2843
+ camera: "camera";
2844
+ closed: "closed";
2845
+ down: "down";
2846
+ element: "element";
2847
+ left: "left";
2848
+ right: "right";
2849
+ up_left: "up_left";
2850
+ up_right: "up_right";
2851
+ }>>;
2852
+ head_roll: z.ZodEnum<{
2853
+ left: "left";
2854
+ right: "right";
2855
+ upright: "upright";
2856
+ }>;
2857
+ expression: z.ZodOptional<z.ZodEnum<{
2858
+ neutral: "neutral";
2859
+ other: "other";
2860
+ smile: "smile";
2861
+ surprised: "surprised";
2862
+ thinking: "thinking";
2863
+ }>>;
2864
+ hands: z.ZodOptional<z.ZodEnum<{
2865
+ at_chest: "at_chest";
2866
+ gesturing: "gesturing";
2867
+ other: "other";
2868
+ out_of_frame: "out_of_frame";
2869
+ }>>;
2870
+ frame_motion: z.ZodOptional<z.ZodObject<{
2871
+ scale_end: z.ZodNumber;
2872
+ centre_shift: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
2873
+ }, z.core.$strict>>;
2874
+ ends_with: z.ZodEnum<{
2875
+ cut: "cut";
2876
+ end: "end";
2877
+ flash: "flash";
2878
+ unfreeze: "unfreeze";
2879
+ }>;
2880
+ }, z.core.$strict>>;
2881
+ }, z.core.$strict>>;
2882
+ transcript: z.ZodOptional<z.ZodArray<z.ZodObject<{
2883
+ text: z.ZodString;
2884
+ start_s: z.ZodNumber;
2885
+ end_s: z.ZodNumber;
2886
+ speaker: z.ZodOptional<z.ZodString>;
2887
+ }, z.core.$strict>>>;
2888
+ transcript_language: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2889
+ hook: z.ZodOptional<z.ZodObject<{
2890
+ text: z.ZodString;
2891
+ end_s: z.ZodNumber;
2892
+ caption: z.ZodOptional<z.ZodString>;
2893
+ }, z.core.$strict>>;
2894
+ speakers: z.ZodOptional<z.ZodArray<z.ZodObject<{
2895
+ id: z.ZodString;
2896
+ on_screen: z.ZodBoolean;
2897
+ role: z.ZodEnum<{
2898
+ guest: "guest";
2899
+ interviewer: "interviewer";
2900
+ narrator: "narrator";
2901
+ other: "other";
2902
+ presenter: "presenter";
2903
+ }>;
2904
+ word_count: z.ZodNumber;
2905
+ caption: z.ZodNullable<z.ZodObject<{
2906
+ colour: z.ZodNullable<z.ZodString>;
2907
+ style: z.ZodString;
2908
+ position: z.ZodNullable<z.ZodEnum<{
2909
+ bottom: "bottom";
2910
+ lower: "lower";
2911
+ middle: "middle";
2912
+ top: "top";
2913
+ }>>;
2914
+ box: z.ZodOptional<z.ZodObject<{
2915
+ left: z.ZodNumber;
2916
+ top: z.ZodNumber;
2917
+ width: z.ZodNumber;
2918
+ height: z.ZodNumber;
2919
+ }, z.core.$strict>>;
2920
+ }, z.core.$strict>>;
2921
+ frames_s: z.ZodArray<z.ZodNumber>;
2922
+ }, z.core.$strict>>>;
2923
+ segments: z.ZodOptional<z.ZodArray<z.ZodObject<{
2924
+ start_s: z.ZodNumber;
2925
+ end_s: z.ZodNumber;
2926
+ text: z.ZodString;
2927
+ speaker: z.ZodString;
2928
+ mouth: z.ZodOptional<z.ZodObject<{
2929
+ vision: z.ZodNullable<z.ZodEnum<{
2930
+ closed: "closed";
2931
+ moving: "moving";
2932
+ not_visible: "not_visible";
2933
+ }>>;
2934
+ measured: z.ZodEnum<{
2935
+ moving: "moving";
2936
+ not_measured: "not_measured";
2937
+ still: "still";
2938
+ }>;
2939
+ score: z.ZodNullable<z.ZodNumber>;
2940
+ }, z.core.$strict>>;
2941
+ frames_s: z.ZodArray<z.ZodNumber>;
2942
+ }, z.core.$strict>>>;
2943
+ spellings: z.ZodOptional<z.ZodArray<z.ZodObject<{
2944
+ heard: z.ZodString;
2945
+ shown: z.ZodString;
2946
+ start_s: z.ZodNumber;
2947
+ end_s: z.ZodNumber;
2948
+ }, z.core.$strict>>>;
2949
+ analysis: z.ZodObject<{
2950
+ warnings: z.ZodOptional<z.ZodArray<z.ZodString>>;
2951
+ }, z.core.$strip>;
646
2952
  }, z.core.$strict>;
647
- export type ReferenceProfile = z.infer<typeof referenceProfile>;
2953
+ export type ReferenceProfileInput = z.infer<typeof referenceProfileInput>;
648
2954
  /** Readers keep a newer profile whole and need only the gaps it names. */
649
2955
  export declare const referenceProfileRead: z.ZodObject<{
650
2956
  version: z.ZodString;
@@ -657,6 +2963,16 @@ export declare const referenceProfileRead: z.ZodObject<{
657
2963
  suggested_substitute: z.ZodString;
658
2964
  }, z.core.$loose>>>;
659
2965
  }, z.core.$loose>;
2966
+ /** The second of the one-a-second frames that shows a span: the one nearest its middle inside it, else the nearest, within the reel. */
2967
+ export declare function keyFrameSecond(start: number, end: number, duration: number): number;
2968
+ /** The end frame (#989): one frame just before the reel's end, when the last second's frame leaves at least this long unseen after it. */
2969
+ export declare const END_FRAME_GAP_S = 0.3;
2970
+ /** The end frame's time, a tenth of a second, or null when the last second's frame is close enough to the end. */
2971
+ export declare function endFrameSecond(duration: number): number | null;
2972
+ /** The first frame at or after `t`: a moment's proof shows it happening, not the second before it; past the last frame, the last. */
2973
+ export declare function frameAtOrAfter(t: number, duration: number): number;
2974
+ /** The seconds whose frames lie inside a span, the end frame among them, at most `max`, evenly spread with both ends kept. */
2975
+ export declare function spanFrameSeconds(start: number, end: number, duration: number, max?: number): number[];
660
2976
  /** What the plan does not reproduce from its reference, one warning per unmapped entry (rule 3, C5). */
661
2977
  export declare function referenceProfileWarnings(profile: z.input<typeof referenceProfileRead> | undefined): string[];
662
2978
  /** An analyser's free-text state change as one of our categories; an unrecognised one is other, never kept as text. */