@svgsketch/core 4.0.0 → 4.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -2040,6 +2040,119 @@ interface Measurement {
2040
2040
  opacity?: number;
2041
2041
  }
2042
2042
 
2043
+ /**
2044
+ * The appearance stack — a shape's paint operations as an ordered list.
2045
+ *
2046
+ * SVG models paint as singular: `fill` takes one `<paint>` and `stroke` takes
2047
+ * one (SVG 2 §13.4.1, §13.5.1), and `paint-order` (§13.8) permutes three fixed
2048
+ * slots rather than multiplying them. A shape that paints two strokes with a
2049
+ * fill between them therefore has no single-element expression, even though
2050
+ * the rendering model describes exactly that: successive paint operations,
2051
+ * each compositing onto what came before (§3.3).
2052
+ *
2053
+ * `SerializedShapeState.appearance` is that list. It is one ordered sequence
2054
+ * holding both kinds, because the interleaving is the point — two lists, one
2055
+ * per paint kind, could not say that a stroke sits below a fill and another
2056
+ * stroke above it.
2057
+ *
2058
+ * **Layer zero mirrors the base props.** The first fill layer's paint is the
2059
+ * shape's `fillColor` / `fillType` / `fillGradient` / `fillLibraryId`, and the
2060
+ * first stroke layer's is `borderColor` / `strokeType` / `strokeGradient` /
2061
+ * `strokeLibraryId` / `borderWidth`. Both are written on save. Three things
2062
+ * follow, and all three are deliberate:
2063
+ *
2064
+ * - A shape with one fill and one stroke — nearly every shape in nearly
2065
+ * every document — carries an `appearance` that says nothing the base
2066
+ * props did not already say, so it is omitted entirely and that shape
2067
+ * serializes exactly as it did before this field existed.
2068
+ * - A reader that does not know the field renders the base layer rather than
2069
+ * nothing, and `SerializedShapeState.extra` preserves the full stack
2070
+ * through its save. Degraded, never lossy.
2071
+ * - There is exactly one place a layer's paint lives. Reading layer zero
2072
+ * from the base props rather than from a copy inside the list means the
2073
+ * two cannot drift.
2074
+ *
2075
+ * Absent `appearance` is not "no paint". It means the shape paints what its
2076
+ * base props describe, which is what {@link appearanceLayers} synthesizes.
2077
+ */
2078
+
2079
+ /** Paint servers a layer can reference inline. */
2080
+ type AppearancePaintValue = LinearGradient | RadialGradient | PatternFill;
2081
+ interface AppearanceLayerBase {
2082
+ /**
2083
+ * Stable identity, assigned when the layer is created and never derived
2084
+ * from its position. Reordering a stack must not rename its layers, or a
2085
+ * projection keyed by layer id would repaint the wrong element.
2086
+ */
2087
+ id: string;
2088
+ /**
2089
+ * `false` hides the layer without discarding its paint, which is what
2090
+ * separates a hidden layer from one set to `none`. Absent means visible.
2091
+ */
2092
+ enabled?: boolean;
2093
+ /**
2094
+ * Ordered `FilterLibraryDef` ids applied to this layer alone rather than to
2095
+ * the composed shape. SVG expresses this directly — the `filter` property on
2096
+ * the element that paints the layer — so blurring only a shadow layer needs
2097
+ * no machinery beyond placing the reference here.
2098
+ */
2099
+ filterLibraryIds?: string[];
2100
+ }
2101
+ /** One fill operation. */
2102
+ interface AppearanceFillLayer extends AppearanceLayerBase {
2103
+ kind: 'fill';
2104
+ /** Solid paint. Mirrors `fillColor` on the base layer. */
2105
+ color?: string;
2106
+ /** Mirrors `fillType` on the base layer. */
2107
+ paintType?: FillType;
2108
+ /** Mirrors `fillGradient` on the base layer. */
2109
+ gradient?: AppearancePaintValue | null;
2110
+ /** Mirrors `fillLibraryId` on the base layer. */
2111
+ libraryId?: string;
2112
+ /** Mirrors `fillOpacity` on the base layer. */
2113
+ opacity?: number;
2114
+ /** Mirrors `authoredFillPaint` on the base layer. */
2115
+ authoredPaint?: AuthoredPaintReference;
2116
+ }
2117
+ /** One stroke operation. */
2118
+ interface AppearanceStrokeLayer extends AppearanceLayerBase {
2119
+ kind: 'stroke';
2120
+ /** Solid paint. Mirrors `borderColor` on the base layer. */
2121
+ color?: string;
2122
+ /** Mirrors `strokeType` on the base layer. */
2123
+ paintType?: StrokeType;
2124
+ /** Mirrors `strokeGradient` on the base layer. */
2125
+ gradient?: AppearancePaintValue | null;
2126
+ /** Mirrors `strokeLibraryId` on the base layer. */
2127
+ libraryId?: string;
2128
+ /** Mirrors `strokeOpacity` on the base layer. */
2129
+ opacity?: number;
2130
+ /** Mirrors `borderWidth` on the base layer. */
2131
+ width?: number;
2132
+ /** Mirrors `strokeLinejoin` on the base layer. */
2133
+ linejoin?: 'miter' | 'round' | 'bevel';
2134
+ /** Mirrors `strokeLinecap` on the base layer. */
2135
+ linecap?: 'butt' | 'round' | 'square';
2136
+ /** Mirrors `strokeMiterlimit` on the base layer. */
2137
+ miterlimit?: number;
2138
+ /** Mirrors `strokeDasharray` on the base layer. */
2139
+ dasharray?: string | null;
2140
+ /** Mirrors `dashOffset` on the base layer. */
2141
+ dashoffset?: number;
2142
+ /** Mirrors `authoredStrokePaint` on the base layer. */
2143
+ authoredPaint?: AuthoredPaintReference;
2144
+ }
2145
+ /**
2146
+ * One paint operation in a shape's appearance stack.
2147
+ *
2148
+ * Ordered bottom-to-top: index 0 paints first and every later layer composites
2149
+ * over it, matching document order in the emitted markup and the painter's
2150
+ * model that order implements (SVG 2 §3.3).
2151
+ */
2152
+ type AppearanceLayer = AppearanceFillLayer | AppearanceStrokeLayer;
2153
+ /** Discriminator values, for exhaustive switches and validation. */
2154
+ type AppearanceLayerKind = AppearanceLayer['kind'];
2155
+
2043
2156
  /**
2044
2157
  * @svgsketch/core — Standard recursive JSON value types.
2045
2158
  *
@@ -3038,6 +3151,18 @@ interface CommonNodeProps extends CommonTransformNodeProps {
3038
3151
  authoredStrokePaint?: AuthoredPaintReference;
3039
3152
  /** Ordered `FilterLibraryDef` ids applied to this shape (`url(#id)` chain). */
3040
3153
  filterLibraryIds?: string[];
3154
+ /**
3155
+ * The shape's paint operations as an ordered list, bottom-to-top.
3156
+ *
3157
+ * Absent means the shape paints exactly what the base fill and stroke props
3158
+ * above describe, which is the overwhelming majority of shapes and the
3159
+ * reason the field is optional rather than always written. Present, its
3160
+ * first fill layer and first stroke layer mirror those same base props, so
3161
+ * a reader that ignores this field still paints the base layer.
3162
+ *
3163
+ * See `types/appearance.ts` for the mirroring contract in full.
3164
+ */
3165
+ appearance?: AppearanceLayer[];
3041
3166
  /** `true` when `fill-rule` was explicitly authored (vs. editor default). */
3042
3167
  fillRuleExplicit?: boolean;
3043
3168
  /** SVG 2 §11.8 `paint-order`. `'normal'` when unauthored. */
@@ -3892,7 +4017,7 @@ interface SerializedShape {
3892
4017
  type: string;
3893
4018
  state: SerializedShapeState;
3894
4019
  }
3895
- declare const SERIALIZED_SHAPE_STATE_KEYS: readonly ["transformMatrix", "scaleX", "scaleY", "translateX", "translateY", "rotation", "skewX", "skewY", "customPivot", "rawTransform", "layerName", "leadingComments", "fillColor", "borderColor", "borderWidth", "opacity", "fillOpacity", "strokeOpacity", "locked", "visible", "fillType", "fillGradient", "strokeType", "strokeGradient", "fillRule", "strokeLinejoin", "strokeLinecap", "strokeMiterlimit", "lineStyle", "dashLength", "gapLength", "dashOffset", "strokeDasharray", "colorInterpolation", "filters", "filterColorInterpolation", "filterUnits", "primitiveUnits", "filterX", "filterY", "filterWidth", "filterHeight", "metadata", "cssClipPath", "cssMaskProperties", "structural", "displayMode", "definitionOrder", "definitionContainerId", "display", "visibility", "inheritFill", "inheritStroke", "preserveOpacity", "preserveFillOpacity", "preserveStrokeOpacity", "fillLibraryId", "strokeLibraryId", "authoredFillPaint", "authoredStrokePaint", "filterLibraryIds", "fillRuleExplicit", "paintOrder", "vectorEffect", "transformBox", "pathLength", "markerStart", "markerMid", "markerEnd", "blendMode", "shapeRendering", "textRendering", "imageRendering", "colorRendering", "systemLanguage", "requiredExtensions", "presentationChannels", "inlineStyle", "authoredAttributes", "bindings", "scripts", "lastSolidFillColor", "lastSolidStrokeColor", "connectionPoints", "isRootSvg", "x", "y", "width", "height", "rx", "ry", "cornerRadius", "cornerShape", "cornerMode", "cornerRadiusTL", "cornerRadiusTR", "cornerRadiusBL", "cornerRadiusBR", "cornerShapeTL", "cornerShapeTR", "cornerShapeBL", "cornerShapeBR", "size", "radius", "cx", "cy", "shiftAngle", "x1", "y1", "x2", "y2", "startEndpoint", "endEndpoint", "routingMode", "sourceRef", "targetRef", "sourcePoint", "targetPoint", "waypoints", "label", "labelPosition", "labelOffset", "mermaidEdgeStyle", "textX", "textY", "authoredTextPosition", "textSpanTree", "fontSize", "text", "fontFamily", "fontWeight", "fontStyle", "fontStretch", "fontSizeAdjust", "fontVariant", "fontVariantLigatures", "fontVariantPosition", "fontVariantCaps", "fontVariantNumeric", "fontVariantEastAsian", "textDecoration", "textTransform", "baselineShift", "dominantBaseline", "alignmentBaseline", "writingMode", "textAnchor", "letterSpacing", "wordSpacing", "lineHeight", "inlineSize", "overflowWrap", "whiteSpace", "textDirection", "unicodeBidi", "useRichText", "richTextRuns", "charOffsets", "fontVariationSettings", "linePositions", "textLength", "lengthAdjust", "shapeInsideRef", "shapeInsideImportRefId", "shapePadding", "isTextPath", "textPathPoints", "textPathStartOffset", "textPathStartOffsetUnit", "textPathSide", "textPathMethod", "textPathSpacing", "textPathLengthAdjust", "textPathLength", "textPathLengthUnit", "textPathPathLength", "textPathCurveType", "textPathInlineFormat", "textPathReference", "textPathImportReference", "href", "originalWidth", "originalHeight", "preserveAspectRatio", "specPreserveAspectRatio", "imageOpacity", "pathPoints", "pathArcParams", "pathControlBounds", "pathCurveType", "pathClosed", "pathTension", "polylinePoints", "polylineClosed", "sides", "arms", "innerRadiusPercent", "armWidthPercent", "turns", "thicknessPercent", "spiralDirection", "teeth", "toothDepthPercent", "holeRadiusPercent", "headWidthPercent", "headLengthPercent", "shaftWidthPercent", "tailAngleDeg", "tailLengthPercent", "tailWidthPercent", "lobeRadiusPercent", "cleftDepthPercent", "boltSegments", "boltJaggednessPercent", "boltWidthPercent", "cloudBumps", "cloudPuffinessPercent", "slantPercent", "topWidthPercent", "capHeightPercent", "waveAmplitudePercent", "symbolId", "authoredUseGeometry", "symbolOverrides", "variantKey", "instancePresentation", "scaleContentToViewport", "groupData", "mediaKind", "mediaMimeType", "naturalDuration", "begin", "trimStart", "trimEnd", "volume", "muted", "loop", "playbackRate", "mediaOpacity", "fadeInDuration", "fadeOutDuration", "posterHref", "sourceRect", "foreignContent", "hrefXlink", "linkTarget", "linkRel", "linkDownload", "linkPing", "linkHreflang", "linkType", "linkReferrerPolicy", "containerPresentation", "targetShapeId", "offsetX", "offsetY", "targetWidth", "targetHeight", "broken", "switchSystemLanguage", "switchRequiredExtensions", "svgX", "svgY", "svgWidth", "svgHeight", "svgViewBoxX", "svgViewBoxY", "svgViewBoxWidth", "svgViewBoxHeight", "authoredRootDimensions", "svgPreserveAspectRatio", "viewBoxX", "viewBoxY", "viewBoxWidth", "viewBoxHeight", "viewName", "viewPreserveAspectRatio", "viewZoomAndPan", "viewTarget", "children"];
4020
+ declare const SERIALIZED_SHAPE_STATE_KEYS: readonly ["transformMatrix", "scaleX", "scaleY", "translateX", "translateY", "rotation", "skewX", "skewY", "customPivot", "rawTransform", "layerName", "leadingComments", "fillColor", "borderColor", "borderWidth", "opacity", "fillOpacity", "strokeOpacity", "locked", "visible", "fillType", "fillGradient", "strokeType", "strokeGradient", "fillRule", "strokeLinejoin", "strokeLinecap", "strokeMiterlimit", "lineStyle", "dashLength", "gapLength", "dashOffset", "strokeDasharray", "colorInterpolation", "filters", "filterColorInterpolation", "filterUnits", "primitiveUnits", "filterX", "filterY", "filterWidth", "filterHeight", "metadata", "cssClipPath", "cssMaskProperties", "structural", "displayMode", "definitionOrder", "definitionContainerId", "display", "visibility", "inheritFill", "inheritStroke", "preserveOpacity", "preserveFillOpacity", "preserveStrokeOpacity", "fillLibraryId", "strokeLibraryId", "authoredFillPaint", "authoredStrokePaint", "filterLibraryIds", "appearance", "fillRuleExplicit", "paintOrder", "vectorEffect", "transformBox", "pathLength", "markerStart", "markerMid", "markerEnd", "blendMode", "shapeRendering", "textRendering", "imageRendering", "colorRendering", "systemLanguage", "requiredExtensions", "presentationChannels", "inlineStyle", "authoredAttributes", "bindings", "scripts", "lastSolidFillColor", "lastSolidStrokeColor", "connectionPoints", "isRootSvg", "x", "y", "width", "height", "rx", "ry", "cornerRadius", "cornerShape", "cornerMode", "cornerRadiusTL", "cornerRadiusTR", "cornerRadiusBL", "cornerRadiusBR", "cornerShapeTL", "cornerShapeTR", "cornerShapeBL", "cornerShapeBR", "size", "radius", "cx", "cy", "shiftAngle", "x1", "y1", "x2", "y2", "startEndpoint", "endEndpoint", "routingMode", "sourceRef", "targetRef", "sourcePoint", "targetPoint", "waypoints", "label", "labelPosition", "labelOffset", "mermaidEdgeStyle", "textX", "textY", "authoredTextPosition", "textSpanTree", "fontSize", "text", "fontFamily", "fontWeight", "fontStyle", "fontStretch", "fontSizeAdjust", "fontVariant", "fontVariantLigatures", "fontVariantPosition", "fontVariantCaps", "fontVariantNumeric", "fontVariantEastAsian", "textDecoration", "textTransform", "baselineShift", "dominantBaseline", "alignmentBaseline", "writingMode", "textAnchor", "letterSpacing", "wordSpacing", "lineHeight", "inlineSize", "overflowWrap", "whiteSpace", "textDirection", "unicodeBidi", "useRichText", "richTextRuns", "charOffsets", "fontVariationSettings", "linePositions", "textLength", "lengthAdjust", "shapeInsideRef", "shapeInsideImportRefId", "shapePadding", "isTextPath", "textPathPoints", "textPathStartOffset", "textPathStartOffsetUnit", "textPathSide", "textPathMethod", "textPathSpacing", "textPathLengthAdjust", "textPathLength", "textPathLengthUnit", "textPathPathLength", "textPathCurveType", "textPathInlineFormat", "textPathReference", "textPathImportReference", "href", "originalWidth", "originalHeight", "preserveAspectRatio", "specPreserveAspectRatio", "imageOpacity", "pathPoints", "pathArcParams", "pathControlBounds", "pathCurveType", "pathClosed", "pathTension", "polylinePoints", "polylineClosed", "sides", "arms", "innerRadiusPercent", "armWidthPercent", "turns", "thicknessPercent", "spiralDirection", "teeth", "toothDepthPercent", "holeRadiusPercent", "headWidthPercent", "headLengthPercent", "shaftWidthPercent", "tailAngleDeg", "tailLengthPercent", "tailWidthPercent", "lobeRadiusPercent", "cleftDepthPercent", "boltSegments", "boltJaggednessPercent", "boltWidthPercent", "cloudBumps", "cloudPuffinessPercent", "slantPercent", "topWidthPercent", "capHeightPercent", "waveAmplitudePercent", "symbolId", "authoredUseGeometry", "symbolOverrides", "variantKey", "instancePresentation", "scaleContentToViewport", "groupData", "mediaKind", "mediaMimeType", "naturalDuration", "begin", "trimStart", "trimEnd", "volume", "muted", "loop", "playbackRate", "mediaOpacity", "fadeInDuration", "fadeOutDuration", "posterHref", "sourceRect", "foreignContent", "hrefXlink", "linkTarget", "linkRel", "linkDownload", "linkPing", "linkHreflang", "linkType", "linkReferrerPolicy", "containerPresentation", "targetShapeId", "offsetX", "offsetY", "targetWidth", "targetHeight", "broken", "switchSystemLanguage", "switchRequiredExtensions", "svgX", "svgY", "svgWidth", "svgHeight", "svgViewBoxX", "svgViewBoxY", "svgViewBoxWidth", "svgViewBoxHeight", "authoredRootDimensions", "svgPreserveAspectRatio", "viewBoxX", "viewBoxY", "viewBoxWidth", "viewBoxHeight", "viewName", "viewPreserveAspectRatio", "viewZoomAndPan", "viewTarget", "children"];
3896
4021
  type SerializedStateKeyListEntry = (typeof SERIALIZED_SHAPE_STATE_KEYS)[number];
3897
4022
  type SerializedStateKey = Exclude<keyof SerializedShapeState, 'extra'>;
3898
4023
  type StateKeyGate<T extends never> = T;
@@ -4670,6 +4795,79 @@ declare function keysBetween(a: string | null, b: string | null, count: number):
4670
4795
  */
4671
4796
  declare function initialOrderKeys(count: number): string[];
4672
4797
 
4798
+ /**
4799
+ * Reading and writing a shape's appearance stack.
4800
+ *
4801
+ * Everything that needs to know what a shape paints goes through here rather
4802
+ * than reaching into `state.appearance` or the base paint props directly. That
4803
+ * is what keeps the mirroring contract in `types/appearance.ts` honest: the
4804
+ * base props and the first layer of each kind are one value with two homes,
4805
+ * and only this module knows how to move between them.
4806
+ *
4807
+ * The functions are pure and operate on `SerializedShapeState`, so the editor,
4808
+ * the headless renderer and the SDK all answer "what does this shape paint"
4809
+ * the same way.
4810
+ */
4811
+
4812
+ /** Id of the layer that mirrors the base fill props. */
4813
+ declare const BASE_FILL_LAYER_ID = "fill-0";
4814
+ /** Id of the layer that mirrors the base stroke props. */
4815
+ declare const BASE_STROKE_LAYER_ID = "stroke-0";
4816
+ declare function baseFillLayer(state: SerializedShapeState): AppearanceFillLayer;
4817
+ /** The stroke layer synthesized from a shape's base props. */
4818
+ declare function baseStrokeLayer(state: SerializedShapeState): AppearanceStrokeLayer;
4819
+ /**
4820
+ * Every paint operation the shape performs, bottom-to-top.
4821
+ *
4822
+ * A shape with no `appearance` yields the two synthesized base layers in
4823
+ * default paint order (fill, then stroke — SVG 2 §13.8), which is exactly what
4824
+ * such a shape has always painted. A shape that carries one yields its list,
4825
+ * with the first layer of each kind resolved from the base props so the two
4826
+ * homes cannot report different paint.
4827
+ *
4828
+ * `paint-order` is deliberately NOT applied here. It permutes the base fill
4829
+ * and stroke of a single-layer shape and is a separate concern from the stack
4830
+ * itself; applying both would sequence the same shape twice.
4831
+ */
4832
+ declare function appearanceLayers(state: SerializedShapeState): readonly AppearanceLayer[];
4833
+ /** Whether a layer contributes ink: it is enabled and its paint is not `none`. */
4834
+ declare function layerPaints(layer: AppearanceLayer): boolean;
4835
+ /** The layers that actually contribute ink, in paint order. */
4836
+ declare function paintingLayers(state: SerializedShapeState): readonly AppearanceLayer[];
4837
+ /**
4838
+ * Whether a shape needs the appearance stack to describe what it paints.
4839
+ *
4840
+ * False for one fill and one stroke in default order, which is what the base
4841
+ * props already say — so those shapes omit the field and serialize exactly as
4842
+ * they did before it existed. This is the check that keeps the field off
4843
+ * nearly every shape in nearly every document.
4844
+ */
4845
+ declare function needsAppearanceStack(layers: readonly AppearanceLayer[]): boolean;
4846
+ /**
4847
+ * Project a stack back onto shape state: the first layer of each kind writes
4848
+ * the base props, and the list is stored only when it says more than they do.
4849
+ *
4850
+ * Returns a new state rather than mutating, and clears `appearance` when the
4851
+ * stack collapses back to a plain fill-and-stroke pair so a shape does not
4852
+ * accumulate a field that describes nothing.
4853
+ */
4854
+ declare function writeAppearanceLayers(state: SerializedShapeState, layers: readonly AppearanceLayer[]): SerializedShapeState;
4855
+ /**
4856
+ * Which layer, if any, claims each filter chain the shape's layers reference.
4857
+ *
4858
+ * A filter chain applies either to the shape as composed or to one paint pass
4859
+ * within it, and the reference direction is what says which: a chain named by a
4860
+ * layer belongs to that layer, and one named nowhere belongs to the shape. This
4861
+ * is the query that keeps the two from being applied twice - once on the
4862
+ * wrapper and again on the layer - which is what a shape-level reference to a
4863
+ * layer-claimed chain would produce.
4864
+ *
4865
+ * Maps filter def id to the id of the first layer that claims it.
4866
+ */
4867
+ declare function layerFilterTargets(state: SerializedShapeState | Record<string, unknown> | undefined): ReadonlyMap<string, string>;
4868
+ /** Append a layer to the top of a shape's stack. */
4869
+ declare function appendAppearanceLayer(state: SerializedShapeState, layer: AppearanceLayer): SerializedShapeState;
4870
+
4673
4871
  /**
4674
4872
  * Callback fired when any property on a node changes.
4675
4873
  * Set by the owning SceneGraph.
@@ -6200,6 +6398,45 @@ declare const SAXES_SVG_XML_PARSER_HOST: SvgXmlParserHost;
6200
6398
  * present, including when its value is empty.
6201
6399
  */
