motionrender 0.0.0-stage → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (203) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +61 -2
  3. package/blocks/badge.json +68 -0
  4. package/blocks/big-stat.json +240 -0
  5. package/blocks/cta-end.json +283 -0
  6. package/blocks/feature-list.json +286 -0
  7. package/blocks/footage.json +43 -0
  8. package/blocks/fx-background-swap.json +170 -0
  9. package/blocks/fx-before-after.json +212 -0
  10. package/blocks/fx-captions.json +34 -0
  11. package/blocks/fx-chat.json +368 -0
  12. package/blocks/fx-checklist.json +609 -0
  13. package/blocks/fx-clone-wall.json +181 -0
  14. package/blocks/fx-color-pop.json +92 -0
  15. package/blocks/fx-command-bridge.json +358 -0
  16. package/blocks/fx-counter-hero.json +206 -0
  17. package/blocks/fx-cta-card.json +337 -0
  18. package/blocks/fx-day-to-night.json +174 -0
  19. package/blocks/fx-duo-title.json +245 -0
  20. package/blocks/fx-duotone.json +95 -0
  21. package/blocks/fx-extruded-title.json +309 -0
  22. package/blocks/fx-gallery.json +239 -0
  23. package/blocks/fx-glass-cards.json +921 -0
  24. package/blocks/fx-glitch-title.json +373 -0
  25. package/blocks/fx-grade-look.json +91 -0
  26. package/blocks/fx-highlighter.json +53 -0
  27. package/blocks/fx-icon-orbit.json +2694 -0
  28. package/blocks/fx-lens-flare.json +325 -0
  29. package/blocks/fx-letterbox.json +105 -0
  30. package/blocks/fx-light-leak.json +140 -0
  31. package/blocks/fx-map-journey.json +443 -0
  32. package/blocks/fx-neon-outline.json +743 -0
  33. package/blocks/fx-notifications.json +456 -0
  34. package/blocks/fx-progress-ring.json +143 -0
  35. package/blocks/fx-pull-out.json +68 -0
  36. package/blocks/fx-punch-in.json +81 -0
  37. package/blocks/fx-rgb-flash.json +166 -0
  38. package/blocks/fx-shake-hit.json +120 -0
  39. package/blocks/fx-split-reveal.json +110 -0
  40. package/blocks/fx-spotlight.json +1383 -0
  41. package/blocks/fx-stats-split.json +500 -0
  42. package/blocks/fx-step-tracker.json +528 -0
  43. package/blocks/fx-sticker-freeze.json +584 -0
  44. package/blocks/fx-strike-rewrite.json +79 -0
  45. package/blocks/fx-ticker.json +179 -0
  46. package/blocks/fx-timeline.json +1287 -0
  47. package/blocks/fx-tracked-label.json +167 -0
  48. package/blocks/fx-typewriter-quote.json +164 -0
  49. package/blocks/handle.json +43 -0
  50. package/blocks/icon-row.json +404 -0
  51. package/blocks/image-caption.json +248 -0
  52. package/blocks/lower-third.json +106 -0
  53. package/blocks/phone-mockup.json +459 -0
  54. package/blocks/progress-bar.json +51 -0
  55. package/blocks/quote.json +347 -0
  56. package/blocks/section-title.json +240 -0
  57. package/blocks/split-screen.json +283 -0
  58. package/blocks/stat-grid.json +315 -0
  59. package/blocks/steps.json +266 -0
  60. package/blocks/title-hero.json +287 -0
  61. package/dist/builder.d.ts +1 -0
  62. package/dist/builder.js +169 -0
  63. package/dist/cli.js +9301 -0
  64. package/dist/fonts/LICENSE-Inter.txt +93 -0
  65. package/dist/fonts/inter-cyrillic-ext-opsz-italic.woff2 +0 -0
  66. package/dist/fonts/inter-cyrillic-ext-opsz-normal.woff2 +0 -0
  67. package/dist/fonts/inter-cyrillic-opsz-italic.woff2 +0 -0
  68. package/dist/fonts/inter-cyrillic-opsz-normal.woff2 +0 -0
  69. package/dist/fonts/inter-greek-ext-opsz-italic.woff2 +0 -0
  70. package/dist/fonts/inter-greek-ext-opsz-normal.woff2 +0 -0
  71. package/dist/fonts/inter-greek-opsz-italic.woff2 +0 -0
  72. package/dist/fonts/inter-greek-opsz-normal.woff2 +0 -0
  73. package/dist/fonts/inter-latin-ext-opsz-italic.woff2 +0 -0
  74. package/dist/fonts/inter-latin-ext-opsz-normal.woff2 +0 -0
  75. package/dist/fonts/inter-latin-opsz-italic.woff2 +0 -0
  76. package/dist/fonts/inter-latin-opsz-normal.woff2 +0 -0
  77. package/dist/fonts/inter-vietnamese-opsz-italic.woff2 +0 -0
  78. package/dist/fonts/inter-vietnamese-opsz-normal.woff2 +0 -0
  79. package/dist/index.d.ts +2 -0
  80. package/dist/index.js +2330 -0
  81. package/dist/player.d.ts +1 -0
  82. package/dist/player.js +80 -0
  83. package/dist/react.d.ts +1 -0
  84. package/dist/react.js +140 -0
  85. package/dist/runtime/canvas-runtime.js +261 -0
  86. package/dist/runtime/lottie_light_canvas.min.js +1 -0
  87. package/dist/runtime/text-layout.js +50 -0
  88. package/dist/sfx/click.wav +0 -0
  89. package/dist/sfx/ding.wav +0 -0
  90. package/dist/sfx/pop.wav +0 -0
  91. package/dist/sfx/riser.wav +0 -0
  92. package/dist/sfx/thump.wav +0 -0
  93. package/dist/sfx/tick.wav +0 -0
  94. package/dist/sfx/whoosh.wav +0 -0
  95. package/dist/types/packages/ai/src/assets.d.ts +26 -0
  96. package/dist/types/packages/ai/src/batch.d.ts +19 -0
  97. package/dist/types/packages/ai/src/compose.d.ts +34 -0
  98. package/dist/types/packages/ai/src/history.d.ts +37 -0
  99. package/dist/types/packages/ai/src/image.d.ts +19 -0
  100. package/dist/types/packages/ai/src/index.d.ts +13 -0
  101. package/dist/types/packages/ai/src/json.d.ts +2 -0
  102. package/dist/types/packages/ai/src/narrate.d.ts +63 -0
  103. package/dist/types/packages/ai/src/patch.d.ts +15 -0
  104. package/dist/types/packages/ai/src/project.d.ts +27 -0
  105. package/dist/types/packages/ai/src/prompt.d.ts +30 -0
  106. package/dist/types/packages/ai/src/providers.d.ts +109 -0
  107. package/dist/types/packages/ai/src/template.d.ts +80 -0
  108. package/dist/types/packages/ai/src/voiceover.d.ts +49 -0
  109. package/dist/types/packages/animation/src/index.d.ts +27 -0
  110. package/dist/types/packages/assets/src/cache.d.ts +26 -0
  111. package/dist/types/packages/assets/src/index.d.ts +8 -0
  112. package/dist/types/packages/builder/src/index.d.ts +270 -0
  113. package/dist/types/packages/cli/src/ai-studio-page.d.ts +1 -0
  114. package/dist/types/packages/cli/src/ai-studio.d.ts +35 -0
  115. package/dist/types/packages/cli/src/ai.d.ts +3 -0
  116. package/dist/types/packages/cli/src/args.d.ts +9 -0
  117. package/dist/types/packages/cli/src/blocks-cli.d.ts +3 -0
  118. package/dist/types/packages/cli/src/blocks.d.ts +50 -0
  119. package/dist/types/packages/cli/src/build.d.ts +1 -0
  120. package/dist/types/packages/cli/src/dev-page.d.ts +1 -0
  121. package/dist/types/packages/cli/src/dev.d.ts +13 -0
  122. package/dist/types/packages/cli/src/index.d.ts +2 -0
  123. package/dist/types/packages/cli/src/init.d.ts +10 -0
  124. package/dist/types/packages/cli/src/serve.d.ts +2 -0
  125. package/dist/types/packages/cli/src/studio.d.ts +36 -0
  126. package/dist/types/packages/cli/src/templates.d.ts +63 -0
  127. package/dist/types/packages/cli/src/thumbnail.d.ts +20 -0
  128. package/dist/types/packages/cli/src/track.d.ts +35 -0
  129. package/dist/types/packages/cli/src/worker.d.ts +13 -0
  130. package/dist/types/packages/contracts/src/index.d.ts +377 -0
  131. package/dist/types/packages/core/src/audio.d.ts +14 -0
  132. package/dist/types/packages/core/src/distributed.d.ts +50 -0
  133. package/dist/types/packages/core/src/index.d.ts +63 -0
  134. package/dist/types/packages/core/src/media.d.ts +11 -0
  135. package/dist/types/packages/core/src/review.d.ts +29 -0
  136. package/dist/types/packages/ffmpeg/src/index.d.ts +68 -0
  137. package/dist/types/packages/graphics/src/fonts.d.ts +3 -0
  138. package/dist/types/packages/graphics/src/index.d.ts +121 -0
  139. package/dist/types/packages/graphics/src/runtime.d.ts +10 -0
  140. package/dist/types/packages/jobs/src/env.d.ts +78 -0
  141. package/dist/types/packages/jobs/src/handlers.d.ts +17 -0
  142. package/dist/types/packages/jobs/src/index.d.ts +5 -0
  143. package/dist/types/packages/jobs/src/input.d.ts +18 -0
  144. package/dist/types/packages/jobs/src/queue.d.ts +70 -0
  145. package/dist/types/packages/jobs/src/redis.d.ts +42 -0
  146. package/dist/types/packages/player/src/bundle.d.ts +4 -0
  147. package/dist/types/packages/player/src/canvas-runtime.d.ts +11 -0
  148. package/dist/types/packages/player/src/index.d.ts +29 -0
  149. package/dist/types/packages/react/src/index.d.ts +76 -0
  150. package/dist/types/packages/renderer/src/index.d.ts +35 -0
  151. package/dist/types/packages/renderer/src/pool.d.ts +7 -0
  152. package/dist/types/packages/renderer/src/video.d.ts +9 -0
  153. package/dist/types/packages/schema/src/captions.d.ts +24 -0
  154. package/dist/types/packages/schema/src/expression.d.ts +1 -0
  155. package/dist/types/packages/schema/src/index.d.ts +1213 -0
  156. package/dist/types/packages/schema/src/variables.d.ts +115 -0
  157. package/dist/types/packages/storage/src/index.d.ts +78 -0
  158. package/dist/types/packages/timeline/src/index.d.ts +104 -0
  159. package/package.json +78 -4
  160. package/skills/ove/SKILL.md +356 -0
  161. package/skills/ove-ai-compose/SKILL.md +36 -0
  162. package/skills/ove-batch-videos/SKILL.md +23 -0
  163. package/skills/ove-code-video/SKILL.md +68 -0
  164. package/skills/ove-effects/SKILL.md +65 -0
  165. package/skills/ove-make-reel/SKILL.md +30 -0
  166. package/skills/ove-voiceover-captions/SKILL.md +31 -0
  167. package/studio/assets/index-CzOvWv9w.css +1 -0
  168. package/studio/assets/index-J_fvKgng.js +11 -0
  169. package/studio/index.html +16 -0
  170. package/templates/case-study/composition.json +358 -0
  171. package/templates/case-study/template.json +8 -0
  172. package/templates/event-invite/composition.json +245 -0
  173. package/templates/event-invite/template.json +8 -0
  174. package/templates/explainer-square/composition.json +1335 -0
  175. package/templates/explainer-square/template.json +13 -0
  176. package/templates/keynote-wide/composition.json +1458 -0
  177. package/templates/keynote-wide/template.json +13 -0
  178. package/templates/launch-wide/composition.json +1306 -0
  179. package/templates/launch-wide/template.json +13 -0
  180. package/templates/product-card/composition.json +196 -0
  181. package/templates/product-card/data.example.json +5 -0
  182. package/templates/product-card/template.json +8 -0
  183. package/templates/product-wide/composition.json +1609 -0
  184. package/templates/product-wide/template.json +14 -0
  185. package/templates/quote-card/composition.json +123 -0
  186. package/templates/quote-card/template.json +8 -0
  187. package/templates/sale-promo/composition.json +290 -0
  188. package/templates/sale-promo/template.json +8 -0
  189. package/templates/showcase-tall/composition.json +1646 -0
  190. package/templates/showcase-tall/template.json +14 -0
  191. package/templates/slideshow/composition.json +167 -0
  192. package/templates/slideshow/template.json +8 -0
  193. package/templates/social-reel/composition.json +252 -0
  194. package/templates/social-reel/template.json +8 -0
  195. package/templates/starter/assets/logo.svg +4 -0
  196. package/templates/starter/composition.json +84 -0
  197. package/templates/story-tall/composition.json +1379 -0
  198. package/templates/story-tall/template.json +13 -0
  199. package/themes/espresso.json +15 -0
  200. package/themes/midnight.json +15 -0
  201. package/themes/neon.json +15 -0
  202. package/themes/paper.json +15 -0
  203. package/themes/signal.json +15 -0
