@cueframe/kernel 0.1.0 → 0.1.2

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 (815) hide show
  1. package/LICENSE +661 -0
  2. package/dist/_members/account-model/testing/conversationStoreContract.d.ts +0 -59
  3. package/dist/_members/account-model/testing/index.d.ts +0 -5
  4. package/dist/_members/account-model/testing/restorePointStoreContract.d.ts +0 -24
  5. package/dist/_members/account-model/validators/contextFile.d.ts +0 -6
  6. package/dist/_members/account-model/validators/conversation.d.ts +0 -96
  7. package/dist/_members/account-model/validators/dashboardInsight.d.ts +0 -6
  8. package/dist/_members/account-model/validators/sessionToken.d.ts +0 -29
  9. package/dist/_members/account-model/validators/uploadToken.d.ts +0 -4
  10. package/dist/_members/account-model/validators/userSettings.d.ts +0 -4
  11. package/dist/_members/account-model/validators/workingComposition.d.ts +0 -7
  12. package/dist/_members/animate/animations/Create.d.ts +0 -19
  13. package/dist/_members/animate/animations/FadeIn.d.ts +0 -17
  14. package/dist/_members/animate/animations/GrowArrow.d.ts +0 -19
  15. package/dist/_members/animate/animations/GrowFromCenter.d.ts +0 -12
  16. package/dist/_members/animate/animations/Indicate.d.ts +0 -17
  17. package/dist/_members/animate/animations/MoveAlongPath.d.ts +0 -18
  18. package/dist/_members/animate/animations/Transform.d.ts +0 -28
  19. package/dist/_members/animate/animations/Wiggle.d.ts +0 -18
  20. package/dist/_members/animate/animations/Write.d.ts +0 -20
  21. package/dist/_members/animate/composition/AnimationGroup.d.ts +0 -21
  22. package/dist/_members/animate/composition/LaggedStart.d.ts +0 -22
  23. package/dist/_members/animate/composition/Succession.d.ts +0 -17
  24. package/dist/_members/animate/easing/rush.d.ts +0 -14
  25. package/dist/_members/animate/easing/smooth.d.ts +0 -7
  26. package/dist/_members/animate/easing/smootherstep.d.ts +0 -6
  27. package/dist/_members/animate/index.d.ts +0 -2
  28. package/dist/_members/animate/mobjects/Arrow.d.ts +0 -25
  29. package/dist/_members/animate/mobjects/BrandBox.d.ts +0 -25
  30. package/dist/_members/animate/mobjects/DiGraph.d.ts +0 -18
  31. package/dist/_members/animate/mobjects/Graph.d.ts +0 -38
  32. package/dist/_members/animate/three/ThreeCanvas.d.ts +0 -23
  33. package/dist/_members/animate/three/drei.d.ts +0 -7
  34. package/dist/_members/authoring/agent/buildTools.d.ts +0 -37
  35. package/dist/_members/authoring/agent/contextManagement.d.ts +0 -65
  36. package/dist/_members/authoring/agent/errors.d.ts +0 -9
  37. package/dist/_members/authoring/agent/memoryTool.d.ts +0 -2
  38. package/dist/_members/authoring/agent/promptCache.d.ts +0 -31
  39. package/dist/_members/authoring/agent.d.ts +0 -34
  40. package/dist/_members/authoring/capabilities.d.ts +0 -145
  41. package/dist/_members/authoring/composer/scopes.d.ts +0 -19
  42. package/dist/_members/authoring/context/brand.d.ts +0 -4
  43. package/dist/_members/authoring/context/brandTokens.d.ts +0 -4
  44. package/dist/_members/authoring/context/index.d.ts +0 -1
  45. package/dist/_members/authoring/context/timeline.d.ts +0 -15
  46. package/dist/_members/authoring/context/transcript.d.ts +0 -11
  47. package/dist/_members/authoring/context/types.d.ts +0 -4
  48. package/dist/_members/authoring/decomposer.d.ts +0 -12
  49. package/dist/_members/authoring/evaluate.d.ts +0 -26
  50. package/dist/_members/authoring/evaluator.d.ts +0 -16
  51. package/dist/_members/authoring/models/modelFactory.d.ts +0 -77
  52. package/dist/_members/authoring/motion/applyMotionPreset.d.ts +0 -12
  53. package/dist/_members/authoring/motion/materializeMotionPresetOps.d.ts +0 -7
  54. package/dist/_members/authoring/motion/shell.d.ts +0 -20
  55. package/dist/_members/authoring/pipelineTrace.d.ts +0 -19
  56. package/dist/_members/authoring/prompts/decomposerPrompt.d.ts +0 -4
  57. package/dist/_members/authoring/prompts/designReviewerPrompt.d.ts +0 -16
  58. package/dist/_members/authoring/prompts/evaluatorPrompt.d.ts +0 -4
  59. package/dist/_members/authoring/prompts/graphics.d.ts +0 -5
  60. package/dist/_members/authoring/prompts/plannerPrompt.d.ts +0 -30
  61. package/dist/_members/authoring/providers/resourceApi.d.ts +1 -20
  62. package/dist/_members/authoring/resource-routing.d.ts +0 -121
  63. package/dist/_members/authoring/resources.d.ts +0 -34
  64. package/dist/_members/authoring/scope.d.ts +0 -24
  65. package/dist/_members/authoring/tools/brandTokens.d.ts +0 -22
  66. package/dist/_members/authoring/tools/composeRoleTools.d.ts +0 -79
  67. package/dist/_members/authoring/tools/index.d.ts +0 -1
  68. package/dist/_members/authoring/tools/toolSets.d.ts +0 -50
  69. package/dist/_members/authoring/transpileComponent.d.ts +0 -34
  70. package/dist/_members/authoring/transpileHelper.d.ts +0 -18
  71. package/dist/_members/authoring/types.d.ts +0 -149
  72. package/dist/_members/brand-derivation/constants.d.ts +0 -17
  73. package/dist/_members/brand-derivation/contrastSafe.d.ts +0 -23
  74. package/dist/_members/cloud-import/CloudImportService.d.ts +0 -15
  75. package/dist/_members/cloud-import/ImportProvider.d.ts +0 -45
  76. package/dist/_members/cloud-import/MediaItemPreprocessor.d.ts +0 -9
  77. package/dist/_members/cloud-import/cloudConfig.d.ts +0 -15
  78. package/dist/_members/compose/CompositionRenderer.d.ts +0 -6
  79. package/dist/_members/compose/primitiveRegistry.d.ts +0 -64
  80. package/dist/_members/compose/sceneToRenderInput.d.ts +0 -26
  81. package/dist/_members/compose/schema.d.ts +0 -15
  82. package/dist/_members/compose/tokenResolver.d.ts +0 -11
  83. package/dist/_members/composition/audio/audioMix.d.ts +0 -34
  84. package/dist/_members/composition/audio/mixStaging.d.ts +0 -81
  85. package/dist/_members/composition/audio/musicPack.d.ts +0 -35
  86. package/dist/_members/composition/audio/musicPack.generated.d.ts +0 -6
  87. package/dist/_members/composition/audio/pack.d.ts +0 -43
  88. package/dist/_members/composition/audio/pack.generated.d.ts +0 -6
  89. package/dist/_members/composition/audio/palette.d.ts +0 -36
  90. package/dist/_members/composition/autozoom/index.d.ts +0 -32
  91. package/dist/_members/composition/brand-kit.d.ts +0 -8
  92. package/dist/_members/composition/brief/contract.d.ts +0 -90
  93. package/dist/_members/composition/color-grade.d.ts +0 -11
  94. package/dist/_members/composition/depth.d.ts +0 -19
  95. package/dist/_members/composition/fixtures/agentErrored.d.ts +0 -23
  96. package/dist/_members/composition/fonts.d.ts +0 -62
  97. package/dist/_members/composition/graphics-plan/compile.d.ts +0 -29
  98. package/dist/_members/composition/graphics-plan/index.d.ts +0 -5
  99. package/dist/_members/composition/graphics-plan/instantiateMotif.d.ts +0 -17
  100. package/dist/_members/composition/graphics-plan/motion.d.ts +0 -17
  101. package/dist/_members/composition/graphics-plan/schemas.d.ts +0 -171
  102. package/dist/_members/composition/graphics-plan/solve.d.ts +0 -19
  103. package/dist/_members/composition/invariants/clipPlacement.d.ts +0 -59
  104. package/dist/_members/composition/invariants/composition.d.ts +0 -5
  105. package/dist/_members/composition/invariants/etag.d.ts +0 -7
  106. package/dist/_members/composition/invariants/ids.d.ts +0 -6
  107. package/dist/_members/composition/invariants/keyframes.d.ts +0 -19
  108. package/dist/_members/composition/invariants/markers.d.ts +0 -6
  109. package/dist/_members/composition/invariants/time.d.ts +0 -8
  110. package/dist/_members/composition/invariants/tracks.d.ts +0 -48
  111. package/dist/_members/composition/ops/compositionOps.d.ts +5 -71
  112. package/dist/_members/composition/ops/compositionOps.shared.d.ts +30 -0
  113. package/dist/_members/composition/ops/headlessStore.d.ts +0 -24
  114. package/dist/_members/composition/ops/selectors.d.ts +0 -66
  115. package/dist/_members/composition/ops/timeline-word.d.ts +0 -5
  116. package/dist/_members/composition/ops/transcript.d.ts +0 -27
  117. package/dist/_members/composition/ops/types.d.ts +0 -51
  118. package/dist/_members/composition/primitive-catalog/catalogQuery.d.ts +0 -32
  119. package/dist/_members/composition/primitive-catalog/disabled.d.ts +0 -1
  120. package/dist/_members/composition/primitive-catalog/index.d.ts +0 -11
  121. package/dist/_members/composition/primitive-catalog/paramValidation.d.ts +0 -50
  122. package/dist/_members/composition/primitive-catalog/projection.d.ts +0 -39
  123. package/dist/_members/composition/primitive-catalog/types.d.ts +0 -78
  124. package/dist/_members/composition/projection/behind-placement.d.ts +0 -40
  125. package/dist/_members/composition/projection/behind-readiness.d.ts +52 -0
  126. package/dist/_members/composition/projection/brandKit.d.ts +0 -142
  127. package/dist/_members/composition/projection/cardTokens.d.ts +0 -65
  128. package/dist/_members/composition/projection/composition-floor.d.ts +0 -179
  129. package/dist/_members/composition/projection/cropProjection.d.ts +0 -75
  130. package/dist/_members/composition/projection/index.d.ts +2 -0
  131. package/dist/_members/composition/projection/occlusion-budget.d.ts +0 -37
  132. package/dist/_members/composition/projection/reframe-readiness.d.ts +49 -0
  133. package/dist/_members/composition/projection/safe-zones.d.ts +0 -29
  134. package/dist/_members/composition/reframe/aspectLoss.d.ts +12 -35
  135. package/dist/_members/composition/reframe/coverage.d.ts +0 -40
  136. package/dist/_members/composition/reframe/derive.d.ts +0 -21
  137. package/dist/_members/composition/reframe/index.d.ts +0 -60
  138. package/dist/_members/composition/reframe/kenBurns.d.ts +0 -37
  139. package/dist/_members/composition/reframe/shotScale.d.ts +0 -75
  140. package/dist/_members/composition/reframe/trajectory.d.ts +0 -65
  141. package/dist/_members/composition/timeline/compound.d.ts +0 -31
  142. package/dist/_members/composition/timeline/intent.d.ts +0 -29
  143. package/dist/_members/composition/timeline/keyframes.d.ts +0 -43
  144. package/dist/_members/composition/timeline/link.d.ts +0 -27
  145. package/dist/_members/composition/timeline/occupancy.d.ts +1 -42
  146. package/dist/_members/composition/timeline/placement.d.ts +5 -52
  147. package/dist/_members/composition/timeline/plan.d.ts +5 -53
  148. package/dist/_members/composition/timeline/resolve.d.ts +0 -36
  149. package/dist/_members/composition/timeline/trims.d.ts +0 -49
  150. package/dist/_members/composition/validators/brandKit.d.ts +0 -29
  151. package/dist/_members/composition/validators/composePlan.d.ts +0 -39
  152. package/dist/_members/composition/validators/composition.d.ts +63 -529
  153. package/dist/_members/composition/validators/graphicKinds.d.ts +0 -28
  154. package/dist/_members/composition/validators/render.d.ts +55 -23
  155. package/dist/_members/composition-ops/alphaLayers.d.ts +0 -56
  156. package/dist/_members/composition-ops/index.d.ts +27 -148
  157. package/dist/_members/composition-ops/materializeGrid.d.ts +0 -28
  158. package/dist/_members/composition-ops/opRecorder.d.ts +0 -34
  159. package/dist/_members/composition-ops/recordingStore.d.ts +0 -16
  160. package/dist/_members/composition-ops/replaceRegion.d.ts +0 -48
  161. package/dist/_members/composition-ops/testFixtures.d.ts +0 -14
  162. package/dist/_members/convex-api/api.d.ts +0 -3
  163. package/dist/_members/convex-api/dataModel.d.ts +0 -2
  164. package/dist/_members/core/index.d.ts +1 -1
  165. package/dist/_members/core/render/bookends.d.ts +0 -44
  166. package/dist/_members/core/render/captions.d.ts +0 -42
  167. package/dist/_members/core/render/compositionRender.d.ts +2 -165
  168. package/dist/_members/core/render/deriveTrajectory.d.ts +0 -140
  169. package/dist/_members/core/render/emphasis.d.ts +0 -6
  170. package/dist/_members/core/render/eval/cropBox.d.ts +0 -69
  171. package/dist/_members/core/render/eval/inclusion.d.ts +0 -39
  172. package/dist/_members/core/render/eval/index.d.ts +0 -58
  173. package/dist/_members/core/render/eval/metrics.d.ts +0 -36
  174. package/dist/_members/core/render/exportSettings.d.ts +4 -12
  175. package/dist/_members/core/render/index.d.ts +1 -1
  176. package/dist/_members/core/render/mapFaceToPerson.d.ts +0 -27
  177. package/dist/_members/core/render/types.d.ts +4 -156
  178. package/dist/_members/core/render/variantKeys.d.ts +1 -0
  179. package/dist/_members/core/render/vcam/cameraPath.d.ts +0 -44
  180. package/dist/_members/core/render/vcam/constants.d.ts +0 -93
  181. package/dist/_members/core/render/vcam/errorCodes.d.ts +0 -28
  182. package/dist/_members/core/render/vcam/framing.d.ts +0 -76
  183. package/dist/_members/core/render/vcam/requiredRegion.d.ts +0 -71
  184. package/dist/_members/core/render/vcam/shots.d.ts +0 -40
  185. package/dist/_members/core/render/vcam/subjectSet.d.ts +0 -85
  186. package/dist/_members/core/select/errorCodes.d.ts +0 -25
  187. package/dist/_members/core/select/index.d.ts +0 -20
  188. package/dist/_members/core/select/model.d.ts +0 -79
  189. package/dist/_members/core/select/select.d.ts +0 -49
  190. package/dist/_members/core/select/stabilize.d.ts +0 -102
  191. package/dist/_members/core/types.d.ts +0 -1
  192. package/dist/_members/director/ai-sdk/chunks.d.ts +14 -0
  193. package/dist/_members/director/ai-sdk/context.d.ts +6 -0
  194. package/dist/_members/director/ai-sdk/generationTool.d.ts +8 -0
  195. package/dist/_members/director/ai-sdk/index.d.ts +4 -0
  196. package/dist/_members/director/ai-sdk/messages.d.ts +292 -0
  197. package/dist/_members/director/domain/chat.d.ts +357 -0
  198. package/dist/_members/director/domain/generation.d.ts +1 -0
  199. package/dist/_members/director/domain/index.d.ts +3 -0
  200. package/dist/_members/director/domain/ports.d.ts +32 -0
  201. package/dist/_members/director/index.d.ts +2 -0
  202. package/dist/_members/director/testing/contract.d.ts +52 -0
  203. package/dist/_members/director/testing/index.d.ts +1 -0
  204. package/dist/_members/errors/registry.d.ts +0 -32
  205. package/dist/_members/foundation/codes/index.d.ts +0 -21
  206. package/dist/_members/mcp/adapter.d.ts +1 -84
  207. package/dist/_members/mcp/burnedNames.d.ts +0 -16
  208. package/dist/_members/mcp/core.d.ts +1 -81
  209. package/dist/_members/mcp/curation.d.ts +0 -112
  210. package/dist/_members/mcp/executor.d.ts +0 -49
  211. package/dist/_members/mcp/format.d.ts +0 -6
  212. package/dist/_members/mcp/generated/catalogPreviews.d.ts +0 -1
  213. package/dist/_members/mcp/generated/operations.d.ts +0 -23
  214. package/dist/_members/mcp/internalLoopTools.d.ts +0 -23
  215. package/dist/_members/mcp/prompts.d.ts +0 -16
  216. package/dist/_members/mcp/resources.d.ts +0 -13
  217. package/dist/_members/mcp/server.d.ts +0 -61
  218. package/dist/_members/mcp/wait.d.ts +0 -22
  219. package/dist/_members/mcp/x402Meta.d.ts +0 -44
  220. package/dist/_members/media-model/generation.d.ts +314 -0
  221. package/dist/_members/media-model/index.d.ts +1 -0
  222. package/dist/_members/media-model/media-kind.d.ts +0 -27
  223. package/dist/_members/media-model/transcriptSearch.d.ts +0 -42
  224. package/dist/_members/nle-export/fcpxml.d.ts +0 -13
  225. package/dist/_members/nle-export/index.d.ts +0 -6
  226. package/dist/_members/nle-export/types.d.ts +0 -26
  227. package/dist/_members/nle-export/xml/index.d.ts +0 -8
  228. package/dist/_members/nle-export/xml-utils.d.ts +0 -12
  229. package/dist/_members/perception/activeSpeaker.d.ts +0 -94
  230. package/dist/_members/perception/audioQuality.d.ts +0 -64
  231. package/dist/_members/perception/energyBeat.d.ts +0 -81
  232. package/dist/_members/perception/identityMatch.d.ts +0 -66
  233. package/dist/_members/perception/index.d.ts +0 -52
  234. package/dist/_members/perception/visualQuality.d.ts +0 -73
  235. package/dist/_members/plane/conformance.d.ts +0 -59
  236. package/dist/_members/plane/contract.d.ts +0 -29
  237. package/dist/_members/plane/index.d.ts +0 -15
  238. package/dist/_members/primitives/backgrounds/animated-bar-chart/index.d.ts +0 -13
  239. package/dist/_members/primitives/backgrounds/animated-line-chart/index.d.ts +0 -14
  240. package/dist/_members/primitives/backgrounds/dither-gradient-bg/index.d.ts +0 -14
  241. package/dist/_members/primitives/backgrounds/dynamic-grid/index.d.ts +0 -8
  242. package/dist/_members/primitives/backgrounds/ecosystem-constellation/index.d.ts +0 -8
  243. package/dist/_members/primitives/backgrounds/infinite-marquee/index.d.ts +0 -8
  244. package/dist/_members/primitives/backgrounds/mesh-gradient-bg/index.d.ts +0 -8
  245. package/dist/_members/primitives/backgrounds/perspective-marquee/index.d.ts +0 -8
  246. package/dist/_members/primitives/backgrounds/silk-flow-bg/index.d.ts +0 -17
  247. package/dist/_members/primitives/backgrounds/vector-field/index.d.ts +0 -14
  248. package/dist/_members/primitives/backgrounds/volumetric-rays/index.d.ts +0 -18
  249. package/dist/_members/primitives/captions/Captions.d.ts +0 -24
  250. package/dist/_members/primitives/captions/index.d.ts +0 -15
  251. package/dist/_members/primitives/captions/paginate.d.ts +0 -21
  252. package/dist/_members/primitives/captions/placement.d.ts +0 -30
  253. package/dist/_members/primitives/effects/blur/index.d.ts +0 -16
  254. package/dist/_members/primitives/effects/color-grade/index.d.ts +0 -20
  255. package/dist/_members/primitives/effects/grain/index.d.ts +0 -12
  256. package/dist/_members/primitives/effects/parallax/index.d.ts +0 -13
  257. package/dist/_members/primitives/effects/particles/index.d.ts +0 -16
  258. package/dist/_members/primitives/effects/pulsing-indicator/index.d.ts +0 -10
  259. package/dist/_members/primitives/effects/spotlight-card/index.d.ts +0 -8
  260. package/dist/_members/primitives/effects/spring-pop-in/index.d.ts +0 -10
  261. package/dist/_members/primitives/effects/success-confetti/index.d.ts +0 -8
  262. package/dist/_members/primitives/effects/vignette/index.d.ts +0 -12
  263. package/dist/_members/primitives/hero-text/HeroText.d.ts +0 -17
  264. package/dist/_members/primitives/hero-text/config.d.ts +0 -10
  265. package/dist/_members/primitives/hero-text/index.d.ts +0 -14
  266. package/dist/_members/primitives/index.d.ts +0 -8
  267. package/dist/_members/primitives/layouts/chat-to-preview-layout/index.d.ts +0 -8
  268. package/dist/_members/primitives/layouts/infinite-bento-pan/index.d.ts +0 -8
  269. package/dist/_members/primitives/layouts/letterbox/index.d.ts +0 -15
  270. package/dist/_members/primitives/layouts/photo-grid/index.d.ts +0 -17
  271. package/dist/_members/primitives/layouts/picture-in-picture/index.d.ts +0 -21
  272. package/dist/_members/primitives/layouts/split-screen/index.d.ts +0 -15
  273. package/dist/_members/primitives/layouts/staggered-bento-grid/index.d.ts +0 -8
  274. package/dist/_members/primitives/lib/easings.d.ts +0 -27
  275. package/dist/_members/primitives/lib/palette.d.ts +0 -22
  276. package/dist/_members/primitives/lib/preview.d.ts +0 -22
  277. package/dist/_members/primitives/lib/schema.d.ts +0 -36
  278. package/dist/_members/primitives/lib/seeded-random.d.ts +0 -23
  279. package/dist/_members/primitives/lib/text/contrast.d.ts +0 -17
  280. package/dist/_members/primitives/lib/text/fill.d.ts +0 -5
  281. package/dist/_members/primitives/lib/text/fitText.d.ts +0 -37
  282. package/dist/_members/primitives/lib/text/marker.d.ts +0 -10
  283. package/dist/_members/primitives/lib/text/motion.d.ts +0 -46
  284. package/dist/_members/primitives/lib/text/recolor.d.ts +0 -11
  285. package/dist/_members/primitives/lib/text/spec.d.ts +0 -39
  286. package/dist/_members/primitives/lib/text/stage.d.ts +0 -17
  287. package/dist/_members/primitives/lib/text/typeface.d.ts +0 -11
  288. package/dist/_members/primitives/lib/tokens.d.ts +0 -87
  289. package/dist/_members/primitives/lib/types.d.ts +0 -141
  290. package/dist/_members/primitives/scenes/changelog-bite/index.d.ts +0 -12
  291. package/dist/_members/primitives/scenes/hero-device-assemble/index.d.ts +0 -8
  292. package/dist/_members/primitives/scenes/landing-code-showcase/index.d.ts +0 -8
  293. package/dist/_members/primitives/scenes/live-code-compilation/index.d.ts +0 -8
  294. package/dist/_members/primitives/scenes/pricing-tier-focus/index.d.ts +0 -8
  295. package/dist/_members/primitives/scenes/product-launch-trailer/index.d.ts +0 -8
  296. package/dist/_members/primitives/scenes/terminal-to-browser-deploy/index.d.ts +0 -8
  297. package/dist/_members/primitives/subject-foreground/SubjectForeground.d.ts +0 -38
  298. package/dist/_members/primitives/subject-foreground/index.d.ts +0 -21
  299. package/dist/_members/primitives/text/blur-reveal/index.d.ts +0 -9
  300. package/dist/_members/primitives/text/cinematic-title/index.d.ts +0 -14
  301. package/dist/_members/primitives/text/inline-highlight/index.d.ts +0 -11
  302. package/dist/_members/primitives/text/karaoke/index.d.ts +0 -13
  303. package/dist/_members/primitives/text/kinetic-type/index.d.ts +0 -15
  304. package/dist/_members/primitives/text/lower-third/index.d.ts +0 -14
  305. package/dist/_members/primitives/text/marker-highlight/index.d.ts +0 -10
  306. package/dist/_members/primitives/text/masked-slide-reveal/index.d.ts +0 -8
  307. package/dist/_members/primitives/text/matrix-decode/index.d.ts +0 -9
  308. package/dist/_members/primitives/text/quote-card/index.d.ts +0 -9
  309. package/dist/_members/primitives/text/rgb-glitch-text/index.d.ts +0 -13
  310. package/dist/_members/primitives/text/shimmer-sweep/index.d.ts +0 -10
  311. package/dist/_members/primitives/text/slot-machine-roll/index.d.ts +0 -8
  312. package/dist/_members/primitives/text/staggered-fade-up/index.d.ts +0 -12
  313. package/dist/_members/primitives/text/stat-counter/index.d.ts +0 -13
  314. package/dist/_members/primitives/text/strikethrough-replace/index.d.ts +0 -9
  315. package/dist/_members/primitives/text/text-effect/index.d.ts +0 -17
  316. package/dist/_members/primitives/text/text-fade-replace/index.d.ts +0 -8
  317. package/dist/_members/primitives/text/token-stream/index.d.ts +0 -11
  318. package/dist/_members/primitives/text/tracking-in/index.d.ts +0 -8
  319. package/dist/_members/primitives/text/typewriter/index.d.ts +0 -12
  320. package/dist/_members/primitives/transitions/chromatic-aberration-wipe/index.d.ts +0 -11
  321. package/dist/_members/primitives/transitions/code-diff-wipe/index.d.ts +0 -8
  322. package/dist/_members/primitives/transitions/directional-wipe/index.d.ts +0 -10
  323. package/dist/_members/primitives/transitions/frosted-glass-wipe/index.d.ts +0 -10
  324. package/dist/_members/primitives/transitions/glitch-cut/index.d.ts +0 -3
  325. package/dist/_members/primitives/transitions/grid-pixelate-wipe/index.d.ts +0 -14
  326. package/dist/_members/primitives/transitions/ink-wipe/index.d.ts +0 -3
  327. package/dist/_members/primitives/transitions/kinetic-type-mask/index.d.ts +0 -12
  328. package/dist/_members/primitives/transitions/light-leak/index.d.ts +0 -3
  329. package/dist/_members/primitives/transitions/luma-matte/index.d.ts +0 -2
  330. package/dist/_members/primitives/transitions/morph/index.d.ts +0 -2
  331. package/dist/_members/primitives/transitions/spatial-push/index.d.ts +0 -10
  332. package/dist/_members/primitives/transitions/swipe-transition-wipe/index.d.ts +0 -13
  333. package/dist/_members/primitives/transitions/zoom-through/index.d.ts +0 -2
  334. package/dist/_members/primitives/transitions/zoom-through-transition/index.d.ts +0 -9
  335. package/dist/_members/primitives/ui-blocks/ai-generate-overlay/index.d.ts +0 -8
  336. package/dist/_members/primitives/ui-blocks/ai-generation-canvas/index.d.ts +0 -8
  337. package/dist/_members/primitives/ui-blocks/badge-pop/index.d.ts +0 -11
  338. package/dist/_members/primitives/ui-blocks/before-after-slider/index.d.ts +0 -11
  339. package/dist/_members/primitives/ui-blocks/benchmark-bars/index.d.ts +0 -11
  340. package/dist/_members/primitives/ui-blocks/bounding-box-selector/index.d.ts +0 -8
  341. package/dist/_members/primitives/ui-blocks/browser-flow/index.d.ts +0 -8
  342. package/dist/_members/primitives/ui-blocks/brush-stroke-simulator/index.d.ts +0 -18
  343. package/dist/_members/primitives/ui-blocks/chat-exchange/index.d.ts +0 -10
  344. package/dist/_members/primitives/ui-blocks/code-accordion/index.d.ts +0 -8
  345. package/dist/_members/primitives/ui-blocks/context-meter/index.d.ts +0 -11
  346. package/dist/_members/primitives/ui-blocks/cursor-flow/index.d.ts +0 -11
  347. package/dist/_members/primitives/ui-blocks/dashboard-populate/index.d.ts +0 -8
  348. package/dist/_members/primitives/ui-blocks/data-flow-pipes/index.d.ts +0 -9
  349. package/dist/_members/primitives/ui-blocks/device-mockup-zoom/index.d.ts +0 -8
  350. package/dist/_members/primitives/ui-blocks/drag-and-drop-flow/index.d.ts +0 -8
  351. package/dist/_members/primitives/ui-blocks/eval-scorecard/index.d.ts +0 -11
  352. package/dist/_members/primitives/ui-blocks/glass-code-block/index.d.ts +0 -8
  353. package/dist/_members/primitives/ui-blocks/image-expand-to-fullscreen/index.d.ts +0 -8
  354. package/dist/_members/primitives/ui-blocks/metric-gauge/index.d.ts +0 -12
  355. package/dist/_members/primitives/ui-blocks/morphing-modal/index.d.ts +0 -8
  356. package/dist/_members/primitives/ui-blocks/pipeline-journey/index.d.ts +0 -8
  357. package/dist/_members/primitives/ui-blocks/progress-steps/index.d.ts +0 -8
  358. package/dist/_members/primitives/ui-blocks/reasoning-trace/index.d.ts +0 -10
  359. package/dist/_members/primitives/ui-blocks/simulated-cursor/index.d.ts +0 -8
  360. package/dist/_members/primitives/ui-blocks/terminal-simulator/index.d.ts +0 -19
  361. package/dist/_members/primitives/ui-blocks/toast-notification/index.d.ts +0 -8
  362. package/dist/_members/primitives/ui-blocks/tool-call-stack/index.d.ts +0 -8
  363. package/dist/_members/primitives/ui-blocks/tool-menu-slide-in/index.d.ts +0 -8
  364. package/dist/_members/primitives/ui-blocks/visual-docs-snippet/index.d.ts +0 -8
  365. package/dist/_members/primitives/ui-blocks/voice-waveform/index.d.ts +0 -11
  366. package/dist/_members/primitives/workspace.d.ts +0 -29
  367. package/dist/_members/render-harness/browserOptions.d.ts +11 -0
  368. package/dist/_members/render-harness/browserOptions.d.ts.map +1 -0
  369. package/dist/_members/render-harness/cardRender.d.ts +0 -40
  370. package/dist/_members/render-harness/cardRender.d.ts.map +1 -1
  371. package/dist/_members/render-harness/contractRender.d.ts +0 -16
  372. package/dist/_members/render-harness/contractRender.d.ts.map +1 -1
  373. package/dist/_members/render-harness/extractSegments.d.ts +0 -37
  374. package/dist/_members/render-harness/extractSegments.d.ts.map +1 -1
  375. package/dist/_members/render-harness/index.d.ts +0 -12
  376. package/dist/_members/render-harness/index.d.ts.map +1 -1
  377. package/dist/_members/render-harness/localRender.d.ts +1 -110
  378. package/dist/_members/render-harness/localRender.d.ts.map +1 -1
  379. package/dist/_members/render-harness/materializeSources.d.ts +0 -22
  380. package/dist/_members/render-harness/materializeSources.d.ts.map +1 -1
  381. package/dist/_members/render-harness/mediaServer.d.ts +0 -16
  382. package/dist/_members/render-harness/mediaServer.d.ts.map +1 -1
  383. package/dist/_members/render-harness/renderInputAssets.d.ts +0 -45
  384. package/dist/_members/render-harness/renderInputAssets.d.ts.map +1 -1
  385. package/dist/_members/render-harness/resolveAssets.d.ts +0 -24
  386. package/dist/_members/render-harness/resolveAssets.d.ts.map +1 -1
  387. package/dist/_members/render-harness/sandboxGlobalSpecs.d.ts +0 -14
  388. package/dist/_members/render-harness/sandboxGlobalSpecs.d.ts.map +1 -1
  389. package/dist/account-model/validators.js +1 -1
  390. package/dist/account-model.js +1 -1
  391. package/dist/animate.js +0 -15
  392. package/dist/authoring/build-tools.js +8 -8
  393. package/dist/authoring/composer.js +0 -20
  394. package/dist/authoring/context.js +6 -6
  395. package/dist/authoring/pipelineTrace.js +1 -1
  396. package/dist/authoring/prompts.js +1 -1
  397. package/dist/authoring/resource-routing.js +1 -1
  398. package/dist/authoring/resources.js +1 -1
  399. package/dist/authoring/tools.js +7 -7
  400. package/dist/authoring.js +16 -80
  401. package/dist/{chunk-TWQOKKAF.js → chunk-23HFEKV7.js} +0 -6
  402. package/dist/{chunk-EA6MYCYW.js → chunk-2B5VJZHL.js} +14 -25
  403. package/dist/chunk-73DQTUWY.js +131 -0
  404. package/dist/{chunk-HI4UTTPS.js → chunk-AO744WIK.js} +1 -43
  405. package/dist/chunk-BADZHXLR.js +0 -0
  406. package/dist/{chunk-GA23TRNR.js → chunk-BKHGL4MB.js} +5 -13
  407. package/dist/{chunk-VOO5FQSS.js → chunk-BZZTVOGG.js} +6 -55
  408. package/dist/{chunk-ODL7GQJG.js → chunk-CAJQ7H5A.js} +17 -17
  409. package/dist/{chunk-ZB3C3HM7.js → chunk-DCVJWGIA.js} +4 -9
  410. package/dist/{chunk-IBYQG46O.js → chunk-DWLNPNC4.js} +1 -4
  411. package/dist/{chunk-SW336CJP.js → chunk-DYZE7JZA.js} +3 -26
  412. package/dist/{chunk-HCCBDJLW.js → chunk-EP2Y6M2J.js} +0 -4
  413. package/dist/{chunk-ZE76SSRT.js → chunk-FMODQD5P.js} +0 -6
  414. package/dist/chunk-FTVZF4GO.js +0 -0
  415. package/dist/{chunk-PMY24FUD.js → chunk-G5BFI32U.js} +1 -1
  416. package/dist/{chunk-LD5ZOUFT.js → chunk-GF52TW4I.js} +0 -4
  417. package/dist/{chunk-ABL557OT.js → chunk-GMD33ZD7.js} +1 -8
  418. package/dist/{chunk-XWKZB5U5.js → chunk-ICSZF37W.js} +21 -150
  419. package/dist/chunk-IEXAKOEX.js +113 -0
  420. package/dist/{chunk-UY4SWJVE.js → chunk-K2IUBCND.js} +0 -12
  421. package/dist/chunk-LJ5W4ZBU.js +146 -0
  422. package/dist/chunk-LLUW26BS.js +255 -0
  423. package/dist/{chunk-GEA7E2FL.js → chunk-PIURX6IZ.js} +220 -2
  424. package/dist/{chunk-MMEJ3Y7E.js → chunk-QETYXKQQ.js} +1 -10
  425. package/dist/{chunk-YX2GSJK7.js → chunk-RP4SXXLJ.js} +1 -1
  426. package/dist/{chunk-P727GZVO.js → chunk-SAMQUUO5.js} +3 -5
  427. package/dist/{chunk-RF7U3SCL.js → chunk-TD347SSX.js} +3 -11
  428. package/dist/{chunk-NFEGPWGS.js → chunk-TFGKUWHY.js} +1 -88
  429. package/dist/{chunk-LM4WDUQJ.js → chunk-TPA6PYN2.js} +1 -11
  430. package/dist/{chunk-OLFOPQCA.js → chunk-UQSOS726.js} +4 -18
  431. package/dist/{chunk-GBRNYH7W.js → chunk-V24L35GM.js} +0 -11
  432. package/dist/{chunk-COYMZ76S.js → chunk-VFMW3JUY.js} +1 -1
  433. package/dist/{chunk-YIOY2XEO.js → chunk-VHF66LCQ.js} +22 -94
  434. package/dist/{chunk-JMURQODM.js → chunk-VZ7TYX6Z.js} +0 -1
  435. package/dist/{chunk-SIGGQRY2.js → chunk-W3SIWT7J.js} +5030 -4412
  436. package/dist/{chunk-W35ZMOXB.js → chunk-WPZKOVYF.js} +0 -5
  437. package/dist/chunk-WZH57M53.js +494 -0
  438. package/dist/{chunk-AYVJXDLB.js → chunk-XHGZ2E77.js} +0 -2
  439. package/dist/{chunk-JRQVPFLF.js → chunk-XQ72DZKJ.js} +1 -1
  440. package/dist/{chunk-7DHP4ESU.js → chunk-YLDMAZZE.js} +0 -10
  441. package/dist/{chunk-FYZVH3MC.js → chunk-YQ7FFW3G.js} +0 -11
  442. package/dist/chunk-ZPLJ24OV.js +93 -0
  443. package/dist/cloud-import/multipart.js +1 -1
  444. package/dist/cloud-import.js +9 -16
  445. package/dist/compose/renderer.js +18 -18
  446. package/dist/compose.js +21 -21
  447. package/dist/composition/audio.js +1 -1
  448. package/dist/composition/brand-kit.js +0 -5
  449. package/dist/composition/graphics-plan.js +4 -4
  450. package/dist/composition/ops.js +5 -5
  451. package/dist/composition/primitive-catalog.js +1 -1
  452. package/dist/composition/projection.js +28 -4
  453. package/dist/composition/reframe/kenBurns.js +0 -4
  454. package/dist/composition/reframe.js +4 -2
  455. package/dist/composition/timeline.js +1 -1
  456. package/dist/composition/validators/graphic-kinds.js +1 -1
  457. package/dist/composition/validators.js +8 -6
  458. package/dist/composition-ops.js +18 -135
  459. package/dist/composition.js +35 -9
  460. package/dist/context-JLLU3MYD.js +14 -0
  461. package/dist/core/render.js +9 -7
  462. package/dist/core/select.js +2 -6
  463. package/dist/core.js +5 -7
  464. package/dist/director/ai-sdk.d.ts +1 -0
  465. package/dist/director/ai-sdk.js +33 -0
  466. package/dist/director/domain.d.ts +1 -0
  467. package/dist/director/domain.js +62 -0
  468. package/dist/director/testing.d.ts +1 -0
  469. package/dist/director/testing.js +22 -0
  470. package/dist/director.d.ts +1 -0
  471. package/dist/director.js +86 -0
  472. package/dist/errors.js +1 -1
  473. package/dist/foundation.js +1 -0
  474. package/dist/mcp/adapter.js +5 -64
  475. package/dist/mcp/core.js +1 -1
  476. package/dist/mcp/curation.js +1 -1
  477. package/dist/mcp/server.js +4 -4
  478. package/dist/mcp.js +4 -4
  479. package/dist/media-model/generation.d.ts +1 -0
  480. package/dist/media-model/generation.js +40 -0
  481. package/dist/media-model/testing.js +1071 -718
  482. package/dist/media-model.js +38 -6
  483. package/dist/nle-export/server.js +328 -130
  484. package/dist/nle-export.js +22 -21
  485. package/dist/plane/contract.js +0 -3
  486. package/dist/primitives/backgrounds.js +2 -2
  487. package/dist/primitives/captions.js +0 -5
  488. package/dist/primitives/effects.js +2 -2
  489. package/dist/primitives/hero-text.js +2 -2
  490. package/dist/primitives/layouts.js +2 -2
  491. package/dist/primitives/lib/index.js +17 -17
  492. package/dist/primitives/lib/text/fitText.js +1 -1
  493. package/dist/primitives/lib/tokens.js +1 -1
  494. package/dist/primitives/lib.js +17 -17
  495. package/dist/primitives/scenes.js +2 -2
  496. package/dist/primitives/text.js +2 -2
  497. package/dist/primitives/ui-blocks.js +4 -4
  498. package/dist/primitives.js +21 -21
  499. package/dist/render-harness/sandboxGlobalSpecs.js +1 -1
  500. package/dist/render-harness.js +24 -41
  501. package/package.json +39 -24
  502. package/dist/_members/account-model/index.js +0 -4
  503. package/dist/_members/account-model/testing/conversationStoreContract.js +0 -168
  504. package/dist/_members/account-model/testing/index.js +0 -7
  505. package/dist/_members/account-model/testing/restorePointStoreContract.js +0 -69
  506. package/dist/_members/account-model/types/index.js +0 -1
  507. package/dist/_members/account-model/validators/contextFile.js +0 -18
  508. package/dist/_members/account-model/validators/conversation.js +0 -95
  509. package/dist/_members/account-model/validators/dashboardInsight.js +0 -16
  510. package/dist/_members/account-model/validators/index.js +0 -7
  511. package/dist/_members/account-model/validators/sessionToken.js +0 -49
  512. package/dist/_members/account-model/validators/uploadToken.js +0 -16
  513. package/dist/_members/account-model/validators/userSettings.js +0 -12
  514. package/dist/_members/account-model/validators/workingComposition.js +0 -20
  515. package/dist/_members/brand-derivation/constants.js +0 -20
  516. package/dist/_members/brand-derivation/contrastSafe.js +0 -114
  517. package/dist/_members/brand-derivation/index.js +0 -1
  518. package/dist/_members/cloud-import/chunk-XKO6ZSWI.js +0 -162
  519. package/dist/_members/cloud-import/chunk-XKO6ZSWI.js.map +0 -1
  520. package/dist/_members/cloud-import/index.js +0 -241
  521. package/dist/_members/cloud-import/index.js.map +0 -1
  522. package/dist/_members/cloud-import/multipartUpload.js +0 -7
  523. package/dist/_members/cloud-import/multipartUpload.js.map +0 -1
  524. package/dist/_members/composition/audio/audioMix.js +0 -61
  525. package/dist/_members/composition/audio/index.js +0 -5
  526. package/dist/_members/composition/audio/mixStaging.js +0 -195
  527. package/dist/_members/composition/audio/musicPack.generated.js +0 -136
  528. package/dist/_members/composition/audio/musicPack.js +0 -36
  529. package/dist/_members/composition/audio/pack.generated.js +0 -603
  530. package/dist/_members/composition/audio/pack.js +0 -48
  531. package/dist/_members/composition/audio/palette.js +0 -134
  532. package/dist/_members/composition/autozoom/index.js +0 -83
  533. package/dist/_members/composition/brand-kit.js +0 -45
  534. package/dist/_members/composition/brief/contract.js +0 -209
  535. package/dist/_members/composition/color-grade.js +0 -80
  536. package/dist/_members/composition/depth.js +0 -8
  537. package/dist/_members/composition/fixtures/index.js +0 -143
  538. package/dist/_members/composition/fixtures/vaayaErrored.d.ts +0 -25
  539. package/dist/_members/composition/fixtures/vaayaErrored.js +0 -203
  540. package/dist/_members/composition/fonts.js +0 -162
  541. package/dist/_members/composition/graphics-plan/compile.js +0 -221
  542. package/dist/_members/composition/graphics-plan/index.js +0 -10
  543. package/dist/_members/composition/graphics-plan/instantiateMotif.js +0 -44
  544. package/dist/_members/composition/graphics-plan/motion.js +0 -66
  545. package/dist/_members/composition/graphics-plan/schemas.js +0 -261
  546. package/dist/_members/composition/graphics-plan/solve.js +0 -145
  547. package/dist/_members/composition/index.js +0 -5
  548. package/dist/_members/composition/invariants/clipPlacement.js +0 -69
  549. package/dist/_members/composition/invariants/composition.js +0 -28
  550. package/dist/_members/composition/invariants/errors.js +0 -10
  551. package/dist/_members/composition/invariants/etag.js +0 -38
  552. package/dist/_members/composition/invariants/ids.js +0 -33
  553. package/dist/_members/composition/invariants/index.js +0 -9
  554. package/dist/_members/composition/invariants/keyframes.js +0 -45
  555. package/dist/_members/composition/invariants/markers.js +0 -29
  556. package/dist/_members/composition/invariants/time.js +0 -20
  557. package/dist/_members/composition/invariants/tracks.js +0 -304
  558. package/dist/_members/composition/ops/compositionOps.js +0 -1056
  559. package/dist/_members/composition/ops/headlessStore.js +0 -94
  560. package/dist/_members/composition/ops/index.js +0 -4
  561. package/dist/_members/composition/ops/selectors.js +0 -118
  562. package/dist/_members/composition/ops/timeline-word.js +0 -1
  563. package/dist/_members/composition/ops/transcript.js +0 -77
  564. package/dist/_members/composition/ops/types.js +0 -16
  565. package/dist/_members/composition/primitive-catalog/catalogQuery.js +0 -150
  566. package/dist/_members/composition/primitive-catalog/disabled.js +0 -32
  567. package/dist/_members/composition/primitive-catalog/generated/meta.js +0 -15161
  568. package/dist/_members/composition/primitive-catalog/index.js +0 -46
  569. package/dist/_members/composition/primitive-catalog/paramValidation.js +0 -231
  570. package/dist/_members/composition/primitive-catalog/projection.js +0 -164
  571. package/dist/_members/composition/primitive-catalog/types.js +0 -14
  572. package/dist/_members/composition/projection/behind-placement.js +0 -62
  573. package/dist/_members/composition/projection/brandKit.js +0 -482
  574. package/dist/_members/composition/projection/cardTokens.js +0 -209
  575. package/dist/_members/composition/projection/composition-floor.js +0 -582
  576. package/dist/_members/composition/projection/cropProjection.js +0 -257
  577. package/dist/_members/composition/projection/index.js +0 -7
  578. package/dist/_members/composition/projection/occlusion-budget.js +0 -104
  579. package/dist/_members/composition/projection/safe-zones.js +0 -99
  580. package/dist/_members/composition/reframe/aspectLoss.js +0 -115
  581. package/dist/_members/composition/reframe/coverage.js +0 -62
  582. package/dist/_members/composition/reframe/derive.js +0 -73
  583. package/dist/_members/composition/reframe/index.js +0 -109
  584. package/dist/_members/composition/reframe/kenBurns.js +0 -64
  585. package/dist/_members/composition/reframe/shotScale.js +0 -176
  586. package/dist/_members/composition/reframe/trajectory.js +0 -124
  587. package/dist/_members/composition/timeline/compound.js +0 -134
  588. package/dist/_members/composition/timeline/index.js +0 -9
  589. package/dist/_members/composition/timeline/intent.js +0 -228
  590. package/dist/_members/composition/timeline/keyframes.js +0 -121
  591. package/dist/_members/composition/timeline/link.js +0 -59
  592. package/dist/_members/composition/timeline/occupancy.js +0 -36
  593. package/dist/_members/composition/timeline/placement.js +0 -74
  594. package/dist/_members/composition/timeline/plan.js +0 -31
  595. package/dist/_members/composition/timeline/resolve.js +0 -170
  596. package/dist/_members/composition/timeline/trims.js +0 -278
  597. package/dist/_members/composition/types/index.js +0 -1
  598. package/dist/_members/composition/validators/brandKit.js +0 -295
  599. package/dist/_members/composition/validators/composePlan.js +0 -113
  600. package/dist/_members/composition/validators/composition.js +0 -703
  601. package/dist/_members/composition/validators/font.js +0 -34
  602. package/dist/_members/composition/validators/graphicKinds.js +0 -30
  603. package/dist/_members/composition/validators/index.js +0 -9
  604. package/dist/_members/composition/validators/project.js +0 -29
  605. package/dist/_members/composition/validators/registry.js +0 -41
  606. package/dist/_members/composition/validators/render.js +0 -139
  607. package/dist/_members/composition/validators/session.js +0 -37
  608. package/dist/_members/composition/validators/webhook.js +0 -72
  609. package/dist/_members/composition-ops/alphaLayers.js +0 -141
  610. package/dist/_members/composition-ops/index.js +0 -637
  611. package/dist/_members/composition-ops/materializeGrid.js +0 -99
  612. package/dist/_members/composition-ops/opRecorder.js +0 -196
  613. package/dist/_members/composition-ops/recordingStore.js +0 -14
  614. package/dist/_members/composition-ops/replaceRegion.js +0 -102
  615. package/dist/_members/composition-ops/testFixtures.js +0 -19
  616. package/dist/_members/core/index.js +0 -5
  617. package/dist/_members/core/render/bookends.js +0 -53
  618. package/dist/_members/core/render/captions.js +0 -127
  619. package/dist/_members/core/render/compositionRender.js +0 -1249
  620. package/dist/_members/core/render/deriveTrajectory.js +0 -889
  621. package/dist/_members/core/render/emphasis.js +0 -16
  622. package/dist/_members/core/render/eval/cropBox.js +0 -139
  623. package/dist/_members/core/render/eval/inclusion.js +0 -96
  624. package/dist/_members/core/render/eval/index.js +0 -146
  625. package/dist/_members/core/render/eval/metrics.js +0 -94
  626. package/dist/_members/core/render/exportSettings.js +0 -65
  627. package/dist/_members/core/render/index.js +0 -20
  628. package/dist/_members/core/render/mapFaceToPerson.js +0 -73
  629. package/dist/_members/core/render/types.js +0 -8
  630. package/dist/_members/core/render/vcam/cameraPath.js +0 -248
  631. package/dist/_members/core/render/vcam/constants.js +0 -115
  632. package/dist/_members/core/render/vcam/errorCodes.js +0 -39
  633. package/dist/_members/core/render/vcam/framing.js +0 -136
  634. package/dist/_members/core/render/vcam/requiredRegion.js +0 -137
  635. package/dist/_members/core/render/vcam/shots.js +0 -53
  636. package/dist/_members/core/render/vcam/subjectSet.js +0 -388
  637. package/dist/_members/core/select/errorCodes.js +0 -38
  638. package/dist/_members/core/select/index.js +0 -26
  639. package/dist/_members/core/select/model.js +0 -18
  640. package/dist/_members/core/select/select.js +0 -244
  641. package/dist/_members/core/select/stabilize.js +0 -242
  642. package/dist/_members/core/types.js +0 -7
  643. package/dist/_members/errors/index.js +0 -1
  644. package/dist/_members/errors/registry.js +0 -560
  645. package/dist/_members/foundation/codes/index.js +0 -31
  646. package/dist/_members/foundation/index.js +0 -2
  647. package/dist/_members/foundation/primitives/index.js +0 -5
  648. package/dist/_members/mcp/adapter.js +0 -771
  649. package/dist/_members/mcp/burnedNames.js +0 -73
  650. package/dist/_members/mcp/core.js +0 -390
  651. package/dist/_members/mcp/curation.js +0 -792
  652. package/dist/_members/mcp/executor.js +0 -142
  653. package/dist/_members/mcp/format.js +0 -9
  654. package/dist/_members/mcp/generated/catalogPreviews.js +0 -95
  655. package/dist/_members/mcp/generated/harness.js +0 -81
  656. package/dist/_members/mcp/generated/operations.js +0 -131
  657. package/dist/_members/mcp/index.js +0 -50
  658. package/dist/_members/mcp/internalLoopTools.js +0 -109
  659. package/dist/_members/mcp/prompts.js +0 -45
  660. package/dist/_members/mcp/resources.js +0 -166
  661. package/dist/_members/mcp/server.js +0 -340
  662. package/dist/_members/mcp/wait.js +0 -378
  663. package/dist/_members/mcp/x402Meta.js +0 -66
  664. package/dist/_members/media-model/api.js +0 -175
  665. package/dist/_members/media-model/index.js +0 -1
  666. package/dist/_members/media-model/media-kind.js +0 -116
  667. package/dist/_members/media-model/testing/index.js +0 -1
  668. package/dist/_members/media-model/testing/mediaStoreContract.js +0 -82
  669. package/dist/_members/media-model/transcriptSearch.js +0 -70
  670. package/dist/_members/media-model/transcriptSearchCases.json +0 -79
  671. package/dist/_members/nle-export/compact-timeline.js +0 -73
  672. package/dist/_members/nle-export/compact-timeline.js.map +0 -1
  673. package/dist/_members/nle-export/composition-to-input.js +0 -147
  674. package/dist/_members/nle-export/composition-to-input.js.map +0 -1
  675. package/dist/_members/nle-export/fcpxml.js +0 -159
  676. package/dist/_members/nle-export/fcpxml.js.map +0 -1
  677. package/dist/_members/nle-export/index.js +0 -12
  678. package/dist/_members/nle-export/index.js.map +0 -1
  679. package/dist/_members/nle-export/premiere.js +0 -161
  680. package/dist/_members/nle-export/premiere.js.map +0 -1
  681. package/dist/_members/nle-export/server/index.js +0 -2
  682. package/dist/_members/nle-export/server/index.js.map +0 -1
  683. package/dist/_members/nle-export/server/pack-zip.js +0 -38
  684. package/dist/_members/nle-export/server/pack-zip.js.map +0 -1
  685. package/dist/_members/nle-export/srt.js +0 -50
  686. package/dist/_members/nle-export/srt.js.map +0 -1
  687. package/dist/_members/nle-export/types.js +0 -9
  688. package/dist/_members/nle-export/types.js.map +0 -1
  689. package/dist/_members/nle-export/xml/index.js +0 -11
  690. package/dist/_members/nle-export/xml/index.js.map +0 -1
  691. package/dist/_members/nle-export/xml-utils.js +0 -48
  692. package/dist/_members/nle-export/xml-utils.js.map +0 -1
  693. package/dist/_members/perception/activeSpeaker.js +0 -103
  694. package/dist/_members/perception/audioQuality.js +0 -76
  695. package/dist/_members/perception/energyBeat.js +0 -99
  696. package/dist/_members/perception/identityMatch.js +0 -91
  697. package/dist/_members/perception/index.js +0 -48
  698. package/dist/_members/perception/visualQuality.js +0 -95
  699. package/dist/_members/plane/conformance.js +0 -90
  700. package/dist/_members/plane/contract.js +0 -49
  701. package/dist/_members/plane/index.js +0 -16
  702. package/dist/_members/primitives/backgrounds/index.js +0 -32
  703. package/dist/_members/primitives/backgrounds/index.js.map +0 -1
  704. package/dist/_members/primitives/captions/index.js +0 -398
  705. package/dist/_members/primitives/captions/index.js.map +0 -1
  706. package/dist/_members/primitives/chunk-2LVE4UIT.js +0 -139
  707. package/dist/_members/primitives/chunk-2LVE4UIT.js.map +0 -1
  708. package/dist/_members/primitives/chunk-3IQUH6KK.js +0 -20
  709. package/dist/_members/primitives/chunk-3IQUH6KK.js.map +0 -1
  710. package/dist/_members/primitives/chunk-3OMURV6Q.js +0 -112
  711. package/dist/_members/primitives/chunk-3OMURV6Q.js.map +0 -1
  712. package/dist/_members/primitives/chunk-4IS6TMEG.js +0 -21
  713. package/dist/_members/primitives/chunk-4IS6TMEG.js.map +0 -1
  714. package/dist/_members/primitives/chunk-5MWGAEGQ.js +0 -1644
  715. package/dist/_members/primitives/chunk-5MWGAEGQ.js.map +0 -1
  716. package/dist/_members/primitives/chunk-7RRPFPQK.js +0 -15
  717. package/dist/_members/primitives/chunk-7RRPFPQK.js.map +0 -1
  718. package/dist/_members/primitives/chunk-DH5TRZK2.js +0 -125
  719. package/dist/_members/primitives/chunk-DH5TRZK2.js.map +0 -1
  720. package/dist/_members/primitives/chunk-E3KNUSFG.js +0 -2337
  721. package/dist/_members/primitives/chunk-E3KNUSFG.js.map +0 -1
  722. package/dist/_members/primitives/chunk-G2B3G4HK.js +0 -47
  723. package/dist/_members/primitives/chunk-G2B3G4HK.js.map +0 -1
  724. package/dist/_members/primitives/chunk-HFPFGZXT.js +0 -1494
  725. package/dist/_members/primitives/chunk-HFPFGZXT.js.map +0 -1
  726. package/dist/_members/primitives/chunk-HIWVFZVH.js +0 -19
  727. package/dist/_members/primitives/chunk-HIWVFZVH.js.map +0 -1
  728. package/dist/_members/primitives/chunk-IDAL6G3Y.js +0 -134
  729. package/dist/_members/primitives/chunk-IDAL6G3Y.js.map +0 -1
  730. package/dist/_members/primitives/chunk-KNC6JP5F.js +0 -34
  731. package/dist/_members/primitives/chunk-KNC6JP5F.js.map +0 -1
  732. package/dist/_members/primitives/chunk-KYRDVZST.js +0 -459
  733. package/dist/_members/primitives/chunk-KYRDVZST.js.map +0 -1
  734. package/dist/_members/primitives/chunk-LWLHS2NS.js +0 -3410
  735. package/dist/_members/primitives/chunk-LWLHS2NS.js.map +0 -1
  736. package/dist/_members/primitives/chunk-QAQ3P7DR.js +0 -8855
  737. package/dist/_members/primitives/chunk-QAQ3P7DR.js.map +0 -1
  738. package/dist/_members/primitives/chunk-ROV2ODWC.js +0 -81
  739. package/dist/_members/primitives/chunk-ROV2ODWC.js.map +0 -1
  740. package/dist/_members/primitives/chunk-TCRC2FH3.js +0 -183
  741. package/dist/_members/primitives/chunk-TCRC2FH3.js.map +0 -1
  742. package/dist/_members/primitives/chunk-US4YEDAA.js +0 -96
  743. package/dist/_members/primitives/chunk-US4YEDAA.js.map +0 -1
  744. package/dist/_members/primitives/chunk-UVKRO5ER.js +0 -13
  745. package/dist/_members/primitives/chunk-UVKRO5ER.js.map +0 -1
  746. package/dist/_members/primitives/chunk-W4EIIF2I.js +0 -10
  747. package/dist/_members/primitives/chunk-W4EIIF2I.js.map +0 -1
  748. package/dist/_members/primitives/chunk-WPGKIPCO.js +0 -3563
  749. package/dist/_members/primitives/chunk-WPGKIPCO.js.map +0 -1
  750. package/dist/_members/primitives/chunk-WZFLEGMD.js +0 -1435
  751. package/dist/_members/primitives/chunk-WZFLEGMD.js.map +0 -1
  752. package/dist/_members/primitives/chunk-XHU3WBEI.js +0 -33
  753. package/dist/_members/primitives/chunk-XHU3WBEI.js.map +0 -1
  754. package/dist/_members/primitives/chunk-YN7WTZZ7.js +0 -46
  755. package/dist/_members/primitives/chunk-YN7WTZZ7.js.map +0 -1
  756. package/dist/_members/primitives/effects/index.js +0 -30
  757. package/dist/_members/primitives/effects/index.js.map +0 -1
  758. package/dist/_members/primitives/hero-text/index.js +0 -14
  759. package/dist/_members/primitives/hero-text/index.js.map +0 -1
  760. package/dist/_members/primitives/index.js +0 -64
  761. package/dist/_members/primitives/index.js.map +0 -1
  762. package/dist/_members/primitives/layouts/index.js +0 -24
  763. package/dist/_members/primitives/layouts/index.js.map +0 -1
  764. package/dist/_members/primitives/lib/easings.js +0 -26
  765. package/dist/_members/primitives/lib/easings.js.map +0 -1
  766. package/dist/_members/primitives/lib/index.js +0 -74
  767. package/dist/_members/primitives/lib/index.js.map +0 -1
  768. package/dist/_members/primitives/lib/palette.js +0 -72
  769. package/dist/_members/primitives/lib/palette.js.map +0 -1
  770. package/dist/_members/primitives/lib/preview.js +0 -8
  771. package/dist/_members/primitives/lib/preview.js.map +0 -1
  772. package/dist/_members/primitives/lib/schema.js +0 -12
  773. package/dist/_members/primitives/lib/schema.js.map +0 -1
  774. package/dist/_members/primitives/lib/seeded-random.js +0 -14
  775. package/dist/_members/primitives/lib/seeded-random.js.map +0 -1
  776. package/dist/_members/primitives/lib/text/contrast.js +0 -12
  777. package/dist/_members/primitives/lib/text/contrast.js.map +0 -1
  778. package/dist/_members/primitives/lib/text/fill.js +0 -8
  779. package/dist/_members/primitives/lib/text/fill.js.map +0 -1
  780. package/dist/_members/primitives/lib/text/fitText.js +0 -10
  781. package/dist/_members/primitives/lib/text/fitText.js.map +0 -1
  782. package/dist/_members/primitives/lib/text/marker.js +0 -8
  783. package/dist/_members/primitives/lib/text/marker.js.map +0 -1
  784. package/dist/_members/primitives/lib/text/motion.js +0 -16
  785. package/dist/_members/primitives/lib/text/motion.js.map +0 -1
  786. package/dist/_members/primitives/lib/text/recolor.js +0 -8
  787. package/dist/_members/primitives/lib/text/recolor.js.map +0 -1
  788. package/dist/_members/primitives/lib/text/spec.js +0 -1
  789. package/dist/_members/primitives/lib/text/spec.js.map +0 -1
  790. package/dist/_members/primitives/lib/text/stage.js +0 -8
  791. package/dist/_members/primitives/lib/text/stage.js.map +0 -1
  792. package/dist/_members/primitives/lib/text/typeface.js +0 -8
  793. package/dist/_members/primitives/lib/text/typeface.js.map +0 -1
  794. package/dist/_members/primitives/lib/tokens.js +0 -24
  795. package/dist/_members/primitives/lib/tokens.js.map +0 -1
  796. package/dist/_members/primitives/lib/types.js +0 -1
  797. package/dist/_members/primitives/lib/types.js.map +0 -1
  798. package/dist/_members/primitives/params-required.json +0 -153
  799. package/dist/_members/primitives/scenes/index.js +0 -25
  800. package/dist/_members/primitives/scenes/index.js.map +0 -1
  801. package/dist/_members/primitives/subject-foreground/index.js +0 -30
  802. package/dist/_members/primitives/subject-foreground/index.js.map +0 -1
  803. package/dist/_members/primitives/text/index.js +0 -57
  804. package/dist/_members/primitives/text/index.js.map +0 -1
  805. package/dist/_members/primitives/transitions/index.js +0 -67
  806. package/dist/_members/primitives/transitions/index.js.map +0 -1
  807. package/dist/_members/primitives/ui-blocks/index.js +0 -76
  808. package/dist/_members/primitives/ui-blocks/index.js.map +0 -1
  809. package/dist/_members/primitives/version-map.json +0 -105
  810. package/dist/_members/primitives/workspace.js +0 -60
  811. package/dist/_members/primitives/workspace.js.map +0 -1
  812. package/dist/chunk-37NJ27UU.js +0 -501
  813. package/dist/chunk-6EQXLEP6.js +0 -194
  814. package/dist/chunk-MXFAADCQ.js +0 -735
  815. package/dist/context-OKX3HHFS.js +0 -14
