@cesdk/engine 1.64.0-nightly.20251030 → 1.64.0-nightly.20251105

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.
package/index.d.ts CHANGED
@@ -62,10 +62,29 @@ export declare interface AddVideoOptions {
62
62
  }
63
63
 
64
64
  /**
65
- * The easing options for the camera animation.
65
+ * The shorthand block type IDs for the animation blocks. These are the IDs used to create new animations
66
+ * using `cesdk.engine.block.createAnimation(id)`.
66
67
  * @public
67
68
  */
68
- export declare type AnimationEasing = 'Linear' | 'EaseIn' | 'EaseOut' | 'EaseInOut' | 'EaseInQuart' | 'EaseOutQuart' | 'EaseInOutQuart' | 'EaseInQuint' | 'EaseOutQuint' | 'EaseInOutQuint' | 'EaseInBack' | 'EaseOutBack' | 'EaseInOutBack' | 'EaseInSpring' | 'EaseOutSpring' | 'EaseInOutSpring';
69
+ export declare const ANIMATION_TYPES: readonly ["slide", "pan", "fade", "blur", "grow", "zoom", "pop", "wipe", "baseline", "crop_zoom", "spin", "spin_loop", "fade_loop", "blur_loop", "pulsating_loop", "breathing_loop", "jump_loop", "squeeze_loop", "sway_loop", "typewriter_text", "block_swipe_text", "spread_text", "merge_text", "ken_burns"];
70
+
71
+ /** @public */
72
+ export declare type AnimationBaselineDirection = (typeof AnimationBaselineDirectionValues)[number];
73
+
74
+ /** @public */
75
+ export declare const AnimationBaselineDirectionValues: readonly ["Up", "Right", "Down", "Left"];
76
+
77
+ /** @public */
78
+ export declare type AnimationBlockSwipeTextDirection = (typeof AnimationBlockSwipeTextDirectionValues)[number];
79
+
80
+ /** @public */
81
+ export declare const AnimationBlockSwipeTextDirectionValues: readonly ["Up", "Right", "Down", "Left"];
82
+
83
+ /** @public */
84
+ export declare type AnimationEasing = (typeof AnimationEasingValues)[number];
85
+
86
+ /** @public */
87
+ export declare const AnimationEasingValues: readonly ["Linear", "EaseIn", "EaseOut", "EaseInOut", "EaseInQuart", "EaseOutQuart", "EaseInOutQuart", "EaseInQuint", "EaseOutQuint", "EaseInOutQuint", "EaseInBack", "EaseOutBack", "EaseInOutBack", "EaseInSpring", "EaseOutSpring", "EaseInOutSpring"];
69
88
 
70
89
  /**
71
90
  * Configuration options for animations.
@@ -80,6 +99,30 @@ export declare type AnimationEntry = {
80
99
  easing?: AnimationEasing;
81
100
  };
82
101
 
102
+ /** @public */
103
+ export declare type AnimationGrowDirection = (typeof AnimationGrowDirectionValues)[number];
104
+
105
+ /** @public */
106
+ export declare const AnimationGrowDirectionValues: readonly ["Horizontal", "Vertical", "All"];
107
+
108
+ /** @public */
109
+ export declare type AnimationJumpLoopDirection = (typeof AnimationJumpLoopDirectionValues)[number];
110
+
111
+ /** @public */
112
+ export declare const AnimationJumpLoopDirectionValues: readonly ["Up", "Right", "Down", "Left"];
113
+
114
+ /** @public */
115
+ export declare type AnimationKenBurnsDirection = (typeof AnimationKenBurnsDirectionValues)[number];
116
+
117
+ /** @public */
118
+ export declare const AnimationKenBurnsDirectionValues: readonly ["Up", "Right", "Down", "Left"];
119
+
120
+ /** @public */
121
+ export declare type AnimationMergeTextDirection = (typeof AnimationMergeTextDirectionValues)[number];
122
+
123
+ /** @public */
124
+ export declare const AnimationMergeTextDirectionValues: readonly ["Right", "Left"];
125
+
83
126
  /**
84
127
  * Options for configuring animations (in, loop, out animations).
85
128
  * @public
@@ -93,6 +136,18 @@ export declare type AnimationOptions = {
93
136
  out?: AnimationEntry;
94
137
  };
95
138
 
139
+ /** @public */
140
+ export declare type AnimationSpinDirection = (typeof AnimationSpinDirectionValues)[number];
141
+
142
+ /** @public */
143
+ export declare const AnimationSpinDirectionValues: readonly ["Clockwise", "CounterClockwise"];
144
+
145
+ /** @public */
146
+ export declare type AnimationSpinLoopDirection = (typeof AnimationSpinLoopDirectionValues)[number];
147
+
148
+ /** @public */
149
+ export declare const AnimationSpinLoopDirectionValues: readonly ["Clockwise", "CounterClockwise"];
150
+
96
151
  /**
97
152
  * The block type IDs for the animation blocks. These are the IDs used to create new animations
98
153
  * using `cesdk.engine.block.createAnimation(id)`.
@@ -108,12 +163,20 @@ export declare type AnimationType = AnimationTypeShorthand | AnimationTypeLongha
108
163
  */
109
164
  export declare type AnimationTypeLonghand = `//ly.img.ubq/animation/${AnimationTypeShorthand}`;
110
165
 
111
- /**
112
- * The shorthand block type IDs for the animation blocks. These are the IDs used to create new animations
113
- * using `cesdk.engine.block.createAnimation(id)`.
114
- * @public
115
- */
116
- export declare type AnimationTypeShorthand = 'slide' | 'pan' | 'fade' | 'blur' | 'grow' | 'zoom' | 'pop' | 'wipe' | 'baseline' | 'crop_zoom' | 'spin' | 'spin_loop' | 'fade_loop' | 'blur_loop' | 'pulsating_loop' | 'breathing_loop' | 'jump_loop' | 'squeeze_loop' | 'sway_loop' | 'typewriter_text' | 'block_swipe_text' | 'spread_text' | 'merge_text' | 'ken_burns';
166
+ /** @public */
167
+ export declare type AnimationTypeShorthand = (typeof ANIMATION_TYPES)[number];
168
+
169
+ /** @public */
170
+ export declare type AnimationTypewriterTextWritingStyle = (typeof AnimationTypewriterTextWritingStyleValues)[number];
171
+
172
+ /** @public */
173
+ export declare const AnimationTypewriterTextWritingStyleValues: readonly ["Character", "Word"];
174
+
175
+ /** @public */
176
+ export declare type AnimationWipeDirection = (typeof AnimationWipeDirectionValues)[number];
177
+
178
+ /** @public */
179
+ export declare const AnimationWipeDirectionValues: readonly ["Up", "Right", "Down", "Left"];
117
180
 
118
181
  /**
119
182
  * Represents the application MIME types used in the editor.
@@ -294,13 +357,20 @@ export declare class AssetAPI {
294
357
  * and an `assets` array with asset definitions. Each asset should have an `id`, localized `label` object,
295
358
  * and a `meta` object containing asset-specific properties like `uri`, `thumbUri`, `blockType`, etc.
296
359
  *
360
+ * Optionally, you can provide a `basePath` for resolving relative URLs and additional options including a
361
+ * `matcher` array to filter which assets are loaded based on their IDs. The matcher patterns support wildcard
362
+ * matching using `*`. If multiple patterns are provided, an asset is included if it matches ANY of the patterns.
363
+ *
297
364
  * @category Asset Source Management
298
365
  * @param contentJSON - The JSON string containing the asset definitions.
299
366
  * @param basePath - An optional base path with which \{\{base_url\}\} strings in the assets should be replaced. If no value is provided, settings.basePath is used.
367
+ * @param options - Optional configuration:
368
+ * - `matcher`: Array of patterns to filter assets by ID. Supports `*` wildcard. An asset is included if it matches ANY pattern.
300
369
  * @returns The ID of the newly created asset source (as specified in the JSON's `id` field).
301
370
  *
302
371
  * @example
303
372
  * ```javascript
373
+ * // Load all assets from JSON
304
374
  * const json = JSON.stringify({
305
375
  * "version": "2.0.0",
306
376
  * "id": "my.custom.assets",
@@ -318,9 +388,31 @@ export declare class AssetAPI {
318
388
  * });
319
389
  * const sourceId = await engine.asset.addLocalAssetSourceFromJSONString(json);
320
390
  * console.log('Created asset source:', sourceId); // "my.custom.assets"
391
+ *
392
+ * // Load with custom base path
393
+ * const sourceId2 = await engine.asset.addLocalAssetSourceFromJSONString(
394
+ * json,
395
+ * 'https://example.com/'
396
+ * );
397
+ *
398
+ * // Load only assets matching one of the patterns
399
+ * const sourceId3 = await engine.asset.addLocalAssetSourceFromJSONString(
400
+ * json,
401
+ * undefined,
402
+ * { matcher: ['sample_*', '*_asset'] }
403
+ * );
404
+ *
405
+ * // Load with custom base path and matcher
406
+ * const sourceId4 = await engine.asset.addLocalAssetSourceFromJSONString(
407
+ * json,
408
+ * 'https://example.com/',
409
+ * { matcher: ['portrait_*', 'landscape_*'] }
410
+ * );
321
411
  * ```
322
412
  */
