@clipwright/core 0.35.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 (210) hide show
  1. package/README.md +3 -2
  2. package/dist/account-actors.d.ts +5 -6
  3. package/dist/account-actors.js +5 -6
  4. package/dist/account-actors.js.map +1 -1
  5. package/dist/actors.d.ts +8 -0
  6. package/dist/actors.js +2 -0
  7. package/dist/actors.js.map +1 -1
  8. package/dist/api-failure.d.ts +1 -1
  9. package/dist/api-failure.js +2 -2
  10. package/dist/api-failure.js.map +1 -1
  11. package/dist/aspect.d.ts +1 -1
  12. package/dist/aspect.js +5 -5
  13. package/dist/aspect.js.map +1 -1
  14. package/dist/assets.d.ts +13 -5
  15. package/dist/assets.js +7 -6
  16. package/dist/assets.js.map +1 -1
  17. package/dist/billing-terms.d.ts +1 -1
  18. package/dist/billing-terms.js +1 -1
  19. package/dist/billing-terms.js.map +1 -1
  20. package/dist/canvas-fit.js +1 -1
  21. package/dist/canvas-fit.js.map +1 -1
  22. package/dist/caption-geometry.d.ts +43 -0
  23. package/dist/caption-geometry.js +41 -0
  24. package/dist/caption-geometry.js.map +1 -0
  25. package/dist/contract-dispositions.d.ts +1005 -43
  26. package/dist/contract-dispositions.js +36 -16
  27. package/dist/contract-dispositions.js.map +1 -1
  28. package/dist/contracts/v1/workflow-brief.d.ts +2045 -38
  29. package/dist/contracts/v1/workflow-brief.js +2 -2
  30. package/dist/contracts/v1/workflow-brief.js.map +1 -1
  31. package/dist/contracts/v1/workflow-catalog.d.ts +2196 -72
  32. package/dist/contracts/v1/workflow-client.d.ts +1249 -70
  33. package/dist/contracts/v1/workflow-execution.d.ts +3 -3
  34. package/dist/contracts/v1/workflow-plan.d.ts +3294 -108
  35. package/dist/contracts/v1/workflow-run-read.d.ts +2 -2
  36. package/dist/edit-billing.d.ts +1 -0
  37. package/dist/edit-billing.js +3 -2
  38. package/dist/edit-billing.js.map +1 -1
  39. package/dist/edit-candidate.d.ts +2 -2
  40. package/dist/edit-candidate.js +2 -2
  41. package/dist/edit-candidate.js.map +1 -1
  42. package/dist/edit-document.d.ts +22 -0
  43. package/dist/edit-document.js +3 -0
  44. package/dist/edit-document.js.map +1 -1
  45. package/dist/edit-long-form.d.ts +2 -2
  46. package/dist/edit-long-form.js +3 -3
  47. package/dist/edit-long-form.js.map +1 -1
  48. package/dist/edit-revision.d.ts +10 -1
  49. package/dist/edit-revision.js +1 -1
  50. package/dist/edit-revision.js.map +1 -1
  51. package/dist/edit-rules.d.ts +1 -0
  52. package/dist/edit-rules.js +3 -0
  53. package/dist/edit-rules.js.map +1 -1
  54. package/dist/edit-shots.d.ts +2 -0
  55. package/dist/edit-validate.d.ts +4 -2
  56. package/dist/edit-validate.js +18 -2
  57. package/dist/edit-validate.js.map +1 -1
  58. package/dist/endpoint-notes.js +12 -8
  59. package/dist/endpoint-notes.js.map +1 -1
  60. package/dist/endpoints.d.ts +1 -1
  61. package/dist/endpoints.js +4 -1
  62. package/dist/endpoints.js.map +1 -1
  63. package/dist/errors.d.ts +3 -2
  64. package/dist/errors.js +5 -2
  65. package/dist/errors.js.map +1 -1
  66. package/dist/face-billing.d.ts +1 -1
  67. package/dist/face-billing.js +3 -3
  68. package/dist/face-billing.js.map +1 -1
  69. package/dist/face-delivery.d.ts +1 -1
  70. package/dist/face-delivery.js +1 -1
  71. package/dist/face-delivery.js.map +1 -1
  72. package/dist/faceless-media-record.d.ts +28 -1
  73. package/dist/faceless-media-record.js +16 -2
  74. package/dist/faceless-media-record.js.map +1 -1
  75. package/dist/faceless-price.d.ts +25 -6
  76. package/dist/faceless-price.js +13 -6
  77. package/dist/faceless-price.js.map +1 -1
  78. package/dist/faceless-public-plan.d.ts +6 -2
  79. package/dist/faceless-public-plan.js +11 -7
  80. package/dist/faceless-public-plan.js.map +1 -1
  81. package/dist/faceless-public.d.ts +108 -1
  82. package/dist/faceless-public.js +38 -5
  83. package/dist/faceless-public.js.map +1 -1
  84. package/dist/faceless-voices.d.ts +6 -6
  85. package/dist/faceless-voices.js +5 -5
  86. package/dist/faceless-voices.js.map +1 -1
  87. package/dist/feedback.d.ts +29 -0
  88. package/dist/feedback.js +29 -0
  89. package/dist/feedback.js.map +1 -0
  90. package/dist/generations.d.ts +2 -19
  91. package/dist/generations.js +28 -48
  92. package/dist/generations.js.map +1 -1
  93. package/dist/index.d.ts +5 -0
  94. package/dist/index.js +6 -0
  95. package/dist/index.js.map +1 -1
  96. package/dist/long-form-revision.d.ts +8 -0
  97. package/dist/media-timebase.js +2 -2
  98. package/dist/media-timebase.js.map +1 -1
  99. package/dist/openapi.d.ts +4 -3
  100. package/dist/openapi.js +8 -3
  101. package/dist/openapi.js.map +1 -1
  102. package/dist/parts-pricing.d.ts +3 -3
  103. package/dist/parts-pricing.js +6 -6
  104. package/dist/parts-pricing.js.map +1 -1
  105. package/dist/presenter-beats.d.ts +2 -2
  106. package/dist/presenter-beats.js +2 -2
  107. package/dist/presenter-beats.js.map +1 -1
  108. package/dist/prices.js +5 -1
  109. package/dist/prices.js.map +1 -1
  110. package/dist/public-responses.d.ts +1 -1
  111. package/dist/public-responses.js +1 -1
  112. package/dist/public-responses.js.map +1 -1
  113. package/dist/rate-limit.d.ts +2 -2
  114. package/dist/rate-limit.js +2 -2
  115. package/dist/rate-limit.js.map +1 -1
  116. package/dist/reference-analysis.d.ts +636 -43
  117. package/dist/reference-analysis.js +262 -22
  118. package/dist/reference-analysis.js.map +1 -1
  119. package/dist/reference-display.d.ts +36 -0
  120. package/dist/reference-display.js +78 -0
  121. package/dist/reference-display.js.map +1 -0
  122. package/dist/reference-kinds.d.ts +3 -1
  123. package/dist/reference-kinds.js +3 -1
  124. package/dist/reference-kinds.js.map +1 -1
  125. package/dist/reference-profile.d.ts +2394 -40
  126. package/dist/reference-profile.js +192 -17
  127. package/dist/reference-profile.js.map +1 -1
  128. package/dist/reference-staging.d.ts +71 -57
  129. package/dist/reference-staging.js +9 -6
  130. package/dist/reference-staging.js.map +1 -1
  131. package/dist/reference-voice.d.ts +1 -1
  132. package/dist/reference-voice.js +3 -3
  133. package/dist/reference-voice.js.map +1 -1
  134. package/dist/render-backend.d.ts +1 -1
  135. package/dist/resolved-timeline.d.ts +201 -4
  136. package/dist/resolved-timeline.js +20 -8
  137. package/dist/resolved-timeline.js.map +1 -1
  138. package/dist/run-static-warnings.js +1 -1
  139. package/dist/run-static-warnings.js.map +1 -1
  140. package/dist/runs.d.ts +3 -3
  141. package/dist/runs.js +3 -3
  142. package/dist/runs.js.map +1 -1
  143. package/dist/scene-place.d.ts +225 -0
  144. package/dist/scene-place.js +120 -0
  145. package/dist/scene-place.js.map +1 -0
  146. package/dist/semantic-inserts.d.ts +1 -1
  147. package/dist/semantic-inserts.js +2 -2
  148. package/dist/semantic-inserts.js.map +1 -1
  149. package/dist/skills.d.ts +4685 -30
  150. package/dist/skills.js +153 -37
  151. package/dist/skills.js.map +1 -1
  152. package/dist/templates/index.d.ts +15 -5
  153. package/dist/templates/index.js +50 -6
  154. package/dist/templates/index.js.map +1 -1
  155. package/dist/templates/size.d.ts +1 -1
  156. package/dist/templates/size.js +1 -1
  157. package/dist/templates/size.js.map +1 -1
  158. package/dist/templates/sounds.js +1 -1
  159. package/dist/templates/sounds.js.map +1 -1
  160. package/dist/ugc-call.d.ts +1 -1
  161. package/dist/ugc-call.js +2 -2
  162. package/dist/ugc-call.js.map +1 -1
  163. package/dist/ugc-delivery.d.ts +1 -1
  164. package/dist/ugc-delivery.js +1 -1
  165. package/dist/ugc-delivery.js.map +1 -1
  166. package/dist/ugc-interview.d.ts +122 -0
  167. package/dist/ugc-interview.js +260 -0
  168. package/dist/ugc-interview.js.map +1 -0
  169. package/dist/ugc-layers.d.ts +88 -6
  170. package/dist/ugc-layers.js +193 -5
  171. package/dist/ugc-layers.js.map +1 -1
  172. package/dist/ugc-video-media.d.ts +1 -1
  173. package/dist/ugc-video-media.js +1 -1
  174. package/dist/ugc-video-media.js.map +1 -1
  175. package/dist/uploads.d.ts +2 -2
  176. package/dist/uploads.js +2 -2
  177. package/dist/uploads.js.map +1 -1
  178. package/dist/vendor-response.d.ts +1 -1
  179. package/dist/vendor-response.js +1 -1
  180. package/dist/vendor-response.js.map +1 -1
  181. package/dist/voice-admission.d.ts +1450 -498
  182. package/dist/voice-admission.js +22 -5
  183. package/dist/voice-admission.js.map +1 -1
  184. package/dist/voice-listing.d.ts +4 -4
  185. package/dist/voice-listing.js +4 -5
  186. package/dist/voice-listing.js.map +1 -1
  187. package/dist/voice-pace.js +1 -1
  188. package/dist/voice-pace.js.map +1 -1
  189. package/dist/voices.d.ts +12 -12
  190. package/dist/voices.js +41 -20
  191. package/dist/voices.js.map +1 -1
  192. package/dist/workflows/methods/faceless-explainer.d.ts +612 -15
  193. package/dist/workflows/methods/kinetic-launch.d.ts +612 -15
  194. package/dist/workflows/methods/kinetic-launch.js +1 -1
  195. package/dist/workflows/methods/product-image-story.d.ts +612 -15
  196. package/dist/workflows/methods/reference-remake.d.ts +612 -15
  197. package/dist/workflows/methods/shared.d.ts +612 -15
  198. package/dist/workflows/methods/shared.js +2 -2
  199. package/dist/workflows/methods/shared.js.map +1 -1
  200. package/dist/workflows/methods/ugc-faq-answer.d.ts +612 -15
  201. package/dist/workflows/methods/ugc-product-intro.d.ts +612 -15
  202. package/dist/workflows/methods/website-proof-demo.d.ts +612 -15
  203. package/dist/workflows/methods/website-proof-demo.js +1 -1
  204. package/dist/workflows/reference-remake.d.ts +152 -35
  205. package/dist/workflows/reference-remake.js +188 -23
  206. package/dist/workflows/reference-remake.js.map +1 -1
  207. package/dist/workflows/validate.js +4 -4
  208. package/dist/workflows/validate.js.map +1 -1
  209. package/package.json +2 -3
  210. package/CHANGELOG.md +0 -1500