@@ -1,9 +1,5 @@
1
1
  export { apcaLc } from "../../brand-derivation/index.js";
2
- /** Bump on ANY change to the algorithm or constants below. The render consumer
3
- * embeds this into renderCacheKey (spec §15) so a floor change invalidates
4
- * cached renders transitively — never a remembered manual bump. */
5
2
  export declare const FLOOR_VERSION = "floor-v6-2026.06.09";
6
- /** Fractions of the OUTPUT rect. Origin TOP-LEFT, y-down, all in [0,1]. */
7
3
  export interface Rect {
8
4
  x: number;
9
5
  y: number;
@@ -11,73 +7,43 @@ export interface Rect {
11
7
  h: number;
12
8
  }
13
9
  export type Anchor = "top" | "bottom" | "lower-third" | "left" | "right" | "free";
14
- /** A frame window in absolute frame indices (inclusive start, exclusive end). */
15
10
  export interface FrameWindow {
16
11
  startFrame: number;
17
12
  endFrame: number;
18
13
  }
19
- /** Per-frame face box normalized to the OUTPUT frame (the crop is already applied
20
- * — render derives this as crop∘FaceBoxSource). `null` = no face that frame. */
21
14
  export type FaceBoxOutput = Rect;
22
- /** One tracked person. The bake (spec §10) emits a per-frame face box per subject
23
- * plus the windows where they are the active speaker. */
24
15
  export interface Subject {
25
16
  id: string;
26
- /** Per-frame face box (output coords), `null` where this subject has no face. */
27
17
  faceBoxSeries: (FaceBoxOutput | null)[];
28
- /** Windows where this subject is the active speaker (drives speaker-switch, spec §8). */
29
18
  activeWindows?: FrameWindow[];
30
19
  }
31
- /** The composed layout shape resolved from `subjects[]`. `single-focus` is fully
32
- * placed by this module; the designed split/stacked/speaker-switch geometry is a
33
- * later plan (spec §8) — reported here so callers branch correctly and the
34
- * multi-subject case is never silently flattened. */
35
20
  export type LayoutIntent = "single-focus" | "split" | "stacked" | "speaker-switch";
36
- /** The CEILING contract (spec §7) — declared here so the author-time agent and
37
- * the render/ceiling consumers share one shape. The floor only bounds a
38
- * treatment's animated EXTENT (a popping word must not pop onto the face); the
39
- * treatment library itself lives above the floor. */
40
21
  export interface Treatment {
41
22
  segmentation: "word" | "phrase" | "line";
42
23
  emphasis: {
43
24
  keywords: string[];
44
25
  style: "color" | "scale" | "weight";
45
26
  };
46
- /** One of the repo's mood-tagged kinetic caption styles (useWhen/pairsWith/avoidWith honoured above the floor). */
47
27
  kineticPreset: string;
48
28
  maxLines: number;
49
- /** Index into the editorial type scale (spec §7.1) — NOT a raw px guess. */
50
29
  typeScaleStep: number;
51
30
  }
52
31
  export interface PlacedElement {
53
32
  id: string;
54
33
  kind: "caption" | "graphic";
55
- /** `inset` respects face + safe-zones + inter-element; `takeover` is intentional
56
- * full-frame occlusion (honours only safe zones for its internal text). */
57
34
  intent: "inset" | "takeover";
58
- /** Captions are required (the reframe yields, never drops); graphics default droppable. */
59
35
  required: boolean;
60
- /** Higher places first. Captions highest by default. */
61
36
  priority: number;
62
37
  hasText: boolean;
63
- /** MEASURED extent (caption layer measures the text; overlay measures the
64
- * primitive at its declared params) — NOT a guess. The hard face guarantee is
65
- * only as hard as this number, so it must be real (spec §5). */
66
38
  measuredExtent: {
67
39
  w: number;
68
40
  h: number;
69
41
  };
70
42
  preferredRegion?: Anchor;
71
43
  treatment?: Treatment;
72
- /** Resolved text color (hex) for the legibility check; defaults to the white
73
- * pole when omitted (the safe default text color over an unknown backdrop). */
74
44
  textColor?: string;
75
- /** Element time window in absolute frames (caller converts seconds→frames up front). */
76
45
  timeWindow: FrameWindow;
77
46
  }
78
- /** Caller-supplied luminance summary of the layers BENEATH an element (no
79
- * circularity — never the element's own remedy). Each tile is Y∈[0,1]; the
80
- * WORST tile drives the decision. Render samples real pixels; tests synthesize. */
81
47
  export interface LuminanceSummary {
82
48
  tiles: number[];
83
49
  }
@@ -90,10 +56,6 @@ export interface ResolvedElement {
90
56
  remedy: LegibilityRemedy;
91
57
  };
92
58
  }