323
- addLocalAssetSourceFromJSONString(contentJSON: string, basePath?: string): Promise<string>;
413
+ addLocalAssetSourceFromJSONString(contentJSON: string, basePath?: string, options?: {
414
+ matcher?: string[];
415
+ }): Promise<string>;
324
416
  /**
325
417
  * Creates a new local asset source from a JSON URI.
326
418
  *
@@ -334,38 +426,28 @@ export declare class AssetAPI {
334
426
  *
335
427
  * @category Asset Source Management
336
428
  * @param contentURI - The URI for the JSON file to load and parse.
429
+ * @param options - Optional configuration:
430
+ * - `matcher`: Array of patterns to filter assets by ID. Supports `*` wildcard. An asset is included if it matches ANY pattern.
337
431
  * @returns The ID of the newly created asset source (as specified in the JSON's `id` field).
338
432
  *
339
433
  * @example
340
434
  * ```javascript
341
- * // Load audio assets from IMG.LY's CDN
435
+ * // Load all audio assets from IMG.LY's CDN
342
436
  * const sourceId = await engine.asset.addLocalAssetSourceFromJSONURI(
343
437
  * 'https://cdn.img.ly/assets/demo/v2/ly.img.audio/content.json'
344
438
  * );
345
439
  * console.log('Loaded asset source:', sourceId); // "ly.img.audio"
346
440
  *
347
- * // The parent directory (https://cdn.img.ly/assets/demo/v2/ly.img.audio/)
348
- * // will be used as base path for resolving relative asset URLs
349
- *
350
- * // The JSON at this URL contains audio assets with structure like:
351
- * // {
352
- * // "version": "2.0.0",
353
- * // "id": "ly.img.audio",
354
- * // "assets": [
355
- * // {
356
- * // "id": "dance_harder",
357
- * // "label": { "en": "Dance Harder" },
358
- * // "meta": {
359
- * // "uri": "https://cdn.img.ly/.../dance_harder.m4a",
360
- * // "blockType": "//ly.img.ubq/audio",
361
- * // "mimeType": "audio/x-m4a"
362
- * // }
363
- * // }
364
- * // ]
365
- * // }
366
- * ```
367
- */
368
- addLocalAssetSourceFromJSONURI(contentURI: string): Promise<string>;
441
+ * // Load only assets matching one of the patterns
442
+ * const sourceId2 = await engine.asset.addLocalAssetSourceFromJSONURI(
443
+ * 'https://cdn.img.ly/assets/demo/v2/ly.img.image/content.json',
444
+ * { matcher: ['image-portrait-*', 'image-landscape-*'] }
445
+ * );
446
+ * ```
447
+ */
448
+ addLocalAssetSourceFromJSONURI(contentURI: string, options?: {
449
+ matcher?: string[];
450
+ }): Promise<string>;
369
451
  /**
370
452
  * Remove a registered asset source.
371
453
  *
@@ -820,7 +902,7 @@ export declare interface AssetFixedSize {
820
902
  type: 'FixedSize';
821
903
  width: number;
822
904
  height: number;
823
- designUnit: DesignUnit;
905
+ designUnit: SceneDesignUnit;
824
906
  }
825
907
 
826
908
  /**
@@ -1240,42 +1322,11 @@ export declare interface AudioTrackInfo {
1240
1322
  language: string;
1241
1323
  }
1242
1324
 
1243
- /**
1244
- * Represents the blend mode of a layer or effect.
1245
- *
1246
- * @categoryDescription Blend Mode
1247
- * Defines the possible blend modes for a layer or effect.
1248
- * - 'PassThrough': The layer or effect is not blended and is rendered as is.
1249
- * - 'Normal': The layer or effect is blended normally.
1250
- * - 'Darken': The layer or effect is blended to darken the underlying content.
1251
- * - 'Multiply': The layer or effect is blended to multiply the underlying content.
1252
- * - 'ColorBurn': The layer or effect is blended to burn the underlying content.
1253
- * - 'LinearBurn': The layer or effect is blended to linearly burn the underlying content.
1254
- * - 'DarkenColor': The layer or effect is blended to darken the underlying content based on color.
1255
- * - 'Lighten': The layer or effect is blended to lighten the underlying content.
1256
- * - 'Screen': The layer or effect is blended to screen the underlying content.
1257
- * - 'ColorDodge': The layer or effect is blended to dodge the underlying content.
1258
- * - 'LinearDodge': The layer or effect is blended to linearly dodge the underlying content.
1259
- * - 'LightenColor': The layer or effect is blended to lighten the underlying content based on color.
1260
- * - 'Overlay': The layer or effect is blended to overlay the underlying content.
1261
- * - 'SoftLight': The layer or effect is blended to soft light the underlying content.
1262
- * - 'HardLight': The layer or effect is blended to hard light the underlying content.
1263
- * - 'VividLight': The layer or effect is blended to vivid light the underlying content.
1264
- * - 'LinearLight': The layer or effect is blended to linearly light the underlying content.
1265
- * - 'PinLight': The layer or effect is blended to pin light the underlying content.
1266
- * - 'HardMix': The layer or effect is blended to hard mix the underlying content.
1267
- * - 'Difference': The layer or effect is blended to difference the underlying content.
1268
- * - 'Exclusion': The layer or effect is blended to exclude the underlying content.
1269
- * - 'Subtract': The layer or effect is blended to subtract the underlying content.
1270
- * - 'Divide': The layer or effect is blended to divide the underlying content.
1271
- * - 'Hue': The layer or effect is blended to hue the underlying content.
1272
- * - 'Saturation': The layer or effect is blended to saturate the underlying content.
1273
- * - 'Color': The layer or effect is blended to color the underlying content.
1274
- * - 'Luminosity': The layer or effect is blended to luminosity the underlying content.
1275
- *
1276
- * @public
1277
- */
1278
- export declare type BlendMode = 'PassThrough' | 'Normal' | 'Darken' | 'Multiply' | 'ColorBurn' | 'LinearBurn' | 'DarkenColor' | 'Lighten' | 'Screen' | 'ColorDodge' | 'LinearDodge' | 'LightenColor' | 'Overlay' | 'SoftLight' | 'HardLight' | 'VividLight' | 'LinearLight' | 'PinLight' | 'HardMix' | 'Difference' | 'Exclusion' | 'Subtract' | 'Divide' | 'Hue' | 'Saturation' | 'Color' | 'Luminosity';
1325
+ /** @public */
1326
+ export declare type BlendMode = (typeof BlendModeValues)[number];
1327
+
1328
+ /** @public */
1329
+ export declare const BlendModeValues: readonly ["PassThrough", "Normal", "Darken", "Multiply", "ColorBurn", "LinearBurn", "DarkenColor", "Lighten", "Screen", "ColorDodge", "LinearDodge", "LightenColor", "Overlay", "SoftLight", "HardLight", "VividLight", "LinearLight", "PinLight", "HardMix", "Difference", "Exclusion", "Subtract", "Divide", "Hue", "Saturation", "Color", "Luminosity"];
1279
1330
 
1280
1331
  /**
1281
1332
  * Create, manipulate, and query the building blocks of your design.
@@ -2069,7 +2120,7 @@ export declare class BlockAPI {
2069
2120
  * @param id - The block to query.
2070
2121
  * @returns The current mode for the x position: 'Absolute' or 'Percent'.
2071
2122
  */
2072
- getPositionXMode(id: DesignBlockId): PositionMode;
2123
+ getPositionXMode(id: DesignBlockId): PositionXMode;
2073
2124
  /**
2074
2125
  * Gets the Y position of a block.
2075
2126
  *
@@ -2085,7 +2136,7 @@ export declare class BlockAPI {
2085
2136
  * @param id - The block to query.
2086
2137
  * @returns The current mode for the y position: 'Absolute' or 'Percent'.
2087
2138
  */
2088
- getPositionYMode(id: DesignBlockId): PositionMode;
2139
+ getPositionYMode(id: DesignBlockId): PositionYMode;
2089
2140
  /**
2090
2141
  * Sets the X position of a block.
2091
2142
  *
@@ -2111,7 +2162,7 @@ export declare class BlockAPI {
2111
2162
  * @param id - The block to update.
2112
2163
  * @param mode - The x position mode: 'Absolute' or 'Percent'.
2113
2164
  */
2114
- setPositionXMode(id: DesignBlockId, mode: PositionMode): void;
2165
+ setPositionXMode(id: DesignBlockId, mode: PositionXMode): void;
2115
2166
  /**
2116
2167
  * Sets the Y position of a block.
2117
2168
  *
@@ -2137,7 +2188,7 @@ export declare class BlockAPI {
2137
2188
  * @param id - The block to update.
2138
2189
  * @param mode - The y position mode: 'Absolute' or 'Percent'.
2139
2190
  */
2140
- setPositionYMode(id: DesignBlockId, mode: PositionMode): void;
2191
+ setPositionYMode(id: DesignBlockId, mode: PositionYMode): void;
2141
2192
  /**
2142
2193
  * Sets a block to always be rendered on top of its siblings.
2143
2194
  *
@@ -2300,7 +2351,7 @@ export declare class BlockAPI {
2300
2351
  * @param id - The block to query.
2301
2352
  * @returns The current mode for the width: 'Absolute', 'Percent' or 'Auto'.
2302
2353
  */
2303
- getWidthMode(id: DesignBlockId): SizeMode;
2354
+ getWidthMode(id: DesignBlockId): WidthMode;
2304
2355
  /**
2305
2356
  * Gets the height of a block in the current height mode.
2306
2357
  *
@@ -2324,7 +2375,7 @@ export declare class BlockAPI {
2324
2375
  * @param id - The block to query.
2325
2376
  * @returns The current mode for the height: 'Absolute', 'Percent' or 'Auto'.
2326
2377
  */
2327
- getHeightMode(id: DesignBlockId): SizeMode;
2378
+ getHeightMode(id: DesignBlockId): HeightMode;
2328
2379
  /**
2329
2380
  * Update a block's size.
2330
2381
  *
@@ -2379,7 +2430,7 @@ export declare class BlockAPI {
2379
2430
  * @param id - The block to update.
2380
2431
  * @param mode - The width mode: 'Absolute', 'Percent' or 'Auto'.
2381
2432
  */
2382
- setWidthMode(id: DesignBlockId, mode: SizeMode): void;
2433
+ setWidthMode(id: DesignBlockId, mode: WidthMode): void;
2383
2434
  /**
2384
2435
  * Sets the height of a block in the current height mode.
2385
2436
  *
@@ -2407,7 +2458,7 @@ export declare class BlockAPI {
2407
2458
  * @param id - The block to update.
2408
2459
  * @param mode - The height mode: 'Absolute', 'Percent' or 'Auto'.
2409
2460
  */
2410
- setHeightMode(id: DesignBlockId, mode: SizeMode): void;
2461
+ setHeightMode(id: DesignBlockId, mode: HeightMode): void;
2411
2462
  /**
2412
2463
  * Gets the final calculated X position of a block's frame.
2413
2464
  *
@@ -2636,7 +2687,7 @@ export declare class BlockAPI {
2636
2687
  * @param ids - A non-empty array of block ids.
2637
2688
  * @param horizontalBlockAlignment - How they should be aligned: 'Left', 'Right', or 'Center'.
2638
2689
  */
2639
- alignHorizontally(ids: DesignBlockId[], horizontalBlockAlignment: HorizontalBlockAlignment): void;
2690
+ alignHorizontally(ids: DesignBlockId[], horizontalBlockAlignment: TextHorizontalAlignment): void;
2640
2691
  /**
2641
2692
  * Aligns blocks vertically.
2642
2693
  *
@@ -2646,7 +2697,7 @@ export declare class BlockAPI {
2646
2697
  * @param ids - A non-empty array of block ids.
2647
2698
  * @param verticalBlockAlignment - How they should be aligned: 'Top', 'Bottom', or 'Center'.
2648
2699
  */
2649
- alignVertically(ids: DesignBlockId[], verticalBlockAlignment: VerticalBlockAlignment): void;
2700
+ alignVertically(ids: DesignBlockId[], verticalBlockAlignment: TextVerticalAlignment): void;
2650
2701
  /**
2651
2702
  * Checks if a set of blocks can be aligned.
2652
2703
  *
@@ -2776,7 +2827,7 @@ export declare class BlockAPI {
2776
2827
  * @param property - The name of the property to set.
2777
2828
  * @param value - The value to set.
2778
2829
  */
2779
- setBool(id: DesignBlockId, property: string, value: boolean): void;
2830
+ setBool(id: DesignBlockId, property: BoolPropertyName, value: boolean): void;
2780
2831
  /**
2781
2832
  * Gets a boolean property from a block.
2782
2833
  *
@@ -2789,7 +2840,7 @@ export declare class BlockAPI {
2789
2840
  * @param property - The name of the property to query.
2790
2841
  * @returns The value of the property.
2791
2842
  */
2792
- getBool(id: DesignBlockId, property: string): boolean;
2843
+ getBool(id: DesignBlockId, property: BoolPropertyName): boolean;
2793
2844
  /**
2794
2845
  * Sets an integer property on a block.
2795
2846
  *
@@ -2802,7 +2853,7 @@ export declare class BlockAPI {
2802
2853
  * @param property - The name of the property to set.
2803
2854
  * @param value - The value to set.
2804
2855
  */
2805
- setInt(id: DesignBlockId, property: string, value: number): void;
2856
+ setInt(id: DesignBlockId, property: IntPropertyName, value: number): void;
2806
2857
  /**
2807
2858
  * Gets an integer property from a block.
2808
2859
  *
@@ -2815,7 +2866,7 @@ export declare class BlockAPI {
2815
2866
  * @param property - The name of the property to query.
2816
2867
  * @returns The value of the property.
2817
2868
  */
2818
- getInt(id: DesignBlockId, property: string): number;
2869
+ getInt(id: DesignBlockId, property: IntPropertyName): number;
2819
2870
  /**
2820
2871
  * Sets a float property on a block.
2821
2872
  *
@@ -2829,7 +2880,7 @@ export declare class BlockAPI {
2829
2880
  * @param property - The name of the property to set.
2830
2881
  * @param value - The value to set.
2831
2882
  */
2832
- setFloat(id: DesignBlockId, property: string, value: number): void;
2883
+ setFloat(id: DesignBlockId, property: FloatPropertyName, value: number): void;
2833
2884
  /**
2834
2885
  * Gets a float property from a block.
2835
2886
  *
@@ -2842,7 +2893,7 @@ export declare class BlockAPI {
2842
2893
  * @param property - The name of the property to query.
2843
2894
  * @returns The value of the property.
2844
2895
  */
2845
- getFloat(id: DesignBlockId, property: string): number;
2896
+ getFloat(id: DesignBlockId, property: FloatPropertyName): number;
2846
2897
  /**
2847
2898
  * Sets a double-precision float property on a block.
2848
2899
  *
@@ -2855,7 +2906,7 @@ export declare class BlockAPI {
2855
2906
  * @param property - The name of the property to set.
2856
2907
  * @param value - The value to set.
2857
2908
  */
2858
- setDouble(id: DesignBlockId, property: string, value: number): void;
2909
+ setDouble(id: DesignBlockId, property: DoublePropertyName, value: number): void;
2859
2910
  /**
2860
2911
  * Gets a double-precision float property from a block.
2861
2912
  *
@@ -2868,7 +2919,7 @@ export declare class BlockAPI {
2868
2919
  * @param property - The name of the property to query.
2869
2920
  * @returns The value of the property.
2870
2921
  */
2871
- getDouble(id: DesignBlockId, property: string): number;
2922
+ getDouble(id: DesignBlockId, property: DoublePropertyName): number;
2872
2923
  /**
2873
2924
  * Sets a string property on a block.
2874
2925
  *
@@ -2882,7 +2933,7 @@ export declare class BlockAPI {
2882
2933
  * @param property - The name of the property to set.
2883
2934
  * @param value - The value to set.
2884
2935
  */
2885
- setString(id: DesignBlockId, property: string, value: string): void;
2936
+ setString(id: DesignBlockId, property: StringPropertyName, value: string): void;
2886
2937
  /**
2887
2938
  * Gets a string property from a block.
2888
2939
  *
@@ -2896,7 +2947,7 @@ export declare class BlockAPI {
2896
2947
  * @param property - The name of the property to query.
2897
2948
  * @returns The value of the property.
2898
2949
  */
2899
- getString(id: DesignBlockId, property: string): string;
2950
+ getString(id: DesignBlockId, property: StringPropertyName): string;
2900
2951
  /**
2901
2952
  * Sets a color property on a block.
2902
2953
  *
@@ -2910,7 +2961,7 @@ export declare class BlockAPI {
2910
2961
  * @param property - The name of the property to set.
2911
2962
  * @param value - The value to set.
2912
2963
  */
2913
- setColor(id: DesignBlockId, property: string, value: Color): void;
2964
+ setColor(id: DesignBlockId, property: ColorPropertyName, value: Color): void;
2914
2965
  /**
2915
2966
  * Gets a color property from a block.
2916
2967
  *
@@ -2923,7 +2974,7 @@ export declare class BlockAPI {
2923
2974
  * @param property - The name of the property to query.
2924
2975
  * @returns The value of the property.
2925
2976
  */
2926
- getColor(id: DesignBlockId, property: string): Color;
2977
+ getColor(id: DesignBlockId, property: ColorPropertyName): Color;
2927
2978
  /**
2928
2979
  * Sets a color property on a block using RGBA values.
2929
2980
  *
@@ -3019,7 +3070,7 @@ export declare class BlockAPI {
3019
3070
  * @param property - The name of the property to query, e.g. 'fill/image/sourceSet'.
3020
3071
  * @returns The block's source set.
3021
3072
  */
3022
- getSourceSet(id: DesignBlockId, property: string): Source[];
3073
+ getSourceSet(id: DesignBlockId, property: SourceSetPropertyName): Source[];
3023
3074
  /**
3024
3075
  * Sets the source set for a block property.
3025
3076
  *
@@ -3038,7 +3089,7 @@ export declare class BlockAPI {
3038
3089
  * @param property - The name of the property to set.
3039
3090
  * @param sourceSet - The block's new source set.
3040
3091
  */
3041
- setSourceSet(id: DesignBlockId, property: string, sourceSet: Source[]): void;
3092
+ setSourceSet(id: DesignBlockId, property: SourceSetPropertyName, sourceSet: Source[]): void;
3042
3093
  /**
3043
3094
  * Adds an image file URI to a source set property.
3044
3095
  *
@@ -3054,7 +3105,7 @@ export declare class BlockAPI {
3054
3105
  * @param uri - The source to add to the source set.
3055
3106
  * @returns A promise that resolves when the operation is complete.
3056
3107
  */
3057
- addImageFileURIToSourceSet(id: DesignBlockId, property: string, uri: string): Promise<void>;
3108
+ addImageFileURIToSourceSet(id: DesignBlockId, property: SourceSetPropertyName, uri: string): Promise<void>;
3058
3109
  /**
3059
3110
  * Adds a video file URI to a source set property.
3060
3111
  *
@@ -3070,7 +3121,7 @@ export declare class BlockAPI {
3070
3121
  * @param uri - The source to add to the source set.
3071
3122
  * @returns A promise that resolves when the operation is complete.
3072
3123
  */
3073
- addVideoFileURIToSourceSet(id: DesignBlockId, property: string, uri: string): Promise<void>;
3124
+ addVideoFileURIToSourceSet(id: DesignBlockId, property: SourceSetPropertyName, uri: string): Promise<void>;
3074
3125
  /**
3075
3126
  * Sets an enum property on a block.
3076
3127
  *
@@ -3084,7 +3135,8 @@ export declare class BlockAPI {
3084
3135
  * @param property - The name of the property to set.
3085
3136
  * @param value - The enum value as a string.
3086
3137
  */
3087
- setEnum<T extends string = string>(id: DesignBlockId, property: string, value: T): void;
3138
+ setEnum<T extends keyof BlockEnumType>(id: DesignBlockId, property: T, value: BlockEnumType[T]): void;
3139
+ setEnum(id: DesignBlockId, property: string, value: string): void;
3088
3140
  /**
3089
3141
  * Gets an enum property from a block.
3090
3142
  *
@@ -3098,7 +3150,8 @@ export declare class BlockAPI {
3098
3150
  * @param property - The name of the property to query.
3099
3151
  * @returns The value as a string.
3100
3152
  */
3101
- getEnum<T extends string = string>(id: DesignBlockId, property: string): T;
3153
+ getEnum<T extends keyof BlockEnumType>(id: DesignBlockId, property: T): BlockEnumType[T];
3154
+ getEnum(id: DesignBlockId, property: string): string;
3102
3155
  /**
3103
3156
  * Checks if a block has crop properties.
3104
3157
  *
@@ -5021,6 +5074,14 @@ export declare class BlockAPI {
5021
5074
  * @param muted - Whether the audio should be muted.
5022
5075
  */
5023
5076
  setMuted(id: DesignBlockId, muted: boolean): void;
5077
+ /**
5078
+ * Checks if a block's audio is muted due to engine rules.
5079
+ *
5080
+ * @category Block Video
5081
+ * @param id - The block to query.
5082
+ * @returns Whether the block is force muted.
5083
+ */
5084
+ isForceMuted(id: DesignBlockId): boolean;
5024
5085
  /**
5025
5086
  * Checks if a block's audio is muted.
5026
5087
  *
@@ -5048,10 +5109,12 @@ export declare class BlockAPI {
5048
5109
  /**
5049
5110
  * Sets the playback speed multiplier of a block that supports playback control.
5050
5111
  * Note: This also adjusts the trim and duration of the block.
5112
+ * Video fills running faster than 3.0x are force muted until reduced to 3.0x or below.
5051
5113
  *
5052
5114
  * @category Block Video
5053
5115
  * @param id - The block or video fill to update.
5054
- * @param speed - The desired playback speed multiplier with a range of [0.25, 3.0].
5116
+ * @param speed - The desired playback speed multiplier. Valid range is [0.25, 3.0] for audio blocks and
5117
+ * [0.25, infinity) for video fills.
5055
5118
  */
5056
5119
  setPlaybackSpeed(id: DesignBlockId, speed: number): void;
5057
5120
  /**
@@ -5374,6 +5437,40 @@ export declare class BlockAPI {
5374
5437
  moveToBackgroundTrack(block: DesignBlockId): void;
5375
5438
  }
5376
5439
 
5440
+ /** @public */
5441
+ export declare type BlockEnumType = {
5442
+ 'blend/mode': BlendMode;
5443
+ 'contentFill/mode': ContentFillMode;
5444
+ 'height/mode': HeightMode;
5445
+ 'position/x/mode': PositionXMode;
5446
+ 'position/y/mode': PositionYMode;
5447
+ 'scene/designUnit': SceneDesignUnit;
5448
+ 'scene/layout': SceneLayout;
5449
+ 'scene/mode': SceneMode;
5450
+ 'width/mode': WidthMode;
5451
+ 'stroke/cornerGeometry': StrokeCornerGeometry;
5452
+ 'stroke/position': StrokePosition;
5453
+ 'stroke/style': StrokeStyle;
5454
+ 'text/horizontalAlignment': TextHorizontalAlignment;
5455
+ 'text/verticalAlignment': TextVerticalAlignment;
5456
+ 'cutout/type': CutoutType;
5457
+ 'caption/horizontalAlignment': CaptionHorizontalAlignment;
5458
+ 'caption/verticalAlignment': CaptionVerticalAlignment;
5459
+ animationEasing: AnimationEasing;
5460
+ textAnimationWritingStyle: TextAnimationWritingStyle;
5461
+ 'animation/grow/direction': AnimationGrowDirection;
5462
+ 'animation/wipe/direction': AnimationWipeDirection;
5463
+ 'animation/baseline/direction': AnimationBaselineDirection;
5464
+ 'animation/spin/direction': AnimationSpinDirection;
5465
+ 'animation/spin_loop/direction': AnimationSpinLoopDirection;
5466
+ 'animation/jump_loop/direction': AnimationJumpLoopDirection;
5467
+ 'animation/typewriter_text/writingStyle': AnimationTypewriterTextWritingStyle;
5468
+ 'animation/block_swipe_text/direction': AnimationBlockSwipeTextDirection;
5469
+ 'animation/merge_text/direction': AnimationMergeTextDirection;
5470
+ 'animation/ken_burns/direction': AnimationKenBurnsDirection;
5471
+ 'fill/pixelStream/orientation': FillPixelStreamOrientation;
5472
+ };
5473
+
5377
5474
  /**
5378
5475
  * Represents an event related to a design block.
5379
5476
  *
@@ -5439,6 +5536,13 @@ export declare interface BlockStateReady {
5439
5536
  type: 'Ready';
5440
5537
  }
5441
5538
 
5539
+ /**
5540
+ * The shorthand block type IDs for the blur blocks. These are the IDs used to create new blurs
5541
+ * using `cesdk.engine.block.createBlur(id)`.
5542
+ * @public
5543
+ */
5544
+ export declare const BLUR_TYPES: readonly ["uniform", "linear", "mirrored", "radial"];
5545
+
5442
5546
  /**
5443
5547
  * Dispatched on the engine canvas when the text input has been blurred.
5444
5548
  * Call `preventDefault()` to disallow this and refocus the engine text input.
@@ -5467,12 +5571,8 @@ export declare type BlurType = BlurTypeShorthand | BlurTypeLonghand;
5467
5571
  */
5468
5572
  export declare type BlurTypeLonghand = `//ly.img.ubq/blur/${BlurTypeShorthand}`;