6202
6400
  declare function getSvgSourceHref(element: SvgSourceElement): SvgSourceHref | null;
6401
+ /**
6402
+ * An XML name resolved into its namespace, which is the only identity an
6403
+ * element or attribute actually has.
6404
+ *
6405
+ * A prefix is a document-local spelling, not identity: Namespaces in XML lets
6406
+ * the same namespace be bound to different prefixes in different scopes, and
6407
+ * SVG Animations section 2.7 turns on exactly that, matching `a:href` on an
6408
+ * animation element against `b:href` on its target.
6409
+ */
6410
+ interface ExpandedName {
6411
+ readonly namespaceUri: string | null;
6412
+ readonly localName: string;
6413
+ }
6414
+ /**
6415
+ * Resolve a QName against the namespace declarations in scope at `element`.
6416
+ *
6417
+ * An unprefixed name resolves to no namespace rather than to the default
6418
+ * namespace, per Namespaces in XML section 6.2: a default declaration applies
6419
+ * to element names, never to attribute names. Returns `null` for a prefix with
6420
+ * no binding in scope, which is a namespace-well-formedness error the caller
6421
+ * must treat as unusable rather than guess at.
6422
+ */
6423
+ declare function resolveSvgQName(document: SvgSourceDocument, element: SvgSourceElement, qname: string): ExpandedName | null;
6424
+ /**
6425
+ * Whether an ancestor already owns this element's source bytes verbatim.
6426
+ *
6427
+ * SVG 2 section 3.2.2 does not render descendants of non-rendered elements,
6428
+ * and section 5.10 excludes foreign-namespace elements from rendering, so an
6429
+ * SVG element beneath one is never painted. `foreignObject` content is
6430
+ * likewise handed to a foreign processor rather than to the SVG scene
6431
+ * (Embedded Content, "Embedding Foreign Object Types").
6432
+ *
6433
+ * Both cases are already preserved whole: a foreign element through
6434
+ * `documentExtensions`, a `foreignObject` through its own shape. Giving the
6435
+ * same source node a second, independent owner paints content a conformant
6436
+ * viewer leaves blank, and re-serializes it once per owner, so the document
6437
+ * grows by one copy on every round trip.
6438
+ */
6439
+ declare function hasOpaqueSvgAncestor(document: SvgSourceDocument, element: SvgSourceElement): boolean;
6203
6440
  /**
6204
6441
  * Convert strict XML into the single ordered source tree consumed by every
6205
6442
  * foreign-SVG capability module.
@@ -6908,6 +7145,17 @@ declare function planSvgClipMasks(document: SvgSourceDocument, usePlan: SvgUseOc
6908
7145
 
6909
7146
  declare const XHTML_EXTENSION_URI: "http://www.w3.org/1999/xhtml";
6910
7147
  declare const MATHML_EXTENSION_URI: "http://www.w3.org/1998/Math/MathML";
7148
+ /**
7149
+ * Extension URIs a browser-hosted viewer supports.
7150
+ *
7151
+ * SVG 2's Embedded Content chapter leaves the mapping from a
7152
+ * `requiredExtensions` URI to a supported XML language undefined, so these two
7153
+ * are a convention rather than an identity: browsers accept the XHTML and
7154
+ * MathML *namespace* URIs as extension tokens for embedding those languages in
7155
+ * `foreignObject`. Registered vocabularies contribute whatever they explicitly
7156
+ * declare as an extension alias, and a vocabulary that only preserves declares
7157
+ * nothing, because advertising is a claim of rendering capability.
7158
+ */
6911
7159
  declare const BROWSER_SVG_EXTENSION_URIS: readonly string[];
6912
7160
  declare const SVG_CONDITIONAL_PROCESSING_ATTRIBUTES: readonly string[];
