@cueframe/kernel 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1119) hide show
  1. package/dist/TextureLoader-UQOFUSAP.js +422 -0
  2. package/dist/VideoTexture-AQWSPIJG.js +62 -0
  3. package/dist/_members/account-model/index.d.ts +1 -0
  4. package/dist/_members/account-model/index.js +4 -0
  5. package/dist/_members/account-model/testing/conversationStoreContract.d.ts +97 -0
  6. package/dist/_members/account-model/testing/conversationStoreContract.js +168 -0
  7. package/dist/_members/account-model/testing/index.d.ts +7 -0
  8. package/dist/_members/account-model/testing/index.js +7 -0
  9. package/dist/_members/account-model/testing/restorePointStoreContract.d.ts +52 -0
  10. package/dist/_members/account-model/testing/restorePointStoreContract.js +69 -0
  11. package/dist/_members/account-model/types/index.d.ts +5 -0
  12. package/dist/_members/account-model/types/index.js +1 -0
  13. package/dist/_members/account-model/validators/contextFile.d.ts +36 -0
  14. package/dist/_members/account-model/validators/contextFile.js +18 -0
  15. package/dist/_members/account-model/validators/conversation.d.ts +153 -0
  16. package/dist/_members/account-model/validators/conversation.js +95 -0
  17. package/dist/_members/account-model/validators/dashboardInsight.d.ts +30 -0
  18. package/dist/_members/account-model/validators/dashboardInsight.js +16 -0
  19. package/dist/_members/account-model/validators/index.d.ts +7 -0
  20. package/dist/_members/account-model/validators/index.js +7 -0
  21. package/dist/_members/account-model/validators/sessionToken.d.ts +79 -0
  22. package/dist/_members/account-model/validators/sessionToken.js +49 -0
  23. package/dist/_members/account-model/validators/uploadToken.d.ts +33 -0
  24. package/dist/_members/account-model/validators/uploadToken.js +16 -0
  25. package/dist/_members/account-model/validators/userSettings.d.ts +22 -0
  26. package/dist/_members/account-model/validators/userSettings.js +12 -0
  27. package/dist/_members/account-model/validators/workingComposition.d.ts +34 -0
  28. package/dist/_members/account-model/validators/workingComposition.js +20 -0
  29. package/dist/_members/animate/animations/Create.d.ts +36 -0
  30. package/dist/_members/animate/animations/FadeIn.d.ts +36 -0
  31. package/dist/_members/animate/animations/GrowArrow.d.ts +36 -0
  32. package/dist/_members/animate/animations/GrowFromCenter.d.ts +25 -0
  33. package/dist/_members/animate/animations/Indicate.d.ts +29 -0
  34. package/dist/_members/animate/animations/MoveAlongPath.d.ts +30 -0
  35. package/dist/_members/animate/animations/Transform.d.ts +46 -0
  36. package/dist/_members/animate/animations/Wiggle.d.ts +31 -0
  37. package/dist/_members/animate/animations/Write.d.ts +35 -0
  38. package/dist/_members/animate/animations/index.d.ts +9 -0
  39. package/dist/_members/animate/composition/AnimationGroup.d.ts +32 -0
  40. package/dist/_members/animate/composition/LaggedStart.d.ts +33 -0
  41. package/dist/_members/animate/composition/Succession.d.ts +27 -0
  42. package/dist/_members/animate/composition/index.d.ts +3 -0
  43. package/dist/_members/animate/easing/index.d.ts +3 -0
  44. package/dist/_members/animate/easing/rush.d.ts +16 -0
  45. package/dist/_members/animate/easing/smooth.d.ts +8 -0
  46. package/dist/_members/animate/easing/smootherstep.d.ts +7 -0
  47. package/dist/_members/animate/index.d.ts +25 -0
  48. package/dist/_members/animate/mobjects/Arrow.d.ts +41 -0
  49. package/dist/_members/animate/mobjects/BrandBox.d.ts +43 -0
  50. package/dist/_members/animate/mobjects/DiGraph.d.ts +21 -0
  51. package/dist/_members/animate/mobjects/Graph.d.ts +72 -0
  52. package/dist/_members/animate/mobjects/index.d.ts +4 -0
  53. package/dist/_members/animate/three/ThreeCanvas.d.ts +36 -0
  54. package/dist/_members/animate/three/drei.d.ts +13 -0
  55. package/dist/_members/animate/three/index.d.ts +2 -0
  56. package/dist/_members/authoring/agent/buildTools.d.ts +54 -0
  57. package/dist/_members/authoring/agent/contextManagement.d.ts +73 -0
  58. package/dist/_members/authoring/agent/errors.d.ts +12 -0
  59. package/dist/_members/authoring/agent/index.d.ts +2 -0
  60. package/dist/_members/authoring/agent/memoryTool.d.ts +8 -0
  61. package/dist/_members/authoring/agent/promptCache.d.ts +34 -0
  62. package/dist/_members/authoring/agent.d.ts +59 -0
  63. package/dist/_members/authoring/capabilities.d.ts +306 -0
  64. package/dist/_members/authoring/composer/index.d.ts +2 -0
  65. package/dist/_members/authoring/composer/scopes.d.ts +26 -0
  66. package/dist/_members/authoring/context/brand.d.ts +37 -0
  67. package/dist/_members/authoring/context/brandTokens.d.ts +6 -0
  68. package/dist/_members/authoring/context/index.d.ts +8 -0
  69. package/dist/_members/authoring/context/timeline.d.ts +33 -0
  70. package/dist/_members/authoring/context/transcript.d.ts +24 -0
  71. package/dist/_members/authoring/context/types.d.ts +5 -0
  72. package/dist/_members/authoring/decomposer.d.ts +17 -0
  73. package/dist/_members/authoring/evaluate.d.ts +37 -0
  74. package/dist/_members/authoring/evaluator.d.ts +22 -0
  75. package/dist/_members/authoring/index.d.ts +25 -0
  76. package/dist/_members/authoring/models/modelFactory.d.ts +107 -0
  77. package/dist/_members/authoring/motion/applyMotionPreset.d.ts +31 -0
  78. package/dist/_members/authoring/motion/index.d.ts +6 -0
  79. package/dist/_members/authoring/motion/materializeMotionPresetOps.d.ts +38 -0
  80. package/dist/_members/authoring/motion/shell.d.ts +30 -0
  81. package/dist/_members/authoring/pipelineTrace.d.ts +38 -0
  82. package/dist/_members/authoring/prompts/decomposerPrompt.d.ts +5 -0
  83. package/dist/_members/authoring/prompts/designReviewerPrompt.d.ts +18 -0
  84. package/dist/_members/authoring/prompts/evaluatorPrompt.d.ts +5 -0
  85. package/dist/_members/authoring/prompts/graphics.d.ts +14 -0
  86. package/dist/_members/authoring/prompts/index.d.ts +4 -0
  87. package/dist/_members/authoring/prompts/plannerPrompt.d.ts +48 -0
  88. package/dist/_members/authoring/providers/index.d.ts +1 -0
  89. package/dist/_members/authoring/providers/resourceApi.d.ts +32 -0
  90. package/dist/_members/authoring/resource-routing.d.ts +186 -0
  91. package/dist/_members/authoring/resources.d.ts +59 -0
  92. package/dist/_members/authoring/scope.d.ts +31 -0
  93. package/dist/_members/authoring/tools/brandTokens.d.ts +34 -0
  94. package/dist/_members/authoring/tools/composeRoleTools.d.ts +112 -0
  95. package/dist/_members/authoring/tools/index.d.ts +4 -0
  96. package/dist/_members/authoring/tools/toolSets.d.ts +54 -0
  97. package/dist/_members/authoring/transpileComponent.d.ts +40 -0
  98. package/dist/_members/authoring/transpileHelper.d.ts +26 -0
  99. package/dist/_members/authoring/types.d.ts +572 -0
  100. package/dist/_members/brand-derivation/constants.d.ts +27 -0
  101. package/dist/_members/brand-derivation/constants.js +20 -0
  102. package/dist/_members/brand-derivation/contrastSafe.d.ts +47 -0
  103. package/dist/_members/brand-derivation/contrastSafe.js +114 -0
  104. package/dist/_members/brand-derivation/index.d.ts +1 -0
  105. package/dist/_members/brand-derivation/index.js +1 -0
  106. package/dist/_members/compose/CompositionRenderer.d.ts +12 -0
  107. package/dist/_members/compose/catalog.d.ts +1 -0
  108. package/dist/_members/compose/index.d.ts +8 -0
  109. package/dist/_members/compose/primitiveRegistry.d.ts +90 -0
  110. package/dist/_members/compose/sceneToRenderInput.d.ts +51 -0
  111. package/dist/_members/compose/schema.d.ts +45 -0
  112. package/dist/_members/compose/tokenResolver.d.ts +28 -0
  113. package/dist/_members/composition/audio/audioMix.d.ts +67 -0
  114. package/dist/_members/composition/audio/audioMix.js +61 -0
  115. package/dist/_members/composition/audio/index.d.ts +5 -0
  116. package/dist/_members/composition/audio/index.js +5 -0
  117. package/dist/_members/composition/audio/mixStaging.d.ts +107 -0
  118. package/dist/_members/composition/audio/mixStaging.js +195 -0
  119. package/dist/_members/composition/audio/musicPack.d.ts +56 -0
  120. package/dist/_members/composition/audio/musicPack.generated.d.ts +9 -0
  121. package/dist/_members/composition/audio/musicPack.generated.js +136 -0
  122. package/dist/_members/composition/audio/musicPack.js +36 -0
  123. package/dist/_members/composition/audio/pack.d.ts +67 -0
  124. package/dist/_members/composition/audio/pack.generated.d.ts +9 -0
  125. package/dist/_members/composition/audio/pack.generated.js +603 -0
  126. package/dist/_members/composition/audio/pack.js +48 -0
  127. package/dist/_members/composition/audio/palette.d.ts +82 -0
  128. package/dist/_members/composition/audio/palette.js +134 -0
  129. package/dist/_members/composition/autozoom/index.d.ts +57 -0
  130. package/dist/_members/composition/autozoom/index.js +83 -0
  131. package/dist/_members/composition/brand-kit.d.ts +58 -0
  132. package/dist/_members/composition/brand-kit.js +45 -0
  133. package/dist/_members/composition/brief/contract.d.ts +132 -0
  134. package/dist/_members/composition/brief/contract.js +209 -0
  135. package/dist/_members/composition/color-grade.d.ts +17 -0
  136. package/dist/_members/composition/color-grade.js +80 -0
  137. package/dist/_members/composition/depth.d.ts +24 -0
  138. package/dist/_members/composition/depth.js +8 -0
  139. package/dist/_members/composition/fixtures/agentErrored.d.ts +25 -0
  140. package/dist/_members/composition/fixtures/index.d.ts +7 -0
  141. package/dist/_members/composition/fixtures/index.js +143 -0
  142. package/dist/_members/composition/fixtures/vaayaErrored.d.ts +25 -0
  143. package/dist/_members/composition/fixtures/vaayaErrored.js +203 -0
  144. package/dist/_members/composition/fonts.d.ts +68 -0
  145. package/dist/_members/composition/fonts.js +162 -0
  146. package/dist/_members/composition/graphics-plan/compile.d.ts +43 -0
  147. package/dist/_members/composition/graphics-plan/compile.js +221 -0
  148. package/dist/_members/composition/graphics-plan/index.d.ts +11 -0
  149. package/dist/_members/composition/graphics-plan/index.js +10 -0
  150. package/dist/_members/composition/graphics-plan/instantiateMotif.d.ts +51 -0
  151. package/dist/_members/composition/graphics-plan/instantiateMotif.js +44 -0
  152. package/dist/_members/composition/graphics-plan/motion.d.ts +19 -0
  153. package/dist/_members/composition/graphics-plan/motion.js +66 -0
  154. package/dist/_members/composition/graphics-plan/schemas.d.ts +1672 -0
  155. package/dist/_members/composition/graphics-plan/schemas.js +261 -0
  156. package/dist/_members/composition/graphics-plan/solve.d.ts +34 -0
  157. package/dist/_members/composition/graphics-plan/solve.js +145 -0
  158. package/dist/_members/composition/index.d.ts +7 -0
  159. package/dist/_members/composition/index.js +5 -0
  160. package/dist/_members/composition/invariants/clipPlacement.d.ts +65 -0
  161. package/dist/_members/composition/invariants/clipPlacement.js +69 -0
  162. package/dist/_members/composition/invariants/composition.d.ts +9 -0
  163. package/dist/_members/composition/invariants/composition.js +28 -0
  164. package/dist/_members/composition/invariants/errors.d.ts +11 -0
  165. package/dist/_members/composition/invariants/errors.js +10 -0
  166. package/dist/_members/composition/invariants/etag.d.ts +10 -0
  167. package/dist/_members/composition/invariants/etag.js +38 -0
  168. package/dist/_members/composition/invariants/ids.d.ts +9 -0
  169. package/dist/_members/composition/invariants/ids.js +33 -0
  170. package/dist/_members/composition/invariants/index.d.ts +9 -0
  171. package/dist/_members/composition/invariants/index.js +9 -0
  172. package/dist/_members/composition/invariants/keyframes.d.ts +23 -0
  173. package/dist/_members/composition/invariants/keyframes.js +45 -0
  174. package/dist/_members/composition/invariants/markers.d.ts +9 -0
  175. package/dist/_members/composition/invariants/markers.js +29 -0
  176. package/dist/_members/composition/invariants/time.d.ts +22 -0
  177. package/dist/_members/composition/invariants/time.js +20 -0
  178. package/dist/_members/composition/invariants/tracks.d.ts +58 -0
  179. package/dist/_members/composition/invariants/tracks.js +304 -0
  180. package/dist/_members/composition/ops/compositionOps.d.ts +129 -0
  181. package/dist/_members/composition/ops/compositionOps.js +1056 -0
  182. package/dist/_members/composition/ops/headlessStore.d.ts +40 -0
  183. package/dist/_members/composition/ops/headlessStore.js +94 -0
  184. package/dist/_members/composition/ops/index.d.ts +6 -0
  185. package/dist/_members/composition/ops/index.js +4 -0
  186. package/dist/_members/composition/ops/selectors.d.ts +81 -0
  187. package/dist/_members/composition/ops/selectors.js +118 -0
  188. package/dist/_members/composition/ops/timeline-word.d.ts +24 -0
  189. package/dist/_members/composition/ops/timeline-word.js +1 -0
  190. package/dist/_members/composition/ops/transcript.d.ts +44 -0
  191. package/dist/_members/composition/ops/transcript.js +77 -0
  192. package/dist/_members/composition/ops/types.d.ts +145 -0
  193. package/dist/_members/composition/ops/types.js +16 -0
  194. package/dist/_members/composition/primitive-catalog/catalogQuery.d.ts +82 -0
  195. package/dist/_members/composition/primitive-catalog/catalogQuery.js +150 -0
  196. package/dist/_members/composition/primitive-catalog/disabled.d.ts +3 -0
  197. package/dist/_members/composition/primitive-catalog/disabled.js +32 -0
  198. package/dist/_members/composition/primitive-catalog/generated/meta.d.ts +2 -0
  199. package/dist/_members/composition/primitive-catalog/generated/meta.js +15161 -0
  200. package/dist/_members/composition/primitive-catalog/index.d.ts +28 -0
  201. package/dist/_members/composition/primitive-catalog/index.js +46 -0
  202. package/dist/_members/composition/primitive-catalog/paramValidation.d.ts +76 -0
  203. package/dist/_members/composition/primitive-catalog/paramValidation.js +231 -0
  204. package/dist/_members/composition/primitive-catalog/projection.d.ts +99 -0
  205. package/dist/_members/composition/primitive-catalog/projection.js +164 -0
  206. package/dist/_members/composition/primitive-catalog/types.d.ts +123 -0
  207. package/dist/_members/composition/primitive-catalog/types.js +14 -0
  208. package/dist/_members/composition/projection/behind-placement.d.ts +64 -0
  209. package/dist/_members/composition/projection/behind-placement.js +62 -0
  210. package/dist/_members/composition/projection/brandKit.d.ts +308 -0
  211. package/dist/_members/composition/projection/brandKit.js +482 -0
  212. package/dist/_members/composition/projection/cardTokens.d.ts +70 -0
  213. package/dist/_members/composition/projection/cardTokens.js +209 -0
  214. package/dist/_members/composition/projection/composition-floor.d.ts +349 -0
  215. package/dist/_members/composition/projection/composition-floor.js +582 -0
  216. package/dist/_members/composition/projection/cropProjection.d.ts +140 -0
  217. package/dist/_members/composition/projection/cropProjection.js +257 -0
  218. package/dist/_members/composition/projection/index.d.ts +7 -0
  219. package/dist/_members/composition/projection/index.js +7 -0
  220. package/dist/_members/composition/projection/occlusion-budget.d.ts +67 -0
  221. package/dist/_members/composition/projection/occlusion-budget.js +104 -0
  222. package/dist/_members/composition/projection/safe-zones.d.ts +38 -0
  223. package/dist/_members/composition/projection/safe-zones.js +99 -0
  224. package/dist/_members/composition/reframe/aspectLoss.d.ts +49 -0
  225. package/dist/_members/composition/reframe/aspectLoss.js +115 -0
  226. package/dist/_members/composition/reframe/coverage.d.ts +48 -0
  227. package/dist/_members/composition/reframe/coverage.js +62 -0
  228. package/dist/_members/composition/reframe/derive.d.ts +37 -0
  229. package/dist/_members/composition/reframe/derive.js +73 -0
  230. package/dist/_members/composition/reframe/index.d.ts +658 -0
  231. package/dist/_members/composition/reframe/index.js +109 -0
  232. package/dist/_members/composition/reframe/kenBurns.d.ts +43 -0
  233. package/dist/_members/composition/reframe/kenBurns.js +64 -0
  234. package/dist/_members/composition/reframe/shotScale.d.ts +118 -0
  235. package/dist/_members/composition/reframe/shotScale.js +176 -0
  236. package/dist/_members/composition/reframe/trajectory.d.ts +99 -0
  237. package/dist/_members/composition/reframe/trajectory.js +124 -0
  238. package/dist/_members/composition/timeline/compound.d.ts +36 -0
  239. package/dist/_members/composition/timeline/compound.js +134 -0
  240. package/dist/_members/composition/timeline/index.d.ts +9 -0
  241. package/dist/_members/composition/timeline/index.js +9 -0
  242. package/dist/_members/composition/timeline/intent.d.ts +54 -0
  243. package/dist/_members/composition/timeline/intent.js +228 -0
  244. package/dist/_members/composition/timeline/keyframes.d.ts +50 -0
  245. package/dist/_members/composition/timeline/keyframes.js +121 -0
  246. package/dist/_members/composition/timeline/link.d.ts +36 -0
  247. package/dist/_members/composition/timeline/link.js +59 -0
  248. package/dist/_members/composition/timeline/occupancy.d.ts +72 -0
  249. package/dist/_members/composition/timeline/occupancy.js +36 -0
  250. package/dist/_members/composition/timeline/placement.d.ts +86 -0
  251. package/dist/_members/composition/timeline/placement.js +74 -0
  252. package/dist/_members/composition/timeline/plan.d.ts +109 -0
  253. package/dist/_members/composition/timeline/plan.js +31 -0
  254. package/dist/_members/composition/timeline/resolve.d.ts +55 -0
  255. package/dist/_members/composition/timeline/resolve.js +170 -0
  256. package/dist/_members/composition/timeline/trims.d.ts +54 -0
  257. package/dist/_members/composition/timeline/trims.js +278 -0
  258. package/dist/_members/composition/types/index.d.ts +8 -0
  259. package/dist/_members/composition/types/index.js +1 -0
  260. package/dist/_members/composition/validators/brandKit.d.ts +1472 -0
  261. package/dist/_members/composition/validators/brandKit.js +295 -0
  262. package/dist/_members/composition/validators/composePlan.d.ts +960 -0
  263. package/dist/_members/composition/validators/composePlan.js +113 -0
  264. package/dist/_members/composition/validators/composition.d.ts +6881 -0
  265. package/dist/_members/composition/validators/composition.js +703 -0
  266. package/dist/_members/composition/validators/font.d.ts +114 -0
  267. package/dist/_members/composition/validators/font.js +34 -0
  268. package/dist/_members/composition/validators/graphicKinds.d.ts +32 -0
  269. package/dist/_members/composition/validators/graphicKinds.js +30 -0
  270. package/dist/_members/composition/validators/index.d.ts +9 -0
  271. package/dist/_members/composition/validators/index.js +9 -0
  272. package/dist/_members/composition/validators/project.d.ts +62 -0
  273. package/dist/_members/composition/validators/project.js +29 -0
  274. package/dist/_members/composition/validators/registry.d.ts +161 -0
  275. package/dist/_members/composition/validators/registry.js +41 -0
  276. package/dist/_members/composition/validators/render.d.ts +8274 -0
  277. package/dist/_members/composition/validators/render.js +139 -0
  278. package/dist/_members/composition/validators/session.d.ts +117 -0
  279. package/dist/_members/composition/validators/session.js +37 -0
  280. package/dist/_members/composition/validators/webhook.d.ts +83 -0
  281. package/dist/_members/composition/validators/webhook.js +72 -0
  282. package/dist/_members/composition-ops/alphaLayers.d.ts +70 -0
  283. package/dist/_members/composition-ops/alphaLayers.js +141 -0
  284. package/dist/_members/composition-ops/index.d.ts +4940 -0
  285. package/dist/_members/composition-ops/index.js +637 -0
  286. package/dist/_members/composition-ops/materializeGrid.d.ts +56 -0
  287. package/dist/_members/composition-ops/materializeGrid.js +99 -0
  288. package/dist/_members/composition-ops/opRecorder.d.ts +77 -0
  289. package/dist/_members/composition-ops/opRecorder.js +196 -0
  290. package/dist/_members/composition-ops/recordingStore.d.ts +23 -0
  291. package/dist/_members/composition-ops/recordingStore.js +14 -0
  292. package/dist/_members/composition-ops/replaceRegion.d.ts +65 -0
  293. package/dist/_members/composition-ops/replaceRegion.js +102 -0
  294. package/dist/_members/composition-ops/testFixtures.d.ts +19 -0
  295. package/dist/_members/composition-ops/testFixtures.js +19 -0
  296. package/dist/_members/core/index.d.ts +3 -0
  297. package/dist/_members/core/index.js +5 -0
  298. package/dist/_members/core/render/bookends.d.ts +62 -0
  299. package/dist/_members/core/render/bookends.js +53 -0
  300. package/dist/_members/core/render/captions.d.ts +65 -0
  301. package/dist/_members/core/render/captions.js +127 -0
  302. package/dist/_members/core/render/compositionRender.d.ts +190 -0
  303. package/dist/_members/core/render/compositionRender.js +1249 -0
  304. package/dist/_members/core/render/deriveTrajectory.d.ts +188 -0
  305. package/dist/_members/core/render/deriveTrajectory.js +889 -0
  306. package/dist/_members/core/render/emphasis.d.ts +13 -0
  307. package/dist/_members/core/render/emphasis.js +16 -0
  308. package/dist/_members/core/render/eval/cropBox.d.ts +88 -0
  309. package/dist/_members/core/render/eval/cropBox.js +139 -0
  310. package/dist/_members/core/render/eval/inclusion.d.ts +50 -0
  311. package/dist/_members/core/render/eval/inclusion.js +96 -0
  312. package/dist/_members/core/render/eval/index.d.ts +93 -0
  313. package/dist/_members/core/render/eval/index.js +146 -0
  314. package/dist/_members/core/render/eval/metrics.d.ts +50 -0
  315. package/dist/_members/core/render/eval/metrics.js +94 -0
  316. package/dist/_members/core/render/exportSettings.d.ts +40 -0
  317. package/dist/_members/core/render/exportSettings.js +65 -0
  318. package/dist/_members/core/render/index.d.ts +14 -0
  319. package/dist/_members/core/render/index.js +20 -0
  320. package/dist/_members/core/render/mapFaceToPerson.d.ts +39 -0
  321. package/dist/_members/core/render/mapFaceToPerson.js +73 -0
  322. package/dist/_members/core/render/types.d.ts +304 -0
  323. package/dist/_members/core/render/types.js +8 -0
  324. package/dist/_members/core/render/vcam/cameraPath.d.ts +51 -0
  325. package/dist/_members/core/render/vcam/cameraPath.js +248 -0
  326. package/dist/_members/core/render/vcam/constants.d.ts +113 -0
  327. package/dist/_members/core/render/vcam/constants.js +115 -0
  328. package/dist/_members/core/render/vcam/errorCodes.d.ts +30 -0
  329. package/dist/_members/core/render/vcam/errorCodes.js +39 -0
  330. package/dist/_members/core/render/vcam/framing.d.ts +90 -0
  331. package/dist/_members/core/render/vcam/framing.js +136 -0
  332. package/dist/_members/core/render/vcam/requiredRegion.d.ts +85 -0
  333. package/dist/_members/core/render/vcam/requiredRegion.js +137 -0
  334. package/dist/_members/core/render/vcam/shots.d.ts +45 -0
  335. package/dist/_members/core/render/vcam/shots.js +53 -0
  336. package/dist/_members/core/render/vcam/subjectSet.d.ts +106 -0
  337. package/dist/_members/core/render/vcam/subjectSet.js +388 -0
  338. package/dist/_members/core/select/errorCodes.d.ts +27 -0
  339. package/dist/_members/core/select/errorCodes.js +38 -0
  340. package/dist/_members/core/select/index.d.ts +27 -0
  341. package/dist/_members/core/select/index.js +26 -0
  342. package/dist/_members/core/select/model.d.ts +178 -0
  343. package/dist/_members/core/select/model.js +18 -0
  344. package/dist/_members/core/select/select.d.ts +63 -0
  345. package/dist/_members/core/select/select.js +244 -0
  346. package/dist/_members/core/select/stabilize.d.ts +145 -0
  347. package/dist/_members/core/select/stabilize.js +242 -0
  348. package/dist/_members/core/types.d.ts +84 -0
  349. package/dist/_members/core/types.js +7 -0
  350. package/dist/_members/errors/index.d.ts +1 -0
  351. package/dist/_members/errors/index.js +1 -0
  352. package/dist/_members/errors/registry.d.ts +708 -0
  353. package/dist/_members/errors/registry.js +560 -0
  354. package/dist/_members/foundation/codes/index.d.ts +31 -0
  355. package/dist/_members/foundation/codes/index.js +31 -0
  356. package/dist/_members/foundation/index.d.ts +2 -0
  357. package/dist/_members/foundation/index.js +2 -0
  358. package/dist/_members/foundation/primitives/index.d.ts +9 -0
  359. package/dist/_members/foundation/primitives/index.js +5 -0
  360. package/dist/_members/mcp/adapter.d.ts +138 -0
  361. package/dist/_members/mcp/adapter.js +771 -0
  362. package/dist/_members/mcp/burnedNames.d.ts +23 -0
  363. package/dist/_members/mcp/burnedNames.js +73 -0
  364. package/dist/_members/mcp/core.d.ts +158 -0
  365. package/dist/_members/mcp/core.js +390 -0
  366. package/dist/_members/mcp/curation.d.ts +155 -0
  367. package/dist/_members/mcp/curation.js +792 -0
  368. package/dist/_members/mcp/executor.d.ts +60 -0
  369. package/dist/_members/mcp/executor.js +142 -0
  370. package/dist/_members/mcp/format.d.ts +7 -0
  371. package/dist/_members/mcp/format.js +9 -0
  372. package/dist/_members/mcp/generated/catalogPreviews.d.ts +2 -0
  373. package/dist/_members/mcp/generated/catalogPreviews.js +95 -0
  374. package/dist/_members/mcp/generated/harness.d.ts +1 -0
  375. package/dist/_members/mcp/generated/harness.js +81 -0
  376. package/dist/_members/mcp/generated/operations.d.ts +41 -0
  377. package/dist/_members/mcp/generated/operations.js +131 -0
  378. package/dist/_members/mcp/index.d.ts +3 -0
  379. package/dist/_members/mcp/index.js +50 -0
  380. package/dist/_members/mcp/internalLoopTools.d.ts +25 -0
  381. package/dist/_members/mcp/internalLoopTools.js +109 -0
  382. package/dist/_members/mcp/prompts.d.ts +22 -0
  383. package/dist/_members/mcp/prompts.js +45 -0
  384. package/dist/_members/mcp/resources.d.ts +16 -0
  385. package/dist/_members/mcp/resources.js +166 -0
  386. package/dist/_members/mcp/server.d.ts +92 -0
  387. package/dist/_members/mcp/server.js +340 -0
  388. package/dist/_members/mcp/wait.d.ts +37 -0
  389. package/dist/_members/mcp/wait.js +378 -0
  390. package/dist/_members/mcp/x402Meta.d.ts +50 -0
  391. package/dist/_members/mcp/x402Meta.js +66 -0
  392. package/dist/_members/media-model/api.d.ts +877 -0
  393. package/dist/_members/media-model/api.js +175 -0
  394. package/dist/_members/media-model/index.d.ts +1 -0
  395. package/dist/_members/media-model/index.js +1 -0
  396. package/dist/_members/media-model/media-kind.d.ts +36 -0
  397. package/dist/_members/media-model/media-kind.js +116 -0
  398. package/dist/_members/media-model/testing/index.d.ts +2 -0
  399. package/dist/_members/media-model/testing/index.js +1 -0
  400. package/dist/_members/media-model/testing/mediaStoreContract.d.ts +17 -0
  401. package/dist/_members/media-model/testing/mediaStoreContract.js +82 -0
  402. package/dist/_members/media-model/transcriptSearch.d.ts +54 -0
  403. package/dist/_members/media-model/transcriptSearch.js +70 -0
  404. package/dist/_members/media-model/transcriptSearchCases.json +79 -0
  405. package/dist/_members/nle-export/compact-timeline.d.ts +2 -0
  406. package/dist/_members/nle-export/compact-timeline.js +73 -0
  407. package/dist/_members/nle-export/compact-timeline.js.map +1 -0
  408. package/dist/_members/nle-export/composition-to-input.d.ts +2 -0
  409. package/dist/_members/nle-export/composition-to-input.js +147 -0
  410. package/dist/_members/nle-export/composition-to-input.js.map +1 -0
  411. package/dist/_members/nle-export/fcpxml.d.ts +15 -0
  412. package/dist/_members/nle-export/fcpxml.js +159 -0
  413. package/dist/_members/nle-export/fcpxml.js.map +1 -0
  414. package/dist/_members/nle-export/index.d.ts +11 -0
  415. package/dist/_members/nle-export/index.js +12 -0
  416. package/dist/_members/nle-export/index.js.map +1 -0
  417. package/dist/_members/nle-export/premiere.d.ts +2 -0
  418. package/dist/_members/nle-export/premiere.js +161 -0
  419. package/dist/_members/nle-export/premiere.js.map +1 -0
  420. package/dist/_members/nle-export/server/index.d.ts +1 -0
  421. package/dist/_members/nle-export/server/index.js +2 -0
  422. package/dist/_members/nle-export/server/index.js.map +1 -0
  423. package/dist/_members/nle-export/server/pack-zip.d.ts +6 -0
  424. package/dist/_members/nle-export/server/pack-zip.js +38 -0
  425. package/dist/_members/nle-export/server/pack-zip.js.map +1 -0
  426. package/dist/_members/nle-export/srt.d.ts +2 -0
  427. package/dist/_members/nle-export/srt.js +50 -0
  428. package/dist/_members/nle-export/srt.js.map +1 -0
  429. package/dist/_members/nle-export/types.d.ts +183 -0
  430. package/dist/_members/nle-export/types.js +9 -0
  431. package/dist/_members/nle-export/types.js.map +1 -0
  432. package/dist/_members/nle-export/xml/index.d.ts +10 -0
  433. package/dist/_members/nle-export/xml/index.js +11 -0
  434. package/dist/_members/nle-export/xml/index.js.map +1 -0
  435. package/dist/_members/nle-export/xml-utils.d.ts +21 -0
  436. package/dist/_members/nle-export/xml-utils.js +48 -0
  437. package/dist/_members/nle-export/xml-utils.js.map +1 -0
  438. package/dist/_members/perception/activeSpeaker.d.ts +108 -0
  439. package/dist/_members/perception/activeSpeaker.js +103 -0
  440. package/dist/_members/perception/audioQuality.d.ts +78 -0
  441. package/dist/_members/perception/audioQuality.js +76 -0
  442. package/dist/_members/perception/energyBeat.d.ts +95 -0
  443. package/dist/_members/perception/energyBeat.js +99 -0
  444. package/dist/_members/perception/identityMatch.d.ts +80 -0
  445. package/dist/_members/perception/identityMatch.js +91 -0
  446. package/dist/_members/perception/index.d.ts +90 -0
  447. package/dist/_members/perception/index.js +48 -0
  448. package/dist/_members/perception/visualQuality.d.ts +86 -0
  449. package/dist/_members/perception/visualQuality.js +95 -0
  450. package/dist/_members/plane/conformance.d.ts +75 -0
  451. package/dist/_members/plane/conformance.js +90 -0
  452. package/dist/_members/plane/contract.d.ts +55 -0
  453. package/dist/_members/plane/contract.js +49 -0
  454. package/dist/_members/plane/index.d.ts +16 -0
  455. package/dist/_members/plane/index.js +16 -0
  456. package/dist/_members/primitives/backgrounds/animated-bar-chart/config.d.ts +42 -0
  457. package/dist/_members/primitives/backgrounds/animated-bar-chart/index.d.ts +28 -0
  458. package/dist/_members/primitives/backgrounds/animated-line-chart/config.d.ts +42 -0
  459. package/dist/_members/primitives/backgrounds/animated-line-chart/index.d.ts +29 -0
  460. package/dist/_members/primitives/backgrounds/dither-gradient-bg/config.d.ts +30 -0
  461. package/dist/_members/primitives/backgrounds/dither-gradient-bg/index.d.ts +25 -0
  462. package/dist/_members/primitives/backgrounds/dynamic-grid/config.d.ts +24 -0
  463. package/dist/_members/primitives/backgrounds/dynamic-grid/index.d.ts +17 -0
  464. package/dist/_members/primitives/backgrounds/ecosystem-constellation/config.d.ts +21 -0
  465. package/dist/_members/primitives/backgrounds/ecosystem-constellation/index.d.ts +16 -0
  466. package/dist/_members/primitives/backgrounds/index.d.ts +13 -0
  467. package/dist/_members/primitives/backgrounds/index.js +32 -0
  468. package/dist/_members/primitives/backgrounds/index.js.map +1 -0
  469. package/dist/_members/primitives/backgrounds/infinite-marquee/config.d.ts +36 -0
  470. package/dist/_members/primitives/backgrounds/infinite-marquee/index.d.ts +21 -0
  471. package/dist/_members/primitives/backgrounds/mesh-gradient-bg/config.d.ts +21 -0
  472. package/dist/_members/primitives/backgrounds/mesh-gradient-bg/index.d.ts +16 -0
  473. package/dist/_members/primitives/backgrounds/perspective-marquee/config.d.ts +42 -0
  474. package/dist/_members/primitives/backgrounds/perspective-marquee/index.d.ts +23 -0
  475. package/dist/_members/primitives/backgrounds/silk-flow-bg/config.d.ts +36 -0
  476. package/dist/_members/primitives/backgrounds/silk-flow-bg/index.d.ts +30 -0
  477. package/dist/_members/primitives/backgrounds/vector-field/config.d.ts +30 -0
  478. package/dist/_members/primitives/backgrounds/vector-field/index.d.ts +25 -0
  479. package/dist/_members/primitives/backgrounds/volumetric-rays/config.d.ts +33 -0
  480. package/dist/_members/primitives/backgrounds/volumetric-rays/index.d.ts +30 -0
  481. package/dist/_members/primitives/captions/Captions.d.ts +33 -0
  482. package/dist/_members/primitives/captions/index.d.ts +17 -0
  483. package/dist/_members/primitives/captions/index.js +398 -0
  484. package/dist/_members/primitives/captions/index.js.map +1 -0
  485. package/dist/_members/primitives/captions/paginate.d.ts +31 -0
  486. package/dist/_members/primitives/captions/placement.d.ts +35 -0
  487. package/dist/_members/primitives/chunk-2LVE4UIT.js +139 -0
  488. package/dist/_members/primitives/chunk-2LVE4UIT.js.map +1 -0
  489. package/dist/_members/primitives/chunk-3IQUH6KK.js +20 -0
  490. package/dist/_members/primitives/chunk-3IQUH6KK.js.map +1 -0
  491. package/dist/_members/primitives/chunk-3OMURV6Q.js +112 -0
  492. package/dist/_members/primitives/chunk-3OMURV6Q.js.map +1 -0
  493. package/dist/_members/primitives/chunk-4IS6TMEG.js +21 -0
  494. package/dist/_members/primitives/chunk-4IS6TMEG.js.map +1 -0
  495. package/dist/_members/primitives/chunk-5MWGAEGQ.js +1644 -0
  496. package/dist/_members/primitives/chunk-5MWGAEGQ.js.map +1 -0
  497. package/dist/_members/primitives/chunk-7RRPFPQK.js +15 -0
  498. package/dist/_members/primitives/chunk-7RRPFPQK.js.map +1 -0
  499. package/dist/_members/primitives/chunk-DH5TRZK2.js +125 -0
  500. package/dist/_members/primitives/chunk-DH5TRZK2.js.map +1 -0
  501. package/dist/_members/primitives/chunk-E3KNUSFG.js +2337 -0
  502. package/dist/_members/primitives/chunk-E3KNUSFG.js.map +1 -0
  503. package/dist/_members/primitives/chunk-G2B3G4HK.js +47 -0
  504. package/dist/_members/primitives/chunk-G2B3G4HK.js.map +1 -0
  505. package/dist/_members/primitives/chunk-HFPFGZXT.js +1494 -0
  506. package/dist/_members/primitives/chunk-HFPFGZXT.js.map +1 -0
  507. package/dist/_members/primitives/chunk-HIWVFZVH.js +19 -0
  508. package/dist/_members/primitives/chunk-HIWVFZVH.js.map +1 -0
  509. package/dist/_members/primitives/chunk-IDAL6G3Y.js +134 -0
  510. package/dist/_members/primitives/chunk-IDAL6G3Y.js.map +1 -0
  511. package/dist/_members/primitives/chunk-KNC6JP5F.js +34 -0
  512. package/dist/_members/primitives/chunk-KNC6JP5F.js.map +1 -0
  513. package/dist/_members/primitives/chunk-KYRDVZST.js +459 -0
  514. package/dist/_members/primitives/chunk-KYRDVZST.js.map +1 -0
  515. package/dist/_members/primitives/chunk-LWLHS2NS.js +3410 -0
  516. package/dist/_members/primitives/chunk-LWLHS2NS.js.map +1 -0
  517. package/dist/_members/primitives/chunk-QAQ3P7DR.js +8855 -0
  518. package/dist/_members/primitives/chunk-QAQ3P7DR.js.map +1 -0
  519. package/dist/_members/primitives/chunk-ROV2ODWC.js +81 -0
  520. package/dist/_members/primitives/chunk-ROV2ODWC.js.map +1 -0
  521. package/dist/_members/primitives/chunk-TCRC2FH3.js +183 -0
  522. package/dist/_members/primitives/chunk-TCRC2FH3.js.map +1 -0
  523. package/dist/_members/primitives/chunk-US4YEDAA.js +96 -0
  524. package/dist/_members/primitives/chunk-US4YEDAA.js.map +1 -0
  525. package/dist/_members/primitives/chunk-UVKRO5ER.js +13 -0
  526. package/dist/_members/primitives/chunk-UVKRO5ER.js.map +1 -0
  527. package/dist/_members/primitives/chunk-W4EIIF2I.js +10 -0
  528. package/dist/_members/primitives/chunk-W4EIIF2I.js.map +1 -0
  529. package/dist/_members/primitives/chunk-WPGKIPCO.js +3563 -0
  530. package/dist/_members/primitives/chunk-WPGKIPCO.js.map +1 -0
  531. package/dist/_members/primitives/chunk-WZFLEGMD.js +1435 -0
  532. package/dist/_members/primitives/chunk-WZFLEGMD.js.map +1 -0
  533. package/dist/_members/primitives/chunk-XHU3WBEI.js +33 -0
  534. package/dist/_members/primitives/chunk-XHU3WBEI.js.map +1 -0
  535. package/dist/_members/primitives/chunk-YN7WTZZ7.js +46 -0
  536. package/dist/_members/primitives/chunk-YN7WTZZ7.js.map +1 -0
  537. package/dist/_members/primitives/effects/blur/config.d.ts +24 -0
  538. package/dist/_members/primitives/effects/blur/index.d.ts +29 -0
  539. package/dist/_members/primitives/effects/color-grade/config.d.ts +30 -0
  540. package/dist/_members/primitives/effects/color-grade/index.d.ts +35 -0
  541. package/dist/_members/primitives/effects/grain/config.d.ts +21 -0
  542. package/dist/_members/primitives/effects/grain/index.d.ts +21 -0
  543. package/dist/_members/primitives/effects/index.d.ts +12 -0
  544. package/dist/_members/primitives/effects/index.js +30 -0
  545. package/dist/_members/primitives/effects/index.js.map +1 -0
  546. package/dist/_members/primitives/effects/parallax/config.d.ts +21 -0
  547. package/dist/_members/primitives/effects/parallax/index.d.ts +25 -0
  548. package/dist/_members/primitives/effects/particles/config.d.ts +33 -0
  549. package/dist/_members/primitives/effects/particles/index.d.ts +31 -0
  550. package/dist/_members/primitives/effects/pulsing-indicator/config.d.ts +24 -0
  551. package/dist/_members/primitives/effects/pulsing-indicator/index.d.ts +19 -0
  552. package/dist/_members/primitives/effects/spotlight-card/config.d.ts +42 -0
  553. package/dist/_members/primitives/effects/spotlight-card/index.d.ts +25 -0
  554. package/dist/_members/primitives/effects/spring-pop-in/config.d.ts +27 -0
  555. package/dist/_members/primitives/effects/spring-pop-in/index.d.ts +22 -0
  556. package/dist/_members/primitives/effects/success-confetti/config.d.ts +42 -0
  557. package/dist/_members/primitives/effects/success-confetti/index.d.ts +23 -0
  558. package/dist/_members/primitives/effects/vignette/config.d.ts +21 -0
  559. package/dist/_members/primitives/effects/vignette/index.d.ts +23 -0
  560. package/dist/_members/primitives/hero-text/HeroText.d.ts +29 -0
  561. package/dist/_members/primitives/hero-text/config.d.ts +46 -0
  562. package/dist/_members/primitives/hero-text/index.d.ts +18 -0
  563. package/dist/_members/primitives/hero-text/index.js +14 -0
  564. package/dist/_members/primitives/hero-text/index.js.map +1 -0
  565. package/dist/_members/primitives/index.d.ts +21 -0
  566. package/dist/_members/primitives/index.js +64 -0
  567. package/dist/_members/primitives/index.js.map +1 -0
  568. package/dist/_members/primitives/layouts/chat-to-preview-layout/config.d.ts +21 -0
  569. package/dist/_members/primitives/layouts/chat-to-preview-layout/index.d.ts +19 -0
  570. package/dist/_members/primitives/layouts/index.d.ts +9 -0
  571. package/dist/_members/primitives/layouts/index.js +24 -0
  572. package/dist/_members/primitives/layouts/index.js.map +1 -0
  573. package/dist/_members/primitives/layouts/infinite-bento-pan/config.d.ts +18 -0
  574. package/dist/_members/primitives/layouts/infinite-bento-pan/index.d.ts +15 -0
  575. package/dist/_members/primitives/layouts/letterbox/config.d.ts +18 -0
  576. package/dist/_members/primitives/layouts/letterbox/index.d.ts +23 -0
  577. package/dist/_members/primitives/layouts/photo-grid/config.d.ts +21 -0
  578. package/dist/_members/primitives/layouts/photo-grid/index.d.ts +25 -0
  579. package/dist/_members/primitives/layouts/picture-in-picture/config.d.ts +21 -0
  580. package/dist/_members/primitives/layouts/picture-in-picture/index.d.ts +32 -0
  581. package/dist/_members/primitives/layouts/split-screen/config.d.ts +15 -0
  582. package/dist/_members/primitives/layouts/split-screen/index.d.ts +22 -0
  583. package/dist/_members/primitives/layouts/staggered-bento-grid/config.d.ts +66 -0
  584. package/dist/_members/primitives/layouts/staggered-bento-grid/index.d.ts +24 -0
  585. package/dist/_members/primitives/lib/easings.d.ts +47 -0
  586. package/dist/_members/primitives/lib/easings.js +26 -0
  587. package/dist/_members/primitives/lib/easings.js.map +1 -0
  588. package/dist/_members/primitives/lib/index.d.ts +8 -0
  589. package/dist/_members/primitives/lib/index.js +74 -0
  590. package/dist/_members/primitives/lib/index.js.map +1 -0
  591. package/dist/_members/primitives/lib/palette.d.ts +55 -0
  592. package/dist/_members/primitives/lib/palette.js +72 -0
  593. package/dist/_members/primitives/lib/palette.js.map +1 -0
  594. package/dist/_members/primitives/lib/preview.d.ts +36 -0
  595. package/dist/_members/primitives/lib/preview.js +8 -0
  596. package/dist/_members/primitives/lib/preview.js.map +1 -0
  597. package/dist/_members/primitives/lib/schema.d.ts +53 -0
  598. package/dist/_members/primitives/lib/schema.js +12 -0
  599. package/dist/_members/primitives/lib/schema.js.map +1 -0
  600. package/dist/_members/primitives/lib/seeded-random.d.ts +33 -0
  601. package/dist/_members/primitives/lib/seeded-random.js +14 -0
  602. package/dist/_members/primitives/lib/seeded-random.js.map +1 -0
  603. package/dist/_members/primitives/lib/text/contrast.d.ts +27 -0
  604. package/dist/_members/primitives/lib/text/contrast.js +12 -0
  605. package/dist/_members/primitives/lib/text/contrast.js.map +1 -0
  606. package/dist/_members/primitives/lib/text/fill.d.ts +8 -0
  607. package/dist/_members/primitives/lib/text/fill.js +8 -0
  608. package/dist/_members/primitives/lib/text/fill.js.map +1 -0
  609. package/dist/_members/primitives/lib/text/fitText.d.ts +62 -0
  610. package/dist/_members/primitives/lib/text/fitText.js +10 -0
  611. package/dist/_members/primitives/lib/text/fitText.js.map +1 -0
  612. package/dist/_members/primitives/lib/text/marker.d.ts +15 -0
  613. package/dist/_members/primitives/lib/text/marker.js +8 -0
  614. package/dist/_members/primitives/lib/text/marker.js.map +1 -0
  615. package/dist/_members/primitives/lib/text/motion.d.ts +57 -0
  616. package/dist/_members/primitives/lib/text/motion.js +16 -0
  617. package/dist/_members/primitives/lib/text/motion.js.map +1 -0
  618. package/dist/_members/primitives/lib/text/recolor.d.ts +12 -0
  619. package/dist/_members/primitives/lib/text/recolor.js +8 -0
  620. package/dist/_members/primitives/lib/text/recolor.js.map +1 -0
  621. package/dist/_members/primitives/lib/text/spec.d.ts +82 -0
  622. package/dist/_members/primitives/lib/text/spec.js +1 -0
  623. package/dist/_members/primitives/lib/text/spec.js.map +1 -0
  624. package/dist/_members/primitives/lib/text/stage.d.ts +23 -0
  625. package/dist/_members/primitives/lib/text/stage.js +8 -0
  626. package/dist/_members/primitives/lib/text/stage.js.map +1 -0
  627. package/dist/_members/primitives/lib/text/typeface.d.ts +16 -0
  628. package/dist/_members/primitives/lib/text/typeface.js +8 -0
  629. package/dist/_members/primitives/lib/text/typeface.js.map +1 -0
  630. package/dist/_members/primitives/lib/tokens.d.ts +109 -0
  631. package/dist/_members/primitives/lib/tokens.js +24 -0
  632. package/dist/_members/primitives/lib/tokens.js.map +1 -0
  633. package/dist/_members/primitives/lib/types.d.ts +200 -0
  634. package/dist/_members/primitives/lib/types.js +1 -0
  635. package/dist/_members/primitives/lib/types.js.map +1 -0
  636. package/dist/_members/primitives/params-required.json +153 -0
  637. package/dist/_members/primitives/scenes/changelog-bite/config.d.ts +36 -0
  638. package/dist/_members/primitives/scenes/changelog-bite/index.d.ts +28 -0
  639. package/dist/_members/primitives/scenes/hero-device-assemble/config.d.ts +24 -0
  640. package/dist/_members/primitives/scenes/hero-device-assemble/index.d.ts +16 -0
  641. package/dist/_members/primitives/scenes/index.d.ts +9 -0
  642. package/dist/_members/primitives/scenes/index.js +25 -0
  643. package/dist/_members/primitives/scenes/index.js.map +1 -0
  644. package/dist/_members/primitives/scenes/landing-code-showcase/config.d.ts +15 -0
  645. package/dist/_members/primitives/scenes/landing-code-showcase/index.d.ts +15 -0
  646. package/dist/_members/primitives/scenes/landing-code-showcase/timeline.d.ts +15 -0
  647. package/dist/_members/primitives/scenes/live-code-compilation/config.d.ts +15 -0
  648. package/dist/_members/primitives/scenes/live-code-compilation/index.d.ts +14 -0
  649. package/dist/_members/primitives/scenes/pricing-tier-focus/config.d.ts +21 -0
  650. package/dist/_members/primitives/scenes/pricing-tier-focus/index.d.ts +15 -0
  651. package/dist/_members/primitives/scenes/product-launch-trailer/config.d.ts +33 -0
  652. package/dist/_members/primitives/scenes/product-launch-trailer/index.d.ts +20 -0
  653. package/dist/_members/primitives/scenes/terminal-to-browser-deploy/config.d.ts +21 -0
  654. package/dist/_members/primitives/scenes/terminal-to-browser-deploy/index.d.ts +15 -0
  655. package/dist/_members/primitives/subject-foreground/SubjectForeground.d.ts +43 -0
  656. package/dist/_members/primitives/subject-foreground/index.d.ts +23 -0
  657. package/dist/_members/primitives/subject-foreground/index.js +30 -0
  658. package/dist/_members/primitives/subject-foreground/index.js.map +1 -0
  659. package/dist/_members/primitives/text/blur-reveal/config.d.ts +30 -0
  660. package/dist/_members/primitives/text/blur-reveal/index.d.ts +20 -0
  661. package/dist/_members/primitives/text/cinematic-title/config.d.ts +87 -0
  662. package/dist/_members/primitives/text/cinematic-title/index.d.ts +31 -0
  663. package/dist/_members/primitives/text/index.d.ts +23 -0
  664. package/dist/_members/primitives/text/index.js +57 -0
  665. package/dist/_members/primitives/text/index.js.map +1 -0
  666. package/dist/_members/primitives/text/inline-highlight/config.d.ts +36 -0
  667. package/dist/_members/primitives/text/inline-highlight/index.d.ts +24 -0
  668. package/dist/_members/primitives/text/karaoke/config.d.ts +108 -0
  669. package/dist/_members/primitives/text/karaoke/index.d.ts +32 -0
  670. package/dist/_members/primitives/text/kinetic-type/config.d.ts +60 -0
  671. package/dist/_members/primitives/text/kinetic-type/index.d.ts +29 -0
  672. package/dist/_members/primitives/text/lower-third/config.d.ts +84 -0
  673. package/dist/_members/primitives/text/lower-third/index.d.ts +30 -0
  674. package/dist/_members/primitives/text/marker-highlight/config.d.ts +39 -0
  675. package/dist/_members/primitives/text/marker-highlight/index.d.ts +24 -0
  676. package/dist/_members/primitives/text/masked-slide-reveal/config.d.ts +30 -0
  677. package/dist/_members/primitives/text/masked-slide-reveal/index.d.ts +19 -0
  678. package/dist/_members/primitives/text/matrix-decode/config.d.ts +33 -0
  679. package/dist/_members/primitives/text/matrix-decode/index.d.ts +21 -0
  680. package/dist/_members/primitives/text/quote-card/config.d.ts +21 -0
  681. package/dist/_members/primitives/text/quote-card/index.d.ts +23 -0
  682. package/dist/_members/primitives/text/rgb-glitch-text/config.d.ts +39 -0
  683. package/dist/_members/primitives/text/rgb-glitch-text/index.d.ts +27 -0
  684. package/dist/_members/primitives/text/shimmer-sweep/config.d.ts +30 -0
  685. package/dist/_members/primitives/text/shimmer-sweep/index.d.ts +21 -0
  686. package/dist/_members/primitives/text/slot-machine-roll/config.d.ts +30 -0
  687. package/dist/_members/primitives/text/slot-machine-roll/index.d.ts +19 -0
  688. package/dist/_members/primitives/text/staggered-fade-up/config.d.ts +39 -0
  689. package/dist/_members/primitives/text/staggered-fade-up/index.d.ts +26 -0
  690. package/dist/_members/primitives/text/stat-counter/config.d.ts +33 -0
  691. package/dist/_members/primitives/text/stat-counter/index.d.ts +31 -0
  692. package/dist/_members/primitives/text/strikethrough-replace/config.d.ts +33 -0
  693. package/dist/_members/primitives/text/strikethrough-replace/index.d.ts +21 -0
  694. package/dist/_members/primitives/text/text-effect/config.d.ts +24 -0
  695. package/dist/_members/primitives/text/text-effect/index.d.ts +29 -0
  696. package/dist/_members/primitives/text/text-fade-replace/config.d.ts +30 -0
  697. package/dist/_members/primitives/text/text-fade-replace/index.d.ts +19 -0
  698. package/dist/_members/primitives/text/token-stream/config.d.ts +21 -0
  699. package/dist/_members/primitives/text/token-stream/index.d.ts +25 -0
  700. package/dist/_members/primitives/text/tracking-in/config.d.ts +33 -0
  701. package/dist/_members/primitives/text/tracking-in/index.d.ts +21 -0
  702. package/dist/_members/primitives/text/typewriter/config.d.ts +36 -0
  703. package/dist/_members/primitives/text/typewriter/index.d.ts +26 -0
  704. package/dist/_members/primitives/transitions/chromatic-aberration-wipe/config.d.ts +15 -0
  705. package/dist/_members/primitives/transitions/chromatic-aberration-wipe/index.d.ts +19 -0
  706. package/dist/_members/primitives/transitions/code-diff-wipe/config.d.ts +36 -0
  707. package/dist/_members/primitives/transitions/code-diff-wipe/index.d.ts +21 -0
  708. package/dist/_members/primitives/transitions/directional-wipe/config.d.ts +12 -0
  709. package/dist/_members/primitives/transitions/directional-wipe/index.d.ts +17 -0
  710. package/dist/_members/primitives/transitions/frosted-glass-wipe/config.d.ts +12 -0
  711. package/dist/_members/primitives/transitions/frosted-glass-wipe/index.d.ts +17 -0
  712. package/dist/_members/primitives/transitions/glitch-cut/config.d.ts +15 -0
  713. package/dist/_members/primitives/transitions/glitch-cut/index.d.ts +11 -0
  714. package/dist/_members/primitives/transitions/grid-pixelate-wipe/config.d.ts +21 -0
  715. package/dist/_members/primitives/transitions/grid-pixelate-wipe/index.d.ts +24 -0
  716. package/dist/_members/primitives/transitions/index.d.ts +17 -0
  717. package/dist/_members/primitives/transitions/index.js +67 -0
  718. package/dist/_members/primitives/transitions/index.js.map +1 -0
  719. package/dist/_members/primitives/transitions/ink-wipe/config.d.ts +15 -0
  720. package/dist/_members/primitives/transitions/ink-wipe/index.d.ts +13 -0
  721. package/dist/_members/primitives/transitions/kinetic-type-mask/config.d.ts +15 -0
  722. package/dist/_members/primitives/transitions/kinetic-type-mask/index.d.ts +20 -0
  723. package/dist/_members/primitives/transitions/light-leak/config.d.ts +15 -0
  724. package/dist/_members/primitives/transitions/light-leak/index.d.ts +11 -0
  725. package/dist/_members/primitives/transitions/luma-matte/config.d.ts +12 -0
  726. package/dist/_members/primitives/transitions/luma-matte/index.d.ts +11 -0
  727. package/dist/_members/primitives/transitions/morph/config.d.ts +12 -0
  728. package/dist/_members/primitives/transitions/morph/index.d.ts +11 -0
  729. package/dist/_members/primitives/transitions/spatial-push/config.d.ts +12 -0
  730. package/dist/_members/primitives/transitions/spatial-push/index.d.ts +17 -0
  731. package/dist/_members/primitives/transitions/swipe-transition-wipe/config.d.ts +18 -0
  732. package/dist/_members/primitives/transitions/swipe-transition-wipe/index.d.ts +22 -0
  733. package/dist/_members/primitives/transitions/zoom-through/config.d.ts +39 -0
  734. package/dist/_members/primitives/transitions/zoom-through/index.d.ts +12 -0
  735. package/dist/_members/primitives/transitions/zoom-through-transition/config.d.ts +24 -0
  736. package/dist/_members/primitives/transitions/zoom-through-transition/index.d.ts +20 -0
  737. package/dist/_members/primitives/ui-blocks/ai-generate-overlay/config.d.ts +48 -0
  738. package/dist/_members/primitives/ui-blocks/ai-generate-overlay/index.d.ts +25 -0
  739. package/dist/_members/primitives/ui-blocks/ai-generation-canvas/config.d.ts +21 -0
  740. package/dist/_members/primitives/ui-blocks/ai-generation-canvas/index.d.ts +16 -0
  741. package/dist/_members/primitives/ui-blocks/badge-pop/config.d.ts +27 -0
  742. package/dist/_members/primitives/ui-blocks/badge-pop/index.d.ts +21 -0
  743. package/dist/_members/primitives/ui-blocks/before-after-slider/config.d.ts +21 -0
  744. package/dist/_members/primitives/ui-blocks/before-after-slider/index.d.ts +20 -0
  745. package/dist/_members/primitives/ui-blocks/benchmark-bars/config.d.ts +86 -0
  746. package/dist/_members/primitives/ui-blocks/benchmark-bars/index.d.ts +25 -0
  747. package/dist/_members/primitives/ui-blocks/bounding-box-selector/config.d.ts +27 -0
  748. package/dist/_members/primitives/ui-blocks/bounding-box-selector/index.d.ts +20 -0
  749. package/dist/_members/primitives/ui-blocks/browser-flow/config.d.ts +15 -0
  750. package/dist/_members/primitives/ui-blocks/browser-flow/index.d.ts +15 -0
  751. package/dist/_members/primitives/ui-blocks/brush-stroke-simulator/config.d.ts +36 -0
  752. package/dist/_members/primitives/ui-blocks/brush-stroke-simulator/index.d.ts +32 -0
  753. package/dist/_members/primitives/ui-blocks/chat-exchange/config.d.ts +27 -0
  754. package/dist/_members/primitives/ui-blocks/chat-exchange/index.d.ts +20 -0
  755. package/dist/_members/primitives/ui-blocks/code-accordion/config.d.ts +42 -0
  756. package/dist/_members/primitives/ui-blocks/code-accordion/index.d.ts +23 -0
  757. package/dist/_members/primitives/ui-blocks/context-meter/config.d.ts +24 -0
  758. package/dist/_members/primitives/ui-blocks/context-meter/index.d.ts +20 -0
  759. package/dist/_members/primitives/ui-blocks/cursor-flow/config.d.ts +84 -0
  760. package/dist/_members/primitives/ui-blocks/cursor-flow/index.d.ts +29 -0
  761. package/dist/_members/primitives/ui-blocks/dashboard-populate/config.d.ts +18 -0
  762. package/dist/_members/primitives/ui-blocks/dashboard-populate/index.d.ts +15 -0
  763. package/dist/_members/primitives/ui-blocks/data-flow-pipes/config.d.ts +120 -0
  764. package/dist/_members/primitives/ui-blocks/data-flow-pipes/index.d.ts +34 -0
  765. package/dist/_members/primitives/ui-blocks/device-mockup-zoom/config.d.ts +24 -0
  766. package/dist/_members/primitives/ui-blocks/device-mockup-zoom/index.d.ts +19 -0
  767. package/dist/_members/primitives/ui-blocks/drag-and-drop-flow/config.d.ts +24 -0
  768. package/dist/_members/primitives/ui-blocks/drag-and-drop-flow/index.d.ts +17 -0
  769. package/dist/_members/primitives/ui-blocks/eval-scorecard/config.d.ts +48 -0
  770. package/dist/_members/primitives/ui-blocks/eval-scorecard/index.d.ts +23 -0
  771. package/dist/_members/primitives/ui-blocks/glass-code-block/config.d.ts +39 -0
  772. package/dist/_members/primitives/ui-blocks/glass-code-block/index.d.ts +22 -0
  773. package/dist/_members/primitives/ui-blocks/image-expand-to-fullscreen/config.d.ts +141 -0
  774. package/dist/_members/primitives/ui-blocks/image-expand-to-fullscreen/index.d.ts +32 -0
  775. package/dist/_members/primitives/ui-blocks/index.d.ts +33 -0
  776. package/dist/_members/primitives/ui-blocks/index.js +76 -0
  777. package/dist/_members/primitives/ui-blocks/index.js.map +1 -0
  778. package/dist/_members/primitives/ui-blocks/metric-gauge/config.d.ts +46 -0
  779. package/dist/_members/primitives/ui-blocks/metric-gauge/index.d.ts +23 -0
  780. package/dist/_members/primitives/ui-blocks/morphing-modal/config.d.ts +141 -0
  781. package/dist/_members/primitives/ui-blocks/morphing-modal/index.d.ts +35 -0
  782. package/dist/_members/primitives/ui-blocks/pipeline-journey/config.d.ts +18 -0
  783. package/dist/_members/primitives/ui-blocks/pipeline-journey/index.d.ts +15 -0
  784. package/dist/_members/primitives/ui-blocks/progress-steps/config.d.ts +51 -0
  785. package/dist/_members/primitives/ui-blocks/progress-steps/index.d.ts +22 -0
  786. package/dist/_members/primitives/ui-blocks/reasoning-trace/config.d.ts +21 -0
  787. package/dist/_members/primitives/ui-blocks/reasoning-trace/index.d.ts +18 -0
  788. package/dist/_members/primitives/ui-blocks/simulated-cursor/config.d.ts +69 -0
  789. package/dist/_members/primitives/ui-blocks/simulated-cursor/index.d.ts +23 -0
  790. package/dist/_members/primitives/ui-blocks/terminal-simulator/config.d.ts +63 -0
  791. package/dist/_members/primitives/ui-blocks/terminal-simulator/index.d.ts +39 -0
  792. package/dist/_members/primitives/ui-blocks/toast-notification/config.d.ts +33 -0
  793. package/dist/_members/primitives/ui-blocks/toast-notification/index.d.ts +21 -0
  794. package/dist/_members/primitives/ui-blocks/tool-call-stack/config.d.ts +54 -0
  795. package/dist/_members/primitives/ui-blocks/tool-call-stack/index.d.ts +20 -0
  796. package/dist/_members/primitives/ui-blocks/tool-menu-slide-in/config.d.ts +33 -0
  797. package/dist/_members/primitives/ui-blocks/tool-menu-slide-in/index.d.ts +20 -0
  798. package/dist/_members/primitives/ui-blocks/visual-docs-snippet/config.d.ts +90 -0
  799. package/dist/_members/primitives/ui-blocks/visual-docs-snippet/index.d.ts +27 -0
  800. package/dist/_members/primitives/ui-blocks/voice-waveform/config.d.ts +24 -0
  801. package/dist/_members/primitives/ui-blocks/voice-waveform/index.d.ts +20 -0
  802. package/dist/_members/primitives/version-map.json +105 -0
  803. package/dist/_members/primitives/workspace.d.ts +51 -0
  804. package/dist/_members/primitives/workspace.js +60 -0
  805. package/dist/_members/primitives/workspace.js.map +1 -0
  806. package/dist/_members/render-harness/cardRender.d.ts +64 -0
  807. package/dist/_members/render-harness/cardRender.d.ts.map +1 -0
  808. package/dist/_members/render-harness/contractRender.d.ts +43 -0
  809. package/dist/_members/render-harness/contractRender.d.ts.map +1 -0
  810. package/dist/_members/render-harness/extractSegments.d.ts +53 -0
  811. package/dist/_members/render-harness/extractSegments.d.ts.map +1 -0
  812. package/dist/_members/render-harness/index.d.ts +30 -0
  813. package/dist/_members/render-harness/index.d.ts.map +1 -0
  814. package/dist/_members/render-harness/localRender.d.ts +167 -0
  815. package/dist/_members/render-harness/localRender.d.ts.map +1 -0
  816. package/dist/_members/render-harness/materializeSources.d.ts +29 -0
  817. package/dist/_members/render-harness/materializeSources.d.ts.map +1 -0
  818. package/dist/_members/render-harness/mediaServer.d.ts +22 -0
  819. package/dist/_members/render-harness/mediaServer.d.ts.map +1 -0
  820. package/dist/_members/render-harness/renderInputAssets.d.ts +63 -0
  821. package/dist/_members/render-harness/renderInputAssets.d.ts.map +1 -0
  822. package/dist/_members/render-harness/resolveAssets.d.ts +33 -0
  823. package/dist/_members/render-harness/resolveAssets.d.ts.map +1 -0
  824. package/dist/_members/render-harness/sandboxGlobalSpecs.d.ts +23 -0
  825. package/dist/_members/render-harness/sandboxGlobalSpecs.d.ts.map +1 -0
  826. package/dist/account-model/testing.d.ts +1 -0
  827. package/dist/account-model/testing.js +145 -0
  828. package/dist/account-model/types.d.ts +1 -0
  829. package/dist/account-model/types.js +0 -0
  830. package/dist/account-model/validators.d.ts +1 -0
  831. package/dist/account-model/validators.js +26 -0
  832. package/dist/account-model.d.ts +1 -0
  833. package/dist/account-model.js +26 -0
  834. package/dist/animate.d.ts +1 -0
  835. package/dist/animate.js +79412 -0
  836. package/dist/authoring/build-tools.d.ts +1 -0
  837. package/dist/authoring/build-tools.js +29 -0
  838. package/dist/authoring/capabilities.d.ts +1 -0
  839. package/dist/authoring/capabilities.js +11 -0
  840. package/dist/authoring/composer.d.ts +1 -0
  841. package/dist/authoring/composer.js +53 -0
  842. package/dist/authoring/context.d.ts +1 -0
  843. package/dist/authoring/context.js +14 -0
  844. package/dist/authoring/models.d.ts +1 -0
  845. package/dist/authoring/models.js +14 -0
  846. package/dist/authoring/pipelineTrace.d.ts +1 -0
  847. package/dist/authoring/pipelineTrace.js +7 -0
  848. package/dist/authoring/prompts.d.ts +1 -0
  849. package/dist/authoring/prompts.js +29 -0
  850. package/dist/authoring/providers.d.ts +1 -0
  851. package/dist/authoring/providers.js +99 -0
  852. package/dist/authoring/resource-routing.d.ts +1 -0
  853. package/dist/authoring/resource-routing.js +206 -0
  854. package/dist/authoring/resources.d.ts +1 -0
  855. package/dist/authoring/resources.js +35 -0
  856. package/dist/authoring/tools.d.ts +1 -0
  857. package/dist/authoring/tools.js +29 -0
  858. package/dist/authoring/transpileComponent.d.ts +1 -0
  859. package/dist/authoring/transpileComponent.js +2248 -0
  860. package/dist/authoring/transpileHelper.d.ts +1 -0
  861. package/dist/authoring/transpileHelper.js +9 -0
  862. package/dist/authoring/types.d.ts +1 -0
  863. package/dist/authoring/types.js +0 -0
  864. package/dist/authoring.d.ts +1 -0
  865. package/dist/authoring.js +1295 -0
  866. package/dist/brand-derivation/constants.d.ts +1 -0
  867. package/dist/brand-derivation/constants.js +11 -0
  868. package/dist/brand-derivation.d.ts +1 -0
  869. package/dist/brand-derivation.js +23 -0
  870. package/dist/chunk-2ESYSVXG.js +48 -0
  871. package/dist/chunk-37NJ27UU.js +501 -0
  872. package/dist/chunk-52AHXNKM.js +435 -0
  873. package/dist/chunk-5I7VDCAC.js +15647 -0
  874. package/dist/chunk-6CMVBTTP.js +1933 -0
  875. package/dist/chunk-6EQXLEP6.js +194 -0
  876. package/dist/chunk-6QJ3V3VS.js +1444 -0
  877. package/dist/chunk-7DHP4ESU.js +138 -0
  878. package/dist/chunk-7GISRVON.js +14176 -0
  879. package/dist/chunk-7PA7FGLD.js +609 -0
  880. package/dist/chunk-ATAF24QG.js +735 -0
  881. package/dist/chunk-AWT3P5ZN.js +1609 -0
  882. package/dist/chunk-B4VMU2IJ.js +211 -0
  883. package/dist/chunk-BDMTUEEZ.js +19 -0
  884. package/dist/chunk-BRKJKB33.js +683 -0
  885. package/dist/chunk-CX2IIQ4R.js +111 -0
  886. package/dist/chunk-D2EG7J7X.js +31 -0
  887. package/dist/chunk-DENF4TPI.js +249 -0
  888. package/dist/chunk-DIBOJJMU.js +16838 -0
  889. package/dist/chunk-DLF4WVSE.js +9 -0
  890. package/dist/chunk-DSNG6WLU.js +82 -0
  891. package/dist/chunk-EA6MYCYW.js +135 -0
  892. package/dist/chunk-EAUSEGB7.js +420 -0
  893. package/dist/chunk-ELLSET2N.js +195 -0
  894. package/dist/chunk-EMGFZ3PR.js +14 -0
  895. package/dist/chunk-FUWJOVVK.js +3633 -0
  896. package/dist/chunk-G3PBH53P.js +85 -0
  897. package/dist/chunk-G75E7YA4.js +11883 -0
  898. package/dist/chunk-GBRNYH7W.js +72 -0
  899. package/dist/chunk-GH27OS5S.js +104 -0
  900. package/dist/chunk-GULDS3VE.js +41 -0
  901. package/dist/chunk-H5LMJKZU.js +0 -0
  902. package/dist/chunk-HI4UTTPS.js +954 -0
  903. package/dist/chunk-JCZQT7K3.js +3266 -0
  904. package/dist/chunk-JD77Y2WM.js +3423 -0
  905. package/dist/chunk-JF4JJAFP.js +10 -0
  906. package/dist/chunk-JMURQODM.js +438 -0
  907. package/dist/chunk-JOURGVOR.js +27 -0
  908. package/dist/chunk-JRQVPFLF.js +459 -0
  909. package/dist/chunk-KF5ETMKB.js +544 -0
  910. package/dist/chunk-KYRDKK2D.js +47 -0
  911. package/dist/chunk-LD5ZOUFT.js +55 -0
  912. package/dist/chunk-M3I5LMAB.js +426 -0
  913. package/dist/chunk-MC5DLSEV.js +202 -0
  914. package/dist/chunk-MCBUX5XV.js +70 -0
  915. package/dist/chunk-MFHXCHRI.js +33 -0
  916. package/dist/chunk-MMEJ3Y7E.js +327 -0
  917. package/dist/chunk-MVEE6HEC.js +8512 -0
  918. package/dist/chunk-N67PDTKQ.js +1419 -0
  919. package/dist/chunk-NDKERSXY.js +1296 -0
  920. package/dist/chunk-NV4I6GJV.js +1091 -0
  921. package/dist/chunk-OIRUO5P7.js +397 -0
  922. package/dist/chunk-P43IE4WB.js +181 -0
  923. package/dist/chunk-QGAWDLYX.js +92 -0
  924. package/dist/chunk-QH3YI3ND.js +100 -0
  925. package/dist/chunk-QLAQHR3L.js +254 -0
  926. package/dist/chunk-RHVLQNYF.js +20 -0
  927. package/dist/chunk-S3P5BFFL.js +2265 -0
  928. package/dist/chunk-SIGGQRY2.js +8483 -0
  929. package/dist/chunk-TULRCY6U.js +729 -0
  930. package/dist/chunk-TWQOKKAF.js +859 -0
  931. package/dist/chunk-U3JPILZS.js +15 -0
  932. package/dist/chunk-U4V4FZGE.js +20 -0
  933. package/dist/chunk-UEI3NLNK.js +127 -0
  934. package/dist/chunk-V43Y7IE4.js +3621 -0
  935. package/dist/chunk-VIVQHIGZ.js +4319 -0
  936. package/dist/chunk-W35ZMOXB.js +23 -0
  937. package/dist/chunk-WB2VFDQZ.js +58 -0
  938. package/dist/chunk-WREYUH2E.js +104 -0
  939. package/dist/chunk-WZTTZHNR.js +3339 -0
  940. package/dist/chunk-XELS2BGA.js +13 -0
  941. package/dist/chunk-XLIPPLG3.js +18 -0
  942. package/dist/chunk-YA3OR2KK.js +249 -0
  943. package/dist/chunk-ZE76SSRT.js +358 -0
  944. package/dist/chunk-ZFEXATWN.js +46 -0
  945. package/dist/chunk-ZSZABOE5.js +425 -0
  946. package/dist/compose/renderer.d.ts +1 -0
  947. package/dist/compose/renderer.js +173 -0
  948. package/dist/compose.d.ts +1 -0
  949. package/dist/compose.js +76 -0
  950. package/dist/composition/audio.d.ts +1 -0
  951. package/dist/composition/audio.js +63 -0
  952. package/dist/composition/autozoom.d.ts +1 -0
  953. package/dist/composition/autozoom.js +76 -0
  954. package/dist/composition/brand-kit.d.ts +1 -0
  955. package/dist/composition/brand-kit.js +34 -0
  956. package/dist/composition/brief.d.ts +1 -0
  957. package/dist/composition/brief.js +112 -0
  958. package/dist/composition/depth.d.ts +1 -0
  959. package/dist/composition/depth.js +12 -0
  960. package/dist/composition/fixtures.d.ts +1 -0
  961. package/dist/composition/fixtures.js +154 -0
  962. package/dist/composition/fonts.d.ts +1 -0
  963. package/dist/composition/fonts.js +74 -0
  964. package/dist/composition/graphics-plan.d.ts +1 -0
  965. package/dist/composition/graphics-plan.js +400 -0
  966. package/dist/composition/invariants.d.ts +1 -0
  967. package/dist/composition/invariants.js +49 -0
  968. package/dist/composition/ops.d.ts +1 -0
  969. package/dist/composition/ops.js +53 -0
  970. package/dist/composition/primitive-catalog.d.ts +1 -0
  971. package/dist/composition/primitive-catalog.js +60 -0
  972. package/dist/composition/projection.d.ts +1 -0
  973. package/dist/composition/projection.js +119 -0
  974. package/dist/composition/reframe/coverage.d.ts +1 -0
  975. package/dist/composition/reframe/coverage.js +20 -0
  976. package/dist/composition/reframe/kenBurns.d.ts +1 -0
  977. package/dist/composition/reframe/kenBurns.js +53 -0
  978. package/dist/composition/reframe/shotScale.d.ts +1 -0
  979. package/dist/composition/reframe/shotScale.js +25 -0
  980. package/dist/composition/reframe/trajectory.d.ts +1 -0
  981. package/dist/composition/reframe/trajectory.js +17 -0
  982. package/dist/composition/reframe.d.ts +1 -0
  983. package/dist/composition/reframe.js +39 -0
  984. package/dist/composition/timeline.d.ts +1 -0
  985. package/dist/composition/timeline.js +70 -0
  986. package/dist/composition/types.d.ts +1 -0
  987. package/dist/composition/types.js +0 -0
  988. package/dist/composition/validators/graphic-kinds.d.ts +1 -0
  989. package/dist/composition/validators/graphic-kinds.js +9 -0
  990. package/dist/composition/validators.d.ts +1 -0
  991. package/dist/composition/validators.js +180 -0
  992. package/dist/composition-ops.d.ts +1 -0
  993. package/dist/composition-ops.js +882 -0
  994. package/dist/composition.d.ts +1 -0
  995. package/dist/composition.js +433 -0
  996. package/dist/context-CEAKQ5T7.js +14 -0
  997. package/dist/core/render.d.ts +1 -0
  998. package/dist/core/render.js +105 -0
  999. package/dist/core/select.d.ts +1 -0
  1000. package/dist/core/select.js +42 -0
  1001. package/dist/core/types.d.ts +1 -0
  1002. package/dist/core/types.js +0 -0
  1003. package/dist/core.d.ts +1 -0
  1004. package/dist/core.js +38 -0
  1005. package/dist/dist-LAJ2363K.js +545 -0
  1006. package/dist/errors.d.ts +1 -0
  1007. package/dist/errors.js +17 -0
  1008. package/dist/foundation/codes.d.ts +1 -0
  1009. package/dist/foundation/codes.js +7 -0
  1010. package/dist/foundation/primitives.d.ts +1 -0
  1011. package/dist/foundation/primitives.js +13 -0
  1012. package/dist/foundation.d.ts +1 -0
  1013. package/dist/foundation.js +17 -0
  1014. package/dist/hls-HD4C5G6W.js +33000 -0
  1015. package/dist/magic-string.es-SDTMJBWP.js +1308 -0
  1016. package/dist/mcp/adapter.d.ts +1 -0
  1017. package/dist/mcp/adapter.js +670 -0
  1018. package/dist/mcp/core.d.ts +1 -0
  1019. package/dist/mcp/core.js +41 -0
  1020. package/dist/mcp/curation.d.ts +1 -0
  1021. package/dist/mcp/curation.js +23 -0
  1022. package/dist/mcp/executor.d.ts +1 -0
  1023. package/dist/mcp/executor.js +13 -0
  1024. package/dist/mcp/server.d.ts +1 -0
  1025. package/dist/mcp/server.js +27 -0
  1026. package/dist/mcp.d.ts +1 -0
  1027. package/dist/mcp.js +138 -0
  1028. package/dist/media-model/media-kind.d.ts +1 -0
  1029. package/dist/media-model/media-kind.js +108 -0
  1030. package/dist/media-model/testing.d.ts +1 -0
  1031. package/dist/media-model/testing.js +16029 -0
  1032. package/dist/media-model/transcriptSearch.d.ts +1 -0
  1033. package/dist/media-model/transcriptSearch.js +32 -0
  1034. package/dist/media-model.d.ts +1 -0
  1035. package/dist/media-model.js +154 -0
  1036. package/dist/nle-export/server.d.ts +1 -0
  1037. package/dist/nle-export/server.js +25658 -0
  1038. package/dist/nle-export/xml.d.ts +1 -0
  1039. package/dist/nle-export/xml.js +23102 -0
  1040. package/dist/nle-export.d.ts +1 -0
  1041. package/dist/nle-export.js +313 -0
  1042. package/dist/perception.d.ts +1 -0
  1043. package/dist/perception.js +145 -0
  1044. package/dist/plane/conformance.d.ts +1 -0
  1045. package/dist/plane/conformance.js +13 -0
  1046. package/dist/plane/contract.d.ts +1 -0
  1047. package/dist/plane/contract.js +31 -0
  1048. package/dist/plane.d.ts +1 -0
  1049. package/dist/plane.js +13 -0
  1050. package/dist/primitives/backgrounds.d.ts +1 -0
  1051. package/dist/primitives/backgrounds.js +32 -0
  1052. package/dist/primitives/captions.d.ts +1 -0
  1053. package/dist/primitives/captions.js +629 -0
  1054. package/dist/primitives/effects.d.ts +1 -0
  1055. package/dist/primitives/effects.js +30 -0
  1056. package/dist/primitives/hero-text.d.ts +1 -0
  1057. package/dist/primitives/hero-text.js +14 -0
  1058. package/dist/primitives/layouts.d.ts +1 -0
  1059. package/dist/primitives/layouts.js +24 -0
  1060. package/dist/primitives/lib/easings.d.ts +1 -0
  1061. package/dist/primitives/lib/easings.js +25 -0
  1062. package/dist/primitives/lib/index.d.ts +1 -0
  1063. package/dist/primitives/lib/index.js +78 -0
  1064. package/dist/primitives/lib/palette.d.ts +1 -0
  1065. package/dist/primitives/lib/palette.js +71 -0
  1066. package/dist/primitives/lib/preview.d.ts +1 -0
  1067. package/dist/primitives/lib/preview.js +8 -0
  1068. package/dist/primitives/lib/schema.d.ts +1 -0
  1069. package/dist/primitives/lib/schema.js +12 -0
  1070. package/dist/primitives/lib/seeded-random.d.ts +1 -0
  1071. package/dist/primitives/lib/seeded-random.js +13 -0
  1072. package/dist/primitives/lib/text/contrast.d.ts +1 -0
  1073. package/dist/primitives/lib/text/contrast.js +11 -0
  1074. package/dist/primitives/lib/text/fill.d.ts +1 -0
  1075. package/dist/primitives/lib/text/fill.js +7 -0
  1076. package/dist/primitives/lib/text/fitText.d.ts +1 -0
  1077. package/dist/primitives/lib/text/fitText.js +10 -0
  1078. package/dist/primitives/lib/text/marker.d.ts +1 -0
  1079. package/dist/primitives/lib/text/marker.js +7 -0
  1080. package/dist/primitives/lib/text/motion.d.ts +1 -0
  1081. package/dist/primitives/lib/text/motion.js +15 -0
  1082. package/dist/primitives/lib/text/recolor.d.ts +1 -0
  1083. package/dist/primitives/lib/text/recolor.js +7 -0
  1084. package/dist/primitives/lib/text/spec.d.ts +1 -0
  1085. package/dist/primitives/lib/text/spec.js +0 -0
  1086. package/dist/primitives/lib/text/stage.d.ts +1 -0
  1087. package/dist/primitives/lib/text/stage.js +7 -0
  1088. package/dist/primitives/lib/text/typeface.d.ts +1 -0
  1089. package/dist/primitives/lib/text/typeface.js +7 -0
  1090. package/dist/primitives/lib/tokens.d.ts +1 -0
  1091. package/dist/primitives/lib/tokens.js +24 -0
  1092. package/dist/primitives/lib/types.d.ts +1 -0
  1093. package/dist/primitives/lib/types.js +0 -0
  1094. package/dist/primitives/lib.d.ts +1 -0
  1095. package/dist/primitives/lib.js +78 -0
  1096. package/dist/primitives/params-required.json +153 -0
  1097. package/dist/primitives/scenes.d.ts +1 -0
  1098. package/dist/primitives/scenes.js +25 -0
  1099. package/dist/primitives/subject-foreground.d.ts +1 -0
  1100. package/dist/primitives/subject-foreground.js +28 -0
  1101. package/dist/primitives/text.d.ts +1 -0
  1102. package/dist/primitives/text.js +57 -0
  1103. package/dist/primitives/transitions.d.ts +1 -0
  1104. package/dist/primitives/transitions.js +66 -0
  1105. package/dist/primitives/ui-blocks.d.ts +1 -0
  1106. package/dist/primitives/ui-blocks.js +76 -0
  1107. package/dist/primitives/version-map.json +105 -0
  1108. package/dist/primitives/workspace.d.ts +1 -0
  1109. package/dist/primitives/workspace.js +25 -0
  1110. package/dist/primitives.d.ts +1 -0
  1111. package/dist/primitives.js +65 -0
  1112. package/dist/render-harness/sandboxGlobalSpecs.d.ts +1 -0
  1113. package/dist/render-harness/sandboxGlobalSpecs.js +13 -0
  1114. package/dist/render-harness.d.ts +1 -0
  1115. package/dist/render-harness.js +1019 -0
  1116. package/dist/token-RGFIT24D.js +69 -0
  1117. package/dist/token-util-GPLSGYVO.js +5 -0
  1118. package/dist/vision_bundle-5Y376MAR.js +4084 -0
  1119. package/package.json +493 -0
