@cesdk/engine 1.72.0-nightly.20260320 → 1.72.0-rc.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.
package/index.d.ts CHANGED
@@ -5591,7 +5591,6 @@ export declare class BlockAPI {
5591
5591
  /**
5592
5592
  * Adds a video block to the current scene page. The video will be positioned and sized
5593
5593
  * according to the provided parameters. Timeline and animation effects can be applied.
5594
- * Only works in Video mode, not in Design mode.
5595
5594
  *
5596
5595
  * @category Helper
5597
5596
  * @param url - URL or path to the video file
@@ -5599,7 +5598,7 @@ export declare class BlockAPI {
5599
5598
  * @param height - Height of the video in scene design units
5600
5599
  * @param options - Configuration options for the video
5601
5600
  * @returns Promise that resolves to the ID of the created video block
5602
- * @throws Error if called in Design mode or if no current page exists
5601
+ * @throws Error if no current page exists
5603
5602
  */
5604
5603
  addVideo(url: string, width: number, height: number, options?: AddVideoOptions): Promise<DesignBlockId>;
5605
5604
  /**
@@ -5620,23 +5619,20 @@ export declare class BlockAPI {
5620
5619
  applyDropShadow(block: DesignBlockId, options?: DropShadowOptions): void;
5621
5620
  /**
5622
5621
  * Generates a thumbnail image of the scene at a specific time.
5623
- * Only works in Video mode, not in Design mode.
5624
5622
  *
5625
5623
  * @category Helper
5626
5624
  * @param height - Height of the thumbnail in scene design units (maximum 512)
5627
5625
  * @param time - Time position in seconds to capture the thumbnail
5628
5626
  * @returns Promise that resolves to a Blob containing the PNG thumbnail image
5629
- * @throws Error if no page exists, if called in Design mode, or if height exceeds 512 pixels
5627
+ * @throws Error if no page exists or if height exceeds 512 pixels
5630
5628
  */
5631
5629
  generateThumbnailAtTimeOffset(height: number, time: number): Promise<Blob>;
5632
5630
  /**
5633
5631
  * Gets the background track of the current scene.
5634
5632
  * The background track is the track that determines the page duration.
5635
- * Only works in Video mode, not in Design mode.
5636
5633
  *
5637
5634
  * @category Helper
5638
5635
  * @returns The ID of the background track, or null if none exists
5639
- * @throws Error if called in Design mode
5640
5636
  */
5641
5637
  getBackgroundTrack(): DesignBlockId | null;
5642
5638
  /**
@@ -6381,7 +6377,7 @@ declare class CreativeEngine {
6381
6377
  baseURL?: string;
6382
6378
  /** A list of IDs, that will be ignored during load */
6383
6379
  excludeAssetSourceIds?: DemoAssetSourceId[];
6384
- /** If 'Video' video specific demo asset sources will be loaded as well (default 'Design') */
6380
+ /** @deprecated Since v1.72. Scene mode no longer affects which asset sources are loaded. */
6385
6381
  sceneMode?: SceneMode;
6386
6382
  /** If 'true' asset sources for uploads are added (default false) */
6387
6383
  withUploadAssetSources?: boolean;
@@ -6567,7 +6563,7 @@ export declare type DropShadowOptions = {
6567
6563
  *
6568
6564
  * @public
6569
6565
  */
6570
- export declare type EditMode = 'Transform' | 'Crop' | 'Text' | 'Playback' | 'Trim' | (string & {});
6566
+ export declare type EditMode = 'Transform' | 'Crop' | 'Text' | 'Playback' | 'Trim' | 'Vector' | (string & {});
6571
6567
 
6572
6568
  /**
6573
6569
  * @public Control the design editor's behavior and settings.
@@ -6629,7 +6625,7 @@ export declare class EditorAPI {
6629
6625
  * ```
6630
6626
  *
6631
6627
  * @category Edit Mode Management
6632
- * @param mode - "Transform", "Crop", "Text", "Playback", "Trim" or a custom value.
6628
+ * @param mode - "Transform", "Crop", "Text", "Playback", "Trim", "Vector" or a custom value.
6633
6629
  * @param baseMode - Optional base mode from which the custom mode will inherit the settings.
6634
6630
  */
6635
6631
  setEditMode(mode: EditMode, baseMode?: string): void;
@@ -6639,7 +6635,7 @@ export declare class EditorAPI {
6639
6635
  * Edit modes represent different tools or interaction states within the editor. Common ones, are "Crop" while the crop tool is shown or "Text" when inline-editing text.
6640
6636
  *
6641
6637
  * @category Edit Mode Management
6642
- * @returns "Transform", "Crop", "Text", "Playback", "Trim" or a custom value.
6638
+ * @returns "Transform", "Crop", "Text", "Playback", "Trim", "Vector" or a custom value.
6643
6639
  */
6644
6640
  getEditMode(): EditMode;
6645
6641
  /**
@@ -6652,13 +6648,110 @@ export declare class EditorAPI {
6652
6648
  * @experimental This API is experimental and may change or be removed in future versions.
6653
6649
  */
6654
6650
  unstable_isInteractionHappening(): boolean;
6651
+ /**
6652
+ * Check whether a vector anchor node is currently selected in vector edit mode.
6653
+ *
6654
+ * @category Vector Edit
6655
+ * @returns True if a vector anchor node is selected.
6656
+ */
6657
+ hasSelectedVectorNode(): boolean;
6658
+ /**
6659
+ * Add a new vertex by splitting the segment after the currently selected vector node.
6660
+ *
6661
+ * @category Vector Edit
6662
+ */
6663
+ addVectorNode(): void;
6664
+ /**
6665
+ * Delete the currently selected vector node from the path.
6666
+ *
6667
+ * @category Vector Edit
6668
+ */
6669
+ deleteVectorNode(): void;
6670
+ /**
6671
+ * Toggle the currently selected vector node between smooth (bezier handles)
6672
+ * and corner (no handles).
6673
+ *
6674
+ * @category Vector Edit
6675
+ */
6676
+ toggleSelectedVectorNodeSmooth(): void;
6677
+ /**
6678
+ * Enable or disable bend mode for vector editing.
6679
+ *
6680
+ * When bend mode is active, clicking an anchor node automatically toggles
6681
+ * it between smooth (bezier handles) and corner (no handles).
6682
+ *
6683
+ * @param active - true to enable bend mode, false to return to normal move mode.
6684
+ * @category Vector Edit
6685
+ */
6686
+ setVectorEditBendMode(active: boolean): void;
6687
+ /**
6688
+ * Check whether vector edit bend mode is currently active.
6689
+ *
6690
+ * @returns true if bend mode is active.
6691
+ * @category Vector Edit
6692
+ */
6693
+ getVectorEditBendMode(): boolean;
6694
+ /**
6695
+ * Enable or disable add mode for vector editing.
6696
+ *
6697
+ * When add mode is active, clicking on a path segment inserts a new anchor
6698
+ * point at the click position. Mutually exclusive with bend and delete modes.
6699
+ *
6700
+ * @param active - true to enable add mode, false to return to normal move mode.
6701
+ * @category Vector Edit
6702
+ */
6703
+ setVectorEditAddMode(active: boolean): void;
6704
+ /**
6705
+ * Check whether vector edit add mode is currently active.
6706
+ *
6707
+ * @returns true if add mode is active.
6708
+ * @category Vector Edit
6709
+ */
6710
+ getVectorEditAddMode(): boolean;
6711
+ /**
6712
+ * Enable or disable delete mode for vector editing.
6713
+ *
6714
+ * When delete mode is active, clicking an anchor node instantly deletes it
6715
+ * from the path. Mutually exclusive with bend and add modes.
6716
+ *
6717
+ * @param active - true to enable delete mode, false to return to normal move mode.
6718
+ * @category Vector Edit
6719
+ */
6720
+ setVectorEditDeleteMode(active: boolean): void;
6721
+ /**
6722
+ * Check whether vector edit delete mode is currently active.
6723
+ *
6724
+ * @returns true if delete mode is active.
6725
+ * @category Vector Edit
6726
+ */
6727
+ getVectorEditDeleteMode(): boolean;
6728
+ /**
6729
+ * Set the bezier handle mirror mode for the currently selected vector node.
6730
+ *
6731
+ * Mirror modes control how the opposite handle behaves when one handle is dragged:
6732
+ * - 0 (None): handles move independently
6733
+ * - 1 (AngleAndLength): the opposite handle mirrors both angle and length
6734
+ * - 2 (AngleOnly): the opposite handle mirrors the angle but keeps its own length
6735
+ *
6736
+ * @param mode - The mirror mode (0, 1, or 2).
6737
+ * @category Vector Edit
6738
+ */
6739
+ setSelectedVectorNodeMirrorMode(mode: number): void;
6740
+ /**
6741
+ * Get the bezier handle mirror mode of the currently selected vector node.
6742
+ *
6743
+ * @returns The mirror mode as a number (0 = None, 1 = AngleAndLength, 2 = AngleOnly).
6744
+ * @throws Error if no node is selected or no vector path is being edited.
6745
+ * @category Vector Edit
6746
+ */
6747
+ getSelectedVectorNodeMirrorMode(): number;
6655
6748
  /**
6656
6749
  * Get the cursor type that should be displayed.
6657
6750
  *
6658
6751
  * @category Edit Mode Management
6659
6752
  * @returns The cursor type.
6660
6753
  */
6661
- getCursorType(): 'Arrow' | 'Move' | 'MoveNotPermitted' | 'Resize' | 'Rotate' | 'Text';
6754
+ getCursorType(): 'Arrow' | 'Move' | 'MoveNotPermitted' | 'Resize' | 'Rotate' | 'Text' | 'Cell';
6662
6755
  /**
6663
6756
  * Get the cursor rotation angle.
6664
6757
  *
@@ -7761,7 +7854,7 @@ export declare interface _Flip {
7761
7854
  }
7762
7855
 
7763
7856
  /** @public */
7764
- 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/grow/scaleFactor' | '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/scale_loop/startScale' | 'animation/scale_loop/endScale' | '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 & {});
7857
+ 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/grow/scaleFactor' | '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/scale_loop/startScale' | 'animation/scale_loop/endScale' | '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/cornerRadius' | 'shape/vector_path/height' | 'shape/vector_path/width' | (string & {});
7765
7858
 
7766
7859
  /**
7767
7860
  * Represents a font.
@@ -8642,6 +8735,8 @@ export declare class SceneAPI {
8642
8735
  /**
8643
8736
  * Create a new scene in video mode, along with its own camera.
8644
8737
  *
8738
+ * @deprecated Scene mode no longer affects engine behavior. Use `create()` followed by `setMode('Video')` instead.
8739
+ *
8645
8740
  * ```javascript
8646
8741
  * const scene = engine.scene.createVideo();
8647
8742
  * ```
@@ -8732,19 +8827,20 @@ export declare class SceneAPI {
8732
8827
  /**
8733
8828
  * Get the current scene mode.
8734
8829
  *
8830
+ * @deprecated Scene mode no longer affects engine behavior. All features work regardless of mode.
8831
+ *
8735
8832
  * ```javascript
8736
8833
  * const mode = scene.getMode();
8737
8834
  * ```
8738
8835
  *
8739
8836
  * @category Scene Properties
8740
- * @returns The current mode of the scene.
8837
+ * @returns The current mode of the scene, or null if no mode has been set.
8741
8838
  */
8742
- getMode(): SceneMode;
8839
+ getMode(): SceneMode | null;
8743
8840
  /**
8744
8841
  * Set the mode of the scene.
8745
- * Changing the scene mode affects how the engine processes and renders the scene:
8746
- * - Video mode enables timeline-based playback, animations, and audio processing.
8747
- * - Design mode disables playback-related features and uses different color space settings.
8842
+ *
8843
+ * @deprecated Scene mode no longer affects engine behavior. All features work regardless of mode.
8748
8844
  *
8749
8845
  * ```javascript
8750
8846
  * engine.scene.setMode('Video');
@@ -9127,10 +9223,10 @@ export declare type SceneLayout = (typeof SceneLayoutValues)[number];
9127
9223
  /** @public */
9128
9224
  export declare const SceneLayoutValues: readonly ["Free", "VerticalStack", "HorizontalStack", "DepthStack"];
9129
9225
 
9130
- /** @public */
9226
+ /** @public @deprecated Since v1.72. Scene mode no longer affects engine behavior. */
9131
9227
  export declare type SceneMode = (typeof SceneModeValues)[number];
9132
9228
 
9133
- /** @public */
9229
+ /** @public @deprecated Since v1.72. Scene mode no longer affects engine behavior. */
9134
9230
  export declare const SceneModeValues: readonly ["Design", "Video"];
9135
9231
 
9136
9232
  /**
@@ -9151,10 +9247,10 @@ export declare const SceneModeValues: readonly ["Design", "Video"];
9151
9247
  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';
9152
9248
 
9153
9249
  /** @public */
9154
- 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/canEdit' | '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' | 'page/highlightWhenCropping' | 'page/highlightDropTarget' | 'page/reparentBlocksToSceneWhenOutOfPage' | 'page/clipped' | 'colorMaskingSettings/secondPass' | 'clampThumbnailTextureSizes' | 'useSystemFontFallback' | 'forceSystemEmojis' | 'features/textEditModeTransformHandlesEnabled' | 'features/videoStreamingEnabled' | 'features/enableAutomaticEnumerations' | (string & {});
9250
+ 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/canEdit' | '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' | 'page/highlightWhenCropping' | 'page/highlightDropTarget' | 'page/reparentBlocksToSceneWhenOutOfPage' | 'colorMaskingSettings/secondPass' | 'clampThumbnailTextureSizes' | 'useSystemFontFallback' | 'forceSystemEmojis' | 'features/textEditModeTransformHandlesEnabled' | 'features/videoStreamingEnabled' | 'grid/enabled' | 'grid/snapEnabled' | 'features/enableAutomaticEnumerations' | (string & {});
9155
9251
 
9156
9252
  /** @public */
9157
- export declare type SettingColorPropertyName = 'clearColor' | 'handleFillColor' | 'highlightColor' | 'pageHighlightColor' | 'placeholderHighlightColor' | 'snappingGuideColor' | 'rotationSnappingGuideColor' | 'cropOverlayColor' | 'textVariableHighlightColor' | 'borderOutlineColor' | 'progressColor' | 'errorStateColor' | 'page/title/color' | 'page/marginFillColor' | 'page/marginFrameColor' | 'page/innerBorderColor' | 'page/outerBorderColor' | 'colorMaskingSettings/maskColor' | (string & {});
9253
+ export declare type SettingColorPropertyName = 'clearColor' | 'handleFillColor' | 'highlightColor' | 'pageHighlightColor' | 'placeholderHighlightColor' | 'snappingGuideColor' | 'rotationSnappingGuideColor' | 'cropOverlayColor' | 'textVariableHighlightColor' | 'borderOutlineColor' | 'progressColor' | 'errorStateColor' | 'page/title/color' | 'page/marginFillColor' | 'page/marginFrameColor' | 'page/innerBorderColor' | 'page/outerBorderColor' | 'colorMaskingSettings/maskColor' | 'grid/color' | (string & {});
9158
9254
 
9159
9255
  /** @public */
9160
9256
  export declare type SettingEnumPropertyName = 'touch/pinchAction' | 'touch/rotateAction' | 'camera/clamping/overshootMode' | 'doubleClickSelectionMode' | 'colorPicker/colorMode' | 'timeline/trackVisibility' | (string & {});
@@ -9173,7 +9269,7 @@ export declare type SettingEnumType = {
9173
9269
  export declare type SettingEnumValues = TouchPinchAction | TouchRotateAction | CameraClampingOvershootMode | DoubleClickSelectionMode | ColorPickerColorMode | TimelineTrackVisibility | (string & {});
9174
9270
 
9175
9271
  /** @public */
9176
- export declare type SettingFloatPropertyName = 'positionSnappingThreshold' | 'rotationSnappingThreshold' | 'controlGizmo/blockScaleDownLimit' | 'listIndentPerLevel' | (string & {});
9272
+ export declare type SettingFloatPropertyName = 'positionSnappingThreshold' | 'rotationSnappingThreshold' | 'controlGizmo/blockScaleDownLimit' | 'listIndentPerLevel' | 'grid/spacingX' | 'grid/spacingY' | (string & {});
9177
9273
 
9178
9274
  /** @public */
9179
9275
  export declare type SettingIntPropertyName = 'maxImageSize' | 'maxPreviewResolution' | (string & {});
@@ -9259,6 +9355,10 @@ export declare interface Settings {
9259
9355
  'placeholderControls/showOverlay': boolean;
9260
9356
  /** Whether animations should be enabled or not. */
9261
9357
  'blockAnimations/enabled': boolean;
9358
+ /** Whether the background grid is shown on pages. */
9359
+ 'grid/enabled': boolean;
9360
+ /** Whether elements should snap to grid lines when dragged. */
9361
+ 'grid/snapEnabled': boolean;
9262
9362
  /** Whether to display the build version in the UI. */
9263
9363
  showBuildVersion: boolean;
9264
9364
  /** Whether drag start can select elements. */
@@ -9278,9 +9378,6 @@ export declare interface Settings {
9278
9378
  /** Whether blocks should be reparented to the scene when dragged outside all pages,
9279
9379
  * and reparented back to a page when dragged over one. */
9280
9380
  'page/reparentBlocksToSceneWhenOutOfPage': boolean;
9281
- /** Whether pages should clip their contents to their bounds.
9282
- * Applies to newly created pages and, when changed, immediately updates all existing pages. */
9283
- 'page/clipped': boolean;
9284
9381
  /** Clamp thumbnail texture sizes to the platform's GPU texture limit. */
9285
9382
  clampThumbnailTextureSizes: boolean;
9286
9383
  /** Toggle the dock components visibility */
@@ -9319,6 +9416,10 @@ export declare interface Settings {
9319
9416
  positionSnappingThreshold: number;
9320
9417
  /** The threshold angle in degrees for rotation snapping. */
9321
9418
  rotationSnappingThreshold: number;
9419
+ /** Horizontal spacing between vertical grid lines in design units. */
9420
+ 'grid/spacingX': number;
9421
+ /** Vertical spacing between horizontal grid lines in design units. */
9422
+ 'grid/spacingY': number;
9322
9423
  /** The maximum size (width or height) in pixels for images. */
9323
9424
  maxImageSize: number;
9324
9425
  /** The maximum dimension (width or height) in physical pixels for preview rendering.
@@ -9363,6 +9464,8 @@ export declare interface Settings {
9363
9464
  textVariableHighlightColor: Color;
9364
9465
  /** The fill color for handles. */
9365
9466
  handleFillColor: Color;
9467
+ /** Color of the grid lines. */
9468
+ 'grid/color': Color;
9366
9469
  /** The selection mode for double-click: Direct selects the clicked element, Hierarchical traverses the hierarchy. */
9367
9470
  doubleClickSelectionMode: 'Direct' | 'Hierarchical';
9368
9471
  /** The action performed for pinch gestures: None, Zoom, Scale, or Auto. */