93
- /** The reframe's yield. `transform` is a per-frame additive adjustment on the
94
- * baked trajectory (generalises the old caption scalar shift); `mat` is a
95
- * DESIGNED reserved band (the render fills it with blurred-glass/gradient —
96
- * NEVER a flat letterbox on 9:16/4:5). */
97
59
  export type ReframeAdjustment = {
98
60
  kind: "transform";
99
61
  dy: number;
@@ -118,129 +80,46 @@ export interface FloorInput {
118
80
  platform: string;
119
81
  aspect: "9:16" | "1:1" | "4:5" | "16:9";
120
82
  };
121
- /** Multi-subject native (spec §5/§8). One subject → single-focus. */
122
83
  subjects: Subject[];
123
84
  elements: PlacedElement[];
124
- /** depthMode relaxes the face keep-out's LOWER edge into a torso band (spec §12).
125
- * When `captionsBehind` is supplied, depthMode is GATED by the eligibility
126
- * predicate (§22.2) — ineligible degrades to a normal lower-third caption. */
127
85
  depthMode?: boolean;
128
- /** Captions-behind-speaker eligibility signals (§22.2), injected by the render
129
- * env: `activeSpeakerPresenceFraction` summarized from the bake's activeWindows;
130
- * `activeBandCoverage` = the post-sizing matte occlusion of the caption band
131
- * (a render-time sample, like `backdrop`). Absent ⇒ the gate is inert and
132
- * depthMode is honored as authored (today's behavior). */
133
86
  captionsBehind?: {
134
87
  activeSpeakerPresenceFraction: number;
135
88
  activeBandCoverage: number | null;
136
89
  };
137
- /** Layers-beneath luminance for an element's region+window. Render supplies the
138
- * real sampler; tests supply a synthetic one. */
139
90
  backdrop: (rect: Rect, frames: number[]) => LuminanceSummary;
140
91
  }