5469
5573
 
5470
- /**
5471
- * The shorthand block type IDs for the blur blocks. These are the IDs used to create new blurs
5472
- * using `cesdk.engine.block.createBlur(id)`.
5473
- * @public
5474
- */
5475
- export declare type BlurTypeShorthand = 'uniform' | 'linear' | 'mirrored' | 'radial';
5574
+ /** @public */
5575
+ export declare type BlurTypeShorthand = (typeof BLUR_TYPES)[number];
5476
5576
 
5477
5577
  /**
5478
5578
  * Represents the names of boolean operations.
@@ -5487,6 +5587,9 @@ export declare type BlurTypeShorthand = 'uniform' | 'linear' | 'mirrored' | 'rad
5487
5587
  */
5488
5588
  export declare type BooleanOperation = 'Difference' | 'Intersection' | 'Union' | 'XOR';
5489
5589
 
5590
+ /** @public */
5591
+ export declare type BoolPropertyName = 'alwaysOnBottom' | 'alwaysOnTop' | 'clipped' | 'flip/horizontal' | 'flip/vertical' | 'highlightEnabled' | 'includedInExport' | 'placeholder/enabled' | 'playback/playing' | 'playback/soloPlaybackEnabled' | 'scene/aspectRatioLock' | 'selected' | 'transformLocked' | 'visible' | 'blur/enabled' | 'dropShadow/clip' | 'dropShadow/enabled' | 'fill/enabled' | 'page/marginEnabled' | 'placeholderControls/showButton' | 'placeholderControls/showOverlay' | 'playback/looping' | 'playback/muted' | 'stroke/enabled' | 'backgroundColor/enabled' | 'placeholderBehavior/enabled' | 'text/automaticFontSizeEnabled' | 'text/clipLinesOutsideOfFrame' | 'text/hasClippedLines' | 'track/automaticallyManageBlockOffsets' | 'caption/automaticFontSizeEnabled' | 'caption/clipLinesOutsideOfFrame' | 'caption/hasClippedLines' | 'captionTrack/automaticallyManageBlockOffsets' | 'animation/slide/fade' | 'animation/pan/fade' | 'animation/blur/fade' | 'animation/zoom/fade' | 'animation/crop_zoom/fade' | 'animation/spin/fade' | 'animation/block_swipe_text/useTextColor' | 'animation/spread_text/fade' | 'animation/ken_burns/fade' | 'effect/enabled' | (string & {});
5592
+
5490
5593
  /**
5491
5594
  * Represents a buffer of data.
5492
5595
  *
@@ -5500,12 +5603,30 @@ export declare interface Buffer {
5500
5603
  buffer: Uint8Array;
5501
5604
  }
5502
5605
 
5606
+ /** @public */
5607
+ export declare type CameraClampingOvershootMode = (typeof CameraClampingOvershootModeValues)[number];
5608
+
5609
+ /** @public */
5610
+ export declare const CameraClampingOvershootModeValues: readonly ["Center", "Reverse"];
5611
+
5503
5612
  /**
5504
5613
  * An HTML Canvas or an Offscreen Canvas
5505
5614
  * @public
5506
5615
  */
5507
5616
  export declare type Canvas = HTMLCanvasElement | OffscreenCanvas_2;
5508
5617
 
5618
+ /** @public */
5619
+ export declare type CaptionHorizontalAlignment = (typeof CaptionHorizontalAlignmentValues)[number];
5620
+
5621
+ /** @public */
5622
+ export declare const CaptionHorizontalAlignmentValues: readonly ["Left", "Right", "Center"];
5623
+
5624
+ /** @public */
5625
+ export declare type CaptionVerticalAlignment = (typeof CaptionVerticalAlignmentValues)[number];
5626
+
5627
+ /** @public */
5628
+ export declare const CaptionVerticalAlignmentValues: readonly ["Top", "Bottom", "Center"];
5629
+
5509
5630
  /**
5510
5631
  * Throws an error if the current browser does not support video exporting.
5511
5632
  * @public
@@ -5569,6 +5690,9 @@ export declare interface CMYKColor {
5569
5690
  */