@@ -0,0 +1,1213 @@
1
+ import { z } from 'zod';
2
+ export * from './variables.js';
3
+ export * from './captions.js';
4
+ export declare const easingSchema: z.ZodUnion<readonly [z.ZodEnum<{
5
+ pop: "pop";
6
+ linear: "linear";
7
+ easeIn: "easeIn";
8
+ easeOut: "easeOut";
9
+ easeInOut: "easeInOut";
10
+ easeInCubic: "easeInCubic";
11
+ easeOutCubic: "easeOutCubic";
12
+ easeInOutCubic: "easeInOutCubic";
13
+ easeInQuart: "easeInQuart";
14
+ easeOutQuart: "easeOutQuart";
15
+ easeInOutQuart: "easeInOutQuart";
16
+ easeInExpo: "easeInExpo";
17
+ easeOutExpo: "easeOutExpo";
18
+ easeInOutExpo: "easeInOutExpo";
19
+ easeInBack: "easeInBack";
20
+ easeOutBack: "easeOutBack";
21
+ spring: "spring";
22
+ hold: "hold";
23
+ land: "land";
24
+ snap: "snap";
25
+ glide: "glide";
26
+ move: "move";
27
+ exit: "exit";
28
+ drift: "drift";
29
+ }>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>;
30
+ export declare const colorProperties: readonly ["fill", "color", "stroke"];
31
+ export declare const cssVariableName: RegExp;
32
+ declare const animation: z.ZodObject<{
33
+ property: z.ZodUnion<readonly [z.ZodEnum<{
34
+ fill: "fill";
35
+ color: "color";
36
+ stroke: "stroke";
37
+ x: "x";
38
+ y: "y";
39
+ opacity: "opacity";
40
+ rotation: "rotation";
41
+ scale: "scale";
42
+ fontSize: "fontSize";
43
+ width: "width";
44
+ height: "height";
45
+ radius: "radius";
46
+ letterSpacing: "letterSpacing";
47
+ strokeWidth: "strokeWidth";
48
+ trimStart: "trimStart";
49
+ trimEnd: "trimEnd";
50
+ blur: "blur";
51
+ volume: "volume";
52
+ d: "d";
53
+ }>, z.ZodString]>;
54
+ keyframes: z.ZodArray<z.ZodObject<{
55
+ frame: z.ZodNumber;
56
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>;
57
+ easing: z.ZodOptional<z.ZodUnion<readonly [z.ZodEnum<{
58
+ pop: "pop";
59
+ linear: "linear";
60
+ easeIn: "easeIn";
61
+ easeOut: "easeOut";
62
+ easeInOut: "easeInOut";
63
+ easeInCubic: "easeInCubic";
64
+ easeOutCubic: "easeOutCubic";
65
+ easeInOutCubic: "easeInOutCubic";
66
+ easeInQuart: "easeInQuart";
67
+ easeOutQuart: "easeOutQuart";
68
+ easeInOutQuart: "easeInOutQuart";
69
+ easeInExpo: "easeInExpo";
70
+ easeOutExpo: "easeOutExpo";
71
+ easeInOutExpo: "easeInOutExpo";
72
+ easeInBack: "easeInBack";
73
+ easeOutBack: "easeOutBack";
74
+ spring: "spring";
75
+ hold: "hold";
76
+ land: "land";
77
+ snap: "snap";
78
+ glide: "glide";
79
+ move: "move";
80
+ exit: "exit";
81
+ drift: "drift";
82
+ }>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>>;
83
+ }, z.core.$strip>>;
84
+ repeat: z.ZodOptional<z.ZodNumber>;
85
+ reverse: z.ZodOptional<z.ZodBoolean>;
86
+ }, z.core.$strip>;
87
+ export declare const gradientSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
88
+ type: z.ZodLiteral<"linear">;
89
+ from: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
90
+ to: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
91
+ stops: z.ZodArray<z.ZodObject<{
92
+ offset: z.ZodNumber;
93
+ color: z.ZodString;
94
+ }, z.core.$strip>>;
95
+ }, z.core.$strip>, z.ZodObject<{
96
+ type: z.ZodLiteral<"radial">;
97
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
98
+ radius: z.ZodNumber;
99
+ stops: z.ZodArray<z.ZodObject<{
100
+ offset: z.ZodNumber;
101
+ color: z.ZodString;
102
+ }, z.core.$strip>>;
103
+ }, z.core.$strip>], "type">;
104
+ export declare const duckSchema: z.ZodObject<{
105
+ amount: z.ZodDefault<z.ZodNumber>;
106
+ attackFrames: z.ZodDefault<z.ZodNumber>;
107
+ releaseFrames: z.ZodDefault<z.ZodNumber>;
108
+ by: z.ZodOptional<z.ZodArray<z.ZodString>>;
109
+ }, z.core.$strip>;
110
+ export declare const splitPresets: readonly ["rise", "fade", "pop", "blur", "slide", "drop", "typewriter"];
111
+ export declare const unitProperties: readonly ["x", "y", "opacity", "scale", "rotation", "blur", "color"];
112
+ export declare const splitSchema: z.ZodObject<{
113
+ by: z.ZodDefault<z.ZodEnum<{
114
+ words: "words";
115
+ letters: "letters";
116
+ lines: "lines";
117
+ }>>;
118
+ stagger: z.ZodDefault<z.ZodNumber>;
119
+ order: z.ZodDefault<z.ZodEnum<{
120
+ reverse: "reverse";
121
+ center: "center";
122
+ forward: "forward";
123
+ edges: "edges";
124
+ random: "random";
125
+ }>>;
126
+ preset: z.ZodDefault<z.ZodEnum<{
127
+ pop: "pop";
128
+ blur: "blur";
129
+ rise: "rise";
130
+ fade: "fade";
131
+ slide: "slide";
132
+ drop: "drop";
133
+ typewriter: "typewriter";
134
+ }>>;
135
+ duration: z.ZodDefault<z.ZodNumber>;
136
+ animations: z.ZodOptional<z.ZodArray<z.ZodObject<{
137
+ property: z.ZodUnion<readonly [z.ZodEnum<{
138
+ fill: "fill";
139
+ color: "color";
140
+ stroke: "stroke";
141
+ x: "x";
142
+ y: "y";
143
+ opacity: "opacity";
144
+ rotation: "rotation";
145
+ scale: "scale";
146
+ fontSize: "fontSize";
147
+ width: "width";
148
+ height: "height";
149
+ radius: "radius";
150
+ letterSpacing: "letterSpacing";
151
+ strokeWidth: "strokeWidth";
152
+ trimStart: "trimStart";
153
+ trimEnd: "trimEnd";
154
+ blur: "blur";
155
+ volume: "volume";
156
+ d: "d";
157
+ }>, z.ZodString]>;
158
+ keyframes: z.ZodArray<z.ZodObject<{
159
+ frame: z.ZodNumber;
160
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>;
161
+ easing: z.ZodOptional<z.ZodUnion<readonly [z.ZodEnum<{
162
+ pop: "pop";
163
+ linear: "linear";
164
+ easeIn: "easeIn";
165
+ easeOut: "easeOut";
166
+ easeInOut: "easeInOut";
167
+ easeInCubic: "easeInCubic";
168
+ easeOutCubic: "easeOutCubic";
169
+ easeInOutCubic: "easeInOutCubic";
170
+ easeInQuart: "easeInQuart";
171
+ easeOutQuart: "easeOutQuart";
172
+ easeInOutQuart: "easeInOutQuart";
173
+ easeInExpo: "easeInExpo";
174
+ easeOutExpo: "easeOutExpo";
175
+ easeInOutExpo: "easeInOutExpo";
176
+ easeInBack: "easeInBack";
177
+ easeOutBack: "easeOutBack";
178
+ spring: "spring";
179
+ hold: "hold";
180
+ land: "land";
181
+ snap: "snap";
182
+ glide: "glide";
183
+ move: "move";
184
+ exit: "exit";
185
+ drift: "drift";
186
+ }>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>>;
187
+ }, z.core.$strip>>;
188
+ repeat: z.ZodOptional<z.ZodNumber>;
189
+ reverse: z.ZodOptional<z.ZodBoolean>;
190
+ }, z.core.$strip>>>;
191
+ }, z.core.$strip>;
192
+ export declare const spanSchema: z.ZodObject<{
193
+ text: z.ZodString;
194
+ color: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
195
+ type: z.ZodLiteral<"linear">;
196
+ from: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
197
+ to: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
198
+ stops: z.ZodArray<z.ZodObject<{
199
+ offset: z.ZodNumber;
200
+ color: z.ZodString;
201
+ }, z.core.$strip>>;
202
+ }, z.core.$strip>, z.ZodObject<{
203
+ type: z.ZodLiteral<"radial">;
204
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
205
+ radius: z.ZodNumber;
206
+ stops: z.ZodArray<z.ZodObject<{
207
+ offset: z.ZodNumber;
208
+ color: z.ZodString;
209
+ }, z.core.$strip>>;
210
+ }, z.core.$strip>], "type">]>>;
211
+ fontSize: z.ZodOptional<z.ZodNumber>;
212
+ fontWeight: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodEnum<{
213
+ normal: "normal";
214
+ bold: "bold";
215
+ }>]>>;
216
+ fontStyle: z.ZodOptional<z.ZodEnum<{
217
+ normal: "normal";
218
+ italic: "italic";
219
+ }>>;
220
+ fontFamily: z.ZodOptional<z.ZodString>;
221
+ background: z.ZodOptional<z.ZodString>;
222
+ underline: z.ZodOptional<z.ZodBoolean>;
223
+ }, z.core.$strip>;
224
+ export declare const blendModes: readonly ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"];
225
+ export declare const sfxNames: readonly ["click", "tick", "pop", "whoosh", "thump", "ding", "riser"];
226
+ export declare const isBuiltinSound: (src: string) => boolean;
227
+ export declare const builtinSoundName: (src: string) => string;
228
+ export declare const gradeLooks: readonly ["warm", "cool", "cinematic", "teal-orange", "noir", "vivid", "faded"];
229
+ export declare const gradeSchema: z.ZodObject<{
230
+ look: z.ZodOptional<z.ZodEnum<{
231
+ warm: "warm";
232
+ cool: "cool";
233
+ cinematic: "cinematic";
234
+ "teal-orange": "teal-orange";
235
+ noir: "noir";
236
+ vivid: "vivid";
237
+ faded: "faded";
238
+ }>>;
239
+ exposure: z.ZodOptional<z.ZodNumber>;
240
+ contrast: z.ZodOptional<z.ZodNumber>;
241
+ saturation: z.ZodOptional<z.ZodNumber>;
242
+ temperature: z.ZodOptional<z.ZodNumber>;
243
+ tint: z.ZodOptional<z.ZodNumber>;
244
+ shadows: z.ZodOptional<z.ZodNumber>;
245
+ highlights: z.ZodOptional<z.ZodNumber>;
246
+ fade: z.ZodOptional<z.ZodNumber>;
247
+ }, z.core.$strip>;
248
+ export declare const outputFormats: readonly ["mp4", "webm", "mov", "gif", "png"];
249
+ export declare const exportSchema: z.ZodObject<{
250
+ format: z.ZodDefault<z.ZodEnum<{
251
+ mp4: "mp4";
252
+ webm: "webm";
253
+ mov: "mov";
254
+ gif: "gif";
255
+ png: "png";
256
+ }>>;
257
+ codec: z.ZodDefault<z.ZodEnum<{
258
+ h264: "h264";
259
+ h265: "h265";
260
+ }>>;
261
+ transparent: z.ZodDefault<z.ZodBoolean>;
262
+ audio: z.ZodOptional<z.ZodString>;
263
+ audioVolume: z.ZodDefault<z.ZodNumber>;
264
+ duck: z.ZodOptional<z.ZodObject<{
265
+ amount: z.ZodDefault<z.ZodNumber>;
266
+ attackFrames: z.ZodDefault<z.ZodNumber>;
267
+ releaseFrames: z.ZodDefault<z.ZodNumber>;
268
+ by: z.ZodOptional<z.ZodArray<z.ZodString>>;
269
+ }, z.core.$strip>>;
270
+ loudness: z.ZodOptional<z.ZodNumber>;
271
+ crf: z.ZodOptional<z.ZodNumber>;
272
+ bitrate: z.ZodOptional<z.ZodString>;
273
+ audioBitrate: z.ZodOptional<z.ZodString>;
274
+ scale: z.ZodDefault<z.ZodNumber>;
275
+ }, z.core.$strip>;
276
+ export declare const transitionSchema: z.ZodObject<{
277
+ type: z.ZodEnum<{
278
+ push: "push";
279
+ blur: "blur";
280
+ fade: "fade";
281
+ slide: "slide";
282
+ wipe: "wipe";
283
+ zoom: "zoom";
284
+ iris: "iris";
285
+ dip: "dip";
286
+ }>;
287
+ durationFrames: z.ZodNumber;
288
+ direction: z.ZodDefault<z.ZodEnum<{
289
+ left: "left";
290
+ right: "right";
291
+ top: "top";
292
+ bottom: "bottom";
293
+ }>>;
294
+ color: z.ZodDefault<z.ZodString>;
295
+ x: z.ZodOptional<z.ZodNumber>;
296
+ y: z.ZodOptional<z.ZodNumber>;
297
+ easing: z.ZodDefault<z.ZodUnion<readonly [z.ZodEnum<{
298
+ pop: "pop";
299
+ linear: "linear";
300
+ easeIn: "easeIn";
301
+ easeOut: "easeOut";
302
+ easeInOut: "easeInOut";
303
+ easeInCubic: "easeInCubic";
304
+ easeOutCubic: "easeOutCubic";
305
+ easeInOutCubic: "easeInOutCubic";
306
+ easeInQuart: "easeInQuart";
307
+ easeOutQuart: "easeOutQuart";
308
+ easeInOutQuart: "easeInOutQuart";
309
+ easeInExpo: "easeInExpo";
310
+ easeOutExpo: "easeOutExpo";
311
+ easeInOutExpo: "easeInOutExpo";
312
+ easeInBack: "easeInBack";
313
+ easeOutBack: "easeOutBack";
314
+ spring: "spring";
315
+ hold: "hold";
316
+ land: "land";
317
+ snap: "snap";
318
+ glide: "glide";
319
+ move: "move";
320
+ exit: "exit";
321
+ drift: "drift";
322
+ }>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>>;
323
+ }, z.core.$strip>;
324
+ export declare const layerSchema: z.ZodType<any>;
325
+ export declare const cameraSchema: z.ZodObject<{
326
+ x: z.ZodOptional<z.ZodNumber>;
327
+ y: z.ZodOptional<z.ZodNumber>;
328
+ zoom: z.ZodDefault<z.ZodNumber>;
329
+ rotation: z.ZodDefault<z.ZodNumber>;
330
+ shake: z.ZodDefault<z.ZodNumber>;
331
+ animations: z.ZodDefault<z.ZodArray<z.ZodObject<{
332
+ property: z.ZodEnum<{
333
+ x: "x";
334
+ y: "y";
335
+ rotation: "rotation";
336
+ zoom: "zoom";
337
+ shake: "shake";
338
+ }>;
339
+ keyframes: z.ZodArray<z.ZodObject<{
340
+ frame: z.ZodNumber;
341
+ value: z.ZodNumber;
342
+ easing: z.ZodOptional<z.ZodUnion<readonly [z.ZodEnum<{
343
+ pop: "pop";
344
+ linear: "linear";
345
+ easeIn: "easeIn";
346
+ easeOut: "easeOut";
347
+ easeInOut: "easeInOut";
348
+ easeInCubic: "easeInCubic";
349
+ easeOutCubic: "easeOutCubic";
350
+ easeInOutCubic: "easeInOutCubic";
351
+ easeInQuart: "easeInQuart";
352
+ easeOutQuart: "easeOutQuart";
353
+ easeInOutQuart: "easeInOutQuart";
354
+ easeInExpo: "easeInExpo";
355
+ easeOutExpo: "easeOutExpo";
356
+ easeInOutExpo: "easeInOutExpo";
357
+ easeInBack: "easeInBack";
358
+ easeOutBack: "easeOutBack";
359
+ spring: "spring";
360
+ hold: "hold";
361
+ land: "land";
362
+ snap: "snap";
363
+ glide: "glide";
364
+ move: "move";
365
+ exit: "exit";
366
+ drift: "drift";
367
+ }>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>>;
368
+ }, z.core.$strip>>;
369
+ repeat: z.ZodOptional<z.ZodNumber>;
370
+ reverse: z.ZodOptional<z.ZodBoolean>;
371
+ }, z.core.$strip>>>;
372
+ }, z.core.$strip>;
373
+ export declare const sceneSchema: z.ZodObject<{
374
+ grade: z.ZodOptional<z.ZodObject<{
375
+ look: z.ZodOptional<z.ZodEnum<{
376
+ warm: "warm";
377
+ cool: "cool";
378
+ cinematic: "cinematic";
379
+ "teal-orange": "teal-orange";
380
+ noir: "noir";
381
+ vivid: "vivid";
382
+ faded: "faded";
383
+ }>>;
384
+ exposure: z.ZodOptional<z.ZodNumber>;
385
+ contrast: z.ZodOptional<z.ZodNumber>;
386
+ saturation: z.ZodOptional<z.ZodNumber>;
387
+ temperature: z.ZodOptional<z.ZodNumber>;
388
+ tint: z.ZodOptional<z.ZodNumber>;
389
+ shadows: z.ZodOptional<z.ZodNumber>;
390
+ highlights: z.ZodOptional<z.ZodNumber>;
391
+ fade: z.ZodOptional<z.ZodNumber>;
392
+ }, z.core.$strip>>;
393
+ id: z.ZodString;
394
+ name: z.ZodString;
395
+ startFrame: z.ZodDefault<z.ZodNumber>;
396
+ overlap: z.ZodOptional<z.ZodNumber>;
397
+ durationFrames: z.ZodNumber;
398
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
399
+ transitionIn: z.ZodOptional<z.ZodObject<{
400
+ type: z.ZodEnum<{
401
+ push: "push";
402
+ blur: "blur";
403
+ fade: "fade";
404
+ slide: "slide";
405
+ wipe: "wipe";
406
+ zoom: "zoom";
407
+ iris: "iris";
408
+ dip: "dip";
409
+ }>;
410
+ durationFrames: z.ZodNumber;
411
+ direction: z.ZodDefault<z.ZodEnum<{
412
+ left: "left";
413
+ right: "right";
414
+ top: "top";
415
+ bottom: "bottom";
416
+ }>>;
417
+ color: z.ZodDefault<z.ZodString>;
418
+ x: z.ZodOptional<z.ZodNumber>;
419
+ y: z.ZodOptional<z.ZodNumber>;
420
+ easing: z.ZodDefault<z.ZodUnion<readonly [z.ZodEnum<{
421
+ pop: "pop";
422
+ linear: "linear";
423
+ easeIn: "easeIn";
424
+ easeOut: "easeOut";
425
+ easeInOut: "easeInOut";
426
+ easeInCubic: "easeInCubic";
427
+ easeOutCubic: "easeOutCubic";
428
+ easeInOutCubic: "easeInOutCubic";
429
+ easeInQuart: "easeInQuart";
430
+ easeOutQuart: "easeOutQuart";
431
+ easeInOutQuart: "easeInOutQuart";
432
+ easeInExpo: "easeInExpo";
433
+ easeOutExpo: "easeOutExpo";
434
+ easeInOutExpo: "easeInOutExpo";
435
+ easeInBack: "easeInBack";
436
+ easeOutBack: "easeOutBack";
437
+ spring: "spring";
438
+ hold: "hold";
439
+ land: "land";
440
+ snap: "snap";
441
+ glide: "glide";
442
+ move: "move";
443
+ exit: "exit";
444
+ drift: "drift";
445
+ }>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>>;
446
+ }, z.core.$strip>>;
447
+ transitionOut: z.ZodOptional<z.ZodObject<{
448
+ type: z.ZodEnum<{
449
+ push: "push";
450
+ blur: "blur";
451
+ fade: "fade";
452
+ slide: "slide";
453
+ wipe: "wipe";
454
+ zoom: "zoom";
455
+ iris: "iris";
456
+ dip: "dip";
457
+ }>;
458
+ durationFrames: z.ZodNumber;
459
+ direction: z.ZodDefault<z.ZodEnum<{
460
+ left: "left";
461
+ right: "right";
462
+ top: "top";
463
+ bottom: "bottom";
464
+ }>>;
465
+ color: z.ZodDefault<z.ZodString>;
466
+ x: z.ZodOptional<z.ZodNumber>;
467
+ y: z.ZodOptional<z.ZodNumber>;
468
+ easing: z.ZodDefault<z.ZodUnion<readonly [z.ZodEnum<{
469
+ pop: "pop";
470
+ linear: "linear";
471
+ easeIn: "easeIn";
472
+ easeOut: "easeOut";
473
+ easeInOut: "easeInOut";
474
+ easeInCubic: "easeInCubic";
475
+ easeOutCubic: "easeOutCubic";
476
+ easeInOutCubic: "easeInOutCubic";
477
+ easeInQuart: "easeInQuart";
478
+ easeOutQuart: "easeOutQuart";
479
+ easeInOutQuart: "easeInOutQuart";
480
+ easeInExpo: "easeInExpo";
481
+ easeOutExpo: "easeOutExpo";
482
+ easeInOutExpo: "easeInOutExpo";
483
+ easeInBack: "easeInBack";
484
+ easeOutBack: "easeOutBack";
485
+ spring: "spring";
486
+ hold: "hold";
487
+ land: "land";
488
+ snap: "snap";
489
+ glide: "glide";
490
+ move: "move";
491
+ exit: "exit";
492
+ drift: "drift";
493
+ }>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>>;
494
+ }, z.core.$strip>>;
495
+ camera: z.ZodOptional<z.ZodObject<{
496
+ x: z.ZodOptional<z.ZodNumber>;
497
+ y: z.ZodOptional<z.ZodNumber>;
498
+ zoom: z.ZodDefault<z.ZodNumber>;
499
+ rotation: z.ZodDefault<z.ZodNumber>;
500
+ shake: z.ZodDefault<z.ZodNumber>;
501
+ animations: z.ZodDefault<z.ZodArray<z.ZodObject<{
502
+ property: z.ZodEnum<{
503
+ x: "x";
504
+ y: "y";
505
+ rotation: "rotation";
506
+ zoom: "zoom";
507
+ shake: "shake";
508
+ }>;
509
+ keyframes: z.ZodArray<z.ZodObject<{
510
+ frame: z.ZodNumber;
511
+ value: z.ZodNumber;
512
+ easing: z.ZodOptional<z.ZodUnion<readonly [z.ZodEnum<{
513
+ pop: "pop";
514
+ linear: "linear";
515
+ easeIn: "easeIn";
516
+ easeOut: "easeOut";
517
+ easeInOut: "easeInOut";
518
+ easeInCubic: "easeInCubic";
519
+ easeOutCubic: "easeOutCubic";
520
+ easeInOutCubic: "easeInOutCubic";
521
+ easeInQuart: "easeInQuart";
522
+ easeOutQuart: "easeOutQuart";
523
+ easeInOutQuart: "easeInOutQuart";
524
+ easeInExpo: "easeInExpo";
525
+ easeOutExpo: "easeOutExpo";
526
+ easeInOutExpo: "easeInOutExpo";
527
+ easeInBack: "easeInBack";
528
+ easeOutBack: "easeOutBack";
529
+ spring: "spring";
530
+ hold: "hold";
531
+ land: "land";
532
+ snap: "snap";
533
+ glide: "glide";
534
+ move: "move";
535
+ exit: "exit";
536
+ drift: "drift";
537
+ }>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>>;
538
+ }, z.core.$strip>>;
539
+ repeat: z.ZodOptional<z.ZodNumber>;
540
+ reverse: z.ZodOptional<z.ZodBoolean>;
541
+ }, z.core.$strip>>>;
542
+ }, z.core.$strip>>;
543
+ layers: z.ZodDefault<z.ZodArray<z.ZodType<any, unknown, z.core.$ZodTypeInternals<any, unknown>>>>;
544
+ assetIds: z.ZodDefault<z.ZodArray<z.ZodString>>;
545
+ }, z.core.$strip>;
546
+ export declare const assetSchema: z.ZodObject<{
547
+ id: z.ZodString;
548
+ type: z.ZodEnum<{
549
+ image: "image";
550
+ video: "video";
551
+ audio: "audio";
552
+ captions: "captions";
553
+ lottie: "lottie";
554
+ font: "font";
555
+ svg: "svg";
556
+ }>;
557
+ src: z.ZodString;
558
+ family: z.ZodOptional<z.ZodString>;
559
+ weight: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodEnum<{
560
+ normal: "normal";
561
+ bold: "bold";
562
+ }>]>>;
563
+ style: z.ZodOptional<z.ZodEnum<{
564
+ normal: "normal";
565
+ italic: "italic";
566
+ }>>;
567
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
568
+ }, z.core.$strip>;
569
+ export declare const tempoSchema: z.ZodObject<{
570
+ bpm: z.ZodNumber;
571
+ offset: z.ZodDefault<z.ZodNumber>;
572
+ beatsPerBar: z.ZodDefault<z.ZodNumber>;
573
+ }, z.core.$strip>;
574
+ export declare function beatFunctions(raw: any): Record<string, (...args: unknown[]) => number>;
575
+ export declare const compositionSchema: z.ZodObject<{
576
+ $schema: z.ZodOptional<z.ZodString>;
577
+ version: z.ZodLiteral<"1.0">;
578
+ id: z.ZodString;
579
+ name: z.ZodString;
580
+ width: z.ZodNumber;
581
+ height: z.ZodNumber;
582
+ fps: z.ZodNumber;
583
+ durationFrames: z.ZodPipe<z.ZodUnion<readonly [z.ZodNumber, z.ZodLiteral<"auto">]>, z.ZodTransform<number, number | "auto">>;
584
+ variables: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
585
+ type: z.ZodEnum<{
586
+ string: "string";
587
+ number: "number";
588
+ boolean: "boolean";
589
+ color: "color";
590
+ list: "list";
591
+ }>;
592
+ default: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>]>>;
593
+ description: z.ZodOptional<z.ZodString>;
594
+ items: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
595
+ type: z.ZodEnum<{
596
+ string: "string";
597
+ number: "number";
598
+ boolean: "boolean";
599
+ color: "color";
600
+ }>;
601
+ default: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>;
602
+ description: z.ZodOptional<z.ZodString>;
603
+ }, z.core.$strip>>>;
604
+ }, z.core.$strip>>>;
605
+ components: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
606
+ description: z.ZodOptional<z.ZodString>;
607
+ params: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
608
+ type: z.ZodEnum<{
609
+ string: "string";
610
+ number: "number";
611
+ boolean: "boolean";
612
+ color: "color";
613
+ list: "list";
614
+ }>;
615
+ default: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>]>>;
616
+ description: z.ZodOptional<z.ZodString>;
617
+ items: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
618
+ type: z.ZodEnum<{
619
+ string: "string";
620
+ number: "number";
621
+ boolean: "boolean";
622
+ color: "color";
623
+ }>;
624
+ default: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>;
625
+ description: z.ZodOptional<z.ZodString>;
626
+ }, z.core.$strip>>>;
627
+ }, z.core.$strip>>>;
628
+ layers: z.ZodArray<z.ZodUnknown>;
629
+ }, z.core.$strip>>>;
630
+ assets: z.ZodDefault<z.ZodArray<z.ZodObject<{
631
+ id: z.ZodString;
632
+ type: z.ZodEnum<{
633
+ image: "image";
634
+ video: "video";
635
+ audio: "audio";
636
+ captions: "captions";
637
+ lottie: "lottie";
638
+ font: "font";
639
+ svg: "svg";
640
+ }>;
641
+ src: z.ZodString;
642
+ family: z.ZodOptional<z.ZodString>;
643
+ weight: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodEnum<{
644
+ normal: "normal";
645
+ bold: "bold";
646
+ }>]>>;
647
+ style: z.ZodOptional<z.ZodEnum<{
648
+ normal: "normal";
649
+ italic: "italic";
650
+ }>>;
651
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
652
+ }, z.core.$strip>>>;
653
+ scenes: z.ZodArray<z.ZodObject<{
654
+ grade: z.ZodOptional<z.ZodObject<{
655
+ look: z.ZodOptional<z.ZodEnum<{
656
+ warm: "warm";
657
+ cool: "cool";
658
+ cinematic: "cinematic";
659
+ "teal-orange": "teal-orange";
660
+ noir: "noir";
661
+ vivid: "vivid";
662
+ faded: "faded";
663
+ }>>;
664
+ exposure: z.ZodOptional<z.ZodNumber>;
665
+ contrast: z.ZodOptional<z.ZodNumber>;
666
+ saturation: z.ZodOptional<z.ZodNumber>;
667
+ temperature: z.ZodOptional<z.ZodNumber>;
668
+ tint: z.ZodOptional<z.ZodNumber>;
669
+ shadows: z.ZodOptional<z.ZodNumber>;
670
+ highlights: z.ZodOptional<z.ZodNumber>;
671
+ fade: z.ZodOptional<z.ZodNumber>;
672
+ }, z.core.$strip>>;
673
+ id: z.ZodString;
674
+ name: z.ZodString;
675
+ startFrame: z.ZodDefault<z.ZodNumber>;
676
+ overlap: z.ZodOptional<z.ZodNumber>;
677
+ durationFrames: z.ZodNumber;
678
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
679
+ transitionIn: z.ZodOptional<z.ZodObject<{
680
+ type: z.ZodEnum<{
681
+ push: "push";
682
+ blur: "blur";
683
+ fade: "fade";
684
+ slide: "slide";
685
+ wipe: "wipe";
686
+ zoom: "zoom";
687
+ iris: "iris";
688
+ dip: "dip";
689
+ }>;
690
+ durationFrames: z.ZodNumber;
691
+ direction: z.ZodDefault<z.ZodEnum<{
692
+ left: "left";
693
+ right: "right";
694
+ top: "top";
695
+ bottom: "bottom";
696
+ }>>;
697
+ color: z.ZodDefault<z.ZodString>;
698
+ x: z.ZodOptional<z.ZodNumber>;
699
+ y: z.ZodOptional<z.ZodNumber>;
700
+ easing: z.ZodDefault<z.ZodUnion<readonly [z.ZodEnum<{
701
+ pop: "pop";
702
+ linear: "linear";
703
+ easeIn: "easeIn";
704
+ easeOut: "easeOut";
705
+ easeInOut: "easeInOut";
706
+ easeInCubic: "easeInCubic";
707
+ easeOutCubic: "easeOutCubic";
708
+ easeInOutCubic: "easeInOutCubic";
709
+ easeInQuart: "easeInQuart";
710
+ easeOutQuart: "easeOutQuart";
711
+ easeInOutQuart: "easeInOutQuart";
712
+ easeInExpo: "easeInExpo";
713
+ easeOutExpo: "easeOutExpo";
714
+ easeInOutExpo: "easeInOutExpo";
715
+ easeInBack: "easeInBack";
716
+ easeOutBack: "easeOutBack";
717
+ spring: "spring";
718
+ hold: "hold";
719
+ land: "land";
720
+ snap: "snap";
721
+ glide: "glide";
722
+ move: "move";
723
+ exit: "exit";
724
+ drift: "drift";
725
+ }>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>>;
726
+ }, z.core.$strip>>;
727
+ transitionOut: z.ZodOptional<z.ZodObject<{
728
+ type: z.ZodEnum<{
729
+ push: "push";
730
+ blur: "blur";
731
+ fade: "fade";
732
+ slide: "slide";
733
+ wipe: "wipe";
734
+ zoom: "zoom";
735
+ iris: "iris";
736
+ dip: "dip";
737
+ }>;
738
+ durationFrames: z.ZodNumber;
739
+ direction: z.ZodDefault<z.ZodEnum<{
740
+ left: "left";
741
+ right: "right";
742
+ top: "top";
743
+ bottom: "bottom";
744
+ }>>;
745
+ color: z.ZodDefault<z.ZodString>;
746
+ x: z.ZodOptional<z.ZodNumber>;
747
+ y: z.ZodOptional<z.ZodNumber>;
748
+ easing: z.ZodDefault<z.ZodUnion<readonly [z.ZodEnum<{
749
+ pop: "pop";
750
+ linear: "linear";
751
+ easeIn: "easeIn";
752
+ easeOut: "easeOut";
753
+ easeInOut: "easeInOut";
754
+ easeInCubic: "easeInCubic";
755
+ easeOutCubic: "easeOutCubic";
756
+ easeInOutCubic: "easeInOutCubic";
757
+ easeInQuart: "easeInQuart";
758
+ easeOutQuart: "easeOutQuart";
759
+ easeInOutQuart: "easeInOutQuart";
760
+ easeInExpo: "easeInExpo";
761
+ easeOutExpo: "easeOutExpo";
762
+ easeInOutExpo: "easeInOutExpo";
763
+ easeInBack: "easeInBack";
764
+ easeOutBack: "easeOutBack";
765
+ spring: "spring";
766
+ hold: "hold";
767
+ land: "land";
768
+ snap: "snap";
769
+ glide: "glide";
770
+ move: "move";
771
+ exit: "exit";
772
+ drift: "drift";
773
+ }>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>>;
774
+ }, z.core.$strip>>;
775
+ camera: z.ZodOptional<z.ZodObject<{
776
+ x: z.ZodOptional<z.ZodNumber>;
777
+ y: z.ZodOptional<z.ZodNumber>;
778
+ zoom: z.ZodDefault<z.ZodNumber>;
779
+ rotation: z.ZodDefault<z.ZodNumber>;
780
+ shake: z.ZodDefault<z.ZodNumber>;
781
+ animations: z.ZodDefault<z.ZodArray<z.ZodObject<{
782
+ property: z.ZodEnum<{
783
+ x: "x";
784
+ y: "y";
785
+ rotation: "rotation";
786
+ zoom: "zoom";
787
+ shake: "shake";
788
+ }>;
789
+ keyframes: z.ZodArray<z.ZodObject<{
790
+ frame: z.ZodNumber;
791
+ value: z.ZodNumber;
792
+ easing: z.ZodOptional<z.ZodUnion<readonly [z.ZodEnum<{
793
+ pop: "pop";
794
+ linear: "linear";
795
+ easeIn: "easeIn";
796
+ easeOut: "easeOut";
797
+ easeInOut: "easeInOut";
798
+ easeInCubic: "easeInCubic";
799
+ easeOutCubic: "easeOutCubic";
800
+ easeInOutCubic: "easeInOutCubic";
801
+ easeInQuart: "easeInQuart";
802
+ easeOutQuart: "easeOutQuart";
803
+ easeInOutQuart: "easeInOutQuart";
804
+ easeInExpo: "easeInExpo";
805
+ easeOutExpo: "easeOutExpo";
806
+ easeInOutExpo: "easeInOutExpo";
807
+ easeInBack: "easeInBack";
808
+ easeOutBack: "easeOutBack";
809
+ spring: "spring";
810
+ hold: "hold";
811
+ land: "land";
812
+ snap: "snap";
813
+ glide: "glide";
814
+ move: "move";
815
+ exit: "exit";
816
+ drift: "drift";
817
+ }>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>>;
818
+ }, z.core.$strip>>;
819
+ repeat: z.ZodOptional<z.ZodNumber>;
820
+ reverse: z.ZodOptional<z.ZodBoolean>;
821
+ }, z.core.$strip>>>;
822
+ }, z.core.$strip>>;
823
+ layers: z.ZodDefault<z.ZodArray<z.ZodType<any, unknown, z.core.$ZodTypeInternals<any, unknown>>>>;
824
+ assetIds: z.ZodDefault<z.ZodArray<z.ZodString>>;
825
+ }, z.core.$strip>>;
826
+ background: z.ZodDefault<z.ZodUnion<readonly [z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
827
+ type: z.ZodLiteral<"linear">;
828
+ from: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
829
+ to: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
830
+ stops: z.ZodArray<z.ZodObject<{
831
+ offset: z.ZodNumber;
832
+ color: z.ZodString;
833
+ }, z.core.$strip>>;
834
+ }, z.core.$strip>, z.ZodObject<{
835
+ type: z.ZodLiteral<"radial">;
836
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
837
+ radius: z.ZodNumber;
838
+ stops: z.ZodArray<z.ZodObject<{
839
+ offset: z.ZodNumber;
840
+ color: z.ZodString;
841
+ }, z.core.$strip>>;
842
+ }, z.core.$strip>], "type">]>>;
843
+ motionBlur: z.ZodOptional<z.ZodObject<{
844
+ samples: z.ZodDefault<z.ZodNumber>;
845
+ shutter: z.ZodDefault<z.ZodNumber>;
846
+ }, z.core.$strip>>;
847
+ tempo: z.ZodOptional<z.ZodObject<{
848
+ bpm: z.ZodNumber;
849
+ offset: z.ZodDefault<z.ZodNumber>;
850
+ beatsPerBar: z.ZodDefault<z.ZodNumber>;
851
+ }, z.core.$strip>>;
852
+ grain: z.ZodDefault<z.ZodNumber>;
853
+ export: z.ZodDefault<z.ZodObject<{
854
+ format: z.ZodDefault<z.ZodEnum<{
855
+ mp4: "mp4";
856
+ webm: "webm";
857
+ mov: "mov";
858
+ gif: "gif";
859
+ png: "png";
860
+ }>>;
861
+ codec: z.ZodDefault<z.ZodEnum<{
862
+ h264: "h264";
863
+ h265: "h265";
864
+ }>>;
865
+ transparent: z.ZodDefault<z.ZodBoolean>;
866
+ audio: z.ZodOptional<z.ZodString>;
867
+ audioVolume: z.ZodDefault<z.ZodNumber>;
868
+ duck: z.ZodOptional<z.ZodObject<{
869
+ amount: z.ZodDefault<z.ZodNumber>;
870
+ attackFrames: z.ZodDefault<z.ZodNumber>;
871
+ releaseFrames: z.ZodDefault<z.ZodNumber>;
872
+ by: z.ZodOptional<z.ZodArray<z.ZodString>>;
873
+ }, z.core.$strip>>;
874
+ loudness: z.ZodOptional<z.ZodNumber>;
875
+ crf: z.ZodOptional<z.ZodNumber>;
876
+ bitrate: z.ZodOptional<z.ZodString>;
877
+ audioBitrate: z.ZodOptional<z.ZodString>;
878
+ scale: z.ZodDefault<z.ZodNumber>;
879
+ }, z.core.$strip>>;
880
+ }, z.core.$strip>;
881
+ export type Composition = z.infer<typeof compositionSchema>;
882
+ export type Layer = z.infer<typeof layerSchema>;
883
+ export type Animation = z.infer<typeof animation>;
884
+ /** A scene with a `grade` puts all its layers (except fixed ones) in a graded group. */
885
+ export declare function expandSceneGrades(input: unknown): unknown;
886
+ /** Turns every layer with a `matte` into a masking group: the layer, then the matte as a video or picture layer, with the group masking by its last child. */
887
+ export declare function expandMattes(input: unknown): unknown;
888
+ export declare function parseComposition(input: unknown): Composition;
889
+ export type MediaSegment = {
890
+ start: number;
891
+ end: number;
892
+ startFrame: number;
893
+ endFrame: number;
894
+ };
895
+ export type MediaInfo = {
896
+ duration: number;
897
+ frames: number;
898
+ segments: MediaSegment[];
899
+ soundEnd: number;
900
+ soundEndFrames: number;
901
+ };
902
+ export type LoadOptions = {
903
+ media?: Record<string, MediaInfo>;
904
+ };
905
+ export declare function sequenceScenes(expanded: unknown): unknown;
906
+ export declare function loadComposition(input: unknown, values?: Record<string, unknown>, options?: LoadOptions): Composition;
907
+ export declare const compositionJsonSchema: z.core.ZodStandardJSONSchemaPayload<z.ZodObject<{
908
+ $schema: z.ZodOptional<z.ZodString>;
909
+ version: z.ZodLiteral<"1.0">;
910
+ id: z.ZodString;
911
+ name: z.ZodString;
912
+ width: z.ZodNumber;
913
+ height: z.ZodNumber;
914
+ fps: z.ZodNumber;
915
+ durationFrames: z.ZodPipe<z.ZodUnion<readonly [z.ZodNumber, z.ZodLiteral<"auto">]>, z.ZodTransform<number, number | "auto">>;
916
+ variables: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
917
+ type: z.ZodEnum<{
918
+ string: "string";
919
+ number: "number";
920
+ boolean: "boolean";
921
+ color: "color";
922
+ list: "list";
923
+ }>;
924
+ default: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>]>>;
925
+ description: z.ZodOptional<z.ZodString>;
926
+ items: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
927
+ type: z.ZodEnum<{
928
+ string: "string";
929
+ number: "number";
930
+ boolean: "boolean";
931
+ color: "color";
932
+ }>;
933
+ default: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>;
934
+ description: z.ZodOptional<z.ZodString>;
935
+ }, z.core.$strip>>>;
936
+ }, z.core.$strip>>>;
937
+ components: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
938
+ description: z.ZodOptional<z.ZodString>;
939
+ params: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
940
+ type: z.ZodEnum<{
941
+ string: "string";
942
+ number: "number";
943
+ boolean: "boolean";
944
+ color: "color";
945
+ list: "list";
946
+ }>;
947
+ default: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>]>>;
948
+ description: z.ZodOptional<z.ZodString>;
949
+ items: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
950
+ type: z.ZodEnum<{
951
+ string: "string";
952
+ number: "number";
953
+ boolean: "boolean";
954
+ color: "color";
955
+ }>;
956
+ default: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>;
957
+ description: z.ZodOptional<z.ZodString>;
958
+ }, z.core.$strip>>>;
959
+ }, z.core.$strip>>>;
960
+ layers: z.ZodArray<z.ZodUnknown>;
961
+ }, z.core.$strip>>>;
962
+ assets: z.ZodDefault<z.ZodArray<z.ZodObject<{
963
+ id: z.ZodString;
964
+ type: z.ZodEnum<{
965
+ image: "image";
966
+ video: "video";
967
+ audio: "audio";
968
+ captions: "captions";
969
+ lottie: "lottie";
970
+ font: "font";
971
+ svg: "svg";
972
+ }>;
973
+ src: z.ZodString;
974
+ family: z.ZodOptional<z.ZodString>;
975
+ weight: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodEnum<{
976
+ normal: "normal";
977
+ bold: "bold";
978
+ }>]>>;
979
+ style: z.ZodOptional<z.ZodEnum<{
980
+ normal: "normal";
981
+ italic: "italic";
982
+ }>>;
983
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
984
+ }, z.core.$strip>>>;
985
+ scenes: z.ZodArray<z.ZodObject<{
986
+ grade: z.ZodOptional<z.ZodObject<{
987
+ look: z.ZodOptional<z.ZodEnum<{
988
+ warm: "warm";
989
+ cool: "cool";
990
+ cinematic: "cinematic";
991
+ "teal-orange": "teal-orange";
992
+ noir: "noir";
993
+ vivid: "vivid";
994
+ faded: "faded";
995
+ }>>;
996
+ exposure: z.ZodOptional<z.ZodNumber>;
997
+ contrast: z.ZodOptional<z.ZodNumber>;
998
+ saturation: z.ZodOptional<z.ZodNumber>;
999
+ temperature: z.ZodOptional<z.ZodNumber>;
1000
+ tint: z.ZodOptional<z.ZodNumber>;
1001
+ shadows: z.ZodOptional<z.ZodNumber>;
1002
+ highlights: z.ZodOptional<z.ZodNumber>;
1003
+ fade: z.ZodOptional<z.ZodNumber>;
1004
+ }, z.core.$strip>>;
1005
+ id: z.ZodString;
1006
+ name: z.ZodString;
1007
+ startFrame: z.ZodDefault<z.ZodNumber>;
1008
+ overlap: z.ZodOptional<z.ZodNumber>;
1009
+ durationFrames: z.ZodNumber;
1010
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1011
+ transitionIn: z.ZodOptional<z.ZodObject<{
1012
+ type: z.ZodEnum<{
1013
+ push: "push";
1014
+ blur: "blur";
1015
+ fade: "fade";
1016
+ slide: "slide";
1017
+ wipe: "wipe";
1018
+ zoom: "zoom";
1019
+ iris: "iris";
1020
+ dip: "dip";
1021
+ }>;
1022
+ durationFrames: z.ZodNumber;
1023
+ direction: z.ZodDefault<z.ZodEnum<{
1024
+ left: "left";
1025
+ right: "right";
1026
+ top: "top";
1027
+ bottom: "bottom";
1028
+ }>>;
1029
+ color: z.ZodDefault<z.ZodString>;
1030
+ x: z.ZodOptional<z.ZodNumber>;
1031
+ y: z.ZodOptional<z.ZodNumber>;
1032
+ easing: z.ZodDefault<z.ZodUnion<readonly [z.ZodEnum<{
1033
+ pop: "pop";
1034
+ linear: "linear";
1035
+ easeIn: "easeIn";
1036
+ easeOut: "easeOut";
1037
+ easeInOut: "easeInOut";
1038
+ easeInCubic: "easeInCubic";
1039
+ easeOutCubic: "easeOutCubic";
1040
+ easeInOutCubic: "easeInOutCubic";
1041
+ easeInQuart: "easeInQuart";
1042
+ easeOutQuart: "easeOutQuart";
1043
+ easeInOutQuart: "easeInOutQuart";
1044
+ easeInExpo: "easeInExpo";
1045
+ easeOutExpo: "easeOutExpo";
1046
+ easeInOutExpo: "easeInOutExpo";
1047
+ easeInBack: "easeInBack";
1048
+ easeOutBack: "easeOutBack";
1049
+ spring: "spring";
1050
+ hold: "hold";
1051
+ land: "land";
1052
+ snap: "snap";
1053
+ glide: "glide";
1054
+ move: "move";
1055
+ exit: "exit";
1056
+ drift: "drift";
1057
+ }>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>>;
1058
+ }, z.core.$strip>>;
1059
+ transitionOut: z.ZodOptional<z.ZodObject<{
1060
+ type: z.ZodEnum<{
1061
+ push: "push";
1062
+ blur: "blur";
1063
+ fade: "fade";
1064
+ slide: "slide";
1065
+ wipe: "wipe";
1066
+ zoom: "zoom";
1067
+ iris: "iris";
1068
+ dip: "dip";
1069
+ }>;
1070
+ durationFrames: z.ZodNumber;
1071
+ direction: z.ZodDefault<z.ZodEnum<{
1072
+ left: "left";
1073
+ right: "right";
1074
+ top: "top";
1075
+ bottom: "bottom";
1076
+ }>>;
1077
+ color: z.ZodDefault<z.ZodString>;
1078
+ x: z.ZodOptional<z.ZodNumber>;
1079
+ y: z.ZodOptional<z.ZodNumber>;
1080
+ easing: z.ZodDefault<z.ZodUnion<readonly [z.ZodEnum<{
1081
+ pop: "pop";
1082
+ linear: "linear";
1083
+ easeIn: "easeIn";
1084
+ easeOut: "easeOut";
1085
+ easeInOut: "easeInOut";
1086
+ easeInCubic: "easeInCubic";
1087
+ easeOutCubic: "easeOutCubic";
1088
+ easeInOutCubic: "easeInOutCubic";
1089
+ easeInQuart: "easeInQuart";
1090
+ easeOutQuart: "easeOutQuart";
1091
+ easeInOutQuart: "easeInOutQuart";
1092
+ easeInExpo: "easeInExpo";
1093
+ easeOutExpo: "easeOutExpo";
1094
+ easeInOutExpo: "easeInOutExpo";
1095
+ easeInBack: "easeInBack";
1096
+ easeOutBack: "easeOutBack";
1097
+ spring: "spring";
1098
+ hold: "hold";
1099
+ land: "land";
1100
+ snap: "snap";
1101
+ glide: "glide";
1102
+ move: "move";
1103
+ exit: "exit";
1104
+ drift: "drift";
1105
+ }>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>>;
1106
+ }, z.core.$strip>>;
1107
+ camera: z.ZodOptional<z.ZodObject<{
1108
+ x: z.ZodOptional<z.ZodNumber>;
1109
+ y: z.ZodOptional<z.ZodNumber>;
1110
+ zoom: z.ZodDefault<z.ZodNumber>;
1111
+ rotation: z.ZodDefault<z.ZodNumber>;
1112
+ shake: z.ZodDefault<z.ZodNumber>;
1113
+ animations: z.ZodDefault<z.ZodArray<z.ZodObject<{
1114
+ property: z.ZodEnum<{
1115
+ x: "x";
1116
+ y: "y";
1117
+ rotation: "rotation";
1118
+ zoom: "zoom";
1119
+ shake: "shake";
1120
+ }>;
1121
+ keyframes: z.ZodArray<z.ZodObject<{
1122
+ frame: z.ZodNumber;
1123
+ value: z.ZodNumber;
1124
+ easing: z.ZodOptional<z.ZodUnion<readonly [z.ZodEnum<{
1125
+ pop: "pop";
1126
+ linear: "linear";
1127
+ easeIn: "easeIn";
1128
+ easeOut: "easeOut";
1129
+ easeInOut: "easeInOut";
1130
+ easeInCubic: "easeInCubic";
1131
+ easeOutCubic: "easeOutCubic";
1132
+ easeInOutCubic: "easeInOutCubic";
1133
+ easeInQuart: "easeInQuart";
1134
+ easeOutQuart: "easeOutQuart";
1135
+ easeInOutQuart: "easeInOutQuart";
1136
+ easeInExpo: "easeInExpo";
1137
+ easeOutExpo: "easeOutExpo";
1138
+ easeInOutExpo: "easeInOutExpo";
1139
+ easeInBack: "easeInBack";
1140
+ easeOutBack: "easeOutBack";
1141
+ spring: "spring";
1142
+ hold: "hold";
1143
+ land: "land";
1144
+ snap: "snap";
1145
+ glide: "glide";
1146
+ move: "move";
1147
+ exit: "exit";
1148
+ drift: "drift";
1149
+ }>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>>;
1150
+ }, z.core.$strip>>;
1151
+ repeat: z.ZodOptional<z.ZodNumber>;
1152
+ reverse: z.ZodOptional<z.ZodBoolean>;
1153
+ }, z.core.$strip>>>;
1154
+ }, z.core.$strip>>;
1155
+ layers: z.ZodDefault<z.ZodArray<z.ZodType<any, unknown, z.core.$ZodTypeInternals<any, unknown>>>>;
1156
+ assetIds: z.ZodDefault<z.ZodArray<z.ZodString>>;
1157
+ }, z.core.$strip>>;
1158
+ background: z.ZodDefault<z.ZodUnion<readonly [z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
1159
+ type: z.ZodLiteral<"linear">;
1160
+ from: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
1161
+ to: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
1162
+ stops: z.ZodArray<z.ZodObject<{
1163
+ offset: z.ZodNumber;
1164
+ color: z.ZodString;
1165
+ }, z.core.$strip>>;
1166
+ }, z.core.$strip>, z.ZodObject<{
1167
+ type: z.ZodLiteral<"radial">;
1168
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
1169
+ radius: z.ZodNumber;
1170
+ stops: z.ZodArray<z.ZodObject<{
1171
+ offset: z.ZodNumber;
1172
+ color: z.ZodString;
1173
+ }, z.core.$strip>>;
1174
+ }, z.core.$strip>], "type">]>>;
1175
+ motionBlur: z.ZodOptional<z.ZodObject<{
1176
+ samples: z.ZodDefault<z.ZodNumber>;
1177
+ shutter: z.ZodDefault<z.ZodNumber>;
1178
+ }, z.core.$strip>>;
1179
+ tempo: z.ZodOptional<z.ZodObject<{
1180
+ bpm: z.ZodNumber;
1181
+ offset: z.ZodDefault<z.ZodNumber>;
1182
+ beatsPerBar: z.ZodDefault<z.ZodNumber>;
1183
+ }, z.core.$strip>>;
1184
+ grain: z.ZodDefault<z.ZodNumber>;
1185
+ export: z.ZodDefault<z.ZodObject<{
1186
+ format: z.ZodDefault<z.ZodEnum<{
1187
+ mp4: "mp4";
1188
+ webm: "webm";
1189
+ mov: "mov";
1190
+ gif: "gif";
1191
+ png: "png";
1192
+ }>>;
1193
+ codec: z.ZodDefault<z.ZodEnum<{
1194
+ h264: "h264";
1195
+ h265: "h265";
1196
+ }>>;
1197
+ transparent: z.ZodDefault<z.ZodBoolean>;
1198
+ audio: z.ZodOptional<z.ZodString>;
1199
+ audioVolume: z.ZodDefault<z.ZodNumber>;
1200
+ duck: z.ZodOptional<z.ZodObject<{
1201
+ amount: z.ZodDefault<z.ZodNumber>;
1202
+ attackFrames: z.ZodDefault<z.ZodNumber>;
1203
+ releaseFrames: z.ZodDefault<z.ZodNumber>;
1204
+ by: z.ZodOptional<z.ZodArray<z.ZodString>>;
1205
+ }, z.core.$strip>>;
1206
+ loudness: z.ZodOptional<z.ZodNumber>;
1207
+ crf: z.ZodOptional<z.ZodNumber>;
1208
+ bitrate: z.ZodOptional<z.ZodString>;
1209
+ audioBitrate: z.ZodOptional<z.ZodString>;
1210
+ scale: z.ZodDefault<z.ZodNumber>;
1211
+ }, z.core.$strip>>;
1212
+ }, z.core.$strip>>;
1213
+ export declare const describeError: (error: unknown) => string;