141
92
  export interface FloorEnvelope {
142
93
  perElement: ResolvedElement[];
143
94
  reframe: ReframeAdjustment;
144
- /** Per-frame UNION face keep-out across all subjects (`null` where no subject has a face). */
145
95
  faceKeepOut: (Rect | null)[];
146
96
  layout: LayoutIntent;
147
97
  diagnostics: FloorDiagnostics;
148
98
  }
149
- /** Face keep-out padding, in fractions of the FACE box (scales with face size,
150
- * aspect-agnostic). Top grows most (hair/headroom), then bottom, then sides. */
151
99
  export declare const FACE_PADDING: {
152
100
  readonly top: 0.6;
153
101
  readonly bottom: 0.3;
154
102
  readonly side: 0.25;
155
103
  };
156
- /** APCA Lc target for caption/graphic text over video (spec §2 invariant 2).
157
- * Numerically equals brand-derivation's `FLOORS.nonBody`, but it is a DISTINCT
158
- * concept (text-over-hostile-video, not muted-UI-text) — kept separate on
159
- * purpose so a change to one never silently moves the other. */
160
104
  export declare const CAPTION_LC_FLOOR = 60;
161
- /** Minimum effective zoom the yield may request — mirrors the bake's source-fit
162
- * floor (`CropFromTrajectory` effectiveZoom clamp). Below this the source no
163
- * longer fills the frame, so we fall to a designed mat instead. */
164
105
  export declare const MIN_ZOOM = 0.4;