5570
5691
  export declare type Color = RGBAColor | CMYKColor | SpotColor;
5571
5692
 
5693
+ /** @public */
5694
+ export declare type ColorPropertyName = 'dropShadow/color' | 'fill/solid/color' | 'stroke/color' | 'backgroundColor/color' | 'animation/block_swipe_text/blockColor' | 'effect/duotone_filter/darkColor' | 'effect/duotone_filter/lightColor' | 'effect/green_screen/fromColor' | 'effect/recolor/fromColor' | 'effect/recolor/toColor' | 'fill/color/value' | (string & {});
5695
+
5572
5696
  /**
5573
5697
  * Represents the color space used in the editor.
5574
5698
  *
@@ -5677,19 +5801,11 @@ export declare interface Configuration {
5677
5801
  role?: RoleString;
5678
5802
  }
5679
5803
 
5680
- /**
5681
- * Represents the mode for filling content within a block.
5682
- *
5683
- * The `ContentFillMode` type provides a set of values that control the mode for
5684
- * filling content within a block. These options include settings for cropping,
5685
- * covering, and containing the content.
5686
- *
5687
- * @categoryDescription ContentFillMode
5688
- * Methods for configuring the mode for filling content within a block.
5689
- *
5690
- * @public
5691
- */
5692
- export declare type ContentFillMode = 'Crop' | 'Cover' | 'Contain';
5804
+ /** @public */
5805
+ export declare type ContentFillMode = (typeof ContentFillModeValues)[number];
5806
+
5807
+ /** @public */
5808
+ export declare const ContentFillModeValues: readonly ["Crop", "Cover", "Contain"];
5693
5809
 
5694
5810
  /**
5695
5811
  * Creates a derived reactive property from one or more sources.
@@ -5827,6 +5943,11 @@ export declare function _createTrackedProperty<T, U = any>(getter: () => T, sett
5827
5943
  */
