@cesdk/node 1.76.0-nightly.20260513 → 1.76.0-nightly.20260515

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
@@ -960,8 +960,18 @@ export declare type AssetMetaData = {
960
960
  width?: number;
961
961
  height?: number;
962
962
  duration?: string;
963
- effectType?: EffectType;
964
- blurType?: BlurType;
963
+ /**
964
+ * Effect kind hint. Widened to `string` so this metadata stays
965
+ * cross-binding (the narrow `EffectType` union remains the
966
+ * source of truth for `BlockAPI.createEffect`).
967
+ */
968
+ effectType?: string;
969
+ /**
970
+ * Blur kind hint. Widened to `string` for the same reason as
971
+ * `effectType` — the narrow `BlurType` union still gates
972
+ * `BlockAPI.createBlur`.
973
+ */
974
+ blurType?: string;
965
975
  looping?: boolean;
966
976
  } & Record<string, unknown>;
967
977
 
@@ -2177,6 +2187,16 @@ export declare class BlockAPI {
2177
2187
  * @returns True if transform locked, false otherwise.
2178
2188
  */
2179
2189
  isTransformLocked(id: DesignBlockId): boolean;
2190
+ /**
2191
+ * Checks whether a graphic block originated as a line shape. Survives the
2192
+ * line's conversion to a vector path during vector-edit; resets only when
2193
+ * the shape is replaced by a non-line shape via `setShape`.
2194
+ *
2195
+ * @category Block Layout
2196
+ * @param id - The block to query.
2197
+ * @returns True if the block originated as a line shape, false otherwise.
2198
+ */
2199
+ isLineOrigin(id: DesignBlockId): boolean;
2180
2200
  /**
2181
2201
  * Sets the transform-locked state of a block.
2182
2202
  *
@@ -4048,6 +4068,138 @@ export declare class BlockAPI {
4048
4068
  * @returns The stroke corner geometry.
4049
4069
  */
4050
4070
  getStrokeCornerGeometry(id: DesignBlockId): StrokeCornerGeometry;
4071
+ /**
4072
+ * Sets the stroke cap of a block. Writes both the start and end caps to the
4073
+ * same value.
4074
+ *
4075
+ * @category Block Strokes
4076
+ * @param id - The block whose stroke cap should be set.
4077
+ * @param cap - The stroke cap to be set.
4078
+ * @deprecated Use `setStrokeStartCap` and `setStrokeEndCap` to set each end
4079
+ * independently.
4080
+ */
4081
+ setStrokeCap(id: DesignBlockId, cap: StrokeCap): void;
4082
+ /**
4083
+ * Gets the legacy single stroke cap of a block. Tracks the value last written
4084
+ * via `setStrokeCap` or `setStrokeStartCap`; ignores changes made via
4085
+ * `setStrokeEndCap`.
4086
+ *
4087
+ * @category Block Strokes
4088
+ * @param id - The block whose stroke cap should be queried.
4089
+ * @returns The stroke cap.
4090
+ * @deprecated Use `getStrokeStartCap` and `getStrokeEndCap` instead.
4091
+ */
4092
+ getStrokeCap(id: DesignBlockId): StrokeCap;
4093
+ /**
4094
+ * Sets the cap geometry at the start of an open stroked path. Use this with
4095
+ * `setStrokeEndCap` to set distinct caps for each end of a stroke (for
4096
+ * example a flat start with an arrowhead end). `setStrokeCap` continues to
4097
+ * set both ends at once and is preserved for backwards compatibility.
4098
+ *
4099
+ * @category Block Strokes
4100
+ * @param id - The block whose stroke start cap should be set.
4101
+ * @param cap - The cap geometry to use at the path start.
4102
+ */
4103
+ setStrokeStartCap(id: DesignBlockId, cap: StrokeCap): void;
4104
+ /**
4105
+ * Gets the cap geometry at the start of an open stroked path.
4106
+ *
4107
+ * @category Block Strokes
4108
+ * @param id - The block whose stroke start cap should be queried.
4109
+ * @returns The start cap.
4110
+ */
4111
+ getStrokeStartCap(id: DesignBlockId): StrokeCap;
4112
+ /**
4113
+ * Sets the cap geometry at the end of an open stroked path. Use this with
4114
+ * `setStrokeStartCap` to set distinct caps for each end of a stroke.
4115
+ *
4116
+ * @category Block Strokes
4117
+ * @param id - The block whose stroke end cap should be set.
4118
+ * @param cap - The cap geometry to use at the path end.
4119
+ */
4120
+ setStrokeEndCap(id: DesignBlockId, cap: StrokeCap): void;
4121
+ /**
4122
+ * Gets the cap geometry at the end of an open stroked path.
4123
+ *
4124
+ * @category Block Strokes
4125
+ * @param id - The block whose stroke end cap should be queried.
4126
+ * @returns The end cap.
4127
+ */
4128
+ getStrokeEndCap(id: DesignBlockId): StrokeCap;
4129
+ /**
4130
+ * Sets the cap geometry at the leading edge of each dash piece (excluding the
4131
+ * line's actual start). Only takes effect when a dash pattern is active.
4132
+ * Distinct from `setStrokeStartCap`, which only applies to the start of the
4133
+ * open path itself.
4134
+ *
4135
+ * @category Block Strokes
4136
+ * @param id - The block whose dash start cap should be set.
4137
+ * @param cap - The cap geometry to use at the leading edge of each dash piece.
4138
+ */
4139
+ setStrokeDashStartCap(id: DesignBlockId, cap: StrokeCap): void;
4140
+ /**
4141
+ * Gets the cap geometry at the leading edge of each dash piece.
4142
+ *
4143
+ * @category Block Strokes
4144
+ * @param id - The block whose dash start cap should be queried.
4145
+ * @returns The dash start cap.
4146
+ */
4147
+ getStrokeDashStartCap(id: DesignBlockId): StrokeCap;
4148
+ /**
4149
+ * Sets the cap geometry at the trailing edge of each dash piece (excluding the
4150
+ * line's actual end). Only takes effect when a dash pattern is active. Distinct
4151
+ * from `setStrokeEndCap`, which only applies to the end of the open path itself.
4152
+ *
4153
+ * @category Block Strokes
4154
+ * @param id - The block whose dash end cap should be set.
4155
+ * @param cap - The cap geometry to use at the trailing edge of each dash piece.
4156
+ */
4157
+ setStrokeDashEndCap(id: DesignBlockId, cap: StrokeCap): void;
4158
+ /**
4159
+ * Gets the cap geometry at the trailing edge of each dash piece.
4160
+ *
4161
+ * @category Block Strokes
4162
+ * @param id - The block whose dash end cap should be queried.
4163
+ * @returns The dash end cap.
4164
+ */
4165
+ getStrokeDashEndCap(id: DesignBlockId): StrokeCap;
4166
+ /**
4167
+ * Sets a custom dash pattern for the block's stroke. Semantics match SVG's
4168
+ * `stroke-dasharray`: alternating on/off lengths in design-unit space. When the
4169
+ * pattern is non-empty it overrides the preset implied by `StrokeStyle`. Pass an
4170
+ * empty array to fall back to the preset.
4171
+ *
4172
+ * @category Block Strokes
4173
+ * @param id - The block whose stroke dash pattern should be set.
4174
+ * @param dashArray - Alternating on/off lengths. Odd-length arrays are doubled to
4175
+ * an even length, matching SVG behaviour.
4176
+ */
4177
+ setStrokeDashArray(id: DesignBlockId, dashArray: number[]): void;
4178
+ /**
4179
+ * Gets the custom dash pattern of the block's stroke.
4180
+ *
4181
+ * @category Block Strokes
4182
+ * @param id - The block whose stroke dash pattern should be queried.
4183
+ * @returns The dash pattern, or an empty array if no custom pattern is set.
4184
+ */
4185
+ getStrokeDashArray(id: DesignBlockId): number[];
4186
+ /**
4187
+ * Sets the dash offset of the block's stroke. Semantics match SVG's
4188
+ * `stroke-dashoffset`. Ignored when the custom dash pattern is empty.
4189
+ *
4190
+ * @category Block Strokes
4191
+ * @param id - The block whose stroke dash offset should be set.
4192
+ * @param dashOffset - The dash offset in design-unit space.
4193
+ */
4194
+ setStrokeDashOffset(id: DesignBlockId, dashOffset: number): void;
4195
+ /**
4196
+ * Gets the dash offset of the block's stroke.
4197
+ *
4198
+ * @category Block Strokes
4199
+ * @param id - The block whose stroke dash offset should be queried.
4200
+ * @returns The dash offset.
4201
+ */
4202
+ getStrokeDashOffset(id: DesignBlockId): number;
4051
4203
  /**
4052
4204
  * Checks if a block has a drop shadow property.
4053
4205
  *
@@ -4902,6 +5054,18 @@ export declare class BlockAPI {
4902
5054
  * @returns The text content of the line.
4903
5055
  */
4904
5056
  getTextVisibleLineContent(id: DesignBlockId, lineIndex: number): string;
5057
+ /**
5058
+ * Returns the tight ink-paint bounding box for each grapheme in the range.
5059
+ * One entry per grapheme in [from, to). Non-printable graphemes get a zero-rect.
5060
+ * Coordinates are in global scene space.
5061
+ *
5062
+ * @category Block Text
5063
+ * @param id - The text block to query.
5064
+ * @param from - Start grapheme index (-1 = start of cursor selection or 0).
5065
+ * @param to - End grapheme index (-1 = end of cursor selection or text length).
5066
+ * @returns Array of CharacterInkBox, one per grapheme in range, in text order.
5067
+ */
5068
+ getTextCharacterInkBoxes(id: DesignBlockId, from?: number, to?: number): CharacterInkBox[];
4905
5069
  /**
4906
5070
  * Gets the effective horizontal alignment of a text block.
4907
5071
  * If the alignment is set to Auto, this returns the resolved alignment (Left or Right)
@@ -5925,6 +6089,7 @@ export declare type BlockEnumType = {
5925
6089
  'scene/layout': SceneLayout;
5926
6090
  'scene/mode': SceneMode;
5927
6091
  'width/mode': WidthMode;
6092
+ 'stroke/cap': StrokeCap;
5928
6093
  'stroke/cornerGeometry': StrokeCornerGeometry;
5929
6094
  'stroke/position': StrokePosition;
5930
6095
  'stroke/style': StrokeStyle;
@@ -6054,7 +6219,7 @@ export declare type BlurTypeShorthand = (typeof BLUR_TYPES)[number];
6054
6219
  export declare type BooleanOperation = 'Difference' | 'Intersection' | 'Union' | 'XOR';
6055
6220
 
6056
6221
  /** @public */
6057
- export declare type BoolPropertyName = 'alwaysOnBottom' | 'alwaysOnTop' | 'clipped' | 'flip/horizontal' | 'flip/vertical' | 'highlightEnabled' | 'includedInExport' | 'placeholder/enabled' | 'playback/playing' | 'playback/soloPlaybackEnabled' | 'scene/aspectRatioLock' | 'selected' | 'selectionEnabled' | 'transformLocked' | 'visible' | 'blur/enabled' | 'dropShadow/clip' | 'dropShadow/enabled' | 'fill/enabled' | 'page/guides/gridEnabled' | 'page/guides/gridSnapEnabled' | '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 & {});
6222
+ export declare type BoolPropertyName = 'alwaysOnBottom' | 'alwaysOnTop' | 'clipped' | 'flip/horizontal' | 'flip/vertical' | 'highlightEnabled' | 'includedInExport' | 'placeholder/enabled' | 'playback/playing' | 'playback/soloPlaybackEnabled' | 'scene/aspectRatioLock' | 'selected' | 'selectionEnabled' | 'transformLocked' | 'visible' | 'blur/enabled' | 'dropShadow/clip' | 'dropShadow/enabled' | 'fill/enabled' | 'page/guides/gridEnabled' | 'page/guides/gridSnapEnabled' | 'page/marginEnabled' | 'placeholderControls/showButton' | 'placeholderControls/showOverlay' | 'playback/looping' | 'playback/muted' | 'stroke/enabled' | 'backgroundColor/enabled' | 'placeholderBehavior/enabled' | 'text/automaticFontSizeEnabled' | 'text/clipLinesOutsideOfFrame' | 'text/hasClippedLines' | 'text/useLigatures' | 'text/useKerning' | 'text/useContextualLigatures' | 'text/useDiscretionaryLigatures' | 'track/automaticallyManageBlockOffsets' | 'caption/automaticFontSizeEnabled' | 'caption/clipLinesOutsideOfFrame' | 'caption/hasClippedLines' | 'caption/useLigatures' | 'caption/useKerning' | 'caption/useContextualLigatures' | 'caption/useDiscretionaryLigatures' | '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 & {});
6058
6223
 
6059
6224
  /**
6060
6225
  * Represents a buffer of data.
@@ -6088,6 +6253,25 @@ export declare type CaptionVerticalAlignment = (typeof CaptionVerticalAlignmentV
6088
6253
  /** @public */
6089
6254
  export declare const CaptionVerticalAlignmentValues: readonly ["Top", "Bottom", "Center"];
6090
6255
 
6256
+ /**
6257
+ * Tight ink-paint bounding box of a single grapheme, in global scene
6258
+ * coordinates. Returned by `block.getTextCharacterInkBoxes`. The baseline
6259
+ * Y is reported separately because it does not equal `y + height` (the
6260
+ * box is the tight ink rect; the baseline anchors glyph descenders).
6261
+ */
6262
+ export declare interface CharacterInkBox {
6263
+ /** Global X of the tight ink rect (left edge, Y-down scene space). */
6264
+ x: number;
6265
+ /** Global Y of the tight ink rect (top edge, Y-down scene space). */
6266
+ y: number;
6267
+ /** Width of the tight ink rect. */
6268
+ width: number;
6269
+ /** Height of the tight ink rect. */
6270
+ height: number;
6271
+ /** Global Y of the glyph baseline. */
6272
+ baselineY: number;
6273
+ }
6274
+
6091
6275
  /**
6092
6276
  * Represents a color in the CMYK color space.
6093
6277
  *
@@ -7728,7 +7912,7 @@ export declare type EnginePluginContext = {
7728
7912
  export declare type EnumPropertyName = 'blend/mode' | 'contentFill/mode' | 'height/mode' | 'position/x/mode' | 'position/y/mode' | 'scene/designUnit' | 'scene/layout' | 'scene/mode' | 'width/mode' | 'page/guides/source' | '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' | 'animation/scale_loop/direction' | 'fill/pixelStream/orientation' | 'shape/vector_path/fillRule' | (string & {});
7729
7913
 
7730
7914
  /** @public */
7731
- export declare type EnumValues = BlendMode | ContentFillMode | HeightMode | PageGuidesSource | 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 | AnimationScaleLoopDirection | FillPixelStreamOrientation | ShapeVectorPathFillRule | (string & {});
7915
+ export declare type EnumValues = BlendMode | ContentFillMode | HeightMode | PageGuidesSource | PositionXMode | PositionYMode | SceneDesignUnit | SceneLayout | SceneMode | WidthMode | StrokeCap | StrokeCornerGeometry | StrokePosition | StrokeStyle | TextHorizontalAlignment | TextVerticalAlignment | CutoutType | CaptionHorizontalAlignment | CaptionVerticalAlignment | AnimationEasing | TextAnimationWritingStyle | AnimationGrowDirection | AnimationWipeDirection | AnimationBaselineDirection | AnimationSpinDirection | AnimationSpinLoopDirection | AnimationJumpLoopDirection | AnimationTypewriterTextWritingStyle | AnimationBlockSwipeTextDirection | AnimationMergeTextDirection | AnimationKenBurnsDirection | AnimationScaleLoopDirection | FillPixelStreamOrientation | ShapeVectorPathFillRule | (string & {});
7732
7916
 
7733
7917
  /**
7734
7918
  * @public Subscribe to block lifecycle events in the design engine.
@@ -7957,16 +8141,13 @@ declare interface Flip {
7957
8141
  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/guides/gridSpacingX' | 'page/guides/gridSpacingY' | '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 & {});
7958
8142
 
7959
8143
  /**
7960
- * Represents a font.
7961
- *
7962
- * The Font interface defines the structure of a font within the Creative Editor SDK.
7963
- * It includes properties for the uri, subFamily, weight, and style.
7964
- *
7965
- * @public
8144
+ * Individual font within a typeface. Field optionality matches `@cesdk/engine`
8145
+ * (WASM) — fields not present in the engine response are simply omitted
8146
+ * rather than empty strings.
7966
8147
  */
7967
8148
  export declare interface Font {
7968
8149
  uri: string;
7969
- subFamily: string;
8150
+ subFamily?: string;
7970
8151
  weight?: FontWeight;
7971
8152
  style?: FontStyle;
7972
8153
  }
@@ -8006,23 +8187,12 @@ export declare interface FontMetrics {
8006
8187
  */
8007
8188
  export declare type FontSizeUnit = SceneDesignUnit | 'Point';
8008
8189
 
8009
- /**
8010
- * Represents the style of a font.
8011
- *
8012
- * The FontStyle type defines the possible styles of a font within the Creative Editor SDK.
8013
- * Each style corresponds to a different appearance, allowing for flexibility in how fonts are styled.
8014
- *
8015
- * @public
8016
- */
8190
+ /** Allowed font styles. Mirrors the WASM `FontStyle` union. */
8017
8191
  export declare type FontStyle = 'normal' | 'italic';
8018
8192
 
8019
8193
  /**
8020
- * Represents the weight of a font.
8021
- *
8022
- * The FontWeight type defines the possible weights of a font within the Creative Editor SDK.
8023
- * Each weight corresponds to a different thickness, allowing for flexibility in how fonts are styled.
8024
- *
8025
- * @public
8194
+ * Allowed font weights. Mirrors the `@cesdk/engine` (WASM) `FontWeight`
8195
+ * union so a single `Font` is interchangeable across bindings.
8026
8196
  */
8027
8197
  export declare type FontWeight = 'thin' | 'extraLight' | 'light' | 'normal' | 'medium' | 'semiBold' | 'bold' | 'extraBold' | 'heavy';
8028
8198
 
@@ -9629,6 +9799,12 @@ export declare interface SpotColor {
9629
9799
  /** @public */
9630
9800
  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 & {});
9631
9801
 
9802
+ /** @public */
9803
+ export declare type StrokeCap = (typeof StrokeCapValues)[number];
9804
+
9805
+ /** @public */
9806
+ export declare const StrokeCapValues: readonly ["Butt", "Round", "Square"];
9807
+
9632
9808
  /** @public */
9633
9809
  export declare type StrokeCornerGeometry = (typeof StrokeCornerGeometryValues)[number];
9634
9810
 
@@ -9797,18 +9973,9 @@ export declare interface TransientResource {
9797
9973
  size: number;
9798
9974
  }
9799
9975
 
9800
- /**
9801
- * Represents a typeface.
9802
- *
9803
- * The Typeface interface defines the structure of a typeface within the Creative Editor SDK.
9804
- * It includes properties for the name and fonts.
9805
- *
9806
- * @public
9807
- */
9976
+ /** Typeface definition */
9808
9977
  export declare interface Typeface {
9809
- /** The unique name of this typeface */
9810
9978
  name: string;
9811
- /** The list of all fonts that are part of this typeface. */
9812
9979
  fonts: Font[];
9813
9980
  }
9814
9981