165
- /** Pad a single face box by the face-relative padding vector and clamp to [0,1].
166
- * `null` (no-face frame) → `null`. In depthMode the lower edge is NOT grown
167
- * (the torso band is legible-behind, spec §12). */
168
106
  export declare function faceKeepOut(face: FaceBoxOutput | null, depthMode?: boolean): Rect | null;
169
- /** Axis-aligned bounding box of a set of rects. */
170
107
  export declare function boundingBox(rects: Rect[]): Rect;
171
- /** Per-frame UNION of every subject's padded face keep-out. `null` for a frame
172
- * where no subject has a face. This is the floor's "face class" — captions never
173
- * occlude ANY subject's face, single- or multi-subject. */
174
108
  export declare function unionFaceKeepOutSeries(subjects: Subject[], depthMode?: boolean): (Rect | null)[];
175
- /** Per-frame keep-out for SPEAKER-SWITCH (spec §8): the crop follows the active
176
- * speaker, so only THEY are prominently in frame — the keep-out tracks the
177
- * active subject (whose `activeWindows` cover the frame), NOT the union of all
178
- * subjects. This lets captions sit tight under the in-frame speaker instead of
179
- * clearing an off-frame second subject's union (the over-conservative single-
180
- * stage behavior). Gaps (before the first switch, or no window covers the frame)
181
- * hold the first subject that has a face there; truly faceless frames → null. */
182
109
  export declare function activeFaceKeepOutSeries(subjects: Subject[], depthMode?: boolean): (Rect | null)[];