5828
5944
  declare class CreativeEngine {
5829
5945
  #private;
5946
+ /**
5947
+ * The version of the CE.SDK package.
5948
+ * @category Engine Management
5949
+ */
5950
+ static readonly version: string;
5830
5951
  /**
5831
5952
  * Manage and interact with assets in the engine.
5832
5953
  * @category Core APIs
@@ -5945,8 +6066,8 @@ declare class CreativeEngine {
5945
6066
  * - `'ly.img.filter.lut'` - LUT effects of various kinds
5946
6067
  * - `'ly.img.filter.duotone'` - Color effects of various kinds
5947
6068
  *
5948
- * These assets are parsed from the IMG.LY CDN at `\{\{base_url\}\}/<id>/content.json`, where
5949
- * `base_url` defaults to 'https://cdn.img.ly/assets/v4'.
6069
+ * These assets are parsed at `\{\{base_url\}\}/<id>/content.json`, where
6070
+ * `base_url` defaults to the IMG.LY CDN.
5950
6071
  * Each source is created via `addLocalSource` and populated with the parsed assets. To modify the available
5951
6072
  * assets, you may either exclude certain IDs via `excludeAssetSourceIds` or alter the sources after creation.
5952
6073
  *
@@ -5955,7 +6076,7 @@ declare class CreativeEngine {
5955
6076
  * @returns A promise that resolves when all asset sources are loaded.
5956
6077
  */
5957
6078
  addDefaultAssetSources({ baseURL, excludeAssetSourceIds }?: {
5958
- /** The source of the asset definitions, must be absolute. Defaults to `'https://cdn.img.ly/assets/v4'`. */
6079
+ /** The source of the asset definitions, must be absolute. Defaults to IMG.LY CDN. */
5959
6080
  baseURL?: string;
5960
6081
  /** A list of IDs, that will be ignored during load. */
5961
6082
  excludeAssetSourceIds?: DefaultAssetSourceId[];
@@ -5978,7 +6099,7 @@ declare class CreativeEngine {
5978
6099
  * @returns A promise that resolves when all demo asset sources are loaded.
5979
6100
  */
5980
6101
  addDemoAssetSources({ baseURL, excludeAssetSourceIds, sceneMode, withUploadAssetSources }?: {
5981
- /** The source of the demo asset definitions, must be absolute. Defaults to `'https://cdn.img.ly/assets/demo/v2'`. */
6102
+ /** The source of the demo asset definitions, must be absolute. Defaults to IMG.LY CDN. */
5982
6103
  baseURL?: string;
5983
6104
  /** A list of IDs, that will be ignored during load */
5984
6105
  excludeAssetSourceIds?: DemoAssetSourceId[];
@@ -5987,6 +6108,22 @@ declare class CreativeEngine {
5987
6108
  /** If 'true' asset sources for uploads are added (default false) */
5988
6109
  withUploadAssetSources?: boolean;
5989
6110
  }): Promise<void>;
6111
+ /**
6112
+ * Returns the configured base URL for the engine's assets.
6113
+ *
6114
+ * @category Engine Management
6115
+ * @returns The absolute base URL configured for this engine instance.
6116
+ *
6117
+ * @example
6118
+ * ```typescript
6119
+ * const engine = await CreativeEngine.init({
6120
+ * baseURL: 'https://my-cdn.example.com/assets/'
6121
+ * });
6122
+ *
6123
+ * console.log(engine.getBaseURL()); // 'https://my-cdn.example.com/assets/'
6124
+ * ```
6125
+ */
6126
+ getBaseURL(): string;
5990
6127
 
5991
6128
 
5992
6129
  }
@@ -6005,20 +6142,6 @@ export declare interface CursorEvent extends CustomEvent<string> {
6005
6142
  preventDefault(): void;
6006
6143
  }
6007
6144
 
6008
- /**
6009
- * Represents the operation performed on a cutout.
6010
- *
6011
- * @categoryDescription Cutout Operation
6012
- * Defines the possible operations for a cutout.
6013
- * - 'Difference': The difference between two shapes.
6014
- * - 'Intersection': The intersection of two shapes.
6015
- * - 'Union': The union of two shapes.
6016
- * - 'XOR': The exclusive OR of two shapes.
6017
- *
6018
- * @public
6019
- */
6020
- export declare type CutoutOperation = 'Difference' | 'Intersection' | 'Union' | 'XOR';
6021
-
6022
6145
  /**
6023
6146
  * Represents the type of a cutout.
6024
6147
  *
@@ -6029,7 +6152,13 @@ export declare type CutoutOperation = 'Difference' | 'Intersection' | 'Union' |
6029
6152
  *
6030
6153
  * @public
6031
6154
  */
6032
- export declare type CutoutType = 'Solid' | 'Dashed';
6155
+ export declare type CutoutOperation = 'Difference' | 'Intersection' | 'Union' | 'XOR';
6156
+
6157
+ /** @public */
6158
+ export declare type CutoutType = (typeof CutoutTypeValues)[number];
6159
+
6160
+ /** @public */
6161
+ export declare const CutoutTypeValues: readonly ["Solid", "Dashed"];
6033
6162
 
6034
6163
  /**
6035
6164
  * Represents the default asset source IDs used in the editor.
@@ -6075,6 +6204,13 @@ export declare function defaultLogger(message: string, level?: LogLevel): void;
6075
6204
  */
6076
6205
  export declare type DemoAssetSourceId = 'ly.img.template' | 'ly.img.image.upload' | 'ly.img.video.upload' | 'ly.img.audio.upload' | 'ly.img.image' | 'ly.img.video' | 'ly.img.video.template' | 'ly.img.audio' | 'ly.img.textComponents';
6077
6206
 
6207
+ /**
6208
+ * The shorthand block type IDs for the top-level design blocks. These are the IDs used to create new blocks
6209
+ * using `cesdk.engine.block.create(id)`.
6210
+ * @public
6211
+ */
6212
+ export declare const DESIGN_BLOCK_TYPES: readonly ["scene", "stack", "camera", "page", "graphic", "audio", "text", "group", "cutout", "track", "caption", "captionTrack"];
6213
+
6078
6214
  /**
6079
6215
  * A numerical identifier for a design block
6080
6216
  * @public
@@ -6096,18 +6232,17 @@ export declare type DesignBlockType = DesignBlockTypeShorthand | DesignBlockType
6096
6232
  */
6097
6233
  export declare type DesignBlockTypeLonghand = `//ly.img.ubq/${DesignBlockTypeShorthand}`;
6098
6234
 
6099
- /**
6100
- * The shorthand block type IDs for the top-level design blocks. These are the IDs used to create new blocks
6101
- * using `cesdk.engine.block.create(id)`.
6102
- * @public
6103
- */
6104
- export declare type DesignBlockTypeShorthand = 'scene' | 'stack' | 'camera' | 'page' | 'graphic' | 'audio' | 'text' | 'group' | 'cutout' | 'track' | 'caption' | 'captionTrack';
6235
+ /** @public */
6236
+ export declare type DesignBlockTypeShorthand = (typeof DESIGN_BLOCK_TYPES)[number];
6105
6237
 
6106
- /**
6107
- * The unit type in which the page values (size, distances, etc.) are defined.
6108
- * @public
6109
- */
6110
- export declare type DesignUnit = 'Pixel' | 'Millimeter' | 'Inch';
6238
+ /** @public */
6239
+ export declare type DoubleClickSelectionMode = (typeof DoubleClickSelectionModeValues)[number];
6240
+
6241
+ /** @public */
6242
+ export declare const DoubleClickSelectionModeValues: readonly ["Direct", "Hierarchical"];
6243
+
6244
+ /** @public */
6245
+ export declare type DoublePropertyName = 'playback/time' | 'playback/duration' | 'playback/timeOffset' | 'audio/totalDuration' | 'playback/trimLength' | 'playback/trimOffset' | 'fill/video/totalDuration' | (string & {});
6111
6246
 
6112
6247
  /**
6113
6248
  * Information about a single audio track from a video.
@@ -6161,14 +6296,6 @@ export declare type EditMode = 'Transform' | 'Crop' | 'Text' | 'Playback' | 'Tri
6161
6296
  * resource handling, and global scope controls. It serves as the central configuration and control interface
6162
6297
  * for the design editor engine.
6163
6298
  *
6164
- * ## Settings API
6165
- *
6166
- * The recommended way to work with settings is through the unified API:
6167
- * - `setSetting<K>(key: K, value: Settings[K])` - Set any setting value
6168
- * - `getSetting<K>(key: K): Settings[K]` - Get any setting value
6169
- *
6170
- * Legacy methods are available in the `deprecated` namespace for backward compatibility.
6171
- *
6172
6299
  * @categoryDescription Edit Mode Management
6173
6300
  * Control the editor's current editing mode and interaction state.
6174
6301
  *
@@ -6420,7 +6547,7 @@ export declare class EditorAPI {
6420
6547
  onRoleChanged: (callback: (role: RoleString) => void) => (() => void);
6421
6548
  /**
6422
6549
  * Set a setting value using the unified API.
6423
- * The type of the value is automatically inferred from the key.
6550
+ * The value type is automatically validated based on the key.
6424
6551
  *
6425
6552
  * @category Editor Settings
6426
6553
  * @param keypath - The setting key from Settings
@@ -6468,102 +6595,114 @@ export declare class EditorAPI {
6468
6595
  /**
6469
6596
  * Set a boolean setting value.
6470
6597
  *
6471
- * @deprecated Use setSetting() instead.
6472
- *
6473
6598
  * @category Editor Settings
6474
6599
  * @param keypath - The settings keypath, e.g. `doubleClickToCropEnabled`.
6475
6600
  * @param value - The boolean value to set.
6476
6601
  * @throws Error if the keypath is invalid.
6477
6602
  */
6478
- setSettingBool(keypath: OptionalPrefix<SettingsBool>, value: boolean): void;
6603
+ setSettingBool(keypath: SettingsBool, value: boolean): void;
6604
+ /** @deprecated Support for `ubq://` prefixed keypaths will be removed in a future release. */
6605
+ setSettingBool(keypath: `ubq://${SettingsBool}`, value: boolean): void;
6479
6606
  /**
6480
6607
  * Get a boolean setting value.
6481
6608
  *
6482
- * @deprecated Use getSetting() instead.
6483
6609
  * @category Editor Settings
6484
6610
  * @param keypath - The settings keypath, e.g. `doubleClickToCropEnabled`.
6485
6611
  * @returns The boolean value of the setting.
6486
6612
  * @throws Error if the keypath is invalid.
6487
6613
  */
6488
- getSettingBool(keypath: OptionalPrefix<SettingsBool>): boolean;
6614
+ getSettingBool(keypath: SettingsBool): boolean;
6615
+ /** @deprecated Support for `ubq://` prefixed keypaths will be removed in a future release. */
6616
+ getSettingBool(keypath: `ubq://${SettingsBool}`): boolean;
6617
+ getSettingBool(keypath: SettingBoolPropertyName): boolean;
6489
6618
  /**
6490
6619
  * Set an integer setting value.
6491
6620
  *
6492
- * @deprecated Use setSetting() instead.
6493
6621
  * @category Editor Settings
6494
6622
  * @param keypath - The settings keypath.
6495
6623
  * @param value - The integer value to set.
6496
6624
  * @throws Error if the keypath is invalid.
6497
6625
  */
6498
6626
  setSettingInt(keypath: SettingsInt, value: number): void;
6627
+ setSettingInt(keypath: SettingIntPropertyName, value: number): void;
6499
6628
  /**
6500
6629
  * Get an integer setting value.
6501
6630
  *
6502
- * @deprecated Use getSetting() instead.
6503
6631
  * @category Editor Settings
6504
6632
  * @param keypath - The settings keypath.
6505
6633
  * @returns The integer value of the setting.
6506
6634
  * @throws Error if the keypath is invalid.
6507
6635
  */
6508
6636
  getSettingInt(keypath: SettingsInt): number;
6637
+ getSettingInt(keypath: SettingIntPropertyName): number;
6509
6638
  /**
6510
6639
  * Set a float setting value.
6511
6640
  *
6512
- * @deprecated Use setSetting() instead.
6513
6641
  * @category Editor Settings
6514
6642
  * @param keypath - The settings keypath, e.g. `positionSnappingThreshold`.
6515
6643
  * @param value - The float value to set.
6516
6644
  * @throws Error if the keypath is invalid.
6517
6645
  */
6518
- setSettingFloat(keypath: OptionalPrefix<SettingsFloat>, value: number): void;
6646
+ setSettingFloat(keypath: SettingsFloat, value: number): void;
6647
+ /** @deprecated Support for `ubq://` prefixed keypaths will be removed in a future release. */
6648
+ setSettingFloat(keypath: `ubq://${SettingsFloat}`, value: number): void;
6649
+ setSettingFloat(keypath: SettingFloatPropertyName, value: number): void;
6519
6650
  /**
6520
6651
  * Get a float setting value.
6521
6652
  *
6522
- * @deprecated Use getSetting() instead.
6523
6653
  * @category Editor Settings
6524
6654
  * @param keypath - The settings keypath, e.g. `positionSnappingThreshold`.
6525
6655
  * @returns The float value of the setting.
6526
6656
  * @throws Error if the keypath is invalid.
6527
6657
  */
6528
- getSettingFloat(keypath: OptionalPrefix<SettingsFloat>): number;
6658
+ getSettingFloat(keypath: SettingsFloat): number;
6659
+ /** @deprecated Support for `ubq://` prefixed keypaths will be removed in a future release. */
6660
+ getSettingFloat(keypath: `ubq://${SettingsFloat}`): number;
6661
+ getSettingFloat(keypath: SettingFloatPropertyName): number;
6529
6662
  /**
6530
6663
  * Set a string setting value.
6531
6664
  *
6532
- * @deprecated Use setSetting() instead.
6533
6665
  * @category Editor Settings
6534
6666
  * @param keypath - The settings keypath, e.g. `license`.
6535
6667
  * @param value - The string value to set.
6536
6668
  * @throws Error if the keypath is invalid.
6537
6669
  */
6538
- setSettingString(keypath: OptionalPrefix<SettingsString>, value: string): void;
6670
+ setSettingString(keypath: SettingsString, value: string): void;
6671
+ /** @deprecated Support for `ubq://` prefixed keypaths will be removed in a future release. */
6672
+ setSettingString(keypath: `ubq://${SettingsString}`, value: string): void;
6673
+ setSettingString(keypath: SettingStringPropertyName, value: string): void;
6539
6674
  /**
6540
6675
  * Get a string setting value.
6541
6676
  *
6542
- * @deprecated Use getSetting() instead.
6543
6677
  * @category Editor Settings
6544
6678
  * @param keypath - The settings keypath, e.g. `license`.
6545
6679
  * @returns The string value of the setting.
6546
6680
  * @throws Error if the keypath is invalid.
6547
6681
  */
6548
- getSettingString(keypath: OptionalPrefix<SettingsString>): string;
6682
+ getSettingString(keypath: SettingsString): string;
6683
+ /** @deprecated Support for `ubq://` prefixed keypaths will be removed in a future release. */
6684
+ getSettingString(keypath: `ubq://${SettingsString}`): string;
6685
+ getSettingString(keypath: SettingStringPropertyName): string;
6549
6686
  /**
6550
6687
  * Set a color setting.
6551
- *
6552
- * @deprecated Use setSetting() instead.
6553
6688
  * @category Editor Settings
6554
6689
  * @param keypath - The settings keypath, e.g. `highlightColor`.
6555
6690
  * @param value - The The value to set.
6556
6691
  */
6557
- setSettingColor(keypath: OptionalPrefix<SettingsColor>, value: Color): void;
6692
+ setSettingColor(keypath: SettingsColor, value: Color): void;
6693
+ /** @deprecated Support for `ubq://` prefixed keypaths will be removed in a future release. */
6694
+ setSettingColor(keypath: `ubq://${SettingsColor}`, value: Color): void;
6695
+ setSettingColor(keypath: SettingColorPropertyName, value: Color): void;
6558
6696
  /**
6559
6697
  * Get a color setting.
6560
- *
6561
- * @deprecated Use getSetting() instead.
6562
6698
  * @category Editor Settings
6563
6699
  * @param keypath - The settings keypath, e.g. `highlightColor`.
6564
6700
  * @throws An error, if the keypath is invalid.
6565
6701
  */
6566
- getSettingColor(keypath: OptionalPrefix<SettingsColor>): Color;
6702
+ getSettingColor(keypath: SettingsColor): Color;
6703
+ /** @deprecated Support for `ubq://` prefixed keypaths will be removed in a future release. */
6704
+ getSettingColor(keypath: `ubq://${SettingsColor}`): Color;
6705
+ getSettingColor(keypath: SettingColorPropertyName): Color;
6567
6706
  /**
6568
6707
  * Set a color setting.
6569
6708
  * @param keypath - The settings keypath, e.g. `highlightColor`.
@@ -6573,39 +6712,38 @@ export declare class EditorAPI {
6573
6712
  * @param a - The alpha color component in the range of 0 to 1.
6574
6713
  * @deprecated Use setSettingColor() instead.
6575
6714
  */
6576
- setSettingColorRGBA(keypath: OptionalPrefix<SettingsColorRGBA>, r: number, g: number, b: number, a?: number): void;
6715
+ setSettingColorRGBA(keypath: SettingsColorRGBA | `ubq://${SettingsColorRGBA}`, r: number, g: number, b: number, a?: number): void;
6577
6716
  /**
6578
6717
  * Get a color setting.
6579
6718
  * @param keypath - The settings keypath, e.g. `highlightColor`.
6580
6719
  * @returns A tuple of channels red, green, blue and alpha in the range of 0 to 1.
6581
6720
  * @deprecated Use getSettingColor() instead.
6582
6721
  */
6583
- getSettingColorRGBA(keypath: OptionalPrefix<SettingsColorRGBA>): RGBA;
6722
+ getSettingColorRGBA(keypath: SettingsColorRGBA | `ubq://${SettingsColorRGBA}`): RGBA;
6584
6723
  /**
6585
6724
  * Set an enum setting.
6586
- *
6587
- * @deprecated Use setSetting() instead.
6588
6725
  * @category Editor Settings
6589
6726
  * @param keypath - The settings keypath, e.g. `doubleClickSelectionMode`.
6590
6727
  * @param value - The enum value as string.
6591
6728
  */
6592
- setSettingEnum<T extends keyof SettingsEnum>(keypath: T, value: SettingsEnum[T]): void;
6729
+ setSettingEnum<T extends keyof SettingEnumType>(keypath: T, value: SettingEnumType[T]): void;
6730
+ setSettingEnum(keypath: string, value: string): void;
6593
6731
  /**
6594
6732
  * Get an enum setting.
6595
- *
6596
- * @deprecated Use getSetting() instead.
6597
6733
  * @category Editor Settings
6598
6734
  * @param keypath - The settings keypath, e.g. `doubleClickSelectionMode`.
6599
6735
  * @returns The value as string.
6600
6736
  */
6601
- getSettingEnum<T extends keyof SettingsEnum>(keypath: T): SettingsEnum[T];
6737
+ getSettingEnum<T extends keyof SettingEnumType>(keypath: T): SettingEnumType[T];
6738
+ getSettingEnum(keypath: string): string;
6602
6739
  /**
6603
6740
  * Get the possible enum options for a given enum setting.
6604
6741
  * @category Editor Settings
6605
6742
  * @param keypath - The settings keypath, e.g. `doubleClickSelectionMode`.
6606
6743
  * @returns The possible enum options as strings.
6607
6744
  */
6608
- getSettingEnumOptions<T extends keyof SettingsEnum>(keypath: T): string[];
6745
+ getSettingEnumOptions<T extends keyof SettingEnumType>(keypath: T): SettingEnumType[T][];
6746
+ getSettingEnumOptions(keypath: string): string[];
6609
6747
  /**
6610
6748
  * Set the user role and apply role-dependent defaults.
6611
6749
  *
@@ -6627,7 +6765,7 @@ export declare class EditorAPI {
6627
6765
  * @category Editor Settings
6628
6766
  * @returns A list of settings keypaths.
6629
6767
  */
6630
- findAllSettings(): SettingKey[];
6768
+ findAllSettings(): string[];
6631
6769
  /**
6632
6770
  * Returns the type of a setting.
6633
6771
  * @category Editor Settings
@@ -6983,6 +7121,37 @@ export declare class EditorAPI {
6983
7121
  * @param enabled - Whether or not the block should show highlighting when selected or hovered.
6984
7122
  */
6985
7123
  setHighlightingEnabled(id: DesignBlockId, enabled: boolean): void;
7124
+ /**
7125
+ * Set global safe area insets for UI overlays.
7126
+ *
7127
+ * Safe area insets define UI-safe regions by specifying padding from screen edges.
7128
+ * These insets are automatically applied to all camera operations (zoom, pan, clamping)
7129
+ * to ensure important content remains visible when UI elements overlap the viewport edges.
7130
+ * Set to zero to disable (default state).
7131
+ *
7132
+ * @param insets - The inset values in CSS pixels (device-independent)
7133
+ * @public
7134
+ * @category Viewport
7135
+ */
7136
+ setSafeAreaInsets(insets: {
7137
+ left?: number;
7138
+ top?: number;
7139
+ right?: number;
7140
+ bottom?: number;
7141
+ }): void;
7142
+ /**
7143
+ * Get the current global safe area insets configuration.
7144
+ *
7145
+ * @returns The current inset values in CSS pixels (device-independent)
7146
+ * @public
7147
+ * @category Viewport
7148
+ */
7149
+ getSafeAreaInsets(): {
7150
+ left: number;
7151
+ top: number;
7152
+ right: number;
7153
+ bottom: number;
7154
+ };
6986
7155
  /**
6987
7156
  * Checks whether the block can currently be selected.
6988
7157
  *
@@ -7007,6 +7176,13 @@ export declare class EditorAPI {
7007
7176
  setSelectionEnabled(id: DesignBlockId, enabled: boolean): void;
7008
7177
  }
7009
7178
 
7179
+ /**
7180
+ * The shorthand block type IDs for the effect blocks. These are the IDs used to create new effects
7181
+ * using `cesdk.engine.block.createEffect(id)`.
7182
+ * @public
7183
+ */
7184
+ export declare const EFFECT_TYPES: readonly ["adjustments", "cross_cut", "dot_pattern", "duotone_filter", "extrude_blur", "glow", "green_screen", "half_tone", "linocut", "liquid", "lut_filter", "mirror", "outliner", "pixelize", "posterize", "radial_pixel", "recolor", "sharpie", "shifter", "tilt_shift", "tv_glitch", "vignette"];
7185
+
7010
7186
  /**
7011
7187
  * The block type IDs for the effect blocks. These are the IDs used to create new effects
7012
7188
  * using `cesdk.engine.block.createEffect(id)`.
@@ -7022,12 +7198,8 @@ export declare type EffectType = EffectTypeShorthand | EffectTypeLonghand;
7022
7198
  */
7023
7199
  export declare type EffectTypeLonghand = `//ly.img.ubq/effect/${EffectTypeShorthand}`;
7024
7200
 
7025
- /**
7026
- * The shorthand block type IDs for the effect blocks. These are the IDs used to create new effects
7027
- * using `cesdk.engine.block.createEffect(id)`.
7028
- * @public
7029
- */
7030
- export declare type EffectTypeShorthand = 'adjustments' | 'cross_cut' | 'dot_pattern' | 'duotone_filter' | 'extrude_blur' | 'glow' | 'green_screen' | 'half_tone' | 'linocut' | 'liquid' | 'lut_filter' | 'mirror' | 'outliner' | 'pixelize' | 'posterize' | 'radial_pixel' | 'recolor' | 'sharpie' | 'shifter' | 'tilt_shift' | 'tv_glitch' | 'vignette';
7201
+ /** @public */
7202
+ export declare type EffectTypeShorthand = (typeof EFFECT_TYPES)[number];
7031
7203
 
7032
7204
  /**
7033
7205
  * Represents an engine plugin.
@@ -7057,6 +7229,12 @@ export declare type EnginePluginContext = {
7057
7229
  engine: CreativeEngine;
7058
7230
  };
7059
7231
 
7232
+ /** @public */
7233
+ export declare type EnumPropertyName = 'blend/mode' | 'contentFill/mode' | 'height/mode' | 'position/x/mode' | 'position/y/mode' | 'scene/designUnit' | 'scene/layout' | 'scene/mode' | 'width/mode' | 'stroke/cornerGeometry' | 'stroke/position' | 'stroke/style' | 'text/horizontalAlignment' | 'text/verticalAlignment' | 'cutout/type' | 'caption/horizontalAlignment' | 'caption/verticalAlignment' | 'animationEasing' | 'textAnimationWritingStyle' | 'animation/grow/direction' | 'animation/wipe/direction' | 'animation/baseline/direction' | 'animation/spin/direction' | 'animation/spin_loop/direction' | 'animation/jump_loop/direction' | 'animation/typewriter_text/writingStyle' | 'animation/block_swipe_text/direction' | 'animation/merge_text/direction' | 'animation/ken_burns/direction' | 'fill/pixelStream/orientation' | (string & {});
7234
+
7235
+ /** @public */
7236
+ export declare type EnumValues = BlendMode | ContentFillMode | HeightMode | PositionXMode | PositionYMode | SceneDesignUnit | SceneLayout | SceneMode | WidthMode | StrokeCornerGeometry | StrokePosition | StrokeStyle | TextHorizontalAlignment | TextVerticalAlignment | CutoutType | CaptionHorizontalAlignment | CaptionVerticalAlignment | AnimationEasing | TextAnimationWritingStyle | AnimationGrowDirection | AnimationWipeDirection | AnimationBaselineDirection | AnimationSpinDirection | AnimationSpinLoopDirection | AnimationJumpLoopDirection | AnimationTypewriterTextWritingStyle | AnimationBlockSwipeTextDirection | AnimationMergeTextDirection | AnimationKenBurnsDirection | FillPixelStreamOrientation | (string & {});
7237
+
7060
7238
  /**
7061
7239
  * A function that compares two values for equality
7062
7240
  * @public
@@ -7176,6 +7354,19 @@ export declare type ExportOptions = {
7176
7354
  abortSignal?: AbortSignal;
7177
7355
  };
7178
7356
 
7357
+ /**
7358
+ * The shorthand block type IDs for the fill blocks. These are the IDs used to create new fills
7359
+ * using `cesdk.engine.block.createFill(id)`.
7360
+ * @public
7361
+ */
7362
+ export declare const FILL_TYPES: readonly ["color", "gradient/linear", "gradient/radial", "gradient/conical", "image", "video", "pixelStream"];
7363
+
7364
+ /** @public */
7365
+ export declare type FillPixelStreamOrientation = (typeof FillPixelStreamOrientationValues)[number];
7366
+
7367
+ /** @public */
7368
+ export declare const FillPixelStreamOrientationValues: readonly ["Up", "Down", "Left", "Right", "UpMirrored", "DownMirrored", "LeftMirrored", "RightMirrored"];
7369
+
7179
7370
  /**
7180
7371
  * The block type IDs for the fill blocks. These are the IDs used to create new fills
7181
7372
  * using `cesdk.engine.block.createFill(id)`.
@@ -7191,12 +7382,8 @@ export declare type FillType = FillTypeShorthand | FillTypeLonghand;
7191
7382
  */
7192
7383
  export declare type FillTypeLonghand = `//ly.img.ubq/fill/${FillTypeShorthand}`;
7193
7384
 
7194
- /**
7195
- * The shorthand block type IDs for the fill blocks. These are the IDs used to create new fills
7196
- * using `cesdk.engine.block.createFill(id)`.
7197
- * @public
7198
- */
7199
- export declare type FillTypeShorthand = 'color' | 'gradient/linear' | 'gradient/radial' | 'gradient/conical' | 'image' | 'video' | 'pixelStream';
7385
+ /** @public */
7386
+ export declare type FillTypeShorthand = (typeof FILL_TYPES)[number];
7200
7387
 
7201
7388
  /**
7202
7389
  * Represents a query for finding assets.
@@ -7238,6 +7425,9 @@ export declare interface _Flip {
7238
7425
  vertical: boolean;
7239
7426
  }
7240
7427
 
7428
+ /** @public */
7429
+ export declare type FloatPropertyName = 'globalBoundingBox/height' | 'globalBoundingBox/width' | 'globalBoundingBox/x' | 'globalBoundingBox/y' | 'height' | 'lastFrame/height' | 'lastFrame/width' | 'lastFrame/x' | 'lastFrame/y' | 'position/x' | 'position/y' | 'rotation' | 'scene/dpi' | 'scene/pageDimensions/height' | 'scene/pageDimensions/width' | 'scene/pixelScaleFactor' | 'width' | 'camera/pixelRatio' | 'camera/resolution/height' | 'camera/resolution/width' | 'camera/zoomLevel' | 'dropShadow/blurRadius/x' | 'dropShadow/blurRadius/y' | 'dropShadow/offset/x' | 'dropShadow/offset/y' | 'page/margin/bottom' | 'page/margin/left' | 'page/margin/right' | 'page/margin/top' | 'playback/speed' | 'playback/volume' | 'stroke/width' | 'opacity' | 'backgroundColor/cornerRadius' | 'backgroundColor/paddingBottom' | 'backgroundColor/paddingLeft' | 'backgroundColor/paddingRight' | 'backgroundColor/paddingTop' | 'text/fontSize' | 'text/letterSpacing' | 'text/lineHeight' | 'text/maxAutomaticFontSize' | 'text/minAutomaticFontSize' | 'text/paragraphSpacing' | 'cutout/offset' | 'cutout/smoothing' | 'caption/fontSize' | 'caption/letterSpacing' | 'caption/lineHeight' | 'caption/maxAutomaticFontSize' | 'caption/minAutomaticFontSize' | 'caption/paragraphSpacing' | 'animation/slide/direction' | 'textAnimationOverlap' | 'animation/pan/direction' | 'animation/pan/distance' | 'animation/blur/intensity' | 'animation/crop_zoom/scale' | 'animation/spin/intensity' | 'animation/blur_loop/intensity' | 'animation/pulsating_loop/intensity' | 'animation/breathing_loop/intensity' | 'animation/jump_loop/intensity' | 'animation/sway_loop/intensity' | 'animation/spread_text/intensity' | 'animation/merge_text/intensity' | 'animation/ken_burns/travelDistanceRatio' | 'animation/ken_burns/zoomIntensity' | 'blur/uniform/intensity' | 'blur/linear/blurRadius' | 'blur/linear/x1' | 'blur/linear/x2' | 'blur/linear/y1' | 'blur/linear/y2' | 'blur/mirrored/blurRadius' | 'blur/mirrored/gradientSize' | 'blur/mirrored/size' | 'blur/mirrored/x1' | 'blur/mirrored/x2' | 'blur/mirrored/y1' | 'blur/mirrored/y2' | 'blur/radial/blurRadius' | 'blur/radial/gradientRadius' | 'blur/radial/radius' | 'blur/radial/x' | 'blur/radial/y' | 'effect/adjustments/blacks' | 'effect/adjustments/brightness' | 'effect/adjustments/clarity' | 'effect/adjustments/contrast' | 'effect/adjustments/exposure' | 'effect/adjustments/gamma' | 'effect/adjustments/highlights' | 'effect/adjustments/saturation' | 'effect/adjustments/shadows' | 'effect/adjustments/sharpness' | 'effect/adjustments/temperature' | 'effect/adjustments/whites' | 'effect/cross_cut/offset' | 'effect/cross_cut/slices' | 'effect/cross_cut/speedV' | 'effect/cross_cut/time' | 'effect/dot_pattern/blur' | 'effect/dot_pattern/dots' | 'effect/dot_pattern/size' | 'effect/duotone_filter/intensity' | 'effect/extrude_blur/amount' | 'effect/glow/amount' | 'effect/glow/darkness' | 'effect/glow/size' | 'effect/green_screen/colorMatch' | 'effect/green_screen/smoothness' | 'effect/green_screen/spill' | 'effect/half_tone/angle' | 'effect/half_tone/scale' | 'effect/linocut/scale' | 'effect/liquid/amount' | 'effect/liquid/scale' | 'effect/liquid/time' | 'effect/lut_filter/intensity' | 'effect/outliner/amount' | 'effect/outliner/passthrough' | 'effect/posterize/levels' | 'effect/radial_pixel/radius' | 'effect/radial_pixel/segments' | 'effect/recolor/brightnessMatch' | 'effect/recolor/colorMatch' | 'effect/recolor/smoothness' | 'effect/shifter/amount' | 'effect/shifter/angle' | 'effect/tilt_shift/amount' | 'effect/tilt_shift/position' | 'effect/tv_glitch/distortion' | 'effect/tv_glitch/distortion2' | 'effect/tv_glitch/rollSpeed' | 'effect/tv_glitch/speed' | 'effect/vignette/darkness' | 'effect/vignette/offset' | 'fill/gradient/linear/endPointX' | 'fill/gradient/linear/endPointY' | 'fill/gradient/linear/startPointX' | 'fill/gradient/linear/startPointY' | 'fill/gradient/radial/centerPointX' | 'fill/gradient/radial/centerPointY' | 'fill/gradient/radial/radius' | 'fill/gradient/conical/centerPointX' | 'fill/gradient/conical/centerPointY' | 'shape/rect/cornerRadiusBL' | 'shape/rect/cornerRadiusBR' | 'shape/rect/cornerRadiusTL' | 'shape/rect/cornerRadiusTR' | 'shape/polygon/cornerRadius' | 'shape/star/innerDiameter' | 'shape/vector_path/height' | 'shape/vector_path/width' | (string & {});
7430
+
7241
7431
  /**
7242
7432
  * Represents a font.
7243
7433
  *
@@ -7255,10 +7445,10 @@ export declare interface Font {
7255
7445
 
7256
7446
  /**
7257
7447
  * Extended design unit type that includes Point for font size operations.
7258
- * Maintains consistency with DesignUnit's capitalized naming convention.
7448
+ * Maintains consistency with SceneDesignUnit's capitalized naming convention.
7259
7449
  * @public
7260
7450
  */
7261
- export declare type FontSizeUnit = DesignUnit | 'Point';
7451
+ export declare type FontSizeUnit = SceneDesignUnit | 'Point';
7262
7452
 
7263
7453
  /**
7264
7454
  * Represents the style of a font.
@@ -7315,6 +7505,12 @@ b: number,
7315
7505
  a: number
7316
7506
  ];
7317
7507
 
7508
+ /** @public */
7509
+ export declare type HeightMode = (typeof HeightModeValues)[number];
7510
+
7511
+ /** @public */
7512
+ export declare const HeightModeValues: readonly ["Absolute", "Percent", "Auto"];
7513
+
7318
7514
  /**
7319
7515
  * Represents a hexadecimal color value (RGB or RGBA) that starts with a '#'.
7320
7516
  *
@@ -7333,25 +7529,8 @@ export declare type HexColorString = string;
7333
7529
  */
7334
7530
  export declare type HistoryId = number;
7335
7531
 
7336
- /**
7337
- * Represents the horizontal alignment of blocks.
7338
- *
7339
- * The `HorizontalBlockAlignment` type provides a set of values that control the
7340
- * horizontal alignment of blocks. These options include settings for aligning
7341
- * blocks to the left, right, or center.
7342
- *
7343
- * @categoryDescription HorizontalBlockAlignment
7344
- * Methods for configuring the horizontal alignment of blocks.
7345
- *
7346
- * @public
7347
- */
7348
- export declare type HorizontalBlockAlignment = 'Left' | 'Right' | 'Center';
7349
-
7350
- /**
7351
- * The horizontal text alignment options.
7352
- * @public
7353
- */
7354
- export declare type HorizontalTextAlignment = 'Left' | 'Right' | 'Center';
7532
+ /** @public */
7533
+ export declare type HorizontalBlockAlignment = TextHorizontalAlignment;
7355
7534
 
7356
7535
  /**
7357
7536
  * A wrapper around a plain canvas
@@ -7394,6 +7573,9 @@ export declare interface HTMLCreativeEngineCanvasElement extends HTMLElement {
7394
7573
  */
7395
7574
  export declare type ImageMimeType = Extract<MimeType_2, 'image/png' | 'image/jpeg' | 'image/webp' | 'image/x-tga'>;
7396
7575
 
7576
+ /** @public */
7577
+ export declare type IntPropertyName = 'effect/lut_filter/horizontalTileCount' | 'effect/lut_filter/verticalTileCount' | 'effect/mirror/side' | 'effect/pixelize/horizontalPixelSize' | 'effect/pixelize/verticalPixelSize' | 'shape/polygon/sides' | 'shape/star/points' | (string & {});
7578
+
7397
7579
  /**
7398
7580
  * Type guard for {@link CMYKColor}.
7399
7581
  *
@@ -7641,10 +7823,7 @@ declare type OffscreenCanvas_2 = {
7641
7823
  };
7642
7824
  export { OffscreenCanvas_2 as OffscreenCanvas }
7643
7825
 
7644
- /**
7645
- * Type helper for settings keypaths that can optionally include the 'ubq://' prefix.
7646
- * @public
7647
- */
7826
+ /** @public */
7648
7827
  export declare type OptionalPrefix<T extends string> = `ubq://${T}` | T;
7649
7828
 
7650
7829
  /** @public */
@@ -7669,19 +7848,20 @@ export declare interface PageDuration {
7669
7848
  */
7670
7849
  export declare type PaletteColor = HexColorString | RGBColor | RGBAColor | SpotColor;
7671
7850
 
7672
- /**
7673
- * Represents the mode for positioning blocks.
7674
- *
7675
- * The `PositionMode` type provides a set of values that control the mode for
7676
- * positioning blocks. These options include settings for absolute positioning,
7677
- * percentage-based positioning, and automatic positioning.
7678
- *
7679
- * @categoryDescription PositionMode
7680
- * Methods for configuring the mode for positioning blocks.
7681
- *
7682
- * @public
7683
- */
7684
- export declare type PositionMode = 'Absolute' | 'Percent' | 'Auto';
7851
+ /** @public */
7852
+ export declare type PositionMode = PositionXMode | PositionYMode;
7853
+
7854
+ /** @public */
7855
+ export declare type PositionXMode = (typeof PositionXModeValues)[number];
7856
+
7857
+ /** @public */
7858
+ export declare const PositionXModeValues: readonly ["Absolute", "Percent", "Auto"];
7859
+
7860
+ /** @public */
7861
+ export declare type PositionYMode = (typeof PositionYModeValues)[number];
7862
+
7863
+ /** @public */
7864
+ export declare const PositionYModeValues: readonly ["Absolute", "Percent", "Auto"];
7685
7865
 
7686
7866
  /**
7687
7867
  * Represents the various types of properties that can be associated with design blocks.
@@ -8145,7 +8325,7 @@ export declare class SceneAPI {
8145
8325
  * @category Scene Properties
8146
8326
  * @param designUnit - The new design unit of the scene
8147
8327
  */
8148
- setDesignUnit(designUnit: DesignUnit): void;
8328
+ setDesignUnit(designUnit: SceneDesignUnit): void;
8149
8329
  /**
8150
8330
  * Returns the design unit of the current scene.
8151
8331
  *
@@ -8156,7 +8336,7 @@ export declare class SceneAPI {
8156
8336
  * @category Scene Properties
8157
8337
  * @returns The current design unit.
8158
8338
  */
8159
- getDesignUnit(): DesignUnit;
8339
+ getDesignUnit(): SceneDesignUnit;
8160
8340
  /**
8161
8341
  * Get the sorted list of pages in the scene.
8162
8342
  *
@@ -8466,17 +8646,25 @@ export declare class SceneAPI {
8466
8646
  setPlaying(play: boolean): void;
8467
8647
  }
8468
8648
 
8469
- /**
8470
- * The scene layout determines how the layout stack should layout its pages.
8471
- * @public
8472
- */
8473
- export declare type SceneLayout = 'Free' | 'VerticalStack' | 'HorizontalStack' | 'DepthStack';
8649
+ /** @public */
8650
+ declare type SceneDesignUnit = (typeof SceneDesignUnitValues)[number];
8651
+ export { SceneDesignUnit as DesignUnit }
8652
+ export { SceneDesignUnit }
8474
8653
 
8475
- /**
8476
- * The mode of the scene defines how the editor and playback should behave.
8477
- * @public
8478
- */
8479
- export declare type SceneMode = 'Design' | 'Video';
8654
+ /** @public */
8655
+ export declare const SceneDesignUnitValues: readonly ["Pixel", "Millimeter", "Inch"];
8656
+
8657
+ /** @public */
8658
+ export declare type SceneLayout = (typeof SceneLayoutValues)[number];
8659
+
8660
+ /** @public */
8661
+ export declare const SceneLayoutValues: readonly ["Free", "VerticalStack", "HorizontalStack", "DepthStack"];
8662
+
8663
+ /** @public */
8664
+ export declare type SceneMode = (typeof SceneModeValues)[number];
8665
+
8666
+ /** @public */
8667
+ export declare const SceneModeValues: readonly ["Design", "Video"];
8480
8668
 
8481
8669
  /**
8482
8670
  * @public
@@ -8495,6 +8683,32 @@ export declare type SceneMode = 'Design' | 'Video';
8495
8683
  */
8496
8684
  export declare type Scope = 'text/edit' | 'text/character' | 'fill/change' | 'fill/changeType' | 'stroke/change' | 'shape/change' | 'layer/move' | 'layer/resize' | 'layer/rotate' | 'layer/flip' | 'layer/crop' | 'layer/opacity' | 'layer/blendMode' | 'layer/visibility' | 'layer/clipping' | 'appearance/adjustments' | 'appearance/filter' | 'appearance/effect' | 'appearance/blur' | 'appearance/shadow' | 'appearance/animation' | 'lifecycle/destroy' | 'lifecycle/duplicate' | 'editor/add' | 'editor/select';
8497
8685
 
8686
+ /** @public */
8687
+ export declare type SettingBoolPropertyName = 'alwaysHighlightPlaceholders' | 'doubleClickToCropEnabled' | 'showBuildVersion' | 'placeholderControls/showButton' | 'placeholderControls/showOverlay' | 'blockAnimations/enabled' | 'renderTextCursorAndSelectionInEngine' | 'touch/dragStartCanSelect' | 'touch/singlePointPanning' | 'mouse/enableZoom' | 'mouse/enableScroll' | 'controlGizmo/showCropHandles' | 'controlGizmo/showMoveHandles' | 'controlGizmo/showResizeHandles' | 'controlGizmo/showScaleHandles' | 'controlGizmo/showRotateHandles' | 'controlGizmo/showCropScaleHandles' | 'page/title/show' | 'page/title/showPageTitleTemplate' | 'page/title/appendPageName' | 'page/title/showOnSinglePage' | 'page/dimOutOfPageAreas' | 'page/allowCropInteraction' | 'page/allowResizeInteraction' | 'page/restrictResizeInteractionToFixedAspectRatio' | 'page/allowRotateInteraction' | 'page/allowMoveInteraction' | 'page/moveChildrenWhenCroppingFill' | 'page/selectWhenNoBlocksSelected' | 'colorMaskingSettings/secondPass' | 'clampThumbnailTextureSizes' | 'useSystemFontFallback' | 'forceSystemEmojis' | (string & {});
8688
+
8689
+ /** @public */
8690
+ export declare type SettingColorPropertyName = 'clearColor' | 'handleFillColor' | 'highlightColor' | 'placeholderHighlightColor' | 'snappingGuideColor' | 'rotationSnappingGuideColor' | 'cropOverlayColor' | 'textVariableHighlightColor' | 'borderOutlineColor' | 'progressColor' | 'errorStateColor' | 'page/title/color' | 'page/marginFillColor' | 'page/marginFrameColor' | 'page/innerBorderColor' | 'page/outerBorderColor' | 'colorMaskingSettings/maskColor' | (string & {});
8691
+
8692
+ /** @public */
8693
+ export declare type SettingEnumPropertyName = 'touch/pinchAction' | 'touch/rotateAction' | 'camera/clamping/overshootMode' | 'doubleClickSelectionMode' | (string & {});
8694
+
8695
+ /** @public */
8696
+ export declare type SettingEnumType = {
8697
+ 'touch/pinchAction': TouchPinchAction;
8698
+ 'touch/rotateAction': TouchRotateAction;
8699
+ 'camera/clamping/overshootMode': CameraClampingOvershootMode;
8700
+ doubleClickSelectionMode: DoubleClickSelectionMode;
8701
+ };
8702
+
8703
+ /** @public */
8704
+ export declare type SettingEnumValues = TouchPinchAction | TouchRotateAction | CameraClampingOvershootMode | DoubleClickSelectionMode | (string & {});
8705
+
8706
+ /** @public */
8707
+ export declare type SettingFloatPropertyName = 'positionSnappingThreshold' | 'rotationSnappingThreshold' | 'controlGizmo/blockScaleDownLimit' | (string & {});
8708
+
8709
+ /** @public */
8710
+ export declare type SettingIntPropertyName = 'maxImageSize' | (string & {});
8711
+
8498
8712
  /**
8499
8713
  * Union type of all valid setting keys.
8500
8714
  * @public
@@ -8685,68 +8899,78 @@ export declare interface Settings {
8685
8899
 
8686
8900
  }
8687
8901
 
8688
- /**
8689
- * Represents the boolean settings available in the editor.
8690
- *
8691
- * @deprecated Use keyof Settings or extract the boolean keys from Settings instead.
8692
- * @public
8693
- */
8694
- export declare type SettingsBool = {
8695
- [K in keyof Settings]: Settings[K] extends boolean ? K : never;
8696
- }[keyof Settings];
8902
+ /** @public */
8903
+ export declare type SettingsBool = SettingBoolPropertyName;
8697
8904
 
8698
8905
  /**
8699
8906
  * Represents the color settings available in the editor.
8700
8907
  *
8701
- * @deprecated Use keyof Settings or extract the color keys from Settings instead.
8908
+ * @categoryDescription Color Settings
8909
+ * Defines the possible color settings in the editor.
8910
+ * - 'borderOutlineColor': The color of the border outline.
8911
+ * - 'clearColor': The clear color.
8912
+ * - 'colorMaskingSettings/maskColor': The color used for masking.
8913
+ * - 'cropOverlayColor': The color of the crop overlay.
8914
+ * - 'errorStateColor': The color indicating an error state.
8915
+ * - 'highlightColor': The highlight color.
8916
+ * - 'page/innerBorderColor': The color of the inner border of the page.
8917
+ * - 'page/marginFillColor': The color of the margin fill.
8918
+ * - 'page/marginFrameColor': The color of the margin frame.
8919
+ * - 'page/outerBorderColor': The color of the outer border of the page.
8920
+ * - 'page/title/color': The color of the page title.
8921
+ * - 'placeholderHighlightColor': The highlight color for placeholders.
8922
+ * - 'progressColor': The color indicating progress.
8923
+ * - 'rotationSnappingGuideColor': The color of the rotation snapping guide.
8924
+ * - 'ruleOfThirdsLineColor': The color of the rule of thirds lines.
8925
+ * - 'snappingGuideColor': The color of the snapping guide.
8926
+ * - 'textVariableHighlightColor': The highlight color for text variables.
8927
+ *
8702
8928
  * @public
8703
8929
  */
8704
- export declare type SettingsColor = {
8705
- [K in keyof Settings]: Settings[K] extends Color ? K : never;
8706
- }[keyof Settings];
8930
+ export declare type SettingsColor = SettingColorPropertyName;
8707
8931
 
8708
8932
  /**
8709
8933
  * Represents the color settings available in the editor.
8710
8934
  *
8935
+ * @categoryDescription Color Settings
8936
+ * Defines the possible color settings in the editor.
8937
+ * - 'borderOutlineColor': The color of the border outline.
8938
+ * - 'clearColor': The clear color.
8939
+ * - 'colorMaskingSettings/maskColor': The color used for masking.
8940
+ * - 'cropOverlayColor': The color of the crop overlay.
8941
+ * - 'errorStateColor': The color indicating an error state.
8942
+ * - 'highlightColor': The highlight color.
8943
+ * - 'page/innerBorderColor': The color of the inner border of the page.
8944
+ * - 'page/marginFillColor': The color of the margin fill.
8945
+ * - 'page/marginFrameColor': The color of the margin frame.
8946
+ * - 'page/outerBorderColor': The color of the outer border of the page.
8947
+ * - 'page/title/color': The color of the page title.
8948
+ * - 'placeholderHighlightColor': The highlight color for placeholders.
8949
+ * - 'progressColor': The color indicating progress.
8950
+ * - 'rotationSnappingGuideColor': The color of the rotation snapping guide.
8951
+ * - 'ruleOfThirdsLineColor': The color of the rule of thirds lines.
8952
+ * - 'snappingGuideColor': The color of the snapping guide.
8953
+ * - 'textVariableHighlightColor': The highlight color for text variables.
8954
+ *
8711
8955
  * @public
8712
8956
  * @deprecated Use SettingsColor instead.
8713
8957
  */
8714
8958
  export declare type SettingsColorRGBA = SettingsColor;
8715
8959
 
8716
- /**
8717
- * Represents the enum settings available in the editor.
8718
- *
8719
- * @deprecated Use keyof Settings or extract the enum keys from Settings instead.
8720
- * @public
8721
- */
8722
- export declare type SettingsEnum = Pick<Settings, 'doubleClickSelectionMode' | 'touch/pinchAction' | 'touch/rotateAction' | 'camera/clamping/overshootMode' | 'dock/iconSize'>;
8960
+ /** @public */
8961
+ export declare type SettingsEnum = SettingEnumType;
8723
8962
 
8724
- /**
8725
- * Represents the float settings available in the editor.
8726
- *
8727
- * @deprecated Use keyof Settings or extract the float keys from Settings instead.
8728
- * @public
8729
- */
8730
- export declare type SettingsFloat = Exclude<{
8731
- [K in keyof Settings]: Settings[K] extends number ? K : never;
8732
- }[keyof Settings], SettingsInt>;
8963
+ /** @public */
8964
+ export declare type SettingsFloat = SettingFloatPropertyName;
8733
8965
 
8734
- /**
8735
- * Represents the integer settings available in the editor.
8736
- *
8737
- * @public
8738
- */
8739
- export declare type SettingsInt = 'maxImageSize';
8966
+ /** @public */
8967
+ export declare type SettingsInt = SettingIntPropertyName;
8740
8968
 
8741
- /**
8742
- * Represents the string settings available in the editor.
8743
- *
8744
- * @deprecated Use keyof Settings or extract the string keys from Settings instead.
8745
- * @public
8746
- */
8747
- export declare type SettingsString = Exclude<{
8748
- [K in keyof Settings]: Settings[K] extends string ? K : never;
8749
- }[keyof Settings], keyof SettingsEnum | 'renderMode'>;
8969
+ /** @public */
8970
+ export declare type SettingsString = SettingStringPropertyName;
8971
+
8972
+ /** @public */
8973
+ export declare type SettingStringPropertyName = 'basePath' | 'defaultEmojiFontFileUri' | 'defaultFontFileUri' | 'upload/supportedMimeTypes' | 'license' | 'page/title/separator' | 'page/title/fontFileUri' | 'fallbackFontUri' | (string & {});
8750
8974
 
8751
8975
  /**
8752
8976
  * Represents the type of a setting.
@@ -8770,6 +8994,13 @@ export declare type SettingType = 'Bool' | 'Int' | 'Float' | 'String' | 'Color'
8770
8994
  */
8771
8995
  export declare type SettingValueType<K extends SettingKey> = Settings[K];
8772
8996
 
8997
+ /**
8998
+ * The shorthand block type IDs for the shape blocks. These are the IDs used to create new shapes
8999
+ * using `cesdk.engine.block.createShape(id)`.
9000
+ * @public
9001
+ */
9002
+ export declare const SHAPE_TYPES: readonly ["rect", "line", "ellipse", "polygon", "star", "vector_path"];
9003
+
8773
9004
  /**
8774
9005
  * The block type IDs for the shape blocks. These are the IDs used to create new shapes
8775
9006
  * using `cesdk.engine.block.createShape(id)`.
@@ -8785,12 +9016,8 @@ export declare type ShapeType = ShapeTypeShorthand | ShapeTypeLonghand;
8785
9016
  */
8786
9017
  export declare type ShapeTypeLonghand = `//ly.img.ubq/shape/${ShapeTypeShorthand}`;
8787
9018
 
8788
- /**
8789
- * The shorthand block type IDs for the shape blocks. These are the IDs used to create new shapes
8790
- * using `cesdk.engine.block.createShape(id)`.
8791
- * @public
8792
- */
8793
- export declare type ShapeTypeShorthand = 'rect' | 'line' | 'ellipse' | 'polygon' | 'star' | 'vector_path';
9019
+ /** @public */
9020
+ export declare type ShapeTypeShorthand = (typeof SHAPE_TYPES)[number];
8794
9021
 
8795
9022
  /** @public */
8796
9023
  export declare interface Size2 {
@@ -8798,19 +9025,8 @@ export declare interface Size2 {
8798
9025
  height: number;
8799
9026
  }
8800
9027
 
8801
- /**
8802
- * Represents the mode for sizing blocks.
8803
- *
8804
- * The `SizeMode` type provides a set of values that control the mode for sizing
8805
- * blocks. These options include settings for absolute sizing, percentage-based
8806
- * sizing, and automatic sizing.
8807
- *
8808
- * @categoryDescription SizeMode
8809
- * Methods for configuring the mode for sizing blocks.
8810
- *
8811
- * @public
8812
- */
8813
- export declare type SizeMode = 'Absolute' | 'Percent' | 'Auto';
9028
+ /** @public */
9029
+ export declare type SizeMode = WidthMode | HeightMode;
8814
9030
 
8815
9031
  /**
8816
9032
  * The order to sort by if the asset source supports sorting.
@@ -8838,6 +9054,9 @@ export declare interface _Source<T> {
8838
9054
  emit: (value: T) => void;
8839
9055
  }
8840
9056
 
9057
+ /** @public */
9058
+ export declare type SourceSetPropertyName = 'fill/image/sourceSet' | (string & {});
9059
+
8841
9060
  /**
8842
9061
  * Options for configuring block split operations.
8843
9062
  * @public
@@ -8876,47 +9095,26 @@ export declare interface SpotColor {
8876
9095
  externalReference: string;
8877
9096
  }
8878
9097
 
8879
- /**
8880
- * Represents the corner geometry of a stroke.
8881
- *
8882
- * @categoryDescription Stroke Corner Geometry
8883
- * Defines the possible corner geometries for a stroke.
8884
- * - 'Bevel': A beveled corner.
8885
- * - 'Miter': A mitered corner.
8886
- * - 'Round': A rounded corner.
8887
- *
8888
- * @public
8889
- */
8890
- export declare type StrokeCornerGeometry = 'Bevel' | 'Miter' | 'Round';
9098
+ /** @public */
9099
+ export declare type StringPropertyName = 'name' | 'scene/pageFormatId' | 'type' | 'uuid' | 'page/titleTemplate' | 'audio/fileURI' | 'text/externalReference' | 'text/fontFileUri' | 'text/text' | 'text/typeface' | 'cutout/path' | 'caption/externalReference' | 'caption/fontFileUri' | 'caption/text' | 'caption/typeface' | 'effect/lut_filter/lutFileURI' | 'fill/image/externalReference' | 'fill/image/imageFileURI' | 'fill/image/previewFileURI' | 'fill/video/fileURI' | 'shape/vector_path/path' | (string & {});
8891
9100
 
8892
- /**
8893
- * Represents the position of a stroke relative to the shape's boundary.
8894
- *
8895
- * @categoryDescription Stroke Position
8896
- * Defines the possible positions for a stroke relative to the shape's boundary.
8897
- * - 'Center': The stroke is centered on the shape's boundary.
8898
- * - 'Inner': The stroke is inside the shape's boundary.
8899
- * - 'Outer': The stroke is outside the shape's boundary.
8900
- *
8901
- * @public
8902
- */
8903
- export declare type StrokePosition = 'Center' | 'Inner' | 'Outer';
9101
+ /** @public */
9102
+ export declare type StrokeCornerGeometry = (typeof StrokeCornerGeometryValues)[number];
8904
9103
 
8905
- /**
8906
- * Represents the style of a stroke.
8907
- *
8908
- * @categoryDescription Stroke Style
8909
- * Defines the possible styles for a stroke.
8910
- * - 'Dashed': A dashed line stroke.
8911
- * - 'DashedRound': A dashed line stroke with rounded ends.
8912
- * - 'Dotted': A dotted line stroke.
8913
- * - 'LongDashed': A long dashed line stroke.
8914
- * - 'LongDashedRound': A long dashed line stroke with rounded ends.
8915
- * - 'Solid': A solid line stroke.
8916
- *
8917
- * @public
8918
- */
8919
- export declare type StrokeStyle = 'Dashed' | 'DashedRound' | 'Dotted' | 'LongDashed' | 'LongDashedRound' | 'Solid';
9104
+ /** @public */
9105
+ export declare const StrokeCornerGeometryValues: readonly ["Bevel", "Miter", "Round"];
9106
+
9107
+ /** @public */
9108
+ export declare type StrokePosition = (typeof StrokePositionValues)[number];
9109
+
9110
+ /** @public */
9111
+ export declare const StrokePositionValues: readonly ["Center", "Inner", "Outer"];
9112
+
9113
+ /** @public */
9114
+ export declare type StrokeStyle = (typeof StrokeStyleValues)[number];
9115
+
9116
+ /** @public */
9117
+ export declare const StrokeStyleValues: readonly ["Dashed", "DashedRound", "Dotted", "LongDashed", "LongDashedRound", "Solid"];
8920
9118
 
8921
9119
  /**
8922
9120
  * Represents a subscription to an event.
@@ -8957,6 +9155,12 @@ export declare function supportsVideoExport(): Promise<boolean>;
8957
9155
  */
8958
9156
  export declare function supportsWasm(): boolean;
8959
9157
 
9158
+ /** @public */
9159
+ export declare type TextAnimationWritingStyle = (typeof TextAnimationWritingStyleValues)[number];
9160
+
9161
+ /** @public */
9162
+ export declare const TextAnimationWritingStyleValues: readonly ["Block", "Line", "Character", "Word"];
9163
+
8960
9164
  /**
8961
9165
  * Represents the text case of a text block.
8962
9166
  *
@@ -8984,6 +9188,34 @@ export declare interface TextFontSizeOptions {
8984
9188
  to?: number;
8985
9189
  }
8986
9190
 
9191
+ /** @public */
9192
+ declare type TextHorizontalAlignment = (typeof TextHorizontalAlignmentValues)[number];
9193
+ export { TextHorizontalAlignment as HorizontalTextAlignment }
9194
+ export { TextHorizontalAlignment }
9195
+
9196
+ /** @public */
9197
+ export declare const TextHorizontalAlignmentValues: readonly ["Left", "Right", "Center"];
9198
+
9199
+ /** @public */
9200
+ declare type TextVerticalAlignment = (typeof TextVerticalAlignmentValues)[number];
9201
+ export { TextVerticalAlignment }
9202
+ export { TextVerticalAlignment as VerticalTextAlignment }
9203
+
9204
+ /** @public */
9205
+ export declare const TextVerticalAlignmentValues: readonly ["Top", "Bottom", "Center"];
9206
+
9207
+ /** @public */
9208
+ export declare type TouchPinchAction = (typeof TouchPinchActionValues)[number];
9209
+
9210
+ /** @public */
9211
+ export declare const TouchPinchActionValues: readonly ["None", "Zoom", "Scale"];
9212
+
9213
+ /** @public */
9214
+ export declare type TouchRotateAction = (typeof TouchRotateActionValues)[number];
9215
+
9216
+ /** @public */
9217
+ export declare const TouchRotateActionValues: readonly ["None", "Rotate"];
9218
+
8987
9219
  /**
8988
9220
  * Represents a transient resource.
8989
9221
  *
@@ -9204,25 +9436,8 @@ export declare interface Vec3 {
9204
9436
  z: number;
9205
9437
  }
9206
9438
 
9207
- /**
9208
- * Represents the vertical alignment of blocks.
9209
- *
9210
- * The `VerticalBlockAlignment` type provides a set of values that control the
9211
- * vertical alignment of blocks. These options include settings for aligning
9212
- * blocks to the top, bottom, or center.
9213
- *
9214
- * @categoryDescription VerticalBlockAlignment
9215
- * Methods for configuring the vertical alignment of blocks.
9216
- *
9217
- * @public
9218
- */
9219
- export declare type VerticalBlockAlignment = 'Top' | 'Bottom' | 'Center';
9220
-
9221
- /**
9222
- * The vertical text alignment options.
9223
- * @public
9224
- */
9225
- export declare type VerticalTextAlignment = 'Top' | 'Bottom' | 'Center';
9439
+ /** @public */
9440
+ export declare type VerticalBlockAlignment = TextVerticalAlignment;
9226
9441
 
9227
9442
  /**
9228
9443
  * Represents the options for exporting a video.
@@ -9327,6 +9542,12 @@ export declare type VideoExportOptions = {
9327
9542
  */
9328
9543
  export declare type VideoMimeType = Extract<MimeType_2, 'video/mp4' | 'video/quicktime'>;
9329
9544
 
9545
+ /** @public */
9546
+ export declare type WidthMode = (typeof WidthModeValues)[number];
9547
+
9548
+ /** @public */
9549
+ export declare const WidthModeValues: readonly ["Absolute", "Percent", "Auto"];
9550
+
9330
9551
  /**
9331
9552
  * Describes a rectangle on the screen.
9332
9553
  *