@@ -0,0 +1,4940 @@
1
+ /**
2
+ * @cueframe/composition-ops — the composition OPERATION model (single home).
3
+ *
4
+ * One package owns "what an op is": the serializable `CompositionOp` discriminated
5
+ * union, `applyOp(composition, op)` (pure — applies an op to a wire Composition),
6
+ * and `invertOp` (the inverse, for the op-log / multiplayer undo).
7
+ *
8
+ * Layering (deliberate, not fragmentation):
9
+ * - This package = the op vocabulary + pure apply/inverse. OSS; the agent and the
10
+ * editor both emit + optimistically-apply ops through it.
11
+ * - apply logic is REUSED from `@cueframe/core` (the headless store), not forked.
12
+ * - The server-authoritative persistence (transactional scoped row writes + the
13
+ * op-log) is ONE generic Convex mutation in `the server's op applier`
14
+ * — a thin consumer of this package. Convex functions must live in the Convex app;
15
+ * that is the only piece outside this package, and it does not grow per-op.
16
+ */
17
+ import { z } from 'zod';
18
+ import { Composition } from '../composition/validators/index.js';
19
+ import type { TimelineClip as TimelineClipT, Track as TrackT } from '../composition/validators/index.js';
20
+ import { type HeadlessStore } from '../composition/ops/index.js';
21
+ /** A clip's track FAMILY (mirrors `Track.kind`). */
22
+ export type ClipKind = TrackT['kind'];
23
+ /** The three families a MEDIA item can belong to. */
24
+ export type MediaFamily = Extract<ClipKind, 'video' | 'audio' | 'image'>;
25
+ /**
26
+ * The timeline family of a media item, derived from its `mimeType`.
27
+ *
28
+ * `mimeType` is the ONLY trustworthy statement of what a media item is: it is
29
+ * `v.string()` (required) on the schema and byte-detected at ingest — populated
30
+ * on 305/305 prod rows. `mediaItems.kind` is a duplicate of the same fact that
31
+ * nobody maintains (null on every video uploaded in 2026-08) and that is
32
+ * overloaded with provenance values (`source`, `stock`, `gif`, `asset`) which
33
+ * are not families at all. Measured 2026-08-17: where `kind` was set it agreed
34
+ * with the mimeType prefix in 232/232 rows. So there is one fact here, and this
35
+ * is where it is read.
36
+ *
37
+ * THROWS on anything it cannot name. A media item whose type we can't determine
38
+ * must not be silently treated as video — that is precisely how an image reached
39
+ * the video frame-extractor and hung the render for 30s on `delayRender`.
40
+ */
41
+ export declare function mediaFamily(mimeType: string): MediaFamily;
42
+ /**
43
+ * Resolve a clip's track family — the single determinate rule:
44
+ * `clip.kind ?? deriveFromSource(source.kind) ?? track?.kind ?? throw`.
45
+ *
46
+ * The `track?.kind` step is a PLACEMENT reading, not a family oracle: "this clip
47
+ * is going on that track, so treat it as that family." It is correct here
48
+ * because this function is PURE — it has no database, and a media clip's real
49
+ * family lives on the media item (`mediaFamily(mimeType)`), which only a
50
+ * DB-aware caller can read. The editor's recording store legitimately adds media
51
+ * clips with no `kind` and a target track.
52
+ *
53
+ * What must NOT happen is a *server* guard treating this placement reading as
54
+ * an assertion and then rejecting the caller for it — that was the old
55
+ * `image_media_on_video_track`. The server stamps the true family from
56
+ * `mediaFamily(mediaItem.mimeType)` at the Convex ingress before folding ops, so
57
+ * by the time this runs server-side, `clip.kind` is already authoritative and
58
+ * the track step is never reached.
59
+ *
60
+ * FAILS LOUD for a media source with neither `clip.kind` nor a track — there is
61
+ * no safe default (no-fallbacks rule). Pure: no state, no side effects.
62
+ */
63
+ export declare function resolveClipKind(clip: Pick<TimelineClipT, 'kind' | 'source'>, track?: Pick<TrackT, 'kind'>): ClipKind;
64
+ /**
65
+ * The serializable composition operation. One discriminated union; every writer
66
+ * (agent, editor) emits these; the server validates with this schema at the
67
+ * boundary. Local-only ops (selectClip/selectOverlay/clearOverlaySelection) are
68
+ * deliberately ABSENT — selection is UI state, never persisted.
69
+ *
70
+ * Cross-field/ripple ops (`cutAndRipple`, `ripple`, `add/removeExcludedRange`)
71
+ * are server-AUTHORITATIVE: the server mutation recomputes downstream timeline
72
+ * state within one transaction (they do not free-merge). They are still
73
+ * expressed here so all writers share one vocabulary. (A `playbackRate` change
74
+ * is also cross-field — it lives at `source.playbackRate` and ripples downstream
75
+ * clips — which is exactly why it is NOT a `clip.update` patch field.)
76
+ */
77
+ export declare const CompositionOp: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
78
+ type: z.ZodLiteral<"clip.add">;
79
+ clip: z.ZodObject<{
80
+ id: z.ZodString;
81
+ startTime: z.ZodNumber;
82
+ duration: z.ZodNumber;
83
+ source: z.ZodDiscriminatedUnion<"kind", [z.ZodObject<{
84
+ kind: z.ZodLiteral<"media">;
85
+ mediaId: import("convex-helpers/server/zod3").Zid<"mediaItems">;
86
+ trim: z.ZodOptional<z.ZodObject<{
87
+ start: z.ZodNumber;
88
+ end: z.ZodNumber;
89
+ }, "strip", z.ZodTypeAny, {
90
+ start: number;
91
+ end: number;
92
+ }, {
93
+ start: number;
94
+ end: number;
95
+ }>>;
96
+ excludedRanges: z.ZodOptional<z.ZodArray<z.ZodObject<{
97
+ start: z.ZodNumber;
98
+ end: z.ZodNumber;
99
+ reason: z.ZodOptional<z.ZodString>;
100
+ }, "strip", z.ZodTypeAny, {
101
+ start: number;
102
+ end: number;
103
+ reason?: string | undefined;
104
+ }, {
105
+ start: number;
106
+ end: number;
107
+ reason?: string | undefined;
108
+ }>, "many">>;
109
+ volume: z.ZodOptional<z.ZodNumber>;
110
+ muted: z.ZodOptional<z.ZodBoolean>;
111
+ playbackRate: z.ZodOptional<z.ZodNumber>;
112
+ sync: z.ZodOptional<z.ZodEnum<["video", "independent"]>>;
113
+ kenBurns: z.ZodOptional<z.ZodEnum<["in", "out", "pan-l", "pan-r", "none"]>>;
114
+ volumeDb: z.ZodOptional<z.ZodNumber>;
115
+ fadeInMs: z.ZodOptional<z.ZodNumber>;
116
+ fadeOutMs: z.ZodOptional<z.ZodNumber>;
117
+ loop: z.ZodOptional<z.ZodBoolean>;
118
+ audioRole: z.ZodOptional<z.ZodEnum<["sfx", "music", "vo", "ambience"]>>;
119
+ duck: z.ZodOptional<z.ZodObject<{
120
+ duckDb: z.ZodNumber;
121
+ attackMs: z.ZodNumber;
122
+ releaseMs: z.ZodNumber;
123
+ windows: z.ZodOptional<z.ZodArray<z.ZodObject<{
124
+ startMs: z.ZodNumber;
125
+ endMs: z.ZodNumber;
126
+ }, "strip", z.ZodTypeAny, {
127
+ startMs: number;
128
+ endMs: number;
129
+ }, {
130
+ startMs: number;
131
+ endMs: number;
132
+ }>, "many">>;
133
+ }, "strip", z.ZodTypeAny, {
134
+ duckDb: number;
135
+ attackMs: number;
136
+ releaseMs: number;
137
+ windows?: {
138
+ startMs: number;
139
+ endMs: number;
140
+ }[] | undefined;
141
+ }, {
142
+ duckDb: number;
143
+ attackMs: number;
144
+ releaseMs: number;
145
+ windows?: {
146
+ startMs: number;
147
+ endMs: number;
148
+ }[] | undefined;
149
+ }>>;
150
+ anchor: z.ZodOptional<z.ZodObject<{
151
+ clipId: z.ZodString;
152
+ offsetMs: z.ZodNumber;
153
+ }, "strip", z.ZodTypeAny, {
154
+ clipId: string;
155
+ offsetMs: number;
156
+ }, {
157
+ clipId: string;
158
+ offsetMs: number;
159
+ }>>;
160
+ reframe: z.ZodOptional<z.ZodObject<{
161
+ segments: z.ZodArray<z.ZodEffects<z.ZodObject<{
162
+ startSec: z.ZodNumber;
163
+ endSec: z.ZodNumber;
164
+ focus: z.ZodDiscriminatedUnion<"mode", [z.ZodObject<{
165
+ mode: z.ZodLiteral<"frame-center">;
166
+ }, "strip", z.ZodTypeAny, {
167
+ mode: "frame-center";
168
+ }, {
169
+ mode: "frame-center";
170
+ }>, z.ZodObject<{
171
+ mode: z.ZodLiteral<"point">;
172
+ x: z.ZodNumber;
173
+ y: z.ZodNumber;
174
+ }, "strip", z.ZodTypeAny, {
175
+ mode: "point";
176
+ x: number;
177
+ y: number;
178
+ }, {
179
+ mode: "point";
180
+ x: number;
181
+ y: number;
182
+ }>, z.ZodObject<{
183
+ mode: z.ZodLiteral<"face">;
184
+ faceId: z.ZodString;
185
+ shotScale: z.ZodOptional<z.ZodEnum<["close", "standard", "wide"]>>;
186
+ }, "strip", z.ZodTypeAny, {
187
+ faceId: string;
188
+ mode: "face";
189
+ shotScale?: "close" | "standard" | "wide" | undefined;
190
+ }, {
191
+ faceId: string;
192
+ mode: "face";
193
+ shotScale?: "close" | "standard" | "wide" | undefined;
194
+ }>, z.ZodObject<{
195
+ mode: z.ZodLiteral<"all-faces">;
196
+ }, "strip", z.ZodTypeAny, {
197
+ mode: "all-faces";
198
+ }, {
199
+ mode: "all-faces";
200
+ }>, z.ZodObject<{
201
+ mode: z.ZodLiteral<"active-speaker">;
202
+ }, "strip", z.ZodTypeAny, {
203
+ mode: "active-speaker";
204
+ }, {
205
+ mode: "active-speaker";
206
+ }>]>;
207
+ intent: z.ZodOptional<z.ZodString>;
208
+ zoom: z.ZodOptional<z.ZodNumber>;
209
+ ease: z.ZodOptional<z.ZodObject<{
210
+ in: z.ZodNumber;
211
+ out: z.ZodNumber;
212
+ }, "strip", z.ZodTypeAny, {
213
+ in: number;
214
+ out: number;
215
+ }, {
216
+ in: number;
217
+ out: number;
218
+ }>>;
219
+ bias: z.ZodOptional<z.ZodObject<{
220
+ x: z.ZodNumber;
221
+ y: z.ZodNumber;
222
+ }, "strip", z.ZodTypeAny, {
223
+ x: number;
224
+ y: number;
225
+ }, {
226
+ x: number;
227
+ y: number;
228
+ }>>;
229
+ }, "strip", z.ZodTypeAny, {
230
+ startSec: number;
231
+ endSec: number;
232
+ focus: {
233
+ mode: "frame-center";
234
+ } | {
235
+ mode: "point";
236
+ x: number;
237
+ y: number;
238
+ } | {
239
+ faceId: string;
240
+ mode: "face";
241
+ shotScale?: "close" | "standard" | "wide" | undefined;
242
+ } | {
243
+ mode: "all-faces";
244
+ } | {
245
+ mode: "active-speaker";
246
+ };
247
+ intent?: string | undefined;
248
+ zoom?: number | undefined;
249
+ ease?: {
250
+ in: number;
251
+ out: number;
252
+ } | undefined;
253
+ bias?: {
254
+ x: number;
255
+ y: number;
256
+ } | undefined;
257
+ }, {
258
+ startSec: number;
259
+ endSec: number;
260
+ focus: {
261
+ mode: "frame-center";
262
+ } | {
263
+ mode: "point";
264
+ x: number;
265
+ y: number;
266
+ } | {
267
+ faceId: string;
268
+ mode: "face";
269
+ shotScale?: "close" | "standard" | "wide" | undefined;
270
+ } | {
271
+ mode: "all-faces";
272
+ } | {
273
+ mode: "active-speaker";
274
+ };
275
+ intent?: string | undefined;
276
+ zoom?: number | undefined;
277
+ ease?: {
278
+ in: number;
279
+ out: number;
280
+ } | undefined;
281
+ bias?: {
282
+ x: number;
283
+ y: number;
284
+ } | undefined;
285
+ }>, {
286
+ startSec: number;
287
+ endSec: number;
288
+ focus: {
289
+ mode: "frame-center";
290
+ } | {
291
+ mode: "point";
292
+ x: number;
293
+ y: number;
294
+ } | {
295
+ faceId: string;
296
+ mode: "face";
297
+ shotScale?: "close" | "standard" | "wide" | undefined;
298
+ } | {
299
+ mode: "all-faces";
300
+ } | {
301
+ mode: "active-speaker";
302
+ };
303
+ intent?: string | undefined;
304
+ zoom?: number | undefined;
305
+ ease?: {
306
+ in: number;
307
+ out: number;
308
+ } | undefined;
309
+ bias?: {
310
+ x: number;
311
+ y: number;
312
+ } | undefined;
313
+ }, {
314
+ startSec: number;
315
+ endSec: number;
316
+ focus: {
317
+ mode: "frame-center";
318
+ } | {
319
+ mode: "point";
320
+ x: number;
321
+ y: number;
322
+ } | {
323
+ faceId: string;
324
+ mode: "face";
325
+ shotScale?: "close" | "standard" | "wide" | undefined;
326
+ } | {
327
+ mode: "all-faces";
328
+ } | {
329
+ mode: "active-speaker";
330
+ };
331
+ intent?: string | undefined;
332
+ zoom?: number | undefined;
333
+ ease?: {
334
+ in: number;
335
+ out: number;
336
+ } | undefined;
337
+ bias?: {
338
+ x: number;
339
+ y: number;
340
+ } | undefined;
341
+ }>, "many">;
342
+ }, "strip", z.ZodTypeAny, {
343
+ segments: {
344
+ startSec: number;
345
+ endSec: number;
346
+ focus: {
347
+ mode: "frame-center";
348
+ } | {
349
+ mode: "point";
350
+ x: number;
351
+ y: number;
352
+ } | {
353
+ faceId: string;
354
+ mode: "face";
355
+ shotScale?: "close" | "standard" | "wide" | undefined;
356
+ } | {
357
+ mode: "all-faces";
358
+ } | {
359
+ mode: "active-speaker";
360
+ };
361
+ intent?: string | undefined;
362
+ zoom?: number | undefined;
363
+ ease?: {
364
+ in: number;
365
+ out: number;
366
+ } | undefined;
367
+ bias?: {
368
+ x: number;
369
+ y: number;
370
+ } | undefined;
371
+ }[];
372
+ }, {
373
+ segments: {
374
+ startSec: number;
375
+ endSec: number;
376
+ focus: {
377
+ mode: "frame-center";
378
+ } | {
379
+ mode: "point";
380
+ x: number;
381
+ y: number;
382
+ } | {
383
+ faceId: string;
384
+ mode: "face";
385
+ shotScale?: "close" | "standard" | "wide" | undefined;
386
+ } | {
387
+ mode: "all-faces";
388
+ } | {
389
+ mode: "active-speaker";
390
+ };
391
+ intent?: string | undefined;
392
+ zoom?: number | undefined;
393
+ ease?: {
394
+ in: number;
395
+ out: number;
396
+ } | undefined;
397
+ bias?: {
398
+ x: number;
399
+ y: number;
400
+ } | undefined;
401
+ }[];
402
+ }>>;
403
+ }, "strip", z.ZodTypeAny, {
404
+ kind: "media";
405
+ mediaId: string & {
406
+ __tableName: "mediaItems";
407
+ };
408
+ trim?: {
409
+ start: number;
410
+ end: number;
411
+ } | undefined;
412
+ anchor?: {
413
+ clipId: string;
414
+ offsetMs: number;
415
+ } | undefined;
416
+ reframe?: {
417
+ segments: {
418
+ startSec: number;
419
+ endSec: number;
420
+ focus: {
421
+ mode: "frame-center";
422
+ } | {
423
+ mode: "point";
424
+ x: number;
425
+ y: number;
426
+ } | {
427
+ faceId: string;
428
+ mode: "face";
429
+ shotScale?: "close" | "standard" | "wide" | undefined;
430
+ } | {
431
+ mode: "all-faces";
432
+ } | {
433
+ mode: "active-speaker";
434
+ };
435
+ intent?: string | undefined;
436
+ zoom?: number | undefined;
437
+ ease?: {
438
+ in: number;
439
+ out: number;
440
+ } | undefined;
441
+ bias?: {
442
+ x: number;
443
+ y: number;
444
+ } | undefined;
445
+ }[];
446
+ } | undefined;
447
+ kenBurns?: "in" | "out" | "pan-l" | "pan-r" | "none" | undefined;
448
+ excludedRanges?: {
449
+ start: number;
450
+ end: number;
451
+ reason?: string | undefined;
452
+ }[] | undefined;
453
+ volume?: number | undefined;
454
+ muted?: boolean | undefined;
455
+ playbackRate?: number | undefined;
456
+ sync?: "video" | "independent" | undefined;
457
+ volumeDb?: number | undefined;
458
+ fadeInMs?: number | undefined;
459
+ fadeOutMs?: number | undefined;
460
+ loop?: boolean | undefined;
461
+ audioRole?: "sfx" | "music" | "vo" | "ambience" | undefined;
462
+ duck?: {
463
+ duckDb: number;
464
+ attackMs: number;
465
+ releaseMs: number;
466
+ windows?: {
467
+ startMs: number;
468
+ endMs: number;
469
+ }[] | undefined;
470
+ } | undefined;
471
+ }, {
472
+ kind: "media";
473
+ mediaId: string & {
474
+ __tableName: "mediaItems";
475
+ };
476
+ trim?: {
477
+ start: number;
478
+ end: number;
479
+ } | undefined;
480
+ anchor?: {
481
+ clipId: string;
482
+ offsetMs: number;
483
+ } | undefined;
484
+ reframe?: {
485
+ segments: {
486
+ startSec: number;
487
+ endSec: number;
488
+ focus: {
489
+ mode: "frame-center";
490
+ } | {
491
+ mode: "point";
492
+ x: number;
493
+ y: number;
494
+ } | {
495
+ faceId: string;
496
+ mode: "face";
497
+ shotScale?: "close" | "standard" | "wide" | undefined;
498
+ } | {
499
+ mode: "all-faces";
500
+ } | {
501
+ mode: "active-speaker";
502
+ };
503
+ intent?: string | undefined;
504
+ zoom?: number | undefined;
505
+ ease?: {
506
+ in: number;
507
+ out: number;
508
+ } | undefined;
509
+ bias?: {
510
+ x: number;
511
+ y: number;
512
+ } | undefined;
513
+ }[];
514
+ } | undefined;
515
+ kenBurns?: "in" | "out" | "pan-l" | "pan-r" | "none" | undefined;
516
+ excludedRanges?: {
517
+ start: number;
518
+ end: number;
519
+ reason?: string | undefined;
520
+ }[] | undefined;
521
+ volume?: number | undefined;
522
+ muted?: boolean | undefined;
523
+ playbackRate?: number | undefined;
524
+ sync?: "video" | "independent" | undefined;
525
+ volumeDb?: number | undefined;
526
+ fadeInMs?: number | undefined;
527
+ fadeOutMs?: number | undefined;
528
+ loop?: boolean | undefined;
529
+ audioRole?: "sfx" | "music" | "vo" | "ambience" | undefined;
530
+ duck?: {
531
+ duckDb: number;
532
+ attackMs: number;
533
+ releaseMs: number;
534
+ windows?: {
535
+ startMs: number;
536
+ endMs: number;
537
+ }[] | undefined;
538
+ } | undefined;
539
+ }>, z.ZodObject<{
540
+ kind: z.ZodLiteral<"component">;
541
+ componentId: z.ZodString;
542
+ props: z.ZodRecord<z.ZodString, z.ZodUnknown>;
543
+ zPlane: z.ZodOptional<z.ZodEnum<["front", "behind-subject"]>>;
544
+ }, "strip", z.ZodTypeAny, {
545
+ kind: "component";
546
+ componentId: string;
547
+ props: Record<string, unknown>;
548
+ zPlane?: "front" | "behind-subject" | undefined;
549
+ }, {
550
+ kind: "component";
551
+ componentId: string;
552
+ props: Record<string, unknown>;
553
+ zPlane?: "front" | "behind-subject" | undefined;
554
+ }>, z.ZodObject<{
555
+ kind: z.ZodLiteral<"overlay">;
556
+ primitiveId: z.ZodString;
557
+ params: z.ZodRecord<z.ZodString, z.ZodUnknown>;
558
+ zPlane: z.ZodOptional<z.ZodEnum<["front", "behind-subject"]>>;
559
+ anchor: z.ZodOptional<z.ZodObject<{
560
+ space: z.ZodLiteral<"scene">;
561
+ x: z.ZodNumber;
562
+ y: z.ZodNumber;
563
+ }, "strip", z.ZodTypeAny, {
564
+ x: number;
565
+ y: number;
566
+ space: "scene";
567
+ }, {
568
+ x: number;
569
+ y: number;
570
+ space: "scene";
571
+ }>>;
572
+ parallax: z.ZodOptional<z.ZodNumber>;
573
+ }, "strip", z.ZodTypeAny, {
574
+ kind: "overlay";
575
+ params: Record<string, unknown>;
576
+ primitiveId: string;
577
+ anchor?: {
578
+ x: number;
579
+ y: number;
580
+ space: "scene";
581
+ } | undefined;
582
+ zPlane?: "front" | "behind-subject" | undefined;
583
+ parallax?: number | undefined;
584
+ }, {
585
+ kind: "overlay";
586
+ params: Record<string, unknown>;
587
+ primitiveId: string;
588
+ anchor?: {
589
+ x: number;
590
+ y: number;
591
+ space: "scene";
592
+ } | undefined;
593
+ zPlane?: "front" | "behind-subject" | undefined;
594
+ parallax?: number | undefined;
595
+ }>, z.ZodObject<{
596
+ kind: z.ZodLiteral<"effect">;
597
+ primitiveId: z.ZodString;
598
+ params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
599
+ }, "strip", z.ZodTypeAny, {
600
+ kind: "effect";
601
+ primitiveId: string;
602
+ params?: Record<string, unknown> | undefined;
603
+ }, {
604
+ kind: "effect";
605
+ primitiveId: string;
606
+ params?: Record<string, unknown> | undefined;
607
+ }>, z.ZodObject<{
608
+ kind: z.ZodLiteral<"alpha-layer">;
609
+ componentId: z.ZodString;
610
+ props: z.ZodRecord<z.ZodString, z.ZodUnknown>;
611
+ zPlane: z.ZodOptional<z.ZodEnum<["front", "behind-subject"]>>;
612
+ }, "strip", z.ZodTypeAny, {
613
+ kind: "alpha-layer";
614
+ componentId: string;
615
+ props: Record<string, unknown>;
616
+ zPlane?: "front" | "behind-subject" | undefined;
617
+ }, {
618
+ kind: "alpha-layer";
619
+ componentId: string;
620
+ props: Record<string, unknown>;
621
+ zPlane?: "front" | "behind-subject" | undefined;
622
+ }>, z.ZodObject<{
623
+ kind: z.ZodLiteral<"card">;
624
+ html: z.ZodString;
625
+ tokens: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
626
+ zPlane: z.ZodOptional<z.ZodLiteral<"front">>;
627
+ }, "strip", z.ZodTypeAny, {
628
+ kind: "card";
629
+ html: string;
630
+ zPlane?: "front" | undefined;
631
+ tokens?: Record<string, string> | undefined;
632
+ }, {
633
+ kind: "card";
634
+ html: string;
635
+ zPlane?: "front" | undefined;
636
+ tokens?: Record<string, string> | undefined;
637
+ }>, z.ZodObject<{
638
+ kind: z.ZodLiteral<"composition">;
639
+ compositionId: z.ZodString;
640
+ trim: z.ZodOptional<z.ZodObject<{
641
+ start: z.ZodNumber;
642
+ end: z.ZodNumber;
643
+ }, "strip", z.ZodTypeAny, {
644
+ start: number;
645
+ end: number;
646
+ }, {
647
+ start: number;
648
+ end: number;
649
+ }>>;
650
+ }, "strict", z.ZodTypeAny, {
651
+ kind: "composition";
652
+ compositionId: string;
653
+ trim?: {
654
+ start: number;
655
+ end: number;
656
+ } | undefined;
657
+ }, {
658
+ kind: "composition";
659
+ compositionId: string;
660
+ trim?: {
661
+ start: number;
662
+ end: number;
663
+ } | undefined;
664
+ }>]>;
665
+ kind: z.ZodOptional<z.ZodEnum<["video", "audio", "image", "overlay", "effect"]>>;
666
+ opacity: z.ZodOptional<z.ZodNumber>;
667
+ scale: z.ZodOptional<z.ZodNumber>;
668
+ rotation: z.ZodOptional<z.ZodNumber>;
669
+ position: z.ZodOptional<z.ZodObject<{
670
+ x: z.ZodNumber;
671
+ y: z.ZodNumber;
672
+ }, "strip", z.ZodTypeAny, {
673
+ x: number;
674
+ y: number;
675
+ }, {
676
+ x: number;
677
+ y: number;
678
+ }>>;
679
+ region: z.ZodOptional<z.ZodObject<{
680
+ x: z.ZodNumber;
681
+ y: z.ZodNumber;
682
+ w: z.ZodNumber;
683
+ h: z.ZodNumber;
684
+ }, "strip", z.ZodTypeAny, {
685
+ x: number;
686
+ y: number;
687
+ w: number;
688
+ h: number;
689
+ }, {
690
+ x: number;
691
+ y: number;
692
+ w: number;
693
+ h: number;
694
+ }>>;
695
+ fit: z.ZodOptional<z.ZodEnum<["cover", "contain"]>>;
696
+ effects: z.ZodOptional<z.ZodArray<z.ZodObject<{
697
+ primitiveId: z.ZodString;
698
+ params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
699
+ }, "strip", z.ZodTypeAny, {
700
+ primitiveId: string;
701
+ params?: Record<string, unknown> | undefined;
702
+ }, {
703
+ primitiveId: string;
704
+ params?: Record<string, unknown> | undefined;
705
+ }>, "many">>;
706
+ transitionIn: z.ZodOptional<z.ZodObject<{
707
+ type: z.ZodString;
708
+ duration: z.ZodNumber;
709
+ }, "strip", z.ZodTypeAny, {
710
+ type: string;
711
+ duration: number;
712
+ }, {
713
+ type: string;
714
+ duration: number;
715
+ }>>;
716
+ linkGroupId: z.ZodOptional<z.ZodString>;
717
+ animate: z.ZodOptional<z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodObject<{
718
+ time: z.ZodNumber;
719
+ value: z.ZodNumber;
720
+ easing: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["linear", "ease", "easeIn", "easeOut", "easeInOut"]>, z.ZodObject<{
721
+ cubicBezier: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>;
722
+ }, "strict", z.ZodTypeAny, {
723
+ cubicBezier: [number, number, number, number];
724
+ }, {
725
+ cubicBezier: [number, number, number, number];
726
+ }>]>>;
727
+ }, "strict", z.ZodTypeAny, {
728
+ value: number;
729
+ time: number;
730
+ easing?: "ease" | "linear" | "easeIn" | "easeOut" | "easeInOut" | {
731
+ cubicBezier: [number, number, number, number];
732
+ } | undefined;
733
+ }, {
734
+ value: number;
735
+ time: number;
736
+ easing?: "ease" | "linear" | "easeIn" | "easeOut" | "easeInOut" | {
737
+ cubicBezier: [number, number, number, number];
738
+ } | undefined;
739
+ }>, "many">>, Record<string, {
740
+ value: number;
741
+ time: number;
742
+ easing?: "ease" | "linear" | "easeIn" | "easeOut" | "easeInOut" | {
743
+ cubicBezier: [number, number, number, number];
744
+ } | undefined;
745
+ }[]>, Record<string, {
746
+ value: number;
747
+ time: number;
748
+ easing?: "ease" | "linear" | "easeIn" | "easeOut" | "easeInOut" | {
749
+ cubicBezier: [number, number, number, number];
750
+ } | undefined;
751
+ }[]>>>;
752
+ }, "strict", z.ZodTypeAny, {
753
+ id: string;
754
+ duration: number;
755
+ startTime: number;
756
+ source: {
757
+ kind: "media";
758
+ mediaId: string & {
759
+ __tableName: "mediaItems";
760
+ };
761
+ trim?: {
762
+ start: number;
763
+ end: number;
764
+ } | undefined;
765
+ anchor?: {
766
+ clipId: string;
767
+ offsetMs: number;
768
+ } | undefined;
769
+ reframe?: {
770
+ segments: {
771
+ startSec: number;
772
+ endSec: number;
773
+ focus: {
774
+ mode: "frame-center";
775
+ } | {
776
+ mode: "point";
777
+ x: number;
778
+ y: number;
779
+ } | {
780
+ faceId: string;
781
+ mode: "face";
782
+ shotScale?: "close" | "standard" | "wide" | undefined;
783
+ } | {
784
+ mode: "all-faces";
785
+ } | {
786
+ mode: "active-speaker";
787
+ };
788
+ intent?: string | undefined;
789
+ zoom?: number | undefined;
790
+ ease?: {
791
+ in: number;
792
+ out: number;
793
+ } | undefined;
794
+ bias?: {
795
+ x: number;
796
+ y: number;
797
+ } | undefined;
798
+ }[];
799
+ } | undefined;
800
+ kenBurns?: "in" | "out" | "pan-l" | "pan-r" | "none" | undefined;
801
+ excludedRanges?: {
802
+ start: number;
803
+ end: number;
804
+ reason?: string | undefined;
805
+ }[] | undefined;
806
+ volume?: number | undefined;
807
+ muted?: boolean | undefined;
808
+ playbackRate?: number | undefined;
809
+ sync?: "video" | "independent" | undefined;
810
+ volumeDb?: number | undefined;
811
+ fadeInMs?: number | undefined;
812
+ fadeOutMs?: number | undefined;
813
+ loop?: boolean | undefined;
814
+ audioRole?: "sfx" | "music" | "vo" | "ambience" | undefined;
815
+ duck?: {
816
+ duckDb: number;
817
+ attackMs: number;
818
+ releaseMs: number;
819
+ windows?: {
820
+ startMs: number;
821
+ endMs: number;
822
+ }[] | undefined;
823
+ } | undefined;
824
+ } | {
825
+ kind: "component";
826
+ componentId: string;
827
+ props: Record<string, unknown>;
828
+ zPlane?: "front" | "behind-subject" | undefined;
829
+ } | {
830
+ kind: "overlay";
831
+ params: Record<string, unknown>;
832
+ primitiveId: string;
833
+ anchor?: {
834
+ x: number;
835
+ y: number;
836
+ space: "scene";
837
+ } | undefined;
838
+ zPlane?: "front" | "behind-subject" | undefined;
839
+ parallax?: number | undefined;
840
+ } | {
841
+ kind: "effect";
842
+ primitiveId: string;
843
+ params?: Record<string, unknown> | undefined;
844
+ } | {
845
+ kind: "alpha-layer";
846
+ componentId: string;
847
+ props: Record<string, unknown>;
848
+ zPlane?: "front" | "behind-subject" | undefined;
849
+ } | {
850
+ kind: "card";
851
+ html: string;
852
+ zPlane?: "front" | undefined;
853
+ tokens?: Record<string, string> | undefined;
854
+ } | {
855
+ kind: "composition";
856
+ compositionId: string;
857
+ trim?: {
858
+ start: number;
859
+ end: number;
860
+ } | undefined;
861
+ };
862
+ kind?: "overlay" | "video" | "effect" | "audio" | "image" | undefined;
863
+ opacity?: number | undefined;
864
+ scale?: number | undefined;
865
+ rotation?: number | undefined;
866
+ position?: {
867
+ x: number;
868
+ y: number;
869
+ } | undefined;
870
+ region?: {
871
+ x: number;
872
+ y: number;
873
+ w: number;
874
+ h: number;
875
+ } | undefined;
876
+ fit?: "cover" | "contain" | undefined;
877
+ effects?: {
878
+ primitiveId: string;
879
+ params?: Record<string, unknown> | undefined;
880
+ }[] | undefined;
881
+ transitionIn?: {
882
+ type: string;
883
+ duration: number;
884
+ } | undefined;
885
+ linkGroupId?: string | undefined;
886
+ animate?: Record<string, {
887
+ value: number;
888
+ time: number;
889
+ easing?: "ease" | "linear" | "easeIn" | "easeOut" | "easeInOut" | {
890
+ cubicBezier: [number, number, number, number];
891
+ } | undefined;
892
+ }[]> | undefined;
893
+ }, {
894
+ id: string;
895
+ duration: number;
896
+ startTime: number;
897
+ source: {
898
+ kind: "media";
899
+ mediaId: string & {
900
+ __tableName: "mediaItems";
901
+ };
902
+ trim?: {
903
+ start: number;
904
+ end: number;
905
+ } | undefined;
906
+ anchor?: {
907
+ clipId: string;
908
+ offsetMs: number;
909
+ } | undefined;
910
+ reframe?: {
911
+ segments: {
912
+ startSec: number;
913
+ endSec: number;
914
+ focus: {
915
+ mode: "frame-center";
916
+ } | {
917
+ mode: "point";
918
+ x: number;
919
+ y: number;
920
+ } | {
921
+ faceId: string;
922
+ mode: "face";
923
+ shotScale?: "close" | "standard" | "wide" | undefined;
924
+ } | {
925
+ mode: "all-faces";
926
+ } | {
927
+ mode: "active-speaker";
928
+ };
929
+ intent?: string | undefined;
930
+ zoom?: number | undefined;
931
+ ease?: {
932
+ in: number;
933
+ out: number;
934
+ } | undefined;
935
+ bias?: {
936
+ x: number;
937
+ y: number;
938
+ } | undefined;
939
+ }[];
940
+ } | undefined;
941
+ kenBurns?: "in" | "out" | "pan-l" | "pan-r" | "none" | undefined;
942
+ excludedRanges?: {
943
+ start: number;
944
+ end: number;
945
+ reason?: string | undefined;
946
+ }[] | undefined;
947
+ volume?: number | undefined;
948
+ muted?: boolean | undefined;
949
+ playbackRate?: number | undefined;
950
+ sync?: "video" | "independent" | undefined;
951
+ volumeDb?: number | undefined;
952
+ fadeInMs?: number | undefined;
953
+ fadeOutMs?: number | undefined;
954
+ loop?: boolean | undefined;
955
+ audioRole?: "sfx" | "music" | "vo" | "ambience" | undefined;
956
+ duck?: {
957
+ duckDb: number;
958
+ attackMs: number;
959
+ releaseMs: number;
960
+ windows?: {
961
+ startMs: number;
962
+ endMs: number;
963
+ }[] | undefined;
964
+ } | undefined;
965
+ } | {
966
+ kind: "component";
967
+ componentId: string;
968
+ props: Record<string, unknown>;
969
+ zPlane?: "front" | "behind-subject" | undefined;
970
+ } | {
971
+ kind: "overlay";
972
+ params: Record<string, unknown>;
973
+ primitiveId: string;
974
+ anchor?: {
975
+ x: number;
976
+ y: number;
977
+ space: "scene";
978
+ } | undefined;
979
+ zPlane?: "front" | "behind-subject" | undefined;
980
+ parallax?: number | undefined;
981
+ } | {
982
+ kind: "effect";
983
+ primitiveId: string;
984
+ params?: Record<string, unknown> | undefined;
985
+ } | {
986
+ kind: "alpha-layer";
987
+ componentId: string;
988
+ props: Record<string, unknown>;
989
+ zPlane?: "front" | "behind-subject" | undefined;
990
+ } | {
991
+ kind: "card";
992
+ html: string;
993
+ zPlane?: "front" | undefined;
994
+ tokens?: Record<string, string> | undefined;
995
+ } | {
996
+ kind: "composition";
997
+ compositionId: string;
998
+ trim?: {
999
+ start: number;
1000
+ end: number;
1001
+ } | undefined;
1002
+ };
1003
+ kind?: "overlay" | "video" | "effect" | "audio" | "image" | undefined;
1004
+ opacity?: number | undefined;
1005
+ scale?: number | undefined;
1006
+ rotation?: number | undefined;
1007
+ position?: {
1008
+ x: number;
1009
+ y: number;
1010
+ } | undefined;
1011
+ region?: {
1012
+ x: number;
1013
+ y: number;
1014
+ w: number;
1015
+ h: number;
1016
+ } | undefined;
1017
+ fit?: "cover" | "contain" | undefined;
1018
+ effects?: {
1019
+ primitiveId: string;
1020
+ params?: Record<string, unknown> | undefined;
1021
+ }[] | undefined;
1022
+ transitionIn?: {
1023
+ type: string;
1024
+ duration: number;
1025
+ } | undefined;
1026
+ linkGroupId?: string | undefined;
1027
+ animate?: Record<string, {
1028
+ value: number;
1029
+ time: number;
1030
+ easing?: "ease" | "linear" | "easeIn" | "easeOut" | "easeInOut" | {
1031
+ cubicBezier: [number, number, number, number];
1032
+ } | undefined;
1033
+ }[]> | undefined;
1034
+ }>;
1035
+ trackId: z.ZodOptional<z.ZodString>;
1036
+ newTrack: z.ZodOptional<z.ZodBoolean>;
1037
+ newTrackId: z.ZodOptional<z.ZodString>;
1038
+ }, "strict", z.ZodTypeAny, {
1039
+ type: "clip.add";
1040
+ clip: {
1041
+ id: string;
1042
+ duration: number;
1043
+ startTime: number;
1044
+ source: {
1045
+ kind: "media";
1046
+ mediaId: string & {
1047
+ __tableName: "mediaItems";
1048
+ };
1049
+ trim?: {
1050
+ start: number;
1051
+ end: number;
1052
+ } | undefined;
1053
+ anchor?: {
1054
+ clipId: string;
1055
+ offsetMs: number;
1056
+ } | undefined;
1057
+ reframe?: {
1058
+ segments: {
1059
+ startSec: number;
1060
+ endSec: number;
1061
+ focus: {
1062
+ mode: "frame-center";
1063
+ } | {
1064
+ mode: "point";
1065
+ x: number;
1066
+ y: number;
1067
+ } | {
1068
+ faceId: string;
1069
+ mode: "face";
1070
+ shotScale?: "close" | "standard" | "wide" | undefined;
1071
+ } | {
1072
+ mode: "all-faces";
1073
+ } | {
1074
+ mode: "active-speaker";
1075
+ };
1076
+ intent?: string | undefined;
1077
+ zoom?: number | undefined;
1078
+ ease?: {
1079
+ in: number;
1080
+ out: number;
1081
+ } | undefined;
1082
+ bias?: {
1083
+ x: number;
1084
+ y: number;
1085
+ } | undefined;
1086
+ }[];
1087
+ } | undefined;
1088
+ kenBurns?: "in" | "out" | "pan-l" | "pan-r" | "none" | undefined;
1089
+ excludedRanges?: {
1090
+ start: number;
1091
+ end: number;
1092
+ reason?: string | undefined;
1093
+ }[] | undefined;
1094
+ volume?: number | undefined;
1095
+ muted?: boolean | undefined;
1096
+ playbackRate?: number | undefined;
1097
+ sync?: "video" | "independent" | undefined;
1098
+ volumeDb?: number | undefined;
1099
+ fadeInMs?: number | undefined;
1100
+ fadeOutMs?: number | undefined;
1101
+ loop?: boolean | undefined;
1102
+ audioRole?: "sfx" | "music" | "vo" | "ambience" | undefined;
1103
+ duck?: {
1104
+ duckDb: number;
1105
+ attackMs: number;
1106
+ releaseMs: number;
1107
+ windows?: {
1108
+ startMs: number;
1109
+ endMs: number;
1110
+ }[] | undefined;
1111
+ } | undefined;
1112
+ } | {
1113
+ kind: "component";
1114
+ componentId: string;
1115
+ props: Record<string, unknown>;
1116
+ zPlane?: "front" | "behind-subject" | undefined;
1117
+ } | {
1118
+ kind: "overlay";
1119
+ params: Record<string, unknown>;
1120
+ primitiveId: string;
1121
+ anchor?: {
1122
+ x: number;
1123
+ y: number;
1124
+ space: "scene";
1125
+ } | undefined;
1126
+ zPlane?: "front" | "behind-subject" | undefined;
1127
+ parallax?: number | undefined;
1128
+ } | {
1129
+ kind: "effect";
1130
+ primitiveId: string;
1131
+ params?: Record<string, unknown> | undefined;
1132
+ } | {
1133
+ kind: "alpha-layer";
1134
+ componentId: string;
1135
+ props: Record<string, unknown>;
1136
+ zPlane?: "front" | "behind-subject" | undefined;
1137
+ } | {
1138
+ kind: "card";
1139
+ html: string;
1140
+ zPlane?: "front" | undefined;
1141
+ tokens?: Record<string, string> | undefined;
1142
+ } | {
1143
+ kind: "composition";
1144
+ compositionId: string;
1145
+ trim?: {
1146
+ start: number;
1147
+ end: number;
1148
+ } | undefined;
1149
+ };
1150
+ kind?: "overlay" | "video" | "effect" | "audio" | "image" | undefined;
1151
+ opacity?: number | undefined;
1152
+ scale?: number | undefined;
1153
+ rotation?: number | undefined;
1154
+ position?: {
1155
+ x: number;
1156
+ y: number;
1157
+ } | undefined;
1158
+ region?: {
1159
+ x: number;
1160
+ y: number;
1161
+ w: number;
1162
+ h: number;
1163
+ } | undefined;
1164
+ fit?: "cover" | "contain" | undefined;
1165
+ effects?: {
1166
+ primitiveId: string;
1167
+ params?: Record<string, unknown> | undefined;
1168
+ }[] | undefined;
1169
+ transitionIn?: {
1170
+ type: string;
1171
+ duration: number;
1172
+ } | undefined;
1173
+ linkGroupId?: string | undefined;
1174
+ animate?: Record<string, {
1175
+ value: number;
1176
+ time: number;
1177
+ easing?: "ease" | "linear" | "easeIn" | "easeOut" | "easeInOut" | {
1178
+ cubicBezier: [number, number, number, number];
1179
+ } | undefined;
1180
+ }[]> | undefined;
1181
+ };
1182
+ trackId?: string | undefined;
1183
+ newTrack?: boolean | undefined;
1184
+ newTrackId?: string | undefined;
1185
+ }, {
1186
+ type: "clip.add";
1187
+ clip: {
1188
+ id: string;
1189
+ duration: number;
1190
+ startTime: number;
1191
+ source: {
1192
+ kind: "media";
1193
+ mediaId: string & {
1194
+ __tableName: "mediaItems";
1195
+ };
1196
+ trim?: {
1197
+ start: number;
1198
+ end: number;
1199
+ } | undefined;
1200
+ anchor?: {
1201
+ clipId: string;
1202
+ offsetMs: number;
1203
+ } | undefined;
1204
+ reframe?: {
1205
+ segments: {
1206
+ startSec: number;
1207
+ endSec: number;
1208
+ focus: {
1209
+ mode: "frame-center";
1210
+ } | {
1211
+ mode: "point";
1212
+ x: number;
1213
+ y: number;
1214
+ } | {
1215
+ faceId: string;
1216
+ mode: "face";
1217
+ shotScale?: "close" | "standard" | "wide" | undefined;
1218
+ } | {
1219
+ mode: "all-faces";
1220
+ } | {
1221
+ mode: "active-speaker";
1222
+ };
1223
+ intent?: string | undefined;
1224
+ zoom?: number | undefined;
1225
+ ease?: {
1226
+ in: number;
1227
+ out: number;
1228
+ } | undefined;
1229
+ bias?: {
1230
+ x: number;
1231
+ y: number;
1232
+ } | undefined;
1233
+ }[];
1234
+ } | undefined;
1235
+ kenBurns?: "in" | "out" | "pan-l" | "pan-r" | "none" | undefined;
1236
+ excludedRanges?: {
1237
+ start: number;
1238
+ end: number;
1239
+ reason?: string | undefined;
1240
+ }[] | undefined;
1241
+ volume?: number | undefined;
1242
+ muted?: boolean | undefined;
1243
+ playbackRate?: number | undefined;
1244
+ sync?: "video" | "independent" | undefined;
1245
+ volumeDb?: number | undefined;
1246
+ fadeInMs?: number | undefined;
1247
+ fadeOutMs?: number | undefined;
1248
+ loop?: boolean | undefined;
1249
+ audioRole?: "sfx" | "music" | "vo" | "ambience" | undefined;
1250
+ duck?: {
1251
+ duckDb: number;
1252
+ attackMs: number;
1253
+ releaseMs: number;
1254
+ windows?: {
1255
+ startMs: number;
1256
+ endMs: number;
1257
+ }[] | undefined;
1258
+ } | undefined;
1259
+ } | {
1260
+ kind: "component";
1261
+ componentId: string;
1262
+ props: Record<string, unknown>;
1263
+ zPlane?: "front" | "behind-subject" | undefined;
1264
+ } | {
1265
+ kind: "overlay";
1266
+ params: Record<string, unknown>;
1267
+ primitiveId: string;
1268
+ anchor?: {
1269
+ x: number;
1270
+ y: number;
1271
+ space: "scene";
1272
+ } | undefined;
1273
+ zPlane?: "front" | "behind-subject" | undefined;
1274
+ parallax?: number | undefined;
1275
+ } | {
1276
+ kind: "effect";
1277
+ primitiveId: string;
1278
+ params?: Record<string, unknown> | undefined;
1279
+ } | {
1280
+ kind: "alpha-layer";
1281
+ componentId: string;
1282
+ props: Record<string, unknown>;
1283
+ zPlane?: "front" | "behind-subject" | undefined;
1284
+ } | {
1285
+ kind: "card";
1286
+ html: string;
1287
+ zPlane?: "front" | undefined;
1288
+ tokens?: Record<string, string> | undefined;
1289
+ } | {
1290
+ kind: "composition";
1291
+ compositionId: string;
1292
+ trim?: {
1293
+ start: number;
1294
+ end: number;
1295
+ } | undefined;
1296
+ };
1297
+ kind?: "overlay" | "video" | "effect" | "audio" | "image" | undefined;
1298
+ opacity?: number | undefined;
1299
+ scale?: number | undefined;
1300
+ rotation?: number | undefined;
1301
+ position?: {
1302
+ x: number;
1303
+ y: number;
1304
+ } | undefined;
1305
+ region?: {
1306
+ x: number;
1307
+ y: number;
1308
+ w: number;
1309
+ h: number;
1310
+ } | undefined;
1311
+ fit?: "cover" | "contain" | undefined;
1312
+ effects?: {
1313
+ primitiveId: string;
1314
+ params?: Record<string, unknown> | undefined;
1315
+ }[] | undefined;
1316
+ transitionIn?: {
1317
+ type: string;
1318
+ duration: number;
1319
+ } | undefined;
1320
+ linkGroupId?: string | undefined;
1321
+ animate?: Record<string, {
1322
+ value: number;
1323
+ time: number;
1324
+ easing?: "ease" | "linear" | "easeIn" | "easeOut" | "easeInOut" | {
1325
+ cubicBezier: [number, number, number, number];
1326
+ } | undefined;
1327
+ }[]> | undefined;
1328
+ };
1329
+ trackId?: string | undefined;
1330
+ newTrack?: boolean | undefined;
1331
+ newTrackId?: string | undefined;
1332
+ }>, z.ZodObject<{
1333
+ type: z.ZodLiteral<"clip.remove">;
1334
+ clipId: z.ZodString;
1335
+ }, "strict", z.ZodTypeAny, {
1336
+ type: "clip.remove";
1337
+ clipId: string;
1338
+ }, {
1339
+ type: "clip.remove";
1340
+ clipId: string;
1341
+ }>, z.ZodObject<{
1342
+ type: z.ZodLiteral<"clip.update">;
1343
+ clipId: z.ZodString;
1344
+ patch: z.ZodObject<{
1345
+ id: z.ZodOptional<z.ZodString>;
1346
+ startTime: z.ZodOptional<z.ZodNumber>;
1347
+ duration: z.ZodOptional<z.ZodNumber>;
1348
+ source: z.ZodOptional<z.ZodDiscriminatedUnion<"kind", [z.ZodObject<{
1349
+ kind: z.ZodLiteral<"media">;
1350
+ mediaId: import("convex-helpers/server/zod3").Zid<"mediaItems">;
1351
+ trim: z.ZodOptional<z.ZodObject<{
1352
+ start: z.ZodNumber;
1353
+ end: z.ZodNumber;
1354
+ }, "strip", z.ZodTypeAny, {
1355
+ start: number;
1356
+ end: number;
1357
+ }, {
1358
+ start: number;
1359
+ end: number;
1360
+ }>>;
1361
+ excludedRanges: z.ZodOptional<z.ZodArray<z.ZodObject<{
1362
+ start: z.ZodNumber;
1363
+ end: z.ZodNumber;
1364
+ reason: z.ZodOptional<z.ZodString>;
1365
+ }, "strip", z.ZodTypeAny, {
1366
+ start: number;
1367
+ end: number;
1368
+ reason?: string | undefined;
1369
+ }, {
1370
+ start: number;
1371
+ end: number;
1372
+ reason?: string | undefined;
1373
+ }>, "many">>;
1374
+ volume: z.ZodOptional<z.ZodNumber>;
1375
+ muted: z.ZodOptional<z.ZodBoolean>;
1376
+ playbackRate: z.ZodOptional<z.ZodNumber>;
1377
+ sync: z.ZodOptional<z.ZodEnum<["video", "independent"]>>;
1378
+ kenBurns: z.ZodOptional<z.ZodEnum<["in", "out", "pan-l", "pan-r", "none"]>>;
1379
+ volumeDb: z.ZodOptional<z.ZodNumber>;
1380
+ fadeInMs: z.ZodOptional<z.ZodNumber>;
1381
+ fadeOutMs: z.ZodOptional<z.ZodNumber>;
1382
+ loop: z.ZodOptional<z.ZodBoolean>;
1383
+ audioRole: z.ZodOptional<z.ZodEnum<["sfx", "music", "vo", "ambience"]>>;
1384
+ duck: z.ZodOptional<z.ZodObject<{
1385
+ duckDb: z.ZodNumber;
1386
+ attackMs: z.ZodNumber;
1387
+ releaseMs: z.ZodNumber;
1388
+ windows: z.ZodOptional<z.ZodArray<z.ZodObject<{
1389
+ startMs: z.ZodNumber;
1390
+ endMs: z.ZodNumber;
1391
+ }, "strip", z.ZodTypeAny, {
1392
+ startMs: number;
1393
+ endMs: number;
1394
+ }, {
1395
+ startMs: number;
1396
+ endMs: number;
1397
+ }>, "many">>;
1398
+ }, "strip", z.ZodTypeAny, {
1399
+ duckDb: number;
1400
+ attackMs: number;
1401
+ releaseMs: number;
1402
+ windows?: {
1403
+ startMs: number;
1404
+ endMs: number;
1405
+ }[] | undefined;
1406
+ }, {
1407
+ duckDb: number;
1408
+ attackMs: number;
1409
+ releaseMs: number;
1410
+ windows?: {
1411
+ startMs: number;
1412
+ endMs: number;
1413
+ }[] | undefined;
1414
+ }>>;
1415
+ anchor: z.ZodOptional<z.ZodObject<{
1416
+ clipId: z.ZodString;
1417
+ offsetMs: z.ZodNumber;
1418
+ }, "strip", z.ZodTypeAny, {
1419
+ clipId: string;
1420
+ offsetMs: number;
1421
+ }, {
1422
+ clipId: string;
1423
+ offsetMs: number;
1424
+ }>>;
1425
+ reframe: z.ZodOptional<z.ZodObject<{
1426
+ segments: z.ZodArray<z.ZodEffects<z.ZodObject<{
1427
+ startSec: z.ZodNumber;
1428
+ endSec: z.ZodNumber;
1429
+ focus: z.ZodDiscriminatedUnion<"mode", [z.ZodObject<{
1430
+ mode: z.ZodLiteral<"frame-center">;
1431
+ }, "strip", z.ZodTypeAny, {
1432
+ mode: "frame-center";
1433
+ }, {
1434
+ mode: "frame-center";
1435
+ }>, z.ZodObject<{
1436
+ mode: z.ZodLiteral<"point">;
1437
+ x: z.ZodNumber;
1438
+ y: z.ZodNumber;
1439
+ }, "strip", z.ZodTypeAny, {
1440
+ mode: "point";
1441
+ x: number;
1442
+ y: number;
1443
+ }, {
1444
+ mode: "point";
1445
+ x: number;
1446
+ y: number;
1447
+ }>, z.ZodObject<{
1448
+ mode: z.ZodLiteral<"face">;
1449
+ faceId: z.ZodString;
1450
+ shotScale: z.ZodOptional<z.ZodEnum<["close", "standard", "wide"]>>;
1451
+ }, "strip", z.ZodTypeAny, {
1452
+ faceId: string;
1453
+ mode: "face";
1454
+ shotScale?: "close" | "standard" | "wide" | undefined;
1455
+ }, {
1456
+ faceId: string;
1457
+ mode: "face";
1458
+ shotScale?: "close" | "standard" | "wide" | undefined;
1459
+ }>, z.ZodObject<{
1460
+ mode: z.ZodLiteral<"all-faces">;
1461
+ }, "strip", z.ZodTypeAny, {
1462
+ mode: "all-faces";
1463
+ }, {
1464
+ mode: "all-faces";
1465
+ }>, z.ZodObject<{
1466
+ mode: z.ZodLiteral<"active-speaker">;
1467
+ }, "strip", z.ZodTypeAny, {
1468
+ mode: "active-speaker";
1469
+ }, {
1470
+ mode: "active-speaker";
1471
+ }>]>;
1472
+ intent: z.ZodOptional<z.ZodString>;
1473
+ zoom: z.ZodOptional<z.ZodNumber>;
1474
+ ease: z.ZodOptional<z.ZodObject<{
1475
+ in: z.ZodNumber;
1476
+ out: z.ZodNumber;
1477
+ }, "strip", z.ZodTypeAny, {
1478
+ in: number;
1479
+ out: number;
1480
+ }, {
1481
+ in: number;
1482
+ out: number;
1483
+ }>>;
1484
+ bias: z.ZodOptional<z.ZodObject<{
1485
+ x: z.ZodNumber;
1486
+ y: z.ZodNumber;
1487
+ }, "strip", z.ZodTypeAny, {
1488
+ x: number;
1489
+ y: number;
1490
+ }, {
1491
+ x: number;
1492
+ y: number;
1493
+ }>>;
1494
+ }, "strip", z.ZodTypeAny, {
1495
+ startSec: number;
1496
+ endSec: number;
1497
+ focus: {
1498
+ mode: "frame-center";
1499
+ } | {
1500
+ mode: "point";
1501
+ x: number;
1502
+ y: number;
1503
+ } | {
1504
+ faceId: string;
1505
+ mode: "face";
1506
+ shotScale?: "close" | "standard" | "wide" | undefined;
1507
+ } | {
1508
+ mode: "all-faces";
1509
+ } | {
1510
+ mode: "active-speaker";
1511
+ };
1512
+ intent?: string | undefined;
1513
+ zoom?: number | undefined;
1514
+ ease?: {
1515
+ in: number;
1516
+ out: number;
1517
+ } | undefined;
1518
+ bias?: {
1519
+ x: number;
1520
+ y: number;
1521
+ } | undefined;
1522
+ }, {
1523
+ startSec: number;
1524
+ endSec: number;
1525
+ focus: {
1526
+ mode: "frame-center";
1527
+ } | {
1528
+ mode: "point";
1529
+ x: number;
1530
+ y: number;
1531
+ } | {
1532
+ faceId: string;
1533
+ mode: "face";
1534
+ shotScale?: "close" | "standard" | "wide" | undefined;
1535
+ } | {
1536
+ mode: "all-faces";
1537
+ } | {
1538
+ mode: "active-speaker";
1539
+ };
1540
+ intent?: string | undefined;
1541
+ zoom?: number | undefined;
1542
+ ease?: {
1543
+ in: number;
1544
+ out: number;
1545
+ } | undefined;
1546
+ bias?: {
1547
+ x: number;
1548
+ y: number;
1549
+ } | undefined;
1550
+ }>, {
1551
+ startSec: number;
1552
+ endSec: number;
1553
+ focus: {
1554
+ mode: "frame-center";
1555
+ } | {
1556
+ mode: "point";
1557
+ x: number;
1558
+ y: number;
1559
+ } | {
1560
+ faceId: string;
1561
+ mode: "face";
1562
+ shotScale?: "close" | "standard" | "wide" | undefined;
1563
+ } | {
1564
+ mode: "all-faces";
1565
+ } | {
1566
+ mode: "active-speaker";
1567
+ };
1568
+ intent?: string | undefined;
1569
+ zoom?: number | undefined;
1570
+ ease?: {
1571
+ in: number;
1572
+ out: number;
1573
+ } | undefined;
1574
+ bias?: {
1575
+ x: number;
1576
+ y: number;
1577
+ } | undefined;
1578
+ }, {
1579
+ startSec: number;
1580
+ endSec: number;
1581
+ focus: {
1582
+ mode: "frame-center";
1583
+ } | {
1584
+ mode: "point";
1585
+ x: number;
1586
+ y: number;
1587
+ } | {
1588
+ faceId: string;
1589
+ mode: "face";
1590
+ shotScale?: "close" | "standard" | "wide" | undefined;
1591
+ } | {
1592
+ mode: "all-faces";
1593
+ } | {
1594
+ mode: "active-speaker";
1595
+ };
1596
+ intent?: string | undefined;
1597
+ zoom?: number | undefined;
1598
+ ease?: {
1599
+ in: number;
1600
+ out: number;
1601
+ } | undefined;
1602
+ bias?: {
1603
+ x: number;
1604
+ y: number;
1605
+ } | undefined;
1606
+ }>, "many">;
1607
+ }, "strip", z.ZodTypeAny, {
1608
+ segments: {
1609
+ startSec: number;
1610
+ endSec: number;
1611
+ focus: {
1612
+ mode: "frame-center";
1613
+ } | {
1614
+ mode: "point";
1615
+ x: number;
1616
+ y: number;
1617
+ } | {
1618
+ faceId: string;
1619
+ mode: "face";
1620
+ shotScale?: "close" | "standard" | "wide" | undefined;
1621
+ } | {
1622
+ mode: "all-faces";
1623
+ } | {
1624
+ mode: "active-speaker";
1625
+ };
1626
+ intent?: string | undefined;
1627
+ zoom?: number | undefined;
1628
+ ease?: {
1629
+ in: number;
1630
+ out: number;
1631
+ } | undefined;
1632
+ bias?: {
1633
+ x: number;
1634
+ y: number;
1635
+ } | undefined;
1636
+ }[];
1637
+ }, {
1638
+ segments: {
1639
+ startSec: number;
1640
+ endSec: number;
1641
+ focus: {
1642
+ mode: "frame-center";
1643
+ } | {
1644
+ mode: "point";
1645
+ x: number;
1646
+ y: number;
1647
+ } | {
1648
+ faceId: string;
1649
+ mode: "face";
1650
+ shotScale?: "close" | "standard" | "wide" | undefined;
1651
+ } | {
1652
+ mode: "all-faces";
1653
+ } | {
1654
+ mode: "active-speaker";
1655
+ };
1656
+ intent?: string | undefined;
1657
+ zoom?: number | undefined;
1658
+ ease?: {
1659
+ in: number;
1660
+ out: number;
1661
+ } | undefined;
1662
+ bias?: {
1663
+ x: number;
1664
+ y: number;
1665
+ } | undefined;
1666
+ }[];
1667
+ }>>;
1668
+ }, "strip", z.ZodTypeAny, {
1669
+ kind: "media";
1670
+ mediaId: string & {
1671
+ __tableName: "mediaItems";
1672
+ };
1673
+ trim?: {
1674
+ start: number;
1675
+ end: number;
1676
+ } | undefined;
1677
+ anchor?: {
1678
+ clipId: string;
1679
+ offsetMs: number;
1680
+ } | undefined;
1681
+ reframe?: {
1682
+ segments: {
1683
+ startSec: number;
1684
+ endSec: number;
1685
+ focus: {
1686
+ mode: "frame-center";
1687
+ } | {
1688
+ mode: "point";
1689
+ x: number;
1690
+ y: number;
1691
+ } | {
1692
+ faceId: string;
1693
+ mode: "face";
1694
+ shotScale?: "close" | "standard" | "wide" | undefined;
1695
+ } | {
1696
+ mode: "all-faces";
1697
+ } | {
1698
+ mode: "active-speaker";
1699
+ };
1700
+ intent?: string | undefined;
1701
+ zoom?: number | undefined;
1702
+ ease?: {
1703
+ in: number;
1704
+ out: number;
1705
+ } | undefined;
1706
+ bias?: {
1707
+ x: number;
1708
+ y: number;
1709
+ } | undefined;
1710
+ }[];
1711
+ } | undefined;
1712
+ kenBurns?: "in" | "out" | "pan-l" | "pan-r" | "none" | undefined;
1713
+ excludedRanges?: {
1714
+ start: number;
1715
+ end: number;
1716
+ reason?: string | undefined;
1717
+ }[] | undefined;
1718
+ volume?: number | undefined;
1719
+ muted?: boolean | undefined;
1720
+ playbackRate?: number | undefined;
1721
+ sync?: "video" | "independent" | undefined;
1722
+ volumeDb?: number | undefined;
1723
+ fadeInMs?: number | undefined;
1724
+ fadeOutMs?: number | undefined;
1725
+ loop?: boolean | undefined;
1726
+ audioRole?: "sfx" | "music" | "vo" | "ambience" | undefined;
1727
+ duck?: {
1728
+ duckDb: number;
1729
+ attackMs: number;
1730
+ releaseMs: number;
1731
+ windows?: {
1732
+ startMs: number;
1733
+ endMs: number;
1734
+ }[] | undefined;
1735
+ } | undefined;
1736
+ }, {
1737
+ kind: "media";
1738
+ mediaId: string & {
1739
+ __tableName: "mediaItems";
1740
+ };
1741
+ trim?: {
1742
+ start: number;
1743
+ end: number;
1744
+ } | undefined;
1745
+ anchor?: {
1746
+ clipId: string;
1747
+ offsetMs: number;
1748
+ } | undefined;
1749
+ reframe?: {
1750
+ segments: {
1751
+ startSec: number;
1752
+ endSec: number;
1753
+ focus: {
1754
+ mode: "frame-center";
1755
+ } | {
1756
+ mode: "point";
1757
+ x: number;
1758
+ y: number;
1759
+ } | {
1760
+ faceId: string;
1761
+ mode: "face";
1762
+ shotScale?: "close" | "standard" | "wide" | undefined;
1763
+ } | {
1764
+ mode: "all-faces";
1765
+ } | {
1766
+ mode: "active-speaker";
1767
+ };
1768
+ intent?: string | undefined;
1769
+ zoom?: number | undefined;
1770
+ ease?: {
1771
+ in: number;
1772
+ out: number;
1773
+ } | undefined;
1774
+ bias?: {
1775
+ x: number;
1776
+ y: number;
1777
+ } | undefined;
1778
+ }[];
1779
+ } | undefined;
1780
+ kenBurns?: "in" | "out" | "pan-l" | "pan-r" | "none" | undefined;
1781
+ excludedRanges?: {
1782
+ start: number;
1783
+ end: number;
1784
+ reason?: string | undefined;
1785
+ }[] | undefined;
1786
+ volume?: number | undefined;
1787
+ muted?: boolean | undefined;
1788
+ playbackRate?: number | undefined;
1789
+ sync?: "video" | "independent" | undefined;
1790
+ volumeDb?: number | undefined;
1791
+ fadeInMs?: number | undefined;
1792
+ fadeOutMs?: number | undefined;
1793
+ loop?: boolean | undefined;
1794
+ audioRole?: "sfx" | "music" | "vo" | "ambience" | undefined;
1795
+ duck?: {
1796
+ duckDb: number;
1797
+ attackMs: number;
1798
+ releaseMs: number;
1799
+ windows?: {
1800
+ startMs: number;
1801
+ endMs: number;
1802
+ }[] | undefined;
1803
+ } | undefined;
1804
+ }>, z.ZodObject<{
1805
+ kind: z.ZodLiteral<"component">;
1806
+ componentId: z.ZodString;
1807
+ props: z.ZodRecord<z.ZodString, z.ZodUnknown>;
1808
+ zPlane: z.ZodOptional<z.ZodEnum<["front", "behind-subject"]>>;
1809
+ }, "strip", z.ZodTypeAny, {
1810
+ kind: "component";
1811
+ componentId: string;
1812
+ props: Record<string, unknown>;
1813
+ zPlane?: "front" | "behind-subject" | undefined;
1814
+ }, {
1815
+ kind: "component";
1816
+ componentId: string;
1817
+ props: Record<string, unknown>;
1818
+ zPlane?: "front" | "behind-subject" | undefined;
1819
+ }>, z.ZodObject<{
1820
+ kind: z.ZodLiteral<"overlay">;
1821
+ primitiveId: z.ZodString;
1822
+ params: z.ZodRecord<z.ZodString, z.ZodUnknown>;
1823
+ zPlane: z.ZodOptional<z.ZodEnum<["front", "behind-subject"]>>;
1824
+ anchor: z.ZodOptional<z.ZodObject<{
1825
+ space: z.ZodLiteral<"scene">;
1826
+ x: z.ZodNumber;
1827
+ y: z.ZodNumber;
1828
+ }, "strip", z.ZodTypeAny, {
1829
+ x: number;
1830
+ y: number;
1831
+ space: "scene";
1832
+ }, {
1833
+ x: number;
1834
+ y: number;
1835
+ space: "scene";
1836
+ }>>;
1837
+ parallax: z.ZodOptional<z.ZodNumber>;
1838
+ }, "strip", z.ZodTypeAny, {
1839
+ kind: "overlay";
1840
+ params: Record<string, unknown>;
1841
+ primitiveId: string;
1842
+ anchor?: {
1843
+ x: number;
1844
+ y: number;
1845
+ space: "scene";
1846
+ } | undefined;
1847
+ zPlane?: "front" | "behind-subject" | undefined;
1848
+ parallax?: number | undefined;
1849
+ }, {
1850
+ kind: "overlay";
1851
+ params: Record<string, unknown>;
1852
+ primitiveId: string;
1853
+ anchor?: {
1854
+ x: number;
1855
+ y: number;
1856
+ space: "scene";
1857
+ } | undefined;
1858
+ zPlane?: "front" | "behind-subject" | undefined;
1859
+ parallax?: number | undefined;
1860
+ }>, z.ZodObject<{
1861
+ kind: z.ZodLiteral<"effect">;
1862
+ primitiveId: z.ZodString;
1863
+ params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1864
+ }, "strip", z.ZodTypeAny, {
1865
+ kind: "effect";
1866
+ primitiveId: string;
1867
+ params?: Record<string, unknown> | undefined;
1868
+ }, {
1869
+ kind: "effect";
1870
+ primitiveId: string;
1871
+ params?: Record<string, unknown> | undefined;
1872
+ }>, z.ZodObject<{
1873
+ kind: z.ZodLiteral<"alpha-layer">;
1874
+ componentId: z.ZodString;
1875
+ props: z.ZodRecord<z.ZodString, z.ZodUnknown>;
1876
+ zPlane: z.ZodOptional<z.ZodEnum<["front", "behind-subject"]>>;
1877
+ }, "strip", z.ZodTypeAny, {
1878
+ kind: "alpha-layer";
1879
+ componentId: string;
1880
+ props: Record<string, unknown>;
1881
+ zPlane?: "front" | "behind-subject" | undefined;
1882
+ }, {
1883
+ kind: "alpha-layer";
1884
+ componentId: string;
1885
+ props: Record<string, unknown>;
1886
+ zPlane?: "front" | "behind-subject" | undefined;
1887
+ }>, z.ZodObject<{
1888
+ kind: z.ZodLiteral<"card">;
1889
+ html: z.ZodString;
1890
+ tokens: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1891
+ zPlane: z.ZodOptional<z.ZodLiteral<"front">>;
1892
+ }, "strip", z.ZodTypeAny, {
1893
+ kind: "card";
1894
+ html: string;
1895
+ zPlane?: "front" | undefined;
1896
+ tokens?: Record<string, string> | undefined;
1897
+ }, {
1898
+ kind: "card";
1899
+ html: string;
1900
+ zPlane?: "front" | undefined;
1901
+ tokens?: Record<string, string> | undefined;
1902
+ }>, z.ZodObject<{
1903
+ kind: z.ZodLiteral<"composition">;
1904
+ compositionId: z.ZodString;
1905
+ trim: z.ZodOptional<z.ZodObject<{
1906
+ start: z.ZodNumber;
1907
+ end: z.ZodNumber;
1908
+ }, "strip", z.ZodTypeAny, {
1909
+ start: number;
1910
+ end: number;
1911
+ }, {
1912
+ start: number;
1913
+ end: number;
1914
+ }>>;
1915
+ }, "strict", z.ZodTypeAny, {
1916
+ kind: "composition";
1917
+ compositionId: string;
1918
+ trim?: {
1919
+ start: number;
1920
+ end: number;
1921
+ } | undefined;
1922
+ }, {
1923
+ kind: "composition";
1924
+ compositionId: string;
1925
+ trim?: {
1926
+ start: number;
1927
+ end: number;
1928
+ } | undefined;
1929
+ }>]>>;
1930
+ kind: z.ZodOptional<z.ZodOptional<z.ZodEnum<["video", "audio", "image", "overlay", "effect"]>>>;
1931
+ opacity: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1932
+ scale: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1933
+ rotation: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1934
+ position: z.ZodOptional<z.ZodOptional<z.ZodObject<{
1935
+ x: z.ZodNumber;
1936
+ y: z.ZodNumber;
1937
+ }, "strip", z.ZodTypeAny, {
1938
+ x: number;
1939
+ y: number;
1940
+ }, {
1941
+ x: number;
1942
+ y: number;
1943
+ }>>>;
1944
+ region: z.ZodOptional<z.ZodOptional<z.ZodObject<{
1945
+ x: z.ZodNumber;
1946
+ y: z.ZodNumber;
1947
+ w: z.ZodNumber;
1948
+ h: z.ZodNumber;
1949
+ }, "strip", z.ZodTypeAny, {
1950
+ x: number;
1951
+ y: number;
1952
+ w: number;
1953
+ h: number;
1954
+ }, {
1955
+ x: number;
1956
+ y: number;
1957
+ w: number;
1958
+ h: number;
1959
+ }>>>;
1960
+ fit: z.ZodOptional<z.ZodOptional<z.ZodEnum<["cover", "contain"]>>>;
1961
+ effects: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
1962
+ primitiveId: z.ZodString;
1963
+ params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1964
+ }, "strip", z.ZodTypeAny, {
1965
+ primitiveId: string;
1966
+ params?: Record<string, unknown> | undefined;
1967
+ }, {
1968
+ primitiveId: string;
1969
+ params?: Record<string, unknown> | undefined;
1970
+ }>, "many">>>;
1971
+ transitionIn: z.ZodOptional<z.ZodOptional<z.ZodObject<{
1972
+ type: z.ZodString;
1973
+ duration: z.ZodNumber;
1974
+ }, "strip", z.ZodTypeAny, {
1975
+ type: string;
1976
+ duration: number;
1977
+ }, {
1978
+ type: string;
1979
+ duration: number;
1980
+ }>>>;
1981
+ linkGroupId: z.ZodOptional<z.ZodOptional<z.ZodString>>;
1982
+ animate: z.ZodOptional<z.ZodOptional<z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodObject<{
1983
+ time: z.ZodNumber;
1984
+ value: z.ZodNumber;
1985
+ easing: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["linear", "ease", "easeIn", "easeOut", "easeInOut"]>, z.ZodObject<{
1986
+ cubicBezier: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>;
1987
+ }, "strict", z.ZodTypeAny, {
1988
+ cubicBezier: [number, number, number, number];
1989
+ }, {
1990
+ cubicBezier: [number, number, number, number];
1991
+ }>]>>;
1992
+ }, "strict", z.ZodTypeAny, {
1993
+ value: number;
1994
+ time: number;
1995
+ easing?: "ease" | "linear" | "easeIn" | "easeOut" | "easeInOut" | {
1996
+ cubicBezier: [number, number, number, number];
1997
+ } | undefined;
1998
+ }, {
1999
+ value: number;
2000
+ time: number;
2001
+ easing?: "ease" | "linear" | "easeIn" | "easeOut" | "easeInOut" | {
2002
+ cubicBezier: [number, number, number, number];
2003
+ } | undefined;
2004
+ }>, "many">>, Record<string, {
2005
+ value: number;
2006
+ time: number;
2007
+ easing?: "ease" | "linear" | "easeIn" | "easeOut" | "easeInOut" | {
2008
+ cubicBezier: [number, number, number, number];
2009
+ } | undefined;
2010
+ }[]>, Record<string, {
2011
+ value: number;
2012
+ time: number;
2013
+ easing?: "ease" | "linear" | "easeIn" | "easeOut" | "easeInOut" | {
2014
+ cubicBezier: [number, number, number, number];
2015
+ } | undefined;
2016
+ }[]>>>>;
2017
+ }, "strict", z.ZodTypeAny, {
2018
+ id?: string | undefined;
2019
+ kind?: "overlay" | "video" | "effect" | "audio" | "image" | undefined;
2020
+ startTime?: number | undefined;
2021
+ duration?: number | undefined;
2022
+ source?: {
2023
+ kind: "media";
2024
+ mediaId: string & {
2025
+ __tableName: "mediaItems";
2026
+ };
2027
+ trim?: {
2028
+ start: number;
2029
+ end: number;
2030
+ } | undefined;
2031
+ anchor?: {
2032
+ clipId: string;
2033
+ offsetMs: number;
2034
+ } | undefined;
2035
+ reframe?: {
2036
+ segments: {
2037
+ startSec: number;
2038
+ endSec: number;
2039
+ focus: {
2040
+ mode: "frame-center";
2041
+ } | {
2042
+ mode: "point";
2043
+ x: number;
2044
+ y: number;
2045
+ } | {
2046
+ faceId: string;
2047
+ mode: "face";
2048
+ shotScale?: "close" | "standard" | "wide" | undefined;
2049
+ } | {
2050
+ mode: "all-faces";
2051
+ } | {
2052
+ mode: "active-speaker";
2053
+ };
2054
+ intent?: string | undefined;
2055
+ zoom?: number | undefined;
2056
+ ease?: {
2057
+ in: number;
2058
+ out: number;
2059
+ } | undefined;
2060
+ bias?: {
2061
+ x: number;
2062
+ y: number;
2063
+ } | undefined;
2064
+ }[];
2065
+ } | undefined;
2066
+ kenBurns?: "in" | "out" | "pan-l" | "pan-r" | "none" | undefined;
2067
+ excludedRanges?: {
2068
+ start: number;
2069
+ end: number;
2070
+ reason?: string | undefined;
2071
+ }[] | undefined;
2072
+ volume?: number | undefined;
2073
+ muted?: boolean | undefined;
2074
+ playbackRate?: number | undefined;
2075
+ sync?: "video" | "independent" | undefined;
2076
+ volumeDb?: number | undefined;
2077
+ fadeInMs?: number | undefined;
2078
+ fadeOutMs?: number | undefined;
2079
+ loop?: boolean | undefined;
2080
+ audioRole?: "sfx" | "music" | "vo" | "ambience" | undefined;
2081
+ duck?: {
2082
+ duckDb: number;
2083
+ attackMs: number;
2084
+ releaseMs: number;
2085
+ windows?: {
2086
+ startMs: number;
2087
+ endMs: number;
2088
+ }[] | undefined;
2089
+ } | undefined;
2090
+ } | {
2091
+ kind: "component";
2092
+ componentId: string;
2093
+ props: Record<string, unknown>;
2094
+ zPlane?: "front" | "behind-subject" | undefined;
2095
+ } | {
2096
+ kind: "overlay";
2097
+ params: Record<string, unknown>;
2098
+ primitiveId: string;
2099
+ anchor?: {
2100
+ x: number;
2101
+ y: number;
2102
+ space: "scene";
2103
+ } | undefined;
2104
+ zPlane?: "front" | "behind-subject" | undefined;
2105
+ parallax?: number | undefined;
2106
+ } | {
2107
+ kind: "effect";
2108
+ primitiveId: string;
2109
+ params?: Record<string, unknown> | undefined;
2110
+ } | {
2111
+ kind: "alpha-layer";
2112
+ componentId: string;
2113
+ props: Record<string, unknown>;
2114
+ zPlane?: "front" | "behind-subject" | undefined;
2115
+ } | {
2116
+ kind: "card";
2117
+ html: string;
2118
+ zPlane?: "front" | undefined;
2119
+ tokens?: Record<string, string> | undefined;
2120
+ } | {
2121
+ kind: "composition";
2122
+ compositionId: string;
2123
+ trim?: {
2124
+ start: number;
2125
+ end: number;
2126
+ } | undefined;
2127
+ } | undefined;
2128
+ opacity?: number | undefined;
2129
+ scale?: number | undefined;
2130
+ rotation?: number | undefined;
2131
+ position?: {
2132
+ x: number;
2133
+ y: number;
2134
+ } | undefined;
2135
+ region?: {
2136
+ x: number;
2137
+ y: number;
2138
+ w: number;
2139
+ h: number;
2140
+ } | undefined;
2141
+ fit?: "cover" | "contain" | undefined;
2142
+ effects?: {
2143
+ primitiveId: string;
2144
+ params?: Record<string, unknown> | undefined;
2145
+ }[] | undefined;
2146
+ transitionIn?: {
2147
+ type: string;
2148
+ duration: number;
2149
+ } | undefined;
2150
+ linkGroupId?: string | undefined;
2151
+ animate?: Record<string, {
2152
+ value: number;
2153
+ time: number;
2154
+ easing?: "ease" | "linear" | "easeIn" | "easeOut" | "easeInOut" | {
2155
+ cubicBezier: [number, number, number, number];
2156
+ } | undefined;
2157
+ }[]> | undefined;
2158
+ }, {
2159
+ id?: string | undefined;
2160
+ kind?: "overlay" | "video" | "effect" | "audio" | "image" | undefined;
2161
+ startTime?: number | undefined;
2162
+ duration?: number | undefined;
2163
+ source?: {
2164
+ kind: "media";
2165
+ mediaId: string & {
2166
+ __tableName: "mediaItems";
2167
+ };
2168
+ trim?: {
2169
+ start: number;
2170
+ end: number;
2171
+ } | undefined;
2172
+ anchor?: {
2173
+ clipId: string;
2174
+ offsetMs: number;
2175
+ } | undefined;
2176
+ reframe?: {
2177
+ segments: {
2178
+ startSec: number;
2179
+ endSec: number;
2180
+ focus: {
2181
+ mode: "frame-center";
2182
+ } | {
2183
+ mode: "point";
2184
+ x: number;
2185
+ y: number;
2186
+ } | {
2187
+ faceId: string;
2188
+ mode: "face";
2189
+ shotScale?: "close" | "standard" | "wide" | undefined;
2190
+ } | {
2191
+ mode: "all-faces";
2192
+ } | {
2193
+ mode: "active-speaker";
2194
+ };
2195
+ intent?: string | undefined;
2196
+ zoom?: number | undefined;
2197
+ ease?: {
2198
+ in: number;
2199
+ out: number;
2200
+ } | undefined;
2201
+ bias?: {
2202
+ x: number;
2203
+ y: number;
2204
+ } | undefined;
2205
+ }[];
2206
+ } | undefined;
2207
+ kenBurns?: "in" | "out" | "pan-l" | "pan-r" | "none" | undefined;
2208
+ excludedRanges?: {
2209
+ start: number;
2210
+ end: number;
2211
+ reason?: string | undefined;
2212
+ }[] | undefined;
2213
+ volume?: number | undefined;
2214
+ muted?: boolean | undefined;
2215
+ playbackRate?: number | undefined;
2216
+ sync?: "video" | "independent" | undefined;
2217
+ volumeDb?: number | undefined;
2218
+ fadeInMs?: number | undefined;
2219
+ fadeOutMs?: number | undefined;
2220
+ loop?: boolean | undefined;
2221
+ audioRole?: "sfx" | "music" | "vo" | "ambience" | undefined;
2222
+ duck?: {
2223
+ duckDb: number;
2224
+ attackMs: number;
2225
+ releaseMs: number;
2226
+ windows?: {
2227
+ startMs: number;
2228
+ endMs: number;
2229
+ }[] | undefined;
2230
+ } | undefined;
2231
+ } | {
2232
+ kind: "component";
2233
+ componentId: string;
2234
+ props: Record<string, unknown>;
2235
+ zPlane?: "front" | "behind-subject" | undefined;
2236
+ } | {
2237
+ kind: "overlay";
2238
+ params: Record<string, unknown>;
2239
+ primitiveId: string;
2240
+ anchor?: {
2241
+ x: number;
2242
+ y: number;
2243
+ space: "scene";
2244
+ } | undefined;
2245
+ zPlane?: "front" | "behind-subject" | undefined;
2246
+ parallax?: number | undefined;
2247
+ } | {
2248
+ kind: "effect";
2249
+ primitiveId: string;
2250
+ params?: Record<string, unknown> | undefined;
2251
+ } | {
2252
+ kind: "alpha-layer";
2253
+ componentId: string;
2254
+ props: Record<string, unknown>;
2255
+ zPlane?: "front" | "behind-subject" | undefined;
2256
+ } | {
2257
+ kind: "card";
2258
+ html: string;
2259
+ zPlane?: "front" | undefined;
2260
+ tokens?: Record<string, string> | undefined;
2261
+ } | {
2262
+ kind: "composition";
2263
+ compositionId: string;
2264
+ trim?: {
2265
+ start: number;
2266
+ end: number;
2267
+ } | undefined;
2268
+ } | undefined;
2269
+ opacity?: number | undefined;
2270
+ scale?: number | undefined;
2271
+ rotation?: number | undefined;
2272
+ position?: {
2273
+ x: number;
2274
+ y: number;
2275
+ } | undefined;
2276
+ region?: {
2277
+ x: number;
2278
+ y: number;
2279
+ w: number;
2280
+ h: number;
2281
+ } | undefined;
2282
+ fit?: "cover" | "contain" | undefined;
2283
+ effects?: {
2284
+ primitiveId: string;
2285
+ params?: Record<string, unknown> | undefined;
2286
+ }[] | undefined;
2287
+ transitionIn?: {
2288
+ type: string;
2289
+ duration: number;
2290
+ } | undefined;
2291
+ linkGroupId?: string | undefined;
2292
+ animate?: Record<string, {
2293
+ value: number;
2294
+ time: number;
2295
+ easing?: "ease" | "linear" | "easeIn" | "easeOut" | "easeInOut" | {
2296
+ cubicBezier: [number, number, number, number];
2297
+ } | undefined;
2298
+ }[]> | undefined;
2299
+ }>;
2300
+ }, "strict", z.ZodTypeAny, {
2301
+ type: "clip.update";
2302
+ clipId: string;
2303
+ patch: {
2304
+ id?: string | undefined;
2305
+ kind?: "overlay" | "video" | "effect" | "audio" | "image" | undefined;
2306
+ startTime?: number | undefined;
2307
+ duration?: number | undefined;
2308
+ source?: {
2309
+ kind: "media";
2310
+ mediaId: string & {
2311
+ __tableName: "mediaItems";
2312
+ };
2313
+ trim?: {
2314
+ start: number;
2315
+ end: number;
2316
+ } | undefined;
2317
+ anchor?: {
2318
+ clipId: string;
2319
+ offsetMs: number;
2320
+ } | undefined;
2321
+ reframe?: {
2322
+ segments: {
2323
+ startSec: number;
2324
+ endSec: number;
2325
+ focus: {
2326
+ mode: "frame-center";
2327
+ } | {
2328
+ mode: "point";
2329
+ x: number;
2330
+ y: number;
2331
+ } | {
2332
+ faceId: string;
2333
+ mode: "face";
2334
+ shotScale?: "close" | "standard" | "wide" | undefined;
2335
+ } | {
2336
+ mode: "all-faces";
2337
+ } | {
2338
+ mode: "active-speaker";
2339
+ };
2340
+ intent?: string | undefined;
2341
+ zoom?: number | undefined;
2342
+ ease?: {
2343
+ in: number;
2344
+ out: number;
2345
+ } | undefined;
2346
+ bias?: {
2347
+ x: number;
2348
+ y: number;
2349
+ } | undefined;
2350
+ }[];
2351
+ } | undefined;
2352
+ kenBurns?: "in" | "out" | "pan-l" | "pan-r" | "none" | undefined;
2353
+ excludedRanges?: {
2354
+ start: number;
2355
+ end: number;
2356
+ reason?: string | undefined;
2357
+ }[] | undefined;
2358
+ volume?: number | undefined;
2359
+ muted?: boolean | undefined;
2360
+ playbackRate?: number | undefined;
2361
+ sync?: "video" | "independent" | undefined;
2362
+ volumeDb?: number | undefined;
2363
+ fadeInMs?: number | undefined;
2364
+ fadeOutMs?: number | undefined;
2365
+ loop?: boolean | undefined;
2366
+ audioRole?: "sfx" | "music" | "vo" | "ambience" | undefined;
2367
+ duck?: {
2368
+ duckDb: number;
2369
+ attackMs: number;
2370
+ releaseMs: number;
2371
+ windows?: {
2372
+ startMs: number;
2373
+ endMs: number;
2374
+ }[] | undefined;
2375
+ } | undefined;
2376
+ } | {
2377
+ kind: "component";
2378
+ componentId: string;
2379
+ props: Record<string, unknown>;
2380
+ zPlane?: "front" | "behind-subject" | undefined;
2381
+ } | {
2382
+ kind: "overlay";
2383
+ params: Record<string, unknown>;
2384
+ primitiveId: string;
2385
+ anchor?: {
2386
+ x: number;
2387
+ y: number;
2388
+ space: "scene";
2389
+ } | undefined;
2390
+ zPlane?: "front" | "behind-subject" | undefined;
2391
+ parallax?: number | undefined;
2392
+ } | {
2393
+ kind: "effect";
2394
+ primitiveId: string;
2395
+ params?: Record<string, unknown> | undefined;
2396
+ } | {
2397
+ kind: "alpha-layer";
2398
+ componentId: string;
2399
+ props: Record<string, unknown>;
2400
+ zPlane?: "front" | "behind-subject" | undefined;
2401
+ } | {
2402
+ kind: "card";
2403
+ html: string;
2404
+ zPlane?: "front" | undefined;
2405
+ tokens?: Record<string, string> | undefined;
2406
+ } | {
2407
+ kind: "composition";
2408
+ compositionId: string;
2409
+ trim?: {
2410
+ start: number;
2411
+ end: number;
2412
+ } | undefined;
2413
+ } | undefined;
2414
+ opacity?: number | undefined;
2415
+ scale?: number | undefined;
2416
+ rotation?: number | undefined;
2417
+ position?: {
2418
+ x: number;
2419
+ y: number;
2420
+ } | undefined;
2421
+ region?: {
2422
+ x: number;
2423
+ y: number;
2424
+ w: number;
2425
+ h: number;
2426
+ } | undefined;
2427
+ fit?: "cover" | "contain" | undefined;
2428
+ effects?: {
2429
+ primitiveId: string;
2430
+ params?: Record<string, unknown> | undefined;
2431
+ }[] | undefined;
2432
+ transitionIn?: {
2433
+ type: string;
2434
+ duration: number;
2435
+ } | undefined;
2436
+ linkGroupId?: string | undefined;
2437
+ animate?: Record<string, {
2438
+ value: number;
2439
+ time: number;
2440
+ easing?: "ease" | "linear" | "easeIn" | "easeOut" | "easeInOut" | {
2441
+ cubicBezier: [number, number, number, number];
2442
+ } | undefined;
2443
+ }[]> | undefined;
2444
+ };
2445
+ }, {
2446
+ type: "clip.update";
2447
+ clipId: string;
2448
+ patch: {
2449
+ id?: string | undefined;
2450
+ kind?: "overlay" | "video" | "effect" | "audio" | "image" | undefined;
2451
+ startTime?: number | undefined;
2452
+ duration?: number | undefined;
2453
+ source?: {
2454
+ kind: "media";
2455
+ mediaId: string & {
2456
+ __tableName: "mediaItems";
2457
+ };
2458
+ trim?: {
2459
+ start: number;
2460
+ end: number;
2461
+ } | undefined;
2462
+ anchor?: {
2463
+ clipId: string;
2464
+ offsetMs: number;
2465
+ } | undefined;
2466
+ reframe?: {
2467
+ segments: {
2468
+ startSec: number;
2469
+ endSec: number;
2470
+ focus: {
2471
+ mode: "frame-center";
2472
+ } | {
2473
+ mode: "point";
2474
+ x: number;
2475
+ y: number;
2476
+ } | {
2477
+ faceId: string;
2478
+ mode: "face";
2479
+ shotScale?: "close" | "standard" | "wide" | undefined;
2480
+ } | {
2481
+ mode: "all-faces";
2482
+ } | {
2483
+ mode: "active-speaker";
2484
+ };
2485
+ intent?: string | undefined;
2486
+ zoom?: number | undefined;
2487
+ ease?: {
2488
+ in: number;
2489
+ out: number;
2490
+ } | undefined;
2491
+ bias?: {
2492
+ x: number;
2493
+ y: number;
2494
+ } | undefined;
2495
+ }[];
2496
+ } | undefined;
2497
+ kenBurns?: "in" | "out" | "pan-l" | "pan-r" | "none" | undefined;
2498
+ excludedRanges?: {
2499
+ start: number;
2500
+ end: number;
2501
+ reason?: string | undefined;
2502
+ }[] | undefined;
2503
+ volume?: number | undefined;
2504
+ muted?: boolean | undefined;
2505
+ playbackRate?: number | undefined;
2506
+ sync?: "video" | "independent" | undefined;
2507
+ volumeDb?: number | undefined;
2508
+ fadeInMs?: number | undefined;
2509
+ fadeOutMs?: number | undefined;
2510
+ loop?: boolean | undefined;
2511
+ audioRole?: "sfx" | "music" | "vo" | "ambience" | undefined;
2512
+ duck?: {
2513
+ duckDb: number;
2514
+ attackMs: number;
2515
+ releaseMs: number;
2516
+ windows?: {
2517
+ startMs: number;
2518
+ endMs: number;
2519
+ }[] | undefined;
2520
+ } | undefined;
2521
+ } | {
2522
+ kind: "component";
2523
+ componentId: string;
2524
+ props: Record<string, unknown>;
2525
+ zPlane?: "front" | "behind-subject" | undefined;
2526
+ } | {
2527
+ kind: "overlay";
2528
+ params: Record<string, unknown>;
2529
+ primitiveId: string;
2530
+ anchor?: {
2531
+ x: number;
2532
+ y: number;
2533
+ space: "scene";
2534
+ } | undefined;
2535
+ zPlane?: "front" | "behind-subject" | undefined;
2536
+ parallax?: number | undefined;
2537
+ } | {
2538
+ kind: "effect";
2539
+ primitiveId: string;
2540
+ params?: Record<string, unknown> | undefined;
2541
+ } | {
2542
+ kind: "alpha-layer";
2543
+ componentId: string;
2544
+ props: Record<string, unknown>;
2545
+ zPlane?: "front" | "behind-subject" | undefined;
2546
+ } | {
2547
+ kind: "card";
2548
+ html: string;
2549
+ zPlane?: "front" | undefined;
2550
+ tokens?: Record<string, string> | undefined;
2551
+ } | {
2552
+ kind: "composition";
2553
+ compositionId: string;
2554
+ trim?: {
2555
+ start: number;
2556
+ end: number;
2557
+ } | undefined;
2558
+ } | undefined;
2559
+ opacity?: number | undefined;
2560
+ scale?: number | undefined;
2561
+ rotation?: number | undefined;
2562
+ position?: {
2563
+ x: number;
2564
+ y: number;
2565
+ } | undefined;
2566
+ region?: {
2567
+ x: number;
2568
+ y: number;
2569
+ w: number;
2570
+ h: number;
2571
+ } | undefined;
2572
+ fit?: "cover" | "contain" | undefined;
2573
+ effects?: {
2574
+ primitiveId: string;
2575
+ params?: Record<string, unknown> | undefined;
2576
+ }[] | undefined;
2577
+ transitionIn?: {
2578
+ type: string;
2579
+ duration: number;
2580
+ } | undefined;
2581
+ linkGroupId?: string | undefined;
2582
+ animate?: Record<string, {
2583
+ value: number;
2584
+ time: number;
2585
+ easing?: "ease" | "linear" | "easeIn" | "easeOut" | "easeInOut" | {
2586
+ cubicBezier: [number, number, number, number];
2587
+ } | undefined;
2588
+ }[]> | undefined;
2589
+ };
2590
+ }>, z.ZodObject<{
2591
+ type: z.ZodLiteral<"removeClipsByMediaId">;
2592
+ mediaId: z.ZodString;
2593
+ }, "strict", z.ZodTypeAny, {
2594
+ type: "removeClipsByMediaId";
2595
+ mediaId: string;
2596
+ }, {
2597
+ type: "removeClipsByMediaId";
2598
+ mediaId: string;
2599
+ }>, z.ZodObject<{
2600
+ type: z.ZodLiteral<"loadOverlays">;
2601
+ clips: z.ZodArray<z.ZodObject<{
2602
+ id: z.ZodString;
2603
+ startTime: z.ZodNumber;
2604
+ duration: z.ZodNumber;
2605
+ source: z.ZodDiscriminatedUnion<"kind", [z.ZodObject<{
2606
+ kind: z.ZodLiteral<"media">;
2607
+ mediaId: import("convex-helpers/server/zod3").Zid<"mediaItems">;
2608
+ trim: z.ZodOptional<z.ZodObject<{
2609
+ start: z.ZodNumber;
2610
+ end: z.ZodNumber;
2611
+ }, "strip", z.ZodTypeAny, {
2612
+ start: number;
2613
+ end: number;
2614
+ }, {
2615
+ start: number;
2616
+ end: number;
2617
+ }>>;
2618
+ excludedRanges: z.ZodOptional<z.ZodArray<z.ZodObject<{
2619
+ start: z.ZodNumber;
2620
+ end: z.ZodNumber;
2621
+ reason: z.ZodOptional<z.ZodString>;
2622
+ }, "strip", z.ZodTypeAny, {
2623
+ start: number;
2624
+ end: number;
2625
+ reason?: string | undefined;
2626
+ }, {
2627
+ start: number;
2628
+ end: number;
2629
+ reason?: string | undefined;
2630
+ }>, "many">>;
2631
+ volume: z.ZodOptional<z.ZodNumber>;
2632
+ muted: z.ZodOptional<z.ZodBoolean>;
2633
+ playbackRate: z.ZodOptional<z.ZodNumber>;
2634
+ sync: z.ZodOptional<z.ZodEnum<["video", "independent"]>>;
2635
+ kenBurns: z.ZodOptional<z.ZodEnum<["in", "out", "pan-l", "pan-r", "none"]>>;
2636
+ volumeDb: z.ZodOptional<z.ZodNumber>;
2637
+ fadeInMs: z.ZodOptional<z.ZodNumber>;
2638
+ fadeOutMs: z.ZodOptional<z.ZodNumber>;
2639
+ loop: z.ZodOptional<z.ZodBoolean>;
2640
+ audioRole: z.ZodOptional<z.ZodEnum<["sfx", "music", "vo", "ambience"]>>;
2641
+ duck: z.ZodOptional<z.ZodObject<{
2642
+ duckDb: z.ZodNumber;
2643
+ attackMs: z.ZodNumber;
2644
+ releaseMs: z.ZodNumber;
2645
+ windows: z.ZodOptional<z.ZodArray<z.ZodObject<{
2646
+ startMs: z.ZodNumber;
2647
+ endMs: z.ZodNumber;
2648
+ }, "strip", z.ZodTypeAny, {
2649
+ startMs: number;
2650
+ endMs: number;
2651
+ }, {
2652
+ startMs: number;
2653
+ endMs: number;
2654
+ }>, "many">>;
2655
+ }, "strip", z.ZodTypeAny, {
2656
+ duckDb: number;
2657
+ attackMs: number;
2658
+ releaseMs: number;
2659
+ windows?: {
2660
+ startMs: number;
2661
+ endMs: number;
2662
+ }[] | undefined;
2663
+ }, {
2664
+ duckDb: number;
2665
+ attackMs: number;
2666
+ releaseMs: number;
2667
+ windows?: {
2668
+ startMs: number;
2669
+ endMs: number;
2670
+ }[] | undefined;
2671
+ }>>;
2672
+ anchor: z.ZodOptional<z.ZodObject<{
2673
+ clipId: z.ZodString;
2674
+ offsetMs: z.ZodNumber;
2675
+ }, "strip", z.ZodTypeAny, {
2676
+ clipId: string;
2677
+ offsetMs: number;
2678
+ }, {
2679
+ clipId: string;
2680
+ offsetMs: number;
2681
+ }>>;
2682
+ reframe: z.ZodOptional<z.ZodObject<{
2683
+ segments: z.ZodArray<z.ZodEffects<z.ZodObject<{
2684
+ startSec: z.ZodNumber;
2685
+ endSec: z.ZodNumber;
2686
+ focus: z.ZodDiscriminatedUnion<"mode", [z.ZodObject<{
2687
+ mode: z.ZodLiteral<"frame-center">;
2688
+ }, "strip", z.ZodTypeAny, {
2689
+ mode: "frame-center";
2690
+ }, {
2691
+ mode: "frame-center";
2692
+ }>, z.ZodObject<{
2693
+ mode: z.ZodLiteral<"point">;
2694
+ x: z.ZodNumber;
2695
+ y: z.ZodNumber;
2696
+ }, "strip", z.ZodTypeAny, {
2697
+ mode: "point";
2698
+ x: number;
2699
+ y: number;
2700
+ }, {
2701
+ mode: "point";
2702
+ x: number;
2703
+ y: number;
2704
+ }>, z.ZodObject<{
2705
+ mode: z.ZodLiteral<"face">;
2706
+ faceId: z.ZodString;
2707
+ shotScale: z.ZodOptional<z.ZodEnum<["close", "standard", "wide"]>>;
2708
+ }, "strip", z.ZodTypeAny, {
2709
+ faceId: string;
2710
+ mode: "face";
2711
+ shotScale?: "close" | "standard" | "wide" | undefined;
2712
+ }, {
2713
+ faceId: string;
2714
+ mode: "face";
2715
+ shotScale?: "close" | "standard" | "wide" | undefined;
2716
+ }>, z.ZodObject<{
2717
+ mode: z.ZodLiteral<"all-faces">;
2718
+ }, "strip", z.ZodTypeAny, {
2719
+ mode: "all-faces";
2720
+ }, {
2721
+ mode: "all-faces";
2722
+ }>, z.ZodObject<{
2723
+ mode: z.ZodLiteral<"active-speaker">;
2724
+ }, "strip", z.ZodTypeAny, {
2725
+ mode: "active-speaker";
2726
+ }, {
2727
+ mode: "active-speaker";
2728
+ }>]>;
2729
+ intent: z.ZodOptional<z.ZodString>;
2730
+ zoom: z.ZodOptional<z.ZodNumber>;
2731
+ ease: z.ZodOptional<z.ZodObject<{
2732
+ in: z.ZodNumber;
2733
+ out: z.ZodNumber;
2734
+ }, "strip", z.ZodTypeAny, {
2735
+ in: number;
2736
+ out: number;
2737
+ }, {
2738
+ in: number;
2739
+ out: number;
2740
+ }>>;
2741
+ bias: z.ZodOptional<z.ZodObject<{
2742
+ x: z.ZodNumber;
2743
+ y: z.ZodNumber;
2744
+ }, "strip", z.ZodTypeAny, {
2745
+ x: number;
2746
+ y: number;
2747
+ }, {
2748
+ x: number;
2749
+ y: number;
2750
+ }>>;
2751
+ }, "strip", z.ZodTypeAny, {
2752
+ startSec: number;
2753
+ endSec: number;
2754
+ focus: {
2755
+ mode: "frame-center";
2756
+ } | {
2757
+ mode: "point";
2758
+ x: number;
2759
+ y: number;
2760
+ } | {
2761
+ faceId: string;
2762
+ mode: "face";
2763
+ shotScale?: "close" | "standard" | "wide" | undefined;
2764
+ } | {
2765
+ mode: "all-faces";
2766
+ } | {
2767
+ mode: "active-speaker";
2768
+ };
2769
+ intent?: string | undefined;
2770
+ zoom?: number | undefined;
2771
+ ease?: {
2772
+ in: number;
2773
+ out: number;
2774
+ } | undefined;
2775
+ bias?: {
2776
+ x: number;
2777
+ y: number;
2778
+ } | undefined;
2779
+ }, {
2780
+ startSec: number;
2781
+ endSec: number;
2782
+ focus: {
2783
+ mode: "frame-center";
2784
+ } | {
2785
+ mode: "point";
2786
+ x: number;
2787
+ y: number;
2788
+ } | {
2789
+ faceId: string;
2790
+ mode: "face";
2791
+ shotScale?: "close" | "standard" | "wide" | undefined;
2792
+ } | {
2793
+ mode: "all-faces";
2794
+ } | {
2795
+ mode: "active-speaker";
2796
+ };
2797
+ intent?: string | undefined;
2798
+ zoom?: number | undefined;
2799
+ ease?: {
2800
+ in: number;
2801
+ out: number;
2802
+ } | undefined;
2803
+ bias?: {
2804
+ x: number;
2805
+ y: number;
2806
+ } | undefined;
2807
+ }>, {
2808
+ startSec: number;
2809
+ endSec: number;
2810
+ focus: {
2811
+ mode: "frame-center";
2812
+ } | {
2813
+ mode: "point";
2814
+ x: number;
2815
+ y: number;
2816
+ } | {
2817
+ faceId: string;
2818
+ mode: "face";
2819
+ shotScale?: "close" | "standard" | "wide" | undefined;
2820
+ } | {
2821
+ mode: "all-faces";
2822
+ } | {
2823
+ mode: "active-speaker";
2824
+ };
2825
+ intent?: string | undefined;
2826
+ zoom?: number | undefined;
2827
+ ease?: {
2828
+ in: number;
2829
+ out: number;
2830
+ } | undefined;
2831
+ bias?: {
2832
+ x: number;
2833
+ y: number;
2834
+ } | undefined;
2835
+ }, {
2836
+ startSec: number;
2837
+ endSec: number;
2838
+ focus: {
2839
+ mode: "frame-center";
2840
+ } | {
2841
+ mode: "point";
2842
+ x: number;
2843
+ y: number;
2844
+ } | {
2845
+ faceId: string;
2846
+ mode: "face";
2847
+ shotScale?: "close" | "standard" | "wide" | undefined;
2848
+ } | {
2849
+ mode: "all-faces";
2850
+ } | {
2851
+ mode: "active-speaker";
2852
+ };
2853
+ intent?: string | undefined;
2854
+ zoom?: number | undefined;
2855
+ ease?: {
2856
+ in: number;
2857
+ out: number;
2858
+ } | undefined;
2859
+ bias?: {
2860
+ x: number;
2861
+ y: number;
2862
+ } | undefined;
2863
+ }>, "many">;
2864
+ }, "strip", z.ZodTypeAny, {
2865
+ segments: {
2866
+ startSec: number;
2867
+ endSec: number;
2868
+ focus: {
2869
+ mode: "frame-center";
2870
+ } | {
2871
+ mode: "point";
2872
+ x: number;
2873
+ y: number;
2874
+ } | {
2875
+ faceId: string;
2876
+ mode: "face";
2877
+ shotScale?: "close" | "standard" | "wide" | undefined;
2878
+ } | {
2879
+ mode: "all-faces";
2880
+ } | {
2881
+ mode: "active-speaker";
2882
+ };
2883
+ intent?: string | undefined;
2884
+ zoom?: number | undefined;
2885
+ ease?: {
2886
+ in: number;
2887
+ out: number;
2888
+ } | undefined;
2889
+ bias?: {
2890
+ x: number;
2891
+ y: number;
2892
+ } | undefined;
2893
+ }[];
2894
+ }, {
2895
+ segments: {
2896
+ startSec: number;
2897
+ endSec: number;
2898
+ focus: {
2899
+ mode: "frame-center";
2900
+ } | {
2901
+ mode: "point";
2902
+ x: number;
2903
+ y: number;
2904
+ } | {
2905
+ faceId: string;
2906
+ mode: "face";
2907
+ shotScale?: "close" | "standard" | "wide" | undefined;
2908
+ } | {
2909
+ mode: "all-faces";
2910
+ } | {
2911
+ mode: "active-speaker";
2912
+ };
2913
+ intent?: string | undefined;
2914
+ zoom?: number | undefined;
2915
+ ease?: {
2916
+ in: number;
2917
+ out: number;
2918
+ } | undefined;
2919
+ bias?: {
2920
+ x: number;
2921
+ y: number;
2922
+ } | undefined;
2923
+ }[];
2924
+ }>>;
2925
+ }, "strip", z.ZodTypeAny, {
2926
+ kind: "media";
2927
+ mediaId: string & {
2928
+ __tableName: "mediaItems";
2929
+ };
2930
+ trim?: {
2931
+ start: number;
2932
+ end: number;
2933
+ } | undefined;
2934
+ anchor?: {
2935
+ clipId: string;
2936
+ offsetMs: number;
2937
+ } | undefined;
2938
+ reframe?: {
2939
+ segments: {
2940
+ startSec: number;
2941
+ endSec: number;
2942
+ focus: {
2943
+ mode: "frame-center";
2944
+ } | {
2945
+ mode: "point";
2946
+ x: number;
2947
+ y: number;
2948
+ } | {
2949
+ faceId: string;
2950
+ mode: "face";
2951
+ shotScale?: "close" | "standard" | "wide" | undefined;
2952
+ } | {
2953
+ mode: "all-faces";
2954
+ } | {
2955
+ mode: "active-speaker";
2956
+ };
2957
+ intent?: string | undefined;
2958
+ zoom?: number | undefined;
2959
+ ease?: {
2960
+ in: number;
2961
+ out: number;
2962
+ } | undefined;
2963
+ bias?: {
2964
+ x: number;
2965
+ y: number;
2966
+ } | undefined;
2967
+ }[];
2968
+ } | undefined;
2969
+ kenBurns?: "in" | "out" | "pan-l" | "pan-r" | "none" | undefined;
2970
+ excludedRanges?: {
2971
+ start: number;
2972
+ end: number;
2973
+ reason?: string | undefined;
2974
+ }[] | undefined;
2975
+ volume?: number | undefined;
2976
+ muted?: boolean | undefined;
2977
+ playbackRate?: number | undefined;
2978
+ sync?: "video" | "independent" | undefined;
2979
+ volumeDb?: number | undefined;
2980
+ fadeInMs?: number | undefined;
2981
+ fadeOutMs?: number | undefined;
2982
+ loop?: boolean | undefined;
2983
+ audioRole?: "sfx" | "music" | "vo" | "ambience" | undefined;
2984
+ duck?: {
2985
+ duckDb: number;
2986
+ attackMs: number;
2987
+ releaseMs: number;
2988
+ windows?: {
2989
+ startMs: number;
2990
+ endMs: number;
2991
+ }[] | undefined;
2992
+ } | undefined;
2993
+ }, {
2994
+ kind: "media";
2995
+ mediaId: string & {
2996
+ __tableName: "mediaItems";
2997
+ };
2998
+ trim?: {
2999
+ start: number;
3000
+ end: number;
3001
+ } | undefined;
3002
+ anchor?: {
3003
+ clipId: string;
3004
+ offsetMs: number;
3005
+ } | undefined;
3006
+ reframe?: {
3007
+ segments: {
3008
+ startSec: number;
3009
+ endSec: number;
3010
+ focus: {
3011
+ mode: "frame-center";
3012
+ } | {
3013
+ mode: "point";
3014
+ x: number;
3015
+ y: number;
3016
+ } | {
3017
+ faceId: string;
3018
+ mode: "face";
3019
+ shotScale?: "close" | "standard" | "wide" | undefined;
3020
+ } | {
3021
+ mode: "all-faces";
3022
+ } | {
3023
+ mode: "active-speaker";
3024
+ };
3025
+ intent?: string | undefined;
3026
+ zoom?: number | undefined;
3027
+ ease?: {
3028
+ in: number;
3029
+ out: number;
3030
+ } | undefined;
3031
+ bias?: {
3032
+ x: number;
3033
+ y: number;
3034
+ } | undefined;
3035
+ }[];
3036
+ } | undefined;
3037
+ kenBurns?: "in" | "out" | "pan-l" | "pan-r" | "none" | undefined;
3038
+ excludedRanges?: {
3039
+ start: number;
3040
+ end: number;
3041
+ reason?: string | undefined;
3042
+ }[] | undefined;
3043
+ volume?: number | undefined;
3044
+ muted?: boolean | undefined;
3045
+ playbackRate?: number | undefined;
3046
+ sync?: "video" | "independent" | undefined;
3047
+ volumeDb?: number | undefined;
3048
+ fadeInMs?: number | undefined;
3049
+ fadeOutMs?: number | undefined;
3050
+ loop?: boolean | undefined;
3051
+ audioRole?: "sfx" | "music" | "vo" | "ambience" | undefined;
3052
+ duck?: {
3053
+ duckDb: number;
3054
+ attackMs: number;
3055
+ releaseMs: number;
3056
+ windows?: {
3057
+ startMs: number;
3058
+ endMs: number;
3059
+ }[] | undefined;
3060
+ } | undefined;
3061
+ }>, z.ZodObject<{
3062
+ kind: z.ZodLiteral<"component">;
3063
+ componentId: z.ZodString;
3064
+ props: z.ZodRecord<z.ZodString, z.ZodUnknown>;
3065
+ zPlane: z.ZodOptional<z.ZodEnum<["front", "behind-subject"]>>;
3066
+ }, "strip", z.ZodTypeAny, {
3067
+ kind: "component";
3068
+ componentId: string;
3069
+ props: Record<string, unknown>;
3070
+ zPlane?: "front" | "behind-subject" | undefined;
3071
+ }, {
3072
+ kind: "component";
3073
+ componentId: string;
3074
+ props: Record<string, unknown>;
3075
+ zPlane?: "front" | "behind-subject" | undefined;
3076
+ }>, z.ZodObject<{
3077
+ kind: z.ZodLiteral<"overlay">;
3078
+ primitiveId: z.ZodString;
3079
+ params: z.ZodRecord<z.ZodString, z.ZodUnknown>;
3080
+ zPlane: z.ZodOptional<z.ZodEnum<["front", "behind-subject"]>>;
3081
+ anchor: z.ZodOptional<z.ZodObject<{
3082
+ space: z.ZodLiteral<"scene">;
3083
+ x: z.ZodNumber;
3084
+ y: z.ZodNumber;
3085
+ }, "strip", z.ZodTypeAny, {
3086
+ x: number;
3087
+ y: number;
3088
+ space: "scene";
3089
+ }, {
3090
+ x: number;
3091
+ y: number;
3092
+ space: "scene";
3093
+ }>>;
3094
+ parallax: z.ZodOptional<z.ZodNumber>;
3095
+ }, "strip", z.ZodTypeAny, {
3096
+ kind: "overlay";
3097
+ params: Record<string, unknown>;
3098
+ primitiveId: string;
3099
+ anchor?: {
3100
+ x: number;
3101
+ y: number;
3102
+ space: "scene";
3103
+ } | undefined;
3104
+ zPlane?: "front" | "behind-subject" | undefined;
3105
+ parallax?: number | undefined;
3106
+ }, {
3107
+ kind: "overlay";
3108
+ params: Record<string, unknown>;
3109
+ primitiveId: string;
3110
+ anchor?: {
3111
+ x: number;
3112
+ y: number;
3113
+ space: "scene";
3114
+ } | undefined;
3115
+ zPlane?: "front" | "behind-subject" | undefined;
3116
+ parallax?: number | undefined;
3117
+ }>, z.ZodObject<{
3118
+ kind: z.ZodLiteral<"effect">;
3119
+ primitiveId: z.ZodString;
3120
+ params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3121
+ }, "strip", z.ZodTypeAny, {
3122
+ kind: "effect";
3123
+ primitiveId: string;
3124
+ params?: Record<string, unknown> | undefined;
3125
+ }, {
3126
+ kind: "effect";
3127
+ primitiveId: string;
3128
+ params?: Record<string, unknown> | undefined;
3129
+ }>, z.ZodObject<{
3130
+ kind: z.ZodLiteral<"alpha-layer">;
3131
+ componentId: z.ZodString;
3132
+ props: z.ZodRecord<z.ZodString, z.ZodUnknown>;
3133
+ zPlane: z.ZodOptional<z.ZodEnum<["front", "behind-subject"]>>;
3134
+ }, "strip", z.ZodTypeAny, {
3135
+ kind: "alpha-layer";
3136
+ componentId: string;
3137
+ props: Record<string, unknown>;
3138
+ zPlane?: "front" | "behind-subject" | undefined;
3139
+ }, {
3140
+ kind: "alpha-layer";
3141
+ componentId: string;
3142
+ props: Record<string, unknown>;
3143
+ zPlane?: "front" | "behind-subject" | undefined;
3144
+ }>, z.ZodObject<{
3145
+ kind: z.ZodLiteral<"card">;
3146
+ html: z.ZodString;
3147
+ tokens: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
3148
+ zPlane: z.ZodOptional<z.ZodLiteral<"front">>;
3149
+ }, "strip", z.ZodTypeAny, {
3150
+ kind: "card";
3151
+ html: string;
3152
+ zPlane?: "front" | undefined;
3153
+ tokens?: Record<string, string> | undefined;
3154
+ }, {
3155
+ kind: "card";
3156
+ html: string;
3157
+ zPlane?: "front" | undefined;
3158
+ tokens?: Record<string, string> | undefined;
3159
+ }>, z.ZodObject<{
3160
+ kind: z.ZodLiteral<"composition">;
3161
+ compositionId: z.ZodString;
3162
+ trim: z.ZodOptional<z.ZodObject<{
3163
+ start: z.ZodNumber;
3164
+ end: z.ZodNumber;
3165
+ }, "strip", z.ZodTypeAny, {
3166
+ start: number;
3167
+ end: number;
3168
+ }, {
3169
+ start: number;
3170
+ end: number;
3171
+ }>>;
3172
+ }, "strict", z.ZodTypeAny, {
3173
+ kind: "composition";
3174
+ compositionId: string;
3175
+ trim?: {
3176
+ start: number;
3177
+ end: number;
3178
+ } | undefined;
3179
+ }, {
3180
+ kind: "composition";
3181
+ compositionId: string;
3182
+ trim?: {
3183
+ start: number;
3184
+ end: number;
3185
+ } | undefined;
3186
+ }>]>;
3187
+ kind: z.ZodOptional<z.ZodEnum<["video", "audio", "image", "overlay", "effect"]>>;
3188
+ opacity: z.ZodOptional<z.ZodNumber>;
3189
+ scale: z.ZodOptional<z.ZodNumber>;
3190
+ rotation: z.ZodOptional<z.ZodNumber>;
3191
+ position: z.ZodOptional<z.ZodObject<{
3192
+ x: z.ZodNumber;
3193
+ y: z.ZodNumber;
3194
+ }, "strip", z.ZodTypeAny, {
3195
+ x: number;
3196
+ y: number;
3197
+ }, {
3198
+ x: number;
3199
+ y: number;
3200
+ }>>;
3201
+ region: z.ZodOptional<z.ZodObject<{
3202
+ x: z.ZodNumber;
3203
+ y: z.ZodNumber;
3204
+ w: z.ZodNumber;
3205
+ h: z.ZodNumber;
3206
+ }, "strip", z.ZodTypeAny, {
3207
+ x: number;
3208
+ y: number;
3209
+ w: number;
3210
+ h: number;
3211
+ }, {
3212
+ x: number;
3213
+ y: number;
3214
+ w: number;
3215
+ h: number;
3216
+ }>>;
3217
+ fit: z.ZodOptional<z.ZodEnum<["cover", "contain"]>>;
3218
+ effects: z.ZodOptional<z.ZodArray<z.ZodObject<{
3219
+ primitiveId: z.ZodString;
3220
+ params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3221
+ }, "strip", z.ZodTypeAny, {
3222
+ primitiveId: string;
3223
+ params?: Record<string, unknown> | undefined;
3224
+ }, {
3225
+ primitiveId: string;
3226
+ params?: Record<string, unknown> | undefined;
3227
+ }>, "many">>;
3228
+ transitionIn: z.ZodOptional<z.ZodObject<{
3229
+ type: z.ZodString;
3230
+ duration: z.ZodNumber;
3231
+ }, "strip", z.ZodTypeAny, {
3232
+ type: string;
3233
+ duration: number;
3234
+ }, {
3235
+ type: string;
3236
+ duration: number;
3237
+ }>>;
3238
+ linkGroupId: z.ZodOptional<z.ZodString>;
3239
+ animate: z.ZodOptional<z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodObject<{
3240
+ time: z.ZodNumber;
3241
+ value: z.ZodNumber;
3242
+ easing: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["linear", "ease", "easeIn", "easeOut", "easeInOut"]>, z.ZodObject<{
3243
+ cubicBezier: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>;
3244
+ }, "strict", z.ZodTypeAny, {
3245
+ cubicBezier: [number, number, number, number];
3246
+ }, {
3247
+ cubicBezier: [number, number, number, number];
3248
+ }>]>>;
3249
+ }, "strict", z.ZodTypeAny, {
3250
+ value: number;
3251
+ time: number;
3252
+ easing?: "ease" | "linear" | "easeIn" | "easeOut" | "easeInOut" | {
3253
+ cubicBezier: [number, number, number, number];
3254
+ } | undefined;
3255
+ }, {
3256
+ value: number;
3257
+ time: number;
3258
+ easing?: "ease" | "linear" | "easeIn" | "easeOut" | "easeInOut" | {
3259
+ cubicBezier: [number, number, number, number];
3260
+ } | undefined;
3261
+ }>, "many">>, Record<string, {
3262
+ value: number;
3263
+ time: number;
3264
+ easing?: "ease" | "linear" | "easeIn" | "easeOut" | "easeInOut" | {
3265
+ cubicBezier: [number, number, number, number];
3266
+ } | undefined;
3267
+ }[]>, Record<string, {
3268
+ value: number;
3269
+ time: number;
3270
+ easing?: "ease" | "linear" | "easeIn" | "easeOut" | "easeInOut" | {
3271
+ cubicBezier: [number, number, number, number];
3272
+ } | undefined;
3273
+ }[]>>>;
3274
+ }, "strict", z.ZodTypeAny, {
3275
+ id: string;
3276
+ duration: number;
3277
+ startTime: number;
3278
+ source: {
3279
+ kind: "media";
3280
+ mediaId: string & {
3281
+ __tableName: "mediaItems";
3282
+ };
3283
+ trim?: {
3284
+ start: number;
3285
+ end: number;
3286
+ } | undefined;
3287
+ anchor?: {
3288
+ clipId: string;
3289
+ offsetMs: number;
3290
+ } | undefined;
3291
+ reframe?: {
3292
+ segments: {
3293
+ startSec: number;
3294
+ endSec: number;
3295
+ focus: {
3296
+ mode: "frame-center";
3297
+ } | {
3298
+ mode: "point";
3299
+ x: number;
3300
+ y: number;
3301
+ } | {
3302
+ faceId: string;
3303
+ mode: "face";
3304
+ shotScale?: "close" | "standard" | "wide" | undefined;
3305
+ } | {
3306
+ mode: "all-faces";
3307
+ } | {
3308
+ mode: "active-speaker";
3309
+ };
3310
+ intent?: string | undefined;
3311
+ zoom?: number | undefined;
3312
+ ease?: {
3313
+ in: number;
3314
+ out: number;
3315
+ } | undefined;
3316
+ bias?: {
3317
+ x: number;
3318
+ y: number;
3319
+ } | undefined;
3320
+ }[];
3321
+ } | undefined;
3322
+ kenBurns?: "in" | "out" | "pan-l" | "pan-r" | "none" | undefined;
3323
+ excludedRanges?: {
3324
+ start: number;
3325
+ end: number;
3326
+ reason?: string | undefined;
3327
+ }[] | undefined;
3328
+ volume?: number | undefined;
3329
+ muted?: boolean | undefined;
3330
+ playbackRate?: number | undefined;
3331
+ sync?: "video" | "independent" | undefined;
3332
+ volumeDb?: number | undefined;
3333
+ fadeInMs?: number | undefined;
3334
+ fadeOutMs?: number | undefined;
3335
+ loop?: boolean | undefined;
3336
+ audioRole?: "sfx" | "music" | "vo" | "ambience" | undefined;
3337
+ duck?: {
3338
+ duckDb: number;
3339
+ attackMs: number;
3340
+ releaseMs: number;
3341
+ windows?: {
3342
+ startMs: number;
3343
+ endMs: number;
3344
+ }[] | undefined;
3345
+ } | undefined;
3346
+ } | {
3347
+ kind: "component";
3348
+ componentId: string;
3349
+ props: Record<string, unknown>;
3350
+ zPlane?: "front" | "behind-subject" | undefined;
3351
+ } | {
3352
+ kind: "overlay";
3353
+ params: Record<string, unknown>;
3354
+ primitiveId: string;
3355
+ anchor?: {
3356
+ x: number;
3357
+ y: number;
3358
+ space: "scene";
3359
+ } | undefined;
3360
+ zPlane?: "front" | "behind-subject" | undefined;
3361
+ parallax?: number | undefined;
3362
+ } | {
3363
+ kind: "effect";
3364
+ primitiveId: string;
3365
+ params?: Record<string, unknown> | undefined;
3366
+ } | {
3367
+ kind: "alpha-layer";
3368
+ componentId: string;
3369
+ props: Record<string, unknown>;
3370
+ zPlane?: "front" | "behind-subject" | undefined;
3371
+ } | {
3372
+ kind: "card";
3373
+ html: string;
3374
+ zPlane?: "front" | undefined;
3375
+ tokens?: Record<string, string> | undefined;
3376
+ } | {
3377
+ kind: "composition";
3378
+ compositionId: string;
3379
+ trim?: {
3380
+ start: number;
3381
+ end: number;
3382
+ } | undefined;
3383
+ };
3384
+ kind?: "overlay" | "video" | "effect" | "audio" | "image" | undefined;
3385
+ opacity?: number | undefined;
3386
+ scale?: number | undefined;
3387
+ rotation?: number | undefined;
3388
+ position?: {
3389
+ x: number;
3390
+ y: number;
3391
+ } | undefined;
3392
+ region?: {
3393
+ x: number;
3394
+ y: number;
3395
+ w: number;
3396
+ h: number;
3397
+ } | undefined;
3398
+ fit?: "cover" | "contain" | undefined;
3399
+ effects?: {
3400
+ primitiveId: string;
3401
+ params?: Record<string, unknown> | undefined;
3402
+ }[] | undefined;
3403
+ transitionIn?: {
3404
+ type: string;
3405
+ duration: number;
3406
+ } | undefined;
3407
+ linkGroupId?: string | undefined;
3408
+ animate?: Record<string, {
3409
+ value: number;
3410
+ time: number;
3411
+ easing?: "ease" | "linear" | "easeIn" | "easeOut" | "easeInOut" | {
3412
+ cubicBezier: [number, number, number, number];
3413
+ } | undefined;
3414
+ }[]> | undefined;
3415
+ }, {
3416
+ id: string;
3417
+ duration: number;
3418
+ startTime: number;
3419
+ source: {
3420
+ kind: "media";
3421
+ mediaId: string & {
3422
+ __tableName: "mediaItems";
3423
+ };
3424
+ trim?: {
3425
+ start: number;
3426
+ end: number;
3427
+ } | undefined;
3428
+ anchor?: {
3429
+ clipId: string;
3430
+ offsetMs: number;
3431
+ } | undefined;
3432
+ reframe?: {
3433
+ segments: {
3434
+ startSec: number;
3435
+ endSec: number;
3436
+ focus: {
3437
+ mode: "frame-center";
3438
+ } | {
3439
+ mode: "point";
3440
+ x: number;
3441
+ y: number;
3442
+ } | {
3443
+ faceId: string;
3444
+ mode: "face";
3445
+ shotScale?: "close" | "standard" | "wide" | undefined;
3446
+ } | {
3447
+ mode: "all-faces";
3448
+ } | {
3449
+ mode: "active-speaker";
3450
+ };
3451
+ intent?: string | undefined;
3452
+ zoom?: number | undefined;
3453
+ ease?: {
3454
+ in: number;
3455
+ out: number;
3456
+ } | undefined;
3457
+ bias?: {
3458
+ x: number;
3459
+ y: number;
3460
+ } | undefined;
3461
+ }[];
3462
+ } | undefined;
3463
+ kenBurns?: "in" | "out" | "pan-l" | "pan-r" | "none" | undefined;
3464
+ excludedRanges?: {
3465
+ start: number;
3466
+ end: number;
3467
+ reason?: string | undefined;
3468
+ }[] | undefined;
3469
+ volume?: number | undefined;
3470
+ muted?: boolean | undefined;
3471
+ playbackRate?: number | undefined;
3472
+ sync?: "video" | "independent" | undefined;
3473
+ volumeDb?: number | undefined;
3474
+ fadeInMs?: number | undefined;
3475
+ fadeOutMs?: number | undefined;
3476
+ loop?: boolean | undefined;
3477
+ audioRole?: "sfx" | "music" | "vo" | "ambience" | undefined;
3478
+ duck?: {
3479
+ duckDb: number;
3480
+ attackMs: number;
3481
+ releaseMs: number;
3482
+ windows?: {
3483
+ startMs: number;
3484
+ endMs: number;
3485
+ }[] | undefined;
3486
+ } | undefined;
3487
+ } | {
3488
+ kind: "component";
3489
+ componentId: string;
3490
+ props: Record<string, unknown>;
3491
+ zPlane?: "front" | "behind-subject" | undefined;
3492
+ } | {
3493
+ kind: "overlay";
3494
+ params: Record<string, unknown>;
3495
+ primitiveId: string;
3496
+ anchor?: {
3497
+ x: number;
3498
+ y: number;
3499
+ space: "scene";
3500
+ } | undefined;
3501
+ zPlane?: "front" | "behind-subject" | undefined;
3502
+ parallax?: number | undefined;
3503
+ } | {
3504
+ kind: "effect";
3505
+ primitiveId: string;
3506
+ params?: Record<string, unknown> | undefined;
3507
+ } | {
3508
+ kind: "alpha-layer";
3509
+ componentId: string;
3510
+ props: Record<string, unknown>;
3511
+ zPlane?: "front" | "behind-subject" | undefined;
3512
+ } | {
3513
+ kind: "card";
3514
+ html: string;
3515
+ zPlane?: "front" | undefined;
3516
+ tokens?: Record<string, string> | undefined;
3517
+ } | {
3518
+ kind: "composition";
3519
+ compositionId: string;
3520
+ trim?: {
3521
+ start: number;
3522
+ end: number;
3523
+ } | undefined;
3524
+ };
3525
+ kind?: "overlay" | "video" | "effect" | "audio" | "image" | undefined;
3526
+ opacity?: number | undefined;
3527
+ scale?: number | undefined;
3528
+ rotation?: number | undefined;
3529
+ position?: {
3530
+ x: number;
3531
+ y: number;
3532
+ } | undefined;
3533
+ region?: {
3534
+ x: number;
3535
+ y: number;
3536
+ w: number;
3537
+ h: number;
3538
+ } | undefined;
3539
+ fit?: "cover" | "contain" | undefined;
3540
+ effects?: {
3541
+ primitiveId: string;
3542
+ params?: Record<string, unknown> | undefined;
3543
+ }[] | undefined;
3544
+ transitionIn?: {
3545
+ type: string;
3546
+ duration: number;
3547
+ } | undefined;
3548
+ linkGroupId?: string | undefined;
3549
+ animate?: Record<string, {
3550
+ value: number;
3551
+ time: number;
3552
+ easing?: "ease" | "linear" | "easeIn" | "easeOut" | "easeInOut" | {
3553
+ cubicBezier: [number, number, number, number];
3554
+ } | undefined;
3555
+ }[]> | undefined;
3556
+ }>, "many">;
3557
+ }, "strict", z.ZodTypeAny, {
3558
+ type: "loadOverlays";
3559
+ clips: {
3560
+ id: string;
3561
+ duration: number;
3562
+ startTime: number;
3563
+ source: {
3564
+ kind: "media";
3565
+ mediaId: string & {
3566
+ __tableName: "mediaItems";
3567
+ };
3568
+ trim?: {
3569
+ start: number;
3570
+ end: number;
3571
+ } | undefined;
3572
+ anchor?: {
3573
+ clipId: string;
3574
+ offsetMs: number;
3575
+ } | undefined;
3576
+ reframe?: {
3577
+ segments: {
3578
+ startSec: number;
3579
+ endSec: number;
3580
+ focus: {
3581
+ mode: "frame-center";
3582
+ } | {
3583
+ mode: "point";
3584
+ x: number;
3585
+ y: number;
3586
+ } | {
3587
+ faceId: string;
3588
+ mode: "face";
3589
+ shotScale?: "close" | "standard" | "wide" | undefined;
3590
+ } | {
3591
+ mode: "all-faces";
3592
+ } | {
3593
+ mode: "active-speaker";
3594
+ };
3595
+ intent?: string | undefined;
3596
+ zoom?: number | undefined;
3597
+ ease?: {
3598
+ in: number;
3599
+ out: number;
3600
+ } | undefined;
3601
+ bias?: {
3602
+ x: number;
3603
+ y: number;
3604
+ } | undefined;
3605
+ }[];
3606
+ } | undefined;
3607
+ kenBurns?: "in" | "out" | "pan-l" | "pan-r" | "none" | undefined;
3608
+ excludedRanges?: {
3609
+ start: number;
3610
+ end: number;
3611
+ reason?: string | undefined;
3612
+ }[] | undefined;
3613
+ volume?: number | undefined;
3614
+ muted?: boolean | undefined;
3615
+ playbackRate?: number | undefined;
3616
+ sync?: "video" | "independent" | undefined;
3617
+ volumeDb?: number | undefined;
3618
+ fadeInMs?: number | undefined;
3619
+ fadeOutMs?: number | undefined;
3620
+ loop?: boolean | undefined;
3621
+ audioRole?: "sfx" | "music" | "vo" | "ambience" | undefined;
3622
+ duck?: {
3623
+ duckDb: number;
3624
+ attackMs: number;
3625
+ releaseMs: number;
3626
+ windows?: {
3627
+ startMs: number;
3628
+ endMs: number;
3629
+ }[] | undefined;
3630
+ } | undefined;
3631
+ } | {
3632
+ kind: "component";
3633
+ componentId: string;
3634
+ props: Record<string, unknown>;
3635
+ zPlane?: "front" | "behind-subject" | undefined;
3636
+ } | {
3637
+ kind: "overlay";
3638
+ params: Record<string, unknown>;
3639
+ primitiveId: string;
3640
+ anchor?: {
3641
+ x: number;
3642
+ y: number;
3643
+ space: "scene";
3644
+ } | undefined;
3645
+ zPlane?: "front" | "behind-subject" | undefined;
3646
+ parallax?: number | undefined;
3647
+ } | {
3648
+ kind: "effect";
3649
+ primitiveId: string;
3650
+ params?: Record<string, unknown> | undefined;
3651
+ } | {
3652
+ kind: "alpha-layer";
3653
+ componentId: string;
3654
+ props: Record<string, unknown>;
3655
+ zPlane?: "front" | "behind-subject" | undefined;
3656
+ } | {
3657
+ kind: "card";
3658
+ html: string;
3659
+ zPlane?: "front" | undefined;
3660
+ tokens?: Record<string, string> | undefined;
3661
+ } | {
3662
+ kind: "composition";
3663
+ compositionId: string;
3664
+ trim?: {
3665
+ start: number;
3666
+ end: number;
3667
+ } | undefined;
3668
+ };
3669
+ kind?: "overlay" | "video" | "effect" | "audio" | "image" | undefined;
3670
+ opacity?: number | undefined;
3671
+ scale?: number | undefined;
3672
+ rotation?: number | undefined;
3673
+ position?: {
3674
+ x: number;
3675
+ y: number;
3676
+ } | undefined;
3677
+ region?: {
3678
+ x: number;
3679
+ y: number;
3680
+ w: number;
3681
+ h: number;
3682
+ } | undefined;
3683
+ fit?: "cover" | "contain" | undefined;
3684
+ effects?: {
3685
+ primitiveId: string;
3686
+ params?: Record<string, unknown> | undefined;
3687
+ }[] | undefined;
3688
+ transitionIn?: {
3689
+ type: string;
3690
+ duration: number;
3691
+ } | undefined;
3692
+ linkGroupId?: string | undefined;
3693
+ animate?: Record<string, {
3694
+ value: number;
3695
+ time: number;
3696
+ easing?: "ease" | "linear" | "easeIn" | "easeOut" | "easeInOut" | {
3697
+ cubicBezier: [number, number, number, number];
3698
+ } | undefined;
3699
+ }[]> | undefined;
3700
+ }[];
3701
+ }, {
3702
+ type: "loadOverlays";
3703
+ clips: {
3704
+ id: string;
3705
+ duration: number;
3706
+ startTime: number;
3707
+ source: {
3708
+ kind: "media";
3709
+ mediaId: string & {
3710
+ __tableName: "mediaItems";
3711
+ };
3712
+ trim?: {
3713
+ start: number;
3714
+ end: number;
3715
+ } | undefined;
3716
+ anchor?: {
3717
+ clipId: string;
3718
+ offsetMs: number;
3719
+ } | undefined;
3720
+ reframe?: {
3721
+ segments: {
3722
+ startSec: number;
3723
+ endSec: number;
3724
+ focus: {
3725
+ mode: "frame-center";
3726
+ } | {
3727
+ mode: "point";
3728
+ x: number;
3729
+ y: number;
3730
+ } | {
3731
+ faceId: string;
3732
+ mode: "face";
3733
+ shotScale?: "close" | "standard" | "wide" | undefined;
3734
+ } | {
3735
+ mode: "all-faces";
3736
+ } | {
3737
+ mode: "active-speaker";
3738
+ };
3739
+ intent?: string | undefined;
3740
+ zoom?: number | undefined;
3741
+ ease?: {
3742
+ in: number;
3743
+ out: number;
3744
+ } | undefined;
3745
+ bias?: {
3746
+ x: number;
3747
+ y: number;
3748
+ } | undefined;
3749
+ }[];
3750
+ } | undefined;
3751
+ kenBurns?: "in" | "out" | "pan-l" | "pan-r" | "none" | undefined;
3752
+ excludedRanges?: {
3753
+ start: number;
3754
+ end: number;
3755
+ reason?: string | undefined;
3756
+ }[] | undefined;
3757
+ volume?: number | undefined;
3758
+ muted?: boolean | undefined;
3759
+ playbackRate?: number | undefined;
3760
+ sync?: "video" | "independent" | undefined;
3761
+ volumeDb?: number | undefined;
3762
+ fadeInMs?: number | undefined;
3763
+ fadeOutMs?: number | undefined;
3764
+ loop?: boolean | undefined;
3765
+ audioRole?: "sfx" | "music" | "vo" | "ambience" | undefined;
3766
+ duck?: {
3767
+ duckDb: number;
3768
+ attackMs: number;
3769
+ releaseMs: number;
3770
+ windows?: {
3771
+ startMs: number;
3772
+ endMs: number;
3773
+ }[] | undefined;
3774
+ } | undefined;
3775
+ } | {
3776
+ kind: "component";
3777
+ componentId: string;
3778
+ props: Record<string, unknown>;
3779
+ zPlane?: "front" | "behind-subject" | undefined;
3780
+ } | {
3781
+ kind: "overlay";
3782
+ params: Record<string, unknown>;
3783
+ primitiveId: string;
3784
+ anchor?: {
3785
+ x: number;
3786
+ y: number;
3787
+ space: "scene";
3788
+ } | undefined;
3789
+ zPlane?: "front" | "behind-subject" | undefined;
3790
+ parallax?: number | undefined;
3791
+ } | {
3792
+ kind: "effect";
3793
+ primitiveId: string;
3794
+ params?: Record<string, unknown> | undefined;
3795
+ } | {
3796
+ kind: "alpha-layer";
3797
+ componentId: string;
3798
+ props: Record<string, unknown>;
3799
+ zPlane?: "front" | "behind-subject" | undefined;
3800
+ } | {
3801
+ kind: "card";
3802
+ html: string;
3803
+ zPlane?: "front" | undefined;
3804
+ tokens?: Record<string, string> | undefined;
3805
+ } | {
3806
+ kind: "composition";
3807
+ compositionId: string;
3808
+ trim?: {
3809
+ start: number;
3810
+ end: number;
3811
+ } | undefined;
3812
+ };
3813
+ kind?: "overlay" | "video" | "effect" | "audio" | "image" | undefined;
3814
+ opacity?: number | undefined;
3815
+ scale?: number | undefined;
3816
+ rotation?: number | undefined;
3817
+ position?: {
3818
+ x: number;
3819
+ y: number;
3820
+ } | undefined;
3821
+ region?: {
3822
+ x: number;
3823
+ y: number;
3824
+ w: number;
3825
+ h: number;
3826
+ } | undefined;
3827
+ fit?: "cover" | "contain" | undefined;
3828
+ effects?: {
3829
+ primitiveId: string;
3830
+ params?: Record<string, unknown> | undefined;
3831
+ }[] | undefined;
3832
+ transitionIn?: {
3833
+ type: string;
3834
+ duration: number;
3835
+ } | undefined;
3836
+ linkGroupId?: string | undefined;
3837
+ animate?: Record<string, {
3838
+ value: number;
3839
+ time: number;
3840
+ easing?: "ease" | "linear" | "easeIn" | "easeOut" | "easeInOut" | {
3841
+ cubicBezier: [number, number, number, number];
3842
+ } | undefined;
3843
+ }[]> | undefined;
3844
+ }[];
3845
+ }>, z.ZodObject<{
3846
+ type: z.ZodLiteral<"addMarker">;
3847
+ marker: z.ZodObject<{
3848
+ id: z.ZodString;
3849
+ startTime: z.ZodNumber;
3850
+ endTime: z.ZodOptional<z.ZodNumber>;
3851
+ kind: z.ZodString;
3852
+ name: z.ZodOptional<z.ZodString>;
3853
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3854
+ }, "strict", z.ZodTypeAny, {
3855
+ id: string;
3856
+ kind: string;
3857
+ startTime: number;
3858
+ name?: string | undefined;
3859
+ endTime?: number | undefined;
3860
+ metadata?: Record<string, unknown> | undefined;
3861
+ }, {
3862
+ id: string;
3863
+ kind: string;
3864
+ startTime: number;
3865
+ name?: string | undefined;
3866
+ endTime?: number | undefined;
3867
+ metadata?: Record<string, unknown> | undefined;
3868
+ }>;
3869
+ }, "strict", z.ZodTypeAny, {
3870
+ type: "addMarker";
3871
+ marker: {
3872
+ id: string;
3873
+ kind: string;
3874
+ startTime: number;
3875
+ name?: string | undefined;
3876
+ endTime?: number | undefined;
3877
+ metadata?: Record<string, unknown> | undefined;
3878
+ };
3879
+ }, {
3880
+ type: "addMarker";
3881
+ marker: {
3882
+ id: string;
3883
+ kind: string;
3884
+ startTime: number;
3885
+ name?: string | undefined;
3886
+ endTime?: number | undefined;
3887
+ metadata?: Record<string, unknown> | undefined;
3888
+ };
3889
+ }>, z.ZodObject<{
3890
+ type: z.ZodLiteral<"removeMarker">;
3891
+ markerId: z.ZodString;
3892
+ }, "strict", z.ZodTypeAny, {
3893
+ type: "removeMarker";
3894
+ markerId: string;
3895
+ }, {
3896
+ type: "removeMarker";
3897
+ markerId: string;
3898
+ }>, z.ZodObject<{
3899
+ type: z.ZodLiteral<"updateMarker">;
3900
+ markerId: z.ZodString;
3901
+ updates: z.ZodObject<{
3902
+ id: z.ZodOptional<z.ZodString>;
3903
+ startTime: z.ZodOptional<z.ZodNumber>;
3904
+ endTime: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
3905
+ kind: z.ZodOptional<z.ZodString>;
3906
+ name: z.ZodOptional<z.ZodOptional<z.ZodString>>;
3907
+ metadata: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
3908
+ }, "strict", z.ZodTypeAny, {
3909
+ id?: string | undefined;
3910
+ kind?: string | undefined;
3911
+ name?: string | undefined;
3912
+ startTime?: number | undefined;
3913
+ endTime?: number | undefined;
3914
+ metadata?: Record<string, unknown> | undefined;
3915
+ }, {
3916
+ id?: string | undefined;
3917
+ kind?: string | undefined;
3918
+ name?: string | undefined;
3919
+ startTime?: number | undefined;
3920
+ endTime?: number | undefined;
3921
+ metadata?: Record<string, unknown> | undefined;
3922
+ }>;
3923
+ }, "strict", z.ZodTypeAny, {
3924
+ type: "updateMarker";
3925
+ markerId: string;
3926
+ updates: {
3927
+ id?: string | undefined;
3928
+ kind?: string | undefined;
3929
+ name?: string | undefined;
3930
+ startTime?: number | undefined;
3931
+ endTime?: number | undefined;
3932
+ metadata?: Record<string, unknown> | undefined;
3933
+ };
3934
+ }, {
3935
+ type: "updateMarker";
3936
+ markerId: string;
3937
+ updates: {
3938
+ id?: string | undefined;
3939
+ kind?: string | undefined;
3940
+ name?: string | undefined;
3941
+ startTime?: number | undefined;
3942
+ endTime?: number | undefined;
3943
+ metadata?: Record<string, unknown> | undefined;
3944
+ };
3945
+ }>, z.ZodObject<{
3946
+ type: z.ZodLiteral<"setCropIntents">;
3947
+ clipId: z.ZodString;
3948
+ segments: z.ZodNullable<z.ZodArray<z.ZodEffects<z.ZodObject<{
3949
+ startSec: z.ZodNumber;
3950
+ endSec: z.ZodNumber;
3951
+ focus: z.ZodDiscriminatedUnion<"mode", [z.ZodObject<{
3952
+ mode: z.ZodLiteral<"frame-center">;
3953
+ }, "strip", z.ZodTypeAny, {
3954
+ mode: "frame-center";
3955
+ }, {
3956
+ mode: "frame-center";
3957
+ }>, z.ZodObject<{
3958
+ mode: z.ZodLiteral<"point">;
3959
+ x: z.ZodNumber;
3960
+ y: z.ZodNumber;
3961
+ }, "strip", z.ZodTypeAny, {
3962
+ mode: "point";
3963
+ x: number;
3964
+ y: number;
3965
+ }, {
3966
+ mode: "point";
3967
+ x: number;
3968
+ y: number;
3969
+ }>, z.ZodObject<{
3970
+ mode: z.ZodLiteral<"face">;
3971
+ faceId: z.ZodString;
3972
+ shotScale: z.ZodOptional<z.ZodEnum<["close", "standard", "wide"]>>;
3973
+ }, "strip", z.ZodTypeAny, {
3974
+ faceId: string;
3975
+ mode: "face";
3976
+ shotScale?: "close" | "standard" | "wide" | undefined;
3977
+ }, {
3978
+ faceId: string;
3979
+ mode: "face";
3980
+ shotScale?: "close" | "standard" | "wide" | undefined;
3981
+ }>, z.ZodObject<{
3982
+ mode: z.ZodLiteral<"all-faces">;
3983
+ }, "strip", z.ZodTypeAny, {
3984
+ mode: "all-faces";
3985
+ }, {
3986
+ mode: "all-faces";
3987
+ }>, z.ZodObject<{
3988
+ mode: z.ZodLiteral<"active-speaker">;
3989
+ }, "strip", z.ZodTypeAny, {
3990
+ mode: "active-speaker";
3991
+ }, {
3992
+ mode: "active-speaker";
3993
+ }>]>;
3994
+ intent: z.ZodOptional<z.ZodString>;
3995
+ zoom: z.ZodOptional<z.ZodNumber>;
3996
+ ease: z.ZodOptional<z.ZodObject<{
3997
+ in: z.ZodNumber;
3998
+ out: z.ZodNumber;
3999
+ }, "strip", z.ZodTypeAny, {
4000
+ in: number;
4001
+ out: number;
4002
+ }, {
4003
+ in: number;
4004
+ out: number;
4005
+ }>>;
4006
+ bias: z.ZodOptional<z.ZodObject<{
4007
+ x: z.ZodNumber;
4008
+ y: z.ZodNumber;
4009
+ }, "strip", z.ZodTypeAny, {
4010
+ x: number;
4011
+ y: number;
4012
+ }, {
4013
+ x: number;
4014
+ y: number;
4015
+ }>>;
4016
+ }, "strip", z.ZodTypeAny, {
4017
+ startSec: number;
4018
+ endSec: number;
4019
+ focus: {
4020
+ mode: "frame-center";
4021
+ } | {
4022
+ mode: "point";
4023
+ x: number;
4024
+ y: number;
4025
+ } | {
4026
+ faceId: string;
4027
+ mode: "face";
4028
+ shotScale?: "close" | "standard" | "wide" | undefined;
4029
+ } | {
4030
+ mode: "all-faces";
4031
+ } | {
4032
+ mode: "active-speaker";
4033
+ };
4034
+ intent?: string | undefined;
4035
+ zoom?: number | undefined;
4036
+ ease?: {
4037
+ in: number;
4038
+ out: number;
4039
+ } | undefined;
4040
+ bias?: {
4041
+ x: number;
4042
+ y: number;
4043
+ } | undefined;
4044
+ }, {
4045
+ startSec: number;
4046
+ endSec: number;
4047
+ focus: {
4048
+ mode: "frame-center";
4049
+ } | {
4050
+ mode: "point";
4051
+ x: number;
4052
+ y: number;
4053
+ } | {
4054
+ faceId: string;
4055
+ mode: "face";
4056
+ shotScale?: "close" | "standard" | "wide" | undefined;
4057
+ } | {
4058
+ mode: "all-faces";
4059
+ } | {
4060
+ mode: "active-speaker";
4061
+ };
4062
+ intent?: string | undefined;
4063
+ zoom?: number | undefined;
4064
+ ease?: {
4065
+ in: number;
4066
+ out: number;
4067
+ } | undefined;
4068
+ bias?: {
4069
+ x: number;
4070
+ y: number;
4071
+ } | undefined;
4072
+ }>, {
4073
+ startSec: number;
4074
+ endSec: number;
4075
+ focus: {
4076
+ mode: "frame-center";
4077
+ } | {
4078
+ mode: "point";
4079
+ x: number;
4080
+ y: number;
4081
+ } | {
4082
+ faceId: string;
4083
+ mode: "face";
4084
+ shotScale?: "close" | "standard" | "wide" | undefined;
4085
+ } | {
4086
+ mode: "all-faces";
4087
+ } | {
4088
+ mode: "active-speaker";
4089
+ };
4090
+ intent?: string | undefined;
4091
+ zoom?: number | undefined;
4092
+ ease?: {
4093
+ in: number;
4094
+ out: number;
4095
+ } | undefined;
4096
+ bias?: {
4097
+ x: number;
4098
+ y: number;
4099
+ } | undefined;
4100
+ }, {
4101
+ startSec: number;
4102
+ endSec: number;
4103
+ focus: {
4104
+ mode: "frame-center";
4105
+ } | {
4106
+ mode: "point";
4107
+ x: number;
4108
+ y: number;
4109
+ } | {
4110
+ faceId: string;
4111
+ mode: "face";
4112
+ shotScale?: "close" | "standard" | "wide" | undefined;
4113
+ } | {
4114
+ mode: "all-faces";
4115
+ } | {
4116
+ mode: "active-speaker";
4117
+ };
4118
+ intent?: string | undefined;
4119
+ zoom?: number | undefined;
4120
+ ease?: {
4121
+ in: number;
4122
+ out: number;
4123
+ } | undefined;
4124
+ bias?: {
4125
+ x: number;
4126
+ y: number;
4127
+ } | undefined;
4128
+ }>, "many">>;
4129
+ }, "strict", z.ZodTypeAny, {
4130
+ type: "setCropIntents";
4131
+ clipId: string;
4132
+ segments: {
4133
+ startSec: number;
4134
+ endSec: number;
4135
+ focus: {
4136
+ mode: "frame-center";
4137
+ } | {
4138
+ mode: "point";
4139
+ x: number;
4140
+ y: number;
4141
+ } | {
4142
+ faceId: string;
4143
+ mode: "face";
4144
+ shotScale?: "close" | "standard" | "wide" | undefined;
4145
+ } | {
4146
+ mode: "all-faces";
4147
+ } | {
4148
+ mode: "active-speaker";
4149
+ };
4150
+ intent?: string | undefined;
4151
+ zoom?: number | undefined;
4152
+ ease?: {
4153
+ in: number;
4154
+ out: number;
4155
+ } | undefined;
4156
+ bias?: {
4157
+ x: number;
4158
+ y: number;
4159
+ } | undefined;
4160
+ }[] | null;
4161
+ }, {
4162
+ type: "setCropIntents";
4163
+ clipId: string;
4164
+ segments: {
4165
+ startSec: number;
4166
+ endSec: number;
4167
+ focus: {
4168
+ mode: "frame-center";
4169
+ } | {
4170
+ mode: "point";
4171
+ x: number;
4172
+ y: number;
4173
+ } | {
4174
+ faceId: string;
4175
+ mode: "face";
4176
+ shotScale?: "close" | "standard" | "wide" | undefined;
4177
+ } | {
4178
+ mode: "all-faces";
4179
+ } | {
4180
+ mode: "active-speaker";
4181
+ };
4182
+ intent?: string | undefined;
4183
+ zoom?: number | undefined;
4184
+ ease?: {
4185
+ in: number;
4186
+ out: number;
4187
+ } | undefined;
4188
+ bias?: {
4189
+ x: number;
4190
+ y: number;
4191
+ } | undefined;
4192
+ }[] | null;
4193
+ }>, z.ZodObject<{
4194
+ type: z.ZodLiteral<"setEffects">;
4195
+ clipId: z.ZodString;
4196
+ effects: z.ZodArray<z.ZodObject<{
4197
+ primitiveId: z.ZodString;
4198
+ params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
4199
+ }, "strip", z.ZodTypeAny, {
4200
+ primitiveId: string;
4201
+ params?: Record<string, unknown> | undefined;
4202
+ }, {
4203
+ primitiveId: string;
4204
+ params?: Record<string, unknown> | undefined;
4205
+ }>, "many">;
4206
+ }, "strict", z.ZodTypeAny, {
4207
+ type: "setEffects";
4208
+ clipId: string;
4209
+ effects: {
4210
+ primitiveId: string;
4211
+ params?: Record<string, unknown> | undefined;
4212
+ }[];
4213
+ }, {
4214
+ type: "setEffects";
4215
+ clipId: string;
4216
+ effects: {
4217
+ primitiveId: string;
4218
+ params?: Record<string, unknown> | undefined;
4219
+ }[];
4220
+ }>, z.ZodObject<{
4221
+ type: z.ZodLiteral<"setCaptionStyle">;
4222
+ style: z.ZodObject<{
4223
+ fontFamily: z.ZodOptional<z.ZodOptional<z.ZodString>>;
4224
+ fontSize: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4225
+ fontWeight: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4226
+ color: z.ZodOptional<z.ZodOptional<z.ZodString>>;
4227
+ highlightColor: z.ZodOptional<z.ZodOptional<z.ZodString>>;
4228
+ backgroundColor: z.ZodOptional<z.ZodOptional<z.ZodString>>;
4229
+ plate: z.ZodOptional<z.ZodOptional<z.ZodEnum<["glass", "solid", "none"]>>>;
4230
+ position: z.ZodOptional<z.ZodOptional<z.ZodEnum<["top", "center", "bottom"]>>>;
4231
+ textTransform: z.ZodOptional<z.ZodOptional<z.ZodEnum<["none", "uppercase", "capitalize"]>>>;
4232
+ emphasisColor: z.ZodOptional<z.ZodOptional<z.ZodString>>;
4233
+ emphasisGradient: z.ZodOptional<z.ZodOptional<z.ZodString>>;
4234
+ emphasisScale: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4235
+ emphasisFontFamily: z.ZodOptional<z.ZodOptional<z.ZodString>>;
4236
+ emphasisFontWeight: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4237
+ emphasisTextTransform: z.ZodOptional<z.ZodOptional<z.ZodEnum<["none", "uppercase", "capitalize"]>>>;
4238
+ emphasisLetterSpacing: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4239
+ emphasisFontStyle: z.ZodOptional<z.ZodOptional<z.ZodEnum<["normal", "italic"]>>>;
4240
+ entrance: z.ZodOptional<z.ZodOptional<z.ZodEnum<["none", "fade", "word-pop", "stagger-up"]>>>;
4241
+ entranceMs: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4242
+ entranceStaggerMs: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4243
+ exitMs: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4244
+ emphasisPlate: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
4245
+ emphasisPlateColor: z.ZodOptional<z.ZodOptional<z.ZodString>>;
4246
+ emphasisPlateTextColor: z.ZodOptional<z.ZodOptional<z.ZodString>>;
4247
+ emphasisPlateAltColor: z.ZodOptional<z.ZodOptional<z.ZodString>>;
4248
+ emphasisPlateAltTextColor: z.ZodOptional<z.ZodOptional<z.ZodString>>;
4249
+ emphasisPlateRadius: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4250
+ emphasisPlatePadX: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4251
+ emphasisPlatePadY: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4252
+ annotationColor: z.ZodOptional<z.ZodOptional<z.ZodString>>;
4253
+ maxWidthPercent: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4254
+ }, "strip", z.ZodTypeAny, {
4255
+ position?: "top" | "center" | "bottom" | undefined;
4256
+ fontFamily?: string | undefined;
4257
+ fontSize?: number | undefined;
4258
+ fontWeight?: number | undefined;
4259
+ color?: string | undefined;
4260
+ highlightColor?: string | undefined;
4261
+ backgroundColor?: string | undefined;
4262
+ plate?: "glass" | "solid" | "none" | undefined;
4263
+ textTransform?: "none" | "uppercase" | "capitalize" | undefined;
4264
+ emphasisColor?: string | undefined;
4265
+ emphasisGradient?: string | undefined;
4266
+ emphasisScale?: number | undefined;
4267
+ emphasisFontFamily?: string | undefined;
4268
+ emphasisFontWeight?: number | undefined;
4269
+ emphasisTextTransform?: "none" | "uppercase" | "capitalize" | undefined;
4270
+ emphasisLetterSpacing?: number | undefined;
4271
+ emphasisFontStyle?: "normal" | "italic" | undefined;
4272
+ entrance?: "none" | "fade" | "word-pop" | "stagger-up" | undefined;
4273
+ entranceMs?: number | undefined;
4274
+ entranceStaggerMs?: number | undefined;
4275
+ exitMs?: number | undefined;
4276
+ emphasisPlate?: boolean | undefined;
4277
+ emphasisPlateColor?: string | undefined;
4278
+ emphasisPlateTextColor?: string | undefined;
4279
+ emphasisPlateAltColor?: string | undefined;
4280
+ emphasisPlateAltTextColor?: string | undefined;
4281
+ emphasisPlateRadius?: number | undefined;
4282
+ emphasisPlatePadX?: number | undefined;
4283
+ emphasisPlatePadY?: number | undefined;
4284
+ annotationColor?: string | undefined;
4285
+ maxWidthPercent?: number | undefined;
4286
+ }, {
4287
+ position?: "top" | "center" | "bottom" | undefined;
4288
+ fontFamily?: string | undefined;
4289
+ fontSize?: number | undefined;
4290
+ fontWeight?: number | undefined;
4291
+ color?: string | undefined;
4292
+ highlightColor?: string | undefined;
4293
+ backgroundColor?: string | undefined;
4294
+ plate?: "glass" | "solid" | "none" | undefined;
4295
+ textTransform?: "none" | "uppercase" | "capitalize" | undefined;
4296
+ emphasisColor?: string | undefined;
4297
+ emphasisGradient?: string | undefined;
4298
+ emphasisScale?: number | undefined;
4299
+ emphasisFontFamily?: string | undefined;
4300
+ emphasisFontWeight?: number | undefined;
4301
+ emphasisTextTransform?: "none" | "uppercase" | "capitalize" | undefined;
4302
+ emphasisLetterSpacing?: number | undefined;
4303
+ emphasisFontStyle?: "normal" | "italic" | undefined;
4304
+ entrance?: "none" | "fade" | "word-pop" | "stagger-up" | undefined;
4305
+ entranceMs?: number | undefined;
4306
+ entranceStaggerMs?: number | undefined;
4307
+ exitMs?: number | undefined;
4308
+ emphasisPlate?: boolean | undefined;
4309
+ emphasisPlateColor?: string | undefined;
4310
+ emphasisPlateTextColor?: string | undefined;
4311
+ emphasisPlateAltColor?: string | undefined;
4312
+ emphasisPlateAltTextColor?: string | undefined;
4313
+ emphasisPlateRadius?: number | undefined;
4314
+ emphasisPlatePadX?: number | undefined;
4315
+ emphasisPlatePadY?: number | undefined;
4316
+ annotationColor?: string | undefined;
4317
+ maxWidthPercent?: number | undefined;
4318
+ }>;
4319
+ }, "strict", z.ZodTypeAny, {
4320
+ type: "setCaptionStyle";
4321
+ style: {
4322
+ position?: "top" | "center" | "bottom" | undefined;
4323
+ fontFamily?: string | undefined;
4324
+ fontSize?: number | undefined;
4325
+ fontWeight?: number | undefined;
4326
+ color?: string | undefined;
4327
+ highlightColor?: string | undefined;
4328
+ backgroundColor?: string | undefined;
4329
+ plate?: "glass" | "solid" | "none" | undefined;
4330
+ textTransform?: "none" | "uppercase" | "capitalize" | undefined;
4331
+ emphasisColor?: string | undefined;
4332
+ emphasisGradient?: string | undefined;
4333
+ emphasisScale?: number | undefined;
4334
+ emphasisFontFamily?: string | undefined;
4335
+ emphasisFontWeight?: number | undefined;
4336
+ emphasisTextTransform?: "none" | "uppercase" | "capitalize" | undefined;
4337
+ emphasisLetterSpacing?: number | undefined;
4338
+ emphasisFontStyle?: "normal" | "italic" | undefined;
4339
+ entrance?: "none" | "fade" | "word-pop" | "stagger-up" | undefined;
4340
+ entranceMs?: number | undefined;
4341
+ entranceStaggerMs?: number | undefined;
4342
+ exitMs?: number | undefined;
4343
+ emphasisPlate?: boolean | undefined;
4344
+ emphasisPlateColor?: string | undefined;
4345
+ emphasisPlateTextColor?: string | undefined;
4346
+ emphasisPlateAltColor?: string | undefined;
4347
+ emphasisPlateAltTextColor?: string | undefined;
4348
+ emphasisPlateRadius?: number | undefined;
4349
+ emphasisPlatePadX?: number | undefined;
4350
+ emphasisPlatePadY?: number | undefined;
4351
+ annotationColor?: string | undefined;
4352
+ maxWidthPercent?: number | undefined;
4353
+ };
4354
+ }, {
4355
+ type: "setCaptionStyle";
4356
+ style: {
4357
+ position?: "top" | "center" | "bottom" | undefined;
4358
+ fontFamily?: string | undefined;
4359
+ fontSize?: number | undefined;
4360
+ fontWeight?: number | undefined;
4361
+ color?: string | undefined;
4362
+ highlightColor?: string | undefined;
4363
+ backgroundColor?: string | undefined;
4364
+ plate?: "glass" | "solid" | "none" | undefined;
4365
+ textTransform?: "none" | "uppercase" | "capitalize" | undefined;
4366
+ emphasisColor?: string | undefined;
4367
+ emphasisGradient?: string | undefined;
4368
+ emphasisScale?: number | undefined;
4369
+ emphasisFontFamily?: string | undefined;
4370
+ emphasisFontWeight?: number | undefined;
4371
+ emphasisTextTransform?: "none" | "uppercase" | "capitalize" | undefined;
4372
+ emphasisLetterSpacing?: number | undefined;
4373
+ emphasisFontStyle?: "normal" | "italic" | undefined;
4374
+ entrance?: "none" | "fade" | "word-pop" | "stagger-up" | undefined;
4375
+ entranceMs?: number | undefined;
4376
+ entranceStaggerMs?: number | undefined;
4377
+ exitMs?: number | undefined;
4378
+ emphasisPlate?: boolean | undefined;
4379
+ emphasisPlateColor?: string | undefined;
4380
+ emphasisPlateTextColor?: string | undefined;
4381
+ emphasisPlateAltColor?: string | undefined;
4382
+ emphasisPlateAltTextColor?: string | undefined;
4383
+ emphasisPlateRadius?: number | undefined;
4384
+ emphasisPlatePadX?: number | undefined;
4385
+ emphasisPlatePadY?: number | undefined;
4386
+ annotationColor?: string | undefined;
4387
+ maxWidthPercent?: number | undefined;
4388
+ };
4389
+ }>, z.ZodObject<{
4390
+ type: z.ZodLiteral<"setCaptions">;
4391
+ segments: z.ZodArray<z.ZodObject<{
4392
+ words: z.ZodArray<z.ZodObject<{
4393
+ text: z.ZodString;
4394
+ startMs: z.ZodNumber;
4395
+ endMs: z.ZodNumber;
4396
+ emphasis: z.ZodOptional<z.ZodBoolean>;
4397
+ annotate: z.ZodOptional<z.ZodEnum<["circle", "underline"]>>;
4398
+ }, "strip", z.ZodTypeAny, {
4399
+ startMs: number;
4400
+ endMs: number;
4401
+ text: string;
4402
+ emphasis?: boolean | undefined;
4403
+ annotate?: "circle" | "underline" | undefined;
4404
+ }, {
4405
+ startMs: number;
4406
+ endMs: number;
4407
+ text: string;
4408
+ emphasis?: boolean | undefined;
4409
+ annotate?: "circle" | "underline" | undefined;
4410
+ }>, "many">;
4411
+ }, "strip", z.ZodTypeAny, {
4412
+ words: {
4413
+ startMs: number;
4414
+ endMs: number;
4415
+ text: string;
4416
+ emphasis?: boolean | undefined;
4417
+ annotate?: "circle" | "underline" | undefined;
4418
+ }[];
4419
+ }, {
4420
+ words: {
4421
+ startMs: number;
4422
+ endMs: number;
4423
+ text: string;
4424
+ emphasis?: boolean | undefined;
4425
+ annotate?: "circle" | "underline" | undefined;
4426
+ }[];
4427
+ }>, "many">;
4428
+ style: z.ZodOptional<z.ZodObject<{
4429
+ fontFamily: z.ZodOptional<z.ZodOptional<z.ZodString>>;
4430
+ fontSize: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4431
+ fontWeight: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4432
+ color: z.ZodOptional<z.ZodOptional<z.ZodString>>;
4433
+ highlightColor: z.ZodOptional<z.ZodOptional<z.ZodString>>;
4434
+ backgroundColor: z.ZodOptional<z.ZodOptional<z.ZodString>>;
4435
+ plate: z.ZodOptional<z.ZodOptional<z.ZodEnum<["glass", "solid", "none"]>>>;
4436
+ position: z.ZodOptional<z.ZodOptional<z.ZodEnum<["top", "center", "bottom"]>>>;
4437
+ textTransform: z.ZodOptional<z.ZodOptional<z.ZodEnum<["none", "uppercase", "capitalize"]>>>;
4438
+ emphasisColor: z.ZodOptional<z.ZodOptional<z.ZodString>>;
4439
+ emphasisGradient: z.ZodOptional<z.ZodOptional<z.ZodString>>;
4440
+ emphasisScale: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4441
+ emphasisFontFamily: z.ZodOptional<z.ZodOptional<z.ZodString>>;
4442
+ emphasisFontWeight: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4443
+ emphasisTextTransform: z.ZodOptional<z.ZodOptional<z.ZodEnum<["none", "uppercase", "capitalize"]>>>;
4444
+ emphasisLetterSpacing: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4445
+ emphasisFontStyle: z.ZodOptional<z.ZodOptional<z.ZodEnum<["normal", "italic"]>>>;
4446
+ entrance: z.ZodOptional<z.ZodOptional<z.ZodEnum<["none", "fade", "word-pop", "stagger-up"]>>>;
4447
+ entranceMs: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4448
+ entranceStaggerMs: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4449
+ exitMs: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4450
+ emphasisPlate: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
4451
+ emphasisPlateColor: z.ZodOptional<z.ZodOptional<z.ZodString>>;
4452
+ emphasisPlateTextColor: z.ZodOptional<z.ZodOptional<z.ZodString>>;
4453
+ emphasisPlateAltColor: z.ZodOptional<z.ZodOptional<z.ZodString>>;
4454
+ emphasisPlateAltTextColor: z.ZodOptional<z.ZodOptional<z.ZodString>>;
4455
+ emphasisPlateRadius: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4456
+ emphasisPlatePadX: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4457
+ emphasisPlatePadY: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4458
+ annotationColor: z.ZodOptional<z.ZodOptional<z.ZodString>>;
4459
+ maxWidthPercent: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4460
+ }, "strip", z.ZodTypeAny, {
4461
+ position?: "top" | "center" | "bottom" | undefined;
4462
+ fontFamily?: string | undefined;
4463
+ fontSize?: number | undefined;
4464
+ fontWeight?: number | undefined;
4465
+ color?: string | undefined;
4466
+ highlightColor?: string | undefined;
4467
+ backgroundColor?: string | undefined;
4468
+ plate?: "glass" | "solid" | "none" | undefined;
4469
+ textTransform?: "none" | "uppercase" | "capitalize" | undefined;
4470
+ emphasisColor?: string | undefined;
4471
+ emphasisGradient?: string | undefined;
4472
+ emphasisScale?: number | undefined;
4473
+ emphasisFontFamily?: string | undefined;
4474
+ emphasisFontWeight?: number | undefined;
4475
+ emphasisTextTransform?: "none" | "uppercase" | "capitalize" | undefined;
4476
+ emphasisLetterSpacing?: number | undefined;
4477
+ emphasisFontStyle?: "normal" | "italic" | undefined;
4478
+ entrance?: "none" | "fade" | "word-pop" | "stagger-up" | undefined;
4479
+ entranceMs?: number | undefined;
4480
+ entranceStaggerMs?: number | undefined;
4481
+ exitMs?: number | undefined;
4482
+ emphasisPlate?: boolean | undefined;
4483
+ emphasisPlateColor?: string | undefined;
4484
+ emphasisPlateTextColor?: string | undefined;
4485
+ emphasisPlateAltColor?: string | undefined;
4486
+ emphasisPlateAltTextColor?: string | undefined;
4487
+ emphasisPlateRadius?: number | undefined;
4488
+ emphasisPlatePadX?: number | undefined;
4489
+ emphasisPlatePadY?: number | undefined;
4490
+ annotationColor?: string | undefined;
4491
+ maxWidthPercent?: number | undefined;
4492
+ }, {
4493
+ position?: "top" | "center" | "bottom" | undefined;
4494
+ fontFamily?: string | undefined;
4495
+ fontSize?: number | undefined;
4496
+ fontWeight?: number | undefined;
4497
+ color?: string | undefined;
4498
+ highlightColor?: string | undefined;
4499
+ backgroundColor?: string | undefined;
4500
+ plate?: "glass" | "solid" | "none" | undefined;
4501
+ textTransform?: "none" | "uppercase" | "capitalize" | undefined;
4502
+ emphasisColor?: string | undefined;
4503
+ emphasisGradient?: string | undefined;
4504
+ emphasisScale?: number | undefined;
4505
+ emphasisFontFamily?: string | undefined;
4506
+ emphasisFontWeight?: number | undefined;
4507
+ emphasisTextTransform?: "none" | "uppercase" | "capitalize" | undefined;
4508
+ emphasisLetterSpacing?: number | undefined;
4509
+ emphasisFontStyle?: "normal" | "italic" | undefined;
4510
+ entrance?: "none" | "fade" | "word-pop" | "stagger-up" | undefined;
4511
+ entranceMs?: number | undefined;
4512
+ entranceStaggerMs?: number | undefined;
4513
+ exitMs?: number | undefined;
4514
+ emphasisPlate?: boolean | undefined;
4515
+ emphasisPlateColor?: string | undefined;
4516
+ emphasisPlateTextColor?: string | undefined;
4517
+ emphasisPlateAltColor?: string | undefined;
4518
+ emphasisPlateAltTextColor?: string | undefined;
4519
+ emphasisPlateRadius?: number | undefined;
4520
+ emphasisPlatePadX?: number | undefined;
4521
+ emphasisPlatePadY?: number | undefined;
4522
+ annotationColor?: string | undefined;
4523
+ maxWidthPercent?: number | undefined;
4524
+ }>>;
4525
+ }, "strict", z.ZodTypeAny, {
4526
+ type: "setCaptions";
4527
+ segments: {
4528
+ words: {
4529
+ startMs: number;
4530
+ endMs: number;
4531
+ text: string;
4532
+ emphasis?: boolean | undefined;
4533
+ annotate?: "circle" | "underline" | undefined;
4534
+ }[];
4535
+ }[];
4536
+ style?: {
4537
+ position?: "top" | "center" | "bottom" | undefined;
4538
+ fontFamily?: string | undefined;
4539
+ fontSize?: number | undefined;
4540
+ fontWeight?: number | undefined;
4541
+ color?: string | undefined;
4542
+ highlightColor?: string | undefined;
4543
+ backgroundColor?: string | undefined;
4544
+ plate?: "glass" | "solid" | "none" | undefined;
4545
+ textTransform?: "none" | "uppercase" | "capitalize" | undefined;
4546
+ emphasisColor?: string | undefined;
4547
+ emphasisGradient?: string | undefined;
4548
+ emphasisScale?: number | undefined;
4549
+ emphasisFontFamily?: string | undefined;
4550
+ emphasisFontWeight?: number | undefined;
4551
+ emphasisTextTransform?: "none" | "uppercase" | "capitalize" | undefined;
4552
+ emphasisLetterSpacing?: number | undefined;
4553
+ emphasisFontStyle?: "normal" | "italic" | undefined;
4554
+ entrance?: "none" | "fade" | "word-pop" | "stagger-up" | undefined;
4555
+ entranceMs?: number | undefined;
4556
+ entranceStaggerMs?: number | undefined;
4557
+ exitMs?: number | undefined;
4558
+ emphasisPlate?: boolean | undefined;
4559
+ emphasisPlateColor?: string | undefined;
4560
+ emphasisPlateTextColor?: string | undefined;
4561
+ emphasisPlateAltColor?: string | undefined;
4562
+ emphasisPlateAltTextColor?: string | undefined;
4563
+ emphasisPlateRadius?: number | undefined;
4564
+ emphasisPlatePadX?: number | undefined;
4565
+ emphasisPlatePadY?: number | undefined;
4566
+ annotationColor?: string | undefined;
4567
+ maxWidthPercent?: number | undefined;
4568
+ } | undefined;
4569
+ }, {
4570
+ type: "setCaptions";
4571
+ segments: {
4572
+ words: {
4573
+ startMs: number;
4574
+ endMs: number;
4575
+ text: string;
4576
+ emphasis?: boolean | undefined;
4577
+ annotate?: "circle" | "underline" | undefined;
4578
+ }[];
4579
+ }[];
4580
+ style?: {
4581
+ position?: "top" | "center" | "bottom" | undefined;
4582
+ fontFamily?: string | undefined;
4583
+ fontSize?: number | undefined;
4584
+ fontWeight?: number | undefined;
4585
+ color?: string | undefined;
4586
+ highlightColor?: string | undefined;
4587
+ backgroundColor?: string | undefined;
4588
+ plate?: "glass" | "solid" | "none" | undefined;
4589
+ textTransform?: "none" | "uppercase" | "capitalize" | undefined;
4590
+ emphasisColor?: string | undefined;
4591
+ emphasisGradient?: string | undefined;
4592
+ emphasisScale?: number | undefined;
4593
+ emphasisFontFamily?: string | undefined;
4594
+ emphasisFontWeight?: number | undefined;
4595
+ emphasisTextTransform?: "none" | "uppercase" | "capitalize" | undefined;
4596
+ emphasisLetterSpacing?: number | undefined;
4597
+ emphasisFontStyle?: "normal" | "italic" | undefined;
4598
+ entrance?: "none" | "fade" | "word-pop" | "stagger-up" | undefined;
4599
+ entranceMs?: number | undefined;
4600
+ entranceStaggerMs?: number | undefined;
4601
+ exitMs?: number | undefined;
4602
+ emphasisPlate?: boolean | undefined;
4603
+ emphasisPlateColor?: string | undefined;
4604
+ emphasisPlateTextColor?: string | undefined;
4605
+ emphasisPlateAltColor?: string | undefined;
4606
+ emphasisPlateAltTextColor?: string | undefined;
4607
+ emphasisPlateRadius?: number | undefined;
4608
+ emphasisPlatePadX?: number | undefined;
4609
+ emphasisPlatePadY?: number | undefined;
4610
+ annotationColor?: string | undefined;
4611
+ maxWidthPercent?: number | undefined;
4612
+ } | undefined;
4613
+ }>, z.ZodObject<{
4614
+ type: z.ZodLiteral<"applyMotionPreset">;
4615
+ clipId: z.ZodString;
4616
+ preset: z.ZodString;
4617
+ params: z.ZodOptional<z.ZodObject<{
4618
+ enterMs: z.ZodOptional<z.ZodNumber>;
4619
+ exitMs: z.ZodOptional<z.ZodNumber>;
4620
+ staggerMs: z.ZodOptional<z.ZodNumber>;
4621
+ }, "strict", z.ZodTypeAny, {
4622
+ exitMs?: number | undefined;
4623
+ enterMs?: number | undefined;
4624
+ staggerMs?: number | undefined;
4625
+ }, {
4626
+ exitMs?: number | undefined;
4627
+ enterMs?: number | undefined;
4628
+ staggerMs?: number | undefined;
4629
+ }>>;
4630
+ }, "strict", z.ZodTypeAny, {
4631
+ type: "applyMotionPreset";
4632
+ clipId: string;
4633
+ preset: string;
4634
+ params?: {
4635
+ exitMs?: number | undefined;
4636
+ enterMs?: number | undefined;
4637
+ staggerMs?: number | undefined;
4638
+ } | undefined;
4639
+ }, {
4640
+ type: "applyMotionPreset";
4641
+ clipId: string;
4642
+ preset: string;
4643
+ params?: {
4644
+ exitMs?: number | undefined;
4645
+ enterMs?: number | undefined;
4646
+ staggerMs?: number | undefined;
4647
+ } | undefined;
4648
+ }>, z.ZodObject<{
4649
+ type: z.ZodLiteral<"materializeGrid">;
4650
+ clipId: z.ZodString;
4651
+ grid: z.ZodEnum<["beat", "word", "shot"]>;
4652
+ maxMarkers: z.ZodOptional<z.ZodNumber>;
4653
+ }, "strict", z.ZodTypeAny, {
4654
+ type: "materializeGrid";
4655
+ clipId: string;
4656
+ grid: "beat" | "word" | "shot";
4657
+ maxMarkers?: number | undefined;
4658
+ }, {
4659
+ type: "materializeGrid";
4660
+ clipId: string;
4661
+ grid: "beat" | "word" | "shot";
4662
+ maxMarkers?: number | undefined;
4663
+ }>, z.ZodObject<{
4664
+ type: z.ZodLiteral<"captions.fromTranscript">;
4665
+ mediaId: z.ZodString;
4666
+ window: z.ZodOptional<z.ZodObject<{
4667
+ startSec: z.ZodNumber;
4668
+ endSec: z.ZodNumber;
4669
+ }, "strict", z.ZodTypeAny, {
4670
+ startSec: number;
4671
+ endSec: number;
4672
+ }, {
4673
+ startSec: number;
4674
+ endSec: number;
4675
+ }>>;
4676
+ }, "strict", z.ZodTypeAny, {
4677
+ type: "captions.fromTranscript";
4678
+ mediaId: string;
4679
+ window?: {
4680
+ startSec: number;
4681
+ endSec: number;
4682
+ } | undefined;
4683
+ }, {
4684
+ type: "captions.fromTranscript";
4685
+ mediaId: string;
4686
+ window?: {
4687
+ startSec: number;
4688
+ endSec: number;
4689
+ } | undefined;
4690
+ }>, z.ZodObject<{
4691
+ type: z.ZodLiteral<"setFormat">;
4692
+ format: z.ZodObject<Pick<{
4693
+ aspectRatio: z.ZodEnum<["16:9", "9:16", "1:1", "4:5"]>;
4694
+ fps: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<24>, z.ZodLiteral<30>, z.ZodLiteral<60>]>>;
4695
+ resolution: z.ZodOptional<z.ZodEnum<["hd", "fhd", "4k"]>>;
4696
+ platform: z.ZodOptional<z.ZodString>;
4697
+ }, "aspectRatio" | "fps" | "resolution">, "strip", z.ZodTypeAny, {
4698
+ aspectRatio: "16:9" | "9:16" | "1:1" | "4:5";
4699
+ fps?: 24 | 30 | 60 | undefined;
4700
+ resolution?: "hd" | "fhd" | "4k" | undefined;
4701
+ }, {
4702
+ aspectRatio: "16:9" | "9:16" | "1:1" | "4:5";
4703
+ fps?: 24 | 30 | 60 | undefined;
4704
+ resolution?: "hd" | "fhd" | "4k" | undefined;
4705
+ }>;
4706
+ }, "strict", z.ZodTypeAny, {
4707
+ type: "setFormat";
4708
+ format: {
4709
+ aspectRatio: "16:9" | "9:16" | "1:1" | "4:5";
4710
+ fps?: 24 | 30 | 60 | undefined;
4711
+ resolution?: "hd" | "fhd" | "4k" | undefined;
4712
+ };
4713
+ }, {
4714
+ type: "setFormat";
4715
+ format: {
4716
+ aspectRatio: "16:9" | "9:16" | "1:1" | "4:5";
4717
+ fps?: 24 | 30 | 60 | undefined;
4718
+ resolution?: "hd" | "fhd" | "4k" | undefined;
4719
+ };
4720
+ }>, z.ZodObject<{
4721
+ type: z.ZodLiteral<"addTrack">;
4722
+ kind: z.ZodEnum<["video", "audio", "image", "overlay", "effect"]>;
4723
+ name: z.ZodOptional<z.ZodString>;
4724
+ id: z.ZodOptional<z.ZodString>;
4725
+ }, "strict", z.ZodTypeAny, {
4726
+ kind: "overlay" | "video" | "effect" | "audio" | "image";
4727
+ type: "addTrack";
4728
+ id?: string | undefined;
4729
+ name?: string | undefined;
4730
+ }, {
4731
+ kind: "overlay" | "video" | "effect" | "audio" | "image";
4732
+ type: "addTrack";
4733
+ id?: string | undefined;
4734
+ name?: string | undefined;
4735
+ }>, z.ZodObject<{
4736
+ type: z.ZodLiteral<"removeTrack">;
4737
+ trackId: z.ZodString;
4738
+ }, "strict", z.ZodTypeAny, {
4739
+ type: "removeTrack";
4740
+ trackId: string;
4741
+ }, {
4742
+ type: "removeTrack";
4743
+ trackId: string;
4744
+ }>, z.ZodObject<{
4745
+ type: z.ZodLiteral<"updateTrack">;
4746
+ trackId: z.ZodString;
4747
+ updates: z.ZodObject<{
4748
+ name: z.ZodOptional<z.ZodOptional<z.ZodString>>;
4749
+ enabled: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
4750
+ volume: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
4751
+ }, "strict", z.ZodTypeAny, {
4752
+ name?: string | undefined;
4753
+ enabled?: boolean | undefined;
4754
+ volume?: number | undefined;
4755
+ }, {
4756
+ name?: string | undefined;
4757
+ enabled?: boolean | undefined;
4758
+ volume?: number | undefined;
4759
+ }>;
4760
+ }, "strict", z.ZodTypeAny, {
4761
+ type: "updateTrack";
4762
+ trackId: string;
4763
+ updates: {
4764
+ name?: string | undefined;
4765
+ enabled?: boolean | undefined;
4766
+ volume?: number | undefined;
4767
+ };
4768
+ }, {
4769
+ type: "updateTrack";
4770
+ trackId: string;
4771
+ updates: {
4772
+ name?: string | undefined;
4773
+ enabled?: boolean | undefined;
4774
+ volume?: number | undefined;
4775
+ };
4776
+ }>, z.ZodObject<{
4777
+ type: z.ZodLiteral<"reorderTracks">;
4778
+ fromIndex: z.ZodNumber;
4779
+ toIndex: z.ZodNumber;
4780
+ }, "strict", z.ZodTypeAny, {
4781
+ type: "reorderTracks";
4782
+ fromIndex: number;
4783
+ toIndex: number;
4784
+ }, {
4785
+ type: "reorderTracks";
4786
+ fromIndex: number;
4787
+ toIndex: number;
4788
+ }>, z.ZodObject<{
4789
+ type: z.ZodLiteral<"moveClipToTrack">;
4790
+ clipId: z.ZodString;
4791
+ targetTrackId: z.ZodString;
4792
+ newStartTime: z.ZodOptional<z.ZodNumber>;
4793
+ }, "strict", z.ZodTypeAny, {
4794
+ type: "moveClipToTrack";
4795
+ clipId: string;
4796
+ targetTrackId: string;
4797
+ newStartTime?: number | undefined;
4798
+ }, {
4799
+ type: "moveClipToTrack";
4800
+ clipId: string;
4801
+ targetTrackId: string;
4802
+ newStartTime?: number | undefined;
4803
+ }>, z.ZodObject<{
4804
+ type: z.ZodLiteral<"duplicateClip">;
4805
+ clipId: z.ZodString;
4806
+ newClipId: z.ZodOptional<z.ZodString>;
4807
+ }, "strict", z.ZodTypeAny, {
4808
+ type: "duplicateClip";
4809
+ clipId: string;
4810
+ newClipId?: string | undefined;
4811
+ }, {
4812
+ type: "duplicateClip";
4813
+ clipId: string;
4814
+ newClipId?: string | undefined;
4815
+ }>, z.ZodObject<{
4816
+ type: z.ZodLiteral<"cutAndRipple">;
4817
+ start: z.ZodNumber;
4818
+ end: z.ZodNumber;
4819
+ }, "strict", z.ZodTypeAny, {
4820
+ type: "cutAndRipple";
4821
+ start: number;
4822
+ end: number;
4823
+ }, {
4824
+ type: "cutAndRipple";
4825
+ start: number;
4826
+ end: number;
4827
+ }>, z.ZodObject<{
4828
+ type: z.ZodLiteral<"ripple">;
4829
+ time: z.ZodNumber;
4830
+ amount: z.ZodNumber;
4831
+ }, "strict", z.ZodTypeAny, {
4832
+ type: "ripple";
4833
+ time: number;
4834
+ amount: number;
4835
+ }, {
4836
+ type: "ripple";
4837
+ time: number;
4838
+ amount: number;
4839
+ }>, z.ZodObject<{
4840
+ type: z.ZodLiteral<"addExcludedRange">;
4841
+ clipId: z.ZodString;
4842
+ sourceStart: z.ZodNumber;
4843
+ sourceEnd: z.ZodNumber;
4844
+ reason: z.ZodOptional<z.ZodString>;
4845
+ }, "strict", z.ZodTypeAny, {
4846
+ type: "addExcludedRange";
4847
+ clipId: string;
4848
+ sourceStart: number;
4849
+ sourceEnd: number;
4850
+ reason?: string | undefined;
4851
+ }, {
4852
+ type: "addExcludedRange";
4853
+ clipId: string;
4854
+ sourceStart: number;
4855
+ sourceEnd: number;
4856
+ reason?: string | undefined;
4857
+ }>, z.ZodObject<{
4858
+ type: z.ZodLiteral<"removeExcludedRange">;
4859
+ clipId: z.ZodString;
4860
+ rangeIdx: z.ZodNumber;
4861
+ }, "strict", z.ZodTypeAny, {
4862
+ type: "removeExcludedRange";
4863
+ clipId: string;
4864
+ rangeIdx: number;
4865
+ }, {
4866
+ type: "removeExcludedRange";
4867
+ clipId: string;
4868
+ rangeIdx: number;
4869
+ }>]>;
4870
+ export type CompositionOp = z.infer<typeof CompositionOp>;
4871
+ /**
4872
+ * Apply an op to a wire Composition, returning the new Composition (pure).
4873
+ * Reuses `@cueframe/core`'s tested op logic via a headless store — no fork.
4874
+ */
4875
+ export declare function applyOp(composition: Composition, op: CompositionOp): Composition;
4876
+ /**
4877
+ * Dispatch ONE op onto a LIVE store — the op→method switch, extracted from
4878
+ * `applyOp` so there is exactly one of it.
4879
+ *
4880
+ * `applyOp` is pure: it mints a throwaway headless store, folds, and hands back
4881
+ * a new Composition. That serves every caller that OWNS the composition value
4882
+ * (the Convex mutation, the local-harness store, the ensemble author). It does
4883
+ * NOT serve a caller whose composition lives inside somebody else's store —
4884
+ * desktop's zustand `CompositionState`, which has no whole-composition setter
4885
+ * and whose op-recorder/undo trail only sees writes that go through its
4886
+ * methods. Handing that caller a fresh Composition value would be a dead end;
4887
+ * the only way in is the methods, which is precisely what this switch calls.
4888
+ *
4889
+ * So: `HeadlessStore` here is a STRUCTURAL contract (`CompositionOps` + a
4890
+ * `getState`), not a concrete class — `@cueframe/authoring`'s `CompositionStore`
4891
+ * and the desktop store satisfy it, and `LocalExecutor` (cueframe/src/llm) folds
4892
+ * a validated batch through it op-by-op. Writing a second switch for that lane
4893
+ * is what "one vocabulary" exists to prevent: it would drift silently the first
4894
+ * time an op is added here and forgotten there.
4895
+ *
4896
+ * NOT transactional on its own — it applies ONE op and a throw leaves the store
4897
+ * wherever it got to. A caller wanting the server's all-or-nothing contract
4898
+ * validates the whole batch on a scratch fold (`ops.reduce(applyOp, current)`)
4899
+ * FIRST, and only then commits through this.
4900
+ */
4901
+ export declare function applyOpToStore(store: HeadlessStore, op: CompositionOp): void;
4902
+ /**
4903
+ * The inverse op (for the op-log → selective multiplayer undo / diff / audit).
4904
+ *
4905
+ * `invertOp(before, op)` returns the op that, applied to `applyOp(before, op)`,
4906
+ * restores `before`. It needs the PRE-image to capture the value the forward op
4907
+ * overwrote (the patched fields, the replaced reframe segments, the removed
4908
+ * clip, …).
4909
+ *
4910
+ * Coverage (value-restoring): clip.add↔clip.remove, clip.update (prior fields),
4911
+ * markers (add/remove/update), setCropIntents (prior segments), setEffects (prior
4912
+ * effect stack), setFormat (prior values), addTrack↔removeTrack, updateTrack
4913
+ * (prior name/enabled), reorderTracks (reversed), moveClipToTrack (move back),
4914
+ * duplicateClip (clip.remove of the PINNED newClipId).
4915
+ *
4916
+ * DEFERRED — these THROW (fail loud; a wrong inverse silently corrupts undo, so
4917
+ * we never fake one):
4918
+ * - cutAndRipple / ripple / addExcludedRange / removeExcludedRange — server-
4919
+ * authoritative cross-field timeline recomputes (clips split/merge, durations
4920
+ * and downstream startTimes recompute, markers + caption words ripple). No
4921
+ * clean single-op inverse; restoring them is a snapshot-restore concern.
4922
+ * - removeTrack — removes a track AND its clips at a position; there is no
4923
+ * op to re-insert a populated track at an index (addTrack appends an EMPTY
4924
+ * track), so the pre-image can't be restored as one op.
4925
+ * - removeClipsByMediaId / loadOverlays — whole-channel replace/clear (multiple
4926
+ * clips across tracks, with positions and scene-marker side effects); no
4927
+ * single restoring op.
4928
+ * - setCaptionStyle — MERGES (and creates the captions container when absent)
4929
+ * with no clear/drop op, so a forward call that adds a style key (or the
4930
+ * container) can't be exactly reverted.
4931
+ * - duplicateClip WITHOUT `newClipId` — the copy's id is store-minted
4932
+ * (non-deterministic), so there is no clip id to remove. Pin `newClipId` for a
4933
+ * deterministic inverse.
4934
+ */
4935
+ export declare function invertOp(before: Composition, op: CompositionOp): CompositionOp;
4936
+ export { createRecordingStore, type RecordingStore } from './recordingStore.js';
4937
+ export { wrapWithOpRecorder, type RecordableOps, type OpRecorderOpts } from './opRecorder.js';
4938
+ export { materializeGridMarkers, GridError, GRID_DEFAULT_MAX_MARKERS, GRID_HARD_MAX_MARKERS, type GridKind, type GridErrorCode, type GridPlacement, } from './materializeGrid.js';
4939
+ export { replaceRegion, type CutSpan, type ReplaceRegionInput } from './replaceRegion.js';
4940
+ export { collectAlphaLayerClips, type AlphaLayerClipRef, collectLiveComponentClips, type LiveComponentClipRef, collectRawComponentClips, } from './alphaLayers.js';