183
- /** Resolve the composed layout shape from `subjects[]`. One subject → single-
184
- * focus. Two+ subjects → speaker-switch when active-speaker windows exist,
185
- * else a static split. (The DESIGNED geometry for the multi cases is spec §8 /
186
- * a later plan; this module places them with a correct union keep-out and
187
- * reports the intent so nothing is silently flattened.) */
188
110
  export declare function resolveLayoutIntent(subjects: Subject[]): LayoutIntent;
189
- /**
190
- * Compute the reframe yield needed to open `neededBand` of vertical space below
191
- * the (clip-max) face keep-out for a required element. Precedence:
192
- * 1. already enough band below → identity transform
193
- * 2. reposition: raise the source so the keep-out leaves `neededBand` below it
194
- * 3. zoom-out: shrink the subject (capped at MIN_ZOOM) to free vertical space
195
- * 4. designed mat: a reserved band at the bottom (the render fills it with a
196
- * designed treatment — NEVER a flat letterbox; forbidden as a frame-border
197
- * pillarbox on 9:16/4:5).
198
- */
199
111
  export declare function reframeYield(input: {
200
112
  maxFaceKeepOut: Rect;
201
113
  neededBand: number;
202
114
  aspect: string;
203
115
  }): ReframeAdjustment;
204
- /**
205
- * TOP-direction reframe-yield — open `neededBand` of vertical space ABOVE the
206
- * face keep-out for a HERO caption that sits ABOVE the subject (the "STEAL"
207
- * composition: subject low, big text in the headroom). Mirror of `reframeYield`
208
- * but UP-direction:
209
- * 1. already enough band above → identity
210
- * 2. reposition: LOWER the subject (dy>0) so the keep-out's top leaves the band
211
- * 3. zoom-out: shrink the subject (capped at MIN_ZOOM) to free the rest
212
- * 4. INFEASIBLE → `null` (NEVER a designed mat — "no fake stuff", per the hero
213
- * caption decision). The caller degrades to a readable FRONT caption when
214
- * real headroom can't fit the band (e.g. the head is already frame-high).
215
- * NOTE: operates in OUTPUT-frame keep-out coords like reframeYield; the SOURCE
216
- * headroom check (whether the source actually has room above the head) belongs
217
- * to the eligibility gate that feeds this — see captionsBehind eligibility.
218
- */
219
116
  export declare function reframeYieldTop(input: {
220
117
  maxFaceKeepOut: Rect;
221
118
  neededBand: number;
222
119
  aspect: string;
223
120
  }): ReframeAdjustment | null;