@@ -1,6 +1,6 @@
1
1
  import { z } from "zod";
2
2
  import { type ReferenceGraphicKind, type ReferenceSourceKind } from "./reference-kinds.js";
3
- export { REFERENCE_GRAPHIC_KINDS, REFERENCE_SOURCE_KINDS, type ReferenceGraphicKind, type ReferenceSourceKind } from "./reference-kinds.js";
3
+ export { REFERENCE_DESCRIBED_KINDS, REFERENCE_GRAPHIC_KINDS, REFERENCE_SOURCE_KINDS, type ReferenceGraphicKind, type ReferenceSourceKind } from "./reference-kinds.js";
4
4
  export declare const REFERENCE_PROFILE_VERSION = "reference-profile-v1";
5
5
  export declare const REFERENCE_FORMATS: readonly ["talking_head_graphics", "faceless", "broll", "other"];
6
6
  export declare const REFERENCE_BEAT_ROLES: readonly ["hook", "problem", "agitation", "solution", "demo", "proof", "before_after", "social_proof", "offer", "cta", "other"];
@@ -12,10 +12,2237 @@ export declare const REFERENCE_SOUND_KINDS: readonly ["click", "toggle", "ring",
12
12
  export declare const REFERENCE_PRESENTER_BEHAVIOURS: readonly ["speaking", "listening", "reacting", "absent"];
13
13
  export declare const REFERENCE_CAPTION_POSITIONS: readonly ["top", "middle", "lower", "bottom"];
14
14
  export declare const MAX_REFERENCE_SUMMARY_CHARS = 200;
15
- /** What a graphic does at a state change, in a closed set: the reference's own words never reach a stored profile. */
15
+ export declare const MAX_REFERENCE_LABEL_CHARS = 120;
16
+ /** The transcribed words of a 120 s reference stay well under this (Ana, 69 s: 147 words). */
17
+ export declare const MAX_REFERENCE_TRANSCRIPT_WORDS = 1000;
18
+ /** The hook is the reference's first 3 s, carried to the end of its sentence but never past 6 s. */
19
+ export declare const REFERENCE_HOOK_SECONDS = 3;
20
+ export declare const REFERENCE_HOOK_MAX_SECONDS = 6;
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. */
16
22
  export declare const REFERENCE_STATE_CHANGES: readonly ["appears", "disappears", "toggles_on", "toggles_off", "checked", "value_changes", "highlighted", "other"];
17
23
  export type ReferenceStateChange = (typeof REFERENCE_STATE_CHANGES)[number];
18
- export declare const referenceProfile: z.ZodObject<{
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>;
87
+ export declare const referenceWord: z.ZodObject<{
88
+ text: z.ZodString;
89
+ start_s: z.ZodNumber;
90
+ end_s: z.ZodNumber;
91
+ speaker: z.ZodOptional<z.ZodString>;
92
+ }, z.core.$strict>;
93
+ export declare const referenceLanguage: z.ZodNullable<z.ZodString>;
94
+ export declare const referenceHook: z.ZodObject<{
95
+ text: z.ZodString;
96
+ end_s: z.ZodNumber;
97
+ caption: z.ZodOptional<z.ZodString>;
98
+ }, z.core.$strict>;
99
+ declare const profileHead: {
100
+ version: z.ZodLiteral<"reference-profile-v1">;
101
+ source: z.ZodObject<{
102
+ digest: z.ZodString;
103
+ duration_s: z.ZodNumber;
104
+ width: z.ZodNumber;
105
+ height: z.ZodNumber;
106
+ url: z.ZodOptional<z.ZodString>;
107
+ }, z.core.$strict>;
108
+ format: z.ZodEnum<{
109
+ broll: "broll";
110
+ faceless: "faceless";
111
+ other: "other";
112
+ talking_head_graphics: "talking_head_graphics";
113
+ }>;
114
+ beats: z.ZodArray<z.ZodObject<{
115
+ start_frac: z.ZodNumber;
116
+ end_frac: z.ZodNumber;
117
+ start_s: z.ZodNumber;
118
+ end_s: z.ZodNumber;
119
+ role: z.ZodEnum<{
120
+ agitation: "agitation";
121
+ before_after: "before_after";
122
+ cta: "cta";
123
+ demo: "demo";
124
+ hook: "hook";
125
+ offer: "offer";
126
+ other: "other";
127
+ problem: "problem";
128
+ proof: "proof";
129
+ social_proof: "social_proof";
130
+ solution: "solution";
131
+ }>;
132
+ spoken_summary: z.ZodString;
133
+ graphics: z.ZodArray<z.ZodObject<{
134
+ kind: z.ZodEnum<{
135
+ callout: "callout";
136
+ checklist: "checklist";
137
+ compare: "compare";
138
+ end_card: "end_card";
139
+ insert_media: "insert_media";
140
+ layout_split: "layout_split";
141
+ lower_third: "lower_third";
142
+ notification: "notification";
143
+ overlay_media: "overlay_media";
144
+ particles: "particles";
145
+ phone_call: "phone_call";
146
+ progress: "progress";
147
+ quote: "quote";
148
+ rating: "rating";
149
+ stat: "stat";
150
+ tag: "tag";
151
+ title_card: "title_card";
152
+ unmapped: "unmapped";
153
+ }>;
154
+ source_kind: z.ZodEnum<{
155
+ banner: "banner";
156
+ before_after_split: "before_after_split";
157
+ callout: "callout";
158
+ checklist: "checklist";
159
+ comment_box: "comment_box";
160
+ compare: "compare";
161
+ concept_card: "concept_card";
162
+ end_card: "end_card";
163
+ insert_media: "insert_media";
164
+ layout_split: "layout_split";
165
+ logo_card: "logo_card";
166
+ lower_third: "lower_third";
167
+ notification: "notification";
168
+ other: "other";
169
+ overlay_media: "overlay_media";
170
+ particles: "particles";
171
+ phone_call: "phone_call";
172
+ price_card: "price_card";
173
+ product_ui: "product_ui";
174
+ progress: "progress";
175
+ quote: "quote";
176
+ rating: "rating";
177
+ screenshot: "screenshot";
178
+ split_screen: "split_screen";
179
+ stat: "stat";
180
+ tag: "tag";
181
+ title_card: "title_card";
182
+ toggle_checklist: "toggle_checklist";
183
+ unmapped: "unmapped";
184
+ }>;
185
+ position: z.ZodEnum<{
186
+ bottom: "bottom";
187
+ bottom_left: "bottom_left";
188
+ bottom_right: "bottom_right";
189
+ center: "center";
190
+ full_screen: "full_screen";
191
+ other: "other";
192
+ split_bottom: "split_bottom";
193
+ split_top: "split_top";
194
+ top: "top";
195
+ top_left: "top_left";
196
+ top_right: "top_right";
197
+ }>;
198
+ state_changes: z.ZodArray<z.ZodObject<{
199
+ at_frac: z.ZodNumber;
200
+ change: z.ZodEnum<{
201
+ appears: "appears";
202
+ checked: "checked";
203
+ disappears: "disappears";
204
+ highlighted: "highlighted";
205
+ other: "other";
206
+ toggles_off: "toggles_off";
207
+ toggles_on: "toggles_on";
208
+ value_changes: "value_changes";
209
+ }>;
210
+ }, z.core.$strict>>;
211
+ label_hint: z.ZodString;
212
+ }, z.core.$strict>>;
213
+ camera: z.ZodEnum<{
214
+ other: "other";
215
+ punch_in: "punch_in";
216
+ shake: "shake";
217
+ static: "static";
218
+ zoom_out: "zoom_out";
219
+ }>;
220
+ transition_in: z.ZodEnum<{
221
+ cut: "cut";
222
+ flash: "flash";
223
+ none: "none";
224
+ other: "other";
225
+ wipe: "wipe";
226
+ zoom: "zoom";
227
+ }>;
228
+ sounds: z.ZodArray<z.ZodObject<{
229
+ at_frac: z.ZodNumber;
230
+ kind: z.ZodEnum<{
231
+ answer: "answer";
232
+ click: "click";
233
+ edit: "edit";
234
+ flash: "flash";
235
+ hangup: "hangup";
236
+ money: "money";
237
+ music: "music";
238
+ notify: "notify";
239
+ other: "other";
240
+ pop: "pop";
241
+ recorded_audio: "recorded_audio";
242
+ ring: "ring";
243
+ step: "step";
244
+ toggle: "toggle";
245
+ whoosh: "whoosh";
246
+ }>;
247
+ }, z.core.$strict>>;
248
+ presenter_behaviour: z.ZodEnum<{
249
+ absent: "absent";
250
+ listening: "listening";
251
+ reacting: "reacting";
252
+ speaking: "speaking";
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>>>;
291
+ }, z.core.$strict>>;
292
+ captions: z.ZodObject<{
293
+ present: z.ZodBoolean;
294
+ words_per_caption_max: z.ZodNumber;
295
+ position: z.ZodEnum<{
296
+ bottom: "bottom";
297
+ lower: "lower";
298
+ middle: "middle";
299
+ top: "top";
300
+ }>;
301
+ emphasis_style: z.ZodEnum<{
302
+ color: "color";
303
+ none: "none";
304
+ pill: "pill";
305
+ punch: "punch";
306
+ }>;
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>>;
314
+ }, z.core.$strict>;
315
+ pacing: z.ZodObject<{
316
+ layer_change_every_s: z.ZodNumber;
317
+ face_share: z.ZodNumber;
318
+ }, z.core.$strict>;
319
+ palette: z.ZodArray<z.ZodString>;
320
+ music: z.ZodString;
321
+ unmapped: z.ZodArray<z.ZodObject<{
322
+ what: z.ZodString;
323
+ beat_index: z.ZodNumber;
324
+ suggested_substitute: z.ZodString;
325
+ }, z.core.$strict>>;
326
+ };
327
+ declare const profileTail: {
328
+ /** Optional since S7: a profile written before it has none and still parses. */
329
+ voice: z.ZodOptional<z.ZodObject<{
330
+ version: z.ZodLiteral<"voice-profile-v1">;
331
+ method: z.ZodObject<{
332
+ pause_drop_db: z.ZodNumber;
333
+ pause_min_run_s: z.ZodNumber;
334
+ cut_safe_db: z.ZodNumber;
335
+ pitch: z.ZodLiteral<"yin">;
336
+ sample_rate: z.ZodNumber;
337
+ }, z.core.$strict>;
338
+ presenter_speaker: z.ZodNullable<z.ZodString>;
339
+ speakers: z.ZodArray<z.ZodObject<{
340
+ speaker: z.ZodString;
341
+ word_count: z.ZodNumber;
342
+ sentence_count: z.ZodNumber;
343
+ pace: z.ZodObject<{
344
+ status: z.ZodEnum<{
345
+ measured: "measured";
346
+ unmeasured: "unmeasured";
347
+ }>;
348
+ words_per_second: z.ZodNullable<z.ZodNumber>;
349
+ basis: z.ZodEnum<{
350
+ sentence_spans: "sentence_spans";
351
+ turn_spans: "turn_spans";
352
+ }>;
353
+ }, z.core.$strict>;
354
+ pauses: z.ZodObject<{
355
+ sentence_end: z.ZodObject<{
356
+ timestamp: z.ZodObject<{
357
+ count: z.ZodNumber;
358
+ median_s: z.ZodNullable<z.ZodNumber>;
359
+ p90_s: z.ZodNullable<z.ZodNumber>;
360
+ count_ge150ms: z.ZodNumber;
361
+ }, z.core.$strict>;
362
+ acoustic_pause: z.ZodObject<{
363
+ count: z.ZodNumber;
364
+ median_s: z.ZodNullable<z.ZodNumber>;
365
+ p90_s: z.ZodNullable<z.ZodNumber>;
366
+ count_ge150ms: z.ZodNumber;
367
+ }, z.core.$strict>;
368
+ cut_safe: z.ZodObject<{
369
+ count: z.ZodNumber;
370
+ median_s: z.ZodNullable<z.ZodNumber>;
371
+ p90_s: z.ZodNullable<z.ZodNumber>;
372
+ count_ge150ms: z.ZodNumber;
373
+ }, z.core.$strict>;
374
+ acoustic_no_dip_count: z.ZodNumber;
375
+ acoustic_unconfirmed_count: z.ZodNumber;
376
+ }, z.core.$strict>;
377
+ comma: z.ZodObject<{
378
+ timestamp: z.ZodObject<{
379
+ count: z.ZodNumber;
380
+ median_s: z.ZodNullable<z.ZodNumber>;
381
+ p90_s: z.ZodNullable<z.ZodNumber>;
382
+ count_ge150ms: z.ZodNumber;
383
+ }, z.core.$strict>;
384
+ acoustic_pause: z.ZodObject<{
385
+ count: z.ZodNumber;
386
+ median_s: z.ZodNullable<z.ZodNumber>;
387
+ p90_s: z.ZodNullable<z.ZodNumber>;
388
+ count_ge150ms: z.ZodNumber;
389
+ }, z.core.$strict>;
390
+ cut_safe: z.ZodObject<{
391
+ count: z.ZodNumber;
392
+ median_s: z.ZodNullable<z.ZodNumber>;
393
+ p90_s: z.ZodNullable<z.ZodNumber>;
394
+ count_ge150ms: z.ZodNumber;
395
+ }, z.core.$strict>;
396
+ acoustic_no_dip_count: z.ZodNumber;
397
+ acoustic_unconfirmed_count: z.ZodNumber;
398
+ }, z.core.$strict>;
399
+ mid_phrase: z.ZodObject<{
400
+ timestamp: z.ZodObject<{
401
+ count: z.ZodNumber;
402
+ median_s: z.ZodNullable<z.ZodNumber>;
403
+ p90_s: z.ZodNullable<z.ZodNumber>;
404
+ count_ge150ms: z.ZodNumber;
405
+ }, z.core.$strict>;
406
+ acoustic_pause: z.ZodObject<{
407
+ count: z.ZodNumber;
408
+ median_s: z.ZodNullable<z.ZodNumber>;
409
+ p90_s: z.ZodNullable<z.ZodNumber>;
410
+ count_ge150ms: z.ZodNumber;
411
+ }, z.core.$strict>;
412
+ cut_safe: z.ZodObject<{
413
+ count: z.ZodNumber;
414
+ median_s: z.ZodNullable<z.ZodNumber>;
415
+ p90_s: z.ZodNullable<z.ZodNumber>;
416
+ count_ge150ms: z.ZodNumber;
417
+ }, z.core.$strict>;
418
+ acoustic_no_dip_count: z.ZodNumber;
419
+ acoustic_unconfirmed_count: z.ZodNumber;
420
+ }, z.core.$strict>;
421
+ }, z.core.$strict>;
422
+ long_pause_count: z.ZodNumber;
423
+ hinge: z.ZodObject<{
424
+ status: z.ZodEnum<{
425
+ measured: "measured";
426
+ not_evaluated: "not_evaluated";
427
+ }>;
428
+ sentence_share: z.ZodNullable<z.ZodNumber>;
429
+ evaluated_sentences: z.ZodNumber;
430
+ coverage: z.ZodNullable<z.ZodNumber>;
431
+ timestamp_sentence_share: z.ZodNullable<z.ZodNumber>;
432
+ median_position: z.ZodNullable<z.ZodNumber>;
433
+ median_seconds: z.ZodNullable<z.ZodNumber>;
434
+ }, z.core.$strict>;
435
+ pitch: z.ZodObject<{
436
+ status: z.ZodEnum<{
437
+ measured: "measured";
438
+ no_voiced_frames: "no_voiced_frames";
439
+ }>;
440
+ ceiling_hz: z.ZodNumber;
441
+ ceiling_basis: z.ZodEnum<{
442
+ configured: "configured";
443
+ default: "default";
444
+ low_f0: "low_f0";
445
+ }>;
446
+ median_hz: z.ZodNullable<z.ZodNumber>;
447
+ p10_hz: z.ZodNullable<z.ZodNumber>;
448
+ p90_hz: z.ZodNullable<z.ZodNumber>;
449
+ range_st: z.ZodNullable<z.ZodNumber>;
450
+ voiced_frames: z.ZodNumber;
451
+ }, z.core.$strict>;
452
+ loudness: z.ZodObject<{
453
+ status: z.ZodEnum<{
454
+ measured: "measured";
455
+ unmeasured: "unmeasured";
456
+ }>;
457
+ range_db_p10_p90: z.ZodNullable<z.ZodNumber>;
458
+ }, z.core.$strict>;
459
+ warnings: z.ZodArray<z.ZodEnum<{
460
+ background_music_present_f0_and_intensity_may_be_contaminated: "background_music_present_f0_and_intensity_may_be_contaminated";
461
+ no_sentence_terminal_punctuation_pace_uses_turn_spans: "no_sentence_terminal_punctuation_pace_uses_turn_spans";
462
+ }>>;
463
+ }, z.core.$strict>>;
464
+ }, z.core.$strict>>;
465
+ /** Optional since #884 S5d; absent reads as close. */
466
+ presenter_framing: z.ZodOptional<z.ZodEnum<{
467
+ close: "close";
468
+ wide: "wide";
469
+ }>>;
470
+ /** Optional since #884 S5d; absent reads as false. */
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. */
473
+ staging: z.ZodOptional<z.ZodObject<{
474
+ version: z.ZodLiteral<"reference-staging-v1">;
475
+ analysis_width: z.ZodNumber;
476
+ anchors: z.ZodArray<z.ZodObject<{
477
+ id: z.ZodString;
478
+ t_s: z.ZodNumber;
479
+ }, z.core.$strict>>;
480
+ elements: z.ZodArray<z.ZodObject<{
481
+ id: z.ZodString;
482
+ beat_index: z.ZodNumber;
483
+ graphic_index: z.ZodNullable<z.ZodNumber>;
484
+ kind: z.ZodEnum<{
485
+ banner: "banner";
486
+ before_after_split: "before_after_split";
487
+ callout: "callout";
488
+ checklist: "checklist";
489
+ comment_box: "comment_box";
490
+ compare: "compare";
491
+ concept_card: "concept_card";
492
+ end_card: "end_card";
493
+ insert_media: "insert_media";
494
+ layout_split: "layout_split";
495
+ logo_card: "logo_card";
496
+ lower_third: "lower_third";
497
+ notification: "notification";
498
+ other: "other";
499
+ overlay_media: "overlay_media";
500
+ particles: "particles";
501
+ phone_call: "phone_call";
502
+ price_card: "price_card";
503
+ product_ui: "product_ui";
504
+ progress: "progress";
505
+ quote: "quote";
506
+ rating: "rating";
507
+ screenshot: "screenshot";
508
+ split_screen: "split_screen";
509
+ stat: "stat";
510
+ tag: "tag";
511
+ title_card: "title_card";
512
+ toggle_checklist: "toggle_checklist";
513
+ unmapped: "unmapped";
514
+ }>;
515
+ rect_hold: z.ZodOptional<z.ZodObject<{
516
+ left: z.ZodNumber;
517
+ top: z.ZodNumber;
518
+ width: z.ZodNumber;
519
+ height: z.ZodNumber;
520
+ }, z.core.$strict>>;
521
+ rect_hold_face: z.ZodOptional<z.ZodObject<{
522
+ left: z.ZodNumber;
523
+ top: z.ZodNumber;
524
+ width: z.ZodNumber;
525
+ height: z.ZodNumber;
526
+ }, z.core.$strict>>;
527
+ rect_method: z.ZodOptional<z.ZodEnum<{
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";
535
+ }>>;
536
+ rects: z.ZodOptional<z.ZodArray<z.ZodObject<{
537
+ t_s: z.ZodNumber;
538
+ rect: z.ZodObject<{
539
+ left: z.ZodNumber;
540
+ top: z.ZodNumber;
541
+ width: z.ZodNumber;
542
+ height: z.ZodNumber;
543
+ }, z.core.$strict>;
544
+ visible: z.ZodNumber;
545
+ }, z.core.$strict>>>;
546
+ entry: z.ZodOptional<z.ZodObject<{
547
+ first_visible_s: z.ZodOptional<z.ZodNumber>;
548
+ settled_s: z.ZodOptional<z.ZodNumber>;
549
+ anchors: z.ZodOptional<z.ZodArray<z.ZodObject<{
550
+ id: z.ZodString;
551
+ offset_s: z.ZodNumber;
552
+ }, z.core.$strict>>>;
553
+ style: z.ZodOptional<z.ZodEnum<{
554
+ blur_in: "blur_in";
555
+ fade: "fade";
556
+ pop: "pop";
557
+ scale_up: "scale_up";
558
+ slide: "slide";
559
+ tilt_in: "tilt_in";
560
+ typewriter: "typewriter";
561
+ unknown: "unknown";
562
+ wipe: "wipe";
563
+ }>>;
564
+ from: z.ZodOptional<z.ZodEnum<{
565
+ bottom: "bottom";
566
+ left: "left";
567
+ lower_left: "lower_left";
568
+ lower_right: "lower_right";
569
+ none: "none";
570
+ right: "right";
571
+ top: "top";
572
+ upper_left: "upper_left";
573
+ upper_right: "upper_right";
574
+ }>>;
575
+ duration_s: z.ZodOptional<z.ZodNumber>;
576
+ displacement: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
577
+ scale_from: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
578
+ method: z.ZodOptional<z.ZodEnum<{
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";
586
+ }>>;
587
+ }, z.core.$strict>>;
588
+ exit: z.ZodOptional<z.ZodObject<{
589
+ last_visible_s: z.ZodOptional<z.ZodNumber>;
590
+ anchors: z.ZodOptional<z.ZodArray<z.ZodObject<{
591
+ id: z.ZodString;
592
+ offset_s: z.ZodNumber;
593
+ }, z.core.$strict>>>;
594
+ style: z.ZodOptional<z.ZodEnum<{
595
+ blur_in: "blur_in";
596
+ cut: "cut";
597
+ fade: "fade";
598
+ flash: "flash";
599
+ pop: "pop";
600
+ scale_up: "scale_up";
601
+ slide: "slide";
602
+ tilt_in: "tilt_in";
603
+ typewriter: "typewriter";
604
+ unknown: "unknown";
605
+ wipe: "wipe";
606
+ }>>;
607
+ to: z.ZodOptional<z.ZodEnum<{
608
+ bottom: "bottom";
609
+ left: "left";
610
+ lower_left: "lower_left";
611
+ lower_right: "lower_right";
612
+ none: "none";
613
+ right: "right";
614
+ top: "top";
615
+ upper_left: "upper_left";
616
+ upper_right: "upper_right";
617
+ }>>;
618
+ duration_s: z.ZodOptional<z.ZodNumber>;
619
+ displacement: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
620
+ method: z.ZodOptional<z.ZodEnum<{
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";
628
+ }>>;
629
+ }, z.core.$strict>>;
630
+ layer: z.ZodOptional<z.ZodObject<{
631
+ value: z.ZodEnum<{
632
+ behind_presenter: "behind_presenter";
633
+ in_front_of_presenter: "in_front_of_presenter";
634
+ no_overlap: "no_overlap";
635
+ presenter_absent: "presenter_absent";
636
+ unknown: "unknown";
637
+ }>;
638
+ method: z.ZodEnum<{
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";
646
+ }>;
647
+ covered_by: z.ZodArray<z.ZodEnum<{
648
+ body: "body";
649
+ chair: "chair";
650
+ desk: "desk";
651
+ face: "face";
652
+ hair: "hair";
653
+ hand: "hand";
654
+ microphone: "microphone";
655
+ other: "other";
656
+ shoulder: "shoulder";
657
+ }>>;
658
+ face_clear: z.ZodOptional<z.ZodBoolean>;
659
+ face_core_cover_max: z.ZodOptional<z.ZodNumber>;
660
+ face_covered_share: z.ZodOptional<z.ZodNumber>;
661
+ blurs_presenter: z.ZodOptional<z.ZodBoolean>;
662
+ }, z.core.$strict>>;
663
+ motion: z.ZodOptional<z.ZodObject<{
664
+ kind: z.ZodOptional<z.ZodEnum<{
665
+ drift: "drift";
666
+ float: "float";
667
+ moves_with_frame: "moves_with_frame";
668
+ pushed: "pushed";
669
+ scale: "scale";
670
+ static: "static";
671
+ }>>;
672
+ drift_per_s: z.ZodOptional<z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>>;
673
+ scale_per_s: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
674
+ wobble: z.ZodOptional<z.ZodOptional<z.ZodObject<{
675
+ amplitude: z.ZodNumber;
676
+ period_s: z.ZodNumber;
677
+ }, z.core.$strict>>>;
678
+ }, z.core.$strict>>;
679
+ }, z.core.$strict>>;
680
+ freezes: z.ZodArray<z.ZodObject<{
681
+ start_s: z.ZodNumber;
682
+ end_s: z.ZodNumber;
683
+ anchors: z.ZodArray<z.ZodObject<{
684
+ id: z.ZodString;
685
+ offset_s: z.ZodNumber;
686
+ }, z.core.$strict>>;
687
+ face_box_start: z.ZodObject<{
688
+ left: z.ZodNumber;
689
+ top: z.ZodNumber;
690
+ width: z.ZodNumber;
691
+ height: z.ZodNumber;
692
+ }, z.core.$strict>;
693
+ face_box_end: z.ZodObject<{
694
+ left: z.ZodNumber;
695
+ top: z.ZodNumber;
696
+ width: z.ZodNumber;
697
+ height: z.ZodNumber;
698
+ }, z.core.$strict>;
699
+ roll_deg: z.ZodNumber;
700
+ yaw: z.ZodNumber;
701
+ pitch: z.ZodNumber;
702
+ gaze: z.ZodOptional<z.ZodEnum<{
703
+ camera: "camera";
704
+ closed: "closed";
705
+ down: "down";
706
+ element: "element";
707
+ left: "left";
708
+ right: "right";
709
+ up_left: "up_left";
710
+ up_right: "up_right";
711
+ }>>;
712
+ head_roll: z.ZodEnum<{
713
+ left: "left";
714
+ right: "right";
715
+ upright: "upright";
716
+ }>;
717
+ expression: z.ZodOptional<z.ZodEnum<{
718
+ neutral: "neutral";
719
+ other: "other";
720
+ smile: "smile";
721
+ surprised: "surprised";
722
+ thinking: "thinking";
723
+ }>>;
724
+ hands: z.ZodOptional<z.ZodEnum<{
725
+ at_chest: "at_chest";
726
+ gesturing: "gesturing";
727
+ other: "other";
728
+ out_of_frame: "out_of_frame";
729
+ }>>;
730
+ frame_motion: z.ZodOptional<z.ZodObject<{
731
+ scale_end: z.ZodNumber;
732
+ centre_shift: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
733
+ }, z.core.$strict>>;
734
+ ends_with: z.ZodEnum<{
735
+ cut: "cut";
736
+ end: "end";
737
+ flash: "flash";
738
+ unfreeze: "unfreeze";
739
+ }>;
740
+ }, z.core.$strict>>;
741
+ }, z.core.$strict>>;
742
+ /** Optional since #930 S1, as is hook: a profile written before them parses. */
743
+ transcript: z.ZodOptional<z.ZodArray<z.ZodObject<{
744
+ text: z.ZodString;
745
+ start_s: z.ZodNumber;
746
+ end_s: z.ZodNumber;
747
+ speaker: z.ZodOptional<z.ZodString>;
748
+ }, z.core.$strict>>>;
749
+ /** Optional since #990. */
750
+ transcript_language: z.ZodOptional<z.ZodNullable<z.ZodString>>;
751
+ hook: z.ZodOptional<z.ZodObject<{
752
+ text: z.ZodString;
753
+ end_s: z.ZodNumber;
754
+ caption: z.ZodOptional<z.ZodString>;
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<{
19
2246
  version: z.ZodLiteral<"reference-profile-v1">;
20
2247
  source: z.ZodObject<{
21
2248
  digest: z.ZodString;
@@ -71,19 +2298,24 @@ export declare const referenceProfile: z.ZodObject<{
71
2298
  unmapped: "unmapped";
72
2299
  }>;
73
2300
  source_kind: z.ZodEnum<{
2301
+ banner: "banner";
74
2302
  before_after_split: "before_after_split";
75
2303
  callout: "callout";
76
2304
  checklist: "checklist";
2305
+ comment_box: "comment_box";
77
2306
  compare: "compare";
2307
+ concept_card: "concept_card";
78
2308
  end_card: "end_card";
79
2309
  insert_media: "insert_media";
80
2310
  layout_split: "layout_split";
2311
+ logo_card: "logo_card";
81
2312
  lower_third: "lower_third";
82
2313
  notification: "notification";
83
2314
  other: "other";
84
2315
  overlay_media: "overlay_media";
85
2316
  particles: "particles";
86
2317
  phone_call: "phone_call";
2318
+ price_card: "price_card";
87
2319
  product_ui: "product_ui";
88
2320
  progress: "progress";
89
2321
  quote: "quote";
@@ -165,6 +2397,43 @@ export declare const referenceProfile: z.ZodObject<{
165
2397
  reacting: "reacting";
166
2398
  speaking: "speaking";
167
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>>>;
168
2437
  }, z.core.$strict>>;
169
2438
  captions: z.ZodObject<{
170
2439
  present: z.ZodBoolean;
@@ -182,6 +2451,12 @@ export declare const referenceProfile: z.ZodObject<{
182
2451
  punch: "punch";
183
2452
  }>;
184
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>>;
185
2460
  }, z.core.$strict>;
186
2461
  pacing: z.ZodObject<{
187
2462
  layer_change_every_s: z.ZodNumber;
@@ -194,12 +2469,6 @@ export declare const referenceProfile: z.ZodObject<{
194
2469
  beat_index: z.ZodNumber;
195
2470
  suggested_substitute: z.ZodString;
196
2471
  }, z.core.$strict>>;
197
- analysis: z.ZodObject<{
198
- models: z.ZodArray<z.ZodString>;
199
- cost_usd: z.ZodOptional<z.ZodNumber>;
200
- latency_ms: z.ZodNumber;
201
- warnings: z.ZodOptional<z.ZodArray<z.ZodString>>;
202
- }, z.core.$strict>;
203
2472
  voice: z.ZodOptional<z.ZodObject<{
204
2473
  version: z.ZodLiteral<"voice-profile-v1">;
205
2474
  method: z.ZodObject<{
@@ -353,19 +2622,24 @@ export declare const referenceProfile: z.ZodObject<{
353
2622
  beat_index: z.ZodNumber;
354
2623
  graphic_index: z.ZodNullable<z.ZodNumber>;
355
2624
  kind: z.ZodEnum<{
2625
+ banner: "banner";
356
2626
  before_after_split: "before_after_split";
357
2627
  callout: "callout";
358
2628
  checklist: "checklist";
2629
+ comment_box: "comment_box";
359
2630
  compare: "compare";
2631
+ concept_card: "concept_card";
360
2632
  end_card: "end_card";
361
2633
  insert_media: "insert_media";
362
2634
  layout_split: "layout_split";
2635
+ logo_card: "logo_card";
363
2636
  lower_third: "lower_third";
364
2637
  notification: "notification";
365
2638
  other: "other";
366
2639
  overlay_media: "overlay_media";
367
2640
  particles: "particles";
368
2641
  phone_call: "phone_call";
2642
+ price_card: "price_card";
369
2643
  product_ui: "product_ui";
370
2644
  progress: "progress";
371
2645
  quote: "quote";
@@ -391,13 +2665,13 @@ export declare const referenceProfile: z.ZodObject<{
391
2665
  height: z.ZodNumber;
392
2666
  }, z.core.$strict>>;
393
2667
  rect_method: z.ZodOptional<z.ZodEnum<{
394
- "cv-before-after/v1": "cv-before-after/v1";
395
- "cv-cells/v1": "cv-cells/v1";
396
- "cv-parallax/v1": "cv-parallax/v1";
397
- "cv-template/v1": "cv-template/v1";
398
- "vision-still": "vision-still";
399
- "vision-video": "vision-video";
400
- "yunet-native/v1": "yunet-native/v1";
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";
401
2675
  }>>;
402
2676
  rects: z.ZodOptional<z.ZodArray<z.ZodObject<{
403
2677
  t_s: z.ZodNumber;
@@ -442,13 +2716,13 @@ export declare const referenceProfile: z.ZodObject<{
442
2716
  displacement: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
443
2717
  scale_from: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
444
2718
  method: z.ZodOptional<z.ZodEnum<{
445
- "cv-before-after/v1": "cv-before-after/v1";
446
- "cv-cells/v1": "cv-cells/v1";
447
- "cv-parallax/v1": "cv-parallax/v1";
448
- "cv-template/v1": "cv-template/v1";
449
- "vision-still": "vision-still";
450
- "vision-video": "vision-video";
451
- "yunet-native/v1": "yunet-native/v1";
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";
452
2726
  }>>;
453
2727
  }, z.core.$strict>>;
454
2728
  exit: z.ZodOptional<z.ZodObject<{
@@ -484,13 +2758,13 @@ export declare const referenceProfile: z.ZodObject<{
484
2758
  duration_s: z.ZodOptional<z.ZodNumber>;
485
2759
  displacement: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
486
2760
  method: z.ZodOptional<z.ZodEnum<{
487
- "cv-before-after/v1": "cv-before-after/v1";
488
- "cv-cells/v1": "cv-cells/v1";
489
- "cv-parallax/v1": "cv-parallax/v1";
490
- "cv-template/v1": "cv-template/v1";
491
- "vision-still": "vision-still";
492
- "vision-video": "vision-video";
493
- "yunet-native/v1": "yunet-native/v1";
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";
494
2768
  }>>;
495
2769
  }, z.core.$strict>>;
496
2770
  layer: z.ZodOptional<z.ZodObject<{
@@ -502,13 +2776,13 @@ export declare const referenceProfile: z.ZodObject<{
502
2776
  unknown: "unknown";
503
2777
  }>;
504
2778
  method: z.ZodEnum<{
505
- "cv-before-after/v1": "cv-before-after/v1";
506
- "cv-cells/v1": "cv-cells/v1";
507
- "cv-parallax/v1": "cv-parallax/v1";
508
- "cv-template/v1": "cv-template/v1";
509
- "vision-still": "vision-still";
510
- "vision-video": "vision-video";
511
- "yunet-native/v1": "yunet-native/v1";
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";
512
2786
  }>;
513
2787
  covered_by: z.ZodArray<z.ZodEnum<{
514
2788
  body: "body";
@@ -605,8 +2879,78 @@ export declare const referenceProfile: z.ZodObject<{
605
2879
  }>;
606
2880
  }, z.core.$strict>>;
607
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>;
608
2952
  }, z.core.$strict>;
609
- export type ReferenceProfile = z.infer<typeof referenceProfile>;
2953
+ export type ReferenceProfileInput = z.infer<typeof referenceProfileInput>;
610
2954
  /** Readers keep a newer profile whole and need only the gaps it names. */
611
2955
  export declare const referenceProfileRead: z.ZodObject<{
612
2956
  version: z.ZodString;
@@ -619,12 +2963,22 @@ export declare const referenceProfileRead: z.ZodObject<{
619
2963
  suggested_substitute: z.ZodString;
620
2964
  }, z.core.$loose>>>;
621
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[];
622
2976
  /** What the plan does not reproduce from its reference, one warning per unmapped entry (rule 3, C5). */
623
2977
  export declare function referenceProfileWarnings(profile: z.input<typeof referenceProfileRead> | undefined): string[];
624
2978
  /** An analyser's free-text state change as one of our categories; an unrecognised one is other, never kept as text. */
625
2979
  export declare function mapAnalyserStateChange(text: string): ReferenceStateChange;
626
- /** The analyser's name for a graphic when it is one we know, else other. */
627
- export declare function mapAnalyserSourceKind(text: string): ReferenceSourceKind;
2980
+ /** The analyser's name for a graphic when it is one we know, else the kind its description names, else other. */
2981
+ export declare function mapAnalyserSourceKind(text: string, description?: string): ReferenceSourceKind;
628
2982
  /** Our kind for an analyser's graphic: product UI and screenshots fill the frame as an insert, or sit over the presenter; what we cannot draw
629
2983
  * carries its substitute. */
630
2984
  export declare function mapAnalyserGraphic(kind: string, position?: ReferencePosition): {