@encatch/schema 1.1.0-beta.8 → 1.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,1203 @@
1
+ import { z } from "zod";
2
+ export declare const focalPointSchema: z.ZodObject<{
3
+ x: z.ZodNumber;
4
+ y: z.ZodNumber;
5
+ }, z.core.$strip>;
6
+ export declare const imageAttachmentSchema: z.ZodObject<{
7
+ type: z.ZodLiteral<"image">;
8
+ href: z.ZodString;
9
+ properties: z.ZodOptional<z.ZodObject<{
10
+ description: z.ZodOptional<z.ZodString>;
11
+ decorative: z.ZodDefault<z.ZodBoolean>;
12
+ brightness: z.ZodOptional<z.ZodNumber>;
13
+ focalPoint: z.ZodOptional<z.ZodObject<{
14
+ x: z.ZodNumber;
15
+ y: z.ZodNumber;
16
+ }, z.core.$strip>>;
17
+ }, z.core.$strip>>;
18
+ }, z.core.$strip>;
19
+ export declare const videoAttachmentSchema: z.ZodObject<{
20
+ type: z.ZodLiteral<"video">;
21
+ href: z.ZodString;
22
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
23
+ 1: "1";
24
+ 0.4: "0.4";
25
+ 0.6: "0.6";
26
+ 0.8: "0.8";
27
+ }>>>;
28
+ properties: z.ZodOptional<z.ZodObject<{
29
+ description: z.ZodOptional<z.ZodString>;
30
+ decorative: z.ZodDefault<z.ZodBoolean>;
31
+ brightness: z.ZodOptional<z.ZodNumber>;
32
+ }, z.core.$strip>>;
33
+ }, z.core.$strip>;
34
+ export declare const colorAttachmentSchema: z.ZodObject<{
35
+ type: z.ZodLiteral<"color">;
36
+ value: z.ZodString;
37
+ }, z.core.$strip>;
38
+ export declare const gradientAttachmentSchema: z.ZodObject<{
39
+ type: z.ZodLiteral<"gradient">;
40
+ value: z.ZodString;
41
+ }, z.core.$strip>;
42
+ export declare const layoutAttachmentSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
43
+ type: z.ZodLiteral<"image">;
44
+ href: z.ZodString;
45
+ properties: z.ZodOptional<z.ZodObject<{
46
+ description: z.ZodOptional<z.ZodString>;
47
+ decorative: z.ZodDefault<z.ZodBoolean>;
48
+ brightness: z.ZodOptional<z.ZodNumber>;
49
+ focalPoint: z.ZodOptional<z.ZodObject<{
50
+ x: z.ZodNumber;
51
+ y: z.ZodNumber;
52
+ }, z.core.$strip>>;
53
+ }, z.core.$strip>>;
54
+ }, z.core.$strip>, z.ZodObject<{
55
+ type: z.ZodLiteral<"video">;
56
+ href: z.ZodString;
57
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
58
+ 1: "1";
59
+ 0.4: "0.4";
60
+ 0.6: "0.6";
61
+ 0.8: "0.8";
62
+ }>>>;
63
+ properties: z.ZodOptional<z.ZodObject<{
64
+ description: z.ZodOptional<z.ZodString>;
65
+ decorative: z.ZodDefault<z.ZodBoolean>;
66
+ brightness: z.ZodOptional<z.ZodNumber>;
67
+ }, z.core.$strip>>;
68
+ }, z.core.$strip>, z.ZodObject<{
69
+ type: z.ZodLiteral<"color">;
70
+ value: z.ZodString;
71
+ }, z.core.$strip>, z.ZodObject<{
72
+ type: z.ZodLiteral<"gradient">;
73
+ value: z.ZodString;
74
+ }, z.core.$strip>], "type">;
75
+ export declare const LayoutAttachmentTypes: {
76
+ readonly IMAGE: "image";
77
+ readonly VIDEO: "video";
78
+ readonly COLOR: "color";
79
+ readonly GRADIENT: "gradient";
80
+ };
81
+ /**
82
+ * stack — attachment fills the background behind the question content (full bleed).
83
+ * This is the default Typeform-like "hero behind question" treatment.
84
+ */
85
+ export declare const stackLayoutSchema: z.ZodObject<{
86
+ type: z.ZodLiteral<"stack">;
87
+ align: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
88
+ left: "left";
89
+ center: "center";
90
+ cover: "cover";
91
+ }>>>;
92
+ attachment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
93
+ type: z.ZodLiteral<"image">;
94
+ href: z.ZodString;
95
+ properties: z.ZodOptional<z.ZodObject<{
96
+ description: z.ZodOptional<z.ZodString>;
97
+ decorative: z.ZodDefault<z.ZodBoolean>;
98
+ brightness: z.ZodOptional<z.ZodNumber>;
99
+ focalPoint: z.ZodOptional<z.ZodObject<{
100
+ x: z.ZodNumber;
101
+ y: z.ZodNumber;
102
+ }, z.core.$strip>>;
103
+ }, z.core.$strip>>;
104
+ }, z.core.$strip>, z.ZodObject<{
105
+ type: z.ZodLiteral<"video">;
106
+ href: z.ZodString;
107
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
108
+ 1: "1";
109
+ 0.4: "0.4";
110
+ 0.6: "0.6";
111
+ 0.8: "0.8";
112
+ }>>>;
113
+ properties: z.ZodOptional<z.ZodObject<{
114
+ description: z.ZodOptional<z.ZodString>;
115
+ decorative: z.ZodDefault<z.ZodBoolean>;
116
+ brightness: z.ZodOptional<z.ZodNumber>;
117
+ }, z.core.$strip>>;
118
+ }, z.core.$strip>, z.ZodObject<{
119
+ type: z.ZodLiteral<"color">;
120
+ value: z.ZodString;
121
+ }, z.core.$strip>, z.ZodObject<{
122
+ type: z.ZodLiteral<"gradient">;
123
+ value: z.ZodString;
124
+ }, z.core.$strip>], "type">>;
125
+ }, z.core.$strip>;
126
+ /**
127
+ * float — attachment floats beside the question without splitting the viewport.
128
+ * The question content reflows around the media.
129
+ */
130
+ export declare const floatLayoutSchema: z.ZodObject<{
131
+ type: z.ZodLiteral<"float">;
132
+ placement: z.ZodEnum<{
133
+ left: "left";
134
+ right: "right";
135
+ }>;
136
+ attachment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
137
+ type: z.ZodLiteral<"image">;
138
+ href: z.ZodString;
139
+ properties: z.ZodOptional<z.ZodObject<{
140
+ description: z.ZodOptional<z.ZodString>;
141
+ decorative: z.ZodDefault<z.ZodBoolean>;
142
+ brightness: z.ZodOptional<z.ZodNumber>;
143
+ focalPoint: z.ZodOptional<z.ZodObject<{
144
+ x: z.ZodNumber;
145
+ y: z.ZodNumber;
146
+ }, z.core.$strip>>;
147
+ }, z.core.$strip>>;
148
+ }, z.core.$strip>, z.ZodObject<{
149
+ type: z.ZodLiteral<"video">;
150
+ href: z.ZodString;
151
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
152
+ 1: "1";
153
+ 0.4: "0.4";
154
+ 0.6: "0.6";
155
+ 0.8: "0.8";
156
+ }>>>;
157
+ properties: z.ZodOptional<z.ZodObject<{
158
+ description: z.ZodOptional<z.ZodString>;
159
+ decorative: z.ZodDefault<z.ZodBoolean>;
160
+ brightness: z.ZodOptional<z.ZodNumber>;
161
+ }, z.core.$strip>>;
162
+ }, z.core.$strip>, z.ZodObject<{
163
+ type: z.ZodLiteral<"color">;
164
+ value: z.ZodString;
165
+ }, z.core.$strip>, z.ZodObject<{
166
+ type: z.ZodLiteral<"gradient">;
167
+ value: z.ZodString;
168
+ }, z.core.$strip>], "type">>;
169
+ }, z.core.$strip>;
170
+ /**
171
+ * split — viewport is divided 50/50 between attachment and question content.
172
+ */
173
+ export declare const splitLayoutSchema: z.ZodObject<{
174
+ type: z.ZodLiteral<"split">;
175
+ placement: z.ZodEnum<{
176
+ left: "left";
177
+ right: "right";
178
+ }>;
179
+ attachment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
180
+ type: z.ZodLiteral<"image">;
181
+ href: z.ZodString;
182
+ properties: z.ZodOptional<z.ZodObject<{
183
+ description: z.ZodOptional<z.ZodString>;
184
+ decorative: z.ZodDefault<z.ZodBoolean>;
185
+ brightness: z.ZodOptional<z.ZodNumber>;
186
+ focalPoint: z.ZodOptional<z.ZodObject<{
187
+ x: z.ZodNumber;
188
+ y: z.ZodNumber;
189
+ }, z.core.$strip>>;
190
+ }, z.core.$strip>>;
191
+ }, z.core.$strip>, z.ZodObject<{
192
+ type: z.ZodLiteral<"video">;
193
+ href: z.ZodString;
194
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
195
+ 1: "1";
196
+ 0.4: "0.4";
197
+ 0.6: "0.6";
198
+ 0.8: "0.8";
199
+ }>>>;
200
+ properties: z.ZodOptional<z.ZodObject<{
201
+ description: z.ZodOptional<z.ZodString>;
202
+ decorative: z.ZodDefault<z.ZodBoolean>;
203
+ brightness: z.ZodOptional<z.ZodNumber>;
204
+ }, z.core.$strip>>;
205
+ }, z.core.$strip>, z.ZodObject<{
206
+ type: z.ZodLiteral<"color">;
207
+ value: z.ZodString;
208
+ }, z.core.$strip>, z.ZodObject<{
209
+ type: z.ZodLiteral<"gradient">;
210
+ value: z.ZodString;
211
+ }, z.core.$strip>], "type">>;
212
+ }, z.core.$strip>;
213
+ /**
214
+ * wallpaper — attachment tiles or stretches across the entire viewport as a
215
+ * full-page background, behind both the question and any chrome.
216
+ */
217
+ export declare const wallpaperLayoutSchema: z.ZodObject<{
218
+ type: z.ZodLiteral<"wallpaper">;
219
+ attachment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
220
+ type: z.ZodLiteral<"image">;
221
+ href: z.ZodString;
222
+ properties: z.ZodOptional<z.ZodObject<{
223
+ description: z.ZodOptional<z.ZodString>;
224
+ decorative: z.ZodDefault<z.ZodBoolean>;
225
+ brightness: z.ZodOptional<z.ZodNumber>;
226
+ focalPoint: z.ZodOptional<z.ZodObject<{
227
+ x: z.ZodNumber;
228
+ y: z.ZodNumber;
229
+ }, z.core.$strip>>;
230
+ }, z.core.$strip>>;
231
+ }, z.core.$strip>, z.ZodObject<{
232
+ type: z.ZodLiteral<"video">;
233
+ href: z.ZodString;
234
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
235
+ 1: "1";
236
+ 0.4: "0.4";
237
+ 0.6: "0.6";
238
+ 0.8: "0.8";
239
+ }>>>;
240
+ properties: z.ZodOptional<z.ZodObject<{
241
+ description: z.ZodOptional<z.ZodString>;
242
+ decorative: z.ZodDefault<z.ZodBoolean>;
243
+ brightness: z.ZodOptional<z.ZodNumber>;
244
+ }, z.core.$strip>>;
245
+ }, z.core.$strip>, z.ZodObject<{
246
+ type: z.ZodLiteral<"color">;
247
+ value: z.ZodString;
248
+ }, z.core.$strip>, z.ZodObject<{
249
+ type: z.ZodLiteral<"gradient">;
250
+ value: z.ZodString;
251
+ }, z.core.$strip>], "type">>;
252
+ }, z.core.$strip>;
253
+ export declare const sectionLayoutVariantSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
254
+ type: z.ZodLiteral<"stack">;
255
+ align: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
256
+ left: "left";
257
+ center: "center";
258
+ cover: "cover";
259
+ }>>>;
260
+ attachment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
261
+ type: z.ZodLiteral<"image">;
262
+ href: z.ZodString;
263
+ properties: z.ZodOptional<z.ZodObject<{
264
+ description: z.ZodOptional<z.ZodString>;
265
+ decorative: z.ZodDefault<z.ZodBoolean>;
266
+ brightness: z.ZodOptional<z.ZodNumber>;
267
+ focalPoint: z.ZodOptional<z.ZodObject<{
268
+ x: z.ZodNumber;
269
+ y: z.ZodNumber;
270
+ }, z.core.$strip>>;
271
+ }, z.core.$strip>>;
272
+ }, z.core.$strip>, z.ZodObject<{
273
+ type: z.ZodLiteral<"video">;
274
+ href: z.ZodString;
275
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
276
+ 1: "1";
277
+ 0.4: "0.4";
278
+ 0.6: "0.6";
279
+ 0.8: "0.8";
280
+ }>>>;
281
+ properties: z.ZodOptional<z.ZodObject<{
282
+ description: z.ZodOptional<z.ZodString>;
283
+ decorative: z.ZodDefault<z.ZodBoolean>;
284
+ brightness: z.ZodOptional<z.ZodNumber>;
285
+ }, z.core.$strip>>;
286
+ }, z.core.$strip>, z.ZodObject<{
287
+ type: z.ZodLiteral<"color">;
288
+ value: z.ZodString;
289
+ }, z.core.$strip>, z.ZodObject<{
290
+ type: z.ZodLiteral<"gradient">;
291
+ value: z.ZodString;
292
+ }, z.core.$strip>], "type">>;
293
+ }, z.core.$strip>, z.ZodObject<{
294
+ type: z.ZodLiteral<"float">;
295
+ placement: z.ZodEnum<{
296
+ left: "left";
297
+ right: "right";
298
+ }>;
299
+ attachment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
300
+ type: z.ZodLiteral<"image">;
301
+ href: z.ZodString;
302
+ properties: z.ZodOptional<z.ZodObject<{
303
+ description: z.ZodOptional<z.ZodString>;
304
+ decorative: z.ZodDefault<z.ZodBoolean>;
305
+ brightness: z.ZodOptional<z.ZodNumber>;
306
+ focalPoint: z.ZodOptional<z.ZodObject<{
307
+ x: z.ZodNumber;
308
+ y: z.ZodNumber;
309
+ }, z.core.$strip>>;
310
+ }, z.core.$strip>>;
311
+ }, z.core.$strip>, z.ZodObject<{
312
+ type: z.ZodLiteral<"video">;
313
+ href: z.ZodString;
314
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
315
+ 1: "1";
316
+ 0.4: "0.4";
317
+ 0.6: "0.6";
318
+ 0.8: "0.8";
319
+ }>>>;
320
+ properties: z.ZodOptional<z.ZodObject<{
321
+ description: z.ZodOptional<z.ZodString>;
322
+ decorative: z.ZodDefault<z.ZodBoolean>;
323
+ brightness: z.ZodOptional<z.ZodNumber>;
324
+ }, z.core.$strip>>;
325
+ }, z.core.$strip>, z.ZodObject<{
326
+ type: z.ZodLiteral<"color">;
327
+ value: z.ZodString;
328
+ }, z.core.$strip>, z.ZodObject<{
329
+ type: z.ZodLiteral<"gradient">;
330
+ value: z.ZodString;
331
+ }, z.core.$strip>], "type">>;
332
+ }, z.core.$strip>, z.ZodObject<{
333
+ type: z.ZodLiteral<"split">;
334
+ placement: z.ZodEnum<{
335
+ left: "left";
336
+ right: "right";
337
+ }>;
338
+ attachment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
339
+ type: z.ZodLiteral<"image">;
340
+ href: z.ZodString;
341
+ properties: z.ZodOptional<z.ZodObject<{
342
+ description: z.ZodOptional<z.ZodString>;
343
+ decorative: z.ZodDefault<z.ZodBoolean>;
344
+ brightness: z.ZodOptional<z.ZodNumber>;
345
+ focalPoint: z.ZodOptional<z.ZodObject<{
346
+ x: z.ZodNumber;
347
+ y: z.ZodNumber;
348
+ }, z.core.$strip>>;
349
+ }, z.core.$strip>>;
350
+ }, z.core.$strip>, z.ZodObject<{
351
+ type: z.ZodLiteral<"video">;
352
+ href: z.ZodString;
353
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
354
+ 1: "1";
355
+ 0.4: "0.4";
356
+ 0.6: "0.6";
357
+ 0.8: "0.8";
358
+ }>>>;
359
+ properties: z.ZodOptional<z.ZodObject<{
360
+ description: z.ZodOptional<z.ZodString>;
361
+ decorative: z.ZodDefault<z.ZodBoolean>;
362
+ brightness: z.ZodOptional<z.ZodNumber>;
363
+ }, z.core.$strip>>;
364
+ }, z.core.$strip>, z.ZodObject<{
365
+ type: z.ZodLiteral<"color">;
366
+ value: z.ZodString;
367
+ }, z.core.$strip>, z.ZodObject<{
368
+ type: z.ZodLiteral<"gradient">;
369
+ value: z.ZodString;
370
+ }, z.core.$strip>], "type">>;
371
+ }, z.core.$strip>, z.ZodObject<{
372
+ type: z.ZodLiteral<"wallpaper">;
373
+ attachment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
374
+ type: z.ZodLiteral<"image">;
375
+ href: z.ZodString;
376
+ properties: z.ZodOptional<z.ZodObject<{
377
+ description: z.ZodOptional<z.ZodString>;
378
+ decorative: z.ZodDefault<z.ZodBoolean>;
379
+ brightness: z.ZodOptional<z.ZodNumber>;
380
+ focalPoint: z.ZodOptional<z.ZodObject<{
381
+ x: z.ZodNumber;
382
+ y: z.ZodNumber;
383
+ }, z.core.$strip>>;
384
+ }, z.core.$strip>>;
385
+ }, z.core.$strip>, z.ZodObject<{
386
+ type: z.ZodLiteral<"video">;
387
+ href: z.ZodString;
388
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
389
+ 1: "1";
390
+ 0.4: "0.4";
391
+ 0.6: "0.6";
392
+ 0.8: "0.8";
393
+ }>>>;
394
+ properties: z.ZodOptional<z.ZodObject<{
395
+ description: z.ZodOptional<z.ZodString>;
396
+ decorative: z.ZodDefault<z.ZodBoolean>;
397
+ brightness: z.ZodOptional<z.ZodNumber>;
398
+ }, z.core.$strip>>;
399
+ }, z.core.$strip>, z.ZodObject<{
400
+ type: z.ZodLiteral<"color">;
401
+ value: z.ZodString;
402
+ }, z.core.$strip>, z.ZodObject<{
403
+ type: z.ZodLiteral<"gradient">;
404
+ value: z.ZodString;
405
+ }, z.core.$strip>], "type">>;
406
+ }, z.core.$strip>], "type">;
407
+ export declare const LayoutTypes: {
408
+ readonly STACK: "stack";
409
+ readonly FLOAT: "float";
410
+ readonly SPLIT: "split";
411
+ readonly WALLPAPER: "wallpaper";
412
+ };
413
+ /**
414
+ * A LayoutSurface is the full layout config for a single rendering surface
415
+ * (e.g. in-app, link/mobile, link/others).
416
+ *
417
+ * - attachment: optional top-level media shown inline alongside the question
418
+ * (distinct from the layout's inner attachment which controls positioning)
419
+ * - layout: required variant that controls how the inner attachment is placed
420
+ */
421
+ export declare const layoutSurfaceSchema: z.ZodObject<{
422
+ attachment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
423
+ type: z.ZodLiteral<"image">;
424
+ href: z.ZodString;
425
+ properties: z.ZodOptional<z.ZodObject<{
426
+ description: z.ZodOptional<z.ZodString>;
427
+ decorative: z.ZodDefault<z.ZodBoolean>;
428
+ brightness: z.ZodOptional<z.ZodNumber>;
429
+ focalPoint: z.ZodOptional<z.ZodObject<{
430
+ x: z.ZodNumber;
431
+ y: z.ZodNumber;
432
+ }, z.core.$strip>>;
433
+ }, z.core.$strip>>;
434
+ }, z.core.$strip>, z.ZodObject<{
435
+ type: z.ZodLiteral<"video">;
436
+ href: z.ZodString;
437
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
438
+ 1: "1";
439
+ 0.4: "0.4";
440
+ 0.6: "0.6";
441
+ 0.8: "0.8";
442
+ }>>>;
443
+ properties: z.ZodOptional<z.ZodObject<{
444
+ description: z.ZodOptional<z.ZodString>;
445
+ decorative: z.ZodDefault<z.ZodBoolean>;
446
+ brightness: z.ZodOptional<z.ZodNumber>;
447
+ }, z.core.$strip>>;
448
+ }, z.core.$strip>, z.ZodObject<{
449
+ type: z.ZodLiteral<"color">;
450
+ value: z.ZodString;
451
+ }, z.core.$strip>, z.ZodObject<{
452
+ type: z.ZodLiteral<"gradient">;
453
+ value: z.ZodString;
454
+ }, z.core.$strip>], "type">>;
455
+ layout: z.ZodDiscriminatedUnion<[z.ZodObject<{
456
+ type: z.ZodLiteral<"stack">;
457
+ align: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
458
+ left: "left";
459
+ center: "center";
460
+ cover: "cover";
461
+ }>>>;
462
+ attachment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
463
+ type: z.ZodLiteral<"image">;
464
+ href: z.ZodString;
465
+ properties: z.ZodOptional<z.ZodObject<{
466
+ description: z.ZodOptional<z.ZodString>;
467
+ decorative: z.ZodDefault<z.ZodBoolean>;
468
+ brightness: z.ZodOptional<z.ZodNumber>;
469
+ focalPoint: z.ZodOptional<z.ZodObject<{
470
+ x: z.ZodNumber;
471
+ y: z.ZodNumber;
472
+ }, z.core.$strip>>;
473
+ }, z.core.$strip>>;
474
+ }, z.core.$strip>, z.ZodObject<{
475
+ type: z.ZodLiteral<"video">;
476
+ href: z.ZodString;
477
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
478
+ 1: "1";
479
+ 0.4: "0.4";
480
+ 0.6: "0.6";
481
+ 0.8: "0.8";
482
+ }>>>;
483
+ properties: z.ZodOptional<z.ZodObject<{
484
+ description: z.ZodOptional<z.ZodString>;
485
+ decorative: z.ZodDefault<z.ZodBoolean>;
486
+ brightness: z.ZodOptional<z.ZodNumber>;
487
+ }, z.core.$strip>>;
488
+ }, z.core.$strip>, z.ZodObject<{
489
+ type: z.ZodLiteral<"color">;
490
+ value: z.ZodString;
491
+ }, z.core.$strip>, z.ZodObject<{
492
+ type: z.ZodLiteral<"gradient">;
493
+ value: z.ZodString;
494
+ }, z.core.$strip>], "type">>;
495
+ }, z.core.$strip>, z.ZodObject<{
496
+ type: z.ZodLiteral<"float">;
497
+ placement: z.ZodEnum<{
498
+ left: "left";
499
+ right: "right";
500
+ }>;
501
+ attachment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
502
+ type: z.ZodLiteral<"image">;
503
+ href: z.ZodString;
504
+ properties: z.ZodOptional<z.ZodObject<{
505
+ description: z.ZodOptional<z.ZodString>;
506
+ decorative: z.ZodDefault<z.ZodBoolean>;
507
+ brightness: z.ZodOptional<z.ZodNumber>;
508
+ focalPoint: z.ZodOptional<z.ZodObject<{
509
+ x: z.ZodNumber;
510
+ y: z.ZodNumber;
511
+ }, z.core.$strip>>;
512
+ }, z.core.$strip>>;
513
+ }, z.core.$strip>, z.ZodObject<{
514
+ type: z.ZodLiteral<"video">;
515
+ href: z.ZodString;
516
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
517
+ 1: "1";
518
+ 0.4: "0.4";
519
+ 0.6: "0.6";
520
+ 0.8: "0.8";
521
+ }>>>;
522
+ properties: z.ZodOptional<z.ZodObject<{
523
+ description: z.ZodOptional<z.ZodString>;
524
+ decorative: z.ZodDefault<z.ZodBoolean>;
525
+ brightness: z.ZodOptional<z.ZodNumber>;
526
+ }, z.core.$strip>>;
527
+ }, z.core.$strip>, z.ZodObject<{
528
+ type: z.ZodLiteral<"color">;
529
+ value: z.ZodString;
530
+ }, z.core.$strip>, z.ZodObject<{
531
+ type: z.ZodLiteral<"gradient">;
532
+ value: z.ZodString;
533
+ }, z.core.$strip>], "type">>;
534
+ }, z.core.$strip>, z.ZodObject<{
535
+ type: z.ZodLiteral<"split">;
536
+ placement: z.ZodEnum<{
537
+ left: "left";
538
+ right: "right";
539
+ }>;
540
+ attachment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
541
+ type: z.ZodLiteral<"image">;
542
+ href: z.ZodString;
543
+ properties: z.ZodOptional<z.ZodObject<{
544
+ description: z.ZodOptional<z.ZodString>;
545
+ decorative: z.ZodDefault<z.ZodBoolean>;
546
+ brightness: z.ZodOptional<z.ZodNumber>;
547
+ focalPoint: z.ZodOptional<z.ZodObject<{
548
+ x: z.ZodNumber;
549
+ y: z.ZodNumber;
550
+ }, z.core.$strip>>;
551
+ }, z.core.$strip>>;
552
+ }, z.core.$strip>, z.ZodObject<{
553
+ type: z.ZodLiteral<"video">;
554
+ href: z.ZodString;
555
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
556
+ 1: "1";
557
+ 0.4: "0.4";
558
+ 0.6: "0.6";
559
+ 0.8: "0.8";
560
+ }>>>;
561
+ properties: z.ZodOptional<z.ZodObject<{
562
+ description: z.ZodOptional<z.ZodString>;
563
+ decorative: z.ZodDefault<z.ZodBoolean>;
564
+ brightness: z.ZodOptional<z.ZodNumber>;
565
+ }, z.core.$strip>>;
566
+ }, z.core.$strip>, z.ZodObject<{
567
+ type: z.ZodLiteral<"color">;
568
+ value: z.ZodString;
569
+ }, z.core.$strip>, z.ZodObject<{
570
+ type: z.ZodLiteral<"gradient">;
571
+ value: z.ZodString;
572
+ }, z.core.$strip>], "type">>;
573
+ }, z.core.$strip>, z.ZodObject<{
574
+ type: z.ZodLiteral<"wallpaper">;
575
+ attachment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
576
+ type: z.ZodLiteral<"image">;
577
+ href: z.ZodString;
578
+ properties: z.ZodOptional<z.ZodObject<{
579
+ description: z.ZodOptional<z.ZodString>;
580
+ decorative: z.ZodDefault<z.ZodBoolean>;
581
+ brightness: z.ZodOptional<z.ZodNumber>;
582
+ focalPoint: z.ZodOptional<z.ZodObject<{
583
+ x: z.ZodNumber;
584
+ y: z.ZodNumber;
585
+ }, z.core.$strip>>;
586
+ }, z.core.$strip>>;
587
+ }, z.core.$strip>, z.ZodObject<{
588
+ type: z.ZodLiteral<"video">;
589
+ href: z.ZodString;
590
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
591
+ 1: "1";
592
+ 0.4: "0.4";
593
+ 0.6: "0.6";
594
+ 0.8: "0.8";
595
+ }>>>;
596
+ properties: z.ZodOptional<z.ZodObject<{
597
+ description: z.ZodOptional<z.ZodString>;
598
+ decorative: z.ZodDefault<z.ZodBoolean>;
599
+ brightness: z.ZodOptional<z.ZodNumber>;
600
+ }, z.core.$strip>>;
601
+ }, z.core.$strip>, z.ZodObject<{
602
+ type: z.ZodLiteral<"color">;
603
+ value: z.ZodString;
604
+ }, z.core.$strip>, z.ZodObject<{
605
+ type: z.ZodLiteral<"gradient">;
606
+ value: z.ZodString;
607
+ }, z.core.$strip>], "type">>;
608
+ }, z.core.$strip>], "type">;
609
+ }, z.core.$strip>;
610
+ /**
611
+ * Per-section layout config scoped to two channels:
612
+ * - inApp: native app or in-app webview
613
+ * - link: shareable/link-based form, split into mobile (phones) and others (tablet + desktop)
614
+ *
615
+ * All fields are optional. When absent for a surface, the engine renders with no custom layout.
616
+ *
617
+ * Merge precedence (per surface):
618
+ * sectionLayouts[id] > sectionLayoutDefaults > engine default (no layout)
619
+ */
620
+ export declare const sectionLayoutSchema: z.ZodObject<{
621
+ inApp: z.ZodOptional<z.ZodObject<{
622
+ attachment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
623
+ type: z.ZodLiteral<"image">;
624
+ href: z.ZodString;
625
+ properties: z.ZodOptional<z.ZodObject<{
626
+ description: z.ZodOptional<z.ZodString>;
627
+ decorative: z.ZodDefault<z.ZodBoolean>;
628
+ brightness: z.ZodOptional<z.ZodNumber>;
629
+ focalPoint: z.ZodOptional<z.ZodObject<{
630
+ x: z.ZodNumber;
631
+ y: z.ZodNumber;
632
+ }, z.core.$strip>>;
633
+ }, z.core.$strip>>;
634
+ }, z.core.$strip>, z.ZodObject<{
635
+ type: z.ZodLiteral<"video">;
636
+ href: z.ZodString;
637
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
638
+ 1: "1";
639
+ 0.4: "0.4";
640
+ 0.6: "0.6";
641
+ 0.8: "0.8";
642
+ }>>>;
643
+ properties: z.ZodOptional<z.ZodObject<{
644
+ description: z.ZodOptional<z.ZodString>;
645
+ decorative: z.ZodDefault<z.ZodBoolean>;
646
+ brightness: z.ZodOptional<z.ZodNumber>;
647
+ }, z.core.$strip>>;
648
+ }, z.core.$strip>, z.ZodObject<{
649
+ type: z.ZodLiteral<"color">;
650
+ value: z.ZodString;
651
+ }, z.core.$strip>, z.ZodObject<{
652
+ type: z.ZodLiteral<"gradient">;
653
+ value: z.ZodString;
654
+ }, z.core.$strip>], "type">>;
655
+ layout: z.ZodDiscriminatedUnion<[z.ZodObject<{
656
+ type: z.ZodLiteral<"stack">;
657
+ align: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
658
+ left: "left";
659
+ center: "center";
660
+ cover: "cover";
661
+ }>>>;
662
+ attachment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
663
+ type: z.ZodLiteral<"image">;
664
+ href: z.ZodString;
665
+ properties: z.ZodOptional<z.ZodObject<{
666
+ description: z.ZodOptional<z.ZodString>;
667
+ decorative: z.ZodDefault<z.ZodBoolean>;
668
+ brightness: z.ZodOptional<z.ZodNumber>;
669
+ focalPoint: z.ZodOptional<z.ZodObject<{
670
+ x: z.ZodNumber;
671
+ y: z.ZodNumber;
672
+ }, z.core.$strip>>;
673
+ }, z.core.$strip>>;
674
+ }, z.core.$strip>, z.ZodObject<{
675
+ type: z.ZodLiteral<"video">;
676
+ href: z.ZodString;
677
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
678
+ 1: "1";
679
+ 0.4: "0.4";
680
+ 0.6: "0.6";
681
+ 0.8: "0.8";
682
+ }>>>;
683
+ properties: z.ZodOptional<z.ZodObject<{
684
+ description: z.ZodOptional<z.ZodString>;
685
+ decorative: z.ZodDefault<z.ZodBoolean>;
686
+ brightness: z.ZodOptional<z.ZodNumber>;
687
+ }, z.core.$strip>>;
688
+ }, z.core.$strip>, z.ZodObject<{
689
+ type: z.ZodLiteral<"color">;
690
+ value: z.ZodString;
691
+ }, z.core.$strip>, z.ZodObject<{
692
+ type: z.ZodLiteral<"gradient">;
693
+ value: z.ZodString;
694
+ }, z.core.$strip>], "type">>;
695
+ }, z.core.$strip>, z.ZodObject<{
696
+ type: z.ZodLiteral<"float">;
697
+ placement: z.ZodEnum<{
698
+ left: "left";
699
+ right: "right";
700
+ }>;
701
+ attachment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
702
+ type: z.ZodLiteral<"image">;
703
+ href: z.ZodString;
704
+ properties: z.ZodOptional<z.ZodObject<{
705
+ description: z.ZodOptional<z.ZodString>;
706
+ decorative: z.ZodDefault<z.ZodBoolean>;
707
+ brightness: z.ZodOptional<z.ZodNumber>;
708
+ focalPoint: z.ZodOptional<z.ZodObject<{
709
+ x: z.ZodNumber;
710
+ y: z.ZodNumber;
711
+ }, z.core.$strip>>;
712
+ }, z.core.$strip>>;
713
+ }, z.core.$strip>, z.ZodObject<{
714
+ type: z.ZodLiteral<"video">;
715
+ href: z.ZodString;
716
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
717
+ 1: "1";
718
+ 0.4: "0.4";
719
+ 0.6: "0.6";
720
+ 0.8: "0.8";
721
+ }>>>;
722
+ properties: z.ZodOptional<z.ZodObject<{
723
+ description: z.ZodOptional<z.ZodString>;
724
+ decorative: z.ZodDefault<z.ZodBoolean>;
725
+ brightness: z.ZodOptional<z.ZodNumber>;
726
+ }, z.core.$strip>>;
727
+ }, z.core.$strip>, z.ZodObject<{
728
+ type: z.ZodLiteral<"color">;
729
+ value: z.ZodString;
730
+ }, z.core.$strip>, z.ZodObject<{
731
+ type: z.ZodLiteral<"gradient">;
732
+ value: z.ZodString;
733
+ }, z.core.$strip>], "type">>;
734
+ }, z.core.$strip>, z.ZodObject<{
735
+ type: z.ZodLiteral<"split">;
736
+ placement: z.ZodEnum<{
737
+ left: "left";
738
+ right: "right";
739
+ }>;
740
+ attachment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
741
+ type: z.ZodLiteral<"image">;
742
+ href: z.ZodString;
743
+ properties: z.ZodOptional<z.ZodObject<{
744
+ description: z.ZodOptional<z.ZodString>;
745
+ decorative: z.ZodDefault<z.ZodBoolean>;
746
+ brightness: z.ZodOptional<z.ZodNumber>;
747
+ focalPoint: z.ZodOptional<z.ZodObject<{
748
+ x: z.ZodNumber;
749
+ y: z.ZodNumber;
750
+ }, z.core.$strip>>;
751
+ }, z.core.$strip>>;
752
+ }, z.core.$strip>, z.ZodObject<{
753
+ type: z.ZodLiteral<"video">;
754
+ href: z.ZodString;
755
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
756
+ 1: "1";
757
+ 0.4: "0.4";
758
+ 0.6: "0.6";
759
+ 0.8: "0.8";
760
+ }>>>;
761
+ properties: z.ZodOptional<z.ZodObject<{
762
+ description: z.ZodOptional<z.ZodString>;
763
+ decorative: z.ZodDefault<z.ZodBoolean>;
764
+ brightness: z.ZodOptional<z.ZodNumber>;
765
+ }, z.core.$strip>>;
766
+ }, z.core.$strip>, z.ZodObject<{
767
+ type: z.ZodLiteral<"color">;
768
+ value: z.ZodString;
769
+ }, z.core.$strip>, z.ZodObject<{
770
+ type: z.ZodLiteral<"gradient">;
771
+ value: z.ZodString;
772
+ }, z.core.$strip>], "type">>;
773
+ }, z.core.$strip>, z.ZodObject<{
774
+ type: z.ZodLiteral<"wallpaper">;
775
+ attachment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
776
+ type: z.ZodLiteral<"image">;
777
+ href: z.ZodString;
778
+ properties: z.ZodOptional<z.ZodObject<{
779
+ description: z.ZodOptional<z.ZodString>;
780
+ decorative: z.ZodDefault<z.ZodBoolean>;
781
+ brightness: z.ZodOptional<z.ZodNumber>;
782
+ focalPoint: z.ZodOptional<z.ZodObject<{
783
+ x: z.ZodNumber;
784
+ y: z.ZodNumber;
785
+ }, z.core.$strip>>;
786
+ }, z.core.$strip>>;
787
+ }, z.core.$strip>, z.ZodObject<{
788
+ type: z.ZodLiteral<"video">;
789
+ href: z.ZodString;
790
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
791
+ 1: "1";
792
+ 0.4: "0.4";
793
+ 0.6: "0.6";
794
+ 0.8: "0.8";
795
+ }>>>;
796
+ properties: z.ZodOptional<z.ZodObject<{
797
+ description: z.ZodOptional<z.ZodString>;
798
+ decorative: z.ZodDefault<z.ZodBoolean>;
799
+ brightness: z.ZodOptional<z.ZodNumber>;
800
+ }, z.core.$strip>>;
801
+ }, z.core.$strip>, z.ZodObject<{
802
+ type: z.ZodLiteral<"color">;
803
+ value: z.ZodString;
804
+ }, z.core.$strip>, z.ZodObject<{
805
+ type: z.ZodLiteral<"gradient">;
806
+ value: z.ZodString;
807
+ }, z.core.$strip>], "type">>;
808
+ }, z.core.$strip>], "type">;
809
+ }, z.core.$strip>>;
810
+ link: z.ZodOptional<z.ZodObject<{
811
+ mobile: z.ZodOptional<z.ZodObject<{
812
+ attachment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
813
+ type: z.ZodLiteral<"image">;
814
+ href: z.ZodString;
815
+ properties: z.ZodOptional<z.ZodObject<{
816
+ description: z.ZodOptional<z.ZodString>;
817
+ decorative: z.ZodDefault<z.ZodBoolean>;
818
+ brightness: z.ZodOptional<z.ZodNumber>;
819
+ focalPoint: z.ZodOptional<z.ZodObject<{
820
+ x: z.ZodNumber;
821
+ y: z.ZodNumber;
822
+ }, z.core.$strip>>;
823
+ }, z.core.$strip>>;
824
+ }, z.core.$strip>, z.ZodObject<{
825
+ type: z.ZodLiteral<"video">;
826
+ href: z.ZodString;
827
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
828
+ 1: "1";
829
+ 0.4: "0.4";
830
+ 0.6: "0.6";
831
+ 0.8: "0.8";
832
+ }>>>;
833
+ properties: z.ZodOptional<z.ZodObject<{
834
+ description: z.ZodOptional<z.ZodString>;
835
+ decorative: z.ZodDefault<z.ZodBoolean>;
836
+ brightness: z.ZodOptional<z.ZodNumber>;
837
+ }, z.core.$strip>>;
838
+ }, z.core.$strip>, z.ZodObject<{
839
+ type: z.ZodLiteral<"color">;
840
+ value: z.ZodString;
841
+ }, z.core.$strip>, z.ZodObject<{
842
+ type: z.ZodLiteral<"gradient">;
843
+ value: z.ZodString;
844
+ }, z.core.$strip>], "type">>;
845
+ layout: z.ZodDiscriminatedUnion<[z.ZodObject<{
846
+ type: z.ZodLiteral<"stack">;
847
+ align: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
848
+ left: "left";
849
+ center: "center";
850
+ cover: "cover";
851
+ }>>>;
852
+ attachment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
853
+ type: z.ZodLiteral<"image">;
854
+ href: z.ZodString;
855
+ properties: z.ZodOptional<z.ZodObject<{
856
+ description: z.ZodOptional<z.ZodString>;
857
+ decorative: z.ZodDefault<z.ZodBoolean>;
858
+ brightness: z.ZodOptional<z.ZodNumber>;
859
+ focalPoint: z.ZodOptional<z.ZodObject<{
860
+ x: z.ZodNumber;
861
+ y: z.ZodNumber;
862
+ }, z.core.$strip>>;
863
+ }, z.core.$strip>>;
864
+ }, z.core.$strip>, z.ZodObject<{
865
+ type: z.ZodLiteral<"video">;
866
+ href: z.ZodString;
867
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
868
+ 1: "1";
869
+ 0.4: "0.4";
870
+ 0.6: "0.6";
871
+ 0.8: "0.8";
872
+ }>>>;
873
+ properties: z.ZodOptional<z.ZodObject<{
874
+ description: z.ZodOptional<z.ZodString>;
875
+ decorative: z.ZodDefault<z.ZodBoolean>;
876
+ brightness: z.ZodOptional<z.ZodNumber>;
877
+ }, z.core.$strip>>;
878
+ }, z.core.$strip>, z.ZodObject<{
879
+ type: z.ZodLiteral<"color">;
880
+ value: z.ZodString;
881
+ }, z.core.$strip>, z.ZodObject<{
882
+ type: z.ZodLiteral<"gradient">;
883
+ value: z.ZodString;
884
+ }, z.core.$strip>], "type">>;
885
+ }, z.core.$strip>, z.ZodObject<{
886
+ type: z.ZodLiteral<"float">;
887
+ placement: z.ZodEnum<{
888
+ left: "left";
889
+ right: "right";
890
+ }>;
891
+ attachment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
892
+ type: z.ZodLiteral<"image">;
893
+ href: z.ZodString;
894
+ properties: z.ZodOptional<z.ZodObject<{
895
+ description: z.ZodOptional<z.ZodString>;
896
+ decorative: z.ZodDefault<z.ZodBoolean>;
897
+ brightness: z.ZodOptional<z.ZodNumber>;
898
+ focalPoint: z.ZodOptional<z.ZodObject<{
899
+ x: z.ZodNumber;
900
+ y: z.ZodNumber;
901
+ }, z.core.$strip>>;
902
+ }, z.core.$strip>>;
903
+ }, z.core.$strip>, z.ZodObject<{
904
+ type: z.ZodLiteral<"video">;
905
+ href: z.ZodString;
906
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
907
+ 1: "1";
908
+ 0.4: "0.4";
909
+ 0.6: "0.6";
910
+ 0.8: "0.8";
911
+ }>>>;
912
+ properties: z.ZodOptional<z.ZodObject<{
913
+ description: z.ZodOptional<z.ZodString>;
914
+ decorative: z.ZodDefault<z.ZodBoolean>;
915
+ brightness: z.ZodOptional<z.ZodNumber>;
916
+ }, z.core.$strip>>;
917
+ }, z.core.$strip>, z.ZodObject<{
918
+ type: z.ZodLiteral<"color">;
919
+ value: z.ZodString;
920
+ }, z.core.$strip>, z.ZodObject<{
921
+ type: z.ZodLiteral<"gradient">;
922
+ value: z.ZodString;
923
+ }, z.core.$strip>], "type">>;
924
+ }, z.core.$strip>, z.ZodObject<{
925
+ type: z.ZodLiteral<"split">;
926
+ placement: z.ZodEnum<{
927
+ left: "left";
928
+ right: "right";
929
+ }>;
930
+ attachment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
931
+ type: z.ZodLiteral<"image">;
932
+ href: z.ZodString;
933
+ properties: z.ZodOptional<z.ZodObject<{
934
+ description: z.ZodOptional<z.ZodString>;
935
+ decorative: z.ZodDefault<z.ZodBoolean>;
936
+ brightness: z.ZodOptional<z.ZodNumber>;
937
+ focalPoint: z.ZodOptional<z.ZodObject<{
938
+ x: z.ZodNumber;
939
+ y: z.ZodNumber;
940
+ }, z.core.$strip>>;
941
+ }, z.core.$strip>>;
942
+ }, z.core.$strip>, z.ZodObject<{
943
+ type: z.ZodLiteral<"video">;
944
+ href: z.ZodString;
945
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
946
+ 1: "1";
947
+ 0.4: "0.4";
948
+ 0.6: "0.6";
949
+ 0.8: "0.8";
950
+ }>>>;
951
+ properties: z.ZodOptional<z.ZodObject<{
952
+ description: z.ZodOptional<z.ZodString>;
953
+ decorative: z.ZodDefault<z.ZodBoolean>;
954
+ brightness: z.ZodOptional<z.ZodNumber>;
955
+ }, z.core.$strip>>;
956
+ }, z.core.$strip>, z.ZodObject<{
957
+ type: z.ZodLiteral<"color">;
958
+ value: z.ZodString;
959
+ }, z.core.$strip>, z.ZodObject<{
960
+ type: z.ZodLiteral<"gradient">;
961
+ value: z.ZodString;
962
+ }, z.core.$strip>], "type">>;
963
+ }, z.core.$strip>, z.ZodObject<{
964
+ type: z.ZodLiteral<"wallpaper">;
965
+ attachment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
966
+ type: z.ZodLiteral<"image">;
967
+ href: z.ZodString;
968
+ properties: z.ZodOptional<z.ZodObject<{
969
+ description: z.ZodOptional<z.ZodString>;
970
+ decorative: z.ZodDefault<z.ZodBoolean>;
971
+ brightness: z.ZodOptional<z.ZodNumber>;
972
+ focalPoint: z.ZodOptional<z.ZodObject<{
973
+ x: z.ZodNumber;
974
+ y: z.ZodNumber;
975
+ }, z.core.$strip>>;
976
+ }, z.core.$strip>>;
977
+ }, z.core.$strip>, z.ZodObject<{
978
+ type: z.ZodLiteral<"video">;
979
+ href: z.ZodString;
980
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
981
+ 1: "1";
982
+ 0.4: "0.4";
983
+ 0.6: "0.6";
984
+ 0.8: "0.8";
985
+ }>>>;
986
+ properties: z.ZodOptional<z.ZodObject<{
987
+ description: z.ZodOptional<z.ZodString>;
988
+ decorative: z.ZodDefault<z.ZodBoolean>;
989
+ brightness: z.ZodOptional<z.ZodNumber>;
990
+ }, z.core.$strip>>;
991
+ }, z.core.$strip>, z.ZodObject<{
992
+ type: z.ZodLiteral<"color">;
993
+ value: z.ZodString;
994
+ }, z.core.$strip>, z.ZodObject<{
995
+ type: z.ZodLiteral<"gradient">;
996
+ value: z.ZodString;
997
+ }, z.core.$strip>], "type">>;
998
+ }, z.core.$strip>], "type">;
999
+ }, z.core.$strip>>;
1000
+ others: z.ZodOptional<z.ZodObject<{
1001
+ attachment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
1002
+ type: z.ZodLiteral<"image">;
1003
+ href: z.ZodString;
1004
+ properties: z.ZodOptional<z.ZodObject<{
1005
+ description: z.ZodOptional<z.ZodString>;
1006
+ decorative: z.ZodDefault<z.ZodBoolean>;
1007
+ brightness: z.ZodOptional<z.ZodNumber>;
1008
+ focalPoint: z.ZodOptional<z.ZodObject<{
1009
+ x: z.ZodNumber;
1010
+ y: z.ZodNumber;
1011
+ }, z.core.$strip>>;
1012
+ }, z.core.$strip>>;
1013
+ }, z.core.$strip>, z.ZodObject<{
1014
+ type: z.ZodLiteral<"video">;
1015
+ href: z.ZodString;
1016
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
1017
+ 1: "1";
1018
+ 0.4: "0.4";
1019
+ 0.6: "0.6";
1020
+ 0.8: "0.8";
1021
+ }>>>;
1022
+ properties: z.ZodOptional<z.ZodObject<{
1023
+ description: z.ZodOptional<z.ZodString>;
1024
+ decorative: z.ZodDefault<z.ZodBoolean>;
1025
+ brightness: z.ZodOptional<z.ZodNumber>;
1026
+ }, z.core.$strip>>;
1027
+ }, z.core.$strip>, z.ZodObject<{
1028
+ type: z.ZodLiteral<"color">;
1029
+ value: z.ZodString;
1030
+ }, z.core.$strip>, z.ZodObject<{
1031
+ type: z.ZodLiteral<"gradient">;
1032
+ value: z.ZodString;
1033
+ }, z.core.$strip>], "type">>;
1034
+ layout: z.ZodDiscriminatedUnion<[z.ZodObject<{
1035
+ type: z.ZodLiteral<"stack">;
1036
+ align: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
1037
+ left: "left";
1038
+ center: "center";
1039
+ cover: "cover";
1040
+ }>>>;
1041
+ attachment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
1042
+ type: z.ZodLiteral<"image">;
1043
+ href: z.ZodString;
1044
+ properties: z.ZodOptional<z.ZodObject<{
1045
+ description: z.ZodOptional<z.ZodString>;
1046
+ decorative: z.ZodDefault<z.ZodBoolean>;
1047
+ brightness: z.ZodOptional<z.ZodNumber>;
1048
+ focalPoint: z.ZodOptional<z.ZodObject<{
1049
+ x: z.ZodNumber;
1050
+ y: z.ZodNumber;
1051
+ }, z.core.$strip>>;
1052
+ }, z.core.$strip>>;
1053
+ }, z.core.$strip>, z.ZodObject<{
1054
+ type: z.ZodLiteral<"video">;
1055
+ href: z.ZodString;
1056
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
1057
+ 1: "1";
1058
+ 0.4: "0.4";
1059
+ 0.6: "0.6";
1060
+ 0.8: "0.8";
1061
+ }>>>;
1062
+ properties: z.ZodOptional<z.ZodObject<{
1063
+ description: z.ZodOptional<z.ZodString>;
1064
+ decorative: z.ZodDefault<z.ZodBoolean>;
1065
+ brightness: z.ZodOptional<z.ZodNumber>;
1066
+ }, z.core.$strip>>;
1067
+ }, z.core.$strip>, z.ZodObject<{
1068
+ type: z.ZodLiteral<"color">;
1069
+ value: z.ZodString;
1070
+ }, z.core.$strip>, z.ZodObject<{
1071
+ type: z.ZodLiteral<"gradient">;
1072
+ value: z.ZodString;
1073
+ }, z.core.$strip>], "type">>;
1074
+ }, z.core.$strip>, z.ZodObject<{
1075
+ type: z.ZodLiteral<"float">;
1076
+ placement: z.ZodEnum<{
1077
+ left: "left";
1078
+ right: "right";
1079
+ }>;
1080
+ attachment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
1081
+ type: z.ZodLiteral<"image">;
1082
+ href: z.ZodString;
1083
+ properties: z.ZodOptional<z.ZodObject<{
1084
+ description: z.ZodOptional<z.ZodString>;
1085
+ decorative: z.ZodDefault<z.ZodBoolean>;
1086
+ brightness: z.ZodOptional<z.ZodNumber>;
1087
+ focalPoint: z.ZodOptional<z.ZodObject<{
1088
+ x: z.ZodNumber;
1089
+ y: z.ZodNumber;
1090
+ }, z.core.$strip>>;
1091
+ }, z.core.$strip>>;
1092
+ }, z.core.$strip>, z.ZodObject<{
1093
+ type: z.ZodLiteral<"video">;
1094
+ href: z.ZodString;
1095
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
1096
+ 1: "1";
1097
+ 0.4: "0.4";
1098
+ 0.6: "0.6";
1099
+ 0.8: "0.8";
1100
+ }>>>;
1101
+ properties: z.ZodOptional<z.ZodObject<{
1102
+ description: z.ZodOptional<z.ZodString>;
1103
+ decorative: z.ZodDefault<z.ZodBoolean>;
1104
+ brightness: z.ZodOptional<z.ZodNumber>;
1105
+ }, z.core.$strip>>;
1106
+ }, z.core.$strip>, z.ZodObject<{
1107
+ type: z.ZodLiteral<"color">;
1108
+ value: z.ZodString;
1109
+ }, z.core.$strip>, z.ZodObject<{
1110
+ type: z.ZodLiteral<"gradient">;
1111
+ value: z.ZodString;
1112
+ }, z.core.$strip>], "type">>;
1113
+ }, z.core.$strip>, z.ZodObject<{
1114
+ type: z.ZodLiteral<"split">;
1115
+ placement: z.ZodEnum<{
1116
+ left: "left";
1117
+ right: "right";
1118
+ }>;
1119
+ attachment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
1120
+ type: z.ZodLiteral<"image">;
1121
+ href: z.ZodString;
1122
+ properties: z.ZodOptional<z.ZodObject<{
1123
+ description: z.ZodOptional<z.ZodString>;
1124
+ decorative: z.ZodDefault<z.ZodBoolean>;
1125
+ brightness: z.ZodOptional<z.ZodNumber>;
1126
+ focalPoint: z.ZodOptional<z.ZodObject<{
1127
+ x: z.ZodNumber;
1128
+ y: z.ZodNumber;
1129
+ }, z.core.$strip>>;
1130
+ }, z.core.$strip>>;
1131
+ }, z.core.$strip>, z.ZodObject<{
1132
+ type: z.ZodLiteral<"video">;
1133
+ href: z.ZodString;
1134
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
1135
+ 1: "1";
1136
+ 0.4: "0.4";
1137
+ 0.6: "0.6";
1138
+ 0.8: "0.8";
1139
+ }>>>;
1140
+ properties: z.ZodOptional<z.ZodObject<{
1141
+ description: z.ZodOptional<z.ZodString>;
1142
+ decorative: z.ZodDefault<z.ZodBoolean>;
1143
+ brightness: z.ZodOptional<z.ZodNumber>;
1144
+ }, z.core.$strip>>;
1145
+ }, z.core.$strip>, z.ZodObject<{
1146
+ type: z.ZodLiteral<"color">;
1147
+ value: z.ZodString;
1148
+ }, z.core.$strip>, z.ZodObject<{
1149
+ type: z.ZodLiteral<"gradient">;
1150
+ value: z.ZodString;
1151
+ }, z.core.$strip>], "type">>;
1152
+ }, z.core.$strip>, z.ZodObject<{
1153
+ type: z.ZodLiteral<"wallpaper">;
1154
+ attachment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
1155
+ type: z.ZodLiteral<"image">;
1156
+ href: z.ZodString;
1157
+ properties: z.ZodOptional<z.ZodObject<{
1158
+ description: z.ZodOptional<z.ZodString>;
1159
+ decorative: z.ZodDefault<z.ZodBoolean>;
1160
+ brightness: z.ZodOptional<z.ZodNumber>;
1161
+ focalPoint: z.ZodOptional<z.ZodObject<{
1162
+ x: z.ZodNumber;
1163
+ y: z.ZodNumber;
1164
+ }, z.core.$strip>>;
1165
+ }, z.core.$strip>>;
1166
+ }, z.core.$strip>, z.ZodObject<{
1167
+ type: z.ZodLiteral<"video">;
1168
+ href: z.ZodString;
1169
+ scale: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
1170
+ 1: "1";
1171
+ 0.4: "0.4";
1172
+ 0.6: "0.6";
1173
+ 0.8: "0.8";
1174
+ }>>>;
1175
+ properties: z.ZodOptional<z.ZodObject<{
1176
+ description: z.ZodOptional<z.ZodString>;
1177
+ decorative: z.ZodDefault<z.ZodBoolean>;
1178
+ brightness: z.ZodOptional<z.ZodNumber>;
1179
+ }, z.core.$strip>>;
1180
+ }, z.core.$strip>, z.ZodObject<{
1181
+ type: z.ZodLiteral<"color">;
1182
+ value: z.ZodString;
1183
+ }, z.core.$strip>, z.ZodObject<{
1184
+ type: z.ZodLiteral<"gradient">;
1185
+ value: z.ZodString;
1186
+ }, z.core.$strip>], "type">>;
1187
+ }, z.core.$strip>], "type">;
1188
+ }, z.core.$strip>>;
1189
+ }, z.core.$strip>>;
1190
+ }, z.core.$strip>;
1191
+ export type FocalPoint = z.infer<typeof focalPointSchema>;
1192
+ export type ImageAttachment = z.infer<typeof imageAttachmentSchema>;
1193
+ export type VideoAttachment = z.infer<typeof videoAttachmentSchema>;
1194
+ export type ColorAttachment = z.infer<typeof colorAttachmentSchema>;
1195
+ export type GradientAttachment = z.infer<typeof gradientAttachmentSchema>;
1196
+ export type LayoutAttachment = z.infer<typeof layoutAttachmentSchema>;
1197
+ export type StackLayout = z.infer<typeof stackLayoutSchema>;
1198
+ export type FloatLayout = z.infer<typeof floatLayoutSchema>;
1199
+ export type SplitLayout = z.infer<typeof splitLayoutSchema>;
1200
+ export type WallpaperLayout = z.infer<typeof wallpaperLayoutSchema>;
1201
+ export type SectionLayoutVariant = z.infer<typeof sectionLayoutVariantSchema>;
1202
+ export type LayoutSurface = z.infer<typeof layoutSurfaceSchema>;
1203
+ export type SectionLayout = z.infer<typeof sectionLayoutSchema>;