224
- /** Speaker silhouette width ÷ face KEEP-OUT width. Shoulders span ~2.2× the bare
225
- * face; the keep-out already carries side padding (~1.5× the face), so the
226
- * silhouette is ~1.5× the keep-out. Used to size the co-view crop. */
227
121
  export declare const SILHOUETTE_TO_KEEPOUT_W = 1.5;
228
- /** Co-view target: the speaker silhouette must occupy at most this fraction of
229
- * the OUTPUT width, so a centred caption (~0.8 wide) extends past the body on
230
- * both sides and reads WITH a body-bite (spec §12) instead of vanishing. At 0.45
231
- * the body covers ~45% of the width → ~44% of the caption is visible (a clear
232
- * readable bite, not just the stray ends) while keeping a comfortable medium
233
- * shot. Lower = more caption shown but a smaller subject (pure aesthetic knob). */
234
122
  export declare const COVIEW_MAX_SILHOUETTE_W = 0.45;
235
- /**
236
- * Reframe for CAPTIONS-BEHIND (co-view, depthMode). Unlike reframeYield (which
237
- * opens a vertical band BELOW the face for a lower-third caption), the co-view
238
- * caption sits CENTRED behind the speaker — so the constraint is LATERAL: the
239
- * silhouette must be narrower than the caption or the body hides the whole line
240
- * (the over-occlusion bug). Widen the crop (shrink the subject, face-scale<1,
241
- * capped at MIN_ZOOM) until the silhouette fits COVIEW_MAX_SILHOUETTE_W. dy=0 —
242
- * no vertical reposition; the caption is behind, not below.
243
- */
244
123
  export declare function coViewReframe(maxFaceKeepOut: Rect): ReframeAdjustment;
245
124
  export declare const MIN_ACTIVE_SPEAKER_PRESENCE = 0.6;
246
125
  export declare const COVIEW_MIN_BAND_COVERAGE = 0.15;
@@ -250,20 +129,6 @@ export interface CaptionsBehindEligibility {
250
129
  eligible: boolean;
251
130
  reason: CaptionsBehindReason;
252
131
  }