6913
7161
  interface SvgConditionalProcessingCandidate {
@@ -10928,9 +11176,158 @@ declare function resolvePatternLibraryDef(definitionOrId: PatternLibraryDef | st
10928
11176
  * from the document root. These bindings let projection hosts construct a
10929
11177
  * namespace-well-formed envelope without consulting the live DOM. Unknown
10930
11178
  * prefixes remain an explicit error because their URI cannot be invented.
11179
+ *
11180
+ * This is a last resort, not an authority. A prefix that arrived with a
11181
+ * declaration carries its own URI through the preserved markup, and that
11182
+ * binding wins: see the precedence in `output-finalization.ts`. Only a prefix
11183
+ * that reaches output with no recorded declaration anywhere falls back here,
11184
+ * and resolving it from a table is a guess about what the author meant.
10931
11185
  */
10932
11186
  declare const SVG_WELL_KNOWN_NAMESPACE_URIS: ReadonlyMap<string, string>;
10933
11187
 
11188
+ /**
11189
+ * Vocabularies for namespaces beyond SVG's own.
11190
+ *
11191
+ * SVG 2 section 5.10 sets the floor: foreign elements and attributes must be
11192
+ * kept in the document and ignored for rendering. Preservation already meets
11193
+ * that floor generically, through `documentExtensions` and
11194
+ * `metadata.foreignAttrs`, and nothing here changes it.
11195
+ *
11196
+ * What this adds is *interpretation*: mapping authored foreign data onto a
11197
+ * concept the editor already models, so it becomes editable instead of inert.
11198
+ * That is the only thing interpretation buys. It cannot change rendering,
11199
+ * because section 5.10 forbids it, and it cannot improve round-trip fidelity,
11200
+ * because preservation is already lossless.
11201
+ *
11202
+ * Two rules keep that honest.
11203
+ *
11204
+ * **A vocabulary may only project onto a concept the editor already models.**
11205
+ * `sodipodi:type="arc"` becomes an `<ellipse>`, which is in SVG 2 and in the
11206
+ * canonical model, so it is a legitimate registration. A vocabulary that needs
11207
+ * a new document concept is a feature request, not a registration, or the
11208
+ * registry becomes a channel for inventing document semantics.
11209
+ *
11210
+ * **Interpreting an attribute means owning it in both directions.** A
11211
+ * registration that reads authored data without regenerating it would silently
11212
+ * break the file for the tool that wrote it, so `owns` and `emit` are
11213
+ * mandatory and gated.
11214
+ *
11215
+ * The extension URIs are a separate field on purpose. SVG 2's Embedded Content
11216
+ * chapter says outright that "this specification does not define how
11217
+ * `requiredExtensions` values should be mapped to support for different XML
11218
+ * languages", and its own example guards XHTML content with
11219
+ * `http://example.com/SVGExtensions/EmbeddedXHTML` while the namespace is
11220
+ * `http://www.w3.org/1999/xhtml`. An extension URI names a capability; a
11221
+ * namespace URI names a vocabulary. Conflating them would make registration
11222
+ * silently advertise support.
11223
+ */
11224
+ /** A foreign attribute as authored, keyed by local name within a namespace. */
11225
+ type VocabularyAttributes = ReadonlyMap<string, string>;
11226
+ /** One regenerated attribute, spelled with the prefix the vocabulary uses. */
11227
+ interface VocabularyAttribute {
11228
+ readonly name: string;
11229
+ readonly value: string;
11230
+ }
11231
+ /**
11232
+ * A canonical reinterpretation of an authored element.
11233
+ *
11234
+ * `type` must name a shape the canonical model already has, and `state` is
11235
+ * merged over the state the base planner produced.
11236
+ */
11237
+ interface VocabularyProjection {
11238
+ readonly type: string;
11239
+ readonly state: Readonly<Record<string, unknown>>;
11240
+ /**
11241
+ * Attribute local names this projection read into canonical state.
11242
+ *
11243
+ * Must be non-empty. These stop travelling as inert `foreignAttrs` and are
11244
+ * regenerated by `emit`, so canonical state becomes their single source. A
11245
+ * projection that consumed nothing would leave the authored values in place
11246
+ * to drift out of agreement with the geometry the user then edits.
11247
+ */
11248
+ readonly consumes: readonly [string, ...string[]];
11249
+ }
11250
+ interface NamespaceVocabulary {
11251
+ /**
11252
+ * Every namespace URI this vocabulary claims, canonical one first.
11253
+ *
11254
+ * A vocabulary is not always one URI. Inkscape has shipped its `sodipodi`
11255
+ * vocabulary under two, and every file in the local corpus uses the one core
11256
+ * did *not* have hardcoded, which is what a per-vendor constant buys you.
11257
+ * Claiming the set keeps the identity on the vocabulary rather than on
11258
+ * whichever spelling a given file happened to use.
11259
+ */
11260
+ readonly namespaceUris: readonly [string, ...string[]];
11261
+ /** Stable machine name, used in diagnostics and tests. */
11262
+ readonly id: string;
11263
+ /** Conventional prefix, used when regenerating attributes on export. */
11264
+ readonly prefix: string;
11265
+ /**
11266
+ * Extension URIs this vocabulary satisfies for `requiredExtensions`.
11267
+ *
11268
+ * Empty by default, and empty is the honest answer for a vocabulary that
11269
+ * only preserves. Advertising is a claim of rendering capability and SVG 2
11270
+ * section 5.6.4 makes the test binary, so a false claim makes a `<switch>`
11271
+ * select a branch the renderer gets wrong, which is worse than declining.
11272
+ */
11273
+ readonly extensionUris: readonly string[];
11274
+ /**
11275
+ * Reinterpret an element, or decline it.
11276
+ *
11277
+ * This is the single authority on both questions the pipeline asks: whether
11278
+ * this vocabulary claims the element at all, and what it becomes. They were
11279
+ * once separate functions that had to agree, which no registration gate can
11280
+ * verify; returning `consumes` alongside the projection makes disagreement
11281
+ * unrepresentable.
11282
+ *
11283
+ * `null` means preserved untouched, which is the right answer whenever the
11284
+ * authored data is outside what this vocabulary can round-trip. A declined
11285
+ * element keeps every one of its attributes.
11286
+ */
11287
+ readonly project: (attributes: VocabularyAttributes) => VocabularyProjection | null;
11288
+ /**
11289
+ * Regenerate the owned attributes from canonical state, for a shape this
11290
+ * vocabulary previously claimed. Returns an empty list when the shape is no
11291
+ * longer one this vocabulary describes.
11292
+ */
11293
+ readonly emit: (retained: VocabularyAttributes, read: (key: string) => unknown) => readonly VocabularyAttribute[];
11294
+ }
11295
+ /**
11296
+ * Every namespace vocabulary, declared once.
11297
+ *
11298
+ * A namespace appears at most once: two owners for one URI would make
11299
+ * interpretation order-dependent, so `assertNamespaceVocabularyRegistry`
11300
+ * refuses it.
11301
+ */
11302
+ declare const NAMESPACE_VOCABULARIES: readonly NamespaceVocabulary[];
11303
+ /** Every vocabulary currently in effect, built-in and registered. */
11304
+ declare function namespaceVocabularies(): readonly NamespaceVocabulary[];
11305
+ /** The vocabulary claiming `namespaceUri`, if any. */
11306
+ declare function namespaceVocabulary(namespaceUri: string | null): NamespaceVocabulary | null;
11307
+ /**
11308
+ * Register a vocabulary for the lifetime of the returned disposer.
11309
+ *
11310
+ * Validated on the same gate as the built-ins, and refused if any namespace it
11311
+ * claims already has an owner: two owners for one URI would make
11312
+ * interpretation depend on load order, which is exactly the ambiguity the
11313
+ * registry exists to remove.
11314
+ */
11315
+ declare function registerNamespaceVocabulary(vocabulary: NamespaceVocabulary): () => void;
11316
+ /**
11317
+ * Extension URIs the registry advertises, for `requiredExtensions`.
11318
+ *
11319
+ * A namespace URI is not in this set unless a vocabulary declared it as an
11320
+ * extension alias, because the two URI spaces are different (see the header).
11321
+ */
11322
+ declare function registeredExtensionUris(): readonly string[];
11323
+ /**
11324
+ * Fail loudly on an incomplete or conflicting registry.
11325
+ *
11326
+ * Run from the registry test rather than at import time, on the pattern the
11327
+ * other core registries use.
11328
+ */
11329
+ declare function assertNamespaceVocabularyRegistry(vocabularies?: readonly NamespaceVocabulary[]): void;
11330
+
10934
11331
  /**
10935
11332
  * Machine-readable render diagnostics.
10936
11333
  *
@@ -10980,7 +11377,7 @@ type RenderDiagnosticSeverity = 'warning' | 'error';
10980
11377
  * - `unresolved-svg-viewport`: an auto-sized embedded viewport lacks the
10981
11378
  * parent geometry required by a decomposed transform pivot.
10982
11379
  */
10983
- declare const RENDER_DIAGNOSTIC_CODES: readonly ["unsupported-shape-type", "unsupported-polygon-type", "unresolved-reference", "undeclarable-namespace-prefix", "unresolved-container-pivot", "unresolved-reference-pivot", "duplicate-shape-id", "reference-cycle", "unresolved-svg-viewport", "symbol-cycle", "unresolved-symbol-definition", "duplicate-library-id", "invalid-symbol-viewport", "unresolved-symbol-viewport", "unresolved-symbol-pivot", "unknown-symbol-variant", "ambiguous-symbol-override-target", "unresolved-symbol-override-target"];
11380
+ declare const RENDER_DIAGNOSTIC_CODES: readonly ["unsupported-shape-type", "unsupported-polygon-type", "unresolved-reference", "undeclarable-namespace-prefix", "unresolved-container-pivot", "unresolved-reference-pivot", "duplicate-shape-id", "reference-cycle", "unresolved-svg-viewport", "symbol-cycle", "unresolved-symbol-definition", "duplicate-library-id", "invalid-symbol-viewport", "unresolved-symbol-viewport", "unresolved-symbol-pivot", "unknown-symbol-variant", "ambiguous-symbol-override-target", "unresolved-symbol-override-target", "unexpandable-appearance-stack"];
10984
11381
  type RenderDiagnosticCode = (typeof RENDER_DIAGNOSTIC_CODES)[number];
10985
11382
  /** One machine-readable problem reported while producing render output. */
10986
11383
  interface RenderDiagnostic {
@@ -11312,142 +11709,329 @@ declare function collectMarkerReferences(shapes: readonly SerializedShape[], lib
11312
11709
  */
11313
11710
  declare function collectReferencedMarkerIds(shapes: readonly SerializedShape[], library: LibrarySource): Set<string>;
11314
11711
 
11315
- type DefinitionAttribute = readonly [name: string, value: string | number];
11316
- interface GradientStopEnvelope {
11317
- attributes: readonly DefinitionAttribute[];
11318
- }
11319
- interface GradientDefinitionEnvelope {
11320
- element: 'linearGradient' | 'radialGradient';
11321
- attributes: readonly DefinitionAttribute[];
11322
- stops: readonly GradientStopEnvelope[];
11323
- }
11324
- interface PatternDefinitionEnvelope {
11325
- attributes: readonly DefinitionAttribute[];
11326
- content: string;
11327
- }
11328
- type FilterColorInterpolation = 'auto' | 'sRGB' | 'linearRGB';
11329
- type FilterUnits = 'userSpaceOnUse' | 'objectBoundingBox';
11330
- interface FilterElementAttrs {
11331
- colorInterpolation?: FilterColorInterpolation | null;
11332
- filterUnits?: FilterUnits;
11333
- primitiveUnits?: FilterUnits;
11334
- x?: string;
11335
- y?: string;
11336
- width?: string;
11337
- height?: string;
11338
- }
11339
- interface FilterEnvelopeBase {
11340
- attributes: readonly DefinitionAttribute[];
11341
- }
11342
- interface RawFilterEnvelope extends FilterEnvelopeBase {
11343
- kind: 'raw';
11344
- content: string;
11345
- }
11346
- interface PrimitiveChainFilterEnvelope extends FilterEnvelopeBase {
11347
- kind: 'primitive-chain';
11348
- chain: SvgPrimitiveChainFilter;
11349
- }
11350
- interface GeneratedFilterEnvelope extends FilterEnvelopeBase {
11351
- kind: 'generated';
11352
- filters: readonly ShapeFilter[];
11353
- primitiveUnits: FilterUnits;
11712
+ type PresentationValueReader = (key: string) => unknown;
11713
+ interface PresentationSemanticContext {
11714
+ shapeId: string;
11715
+ includeAuthoredAttributes?: boolean;
11716
+ includeContainerPresentation?: boolean;
11717
+ retainCssAnimationDeclarations?: boolean;
11718
+ /**
11719
+ * The live editor projects resolved static stylesheet values inline so its
11720
+ * structural scaffolding cannot alter selector matching. Serialized SVG
11721
+ * renderers leave both stylesheet channels to the canonical stylesheet.
11722
+ */
11723
+ projectStaticStylesheetValues?: boolean;
11354
11724
  }
11355
- type FilterDefinitionEnvelope = RawFilterEnvelope | PrimitiveChainFilterEnvelope | GeneratedFilterEnvelope;
11356
- /**
11357
- * Build the one portable pattern definition consumed by static rendering and
11358
- * platform projections. SVG 2 section 14.3 keeps tile lengths on the pattern
11359
- * resource, so valid source spellings remain authoritative over the numeric
11360
- * editor projection.
11361
- */
11362
- declare function patternDefinitionEnvelope(id: string, pattern: PatternFill): PatternDefinitionEnvelope;
11363
- declare function linearGradientEnvelope(id: string, gradient: LinearGradient): GradientDefinitionEnvelope;
11364
- declare function radialGradientEnvelope(id: string, gradient: RadialGradient): GradientDefinitionEnvelope;
11365
- declare function filterChainExtendsBounds(filters: readonly ShapeFilter[]): boolean;
11366
- declare function filterDefinitionEnvelope(filterId: string, filters: readonly ShapeFilter[], attrs?: FilterElementAttrs): FilterDefinitionEnvelope | null;
11367
-
11368
- /**
11369
- * Shared transform ownership for serialized container shapes.
11370
- *
11371
- * Imported groups preserve their source transform in `groupData.transform`.
11372
- * Canonical shape transform state owns the SVG attribute whenever it produces
11373
- * a non-identity matrix; the imported spelling is only the fallback. Rendering
11374
- * and analytic tree bounds use this module so the two projections cannot pick
11375
- * different owners.
11376
- */
11377
-
11378
- type ContainerTransformOwner = 'canonical' | 'group-data' | 'none';
11379
- interface ResolvedContainerTransform {
11380
- matrix: Affine2D;
11381
- attribute: string | null;
11382
- owner: ContainerTransformOwner;
11725
+ interface PresentationWrite {
11726
+ channel: 'attribute' | 'style';
11727
+ name: string;
11728
+ value: string | number | null;
11729
+ allowEmpty?: boolean;
11730
+ ifAbsent?: boolean;
11383
11731
  }
11384
- interface ContainerContentBounds {
11385
- minX: number;
11386
- minY: number;
11387
- maxX: number;
11388
- maxY: number;
11732
+ interface PresentationSemanticEntry {
11733
+ id: string;
11734
+ keys: readonly string[];
11735
+ project: (read: PresentationValueReader, context: PresentationSemanticContext) => readonly PresentationWrite[];
11389
11736
  }
11390
11737
  /**
11391
- * Resolve the transform emitted on a container and the equivalent affine.
11392
- * SVG 2 section 8.5 applies the transform to the container coordinate system.
11393
- */
11394
- declare function resolveContainerTransform(state: SerializedShapeState, defaultPivot?: Point): ResolvedContainerTransform;
11395
- /** Whether decomposed rotation, scale, or skew channels need a geometry pivot. */
11396
- declare function containerTransformNeedsContentPivot(state: SerializedShapeState): boolean;
11397
- /** Resolve container transform channels around the exact local content center. */
11398
- declare function resolveContainerTransformFromContentBounds(state: SerializedShapeState, bounds: ContainerContentBounds | null): ResolvedContainerTransform;
11399
-
11400
- /**
11401
- * Pure geometry functions for computing shape vertices and paths.
11402
- *
11403
- * These are headless — no DOM required. They take numeric parameters
11404
- * and return vertex arrays or SVG path-data strings.
11405
- */
11406
-
11407
- /**
11408
- * Compute equally-spaced vertices around a circle (for triangle, ngon).
11409
- * Path is centered at origin; caller applies translate(cx, cy).
11410
- */
11411
- declare function computePolygonVertices(sides: number, radius: number, shiftAngleDeg?: number): Point[];
11412
- /**
11413
- * Compute star vertices with alternating outer/inner radii.
11414
- */
11415
- declare function computeStarVertices(arms: number, radius: number, innerRadiusPercent: number, shiftAngleDeg?: number): Point[];
11416
- /**
11417
- * Compute cross vertices (12 points forming a plus shape).
11418
- */
11419
- declare function computeCrossVertices(radius: number, armWidthPercent: number, shiftAngleDeg?: number): Point[];
11420
- /**
11421
- * Compute arrow vertices (7 points forming an arrow).
11422
- */
11423
- declare function computeArrowVertices(radius: number, headWidthPercent: number, headLengthPercent: number, shaftWidthPercent: number, shiftAngleDeg?: number): Point[];
11424
- /**
11425
- * Compute speech-bubble vertices — square body with a tail protruding at a
11426
- * chosen angle. The base endpoints lie on the chosen body edge (keeping the
11427
- * body outline continuous); the tip extends in the direction of `tailAngleDeg`
11428
- * at length `tailLengthPercent * radius`.
11738
+ * Ordered common-presentation semantics shared by headless rendering,
11739
+ * component code generation, and the editor's incremental apply layer.
11429
11740
  *
11430
- * The `shiftAngleDeg` rotates the entire shape (body + tail).
11431
- */
11432
- declare function computeSpeechBubbleVertices(radius: number, tailAngleDeg: number, tailLengthPercent: number, tailWidthPercent: number, shiftAngleDeg?: number): Point[];
11433
- /**
11434
- * Compute lightning-bolt vertices — a zigzag ribbon from top tip to bottom tip.
11435
- * `boltSegments` line segments make the zigzag (alternating x offsets of
11436
- * `boltJaggednessPercent * radius`); the ribbon is `boltWidthPercent * radius`
11437
- * wide, perpendicular to each segment's bisector normal.
11438
- */
11439
- declare function computeLightningVertices(radius: number, boltSegments: number, boltJaggednessPercent: number, boltWidthPercent: number, shiftAngleDeg?: number): Point[];
11440
- /**
11441
- * Compute heart path — two cubic Béziers meeting at the bottom tip and the
11442
- * upper cleft. `lobeRadiusPercent` controls the horizontal extent of the two
11443
- * top lobes; `cleftDepthPercent` controls how deep the central dip sits.
11741
+ * Order is part of the contract. The dash row follows linecap so dotted
11742
+ * style can make the final cap round, and unmodeled authored attributes
11743
+ * remain the final row so typed state keeps one deterministic owner.
11444
11744
  */
11445
- declare function computeHeartPath(radius: number, lobeRadiusPercent: number, cleftDepthPercent: number, shiftAngleDeg?: number): string;
11446
- /**
11447
- * Compute cloud path — a classic cartoon-cloud silhouette built as the outer
11448
- * boundary of N overlapping circles placed around an elongated ellipse.
11449
- * Circles go all the way around (top, sides, bottom), and the silhouette is
11450
- * closed by walking each circle's outer arc via the intersection with its
11745
+ declare const PRESENTATION_SEMANTICS: readonly [{
11746
+ readonly id: "fill";
11747
+ readonly keys: readonly ["fillColor", "fillType", "fillGradient", "fillLibraryId", "inheritFill", "authoredFillPaint"];
11748
+ readonly project: (read: PresentationValueReader, context: PresentationSemanticContext) => PresentationWrite[];
11749
+ }, {
11750
+ readonly id: "element-opacity";
11751
+ readonly keys: readonly ["opacity", "preserveOpacity"];
11752
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11753
+ }, {
11754
+ readonly id: "fill-opacity";
11755
+ readonly keys: readonly ["fillOpacity", "preserveFillOpacity", "fillType", "fillGradient", "inheritFill"];
11756
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11757
+ }, {
11758
+ readonly id: "fill-rule";
11759
+ readonly keys: readonly ["fillRule"];
11760
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11761
+ }, {
11762
+ readonly id: "stroke";
11763
+ readonly keys: readonly ["borderColor", "strokeType", "strokeGradient", "strokeLibraryId", "inheritStroke", "authoredStrokePaint"];
11764
+ readonly project: (read: PresentationValueReader, context: PresentationSemanticContext) => PresentationWrite[];
11765
+ }, {
11766
+ readonly id: "stroke-width";
11767
+ readonly keys: readonly ["borderWidth"];
11768
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11769
+ }, {
11770
+ readonly id: "stroke-opacity";
11771
+ readonly keys: readonly ["strokeOpacity", "preserveStrokeOpacity", "strokeType", "strokeGradient", "inheritStroke"];
11772
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11773
+ }, {
11774
+ readonly id: "blend-mode";
11775
+ readonly keys: readonly ["blendMode"];
11776
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11777
+ }, {
11778
+ readonly id: "paint-order";
11779
+ readonly keys: readonly ["paintOrder"];
11780
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11781
+ }, {
11782
+ readonly id: "inline-style";
11783
+ readonly keys: readonly ["inlineStyle"];
11784
+ readonly project: (read: PresentationValueReader, context: PresentationSemanticContext) => PresentationWrite[];
11785
+ }, {
11786
+ readonly id: "markers";
11787
+ readonly keys: readonly ["markerStart", "markerMid", "markerEnd"];
11788
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11789
+ }, {
11790
+ readonly id: "stroke-linejoin";
11791
+ readonly keys: readonly ["strokeLinejoin"];
11792
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11793
+ }, {
11794
+ readonly id: "stroke-linecap";
11795
+ readonly keys: readonly ["strokeLinecap"];
11796
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11797
+ }, {
11798
+ readonly id: "stroke-miterlimit";
11799
+ readonly keys: readonly ["strokeMiterlimit"];
11800
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11801
+ }, {
11802
+ readonly id: "stroke-dasharray";
11803
+ readonly keys: readonly ["lineStyle", "dashLength", "gapLength", "strokeDasharray", "strokeLinecap"];
11804
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11805
+ }, {
11806
+ readonly id: "stroke-dashoffset";
11807
+ readonly keys: readonly ["dashOffset"];
11808
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11809
+ }, {
11810
+ readonly id: "shape-rendering";
11811
+ readonly keys: readonly ["shapeRendering"];
11812
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11813
+ }, {
11814
+ readonly id: "text-rendering";
11815
+ readonly keys: readonly ["textRendering"];
11816
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11817
+ }, {
11818
+ readonly id: "image-rendering";
11819
+ readonly keys: readonly ["imageRendering"];
11820
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11821
+ }, {
11822
+ readonly id: "color-rendering";
11823
+ readonly keys: readonly ["colorRendering"];
11824
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11825
+ }, {
11826
+ readonly id: "color-interpolation";
11827
+ readonly keys: readonly ["colorInterpolation"];
11828
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11829
+ }, {
11830
+ readonly id: "filter";
11831
+ readonly keys: readonly ["filters", "filterLibraryIds"];
11832
+ readonly project: (read: PresentationValueReader, context: PresentationSemanticContext) => PresentationWrite[];
11833
+ }, {
11834
+ readonly id: "system-language";
11835
+ readonly keys: readonly ["systemLanguage"];
11836
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11837
+ }, {
11838
+ readonly id: "required-extensions";
11839
+ readonly keys: readonly ["requiredExtensions"];
11840
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11841
+ }, {
11842
+ readonly id: "vector-effect";
11843
+ readonly keys: readonly ["vectorEffect"];
11844
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11845
+ }, {
11846
+ readonly id: "visibility";
11847
+ readonly keys: readonly ["visibility"];
11848
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11849
+ }, {
11850
+ readonly id: "display";
11851
+ readonly keys: readonly ["displayAttr"];
11852
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11853
+ }, {
11854
+ readonly id: "visible";
11855
+ readonly keys: readonly ["visible"];
11856
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11857
+ }, {
11858
+ readonly id: "path-length";
11859
+ readonly keys: readonly ["pathLength"];
11860
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11861
+ }, {
11862
+ readonly id: "transform-box";
11863
+ readonly keys: readonly ["transformBox"];
11864
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11865
+ }, {
11866
+ readonly id: "transform";
11867
+ readonly keys: readonly ["rotation", "transformMatrix", "translateX", "translateY", "skewX", "skewY", "scaleX", "scaleY", "customPivot", "rawTransform"];
11868
+ readonly project: () => never[];
11869
+ }, {
11870
+ readonly id: "locked";
11871
+ readonly keys: readonly ["locked"];
11872
+ readonly project: () => never[];
11873
+ }, {
11874
+ readonly id: "metadata";
11875
+ readonly keys: readonly ["metadata"];
11876
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11877
+ }, {
11878
+ readonly id: "css-clip-path";
11879
+ readonly keys: readonly ["cssClipPath"];
11880
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11881
+ }, {
11882
+ readonly id: "css-mask-properties";
11883
+ readonly keys: readonly ["cssMaskProperties"];
11884
+ readonly project: (read: PresentationValueReader) => PresentationWrite[];
11885
+ }, {
11886
+ readonly id: "container-presentation";
11887
+ readonly keys: readonly ["containerPresentation"];
11888
+ readonly project: (read: PresentationValueReader, context: PresentationSemanticContext) => PresentationWrite[];
11889
+ }, {
11890
+ readonly id: "authored-attributes";
11891
+ readonly keys: readonly ["authoredAttributes"];
11892
+ readonly project: (read: PresentationValueReader, context: PresentationSemanticContext) => PresentationWrite[];
11893
+ }];
11894
+ type PresentationSemanticId = (typeof PRESENTATION_SEMANTICS)[number]['id'];
11895
+ declare function projectPresentationEntry(entry: PresentationSemanticEntry, read: PresentationValueReader, context: PresentationSemanticContext): readonly PresentationWrite[];
11896
+ declare function projectPresentation(read: PresentationValueReader, context: PresentationSemanticContext): PresentationWrite[];
11897
+ declare function serializedPresentationReader(state: SerializedShapeState): PresentationValueReader;
11898
+
11899
+ type DefinitionAttribute = readonly [name: string, value: string | number];
11900
+ interface GradientStopEnvelope {
11901
+ attributes: readonly DefinitionAttribute[];
11902
+ }
11903
+ interface GradientDefinitionEnvelope {
11904
+ element: 'linearGradient' | 'radialGradient';
11905
+ attributes: readonly DefinitionAttribute[];
11906
+ stops: readonly GradientStopEnvelope[];
11907
+ }
11908
+ interface PatternDefinitionEnvelope {
11909
+ attributes: readonly DefinitionAttribute[];
11910
+ content: string;
11911
+ }
11912
+ type FilterColorInterpolation = 'auto' | 'sRGB' | 'linearRGB';
11913
+ type FilterUnits = 'userSpaceOnUse' | 'objectBoundingBox';
11914
+ interface FilterElementAttrs {
11915
+ colorInterpolation?: FilterColorInterpolation | null;
11916
+ filterUnits?: FilterUnits;
11917
+ primitiveUnits?: FilterUnits;
11918
+ x?: string;
11919
+ y?: string;
11920
+ width?: string;
11921
+ height?: string;
11922
+ }
11923
+ interface FilterEnvelopeBase {
11924
+ attributes: readonly DefinitionAttribute[];
11925
+ }
11926
+ interface RawFilterEnvelope extends FilterEnvelopeBase {
11927
+ kind: 'raw';
11928
+ content: string;
11929
+ }
11930
+ interface PrimitiveChainFilterEnvelope extends FilterEnvelopeBase {
11931
+ kind: 'primitive-chain';
11932
+ chain: SvgPrimitiveChainFilter;
11933
+ }
11934
+ interface GeneratedFilterEnvelope extends FilterEnvelopeBase {
11935
+ kind: 'generated';
11936
+ filters: readonly ShapeFilter[];
11937
+ primitiveUnits: FilterUnits;
11938
+ }
11939
+ type FilterDefinitionEnvelope = RawFilterEnvelope | PrimitiveChainFilterEnvelope | GeneratedFilterEnvelope;
11940
+ /**
11941
+ * Build the one portable pattern definition consumed by static rendering and
11942
+ * platform projections. SVG 2 section 14.3 keeps tile lengths on the pattern
11943
+ * resource, so valid source spellings remain authoritative over the numeric
11944
+ * editor projection.
11945
+ */
11946
+ declare function patternDefinitionEnvelope(id: string, pattern: PatternFill): PatternDefinitionEnvelope;
11947
+ declare function linearGradientEnvelope(id: string, gradient: LinearGradient): GradientDefinitionEnvelope;
11948
+ declare function radialGradientEnvelope(id: string, gradient: RadialGradient): GradientDefinitionEnvelope;
11949
+ declare function filterChainExtendsBounds(filters: readonly ShapeFilter[]): boolean;
11950
+ declare function filterDefinitionEnvelope(filterId: string, filters: readonly ShapeFilter[], attrs?: FilterElementAttrs): FilterDefinitionEnvelope | null;
11951
+
11952
+ /**
11953
+ * Shared transform ownership for serialized container shapes.
11954
+ *
11955
+ * Imported groups preserve their source transform in `groupData.transform`.
11956
+ * Canonical shape transform state owns the SVG attribute whenever it produces
11957
+ * a non-identity matrix; the imported spelling is only the fallback. Rendering
11958
+ * and analytic tree bounds use this module so the two projections cannot pick
11959
+ * different owners.
11960
+ */
11961
+
11962
+ type ContainerTransformOwner = 'canonical' | 'group-data' | 'none';
11963
+ interface ResolvedContainerTransform {
11964
+ matrix: Affine2D;
11965
+ attribute: string | null;
11966
+ owner: ContainerTransformOwner;
11967
+ }
11968
+ interface ContainerContentBounds {
11969
+ minX: number;
11970
+ minY: number;
11971
+ maxX: number;
11972
+ maxY: number;
11973
+ }
11974
+ /**
11975
+ * Resolve the transform emitted on a container and the equivalent affine.
11976
+ * SVG 2 section 8.5 applies the transform to the container coordinate system.
11977
+ */
11978
+ declare function resolveContainerTransform(state: SerializedShapeState, defaultPivot?: Point): ResolvedContainerTransform;
11979
+ /** Whether decomposed rotation, scale, or skew channels need a geometry pivot. */
11980
+ declare function containerTransformNeedsContentPivot(state: SerializedShapeState): boolean;
11981
+ /** Resolve container transform channels around the exact local content center. */
11982
+ declare function resolveContainerTransformFromContentBounds(state: SerializedShapeState, bounds: ContainerContentBounds | null): ResolvedContainerTransform;
11983
+
11984
+ /**
11985
+ * Pure geometry functions for computing shape vertices and paths.
11986
+ *
11987
+ * These are headless — no DOM required. They take numeric parameters
11988
+ * and return vertex arrays or SVG path-data strings.
11989
+ */
11990
+
11991
+ /**
11992
+ * Compute equally-spaced vertices around a circle (for triangle, ngon).
11993
+ * Path is centered at origin; caller applies translate(cx, cy).
11994
+ */
11995
+ declare function computePolygonVertices(sides: number, radius: number, shiftAngleDeg?: number): Point[];
11996
+ /**
11997
+ * Compute star vertices with alternating outer/inner radii.
11998
+ */
11999
+ declare function computeStarVertices(arms: number, radius: number, innerRadiusPercent: number, shiftAngleDeg?: number): Point[];
12000
+ /**
12001
+ * Compute cross vertices (12 points forming a plus shape).
12002
+ */
12003
+ declare function computeCrossVertices(radius: number, armWidthPercent: number, shiftAngleDeg?: number): Point[];
12004
+ /**
12005
+ * Compute arrow vertices (7 points forming an arrow).
12006
+ */
12007
+ declare function computeArrowVertices(radius: number, headWidthPercent: number, headLengthPercent: number, shaftWidthPercent: number, shiftAngleDeg?: number): Point[];
12008
+ /**
12009
+ * Compute speech-bubble vertices — square body with a tail protruding at a
12010
+ * chosen angle. The base endpoints lie on the chosen body edge (keeping the
12011
+ * body outline continuous); the tip extends in the direction of `tailAngleDeg`
12012
+ * at length `tailLengthPercent * radius`.
12013
+ *
12014
+ * The `shiftAngleDeg` rotates the entire shape (body + tail).
12015
+ */
12016
+ declare function computeSpeechBubbleVertices(radius: number, tailAngleDeg: number, tailLengthPercent: number, tailWidthPercent: number, shiftAngleDeg?: number): Point[];
12017
+ /**
12018
+ * Compute lightning-bolt vertices — a zigzag ribbon from top tip to bottom tip.
12019
+ * `boltSegments` line segments make the zigzag (alternating x offsets of
12020
+ * `boltJaggednessPercent * radius`); the ribbon is `boltWidthPercent * radius`
12021
+ * wide, perpendicular to each segment's bisector normal.
12022
+ */
12023
+ declare function computeLightningVertices(radius: number, boltSegments: number, boltJaggednessPercent: number, boltWidthPercent: number, shiftAngleDeg?: number): Point[];
12024
+ /**
12025
+ * Compute heart path — two cubic Béziers meeting at the bottom tip and the
12026
+ * upper cleft. `lobeRadiusPercent` controls the horizontal extent of the two
12027
+ * top lobes; `cleftDepthPercent` controls how deep the central dip sits.
12028
+ */
12029
+ declare function computeHeartPath(radius: number, lobeRadiusPercent: number, cleftDepthPercent: number, shiftAngleDeg?: number): string;
12030
+ /**
12031
+ * Compute cloud path — a classic cartoon-cloud silhouette built as the outer
12032
+ * boundary of N overlapping circles placed around an elongated ellipse.
12033
+ * Circles go all the way around (top, sides, bottom), and the silhouette is
12034
+ * closed by walking each circle's outer arc via the intersection with its
11451
12035
  * next neighbor. Every transition between bumps is tangent-smooth — no flat
11452
12036
  * edges, no corners.
11453
12037
  *
@@ -12570,6 +13154,20 @@ type RenderPlanBodyEntry = ({
12570
13154
  /** The wrapper's close tag (`</g>`). */
12571
13155
  close: string;
12572
13156
  members: readonly RenderPlanShape[];
13157
+ } | {
13158
+ /**
13159
+ * One shape whose appearance stack renders as its geometry referenced
13160
+ * once per paint layer. The geometry itself rides the plan's defs as a
13161
+ * `generated` entry; these are the references to it, in paint order.
13162
+ */
13163
+ kind: 'appearance-stack';
13164
+ /** The shape the stack belongs to. */
13165
+ shape: SerializedShape;
13166
+ /** The wrapper's open tag, carrying everything acting on the composite. */
13167
+ open: string;
13168
+ /** The wrapper's close tag (`</g>`). */
13169
+ close: string;
13170
+ members: readonly RenderPlanShape[];
12573
13171
  };
12574
13172
  /** Document envelope blocks (already rendered). */
12575
13173
  interface RenderPlanEnvelope {
@@ -13339,192 +13937,140 @@ declare function filterReferenceValue(shapeId: string, filters: ShapeFilter[] |
13339
13937
  */
13340
13938
  declare function filterAttr(shapeId: string, filters: ShapeFilter[] | undefined, filterLibraryIds?: string[]): string;
13341
13939
 
13342
- type PresentationValueReader = (key: string) => unknown;
13343
- interface PresentationSemanticContext {
13344
- shapeId: string;
13345
- includeAuthoredAttributes?: boolean;
13346
- includeContainerPresentation?: boolean;
13347
- retainCssAnimationDeclarations?: boolean;
13940
+ /**
13941
+ * Expanding an appearance stack into SVG.
13942
+ *
13943
+ * A shape whose paint is one fill and one stroke renders as one element, the
13944
+ * way it always has. A shape carrying an appearance stack cannot: SVG has no
13945
+ * multi-fill element, so the stack renders as the shape's geometry defined once
13946
+ * and referenced once per layer, in document order. That is the painter's model
13947
+ * (SVG 2 §3.3) doing exactly what it always did, with the stack saying how many
13948
+ * times.
13949
+ *
13950
+ * <defs><rect id="s1-geometry" x="10" y="20" width="100" height="50"/></defs>
13951
+ * <g data-shape-id="s1">
13952
+ * <use href="#s1-geometry" fill="none" stroke="#12325e" stroke-width="12"/>
13953
+ * <use href="#s1-geometry" fill="#e2452f" stroke="none"/>
13954
+ * <use href="#s1-geometry" fill="none" stroke="#8fc0f5" stroke-width="6"/>
13955
+ * </g>
13956
+ *
13957
+ * **The geometry definition carries no paint.** Presentation attributes on a
13958
+ * referenced element are *cloned* into the use-element shadow tree (SVG 2
13959
+ * §5.5.3), and a cloned attribute beats an inherited one — so a `fill` left on
13960
+ * the definition would be unoverridable by every `<use>` that references it,
13961
+ * and every layer would paint the same colour. This is a correctness trap, not
13962
+ * a style preference, and it is what {@link geometryState} exists to prevent.
13963
+ *
13964
+ * **Each layer states its whole paint, including what it does not paint.** A
13965
+ * `<use>` inherits from its host, so a stroke layer that named only its stroke
13966
+ * would pick up a fill from the cascade — black, by initial value — and paint a
13967
+ * silhouette under everything above it. Every layer therefore emits both `fill`
13968
+ * and `stroke`, one of them `none`.
13969
+ *
13970
+ * Which presentation rows belong to which of the three elements is the whole
13971
+ * design, and it is declared below rather than discovered per call site.
13972
+ */
13973
+
13974
+ /**
13975
+ * Rows a single paint layer owns.
13976
+ *
13977
+ * Everything that describes one paint operation rather than the shape: the
13978
+ * paint itself, its opacity, and the stroke's geometry-of-the-stroke. Markers
13979
+ * are here because they are painted alongside the stroke and must be painted
13980
+ * once, not once per layer — they ride the first stroke layer.
13981
+ */
13982
+ declare const LAYER_PRESENTATION_IDS: ReadonlySet<PresentationSemanticId>;
13983
+ /**
13984
+ * Rows the wrapper owns, because they act on the composed result.
13985
+ *
13986
+ * Element opacity is the clearest case: a half-transparent shape with two
13987
+ * layers must fade as one picture. Applied per layer instead, the lower layer
13988
+ * would show through the upper one and the shape would look different from the
13989
+ * single-element version of itself.
13990
+ */
13991
+ declare const WRAPPER_PRESENTATION_IDS: ReadonlySet<PresentationSemanticId>;
13992
+ /**
13993
+ * Paint properties a shape authored through its inline style or its passthrough
13994
+ * attribute bag, which the stack cannot faithfully honour.
13995
+ *
13996
+ * A CSS declaration outranks a presentation attribute on the same element, so
13997
+ * `style="stroke:red"` on a single-element shape overrides that shape's own
13998
+ * `stroke`. Split into layers, the same declaration becomes an *inherited*
13999
+ * value on the wrapper, which every layer's own paint then outranks — so the
14000
+ * expanded shape would paint differently from the single-element one. There is
14001
+ * no placement that fixes it: one declaration cannot say which of several paint
14002
+ * operations it was meant to override.
14003
+ *
14004
+ * Rather than pick silently, expansion refuses for such a shape and says so.
14005
+ */
14006
+ declare function authoredPaintDeclarations(state: SerializedShapeState): readonly string[];
14007
+ /** The emitted id of a shape's hoisted geometry definition. */
14008
+ declare function geometryDefinitionId(shape: SerializedShape): string;
14009
+ /**
14010
+ * Whether a shape renders as a stack rather than as one element.
14011
+ *
14012
+ * Presence of the field is the signal, because `writeAppearanceLayers` stores
14013
+ * it only when the stack says more than the base props do. A shape with an
14014
+ * ordinary fill and stroke carries no `appearance` and takes the unchanged
14015
+ * single-element path — which is what keeps every existing document's output
14016
+ * byte-identical.
14017
+ */
14018
+ declare function shapeNeedsAppearanceExpansion(shape: SerializedShape): boolean;
14019
+ /**
14020
+ * The shape state that renders the shared geometry: no paint, no composition,
14021
+ * nothing a layer or the wrapper owns.
14022
+ *
14023
+ * `inheritFill` / `inheritStroke` are what actually suppress the paint
14024
+ * attributes. Merely deleting `fillColor` is not enough — the fill row falls
14025
+ * back to `#000000` when it finds nothing, so the definition would carry an
14026
+ * unoverridable black fill (see the module note on §5.5.3).
14027
+ */
14028
+ declare function geometryState(state: SerializedShapeState): SerializedShapeState;
14029
+ /**
14030
+ * The shape state that renders one layer's paint.
14031
+ *
14032
+ * Built as base props so the unchanged presentation registry can project it:
14033
+ * a layer is a fill and a stroke like any shape, with the operation it does not
14034
+ * perform set to `none`.
14035
+ */
14036
+ declare function layerState(layer: AppearanceLayer, options?: {
14037
+ readonly withMarkers?: SerializedShapeState;
14038
+ }): SerializedShapeState;
14039
+ /** One shape's stack, expanded into the three pieces of markup it renders as. */
14040
+ interface AppearanceExpansion {
14041
+ /** Emitted id of the hoisted geometry definition. */
14042
+ geometryId: string;
14043
+ /** `<defs>` markup for the shared, paint-free geometry. */
14044
+ geometryMarkup: string;
14045
+ /** The wrapper's open tag, carrying everything that acts on the composite. */
14046
+ open: string;
14047
+ /** The wrapper's close tag. */
14048
+ close: string;
14049
+ /** One `<use>` per painting layer, bottom-to-top. */
14050
+ members: readonly string[];
14051
+ }
14052
+ interface AppearanceExpansionDeps {
14053
+ /** Render a shape to markup. Supplied by the caller to avoid a cycle. */
14054
+ renderShape(shape: SerializedShape): string;
14055
+ /** Serialize presentation writes as an attribute run. */
14056
+ serializePresentationWrites(writes: readonly ReturnType<typeof projectPresentationEntry>[number][]): string;
14057
+ /** Escape a value for use inside a double-quoted attribute. */
14058
+ escapeAttributeValue(value: string): string;
13348
14059
  /**
13349
- * The live editor projects resolved static stylesheet values inline so its
13350
- * structural scaffolding cannot alter selector matching. Serialized SVG
13351
- * renderers leave both stylesheet channels to the canonical stylesheet.
14060
+ * Called when a stack cannot be expanded faithfully and the shape falls back
14061
+ * to single-element rendering, which paints only its base layer.
13352
14062
  */
13353
- projectStaticStylesheetValues?: boolean;
13354
- }
13355
- interface PresentationWrite {
13356
- channel: 'attribute' | 'style';
13357
- name: string;
13358
- value: string | number | null;
13359
- allowEmpty?: boolean;
13360
- ifAbsent?: boolean;
13361
- }
13362
- interface PresentationSemanticEntry {
13363
- id: string;
13364
- keys: readonly string[];
13365
- project: (read: PresentationValueReader, context: PresentationSemanticContext) => readonly PresentationWrite[];
14063
+ reportUnexpandable?(shape: SerializedShape, authoredPaintProperties: readonly string[]): void;
13366
14064
  }
13367
14065
  /**
13368
- * Ordered common-presentation semantics shared by headless rendering,
13369
- * component code generation, and the editor's incremental apply layer.
14066
+ * Expand a stacked shape.
13370
14067
  *
13371
- * Order is part of the contract. The dash row follows linecap so dotted
13372
- * style can make the final cap round, and unmodeled authored attributes
13373
- * remain the final row so typed state keeps one deterministic owner.
14068
+ * Returns `null` when the shape does not need expanding, so callers can keep
14069
+ * the single-element path exactly as it was.
13374
14070
  */
13375
- declare const PRESENTATION_SEMANTICS: readonly [{
13376
- readonly id: "fill";
13377
- readonly keys: readonly ["fillColor", "fillType", "fillGradient", "fillLibraryId", "inheritFill", "authoredFillPaint"];
13378
- readonly project: (read: PresentationValueReader, context: PresentationSemanticContext) => PresentationWrite[];
13379
- }, {
13380
- readonly id: "element-opacity";
13381
- readonly keys: readonly ["opacity", "preserveOpacity"];
13382
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13383
- }, {
13384
- readonly id: "fill-opacity";
13385
- readonly keys: readonly ["fillOpacity", "preserveFillOpacity", "fillType", "fillGradient", "inheritFill"];
13386
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13387
- }, {
13388
- readonly id: "fill-rule";
13389
- readonly keys: readonly ["fillRule"];
13390
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13391
- }, {
13392
- readonly id: "stroke";
13393
- readonly keys: readonly ["borderColor", "strokeType", "strokeGradient", "strokeLibraryId", "inheritStroke", "authoredStrokePaint"];
13394
- readonly project: (read: PresentationValueReader, context: PresentationSemanticContext) => PresentationWrite[];
13395
- }, {
13396
- readonly id: "stroke-width";
13397
- readonly keys: readonly ["borderWidth"];
13398
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13399
- }, {
13400
- readonly id: "stroke-opacity";
13401
- readonly keys: readonly ["strokeOpacity", "preserveStrokeOpacity", "strokeType", "strokeGradient", "inheritStroke"];
13402
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13403
- }, {
13404
- readonly id: "blend-mode";
13405
- readonly keys: readonly ["blendMode"];
13406
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13407
- }, {
13408
- readonly id: "paint-order";
13409
- readonly keys: readonly ["paintOrder"];
13410
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13411
- }, {
13412
- readonly id: "inline-style";
13413
- readonly keys: readonly ["inlineStyle"];
13414
- readonly project: (read: PresentationValueReader, context: PresentationSemanticContext) => PresentationWrite[];
13415
- }, {
13416
- readonly id: "markers";
13417
- readonly keys: readonly ["markerStart", "markerMid", "markerEnd"];
13418
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13419
- }, {
13420
- readonly id: "stroke-linejoin";
13421
- readonly keys: readonly ["strokeLinejoin"];
13422
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13423
- }, {
13424
- readonly id: "stroke-linecap";
13425
- readonly keys: readonly ["strokeLinecap"];
13426
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13427
- }, {
13428
- readonly id: "stroke-miterlimit";
13429
- readonly keys: readonly ["strokeMiterlimit"];
13430
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13431
- }, {
13432
- readonly id: "stroke-dasharray";
13433
- readonly keys: readonly ["lineStyle", "dashLength", "gapLength", "strokeDasharray", "strokeLinecap"];
13434
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13435
- }, {
13436
- readonly id: "stroke-dashoffset";
13437
- readonly keys: readonly ["dashOffset"];
13438
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13439
- }, {
13440
- readonly id: "shape-rendering";
13441
- readonly keys: readonly ["shapeRendering"];
13442
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13443
- }, {
13444
- readonly id: "text-rendering";
13445
- readonly keys: readonly ["textRendering"];
13446
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13447
- }, {
13448
- readonly id: "image-rendering";
13449
- readonly keys: readonly ["imageRendering"];
13450
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13451
- }, {
13452
- readonly id: "color-rendering";
13453
- readonly keys: readonly ["colorRendering"];
13454
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13455
- }, {
13456
- readonly id: "color-interpolation";
13457
- readonly keys: readonly ["colorInterpolation"];
13458
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13459
- }, {
13460
- readonly id: "filter";
13461
- readonly keys: readonly ["filters", "filterLibraryIds"];
13462
- readonly project: (read: PresentationValueReader, context: PresentationSemanticContext) => PresentationWrite[];
13463
- }, {
13464
- readonly id: "system-language";
13465
- readonly keys: readonly ["systemLanguage"];
13466
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13467
- }, {
13468
- readonly id: "required-extensions";
13469
- readonly keys: readonly ["requiredExtensions"];
13470
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13471
- }, {
13472
- readonly id: "vector-effect";
13473
- readonly keys: readonly ["vectorEffect"];
13474
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13475
- }, {
13476
- readonly id: "visibility";
13477
- readonly keys: readonly ["visibility"];
13478
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13479
- }, {
13480
- readonly id: "display";
13481
- readonly keys: readonly ["displayAttr"];
13482
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13483
- }, {
13484
- readonly id: "visible";
13485
- readonly keys: readonly ["visible"];
13486
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13487
- }, {
13488
- readonly id: "path-length";
13489
- readonly keys: readonly ["pathLength"];
13490
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13491
- }, {
13492
- readonly id: "transform-box";
13493
- readonly keys: readonly ["transformBox"];
13494
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13495
- }, {
13496
- readonly id: "transform";
13497
- readonly keys: readonly ["rotation", "transformMatrix", "translateX", "translateY", "skewX", "skewY", "scaleX", "scaleY", "customPivot", "rawTransform"];
13498
- readonly project: () => never[];
13499
- }, {
13500
- readonly id: "locked";
13501
- readonly keys: readonly ["locked"];
13502
- readonly project: () => never[];
13503
- }, {
13504
- readonly id: "metadata";
13505
- readonly keys: readonly ["metadata"];
13506
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13507
- }, {
13508
- readonly id: "css-clip-path";
13509
- readonly keys: readonly ["cssClipPath"];
13510
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13511
- }, {
13512
- readonly id: "css-mask-properties";
13513
- readonly keys: readonly ["cssMaskProperties"];
13514
- readonly project: (read: PresentationValueReader) => PresentationWrite[];
13515
- }, {
13516
- readonly id: "container-presentation";
13517
- readonly keys: readonly ["containerPresentation"];
13518
- readonly project: (read: PresentationValueReader, context: PresentationSemanticContext) => PresentationWrite[];
13519
- }, {
13520
- readonly id: "authored-attributes";
13521
- readonly keys: readonly ["authoredAttributes"];
13522
- readonly project: (read: PresentationValueReader, context: PresentationSemanticContext) => PresentationWrite[];
13523
- }];
13524
- type PresentationSemanticId = (typeof PRESENTATION_SEMANTICS)[number]['id'];
13525
- declare function projectPresentationEntry(entry: PresentationSemanticEntry, read: PresentationValueReader, context: PresentationSemanticContext): readonly PresentationWrite[];
13526
- declare function projectPresentation(read: PresentationValueReader, context: PresentationSemanticContext): PresentationWrite[];
13527
- declare function serializedPresentationReader(state: SerializedShapeState): PresentationValueReader;
14071
+ declare function expandAppearanceStack(shape: SerializedShape, deps: AppearanceExpansionDeps): AppearanceExpansion | null;
14072
+ /** The layers a shape paints, for callers that need the list without markup. */
14073
+ declare function shapeAppearanceLayers(shape: SerializedShape): readonly AppearanceLayer[];
13528
14074
 
13529
14075
  /** DOM-free SVG path flattening and arc-length queries. */
13530
14076
 
@@ -13550,6 +14096,201 @@ interface SvgPathMetrics {
13550
14096
  */
13551
14097
  declare function createSvgPathMetrics(source: string, options?: SvgPathMetricsOptions): SvgPathMetrics | null;
13552
14098
 
14099
+ /**
14100
+ * Fallback values for every geometry property of every built-in shape type.
14101
+ *
14102
+ * One table, two consumers: core's geometry kernels in `shape-geometry.ts`,
14103
+ * and the editor's shape property getters in `apps/editor/src/shapes/`. Before
14104
+ * this table each side carried its own literals, and they had drifted:
14105
+ * `shiftAngle` resolved to 0 in the editor and -90 in core, gear's
14106
+ * `holeRadiusPercent` to 25 and 0, gear's `toothDepthPercent` to 25 and 30,
14107
+ * spiral's `thicknessPercent` to 15 and 20, arrow's `headLengthPercent` to 40
14108
+ * and 30. A shape whose serialized state omitted one of those properties drew
14109
+ * one silhouette on canvas and a different one headlessly.
14110
+ *
14111
+ * Where the two sides disagreed:
14112
+ * - `shiftAngle` takes core's -90. That is the signature default of
14113
+ * `computePolygonVertices` and the point-up orientation the corpus fixtures
14114
+ * already encode, so core's rendered output is unchanged. The editor's 0 was
14115
+ * only reachable for a shape hydrated straight from a SceneNode whose props
14116
+ * omit the key; every DOM construction and deserialization path writes an
14117
+ * explicit value.
14118
+ * - The four percentage knobs take the editor's values, because those are what
14119
+ * the Custom Shape tool has always created and what existing documents were
14120
+ * authored with.
14121
+ *
14122
+ * Properties shared by a family live in the family constant so a new member
14123
+ * cannot forget one. Only geometry properties belong here - paint, transform,
14124
+ * and text defaults are owned elsewhere.
14125
+ */
14126
+ /** Center, size, and orientation shared by every radius-based polygon shape. */
14127
+ declare const POLYGON_GEOMETRY_DEFAULTS: Readonly<{
14128
+ cx: 0;
14129
+ cy: 0;
14130
+ radius: 50;
14131
+ cornerRadius: 0;
14132
+ shiftAngle: -90;
14133
+ }>;
14134
+ /** Bounding box shared by every flowchart box shape. */
14135
+ declare const FLOWCHART_GEOMETRY_DEFAULTS: Readonly<{
14136
+ x: 0;
14137
+ y: 0;
14138
+ width: 100;
14139
+ height: 60;
14140
+ }>;
14141
+ declare const SHAPE_GEOMETRY_DEFAULTS: Readonly<{
14142
+ triangle: Readonly<{
14143
+ cx: 0;
14144
+ cy: 0;
14145
+ radius: 50;
14146
+ cornerRadius: 0;
14147
+ shiftAngle: -90;
14148
+ }>;
14149
+ ngon: Readonly<{
14150
+ sides: 6;
14151
+ cx: 0;
14152
+ cy: 0;
14153
+ radius: 50;
14154
+ cornerRadius: 0;
14155
+ shiftAngle: -90;
14156
+ }>;
14157
+ star: Readonly<{
14158
+ arms: 5;
14159
+ innerRadiusPercent: 50;
14160
+ cx: 0;
14161
+ cy: 0;
14162
+ radius: 50;
14163
+ cornerRadius: 0;
14164
+ shiftAngle: -90;
14165
+ }>;
14166
+ cross: Readonly<{
14167
+ armWidthPercent: 40;
14168
+ cx: 0;
14169
+ cy: 0;
14170
+ radius: 50;
14171
+ cornerRadius: 0;
14172
+ shiftAngle: -90;
14173
+ }>;
14174
+ ring: Readonly<{
14175
+ innerRadiusPercent: 50;
14176
+ cx: 0;
14177
+ cy: 0;
14178
+ radius: 50;
14179
+ cornerRadius: 0;
14180
+ shiftAngle: -90;
14181
+ }>;
14182
+ spiral: Readonly<{
14183
+ turns: 3;
14184
+ thicknessPercent: 15;
14185
+ spiralDirection: 1;
14186
+ cx: 0;
14187
+ cy: 0;
14188
+ radius: 50;
14189
+ cornerRadius: 0;
14190
+ shiftAngle: -90;
14191
+ }>;
14192
+ gear: Readonly<{
14193
+ teeth: 8;
14194
+ toothDepthPercent: 25;
14195
+ holeRadiusPercent: 25;
14196
+ cx: 0;
14197
+ cy: 0;
14198
+ radius: 50;
14199
+ cornerRadius: 0;
14200
+ shiftAngle: -90;
14201
+ }>;
14202
+ arrow: Readonly<{
14203
+ headWidthPercent: 100;
14204
+ headLengthPercent: 40;
14205
+ shaftWidthPercent: 40;
14206
+ cx: 0;
14207
+ cy: 0;
14208
+ radius: 50;
14209
+ cornerRadius: 0;
14210
+ shiftAngle: -90;
14211
+ }>;
14212
+ speechBubble: Readonly<{
14213
+ tailAngleDeg: 45;
14214
+ tailLengthPercent: 40;
14215
+ tailWidthPercent: 25;
14216
+ cx: 0;
14217
+ cy: 0;
14218
+ radius: 50;
14219
+ cornerRadius: 0;
14220
+ shiftAngle: -90;
14221
+ }>;
14222
+ heart: Readonly<{
14223
+ lobeRadiusPercent: 50;
14224
+ cleftDepthPercent: 25;
14225
+ cx: 0;
14226
+ cy: 0;
14227
+ radius: 50;
14228
+ cornerRadius: 0;
14229
+ shiftAngle: -90;
14230
+ }>;
14231
+ lightning: Readonly<{
14232
+ boltSegments: 3;
14233
+ boltJaggednessPercent: 40;
14234
+ boltWidthPercent: 30;
14235
+ cx: 0;
14236
+ cy: 0;
14237
+ radius: 50;
14238
+ cornerRadius: 0;
14239
+ shiftAngle: -90;
14240
+ }>;
14241
+ cloud: Readonly<{
14242
+ cloudBumps: 5;
14243
+ cloudPuffinessPercent: 60;
14244
+ cx: 0;
14245
+ cy: 0;
14246
+ radius: 50;
14247
+ cornerRadius: 0;
14248
+ shiftAngle: -90;
14249
+ }>;
14250
+ diamond: Readonly<{
14251
+ x: 0;
14252
+ y: 0;
14253
+ width: 100;
14254
+ height: 60;
14255
+ }>;
14256
+ parallelogram: Readonly<{
14257
+ slantPercent: 20;
14258
+ x: 0;
14259
+ y: 0;
14260
+ width: 100;
14261
+ height: 60;
14262
+ }>;
14263
+ trapezoid: Readonly<{
14264
+ topWidthPercent: 70;
14265
+ x: 0;
14266
+ y: 0;
14267
+ width: 100;
14268
+ height: 60;
14269
+ }>;
14270
+ terminator: Readonly<{
14271
+ x: 0;
14272
+ y: 0;
14273
+ width: 100;
14274
+ height: 60;
14275
+ }>;
14276
+ cylinder: Readonly<{
14277
+ capHeightPercent: 15;
14278
+ x: 0;
14279
+ y: 0;
14280
+ width: 100;
14281
+ height: 60;
14282
+ }>;
14283
+ 'document-shape': Readonly<{
14284
+ waveAmplitudePercent: 15;
14285
+ x: 0;
14286
+ y: 0;
14287
+ width: 100;
14288
+ height: 60;
14289
+ }>;
14290
+ }>;
14291
+ /** Shape types whose geometry defaults this table owns. */
14292
+ type ShapeGeometryDefaultsType = keyof typeof SHAPE_GEOMETRY_DEFAULTS;
14293
+
13553
14294
  /**
13554
14295
  * Structured, DOM-free parser for SVG path data.
13555
14296
  *
@@ -14834,6 +15575,30 @@ declare abstract class ShapeBuilder<T extends ShapeBuilder<T>> {
14834
15575
  fillOpacity(value: number): T;
14835
15576
  /** Set the fill rule. */
14836
15577
  fillRule(rule: 'nonzero' | 'evenodd'): T;
15578
+ /**
15579
+ * Add another fill on top of everything painted so far.
15580
+ *
15581
+ * `.fill()` sets the shape's base fill; this stacks an additional one above
15582
+ * it. SVG has no multi-fill element, so the layers render as repeats of the
15583
+ * shape's geometry in document order — the painter's model (SVG 2 §3.3)
15584
+ * doing what it always did, with the stack saying how many times.
15585
+ */
15586
+ addFill(color: string, opacity?: number): T;
15587
+ /**
15588
+ * Add another stroke on top of everything painted so far.
15589
+ *
15590
+ * Widest first is the usual ordering: a stroke is centred on the edge, so a
15591
+ * narrower one added afterwards paints over the middle of a wider one and
15592
+ * leaves a band of it showing on each side.
15593
+ */
15594
+ addStroke(color: string, width?: number): T;
15595
+ /**
15596
+ * Append to the stack, seeding it from the base props on first use so the
15597
+ * base fill and stroke keep their place underneath what gets added.
15598
+ */
15599
+ private pushAppearanceLayer;
15600
+ /** Next free ordinal for a layer kind, so ids stay unique within a shape. */
15601
+ private nextLayerOrdinal;
14837
15602
  /** Set the stroke color and optional width. */
14838
15603
  stroke(color: string, width?: number): T;
14839
15604
  /** Set stroke to none. */
@@ -16595,4 +17360,4 @@ interface RasterQualityReport {
16595
17360
  */
16596
17361
  declare function compareImages(reference: RasterImage, candidate: RasterImage, opts?: CompareImagesOptions): RasterQualityReport;
16597
17362
 
16598
- export { ANIMATION_MANAGER_INTERPOLATION_POLICY, type AdditiveAnimationValue, type Affine2D, type AffineTransformMatrix, type AggregateDocumentFieldKey, type AlphaMode, type AngleInterpolationPolicy, type AnimatablePropertyDescriptor, type AnimationCycleTrack, type AnimationDefinitionTarget, type AnimationKeyframe, type AnimationOperation, type AnimationTimeline, type AnimationTrack, type AnimationTrackTimeSample, type AnimationTrigger, type AnimationTriggerType, type AnyNodeProps, type AppliedIngestPlan, type ApplyIngestPlanOptions, type ArcCenterParameterization, type ArcParams, type AriaRole, Arrow, type ArrowNodeProps, Audio, type AuthoredGradientGeometry, type AuthoredLengthCoordinate, type AuthoredMarkerGeometry, type AuthoredPaintReference, type AuthoredPatternGeometry, type AuthoredTextCoordinate, type AuthoredTextPosition, type AuthoredUseGeometry, BROWSER_SVG_EXTENSION_URIS, BUILTIN_MARKER_ID_MAP, type BaseFilter, type BaseFilterPrimitive, type BlackAndWhiteFilter, type BlurQuality, type BoundingBox, type BoundsDiagnostic, type BoundsDiagnosticCode, type BoundsRect, type BoundsResult, type BoundsStatus, type BrightnessFilter, type BuildSvgDestinationIdentityIndexOptions, type BuiltinShapeGeometryType, CANONICAL_NORMALIZATION_FAULT_POINTS, CC_NS, COLLAB_PROTOCOL_VERSION, COMMON_PROP_DEFAULTS, COMMON_TRANSFORM_NODE_DEFAULTS, CONNECTOR_LABEL_BASELINE_LIFT, CONNECTOR_LABEL_FONT_FAMILY, CONNECTOR_LABEL_FONT_SIZE, CURRENT_SCHEMA_VERSION, CanonicalDocument, type CanonicalNormalizationFaultPoint, type CanonicalRootFramePolicy, type CanonicalSnapshotNormalizationOptions, type CanonicalSnapshotNormalizationResult, type ChannelPainterFilter, Circle, type CircleNodeProps, type CircleShapeGeometry, type ClipMaskDefinition, type ClipMaskGroupDeltaOperation, type ClipMaskOperation, type ClipMaskRenderPlan, type ClipMaskWrapDirective, Cloud, type CloudNodeProps, type CodeFormat, type CodegenOptions, type CollabClock, type CollaborationSnapshot, type CollaborationStamp, type CollaborationState, type ColorInterpolationPolicy, type CommonNodeProps, type CommonTransformNodeProps, type CompareImagesOptions, type ConnectionDirection, type ConnectionDirectionValue, type ConnectionPoint, type ConnectionPointValue, type ConnectorAnchorResolver, type ConnectorEndpointRefValue, type ConnectorLabelAnchor, type ConnectorRouteResult, type ConnectorRoutingModeValue, Container, type ContainerContentBounds, type ContainerNodeProps, ContainerShapeBuilder, type ContainerShapeGeometry, type ContainerTransformOwner, type ContouringDiscreteFilter, type ContouringTableFilter, type ContrastFilter, type CornerShapeValue, type CreateDocumentOptions, type CreateShapeOptions, Cross, type CrossNodeProps, type CrumpledPlasticFilter, type CssAnimationSourceGroup, type CssFunctionToken, type CssLocalUrlToken, type CssProjectedTransformChannel, type CssProjectedTransformStop, type CssTopLevelRange, type CssTransformBox, type CssTransformOrigin, type CssTransformOriginContext, type CssTransformProjection, type CssTransformProjectionStatus, type CssTransformStop, type CssTransformValueIssue, type CustomPatternDef, type CycleBehavior, type CylinderNodeProps, DC_NS, DEFAULT_CONNECTOR_CORNER_RADIUS, DEFAULT_COORDINATE_PRECISION, DEFAULT_RICH_TEXT_STYLE, DOCUMENT_FIELDS, DOCUMENT_FIELD_LIVE_AUTHORITY, DOCUMENT_INGEST_POLICIES, DOCUMENT_SECTION_ORDER, type DecodedSvgSource, type DeepReadonly, type DefinitionAttribute, type DefinitionAuthoredPlacement, type DefinitionPlacementIndex, type DefinitionPlacementScope, type DeltaEStats, type DescriptiveEmissionOptions, type DiamondNodeProps, type DiffuseLightingFilter, type DocumentBoundsHost, type DocumentBoundsOptions, type DocumentBoundsView, DocumentBuilder, type DocumentBuilderOptions, type DocumentDefinitionContainer, type DocumentExtension, type DocumentExtensionAttribute, type DocumentExtensionCharacterNode, type DocumentExtensionElementNode, type DocumentExtensionNode, type DocumentFieldAuthority, type DocumentFieldDescriptor, type DocumentFieldKey, type DocumentFieldRegistryGates, type DocumentMetadata, DocumentModel, type DocumentNodeProps, type DocumentReplacementHooks, type DocumentReplacementListener, type DocumentReplacementResult, type DocumentReplacementTransition, type DocumentResourceOperation, type DocumentScript, type DocumentSectionKey, type DocumentSectionListener, type DocumentSectionOrderGates, DocumentSession, type DocumentSessionView, type DocumentShapeNodeProps, type DocumentStyle, type DropShadowFilter, type DuotoneFilter, EASING_CURVES, EasingType, Ellipse, type EllipseNodeProps, type EllipseShapeGeometry, type EmbeddedPayloadRewriter, type EmbeddedPayloadSlotKind, type EmbeddedSvgShapeGeometry, type EmbeddedSvgTransformResult, type EmbeddedSvgViewportOverride, type EmbossFilter, type EnsureTextSpanRangeResult, type EvaluateSvgConditionalProcessingOptions, type ExportItemOperation, type Extent1D, type ExtractedVariables, type FeBlendPrimitive, type FeColorMatrixPrimitive, type FeComponentTransferPrimitive, type FeCompositePrimitive, type FeConvolveMatrixPrimitive, type FeDiffuseLightingPrimitive, type FeDisplacementMapPrimitive, type FeDropShadowPrimitive, type FeFloodPrimitive, type FeGaussianBlurPrimitive, type FeImagePrimitive, type FeMergePrimitive, type FeMorphologyPrimitive, type FeOffsetPrimitive, type FeSpecularLightingPrimitive, type FeTilePrimitive, type FeTurbulencePrimitive, type FieldPrecision, type FieldSerialization, type FillType, type FilmGrainFilter, type FilterBlendMode, type FilterDefinitionEnvelope, type FilterElementAttrs, type FilterLibraryDef, type FilterLightSource, type FilterPrimitive, type FilterPrimitiveType, type FilterType, type FlowchartBoxNodeProps, type FlowchartBoxParams, type FlowchartBoxType, type FontVariantCssInput, type ForeignObjectNodeProps, type FusableTrack, type FusableViewBoxTrack, type GaussianBlurFilter, Gear, type GearNodeProps, type GenerateCodeResult, type GenerateSudokuOptions, type GeneratedFilterEnvelope, type GeneratedSudokuPuzzle, type GeneratedWordSearch, type GlowFilter, type GouacheFilter, type GradientDefinition, type GradientDefinitionEnvelope, type GradientLibraryDef, type GradientSpreadMethod, type GradientStop, type GradientStopEnvelope, type GradientTransformMatrix, type GradientUnits, type GraphChangeListener, type GrayscaleFilter, type GroupNodeProps, type GroupPresentationData, type Guide, type GuideDeltaOperation, HEADLESS_SVG_STYLE_ENVIRONMENT, Heart, type HeartNodeProps, type HistorySnapshot, type HueRotateFilter, Hyperlink, type HyperlinkNodeProps, IDENTITY_AFFINE, INGEST_APPLY_STAGES, INGEST_DIAGNOSTIC_CODES, INGEST_DOCUMENT_ROOT_IDENTITY, INGEST_FEATURES, INGEST_FEATURE_CAPABILITIES, INGEST_PLAN_VERSION, INGRESS_INTENTS, INLINE_CHILD_CONTAINER_TYPES, type ImageAttribution, type ImageNodeProps, ImageShape, type IndexedResource, IngestApplicationError, type IngestApplyContext, type IngestApplyStage, type IngestDiagnostic, type IngestDiagnosticCode, type IngestDiagnosticSeverity, type IngestDocumentFieldCandidates, type IngestExternalEffectValue, type IngestExternalFontDescriptorsValue, type IngestExternalFontSourceValue, type IngestFeature, type IngestFeatureCapability, type IngestFeatureCapabilityGates, type IngestFeatureIntentMatrix, type IngestFeatureStatus, type IngestFieldPolicy, type IngestFieldPolicyAction, type IngestFieldPolicyGates, type IngestFieldPolicyMatrix, type IngestPlan, type IngestPlanApplyAdapter, type IngestPlanValue, type IngestReferenceEdgeValue, type IngestResult, type IngestRootFrameValue, type IngestShapeCandidateValue, type IngestSource, type IngestSourceDescriptor, type IngestSourceElementDescriptor, type IngressIntent, type InkBlotFilter, type InlineContainerTransformResult, type InnerGlowFilter, type InnerShadowFilter, type InterpolationCharOffset, type InterpolationColor, type InterpolationGradient, type InterpolationGradientStop, type InterpolationPoint, type InterpolationSplinePoint, type InvertFilter, type JsonObject, type JsonPrimitive, type JsonValue, KNOWN_METADATA_PREFIXES, KNOWN_STATE_KEYS, type KeyedSerializedAnimationKeyframe, LIBRARY_ASSEMBLY_KIND_ORDER, LIBRARY_EMIT_ORDER, type LibraryDef, type LibraryDefBase, type LibraryDefOfKind, type LibraryDefinitionIndex, type LibraryIndex, type LibraryKind, type LibrarySource, type LicenseType, type LightSource, Lightning, type LightningNodeProps, Line, type LineEndpointValue, type LineNodeProps, type LineShapeGeometry, type LinearEasingPoint, type LinearGradient, LinearGradientBuilder, type LinearGradientLibraryDef, type LinearGradientLibraryValue, type LiveInterpolationPolicy, MARKER_HEIGHT, MARKER_VIEWBOX, MARKER_WIDTH, MATHML_EXTENSION_URI, MAX_COORDINATE_PRECISION, MIGRATIONS, type MarkerDescriptor, type MarkerLibraryDef, type MarkerReferenceSets, type MaterializedIngestNode, type MatrixDecomposition2D, type Measurement, type MeasurementDeltaOperation, type MediaNodeProps, type MetadataDeltaOperation, type MetadataDescriptiveElement, type MigratableVersion, type Migration, type MorphologyFilter, type MorphologyOperator, type MotionBlurFilter, NGon, type NGonNodeProps, NON_WIRE_PROP_KEYS, NUMERIC_SHAPE_TRANSFORM_STATE_KEYS, type NamedResource, NestedSvg, type NodeChangeListener, type NodeFactoryMode, NodeSchemaRegistry, type NodeTypePropsMap, type NodeTypeSchema, type NoiseFilter, type OpMetadataPatch, type OpShapeState, type OpacityFilter, type Operation, type OperationValidationIssue, type OperationValidationResult, type OutlineFilter, type OutlinePosition, PAINT_SERVER_PASSTHROUGH_ATTR, PRESENTATION_SEMANTICS, PUZZLE_DEFAULTS, type ParallelogramNodeProps, type ParseOptions, type ParsedCssAnimation, type ParsedPreserveAspectRatio, type ParsedSvgPathCommand, type ParsedSvgPathCommandType, type ParsedSvgViewBox, type ParsedTimingFunction, Path, type PathBoundsRect, PathCurveType, type PathNodeProps, type PathPoint, PathPointType, type PathShapeGeometry, PatternBuilder, type PatternDefinitionEnvelope, type PatternElement, type PatternFill, type PatternLibraryDef, type PatternParams, type PatternSvgContentResult, type PatternType, type PixelateFilter, type PlanSnapshotExternalEffectsOptions, type PlanSvgAnimationsOptions, type PlanSvgClipMasksOptions, type PlanSvgConditionalProcessingOptions, type PlanSvgContainerHierarchyOptions, type PlanSvgExternalEffectsOptions, type PlanSvgFiltersOptions, type PlanSvgGradientsOptions, type PlanSvgImportOptions, type PlanSvgLeafGeometryOptions, type PlanSvgMarkersOptions, type PlanSvgMetadataOptions, type PlanSvgOccurrenceViewportsOptions, type PlanSvgPaintServerDefinitionsOptions, type PlanSvgPatternsOptions, type PlanSvgResourceDependenciesOptions, type PlanSvgScriptsOptions, type PlanSvgStyleCascadeOptions, type PlanSvgSymbolUsesOptions, type PlanSvgUseOccurrencesOptions, type Point, type PointLightFilter, type PolygonBaseNodeProps, Polyline, type PolylineNodeProps, type PolylineShapeGeometry, type PositioningRectShapeGeometry, type PresentationSemanticContext, type PresentationSemanticEntry, type PresentationSemanticId, type PresentationValueReader, type PresentationWrite, type PreserveAspectRatioAlign, type PreviousPlacement, type PrimitiveChainFilterEnvelope, type ProjectedTextLinePosition, type PropDef, type PropStamp, type PuzzleBounds, type PuzzleOptions, type PuzzlePiece, type PuzzleStyle, type PuzzleTabPattern, RDF_NS, RENDER_DIAGNOSTIC_CODES, RENDER_FEATURES, RENDER_FEATURE_CAPABILITIES, RENDER_TARGETS, RICH_TEXT_STYLE_KEYS, type RadialGradient, RadialGradientBuilder, type RadialGradientLibraryDef, type RadialGradientLibraryValue, type RasterImage, type RasterQualityReport, type RawFilterEnvelope, type RawSvgFilter, type Rect, Rectangle, type RectangleNodeProps, type RectangleShapeGeometry, type RejectedWordSearchWord, type RenderAnimationElementsOptions, type RenderCapability, type RenderCapabilityMatrix, type RenderCapabilityMatrixGates, type RenderDiagnostic, type RenderDiagnosticCode, type RenderDiagnosticSeverity, type RenderFeature, type RenderFeatureCapability, type RenderFeatureCapabilityGates, type RenderFeatureTargetMatrix, type RenderFinalizationOptions, type RenderFrameAttributeOmissions, type RenderOptions, type RenderPlan, type RenderPlanBodyEntry, type RenderPlanDefEntry, type RenderPlanDefKind, type RenderPlanDefinitionContainer, type RenderPlanDefs, type RenderPlanEnvelope, type RenderPlanFrame, type RenderPlanOptions, type RenderPlanShape, type RenderShapeContext, type RenderTarget, type RenderToSvgResult, type RenderedDefinitionAnimationElement, type ResolveSvgClipMaskContext, type ResolveSvgGradientGeometryContext, type ResolveSvgPatternTileContext, type ResolvedConnectorAnchor, type ResolvedConnectorEndpoints, type ResolvedContainerTransform, type ResolvedLibraryGradient, type ResolvedSvgPatternTile, type ResolvedSvgRectRadii, type ResolvedSvgViewport, type ResolvedSvgViewportFrame, type ResolvedSymbolDefinitionRender, type ResolvedSymbolInstanceContent, type ResolvedSymbolViewport, type ResolvedTextFragment, type ResolvedTextSpan, type ResolvedTextSpanChild, type ResolvedTextSpanProjection, type ResourceKey, type Rgba, type RichTextAlignmentBaseline, type RichTextDecoration, type RichTextFontWeight, type RichTextFormatRange, type RichTextLineSpan, type RichTextResolvedData, type RichTextResolvedLine, type RichTextResolvedSegment, type RichTextResolvedStyle, type RichTextRun, type RichTextRuns, type RichTextSegmentsInput, type RichTextStyleDelta, type RichTextTspanAttribute, type RiddledFilter, Ring, type RingNodeProps, type RoundEdgesFilter, SAXES_SVG_XML_PARSER_HOST, SERIALIZED_SHAPE_STATE_KEYS, SHAPE_ENVELOPE_KEYS, SHAPE_TRANSFORM_STATE_KEYS, SVGSKETCH_NS, SVGSKETCH_PATH_EXTENSIONS, SVG_CONDITIONAL_PROCESSING_ATTRIBUTES, SVG_IMPORT_CAPABILITY_OWNERS, SVG_NAMESPACE, SVG_NS, SVG_PRESENTATION_PROPERTIES, SVG_WELL_KNOWN_NAMESPACE_URIS, type SaturateFilter, SceneGraph, SceneNode, type SceneTreeReplayHost, type SegmentCurveType, type SepiaFilter, type SerializedAnimationKeyframe, type SerializedAnimationTimeline, type SerializedAnimationTrack, type SerializedCharOffset, type SerializedClipMaskGroup, type SerializedColorGlyph, type SerializedColorGlyphLibrary, type SerializedExportItem, type SerializedGroup, type SerializedMarkerDef, type SerializedPaintServerDef, type SerializedSceneNodePlacement, type SerializedShape, type SerializedShapeState, type SerializedShapeStateKeyGates, type SerializedShapeTransformState, type SerializedSymbolDef, type SerializedVariantAxis, type SerializedViewbox, type SeverityOptions, type SeverityReport, ShapeBuilder, type ShapeEnvelopeKeyGates, type ShapeFilter, type ShapeGeometryDescriptor, type ShapeGeometryKernel, type ShapeGeometryRendererKey, type ShapeLibraryDefBase, type ShapeLocalObjectBoundsHost, type ShapeMetadata, type ShapeObjectBoundsHost, ShapeReference, type ShapeReferenceGeometry, type ShapeReferenceNodeProps, type ShapeReferenceTransformResult, type ShapeTransformState, type ShapeTreeVisitor, type SharpenFilter, type SmilAnimationKeyframe, type SmilCalcMode, type SmilKeyframeAttributes, type SmilKeyframeData, type SmilTimingRelation, type SmilTimingTrack, type SmilValue, type SmilValueAttributes, type SmilValueType, type SmilViewBoxAxis, type SmilViewBoxQuartet, type SolveSudokuOptions, type SpecularLightingFilter, SpeechBubble, type SpeechBubbleNodeProps, Spiral, type SpiralNodeProps, type SpliceTextSpanTreeResult, type SplinePointInput, type SpotLightFilter, Square, type SquareNodeProps, Star, type StarNodeProps, type StepPosition, type StepsParams, type StringifyOptions, type StrokeType, type StructureChangeListener, type StyledTextContent, type StyledTextLine, type StyledTextSegment, type StyledTextSource, type SudokuDifficulty, type SudokuGrid, type SudokuRating, type SudokuValidationResult, type SvgAnimationPlan, type SvgAnimationTargetStatus, type SvgAnimationTimelineDefinitionTarget, type SvgAnimationTimelineProjectionHost, type SvgAnimationTimelineShapeBinding, type SvgAppliedResourceDeclaration, type SvgAuthoredAttributeClassification, type SvgAuthoredAttributePlan, type SvgAuthoredAttributeRecord, type SvgAuthoredDeclaration, type SvgClipMaskBinding, type SvgClipMaskBindingStatus, type SvgClipMaskDefinition, type SvgClipMaskDefinitionMutation, type SvgClipMaskGeometryPlacement, type SvgClipMaskObjectBounds, type SvgClipMaskPlan, type SvgClipMaskRegion, type SvgClipMaskRepresentation, type SvgClipMaskResolution, type SvgClipMaskStatus, type SvgClipMaskType, type SvgClipMaskUnits, type SvgConditionalProcessingCandidate, type SvgConditionalProcessingCondition, type SvgConditionalProcessingPlan, type SvgContainerHierarchy, type SvgContainerHierarchyNode, type SvgContainerHierarchyPlacement, type SvgContainerKind, type SvgCssAnimationCandidate, type SvgCssKeyframeDeclaration, type SvgCssKeyframeStopPlan, type SvgCssKeyframesPlan, type SvgCssSpecificity, type SvgDescriptiveElement, type SvgDestinationIdAllocator, type SvgDestinationIdAssignment, type SvgDestinationIdRequest, type SvgDestinationIdentityChannel, type SvgDestinationIdentityIndex, type SvgDestinationIdentityOwner, type SvgDocumentMetadataCandidate, type SvgElementMetadataCandidate, type SvgElementStylePlan, type SvgEmbeddedFrameCandidate, type SvgEmbeddedFrameState, type SvgExternalAssetCandidate, type SvgExternalAssetStatus, type SvgExternalEffectsPlan, type SvgExternalFontCandidate, type SvgFilterBinding, type SvgFilterBindingStatus, type SvgFilterCandidate, type SvgFilterCandidateStatus, type SvgFilterOperation, type SvgFilterOperationStatus, type SvgFilterPlan, type SvgFilterRegion, type SvgGradientCandidate, type SvgGradientFallback, type SvgGradientGeometryValue, type SvgGradientPaintBinding, type SvgGradientPlan, type SvgGradientStatus, type SvgGradientStopCandidate, type SvgGradientTransform, type SvgHtmlMetadataElement, type SvgImportCapabilityAuthority, type SvgImportCapabilityOwner, type SvgImportCapabilityOwnershipGates, SvgImportError, type SvgImportPlan, type SvgImportProjectionContext, type SvgIngestDiagnosticContext, type SvgLeafCanonicalType, type SvgLeafGeometryCandidate, type SvgLeafGeometryPlan, type SvgLeafGeometryStatus, type SvgLengthContext, type SvgLengthToken, type SvgLocalReferenceChannel, type SvgMarkerAnimationCandidate, type SvgMarkerAuthoredGeometry, type SvgMarkerCandidate, type SvgMarkerContentCandidate, type SvgMarkerPlan, type SvgMarkerStatus, type SvgMetadataPlan, type SvgNodeProps, type SvgOccurrenceViewportContext, type SvgOccurrenceViewportPlan, type SvgPaintServerDefinitionCandidate, type SvgPaintServerDefinitionPlan, type SvgParsedStyleAttribute, type SvgPathAffineMatrix, type SvgPathCommandType, type SvgPathExtensionCommandType, type SvgPathMetricPoint, type SvgPathMetrics, type SvgPathMetricsOptions, type SvgPathParseError, type SvgPathParseErrorCode, type SvgPathParseOptions, type SvgPathParseResult, type SvgPathParserExtensions, type SvgPatternCandidate, type SvgPatternContentOccurrence, type SvgPatternFallback, type SvgPatternPaintBinding, type SvgPatternPlan, type SvgPatternResourceCandidate, type SvgPatternStatus, type SvgPatternTransform, type SvgPatternValue, type SvgPlannedScript, type SvgPresentationAttributeApplicability, type SvgPrimitiveChainFilter, type SvgPropertySemantics, type SvgResourceDependencyClosure, type SvgResourceDependencyComponent, type SvgResourceDependencyEdge, type SvgResourceDependencyKind, type SvgResourceDependencyMaterialization, type SvgResourceDependencyPlan, type SvgResourceElementKind, type SvgResourceProperty, type SvgScriptCandidate, type SvgScriptPlan, type SvgScriptScope, type SvgSmilAnimationCandidate, type SvgSmilAnimationKind, type SvgSourceAttribute, type SvgSourceCharacterNode, SvgSourceDecodingError, type SvgSourceDocument, type SvgSourceElement, type SvgSourceElementIdPlan, type SvgSourceGeneratedIdPlan, type SvgSourceHref, type SvgSourceIdOccurrence, type SvgSourceIdentifierPlan, type SvgSourceIdentifierPlanOptions, type SvgSourceIndex, type SvgSourceLocalReference, type SvgSourceNode, type SvgSourceReferenceRewrite, type SvgSourceResourceIdPlan, type SvgSourceResourceKind, type SvgStyleCascadePlan, type SvgStyleDeclarationOrigin, type SvgStyleEnvironment, type SvgStyleRulePlan, type SvgStylesheetPlan, type SvgSymbolDefinitionCandidate, type SvgSymbolDefinitionKind, type SvgSymbolUseCandidate, type SvgSymbolUseGeometry, type SvgSymbolUsePlan, type SvgSymbolUseStatus, type SvgSymbolUseTransform, type SvgTextMetricsHost, type SvgTextSpanNodeCandidate, type SvgTextSpanTarget, type SvgTextSpanTreeCandidate, type SvgUnboundStylesheetResourceReference, type SvgUseDefinitionComponent, type SvgUseOccurrence, type SvgUseOccurrenceEdge, type SvgUseOccurrencePlan, type SvgUseOccurrenceRole, type SvgUseResolution, type SvgUseResolutionStatus, type SvgUseResourceCapability, type SvgUseResourcePolicy, type SvgUseResourceRoot, type SvgUseSourceResolution, type SvgUseSourceResolutionStatus, type SvgViewCandidate, type SvgViewState, type SvgViewportDiagnostic, type SvgViewportDimensions, type SvgViewportFrame, type SvgViewportSize, type SvgViewportStatus, type SvgXmlAttributeInput, type SvgXmlCharacterNodeInput, type SvgXmlElementInput, type SvgXmlNodeInput, type SvgXmlParserHost, SvgXmlParserHostError, type SvgXmlParserHostResult, type SvgXmlSourceSpan, Switch, type SwitchNodeProps, type SymbolInstanceGeometry, type SymbolInstanceMaterialization, type SymbolInstanceNodeProps, type SymbolInstanceTransformResult, type SymbolLengthContext, type SymbolLibraryDef, type SymbolMaterialization, type SymbolMaterializationDiagnostic, type SymbolMaterializationDiagnosticCode, type SymbolMaterializationPlan, type SymbolMaterializationPlanOptions, type SymbolResolutionDiagnostic, type SymbolResolutionDiagnosticCode, type SymbolViewportDiagnostic, type SymbolViewportDiagnosticCode, type SymbolViewportHost, TYPED_FIELD_PREDICATES, type TemplateVariable, type TemplateVariableMode, type TemplateVariableOperation, type TemplateVariableSource, type TemplateVariableType, type TerminatorNodeProps, Text, type TextFormatOperation, type TextLayoutCaret, type TextLayoutCaretDraft, TextLayoutEngine, type TextLayoutGlyph, type TextLayoutGlyphDraft, type TextLayoutLine, type TextLayoutMeasurementRequest, type TextLayoutPoint, type TextLayoutProduct, type TextLayoutProductDraft, type TextLayoutProductHost, type TextLayoutRect, type TextLayoutRequest, type TextLayoutResult, type TextLayoutSegment, type TextLayoutViewport, type TextLayoutVisualLine, type TextLinePosition, type TextMeasurementHost, type TextNodeProps, type TextObjectBoundsMeasurement, type TextPathReference, type TextShapeGeometry, type TextShapeInsideGeometry, type TextShapeSpan, type TextSpanAnimationTarget, type TextSpanNode, type TextSpanRotationProjection, type TextSpanTree, type TextSplice, Timeline, Track, type TransferFunc, type TransformFusionPlan, type TransformStateLike, type TrapezoidNodeProps, Triangle, type TriangleNodeProps, VARIANT_INTERPOLATION_POLICY, type ValidationError, type ValidationResult, type VariableMap, type VariantAnimationElementSpec, type VariantCssPlan, type VariantCssSymbolPlan, type VariantSmilInnerAction, type VariantSmilOp, type VariantSmilSymbolPlan, type VariantTransitionInput, type VariantTransitionInstanceView, type VariantTransitionTimelineLike, type VariantWaapiPlan, type VariantWaapiSymbolPlan, Video, View, type ViewBoxFusionPlan, type ViewNodeProps, type ViewShapeGeometry, type Viewbox, type WarpFilter, type WarpType, type WatercolorFilter, type WireAliasShapeStateFields, type WireOnlyShapeStateFields, type WordSearchAxes, type WordSearchCellPath, type WordSearchDirection, type WordSearchLintResult, type WordSearchOptions, type WordSearchPlacement, type WordSearchPrimitiveMask, XHTML_EXTENSION_URI, type XrayFilter, accumulateAnimationValue, addAnimationValues, addSmilPointsValues, affine, affineFromArray, affineToArray, almostEqualAffine, animationBackwardsFillTrack, animationCycleDuration, animationDefinitionTargetShapeId, animationTrackActiveEnd, animationTrackDocumentBegin, applyAffineToPoint, applyAffineToVector, applyClipMaskGroupDelta, applyClipMaskPlanToShapes, applyCssAnimationLonghandOverrides, applyGuideDeltaOp, applyIngestPlan, applyMeasurementDeltaOp, applyMetadataDeltaOp, applyOpToSnapshot, applyOpsInPlace, applyOpsToSnapshot, applyOpsToSnapshotWithAccepted, applyRichTextFormat, applyTextSplice, applyTextTransform, applyTimingFunctionToKeyframe, arcEndpointToCenter, areTracksTimingEquivalent, around, assembleLibraryDefs, assembleSvgFromPlan, assertIngestFeatureRegistry, assertIngestPolicyRegistry, assertRasterImage, assertSvgImportCapabilityOwners, buildCompoundTransformValues, buildDefinitionPlacementIndex, buildFreshMetadataBlock, buildGuideDeltaOps, buildManagedChildren, buildManagedDescription, buildMeasurementDeltaOps, buildMetadataDeltaOps, buildRenderPlan, buildSmilKeyframeData, buildSmilKeyframes, buildSvgDestinationIdentityIndex, buildSvgIngestPlan, buildSymbolMaterializationPlan, buildViewBoxSmilKeyframeData, canonicalPolygonTransformString, canonicalTransformMatrix, canonicalTransformString, classifySvgExternalAssetUrl, clipMaskDefinitionFromGroup, clipMaskDefinitionsFromGroups, clipMaskGroupDefId, clipMaskGroupDefinitionId, clipMaskGroupIsRawBacked, clipMaskGroupWithDefinition, clipMaskOwnedDefIds, cloneTextSpanTree, collaborationResourceKey, collectDocumentEnvelopeLibraryReferenceIds, collectFontFamiliesFromPlan, collectMarkerReferences, collectReferencedLibraryDefs, collectReferencedMarkerIds, collectSvgFragmentLibraryReferenceIds, collectUnknownDocumentFields, compareImages, compareOrderKeys, composeDecomposedTransformMatrix, compositeOver, computeArrowVertices, computeCloudPath, computeCrossVertices, computeDashArray, computeFlowchartBoxPath, computeGearPath, computeGearVertices, computeHeartPath, computeLightningVertices, computePolygonVertices, computeRectanglePath, computeRingPath, computeSpeechBubbleVertices, computeSpiralPath, computeSplinePath, computeStarVertices, connectorLabelAnchor, containerTransformNeedsContentPivot, createDocument, createSceneNode, createShape, createSvgDestinationIdAllocator, createSvgPathMetrics, createTextLayoutKey, createTextLayoutProduct, createViewbox, createWordSearchPrimitiveMask, cssAnimationFillField, cssNamedColorToRgb, cubicBezierExtent1D, cubicBezierToEasingFields, customPatternDefToLibraryDef, declaredRichTextDeltaKeys, decodeCssEscapes, decodeSvgSourceBytes, decomposeAffine2D, defaultVariableMode, deltaE2000, deriveRichTextFormatRanges, deriveSegments, deriveTextSplice, derivedConnectionPoints, documentObjectBounds, ellipticalArcBounds, emptyDocumentMetadata, ensureTextSpanRange, escXml, evaluateParsedTimingFunction, evaluateSvgConditionalProcessing, extractVariables, filterAttr, filterChainExtendsBounds, filterDefinitionEnvelope, filterReferenceValue, finalizeRenderPlan, findShapeById, fingerprintCssAnimationDocumentStyles, fingerprintCssAnimationInlineStyles, fingerprintCssAnimationTrack, fingerprintIngestSource, flattenShapeStateTree, flattenStateExtra, flattenUnknownDocumentFields, foldSchemaV2AncestorTransformIntoMatrix, forEachLibraryRefInState, forEachMarkerRefInState, forEachReachableShape, forEachShapeInLibraryDefs, formatOperationValidationIssues, formatSmilKeySpline, formatSmilKeyTime, freezeIngestPlan, freezeSiblingOrderKeys, generateCode, generateCodeWithDiagnostics, generateCssCode, generateD3Code, generateId, generatePatternSvgContent, generatePuzzlePieces, generateReactCode, generateSudokuPuzzle, generateSvgCode, generateVueCode, generateWordSearch, getBuiltInMarkerDefs, getEasingCubicBezier, getEffectivePrecision, getIngestFeatureCapability, getIngestFieldPolicy, getKeyframeCubicBezier, getLicenseLabel, getLicenseUrl, getMarkerDescriptors, getPatternElements, getShapeGeometryKernel, getSmilAccumulate, getSmilAdditive, getSmilBeginValue, getSmilFillMode, getSmilMotionKeyPoints, getSmilRepeatCount, getSmilSetBeginValue, getSmilTrackDuration, getSvgCoordinateAttributePrecision, getSvgPropertySemantics, getSvgSourceAttribute, getSvgSourceHref, getWordSearchDirections, hasAnyTypedMetadataField, hasEmittableSmilSimpleDuration, hasSvgSourceAttribute, importSvg, importSvgWithDiagnostics, indexLibraryDefinitions, inferSvgCoordinatePrecision, initialOrderKeys, injectClipMaskReference, inspectCssTransformValue, interpolateAngle, interpolateCharOffsetArray, interpolateColor, interpolateDasharrayLists, interpolateGradient, interpolateNumericArray, interpolatePathData, interpolatePlainObject, interpolatePointArray, interpolatePolylinePoints, interpolateShapeTrees, interpolateSplinePointArray, invertAffine, isColorValue, isConnectorLineState, isCssAnimationDeclarationName, isCssNamedColor, isDefaultKeyPoints, isDefaultKeyTimes, isFiniteAffineArray, isGradientLike, isIdentityAffine, isIdentityLinearSplines, isIndefiniteSetTrack, isIndefiniteSmilSimpleDuration, isNumericArray, isReusablePatternTile, isSafeGradientRootAttributeName, isSafePatternRootAttributeName, isSetSequenceTrack, isSvgPresentationProperty, isValidOrderKey, keyBetween, keysBetween, layoutText, legacyEndpointMarkerId, lerpNumber, linearGradient, linearGradientEnvelope, lintWordSearchOptions, luma709, mapAnimationTrackTime, matchCubicBezierToPreset, materializeSceneTreeOrderKeys, matrixTransformPart, maxCollaborationTimestamp, mergeRichTextStyle, migrateSnapshot, migrateV11toV12, migrateV14toV15, migrateV15toV16, migrateV16toV17, migrateV17toV18, migrateV18toV19, migrateV6toV7, migrateViewboxSidecarToViews, motionPathD, moveResourceById, multiplyAffine, mutateSvgClipMaskDefinitionMarkup, nodeSchemas, normalizeClipMaskGroups, normalizePaintServerDef, normalizeRichTextRuns, normalizeRichTextStyle, normalizeRichTextStyleDelta, normalizeSmilPointsValue, normalizeSnapshotStructure, normalizeSnapshotToCanonicalDocument, orderSiblings, parseColor, parseCssAnimationShorthand, parseCssTimingFunction, parseCssTransformOrigin, parseDocument, parseDocumentWithDiagnostics, parseInterpolationNumbers, parsePreserveAspectRatio, parseSmilAdditive, parseSmilClockValue, parseSmilDuration, parseSmilFillField, parseSmilKeySplines, parseSmilKeyTimes, parseSmilRepeatSettings, parseSmilValues, parseSvgAbsoluteLength, parseSvgLength, parseSvgLengthList, parseSvgLengthToken, parseSvgPathData, parseSvgRootFrame, parseSvgSourceDocument, parseSvgStyleAttribute, parseSvgTransformList, parseSvgViewBox, parseVariableArgs, parseWordSearchWords, partitionShapeStateTree, partitionStateExtra, partitionUnknownDocumentFields, pathCommandStructuresMatch, pathDataBounds, pattern, patternDefinitionEnvelope, patternLibraryDefToCustomPatternDef, patternTileSize, pickCssAnimationListItem, plainTextOf, plainTextStyle, planClipMaskGroups, planSnapshotExternalEffects, planSvgAnimations, planSvgAuthoredAttributes, planSvgClipMasks, planSvgConditionalProcessing, planSvgContainerHierarchy, planSvgDocumentExtensions, planSvgEmbeddedFrames, planSvgExternalEffects, planSvgFilters, planSvgGradients, planSvgImport, planSvgLeafGeometry, planSvgMarkers, planSvgMetadata, planSvgOccurrenceViewports, planSvgPaintServerDefinitions, planSvgPatterns, planSvgResourceDependencies, planSvgScripts, planSvgSourceIdentifiers, planSvgStyleCascade, planSvgSymbolUses, planSvgUseOccurrences, planSvgViews, planTransformFusion, planVariantTransitionsCss, planVariantTransitionsSmil, planVariantTransitionsWaapi, planViewBoxFusion, premultiply, prepareSvgAuthorCssForLiveProjection, prepareSvgExternalAssetUrlForLiveProjection, prepareSvgMarkupForLiveProjection, prepareSvgXmlSource, preserveAspectRatioAlignFactor, projectClipMaskDefinitionAnimations, projectCssTransformStops, projectDefinitionAnimations, projectPresentation, projectPresentationEntry, projectSceneTreeOntoClipMaskGroups, projectSceneTreeOntoShapes, projectSvgAnimationPlan, projectSvgAnimationTimeline, projectSvgImportToIngestPlan, projectSvgImportToSnapshot, projectSvgSourceNodes, projectTextLinePosition, projectTextSpanRotations, promoteManagedDescription, promoteRebasedShapeUpdateClock, pruneAndWrapSubtree, quadraticBezierExtent1D, radialGradient, radialGradientEnvelope, rebaseRichTextFormatRanges, rebaseRichTextRuns, reflectCubicBezier, registeredShapeGeometryTypes, removeResourceById, removeResourceByKey, removeResourceByName, removeTrackKeyframe, renderAnimationElements, renderBuiltinMarkerDefs, renderCircle, renderClipMaskDefinitionAnimationElements, renderClipMaskDefinitionShape, renderDefinitionAnimationElements, renderDescriptiveElements, renderDocumentAnimationElements, renderDocumentExtensionAttributes, renderDocumentExtensionNodes, renderDocumentExtensions, renderDocumentScripts, renderDocumentStyles, renderEllipse, renderFilterDefs, renderFilterElement, renderFilterLibraryDef, renderFilterPrimitive, renderFilterPrimitivesForType, renderFlowchartBox, renderForeignObject, renderGradientDefs, renderGradientStopAnimationElement, renderImage, renderLibraryDef, renderLibraryDefs, renderLine, renderLinearGradient, renderLinearGradientLibraryDef, renderMarkerLibraryDef, renderPaintServerDefs, renderPatternLibraryDef, renderPlanDefsBody, renderPolygonShape, renderPolyline, renderRadialGradient, renderRadialGradientLibraryDef, renderRectangle, renderReferencedLibraryDefs, renderResolvedSymbolDefinitionForest, renderResolvedSymbolDefinitionSubtree, renderResolvedSymbolLibraryDef, renderShape, renderShapeContextForLibrary, renderSpline, renderSvgPrimitiveChainFilter, renderSymbolInstance, renderSymbolLibraryDef, renderTemplateVariablesStyle, renderText, renderTextSpanAnimationElements, renderToSvg, renderToSvgWithDiagnostics, replaceClipMaskDefinition, replaceClipMaskGroupsInSceneTree, replaySceneTreePlacements, requiredDecimalPrecision, resolveConnectorAnchorFromDocument, resolveConnectorEndpoints, resolveContainerTransform, resolveContainerTransformFromContentBounds, resolveCssAnimationEasingType, resolveEmbeddedSvgTransform, resolveEmbeddedSvgViewportFrameBounds, resolveGradientLibraryDef, resolveInlineContainerTransform, resolveMetadataQName, resolvePasteWrapperViewportSize, resolvePatternLibraryDef, resolveRichTextStyleAt, resolveShapeGeometry, resolveShapeLocalObjectBounds, resolveShapeObjectBounds, resolveShapeReferenceTransform, resolveStyledTextLines, resolveSvgGradientGeometry, resolveSvgLengthToken, resolveSvgPatternTile, resolveSvgRectRadii, resolveSvgTextSpanTarget, resolveSvgViewport, resolveSymbolDefinitionForestRootIds, resolveSymbolInstanceContent, resolveSymbolInstanceShapes, resolveSymbolInstanceTransform, resolveSymbolViewport, resolveTextSpanProjection, rewriteDocumentEmbeddedPayloads, rewriteIdReferencesInMarkup, rewriteShapeStateEmbeddedPayloads, rewriteSvgResourceReferenceValue, richTextFontVariantCss, richTextLineSpans, richTextRunsFromState, richTextStyleDelta, richTextStyleDeltasEqual, richTextStylesEqual, richTextTspanAttributes, rootMetadataAttrs, rootPaintServerDefId, rotateAffine, roundCoord, roundMarkupCoordinates, roundNumberString, roundSerializedShape, roundSnapshot, routeConnector, runsFromSegments, sameSize, sampleAnimationTrackTime, sanitizeRichTextFormatRanges, sanitizeXmlId, scaleAffine, scanCssFunctionTokens, scanCssLocalUrlTokens, senderCorrectionsForOp, serializeSvgPathData, serializedPresentationReader, severity, shapeLocalObjectBounds, shapeLocalObjectCenter, shapeObjectBoundsInSpace, shouldRoundSvgCoordinateAttribute, skewXAffine, skewYAffine, smilKeyframeAttributes, snapshotBoundsView, solveCubicBezier, solveSudoku, spliceTextSpanTree, splinePathBounds, splitCssAnimationList, splitCssTopLevel, splitCssTopLevelRanges, splitTopLevelElements, srgbToLab, ssimPlane, stringifyDocument, stripAnimationDeclarations, stripCssAnimationInlineStyle, substituteString, substituteVariables, symbolDefinitionSemanticHash, symbolInstanceTargetId, synthesizeCssAnimationShorthand, templateVariablesCss, textSpanEffectiveRotations, textSpanIds, textSpanNodeById, textSpanRangeByIds, transformSplice, transformSvgPathData, translateAffine, translateSvgPathData, tryParseSvgTransformList, upsertResourceById, upsertResourceByKey, upsertResourceByName, upsertTrackKeyframe, validateDocumentOperations, validateOperation, validatePresenceOperation, validateSnapshot, validateSudokuPuzzle, verticesToPath, visitShapeTree, visitSnapshotShapeTrees };
17363
+ export { ANIMATION_MANAGER_INTERPOLATION_POLICY, type AdditiveAnimationValue, type Affine2D, type AffineTransformMatrix, type AggregateDocumentFieldKey, type AlphaMode, type AngleInterpolationPolicy, type AnimatablePropertyDescriptor, type AnimationCycleTrack, type AnimationDefinitionTarget, type AnimationKeyframe, type AnimationOperation, type AnimationTimeline, type AnimationTrack, type AnimationTrackTimeSample, type AnimationTrigger, type AnimationTriggerType, type AnyNodeProps, type AppearanceExpansion, type AppearanceExpansionDeps, type AppearanceFillLayer, type AppearanceLayer, type AppearanceLayerKind, type AppearancePaintValue, type AppearanceStrokeLayer, type AppliedIngestPlan, type ApplyIngestPlanOptions, type ArcCenterParameterization, type ArcParams, type AriaRole, Arrow, type ArrowNodeProps, Audio, type AuthoredGradientGeometry, type AuthoredLengthCoordinate, type AuthoredMarkerGeometry, type AuthoredPaintReference, type AuthoredPatternGeometry, type AuthoredTextCoordinate, type AuthoredTextPosition, type AuthoredUseGeometry, BASE_FILL_LAYER_ID, BASE_STROKE_LAYER_ID, BROWSER_SVG_EXTENSION_URIS, BUILTIN_MARKER_ID_MAP, type BaseFilter, type BaseFilterPrimitive, type BlackAndWhiteFilter, type BlurQuality, type BoundingBox, type BoundsDiagnostic, type BoundsDiagnosticCode, type BoundsRect, type BoundsResult, type BoundsStatus, type BrightnessFilter, type BuildSvgDestinationIdentityIndexOptions, type BuiltinShapeGeometryType, CANONICAL_NORMALIZATION_FAULT_POINTS, CC_NS, COLLAB_PROTOCOL_VERSION, COMMON_PROP_DEFAULTS, COMMON_TRANSFORM_NODE_DEFAULTS, CONNECTOR_LABEL_BASELINE_LIFT, CONNECTOR_LABEL_FONT_FAMILY, CONNECTOR_LABEL_FONT_SIZE, CURRENT_SCHEMA_VERSION, CanonicalDocument, type CanonicalNormalizationFaultPoint, type CanonicalRootFramePolicy, type CanonicalSnapshotNormalizationOptions, type CanonicalSnapshotNormalizationResult, type ChannelPainterFilter, Circle, type CircleNodeProps, type CircleShapeGeometry, type ClipMaskDefinition, type ClipMaskGroupDeltaOperation, type ClipMaskOperation, type ClipMaskRenderPlan, type ClipMaskWrapDirective, Cloud, type CloudNodeProps, type CodeFormat, type CodegenOptions, type CollabClock, type CollaborationSnapshot, type CollaborationStamp, type CollaborationState, type ColorInterpolationPolicy, type CommonNodeProps, type CommonTransformNodeProps, type CompareImagesOptions, type ConnectionDirection, type ConnectionDirectionValue, type ConnectionPoint, type ConnectionPointValue, type ConnectorAnchorResolver, type ConnectorEndpointRefValue, type ConnectorLabelAnchor, type ConnectorRouteResult, type ConnectorRoutingModeValue, Container, type ContainerContentBounds, type ContainerNodeProps, ContainerShapeBuilder, type ContainerShapeGeometry, type ContainerTransformOwner, type ContouringDiscreteFilter, type ContouringTableFilter, type ContrastFilter, type CornerShapeValue, type CreateDocumentOptions, type CreateShapeOptions, Cross, type CrossNodeProps, type CrumpledPlasticFilter, type CssAnimationSourceGroup, type CssFunctionToken, type CssLocalUrlToken, type CssProjectedTransformChannel, type CssProjectedTransformStop, type CssTopLevelRange, type CssTransformBox, type CssTransformOrigin, type CssTransformOriginContext, type CssTransformProjection, type CssTransformProjectionStatus, type CssTransformStop, type CssTransformValueIssue, type CustomPatternDef, type CycleBehavior, type CylinderNodeProps, DC_NS, DEFAULT_CONNECTOR_CORNER_RADIUS, DEFAULT_COORDINATE_PRECISION, DEFAULT_RICH_TEXT_STYLE, DOCUMENT_FIELDS, DOCUMENT_FIELD_LIVE_AUTHORITY, DOCUMENT_INGEST_POLICIES, DOCUMENT_SECTION_ORDER, type DecodedSvgSource, type DeepReadonly, type DefinitionAttribute, type DefinitionAuthoredPlacement, type DefinitionPlacementIndex, type DefinitionPlacementScope, type DeltaEStats, type DescriptiveEmissionOptions, type DiamondNodeProps, type DiffuseLightingFilter, type DocumentBoundsHost, type DocumentBoundsOptions, type DocumentBoundsView, DocumentBuilder, type DocumentBuilderOptions, type DocumentDefinitionContainer, type DocumentExtension, type DocumentExtensionAttribute, type DocumentExtensionCharacterNode, type DocumentExtensionElementNode, type DocumentExtensionNode, type DocumentFieldAuthority, type DocumentFieldDescriptor, type DocumentFieldKey, type DocumentFieldRegistryGates, type DocumentMetadata, DocumentModel, type DocumentNodeProps, type DocumentReplacementHooks, type DocumentReplacementListener, type DocumentReplacementResult, type DocumentReplacementTransition, type DocumentResourceOperation, type DocumentScript, type DocumentSectionKey, type DocumentSectionListener, type DocumentSectionOrderGates, DocumentSession, type DocumentSessionView, type DocumentShapeNodeProps, type DocumentStyle, type DropShadowFilter, type DuotoneFilter, EASING_CURVES, EasingType, Ellipse, type EllipseNodeProps, type EllipseShapeGeometry, type EmbeddedPayloadRewriter, type EmbeddedPayloadSlotKind, type EmbeddedSvgShapeGeometry, type EmbeddedSvgTransformResult, type EmbeddedSvgViewportOverride, type EmbossFilter, type EnsureTextSpanRangeResult, type EvaluateSvgConditionalProcessingOptions, type ExpandedName, type ExportItemOperation, type Extent1D, type ExtractedVariables, FLOWCHART_GEOMETRY_DEFAULTS, type FeBlendPrimitive, type FeColorMatrixPrimitive, type FeComponentTransferPrimitive, type FeCompositePrimitive, type FeConvolveMatrixPrimitive, type FeDiffuseLightingPrimitive, type FeDisplacementMapPrimitive, type FeDropShadowPrimitive, type FeFloodPrimitive, type FeGaussianBlurPrimitive, type FeImagePrimitive, type FeMergePrimitive, type FeMorphologyPrimitive, type FeOffsetPrimitive, type FeSpecularLightingPrimitive, type FeTilePrimitive, type FeTurbulencePrimitive, type FieldPrecision, type FieldSerialization, type FillType, type FilmGrainFilter, type FilterBlendMode, type FilterDefinitionEnvelope, type FilterElementAttrs, type FilterLibraryDef, type FilterLightSource, type FilterPrimitive, type FilterPrimitiveType, type FilterType, type FlowchartBoxNodeProps, type FlowchartBoxParams, type FlowchartBoxType, type FontVariantCssInput, type ForeignObjectNodeProps, type FusableTrack, type FusableViewBoxTrack, type GaussianBlurFilter, Gear, type GearNodeProps, type GenerateCodeResult, type GenerateSudokuOptions, type GeneratedFilterEnvelope, type GeneratedSudokuPuzzle, type GeneratedWordSearch, type GlowFilter, type GouacheFilter, type GradientDefinition, type GradientDefinitionEnvelope, type GradientLibraryDef, type GradientSpreadMethod, type GradientStop, type GradientStopEnvelope, type GradientTransformMatrix, type GradientUnits, type GraphChangeListener, type GrayscaleFilter, type GroupNodeProps, type GroupPresentationData, type Guide, type GuideDeltaOperation, HEADLESS_SVG_STYLE_ENVIRONMENT, Heart, type HeartNodeProps, type HistorySnapshot, type HueRotateFilter, Hyperlink, type HyperlinkNodeProps, IDENTITY_AFFINE, INGEST_APPLY_STAGES, INGEST_DIAGNOSTIC_CODES, INGEST_DOCUMENT_ROOT_IDENTITY, INGEST_FEATURES, INGEST_FEATURE_CAPABILITIES, INGEST_PLAN_VERSION, INGRESS_INTENTS, INLINE_CHILD_CONTAINER_TYPES, type ImageAttribution, type ImageNodeProps, ImageShape, type IndexedResource, IngestApplicationError, type IngestApplyContext, type IngestApplyStage, type IngestDiagnostic, type IngestDiagnosticCode, type IngestDiagnosticSeverity, type IngestDocumentFieldCandidates, type IngestExternalEffectValue, type IngestExternalFontDescriptorsValue, type IngestExternalFontSourceValue, type IngestFeature, type IngestFeatureCapability, type IngestFeatureCapabilityGates, type IngestFeatureIntentMatrix, type IngestFeatureStatus, type IngestFieldPolicy, type IngestFieldPolicyAction, type IngestFieldPolicyGates, type IngestFieldPolicyMatrix, type IngestPlan, type IngestPlanApplyAdapter, type IngestPlanValue, type IngestReferenceEdgeValue, type IngestResult, type IngestRootFrameValue, type IngestShapeCandidateValue, type IngestSource, type IngestSourceDescriptor, type IngestSourceElementDescriptor, type IngressIntent, type InkBlotFilter, type InlineContainerTransformResult, type InnerGlowFilter, type InnerShadowFilter, type InterpolationCharOffset, type InterpolationColor, type InterpolationGradient, type InterpolationGradientStop, type InterpolationPoint, type InterpolationSplinePoint, type InvertFilter, type JsonObject, type JsonPrimitive, type JsonValue, KNOWN_METADATA_PREFIXES, KNOWN_STATE_KEYS, type KeyedSerializedAnimationKeyframe, LAYER_PRESENTATION_IDS, LIBRARY_ASSEMBLY_KIND_ORDER, LIBRARY_EMIT_ORDER, type LibraryDef, type LibraryDefBase, type LibraryDefOfKind, type LibraryDefinitionIndex, type LibraryIndex, type LibraryKind, type LibrarySource, type LicenseType, type LightSource, Lightning, type LightningNodeProps, Line, type LineEndpointValue, type LineNodeProps, type LineShapeGeometry, type LinearEasingPoint, type LinearGradient, LinearGradientBuilder, type LinearGradientLibraryDef, type LinearGradientLibraryValue, type LiveInterpolationPolicy, MARKER_HEIGHT, MARKER_VIEWBOX, MARKER_WIDTH, MATHML_EXTENSION_URI, MAX_COORDINATE_PRECISION, MIGRATIONS, type MarkerDescriptor, type MarkerLibraryDef, type MarkerReferenceSets, type MaterializedIngestNode, type MatrixDecomposition2D, type Measurement, type MeasurementDeltaOperation, type MediaNodeProps, type MetadataDeltaOperation, type MetadataDescriptiveElement, type MigratableVersion, type Migration, type MorphologyFilter, type MorphologyOperator, type MotionBlurFilter, NAMESPACE_VOCABULARIES, NGon, type NGonNodeProps, NON_WIRE_PROP_KEYS, NUMERIC_SHAPE_TRANSFORM_STATE_KEYS, type NamedResource, type NamespaceVocabulary, NestedSvg, type NodeChangeListener, type NodeFactoryMode, NodeSchemaRegistry, type NodeTypePropsMap, type NodeTypeSchema, type NoiseFilter, type OpMetadataPatch, type OpShapeState, type OpacityFilter, type Operation, type OperationValidationIssue, type OperationValidationResult, type OutlineFilter, type OutlinePosition, PAINT_SERVER_PASSTHROUGH_ATTR, POLYGON_GEOMETRY_DEFAULTS, PRESENTATION_SEMANTICS, PUZZLE_DEFAULTS, type ParallelogramNodeProps, type ParseOptions, type ParsedCssAnimation, type ParsedPreserveAspectRatio, type ParsedSvgPathCommand, type ParsedSvgPathCommandType, type ParsedSvgViewBox, type ParsedTimingFunction, Path, type PathBoundsRect, PathCurveType, type PathNodeProps, type PathPoint, PathPointType, type PathShapeGeometry, PatternBuilder, type PatternDefinitionEnvelope, type PatternElement, type PatternFill, type PatternLibraryDef, type PatternParams, type PatternSvgContentResult, type PatternType, type PixelateFilter, type PlanSnapshotExternalEffectsOptions, type PlanSvgAnimationsOptions, type PlanSvgClipMasksOptions, type PlanSvgConditionalProcessingOptions, type PlanSvgContainerHierarchyOptions, type PlanSvgExternalEffectsOptions, type PlanSvgFiltersOptions, type PlanSvgGradientsOptions, type PlanSvgImportOptions, type PlanSvgLeafGeometryOptions, type PlanSvgMarkersOptions, type PlanSvgMetadataOptions, type PlanSvgOccurrenceViewportsOptions, type PlanSvgPaintServerDefinitionsOptions, type PlanSvgPatternsOptions, type PlanSvgResourceDependenciesOptions, type PlanSvgScriptsOptions, type PlanSvgStyleCascadeOptions, type PlanSvgSymbolUsesOptions, type PlanSvgUseOccurrencesOptions, type Point, type PointLightFilter, type PolygonBaseNodeProps, Polyline, type PolylineNodeProps, type PolylineShapeGeometry, type PositioningRectShapeGeometry, type PresentationSemanticContext, type PresentationSemanticEntry, type PresentationSemanticId, type PresentationValueReader, type PresentationWrite, type PreserveAspectRatioAlign, type PreviousPlacement, type PrimitiveChainFilterEnvelope, type ProjectedTextLinePosition, type PropDef, type PropStamp, type PuzzleBounds, type PuzzleOptions, type PuzzlePiece, type PuzzleStyle, type PuzzleTabPattern, RDF_NS, RENDER_DIAGNOSTIC_CODES, RENDER_FEATURES, RENDER_FEATURE_CAPABILITIES, RENDER_TARGETS, RICH_TEXT_STYLE_KEYS, type RadialGradient, RadialGradientBuilder, type RadialGradientLibraryDef, type RadialGradientLibraryValue, type RasterImage, type RasterQualityReport, type RawFilterEnvelope, type RawSvgFilter, type Rect, Rectangle, type RectangleNodeProps, type RectangleShapeGeometry, type RejectedWordSearchWord, type RenderAnimationElementsOptions, type RenderCapability, type RenderCapabilityMatrix, type RenderCapabilityMatrixGates, type RenderDiagnostic, type RenderDiagnosticCode, type RenderDiagnosticSeverity, type RenderFeature, type RenderFeatureCapability, type RenderFeatureCapabilityGates, type RenderFeatureTargetMatrix, type RenderFinalizationOptions, type RenderFrameAttributeOmissions, type RenderOptions, type RenderPlan, type RenderPlanBodyEntry, type RenderPlanDefEntry, type RenderPlanDefKind, type RenderPlanDefinitionContainer, type RenderPlanDefs, type RenderPlanEnvelope, type RenderPlanFrame, type RenderPlanOptions, type RenderPlanShape, type RenderShapeContext, type RenderTarget, type RenderToSvgResult, type RenderedDefinitionAnimationElement, type ResolveSvgClipMaskContext, type ResolveSvgGradientGeometryContext, type ResolveSvgPatternTileContext, type ResolvedConnectorAnchor, type ResolvedConnectorEndpoints, type ResolvedContainerTransform, type ResolvedLibraryGradient, type ResolvedSvgPatternTile, type ResolvedSvgRectRadii, type ResolvedSvgViewport, type ResolvedSvgViewportFrame, type ResolvedSymbolDefinitionRender, type ResolvedSymbolInstanceContent, type ResolvedSymbolViewport, type ResolvedTextFragment, type ResolvedTextSpan, type ResolvedTextSpanChild, type ResolvedTextSpanProjection, type ResourceKey, type Rgba, type RichTextAlignmentBaseline, type RichTextDecoration, type RichTextFontWeight, type RichTextFormatRange, type RichTextLineSpan, type RichTextResolvedData, type RichTextResolvedLine, type RichTextResolvedSegment, type RichTextResolvedStyle, type RichTextRun, type RichTextRuns, type RichTextSegmentsInput, type RichTextStyleDelta, type RichTextTspanAttribute, type RiddledFilter, Ring, type RingNodeProps, type RoundEdgesFilter, SAXES_SVG_XML_PARSER_HOST, SERIALIZED_SHAPE_STATE_KEYS, SHAPE_ENVELOPE_KEYS, SHAPE_GEOMETRY_DEFAULTS, SHAPE_TRANSFORM_STATE_KEYS, SVGSKETCH_NS, SVGSKETCH_PATH_EXTENSIONS, SVG_CONDITIONAL_PROCESSING_ATTRIBUTES, SVG_IMPORT_CAPABILITY_OWNERS, SVG_NAMESPACE, SVG_NS, SVG_PRESENTATION_PROPERTIES, SVG_WELL_KNOWN_NAMESPACE_URIS, type SaturateFilter, SceneGraph, SceneNode, type SceneTreeReplayHost, type SegmentCurveType, type SepiaFilter, type SerializedAnimationKeyframe, type SerializedAnimationTimeline, type SerializedAnimationTrack, type SerializedCharOffset, type SerializedClipMaskGroup, type SerializedColorGlyph, type SerializedColorGlyphLibrary, type SerializedExportItem, type SerializedGroup, type SerializedMarkerDef, type SerializedPaintServerDef, type SerializedSceneNodePlacement, type SerializedShape, type SerializedShapeState, type SerializedShapeStateKeyGates, type SerializedShapeTransformState, type SerializedSymbolDef, type SerializedVariantAxis, type SerializedViewbox, type SeverityOptions, type SeverityReport, ShapeBuilder, type ShapeEnvelopeKeyGates, type ShapeFilter, type ShapeGeometryDefaultsType, type ShapeGeometryDescriptor, type ShapeGeometryKernel, type ShapeGeometryRendererKey, type ShapeLibraryDefBase, type ShapeLocalObjectBoundsHost, type ShapeMetadata, type ShapeObjectBoundsHost, ShapeReference, type ShapeReferenceGeometry, type ShapeReferenceNodeProps, type ShapeReferenceTransformResult, type ShapeTransformState, type ShapeTreeVisitor, type SharpenFilter, type SmilAnimationKeyframe, type SmilCalcMode, type SmilKeyframeAttributes, type SmilKeyframeData, type SmilTimingRelation, type SmilTimingTrack, type SmilValue, type SmilValueAttributes, type SmilValueType, type SmilViewBoxAxis, type SmilViewBoxQuartet, type SolveSudokuOptions, type SpecularLightingFilter, SpeechBubble, type SpeechBubbleNodeProps, Spiral, type SpiralNodeProps, type SpliceTextSpanTreeResult, type SplinePointInput, type SpotLightFilter, Square, type SquareNodeProps, Star, type StarNodeProps, type StepPosition, type StepsParams, type StringifyOptions, type StrokeType, type StructureChangeListener, type StyledTextContent, type StyledTextLine, type StyledTextSegment, type StyledTextSource, type SudokuDifficulty, type SudokuGrid, type SudokuRating, type SudokuValidationResult, type SvgAnimationPlan, type SvgAnimationTargetStatus, type SvgAnimationTimelineDefinitionTarget, type SvgAnimationTimelineProjectionHost, type SvgAnimationTimelineShapeBinding, type SvgAppliedResourceDeclaration, type SvgAuthoredAttributeClassification, type SvgAuthoredAttributePlan, type SvgAuthoredAttributeRecord, type SvgAuthoredDeclaration, type SvgClipMaskBinding, type SvgClipMaskBindingStatus, type SvgClipMaskDefinition, type SvgClipMaskDefinitionMutation, type SvgClipMaskGeometryPlacement, type SvgClipMaskObjectBounds, type SvgClipMaskPlan, type SvgClipMaskRegion, type SvgClipMaskRepresentation, type SvgClipMaskResolution, type SvgClipMaskStatus, type SvgClipMaskType, type SvgClipMaskUnits, type SvgConditionalProcessingCandidate, type SvgConditionalProcessingCondition, type SvgConditionalProcessingPlan, type SvgContainerHierarchy, type SvgContainerHierarchyNode, type SvgContainerHierarchyPlacement, type SvgContainerKind, type SvgCssAnimationCandidate, type SvgCssKeyframeDeclaration, type SvgCssKeyframeStopPlan, type SvgCssKeyframesPlan, type SvgCssSpecificity, type SvgDescriptiveElement, type SvgDestinationIdAllocator, type SvgDestinationIdAssignment, type SvgDestinationIdRequest, type SvgDestinationIdentityChannel, type SvgDestinationIdentityIndex, type SvgDestinationIdentityOwner, type SvgDocumentMetadataCandidate, type SvgElementMetadataCandidate, type SvgElementStylePlan, type SvgEmbeddedFrameCandidate, type SvgEmbeddedFrameState, type SvgExternalAssetCandidate, type SvgExternalAssetStatus, type SvgExternalEffectsPlan, type SvgExternalFontCandidate, type SvgFilterBinding, type SvgFilterBindingStatus, type SvgFilterCandidate, type SvgFilterCandidateStatus, type SvgFilterOperation, type SvgFilterOperationStatus, type SvgFilterPlan, type SvgFilterRegion, type SvgGradientCandidate, type SvgGradientFallback, type SvgGradientGeometryValue, type SvgGradientPaintBinding, type SvgGradientPlan, type SvgGradientStatus, type SvgGradientStopCandidate, type SvgGradientTransform, type SvgHtmlMetadataElement, type SvgImportCapabilityAuthority, type SvgImportCapabilityOwner, type SvgImportCapabilityOwnershipGates, SvgImportError, type SvgImportPlan, type SvgImportProjectionContext, type SvgIngestDiagnosticContext, type SvgLeafCanonicalType, type SvgLeafGeometryCandidate, type SvgLeafGeometryPlan, type SvgLeafGeometryStatus, type SvgLengthContext, type SvgLengthToken, type SvgLocalReferenceChannel, type SvgMarkerAnimationCandidate, type SvgMarkerAuthoredGeometry, type SvgMarkerCandidate, type SvgMarkerContentCandidate, type SvgMarkerPlan, type SvgMarkerStatus, type SvgMetadataPlan, type SvgNodeProps, type SvgOccurrenceViewportContext, type SvgOccurrenceViewportPlan, type SvgPaintServerDefinitionCandidate, type SvgPaintServerDefinitionPlan, type SvgParsedStyleAttribute, type SvgPathAffineMatrix, type SvgPathCommandType, type SvgPathExtensionCommandType, type SvgPathMetricPoint, type SvgPathMetrics, type SvgPathMetricsOptions, type SvgPathParseError, type SvgPathParseErrorCode, type SvgPathParseOptions, type SvgPathParseResult, type SvgPathParserExtensions, type SvgPatternCandidate, type SvgPatternContentOccurrence, type SvgPatternFallback, type SvgPatternPaintBinding, type SvgPatternPlan, type SvgPatternResourceCandidate, type SvgPatternStatus, type SvgPatternTransform, type SvgPatternValue, type SvgPlannedScript, type SvgPresentationAttributeApplicability, type SvgPrimitiveChainFilter, type SvgPropertySemantics, type SvgResourceDependencyClosure, type SvgResourceDependencyComponent, type SvgResourceDependencyEdge, type SvgResourceDependencyKind, type SvgResourceDependencyMaterialization, type SvgResourceDependencyPlan, type SvgResourceElementKind, type SvgResourceProperty, type SvgScriptCandidate, type SvgScriptPlan, type SvgScriptScope, type SvgSmilAnimationCandidate, type SvgSmilAnimationKind, type SvgSourceAttribute, type SvgSourceCharacterNode, SvgSourceDecodingError, type SvgSourceDocument, type SvgSourceElement, type SvgSourceElementIdPlan, type SvgSourceGeneratedIdPlan, type SvgSourceHref, type SvgSourceIdOccurrence, type SvgSourceIdentifierPlan, type SvgSourceIdentifierPlanOptions, type SvgSourceIndex, type SvgSourceLocalReference, type SvgSourceNode, type SvgSourceReferenceRewrite, type SvgSourceResourceIdPlan, type SvgSourceResourceKind, type SvgStyleCascadePlan, type SvgStyleDeclarationOrigin, type SvgStyleEnvironment, type SvgStyleRulePlan, type SvgStylesheetPlan, type SvgSymbolDefinitionCandidate, type SvgSymbolDefinitionKind, type SvgSymbolUseCandidate, type SvgSymbolUseGeometry, type SvgSymbolUsePlan, type SvgSymbolUseStatus, type SvgSymbolUseTransform, type SvgTextMetricsHost, type SvgTextSpanNodeCandidate, type SvgTextSpanTarget, type SvgTextSpanTreeCandidate, type SvgUnboundStylesheetResourceReference, type SvgUseDefinitionComponent, type SvgUseOccurrence, type SvgUseOccurrenceEdge, type SvgUseOccurrencePlan, type SvgUseOccurrenceRole, type SvgUseResolution, type SvgUseResolutionStatus, type SvgUseResourceCapability, type SvgUseResourcePolicy, type SvgUseResourceRoot, type SvgUseSourceResolution, type SvgUseSourceResolutionStatus, type SvgViewCandidate, type SvgViewState, type SvgViewportDiagnostic, type SvgViewportDimensions, type SvgViewportFrame, type SvgViewportSize, type SvgViewportStatus, type SvgXmlAttributeInput, type SvgXmlCharacterNodeInput, type SvgXmlElementInput, type SvgXmlNodeInput, type SvgXmlParserHost, SvgXmlParserHostError, type SvgXmlParserHostResult, type SvgXmlSourceSpan, Switch, type SwitchNodeProps, type SymbolInstanceGeometry, type SymbolInstanceMaterialization, type SymbolInstanceNodeProps, type SymbolInstanceTransformResult, type SymbolLengthContext, type SymbolLibraryDef, type SymbolMaterialization, type SymbolMaterializationDiagnostic, type SymbolMaterializationDiagnosticCode, type SymbolMaterializationPlan, type SymbolMaterializationPlanOptions, type SymbolResolutionDiagnostic, type SymbolResolutionDiagnosticCode, type SymbolViewportDiagnostic, type SymbolViewportDiagnosticCode, type SymbolViewportHost, TYPED_FIELD_PREDICATES, type TemplateVariable, type TemplateVariableMode, type TemplateVariableOperation, type TemplateVariableSource, type TemplateVariableType, type TerminatorNodeProps, Text, type TextFormatOperation, type TextLayoutCaret, type TextLayoutCaretDraft, TextLayoutEngine, type TextLayoutGlyph, type TextLayoutGlyphDraft, type TextLayoutLine, type TextLayoutMeasurementRequest, type TextLayoutPoint, type TextLayoutProduct, type TextLayoutProductDraft, type TextLayoutProductHost, type TextLayoutRect, type TextLayoutRequest, type TextLayoutResult, type TextLayoutSegment, type TextLayoutViewport, type TextLayoutVisualLine, type TextLinePosition, type TextMeasurementHost, type TextNodeProps, type TextObjectBoundsMeasurement, type TextPathReference, type TextShapeGeometry, type TextShapeInsideGeometry, type TextShapeSpan, type TextSpanAnimationTarget, type TextSpanNode, type TextSpanRotationProjection, type TextSpanTree, type TextSplice, Timeline, Track, type TransferFunc, type TransformFusionPlan, type TransformStateLike, type TrapezoidNodeProps, Triangle, type TriangleNodeProps, VARIANT_INTERPOLATION_POLICY, type ValidationError, type ValidationResult, type VariableMap, type VariantAnimationElementSpec, type VariantCssPlan, type VariantCssSymbolPlan, type VariantSmilInnerAction, type VariantSmilOp, type VariantSmilSymbolPlan, type VariantTransitionInput, type VariantTransitionInstanceView, type VariantTransitionTimelineLike, type VariantWaapiPlan, type VariantWaapiSymbolPlan, Video, View, type ViewBoxFusionPlan, type ViewNodeProps, type ViewShapeGeometry, type Viewbox, type VocabularyAttribute, type VocabularyAttributes, type VocabularyProjection, WRAPPER_PRESENTATION_IDS, type WarpFilter, type WarpType, type WatercolorFilter, type WireAliasShapeStateFields, type WireOnlyShapeStateFields, type WordSearchAxes, type WordSearchCellPath, type WordSearchDirection, type WordSearchLintResult, type WordSearchOptions, type WordSearchPlacement, type WordSearchPrimitiveMask, XHTML_EXTENSION_URI, type XrayFilter, accumulateAnimationValue, addAnimationValues, addSmilPointsValues, affine, affineFromArray, affineToArray, almostEqualAffine, animationBackwardsFillTrack, animationCycleDuration, animationDefinitionTargetShapeId, animationTrackActiveEnd, animationTrackDocumentBegin, appearanceLayers, appendAppearanceLayer, applyAffineToPoint, applyAffineToVector, applyClipMaskGroupDelta, applyClipMaskPlanToShapes, applyCssAnimationLonghandOverrides, applyGuideDeltaOp, applyIngestPlan, applyMeasurementDeltaOp, applyMetadataDeltaOp, applyOpToSnapshot, applyOpsInPlace, applyOpsToSnapshot, applyOpsToSnapshotWithAccepted, applyRichTextFormat, applyTextSplice, applyTextTransform, applyTimingFunctionToKeyframe, arcEndpointToCenter, areTracksTimingEquivalent, around, assembleLibraryDefs, assembleSvgFromPlan, assertIngestFeatureRegistry, assertIngestPolicyRegistry, assertNamespaceVocabularyRegistry, assertRasterImage, assertSvgImportCapabilityOwners, authoredPaintDeclarations, baseFillLayer, baseStrokeLayer, buildCompoundTransformValues, buildDefinitionPlacementIndex, buildFreshMetadataBlock, buildGuideDeltaOps, buildManagedChildren, buildManagedDescription, buildMeasurementDeltaOps, buildMetadataDeltaOps, buildRenderPlan, buildSmilKeyframeData, buildSmilKeyframes, buildSvgDestinationIdentityIndex, buildSvgIngestPlan, buildSymbolMaterializationPlan, buildViewBoxSmilKeyframeData, canonicalPolygonTransformString, canonicalTransformMatrix, canonicalTransformString, classifySvgExternalAssetUrl, clipMaskDefinitionFromGroup, clipMaskDefinitionsFromGroups, clipMaskGroupDefId, clipMaskGroupDefinitionId, clipMaskGroupIsRawBacked, clipMaskGroupWithDefinition, clipMaskOwnedDefIds, cloneTextSpanTree, collaborationResourceKey, collectDocumentEnvelopeLibraryReferenceIds, collectFontFamiliesFromPlan, collectMarkerReferences, collectReferencedLibraryDefs, collectReferencedMarkerIds, collectSvgFragmentLibraryReferenceIds, collectUnknownDocumentFields, compareImages, compareOrderKeys, composeDecomposedTransformMatrix, compositeOver, computeArrowVertices, computeCloudPath, computeCrossVertices, computeDashArray, computeFlowchartBoxPath, computeGearPath, computeGearVertices, computeHeartPath, computeLightningVertices, computePolygonVertices, computeRectanglePath, computeRingPath, computeSpeechBubbleVertices, computeSpiralPath, computeSplinePath, computeStarVertices, connectorLabelAnchor, containerTransformNeedsContentPivot, createDocument, createSceneNode, createShape, createSvgDestinationIdAllocator, createSvgPathMetrics, createTextLayoutKey, createTextLayoutProduct, createViewbox, createWordSearchPrimitiveMask, cssAnimationFillField, cssNamedColorToRgb, cubicBezierExtent1D, cubicBezierToEasingFields, customPatternDefToLibraryDef, declaredRichTextDeltaKeys, decodeCssEscapes, decodeSvgSourceBytes, decomposeAffine2D, defaultVariableMode, deltaE2000, deriveRichTextFormatRanges, deriveSegments, deriveTextSplice, derivedConnectionPoints, documentObjectBounds, ellipticalArcBounds, emptyDocumentMetadata, ensureTextSpanRange, escXml, evaluateParsedTimingFunction, evaluateSvgConditionalProcessing, expandAppearanceStack, extractVariables, filterAttr, filterChainExtendsBounds, filterDefinitionEnvelope, filterReferenceValue, finalizeRenderPlan, findShapeById, fingerprintCssAnimationDocumentStyles, fingerprintCssAnimationInlineStyles, fingerprintCssAnimationTrack, fingerprintIngestSource, flattenShapeStateTree, flattenStateExtra, flattenUnknownDocumentFields, foldSchemaV2AncestorTransformIntoMatrix, forEachLibraryRefInState, forEachMarkerRefInState, forEachReachableShape, forEachShapeInLibraryDefs, formatOperationValidationIssues, formatSmilKeySpline, formatSmilKeyTime, freezeIngestPlan, freezeSiblingOrderKeys, generateCode, generateCodeWithDiagnostics, generateCssCode, generateD3Code, generateId, generatePatternSvgContent, generatePuzzlePieces, generateReactCode, generateSudokuPuzzle, generateSvgCode, generateVueCode, generateWordSearch, geometryDefinitionId, geometryState, getBuiltInMarkerDefs, getEasingCubicBezier, getEffectivePrecision, getIngestFeatureCapability, getIngestFieldPolicy, getKeyframeCubicBezier, getLicenseLabel, getLicenseUrl, getMarkerDescriptors, getPatternElements, getShapeGeometryKernel, getSmilAccumulate, getSmilAdditive, getSmilBeginValue, getSmilFillMode, getSmilMotionKeyPoints, getSmilRepeatCount, getSmilSetBeginValue, getSmilTrackDuration, getSvgCoordinateAttributePrecision, getSvgPropertySemantics, getSvgSourceAttribute, getSvgSourceHref, getWordSearchDirections, hasAnyTypedMetadataField, hasEmittableSmilSimpleDuration, hasOpaqueSvgAncestor, hasSvgSourceAttribute, importSvg, importSvgWithDiagnostics, indexLibraryDefinitions, inferSvgCoordinatePrecision, initialOrderKeys, injectClipMaskReference, inspectCssTransformValue, interpolateAngle, interpolateCharOffsetArray, interpolateColor, interpolateDasharrayLists, interpolateGradient, interpolateNumericArray, interpolatePathData, interpolatePlainObject, interpolatePointArray, interpolatePolylinePoints, interpolateShapeTrees, interpolateSplinePointArray, invertAffine, isColorValue, isConnectorLineState, isCssAnimationDeclarationName, isCssNamedColor, isDefaultKeyPoints, isDefaultKeyTimes, isFiniteAffineArray, isGradientLike, isIdentityAffine, isIdentityLinearSplines, isIndefiniteSetTrack, isIndefiniteSmilSimpleDuration, isNumericArray, isReusablePatternTile, isSafeGradientRootAttributeName, isSafePatternRootAttributeName, isSetSequenceTrack, isSvgPresentationProperty, isValidOrderKey, keyBetween, keysBetween, layerFilterTargets, layerPaints, layerState, layoutText, legacyEndpointMarkerId, lerpNumber, linearGradient, linearGradientEnvelope, lintWordSearchOptions, luma709, mapAnimationTrackTime, matchCubicBezierToPreset, materializeSceneTreeOrderKeys, matrixTransformPart, maxCollaborationTimestamp, mergeRichTextStyle, migrateSnapshot, migrateV11toV12, migrateV14toV15, migrateV15toV16, migrateV16toV17, migrateV17toV18, migrateV18toV19, migrateV6toV7, migrateViewboxSidecarToViews, motionPathD, moveResourceById, multiplyAffine, mutateSvgClipMaskDefinitionMarkup, namespaceVocabularies, namespaceVocabulary, needsAppearanceStack, nodeSchemas, normalizeClipMaskGroups, normalizePaintServerDef, normalizeRichTextRuns, normalizeRichTextStyle, normalizeRichTextStyleDelta, normalizeSmilPointsValue, normalizeSnapshotStructure, normalizeSnapshotToCanonicalDocument, orderSiblings, paintingLayers, parseColor, parseCssAnimationShorthand, parseCssTimingFunction, parseCssTransformOrigin, parseDocument, parseDocumentWithDiagnostics, parseInterpolationNumbers, parsePreserveAspectRatio, parseSmilAdditive, parseSmilClockValue, parseSmilDuration, parseSmilFillField, parseSmilKeySplines, parseSmilKeyTimes, parseSmilRepeatSettings, parseSmilValues, parseSvgAbsoluteLength, parseSvgLength, parseSvgLengthList, parseSvgLengthToken, parseSvgPathData, parseSvgRootFrame, parseSvgSourceDocument, parseSvgStyleAttribute, parseSvgTransformList, parseSvgViewBox, parseVariableArgs, parseWordSearchWords, partitionShapeStateTree, partitionStateExtra, partitionUnknownDocumentFields, pathCommandStructuresMatch, pathDataBounds, pattern, patternDefinitionEnvelope, patternLibraryDefToCustomPatternDef, patternTileSize, pickCssAnimationListItem, plainTextOf, plainTextStyle, planClipMaskGroups, planSnapshotExternalEffects, planSvgAnimations, planSvgAuthoredAttributes, planSvgClipMasks, planSvgConditionalProcessing, planSvgContainerHierarchy, planSvgDocumentExtensions, planSvgEmbeddedFrames, planSvgExternalEffects, planSvgFilters, planSvgGradients, planSvgImport, planSvgLeafGeometry, planSvgMarkers, planSvgMetadata, planSvgOccurrenceViewports, planSvgPaintServerDefinitions, planSvgPatterns, planSvgResourceDependencies, planSvgScripts, planSvgSourceIdentifiers, planSvgStyleCascade, planSvgSymbolUses, planSvgUseOccurrences, planSvgViews, planTransformFusion, planVariantTransitionsCss, planVariantTransitionsSmil, planVariantTransitionsWaapi, planViewBoxFusion, premultiply, prepareSvgAuthorCssForLiveProjection, prepareSvgExternalAssetUrlForLiveProjection, prepareSvgMarkupForLiveProjection, prepareSvgXmlSource, preserveAspectRatioAlignFactor, projectClipMaskDefinitionAnimations, projectCssTransformStops, projectDefinitionAnimations, projectPresentation, projectPresentationEntry, projectSceneTreeOntoClipMaskGroups, projectSceneTreeOntoShapes, projectSvgAnimationPlan, projectSvgAnimationTimeline, projectSvgImportToIngestPlan, projectSvgImportToSnapshot, projectSvgSourceNodes, projectTextLinePosition, projectTextSpanRotations, promoteManagedDescription, promoteRebasedShapeUpdateClock, pruneAndWrapSubtree, quadraticBezierExtent1D, radialGradient, radialGradientEnvelope, rebaseRichTextFormatRanges, rebaseRichTextRuns, reflectCubicBezier, registerNamespaceVocabulary, registeredExtensionUris, registeredShapeGeometryTypes, removeResourceById, removeResourceByKey, removeResourceByName, removeTrackKeyframe, renderAnimationElements, renderBuiltinMarkerDefs, renderCircle, renderClipMaskDefinitionAnimationElements, renderClipMaskDefinitionShape, renderDefinitionAnimationElements, renderDescriptiveElements, renderDocumentAnimationElements, renderDocumentExtensionAttributes, renderDocumentExtensionNodes, renderDocumentExtensions, renderDocumentScripts, renderDocumentStyles, renderEllipse, renderFilterDefs, renderFilterElement, renderFilterLibraryDef, renderFilterPrimitive, renderFilterPrimitivesForType, renderFlowchartBox, renderForeignObject, renderGradientDefs, renderGradientStopAnimationElement, renderImage, renderLibraryDef, renderLibraryDefs, renderLine, renderLinearGradient, renderLinearGradientLibraryDef, renderMarkerLibraryDef, renderPaintServerDefs, renderPatternLibraryDef, renderPlanDefsBody, renderPolygonShape, renderPolyline, renderRadialGradient, renderRadialGradientLibraryDef, renderRectangle, renderReferencedLibraryDefs, renderResolvedSymbolDefinitionForest, renderResolvedSymbolDefinitionSubtree, renderResolvedSymbolLibraryDef, renderShape, renderShapeContextForLibrary, renderSpline, renderSvgPrimitiveChainFilter, renderSymbolInstance, renderSymbolLibraryDef, renderTemplateVariablesStyle, renderText, renderTextSpanAnimationElements, renderToSvg, renderToSvgWithDiagnostics, replaceClipMaskDefinition, replaceClipMaskGroupsInSceneTree, replaySceneTreePlacements, requiredDecimalPrecision, resolveConnectorAnchorFromDocument, resolveConnectorEndpoints, resolveContainerTransform, resolveContainerTransformFromContentBounds, resolveCssAnimationEasingType, resolveEmbeddedSvgTransform, resolveEmbeddedSvgViewportFrameBounds, resolveGradientLibraryDef, resolveInlineContainerTransform, resolveMetadataQName, resolvePasteWrapperViewportSize, resolvePatternLibraryDef, resolveRichTextStyleAt, resolveShapeGeometry, resolveShapeLocalObjectBounds, resolveShapeObjectBounds, resolveShapeReferenceTransform, resolveStyledTextLines, resolveSvgGradientGeometry, resolveSvgLengthToken, resolveSvgPatternTile, resolveSvgQName, resolveSvgRectRadii, resolveSvgTextSpanTarget, resolveSvgViewport, resolveSymbolDefinitionForestRootIds, resolveSymbolInstanceContent, resolveSymbolInstanceShapes, resolveSymbolInstanceTransform, resolveSymbolViewport, resolveTextSpanProjection, rewriteDocumentEmbeddedPayloads, rewriteIdReferencesInMarkup, rewriteShapeStateEmbeddedPayloads, rewriteSvgResourceReferenceValue, richTextFontVariantCss, richTextLineSpans, richTextRunsFromState, richTextStyleDelta, richTextStyleDeltasEqual, richTextStylesEqual, richTextTspanAttributes, rootMetadataAttrs, rootPaintServerDefId, rotateAffine, roundCoord, roundMarkupCoordinates, roundNumberString, roundSerializedShape, roundSnapshot, routeConnector, runsFromSegments, sameSize, sampleAnimationTrackTime, sanitizeRichTextFormatRanges, sanitizeXmlId, scaleAffine, scanCssFunctionTokens, scanCssLocalUrlTokens, senderCorrectionsForOp, serializeSvgPathData, serializedPresentationReader, severity, shapeAppearanceLayers, shapeLocalObjectBounds, shapeLocalObjectCenter, shapeNeedsAppearanceExpansion, shapeObjectBoundsInSpace, shouldRoundSvgCoordinateAttribute, skewXAffine, skewYAffine, smilKeyframeAttributes, snapshotBoundsView, solveCubicBezier, solveSudoku, spliceTextSpanTree, splinePathBounds, splitCssAnimationList, splitCssTopLevel, splitCssTopLevelRanges, splitTopLevelElements, srgbToLab, ssimPlane, stringifyDocument, stripAnimationDeclarations, stripCssAnimationInlineStyle, substituteString, substituteVariables, symbolDefinitionSemanticHash, symbolInstanceTargetId, synthesizeCssAnimationShorthand, templateVariablesCss, textSpanEffectiveRotations, textSpanIds, textSpanNodeById, textSpanRangeByIds, transformSplice, transformSvgPathData, translateAffine, translateSvgPathData, tryParseSvgTransformList, upsertResourceById, upsertResourceByKey, upsertResourceByName, upsertTrackKeyframe, validateDocumentOperations, validateOperation, validatePresenceOperation, validateSnapshot, validateSudokuPuzzle, verticesToPath, visitShapeTree, visitSnapshotShapeTrees, writeAppearanceLayers };