253
- /**
254
- * Pure eligibility gate for captions-behind-speaker. Evaluated AFTER the co-view
255
- * reframe sizing (spec §22.2), so `activeBandCoverage` is the post-sizing
256
- * occlusion of the caption band by the active speaker's silhouette.
257
- *
258
- * @param activeSpeakerPresenceFraction fraction of clip frames with ANY active
259
- * speaker present (single or two-shot; not "single speaker"). Injected.
260
- * @param activeBandCoverage mean fraction of the caption band the active
261
- * speaker's silhouette occludes over its windows; `null` ⇒ NOT YET MEASURED
262
- * (the bake-time coverage scalar is a follow-on) → the coverage gate is
263
- * SKIPPED and presence + coViewReframe sizing gate instead. Injected like
264
- * `LuminanceSummary` (bake/render-env), keeping this function pure.
265
- * @param legible APCA decision (Lc ≥ CAPTION_LC_FLOOR) on the visible portion.
266
- */
267
132
  export declare function captionsBehindEligible(input: {
268
133
  activeSpeakerPresenceFraction: number;
269
134
  activeBandCoverage: number | null;
@@ -279,26 +144,7 @@ interface Blockers {
279
144
  faceKeepOut: Rect[];
280
145
  safeZones: Rect[];
281
146
  }
282
- /**
283
- * Place a full-width-ish horizontal band element (caption / lower-third) in the
284
- * legal area. Two-zone model (spec §6.2): center-crossing blockers carve the
285
- * legal vertical GAPS (1-D solve); side regions (rails) cap the horizontal
286
- * CORRIDOR of the chosen band. Returns `null` when no legal vertical gap of
287
- * `minH` fits, or when side rails squeeze the corridor below MIN_CAPTION_WIDTH.
288
- * (Full 2-D packing for split/stacked layouts is spec §8 / a later plan.)
289
- */
290
147
  export declare function placeInLegalArea(el: PlaceReq, b: Blockers): Rect | null;
291
- /**
292
- * The safe caption REGION for a destination — the floor's caption placement
293
- * WITHOUT per-clip face context. The reframe handles faces per clip; the caption
294
- * position itself is clip-independent (safe-zone-driven), so the GLOBAL caption
295
- * layer renders into THIS band and it matches the per-clip floor's caption region
296
- * (and its scrim) by construction — same placeInLegalArea, same safe zones.
297
- *
298
- * For a bottom/lower-third anchor the region's BOTTOM edge sits at the top of the
299
- * platform's bottom-UI strip, so a caption rendered into it clears the chrome on
300
- * any vertical surface (lookupSafeZones unions platforms when none is threaded).
301
- */
302
148
  export declare function resolveCaptionRegion(input: {
303
149
  aspect: string;
304
150
  platform?: string;
@@ -308,17 +154,6 @@ export declare function resolveCaptionRegion(input: {
308
154
  };
309
155
  anchor?: Anchor;
310
156
  }): Rect;
311
- /**
312
- * The region a code/graphic overlay (jsxSource) must render WITHIN — the largest
313
- * band clear of the caption + platform safe zones (item #10: floor assigns the
314
- * region, the jsx obeys). Keeps editorial graphics off the captions and the
315
- * platform UI; the agent's jsx reads `params.region` (output fractions) for its
316
- * bounds instead of hard-coding positions / full-frame useVideoConfig math.
317
- *
318
- * v1 is face-agnostic (clip-independent, like the caption band); per-clip
319
- * face-aware overlay placement is a follow-up — the brief tells the agent the
320
- * region may contain the speaker, so graphic elements should favour its edges.
321
- */
322
157
  export declare function resolveOverlayRegion(input: {
323
158
  aspect: string;
324
159
  platform?: string;
@@ -328,22 +163,8 @@ export declare function resolveOverlayRegion(input: {
328
163
  h: number;
329
164
  };
330
165
  }): Rect;
331
- /**
332
- * Decide the legibility remedy for text of `textColor` over a backdrop luminance
333
- * summary. Real APCA (no proxy): the text's relative luminance vs each tile's
334
- * luminance, reduced to the WORST tile. ≥ CAPTION_LC_FLOOR → no remedy; else the
335
- * floor REQUESTS the cheapest always-legible remedy (`scrim`; the render makes it
336
- * a designed blurred-glass/gradient, never a hard stroke — spec §14). The
337
- * `lcTarget` is always the floor (the remedy must clear it).
338
- */
339
166
  export declare function decideLegibility(backdrop: LuminanceSummary, textColor?: string): {
340
167
  lcTarget: number;
341
168
  remedy: LegibilityRemedy;
342
169
  };
343
- /**
344
- * Resolve the composition floor for one clip. Linear, single-stage-per-clip, no
345
- * feedback loop → deterministic. Never throws; required elements are never
346
- * dropped (they get a forced designed-mat / lowest-gap placement), only
347
- * non-required elements may drop (logged in diagnostics).
348
- */
349
170
  export declare function resolveCompositionFloor(input: FloorInput): FloorEnvelope;
@@ -1,45 +1,21 @@
1
1
  import type { TrajectoryData, TrajectorySegment } from "../reframe/trajectory.js";
2
2
  import type { Rect, ReframeAdjustment, Subject } from "./composition-floor.js";
3
3
  export declare const FRAME_ROUNDING_TOLERANCE = 2;
4
- /**
5
- * Resolve which trajectory segment (and index within it) a clip-relative source
6
- * frame lands in. A frame within FRAME_ROUNDING_TOLERANCE of a segment edge
7
- * clamps to the nearest edge; ANY larger gap FAILS LOUD (a real coverage/mapping
8
- * bug — a cropIntent gap with no excludedRange, or a bad trim/section mapping —
9
- * must not silently clamp onto the wrong frames).
10
- */
11
4
  export declare function resolveSegmentAt(traj: TrajectoryData, srcFrame: number): {
12
5
  seg: TrajectorySegment;
13
6
  inSegIdx: number;
14
7
  };
15
- /** A playable span of the clip — one JumpCutVideo section. `sourceInFrames` is
16
- * the SOURCE-ABSOLUTE frame (output fps) the span seeks to. */
17
8
  export interface CropSection {
18
9
  sourceInFrames: number;
19
10
  durationInFrames: number;
20
11
  }
21
- /**
22
- * Map an OUTPUT frame to the CLIP-RELATIVE trajectory frame, section-aware. The
23
- * trajectory is clip-relative (frame 0 = the clip's `trim.start`), but a clip
24
- * with `excludedRanges` plays N playable spans, each seeking to a
25
- * SOURCE-ABSOLUTE `sourceInFrames` with the trimmed gaps removed. So output
26
- * frame F does NOT equal trajectory frame F; the section walk bridges the gaps.
27
- */
28
12
  export declare function outputToTrajectoryFrame(sections: CropSection[], trimStartFrames: number, outFrame: number, srcFps: number, fps: number): number;
29
- /** The per-frame crop-transform pieces `sourceRectToOutput` needs — the subset of
30
- * `computeCropTransform`'s output that maps source pixels to output pixels. */
31
13
  export interface CropTransform {
32
14
  tx: number;
33
15
  ty: number;
34
16
  scaledSrcW: number;
35
17
  scaledSrcH: number;
36
18
  }
37
- /**
38
- * Pure crop-transform math. Given the resolved per-frame center + crop params,
39
- * the output dims, and the composition floor's reframe, returns the CSS
40
- * transform (`tx`, `ty`, scaled source dims). `tyNoShift` is the y-translation
41
- * WITHOUT the reframe, exposed so tests can assert magnitude.
42
- */
43
19
  export declare function computeCropTransform(input: {
44
20
  traj: {
45
21
  src_w: number;
@@ -60,13 +36,6 @@ export declare function computeCropTransform(input: {
60
36
  scaledSrcW: number;
61
37
  scaledSrcH: number;
62
38
  };
63
- /**
64
- * Map a SOURCE-normalized rect (`{x,y,w,h}` in [0,1] against source dims) to an
65
- * OUTPUT-normalized rect, applying the per-frame crop — the `crop∘FaceBoxSource`
66
- * the composition floor's `FaceBoxOutput` is defined as. NOT clamped: a face near
67
- * the source edge can map partly off-frame, and that is the truth the floor needs
68
- * (`faceKeepOut` clamps to [0,1] when it builds the keep-out).
69
- */
70
39
  export declare function sourceRectToOutput(src: Rect, t: CropTransform, outW: number, outH: number): Rect;
71
40
  export interface BuildSubjectsOutputArgs {
72
41
  traj: TrajectoryData;
@@ -77,38 +46,12 @@ export interface BuildSubjectsOutputArgs {
77
46
  outH: number;
78
47
  fps: number;
79
48
  }
80
- /**
81
- * Build per-clip `Subject[]` with OUTPUT-space face boxes, accumulated by
82
- * `face_id` across the clip's output frames — the projection loop factored out of
83
- * the render's buildFloorInput so the Director derives IDENTICAL keep-outs. For
84
- * each output frame: section-aware output→trajectory map → resolve segment →
85
- * crop transform → project each source face box to output.
86
- */
87
49
  export declare function buildSubjectsOutput(args: BuildSubjectsOutputArgs): Subject[];
88
- /**
89
- * The face keep-out rect(s) covering a beat window [startFrame, endFrame) in
90
- * OUTPUT coords — for the structure-first graphics solver. Unions the
91
- * speaker-active face keep-outs across the window into ONE bounding rect (so a
92
- * graphic placed clear of it is clear of the face at EVERY frame of the beat).
93
- * Empty when no face is present in the window (e.g. b-roll).
94
- */
95
50
  export declare function faceKeepOutForWindow(subjects: Subject[], startFrame: number, endFrame: number, depthMode?: boolean): Rect[];
96
- /**
97
- * A SOURCE-space subject-silhouette provider: given a CLIP-RELATIVE source frame
98
- * (frame 0 = the clip's trim.start, at src_fps), return the subject's silhouette
99
- * bbox source-normalized [0,1] (`{x,y,w,h}`), or `null` when no subject is present
100
- * that frame. The matte-geometry sidecar's per-frame foreground bbox is today's
101
- * concrete provider (see the director's buildEvalSilhouette); a person-track union
102
- * is a drop-in alternate. DECOUPLED from the crop on purpose: the SILHOUETTE comes
103
- * from here; the CROP comes from `traj` (the render's reframe) — so the box lands
104
- * exactly where the shipped render places the subject.
105
- */
106
51
  export interface SubjectSilhouetteSource {
107
52
  bboxAtSourceFrame: (srcFrame: number) => Rect | null;
108
53
  }
109
54
  export interface BuildSilhouetteKeepOutArgs {
110
- /** The RENDER's reframe trajectory (FACE-derived — the SHIPPED crop). Its
111
- * segments supply the per-frame crop transform; its `subjects` are unused. */
112
55
  traj: TrajectoryData;
113
56
  silhouette: SubjectSilhouetteSource;
114
57
  sections: CropSection[];
@@ -118,23 +61,5 @@ export interface BuildSilhouetteKeepOutArgs {
118
61
  outH: number;
119
62
  fps: number;
120
63
  }
121
- /**
122
- * Per-output-frame OUTPUT-space subject-SILHOUETTE keep-out — the silhouette twin
123
- * of buildSubjectsOutput. For each output frame: section-aware output→trajectory
124
- * map → resolve segment → crop transform (the SAME primitives buildSubjectsOutput
125
- * uses for the FACE box) → project the source silhouette bbox supplied by the
126
- * provider. `null` where the provider has no subject that frame. Unlike the face
127
- * path this applies NO face-relative padding — the silhouette already includes
128
- * hair/head/torso, so the projected box IS the keep-out. Off-crop overflow is
129
- * clamped into the visible output frame [0,1] (the keep-out only concerns what is
130
- * on screen).
131
- */
132
64
  export declare function buildSilhouetteKeepOutOutput(args: BuildSilhouetteKeepOutArgs): (Rect | null)[];
133
- /**
134
- * Union the projected silhouette keep-out across a beat window [startFrame,
135
- * endFrame) into ONE OUTPUT-space rect (so a graphic clear of it is clear of the
136
- * subject at EVERY frame of the window) — the silhouette twin of
137
- * faceKeepOutForWindow. Empty when no frame in the window carries a silhouette
138
- * (degenerate zero-area rects are dropped).
139
- */
140
65
  export declare function silhouetteKeepOutForWindow(series: (Rect | null)[], startFrame: number, endFrame: number): Rect[];
@@ -3,5 +3,7 @@ export * from "./cardTokens.js";
3
3
  export * from "./composition-floor.js";
4
4
  export * from "./safe-zones.js";
5
5
  export * from "./behind-placement.js";
6
+ export * from "./behind-readiness.js";
7
+ export * from "./reframe-readiness.js";
6
8
  export * from "./occlusion-budget.js";
7
9
  export * from "./cropProjection.js";
@@ -1,61 +1,24 @@
1
- /**
2
- * Occlusion budget for behind-subject text (launch-grade text-behind-subject,
3
- * Phase 2). Pure decisions over matte geometry sidecar frames: estimate how much
4
- * of a text rect the subject covers, then verdict the window — too little bite
5
- * reads as no depth at all; too much swallows the line; a covered TOP half eats
6
- * the letter tops that carry legibility. The caller (a director activity) maps
7
- * timeline→source frames, samples K frames, and degrades the overlay to front
8
- * on any non-pass verdict — the overlay is never dropped.
9
- */
10
1
  import type { MatteGeometryFrame } from "./behind-placement.js";
11
- /** Budget thresholds (frame-fraction coverage of the TEXT rect). Calibration
12
- * defaults — Phase-7 fixtures tune them, the deploy-test is the truth.
13
- * `minBite`: below this at EVERY sample the silhouette never bites the line —
14
- * the depth effect is invisible, so don't pay its cost. `maxCoverage`: above
15
- * this at ANY sample the body swallows the line. `maxTopHalf`: text-bearing
16
- * overlays lose legibility when letter TOPS go under — cap the upper half. */
17
2
  export declare const BUDGET: {
18
3
  readonly minBite: 0.15;
19
4
  readonly maxCoverage: 0.65;
20
5
  readonly maxTopHalf: 0.35;
21
6
  };
22
- /** Behind hero text extent heuristic (calibration constants; Phase-7 fixtures tune). */
23
7
  export declare const BEHIND_TEXT_EXTENT: {
24
8
  readonly heightFrac: 0.18;
25
9
  };
26
- /** Coverage at one sampled geometry frame: `total` over the full text rect,
27
- * `topHalf` over its upper half. Both ∈ [0,1]. */
28
10
  export interface CoverageSample {
29
11
  f: number;
30
12
  total: number;
31
13
  topHalf: number;
32
14
  }
33
15
  export type BudgetVerdict = "pass" | "no-depth" | "swallow" | "tops-occluded";
34
- /**
35
- * Verdict a window of coverage samples against the budget. Samples are checked
36
- * in order; the FIRST violating sample decides (deterministic): a text-bearing
37
- * overlay whose top half exceeds `maxTopHalf` → "tops-occluded"; any sample over
38
- * `maxCoverage` → "swallow". If no sample violates but the maximum total never
39
- * reaches `minBite` → "no-depth" (so is an empty window). Else "pass".
40
- * `worstFrame` is the violating sample's frame for the two per-sample verdicts.
41
- */
42
16
  export declare function evaluateOcclusionBudget(samples: CoverageSample[], opts?: {
43
17
  textBearing: boolean;
44
18
  }): {
45
19
  verdict: BudgetVerdict;
46
20
  worstFrame?: number;
47
21
  };
48
- /**
49
- * Estimate matte coverage of a text rect from the sidecar's marginal profiles.
50
- * APPROXIMATION (documented): overlap(textRect, bbox) area fraction, weighted by the
51
- * mean col-bucket coverage across the intersected x-span (cols[i] = fraction of that
52
- * column covered by the subject). topHalf uses the same estimate restricted to the
53
- * text rect's upper half via the rows marginal weighting. Marginals can't give exact
54
- * 2-D intersection — constants are calibrated against fixtures, and the deploy-test
55
- * is the truth.
56
- *
57
- * All rects source-normalized [0,1]. A null bbox (no subject) → {0, 0}.
58
- */
59
22
  export declare function estimateCoverage(textRect: {
60
23
  x: number;
61
24
  y: number;
@@ -0,0 +1,49 @@
1
+ export interface SourceWindowLike {
2
+ startSec: number;
3
+ endSec: number;
4
+ detector?: "face" | "person";
5
+ }
6
+ export interface SubjectTrackEntryLike {
7
+ trackR2Key?: string;
8
+ trackUrl?: string;
9
+ detectorVersion?: string;
10
+ window?: {
11
+ startSec: number;
12
+ endSec: number;
13
+ };
14
+ faces?: Array<{
15
+ faceId: string;
16
+ bbox: {
17
+ x: number;
18
+ y: number;
19
+ width: number;
20
+ height: number;
21
+ };
22
+ speakingShare?: number;
23
+ }>;
24
+ }
25
+ export declare function sourceWindowKey(window: SourceWindowLike): Promise<string>;
26
+ export interface ReframeTarget {
27
+ clipId: string;
28
+ mediaId: string;
29
+ window: {
30
+ startSec: number;
31
+ endSec: number;
32
+ };
33
+ segments: unknown[];
34
+ }
35
+ export declare function reframeNeedsDetection(segments: unknown[]): boolean;
36
+ export declare function reframeTargets(composition: unknown): ReframeTarget[];
37
+ export type ReframeReadiness = {
38
+ state: "geometric";
39
+ } | {
40
+ state: "track-ready";
41
+ entry: SubjectTrackEntryLike;
42
+ trackUrl: string;
43
+ } | {
44
+ state: "track-unfetchable";
45
+ entry: SubjectTrackEntryLike;
46
+ } | {
47
+ state: "no-track";
48
+ };
49
+ export declare function reframeReadinessForTarget(target: ReframeTarget, subjectTracks: Record<string, SubjectTrackEntryLike> | undefined): Promise<ReframeReadiness>;
@@ -1,38 +1,9 @@
1
- /**
2
- * Destination safe-zone registry — the platform-UI + broadcast keep-outs the
3
- * composition floor carves out of the output rect before placing any element
4
- * (spec §9). Fractions of the OUTPUT rect (origin top-left, y-down, [0,1]); one
5
- * math path for every aspect because the coordinates are already normalized to
6
- * the destination frame.
7
- *
8
- * Convention-grounded, NOT research-grounded: platform chrome (TikTok's right
9
- * action rail + bottom username/caption strip, Reels/Shorts variants) is
10
- * industry convention, not something the layout/saliency papers model. Keep this
11
- * a plain data table so it stays legible and versionable as platforms change
12
- * their chrome.
13
- *
14
- * Pure data + one lookup. No I/O. Same input → same output.
15
- */
16
1
  import type { Rect } from "./composition-floor.js";
17
- /** Bump on ANY change to a profile rect or the broadcast defaults below. The
18
- * render consumer embeds this into renderCacheKey (spec §15) so a profile edit
19
- * invalidates cached renders transitively, the way BAKE_VERSION already does —
20
- * never a remembered manual bump. */
21
2
  export declare const SAFE_ZONE_PROFILE_VERSION = "safezones-v2-2026.06.05";
22
3
  export interface SafeZoneProfile {
23
- /** Platform-UI rects the floor treats as hard keep-outs (never place text/graphics under them). */
24
4
  exclusions: Rect[];
25
- /** Broadcast title-safe: text should stay inside this inset. */
26
5
  titleSafe: Rect;
27
- /** Broadcast action-safe: critical action inside this (slightly larger) inset. */
28
6
  actionSafe: Rect;
29
7
  }
30
- /** Normalize a platform name to a PROFILES key (lowercased, aliased). */
31
8
  export declare function normalizePlatform(platform: string): string;
32
- /**
33
- * Resolve the safe-zone profile for a destination. Unknown platform (or an
34
- * aspect a known platform has no profile for) → broadcast title/action-safe only
35
- * (no platform exclusions) so the floor degrades to a correct, conservative
36
- * result rather than throwing.
37
- */
38
9
  export declare function lookupSafeZones(platform: string, aspect: string): SafeZoneProfile;
@@ -1,29 +1,3 @@
1
- /**
2
- * Aspect-loss advisory: a source whose shape disagrees with the output frame,
3
- * placed with no authored camera.
4
- *
5
- * A `cover` fill scales the source until it covers the frame and throws the
6
- * overflow away, centred. For a 3840×5760 portrait photo in a 16:9 frame that
7
- * discards ~62% of the image about the middle — reliably decapitating anyone in
8
- * it. In the 2026-08-05 toddler-parks session 15 of 68 imported candidates were
9
- * portrait, every one placed into 16:9 with no crop intent, and nothing said a
10
- * word at any point in the pipeline.
11
- *
12
- * Note this is WORSE for stills than the `fit` field suggests: `fit` is not
13
- * threaded to the image path at all (MainComposition routes `kind:'image'` to
14
- * StillCrop, which has no `fit` prop), so an image is always cropped by the
15
- * derived still trajectory — whose faceless default centre is a hardcoded
16
- * [0.5, 0.5]. Declaring `fit:"contain"` does not avoid this; authoring a
17
- * `reframe` (or a `kenBurns`) does.
18
- *
19
- * ADVISORY only — same `(input) => string[]` contract as `detectNoAudioTrack`.
20
- * Cropping to fill is a legitimate choice; this only says nobody made it.
21
- */
22
- /**
23
- * Fraction of the source that survives a `cover` fill. Purely a function of the
24
- * two aspect ratios: the narrower dimension is fully used, the wider one is
25
- * trimmed to match.
26
- */
27
1
  export declare function coverVisibleFraction(source: {
28
2
  width: number;
29
3
  height: number;
@@ -31,15 +5,18 @@ export declare function coverVisibleFraction(source: {
31
5
  width: number;
32
6
  height: number;
33
7
  }): number;
34
- /**
35
- * Advisory for media placed into a materially different frame shape with no
36
- * authored camera.
37
- *
38
- * `dimensionsByMediaId` is expected to be partial: image dimensions are
39
- * populated LAZILY (they are not known at upload /complete), so a media with no
40
- * width/height is SKIPPED rather than guessed at — an advisory that fires on
41
- * missing metadata would train agents to ignore the channel.
42
- */
8
+ export interface AspectCropLoss {
9
+ clipId?: string;
10
+ mediaId: string;
11
+ lostPct: number;
12
+ }
13
+ export declare function findAspectCropLosses(composition: unknown, dimensionsByMediaId: Record<string, {
14
+ width?: number;
15
+ height?: number;
16
+ } | undefined>, target: {
17
+ width: number;
18
+ height: number;
19
+ }): AspectCropLoss[];
43
20
  export declare function detectAspectCropLoss(composition: unknown, dimensionsByMediaId: Record<string, {
44
21
  width?: number;
45
22
  height?: number;