@pixerate/editor 0.55.0 → 0.57.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.
Files changed (75) hide show
  1. package/dist/agent/index.cjs +18 -17
  2. package/dist/agent/index.cjs.map +1 -1
  3. package/dist/agent/index.js +3 -2
  4. package/dist/agent/index.js.map +1 -1
  5. package/dist/animation-editor/index.cjs +25 -7
  6. package/dist/animation-editor/index.cjs.map +1 -1
  7. package/dist/animation-editor/index.d.cts +21 -5
  8. package/dist/animation-editor/index.d.ts +21 -5
  9. package/dist/animation-editor/index.js +25 -7
  10. package/dist/animation-editor/index.js.map +1 -1
  11. package/dist/canvas/index.cjs +2105 -172
  12. package/dist/canvas/index.cjs.map +1 -1
  13. package/dist/canvas/index.d.cts +319 -23
  14. package/dist/canvas/index.d.ts +319 -23
  15. package/dist/canvas/index.js +2081 -148
  16. package/dist/canvas/index.js.map +1 -1
  17. package/dist/chart/index.cjs +32 -30
  18. package/dist/chart/index.cjs.map +1 -1
  19. package/dist/chart/index.d.cts +4 -2
  20. package/dist/chart/index.d.ts +4 -2
  21. package/dist/chart/index.js +20 -18
  22. package/dist/chart/index.js.map +1 -1
  23. package/dist/{chunk-C3JHII3M.cjs → chunk-3I6V7PI4.cjs} +45 -45
  24. package/dist/{chunk-C3JHII3M.cjs.map → chunk-3I6V7PI4.cjs.map} +1 -1
  25. package/dist/{chunk-P43HUQRX.cjs → chunk-AHCENCU4.cjs} +12 -10
  26. package/dist/chunk-AHCENCU4.cjs.map +1 -0
  27. package/dist/chunk-II77MLHN.cjs +11106 -0
  28. package/dist/chunk-II77MLHN.cjs.map +1 -0
  29. package/dist/{chunk-OIKYP7XC.js → chunk-LMUDHBWR.js} +2 -2
  30. package/dist/{chunk-VODBAO32.js → chunk-OEFCLWZ3.js} +4 -1425
  31. package/dist/chunk-OEFCLWZ3.js.map +1 -0
  32. package/dist/{chunk-NK3WL5TJ.cjs → chunk-P2CTDJNF.cjs} +27 -1448
  33. package/dist/chunk-P2CTDJNF.cjs.map +1 -0
  34. package/dist/chunk-TKPPIVW7.cjs +1443 -0
  35. package/dist/chunk-TKPPIVW7.cjs.map +1 -0
  36. package/dist/chunk-WJSCGBJ2.js +11106 -0
  37. package/dist/chunk-WJSCGBJ2.js.map +1 -0
  38. package/dist/{chunk-RIXTW3C4.js → chunk-WLVZ235X.js} +5 -3
  39. package/dist/{chunk-RIXTW3C4.js.map → chunk-WLVZ235X.js.map} +1 -1
  40. package/dist/chunk-ZOH6X3VR.js +1443 -0
  41. package/dist/chunk-ZOH6X3VR.js.map +1 -0
  42. package/dist/{controller-DscWQbjO.d.ts → controller-D2rj5umx.d.ts} +2 -362
  43. package/dist/{controller-CX0QfSv0.d.cts → controller-R2biKk_E.d.cts} +2 -362
  44. package/dist/diagram/index.cjs +1457 -47
  45. package/dist/diagram/index.cjs.map +1 -1
  46. package/dist/diagram/index.d.cts +1734 -15
  47. package/dist/diagram/index.d.ts +1734 -15
  48. package/dist/diagram/index.js +1436 -26
  49. package/dist/diagram/index.js.map +1 -1
  50. package/dist/extensions/index.cjs +5 -4
  51. package/dist/extensions/index.cjs.map +1 -1
  52. package/dist/extensions/index.d.cts +4 -3
  53. package/dist/extensions/index.d.ts +4 -3
  54. package/dist/extensions/index.js +4 -3
  55. package/dist/{index-DIWB6xMf.d.cts → index-BcHyG0Wq.d.cts} +2 -1
  56. package/dist/{index-CALDD35B.d.ts → index-CTCc3m3C.d.ts} +2 -1
  57. package/dist/index.cjs +10 -9
  58. package/dist/index.cjs.map +1 -1
  59. package/dist/index.d.cts +4 -3
  60. package/dist/index.d.ts +4 -3
  61. package/dist/index.js +4 -3
  62. package/dist/index.js.map +1 -1
  63. package/dist/types-BRp-6zkY.d.cts +362 -0
  64. package/dist/types-BRp-6zkY.d.ts +362 -0
  65. package/dist/{types-BULrFyuQ.d.cts → types-DYkjhzdz.d.cts} +1 -1
  66. package/dist/{types-BULrFyuQ.d.ts → types-DYkjhzdz.d.ts} +1 -1
  67. package/package.json +1 -1
  68. package/dist/chunk-H5K77C7Y.cjs +0 -3848
  69. package/dist/chunk-H5K77C7Y.cjs.map +0 -1
  70. package/dist/chunk-NK3WL5TJ.cjs.map +0 -1
  71. package/dist/chunk-P43HUQRX.cjs.map +0 -1
  72. package/dist/chunk-VODBAO32.js.map +0 -1
  73. package/dist/chunk-WWJNC7SX.js +0 -3848
  74. package/dist/chunk-WWJNC7SX.js.map +0 -1
  75. /package/dist/{chunk-OIKYP7XC.js.map → chunk-LMUDHBWR.js.map} +0 -0
@@ -13,7 +13,8 @@ import { d as TokenModeContext, r as TokenType, o as TokenScope, f as TokenLiter
13
13
  import { b as AnimationEasing } from '../easing-CNGk-W6d.cjs';
14
14
  export { A as ANIMATION_EASING_LABELS, a as ANIMATION_EASING_PRESETS, c as AnimationEasingPreset, C as CUBIC_BEZIER_PRESETS, d as CubicBezierEasing, E as ElasticEasing, S as SpringEasing, e as cubicBezierAt, f as easingFromInfluence, g as easingLabel, h as easingToCss, i as elasticAt, j as evaluateEasing, k as isAnimationEasing, p as parseCssEasing, r as resolveEasing, s as springAt } from '../easing-CNGk-W6d.cjs';
15
15
  export { O as OklabColor, f as formatOklab, m as mixColorsOklab, o as oklabToRgb, p as parseOklab, r as rgbToOklab } from '../color-E9pwm--w.cjs';
16
- import { e as Point$1, l as GraphNode, f as DiagramGraph, c as DiagramMeta, k as GraphGroup, G as GraphEdge, d as EdgePattern, A as ArrowHead, a as MermaidDocument, E as EditOp } from '../types-BULrFyuQ.cjs';
16
+ import { P as Point$1, G as GraphNode, D as DiagramFamily, a as DiagramGraph, b as DiagramMeta, c as GraphGroup, d as GraphEdge, E as EdgePattern, A as ArrowHead, M as MermaidDocument, e as EditOp } from '../types-DYkjhzdz.cjs';
17
+ import { n as ChartSpec } from '../types-BRp-6zkY.cjs';
17
18
 
18
19
  declare const DEFAULT_NODE_WIDTH = 200;
19
20
  declare const DEFAULT_NODE_HEIGHT = 60;
@@ -2836,6 +2837,11 @@ interface DiagramLayoutOptions {
2836
2837
  groupPadding?: number;
2837
2838
  /** Height reserved for a group's title (default 32). */
2838
2839
  groupTitleHeight?: number;
2840
+ /**
2841
+ * Diagram family. A family that registered its own layout (`registerFamilyLayout`:
2842
+ * pie, quadrant, sequence, Gantt…) is laid out from its data instead of with dagre.
2843
+ */
2844
+ family?: DiagramFamily;
2839
2845
  }
2840
2846
  declare const DEFAULT_DIAGRAM_NODE_WIDTH = 160;
2841
2847
  declare const DEFAULT_DIAGRAM_NODE_HEIGHT = 56;
@@ -3024,6 +3030,309 @@ declare function streamedDiagramText(source: string): string;
3024
3030
  /** Ease-out cubic, for layout tweens. */
3025
3031
  declare const easeDiagramTween: (t: number) => number;
3026
3032
 
3033
+ /** Concrete colours (no CSS variables), so the SVG draws the same as a file, an `<img>` or a PNG. */
3034
+ interface DiagramSvgTheme {
3035
+ background: string;
3036
+ nodeFill: string;
3037
+ nodeStroke: string;
3038
+ text: string;
3039
+ edge: string;
3040
+ edgeLabelBackground: string;
3041
+ groupFill: string;
3042
+ groupStroke: string;
3043
+ groupText: string;
3044
+ fontFamily: string;
3045
+ fontSize: number;
3046
+ }
3047
+ declare const DIAGRAM_SVG_LIGHT_THEME: DiagramSvgTheme;
3048
+ declare const DIAGRAM_SVG_DARK_THEME: DiagramSvgTheme;
3049
+
3050
+ /**
3051
+ * Colours for family drawings. Concrete values draw the same everywhere (files, PNG); a
3052
+ * renderer may pass CSS (`var(--x, #fff)`) since the React and Svelte scenes paint with
3053
+ * `style`. `palette` colours slices, series, sections and branches in order.
3054
+ */
3055
+ interface DiagramSceneTheme extends DiagramSvgTheme {
3056
+ /** Categorical colours (pie slices, sections, branches, curves…), used in order. */
3057
+ palette: string[];
3058
+ /** Text drawn on palette colours. */
3059
+ paletteText: string;
3060
+ /** Axis lines, grid and lifelines. */
3061
+ grid: string;
3062
+ /** Secondary text (axis labels, legends, notes). */
3063
+ mutedText: string;
3064
+ /** Selection outline. */
3065
+ selection: string;
3066
+ }
3067
+ declare const DIAGRAM_SCENE_LIGHT_THEME: DiagramSceneTheme;
3068
+ declare const DIAGRAM_SCENE_DARK_THEME: DiagramSceneTheme;
3069
+ interface DiagramMarkBase {
3070
+ /** Unique within the scene (a stable key for frameworks). */
3071
+ key: string;
3072
+ /** What the mark draws, for styling hooks (`slice`, `legend`, `axis`, `lifeline`, `bar`…). */
3073
+ role: string;
3074
+ /** The node, edge or group id clicking this mark selects (none: decoration). */
3075
+ target?: string;
3076
+ /** Mark belongs to the current selection. */
3077
+ selected?: boolean;
3078
+ opacity?: number;
3079
+ }
3080
+ interface DiagramRectMark extends DiagramMarkBase {
3081
+ kind: 'rect';
3082
+ x: number;
3083
+ y: number;
3084
+ width: number;
3085
+ height: number;
3086
+ fill: string;
3087
+ stroke?: string;
3088
+ strokeWidth?: number;
3089
+ radius?: number;
3090
+ dash?: string;
3091
+ }
3092
+ interface DiagramPathMark extends DiagramMarkBase {
3093
+ kind: 'path';
3094
+ d: string;
3095
+ fill?: string;
3096
+ stroke?: string;
3097
+ strokeWidth?: number;
3098
+ dash?: string;
3099
+ /** Arrow head at the end (`arrow` open, `arrowclosed` filled). */
3100
+ markerEnd?: 'arrow' | 'arrowclosed';
3101
+ markerStart?: 'arrow' | 'arrowclosed';
3102
+ /** Bounds of the path; required when `d` uses arcs or relative commands. */
3103
+ box?: {
3104
+ x: number;
3105
+ y: number;
3106
+ width: number;
3107
+ height: number;
3108
+ };
3109
+ }
3110
+ interface DiagramCircleMark extends DiagramMarkBase {
3111
+ kind: 'circle';
3112
+ cx: number;
3113
+ cy: number;
3114
+ r: number;
3115
+ fill: string;
3116
+ stroke?: string;
3117
+ strokeWidth?: number;
3118
+ }
3119
+ interface DiagramLineMark extends DiagramMarkBase {
3120
+ kind: 'line';
3121
+ x1: number;
3122
+ y1: number;
3123
+ x2: number;
3124
+ y2: number;
3125
+ stroke: string;
3126
+ strokeWidth?: number;
3127
+ dash?: string;
3128
+ markerEnd?: 'arrow' | 'arrowclosed';
3129
+ markerStart?: 'arrow' | 'arrowclosed';
3130
+ }
3131
+ interface DiagramTextMark extends DiagramMarkBase {
3132
+ kind: 'text';
3133
+ x: number;
3134
+ y: number;
3135
+ text: string;
3136
+ anchor: 'start' | 'middle' | 'end';
3137
+ /** Vertical alignment of the text to `y`. */
3138
+ baseline: 'top' | 'middle' | 'bottom';
3139
+ size: number;
3140
+ weight?: number;
3141
+ fill: string;
3142
+ /** Degrees, around (x, y). */
3143
+ rotate?: number;
3144
+ italic?: boolean;
3145
+ }
3146
+ type DiagramMark = DiagramRectMark | DiagramPathMark | DiagramCircleMark | DiagramLineMark | DiagramTextMark;
3147
+ /** A family's drawing in canvas coordinates (the same as the layout's positions). */
3148
+ interface DiagramScene {
3149
+ family: DiagramFamily;
3150
+ /** Bounds of everything drawn. */
3151
+ x: number;
3152
+ y: number;
3153
+ width: number;
3154
+ height: number;
3155
+ /** Draw in order. */
3156
+ marks: DiagramMark[];
3157
+ }
3158
+ interface DiagramSceneOptions {
3159
+ theme?: Partial<DiagramSceneTheme>;
3160
+ /** Selected node, edge or group ids (their marks get `selected`). */
3161
+ selection?: readonly string[];
3162
+ }
3163
+ interface FamilySceneInput {
3164
+ graph: DiagramGraph;
3165
+ layout: DiagramLayout;
3166
+ theme: DiagramSceneTheme;
3167
+ selection: ReadonlySet<string>;
3168
+ }
3169
+ /** Draws a family from its graph and layout; returns marks in canvas coordinates. */
3170
+ type FamilyScene = (input: FamilySceneInput) => DiagramMark[];
3171
+ /**
3172
+ * `target` of the diagram title's marks: double-clicking it renames the title (`setTitle`)
3173
+ * rather than a node.
3174
+ */
3175
+ declare const DIAGRAM_TITLE_TARGET = "::title";
3176
+ /** The palette colour for index `i` (cycling). */
3177
+ declare function sceneColor(theme: DiagramSceneTheme, i: number): string;
3178
+ /** Rough text width (no DOM), in px. */
3179
+ declare function estimateTextWidth(text: string, size: number): number;
3180
+
3181
+ /** Registers (or replaces) the drawing for a family. */
3182
+ declare function registerFamilyScene(family: DiagramFamily, scene: FamilyScene): void;
3183
+ declare function getFamilyScene(family: DiagramFamily): FamilyScene | undefined;
3184
+ /** Whether a family is drawn as a scene (its own picture) instead of nodes and edges. */
3185
+ declare function hasFamilyScene(family: DiagramFamily): boolean;
3186
+ /** Bounds of a list of marks (all zero when empty). */
3187
+ declare function diagramMarksBounds(marks: readonly DiagramMark[]): {
3188
+ x: number;
3189
+ y: number;
3190
+ width: number;
3191
+ height: number;
3192
+ };
3193
+ interface MermaidSceneOptions extends DiagramSceneOptions, DiagramLayoutOptions {
3194
+ /** A layout to draw instead of computing one. */
3195
+ layout?: DiagramLayout;
3196
+ }
3197
+ /**
3198
+ * Draws a document as its family's own picture (pie wedges, Gantt bars on a date axis,
3199
+ * sequence lifelines, XY and radar charts…). Returns null for families drawn as plain nodes
3200
+ * and edges (flowchart, state, class, ER) and for text-only families.
3201
+ */
3202
+ declare function mermaidToScene(doc: MermaidDocument, options?: MermaidSceneOptions): DiagramScene | null;
3203
+ /** {@link mermaidToScene} for a graph and layout already at hand (e.g. a tween frame). */
3204
+ declare function familySceneFromLayout(family: DiagramFamily, graph: DiagramGraph, layout: DiagramLayout, options?: DiagramSceneOptions): DiagramScene | null;
3205
+ /** SVG `dominant-baseline` for a text mark's baseline. */
3206
+ declare function diagramTextBaseline(baseline: DiagramTextMark['baseline']): 'hanging' | 'central' | 'text-after-edge';
3207
+ /** Ids the SVG export uses for arrow markers (`<defs>` holds both). */
3208
+ declare const DIAGRAM_MARKER_IDS: {
3209
+ readonly arrow: "pd-arrow-open";
3210
+ readonly arrowclosed: "pd-arrow-closed";
3211
+ };
3212
+ /** Serialises marks as SVG elements (no `<svg>` wrapper); markers refer to {@link DIAGRAM_MARKER_IDS}. */
3213
+ declare function diagramMarksToSvg(marks: readonly DiagramMark[], theme?: Pick<DiagramSceneTheme, 'selection'>): string;
3214
+ /**
3215
+ * A scene theme that reads the page's `--background`, `--foreground`, `--muted-foreground`,
3216
+ * `--border` and `--primary` colour variables, with light fallbacks. The React and Svelte
3217
+ * scenes use it (they paint with `style`, where `var()` works); files and PNGs use
3218
+ * {@link DIAGRAM_SCENE_LIGHT_THEME} or the dark theme.
3219
+ */
3220
+ declare const CSS_VARIABLE_DIAGRAM_SCENE_THEME: DiagramSceneTheme;
3221
+ /**
3222
+ * The edit that renames what a scene mark targets: the title (`setTitle`), a group
3223
+ * (`renameGroup`), an edge (`setEdgeLabel`) or a node (`renameNode`). Null for an unknown
3224
+ * target. An empty title removes it. Shared by the React and Svelte scenes' double-click.
3225
+ */
3226
+ declare function diagramRenameOp(doc: Pick<MermaidDocument, 'graph'>, target: string, label: string): EditOp | null;
3227
+ /** The text a rename of `target` starts from (title, group, edge or node label). */
3228
+ declare function diagramTargetLabel(doc: Pick<MermaidDocument, 'graph'>, target: string): string | null;
3229
+
3230
+ /**
3231
+ * Pie charts as Mermaid draws them (Ursula's `canvases/pie.tsx`): wedges in document order
3232
+ * with a percentage on each, the outer circle, the legend to the right and the title above.
3233
+ * A wedge and its legend row select the slice.
3234
+ */
3235
+ declare const pieScene: FamilyScene;
3236
+
3237
+ /** The chart spec an `xychart-beta` graph describes. */
3238
+ declare function xyChartSpec(graph: DiagramGraph, palette?: readonly string[]): ChartSpec;
3239
+ /** The chart spec a `radar-beta` graph describes. */
3240
+ declare function radarChartSpec(graph: DiagramGraph, palette?: readonly string[]): ChartSpec;
3241
+ declare const xyChartScene: FamilyScene;
3242
+ declare const radarScene: FamilyScene;
3243
+
3244
+ /**
3245
+ * Sequence diagrams as Mermaid draws them (Ursula's `canvases/sequence.tsx`): participants in
3246
+ * a row, mirrored under the lifelines, one horizontal message per row with its label and
3247
+ * (with `autonumber`) a numbered dot, notes, `alt`/`loop` fragment frames with their
3248
+ * dividers, activation bars and coloured boxes. Participants, their lifelines and mirrors
3249
+ * select the participant; a message's line, head, number and label select the message; a
3250
+ * box's frame selects its group.
3251
+ */
3252
+ declare const sequenceScene: FamilyScene;
3253
+
3254
+ /**
3255
+ * User journeys as Mermaid draws them (Ursula's `canvases/journey.tsx`): the title, a dashed
3256
+ * line down from every task to its face (higher score = higher face), the thick axis, the
3257
+ * actor legend on the left, section bars on top and the task boxes with their actor dots.
3258
+ * Tasks, their dots and faces select the task; a section bar selects its section.
3259
+ */
3260
+ declare const journeyScene: FamilyScene;
3261
+
3262
+ /**
3263
+ * Quadrant charts as Mermaid draws them (Ursula's `canvases/quadrant.tsx`): the chart area
3264
+ * split into four tinted quadrants with their labels, the internal and external borders, the
3265
+ * x-axis labels under the chart (above it while there are no points), the y-axis labels
3266
+ * rotated on the left, the title on top, and every point a filled circle with its label just
3267
+ * below. A quadrant (its area or label) selects its group; a point or its label selects the
3268
+ * point. Points keep their own `color`, `strokeColor` and `strokeWidth`.
3269
+ */
3270
+ declare const quadrantScene: FamilyScene;
3271
+
3272
+ /**
3273
+ * Git graphs as Mermaid draws them (Ursula's `canvases/gitgraph.tsx`): a dashed lane per
3274
+ * branch with its name in a pill of the branch colour, Mermaid's thick lane-coloured parent
3275
+ * links with their arcs, commits as bullets along the lanes (normal, reverse, highlight,
3276
+ * merge and cherry-pick symbols), rotated commit labels and tags. A bullet, its label and
3277
+ * tags select the commit; a pill selects the branch; a link selects the parent edge.
3278
+ */
3279
+ declare const gitGraphScene: FamilyScene;
3280
+
3281
+ /**
3282
+ * Mind maps as Mermaid draws them (Ursula's `canvases/mindmap.tsx`): straight branches
3283
+ * between topic centres in the section colour, thinner with depth, under the topics; the
3284
+ * root dark in the centre, every top-level branch a section in its palette colour, Mermaid's
3285
+ * node shapes per bracket form (default box with an underline, rounded, square, circle,
3286
+ * cloud, bang, hexagon), wrapped labels and an icon badge on the top-left corner. Mermaid
3287
+ * prints no title on mind maps. A topic's shape, label and badge select it.
3288
+ */
3289
+ declare const mindmapScene: FamilyScene;
3290
+
3291
+ /**
3292
+ * C4 diagrams as Mermaid's C4 renderer draws them (Ursula's `canvases/c4.tsx`): boundaries as
3293
+ * dashed frames (deployment nodes solid) with the label, `[type]` and description centred at
3294
+ * the top; people as a head over a rounded body, systems, containers and components as rounded
3295
+ * rectangles, `*Db` as cylinders and `*Queue` as horizontal cylinders, in Mermaid's C4 colours
3296
+ * (`_Ext` grey, `UpdateElementStyle` overrides) with the bold name, the `[Type: technology]` line
3297
+ * and the description; relations as thin lines (the first straight, the rest Mermaid's curves)
3298
+ * with filled heads and the label and `[technology]` at the midpoint (numbered in `C4Dynamic`).
3299
+ * Every part of an element, boundary or relation selects it.
3300
+ */
3301
+ declare const c4Scene: FamilyScene;
3302
+
3303
+ /**
3304
+ * `architecture-beta` diagrams as Mermaid draws them (Ursula's `canvases/architecture.tsx`):
3305
+ * groups as dashed frames with their icon and label at the top-left; services as Mermaid's 80px
3306
+ * icon squares (its `cloud`, `database`, `disk`, `internet` and `server` glyphs, the name on
3307
+ * the square for icon-pack icons, a dashed outline without an icon) with the label beneath;
3308
+ * junctions as points; edges leaving from their port sides as Mermaid's orthogonal lines with
3309
+ * triangular heads and the title along the line. Every part of a service, junction, group or
3310
+ * edge selects it.
3311
+ */
3312
+ declare const architectureScene: FamilyScene;
3313
+
3314
+ /**
3315
+ * Gantt charts as Mermaid draws them (Ursula's `canvases/gantt.tsx`): sections as full-width
3316
+ * bands at 20% opacity with their names on the left, grid lines with date ticks along the
3317
+ * bottom, the today line, one bar per task coloured by status (`done`, `active`, `crit` and
3318
+ * their combinations), milestones as diamonds, and the title centred above. A bar and its label
3319
+ * select the task; a band and its name select the section. `after` dependencies are not drawn by
3320
+ * Mermaid, so they appear only when they or one of their tasks is selected.
3321
+ */
3322
+ declare const ganttScene: FamilyScene;
3323
+
3324
+ /**
3325
+ * Timelines as Mermaid's left-to-right timeline draws them (Ursula's `canvases/timeline.tsx`):
3326
+ * section header bands on top, each period as a box in one row, a thick time axis with an
3327
+ * arrow under the periods, and each period's events stacked below it on a dashed line, with
3328
+ * the title left-aligned above. One colour per section, or one per period without sections.
3329
+ * A period and its events select the period; a section band selects the section.
3330
+ */
3331
+ declare const timelineScene: FamilyScene;
3332
+
3333
+ /** The drawings that ship with the package, by family. */
3334
+ declare const BUILTIN_FAMILY_SCENES: Partial<Record<DiagramFamily, FamilyScene>>;
3335
+
3027
3336
  /**
3028
3337
  * How a path is painted: `shape` with the node's fill and border, `line` with the border
3029
3338
  * only, `filled` solid in the border colour (state start / end dots, fork bars), `hidden`
@@ -3062,26 +3371,11 @@ declare function mermaidLabelLines(label: string): string[];
3062
3371
  /** Class members / ER attributes of a node, one display line each. */
3063
3372
  declare function mermaidNodeMembers(data: Record<string, unknown> | undefined): string[];
3064
3373
 
3065
- /** Concrete colours (no CSS variables), so the SVG draws the same as a file, an `<img>` or a PNG. */
3066
- interface DiagramSvgTheme {
3067
- background: string;
3068
- nodeFill: string;
3069
- nodeStroke: string;
3070
- text: string;
3071
- edge: string;
3072
- edgeLabelBackground: string;
3073
- groupFill: string;
3074
- groupStroke: string;
3075
- groupText: string;
3076
- fontFamily: string;
3077
- fontSize: number;
3078
- }
3079
- declare const DIAGRAM_SVG_LIGHT_THEME: DiagramSvgTheme;
3080
- declare const DIAGRAM_SVG_DARK_THEME: DiagramSvgTheme;
3081
3374
  interface DiagramSvgOptions extends DiagramLayoutOptions {
3082
3375
  /** A layout to draw instead of computing one (e.g. the canvas' current layout). */
3083
3376
  layout?: DiagramLayout;
3084
- theme?: Partial<DiagramSvgTheme>;
3377
+ /** Colours; the scene colours (`palette`, `grid`…) are used by families drawn as scenes. */
3378
+ theme?: Partial<DiagramSceneTheme>;
3085
3379
  /** Room around the diagram in px (default 16). */
3086
3380
  padding?: number;
3087
3381
  /**
@@ -3105,10 +3399,12 @@ interface DiagramSvg {
3105
3399
  naturalHeight: number;
3106
3400
  }
3107
3401
  /**
3108
- * Draws a Mermaid diagram (flowchart, state, class, ER) as a standalone SVG: groups, nodes in
3109
- * their Mermaid shapes with `style` / `classDef` colours, labels, class members and ER
3110
- * attributes, and edges with labels, line patterns and arrow heads. Uses stored
3111
- * `%% @pixerate` positions (auto-layout for the rest), so it matches the canvas. Pure: no DOM.
3402
+ * Draws a Mermaid diagram as a standalone SVG. Flowchart, state, class and ER diagrams: groups,
3403
+ * nodes in their Mermaid shapes with `style` / `classDef` colours, labels, class members and
3404
+ * ER attributes, and edges with labels, line patterns and arrow heads. Families with their own
3405
+ * picture (pie, Gantt, sequence, XY, radar…) are drawn from their scene (`mermaidToScene`).
3406
+ * Uses stored `%% @pixerate` positions (auto-layout for the rest), so it matches the canvas.
3407
+ * Pure: no DOM.
3112
3408
  */
3113
3409
  declare function mermaidToSvg(doc: MermaidDocument, options?: DiagramSvgOptions): DiagramSvg;
3114
3410
  /** A small preview of a diagram: `mermaidToSvg` fitted inside `maxWidth` × `maxHeight` (default 240 × 160). */
@@ -3320,4 +3616,4 @@ declare function formatAgentCursorName(nameOrUsername?: string | null): string;
3320
3616
  */
3321
3617
  declare function isAgentCursor(cursor: Partial<CanvasAgentCursor>): boolean;
3322
3618
 
3323
- export { ANIMATABLE_PROPERTIES, ANIMATION_DATA_KEY, AUTO_LAYOUT_DATA_KEY, type AddCanvasVariantOptions, AlignEdge, AlignNodesOptions, type AnimatableProperty, type AnimateNodeOptions, type AnimationDocument, AnimationEasing, AnimationEditError, type AnimationEditErrorCode, type AnimationFrame, type AnimationHistoryTarget, type AnimationKeyframeClipboard, AnimationLoopMode, type AnimationMotionPath, type AnimationOverrides, AnimationPlayer, AnimationPlayerState, type AnimationPropertyOptions, type AnimationStop, AnimationTrack, AnimationValue, AnimationValueType, type ArrangeHistoryTarget, type AutoLayout, type AutoLayoutAlignContent, type AutoLayoutAlignCross, type AutoLayoutAlignMain, type AutoLayoutCellAlign, type AutoLayoutChild, type AutoLayoutConstraints, type AutoLayoutGrid, type AutoLayoutGridArea, type AutoLayoutGridCell, type AutoLayoutGridGeometry, type AutoLayoutGridTrack, type AutoLayoutHorizontalConstraint, type AutoLayoutInsertTarget, type AutoLayoutMeasure, type AutoLayoutMode, type AutoLayoutOptions, type AutoLayoutPadding, type AutoLayoutSize, type AutoLayoutSizing, type AutoLayoutSizingPair, type AutoLayoutVerticalConstraint, BezierPath, BezierPathInput, CANVAS_COMPONENT_DRAG_TYPE, CANVAS_TOKEN_PROPERTIES, CARD_INSPECTION_ZONES, CHILD_LAYOUT_DATA_KEY, COMPONENT_DATA_KEY, COMPONENT_OVERRIDES_DATA_KEY, COMPONENT_PROPERTY_REFS_DATA_KEY, COMPONENT_SET_DATA_KEY, COMPONENT_SOURCE_DATA_KEY, CONNECTION_LINE_TYPES, CSS_ANIMATION_PROPERTIES, type CanvasAgentCursor, type CanvasAnimationController, type CanvasAnimationControllerOptions, type CanvasAnimationState, CanvasArrangeAction, type CanvasArrangeController, type CanvasArrangeControllerOptions, type CanvasAutoLayoutController, type CanvasAutoLayoutControllerOptions, CanvasClipboardPayload, type CanvasComponentData, type CanvasComponentErrorCode, type CanvasComponentInfo, type CanvasComponentPropertyDef, type CanvasComponentPropertyField, type CanvasComponentPropertyType, type CanvasComponentPropertyValue, type CanvasComponentResult, type CanvasComponentSetData, type CanvasComponentSetInfo, type CanvasComponentSyncOptions, type CanvasComponentsController, type CanvasComponentsControllerOptions, type CanvasConnectionLineType, type CanvasDrawController, type CanvasDrawControllerOptions, CanvasEdge, CanvasGradientDef, type CanvasHeightOptions, type CanvasInstanceData, type CanvasInstanceInfo, type CanvasInstancePropertyInfo, CanvasLayoutOptions, CanvasNode, CanvasNodeStyle, CanvasNodeUpdate, type CanvasScene, type CanvasScenesOptions, type CanvasScenesState, CanvasScenesStore, type CanvasTokenBindingInfo, type CanvasTokenOptions, type CanvasTokenProperty, type CanvasViewport, type CardInspectionZone, Clock, type CombineShapeNodesOptions, type CombineShapeNodesRefusal, type CombineShapeNodesResult, type ConnectorSnap, type ConnectorSnapOptions, type ConnectorSnapTarget, type CreateCanvasComponentOptions, type CreateCanvasInstanceOptions, type CssAnimationExport, type CssExportOptions, type CssPropertyAnimation, type CubicSegment, type CurvedPathOptions, DEFAULT_CURSOR_INACTIVITY_MS, DEFAULT_DIAGRAM_NODE_HEIGHT, DEFAULT_DIAGRAM_NODE_WIDTH, DEFAULT_NODE_HEIGHT, DEFAULT_NODE_WIDTH, DEFAULT_PLACEMENT_GAP, DIAGRAM_RASTER_MAX_SIZE, DIAGRAM_SVG_DARK_THEME, DIAGRAM_SVG_LIGHT_THEME, type DiagramBounds, type DiagramCanvasHeightOptions, type DiagramLayout, type DiagramLayoutOptions, type DiagramSize, DiagramStream, type DiagramStreamResult, type DiagramSvg, type DiagramSvgOptions, type DiagramSvgTheme, DirectionalDisplacementOptions, DistributeAxis, DistributeMode, DistributeNodesOptions, type DownloadDiagramPngOptions, type EvaluateAnimationOptions, FanOutTrajectoryOptions, type FitCubicsOptions, type FitPathDataOptions, type FitViewportOptions, type FreehandDrawOptions, type FreehandStroke, type FreehandStrokeStyle, type FreehandTool, type GuideIndex, type GuideLine, type HatchOptions, INSTANCE_DATA_KEY, IncrementalLayoutOptions, type KeyframeDragState, type KeyframePatch, type KeyframeRangeOptions, type KeyframeRef, type KeyframeSnap, MAX_KEYFRAME_REFS, MERMAID_SHAPE_PAINT, MatchSizeOptions, type MeasureGuide, type MeasureSelectionOptions, type MeasureSelectionResult, type MermaidCanvas, type MermaidCanvasOptions, type MermaidEdgeData, type MermaidFlowEdge, type MermaidFlowNode, type MermaidFlowOptions, type MermaidGroupData, type MermaidMovesOptions, type MermaidNodeData, type MermaidShapePaint, type MermaidShapePath, type MoveKeyframesResult, type MultiNodeTransitionOptions, type NodeAnimation, NodeRectOptions, NodeTransition, type OffsetShapeNodesOptions, type OutlineShapeStrokesOptions, PlaceBesideOptions, Point, PolygonFillRule, PolygonRing, Position, type PositionChangeLike, RESIZE_HANDLES, type RasterImage, type RasterizeSvgOptions, type RecordAnimationOptions, Rect, ReflowDisplacementOptions, type ResizeHandle, SHAPE_DATA_KEY, SHAPE_NODE_TYPE, SHAPE_OPERATIONS, type SampleAnimationOptions, type ScaleKeyframesOptions, type SerializedCanvasScenes, type SetCanvasVariantPropertiesOptions, type SetKeyframeOptions, ShapeDescription, type ShapeNodePolygonOptions, type ShapeOperation, type ShapePathEditOperation, type ShapePathEditRefusal, type ShapePathEditResult, ShapeSize, Side, SizeDimension, type SnapGuidesOptions, type SnapNodeDragOptions, type SnapNodeDragResult, type SnapNodeResizeOptions, type SnapNodeResizeResult, type SnapResizeOptions, type SnapResizeResult, type SnapResult, StreamingLayoutManager, type StreamingLayoutManagerOptions, StrokeCap, StrokeJoin, type StrokeToShapeNodeOptions, TOKEN_BINDINGS_DATA_KEY, TOKEN_MODES_DATA_KEY, type TimelineKeyframe, type TimelineRow, type TimelineRowsOptions, TrajectoryFunction, type WebAnimationSpec, XYPosition, ZOrderOperation, addCanvasVariant, addKeyframesAtTime, animateNode, applyAnimation, applyAnimationOverrides, applyConstraints, applyShapeCombination, applyShapeReplacement, autoLayoutDiagram, bindCanvasComponentProperty, bindCanvasToken, blendDiagramLayout, blendLayout, boundsOf, calculateCursorArrowRotation, calculateCurvedPath, calculateDagreReflowDisplacement, calculateDirectionalDisplacement, canCombineShapeNodes, canOffsetShapeNodes, canOutlineShapeNodeStrokes, canvasHeight, centerNodes, centre, clampAnimationValue, clampLayoutSize, collectDescendantIds, combineCanvasComponentsAsVariants, combineShapeNodes, computeNodesBoundingBox, computeSnapGuides, connectedDiagramOnly, connectedOnly, copyKeyframes, createBezierTrajectory, createCanvasAnimationController, createCanvasArrangeController, createCanvasAutoLayoutController, createCanvasComponent, createCanvasComponentsController, createCanvasDrawController, createCanvasInstance, createCanvasScenesStore, createDefaultStrokeStyle, createFanOutTrajectory, createGuideIndex, createNodeGuideIndex, cubicPointAt, cubicsToPathData, defaultEasing, deleteKeyframes, detachCanvasInstance, detachTokenBindings, diagramCanvasHeight, diagramFileName, diagramGroupSize, diagramImageSize, diagramLayoutBounds, diffOverrideGroups, downloadDiagramPng, easeDiagramTween, ensureDiagramLayout, ensureLayout, estimateCanvasHeight, estimateDiagramCanvasHeight, estimateDiagramNodeSize, estimateNodeSize, evaluateAnimation, exportCssAnimation, findConnectorSnap, findStrokesAtPoint, findVariant, fitCubicRun, fitCubicWithTangents, fitCubics, fitFreehandPath, fitPathData, fitViewportToNodes, fitViewportToRect, flowSide, formatAgentCursorName, formatAnimationTime, formatVariantName, getAgentCardAnchor, getAnimatableProperty, getAnimatedProperties, getAnimatedValue, getAnimationDuration, getAnimationTrack, getAutoLayout, getAutoLayoutGrid, getAutoLayoutInsertTarget, getBindableTokenProperties, getCanvasComponentDragId, getCanvasTokenProperty, getCenteredNodePosition, getChildLayout, getComponentData, getComponentInstances, getComponentPropertyDefs, getComponentPropertyRefs, getComponentSourceId, getCssPropertyAnimations, getCursorTransitionDuration, getDefaultVariant, getEffectiveTokenModes, getFlowChildren, getInstanceData, getInstanceProperties, getInstanceStatus, getKeyframeTimes, getLayerName, getLayoutParent, getLayoutSizing, getLayoutedNodes, getNaturalMovementTiming, getNextVariantValues, getNodeAnimation, getNodeOverrides, getNodeShape, getNodeTokenBindings, getNodeTokenModes, getOwningComponent, getOwningInstance, getResizingNodeRect, getRootInstance, getTimelineRows, getTimelineTicks, getTokenPropertyScope, getTokensForProperty, getVariantConflicts, getVariantOptions, getVariantSet, getVariantValues, handlePoint, hasVisibleStroke, hashString, hatchPath, inferResizeHandle, inspectCanvasInstance, inspectNodeTokens, isAgentCursor, isAutoLayoutFrame, isCanvasComponent, isCanvasComponentSet, isCanvasInstance, isCssExportExact, isEventFromTextInput, isInsideInstance, isKeyframeSelected, isMeasureModifierHeld, isNodeAnimated, isShapeNode, isStraightCubic, isValidCanvasEdge, isValidCanvasNode, isValidCanvasScene, isValidUrl, layoutAll, layoutBounds, layoutFrame, layoutUp, layoutUpMany, linearPositionTrajectory, linearTrajectory, listCanvasComponents, makeSizingCoherent, measureBetween, measureLabel, measureSelection, measureToLine, mergeNodeUpdates, mermaidEdgeDash, mermaidEdgeMarker, mermaidEdgeWidth, mermaidFlowEdges, mermaidFlowNodes, mermaidLabelLines, mermaidMarkerId, mermaidMovesFromCanvas, mermaidNodeMembers, mermaidNodePaint, mermaidShapePaths, mermaidThumbnailSvg, mermaidToCanvas, mermaidToSvg, moveKeyframes, moveLayoutChild, nearestHandlePositions, offsetShapeNodes, oppositePosition, outlineShapeNodeStrokes, overlaps, parseCanvasClipboardData, parseCanvasScenes, parseKeyframeClipboard, parseMermaidStyles, parseNodeStyleDeclarations, parseVariantName, pasteKeyframes, placeBeside, playWebAnimations, positionToSide, pruneCanvasTokenModes, pushCanvasInstanceOverrides, rasterSize, rasterizeSvg, readAnimatableValue, readNodeStyleProperty, readOverrideGroup, recordAnimationChanges, relayoutUpdates, remapPastedNodes, removeCanvasVariant, removeTrack, renameCanvasVariantProperty, renameCanvasVariantValue, repositionNodesTo, resetCanvasInstanceOverrides, resizeHandleAxes, resolveCanvasTokens, resolveMermaidStyles, resolvePadding, restoreCanvasMainComponent, revertShapeCombination, runMultiNodeTransition, sampleAnimationFrames, scaleKeyframes, serializeCanvasNodes, setCanvasComponentProperty, setCanvasInstanceProperties, setCanvasTokenMode, setCanvasVariantProperties, setKeyframe, setKeyframeEasing, setMotionPath, setTrackEnabled, shapeNodeToBezierPath, shapeNodeToPolygon, shapeToBezierPath, sideToPosition, snapKeyframeDelta, snapNodeDrag, snapNodeResize, snapResize, snapTimeToFrame, snapToGrid, streamedDiagramText, streamlinePoints, strokeBoundingBox, strokePointsToPathData, strokeToShapeNode, swapCanvasInstance, syncAllCanvasInstances, syncCanvasComponents, syncCanvasInstance, timeToX, toWebAnimations, updateKeyframe, withNodeAnimation, withStyleOpacity, wouldCreateComponentCycle, writeNodeStyleProperty, writeOverrideGroup, xToTime };
3619
+ export { ANIMATABLE_PROPERTIES, ANIMATION_DATA_KEY, AUTO_LAYOUT_DATA_KEY, type AddCanvasVariantOptions, AlignEdge, AlignNodesOptions, type AnimatableProperty, type AnimateNodeOptions, type AnimationDocument, AnimationEasing, AnimationEditError, type AnimationEditErrorCode, type AnimationFrame, type AnimationHistoryTarget, type AnimationKeyframeClipboard, AnimationLoopMode, type AnimationMotionPath, type AnimationOverrides, AnimationPlayer, AnimationPlayerState, type AnimationPropertyOptions, type AnimationStop, AnimationTrack, AnimationValue, AnimationValueType, type ArrangeHistoryTarget, type AutoLayout, type AutoLayoutAlignContent, type AutoLayoutAlignCross, type AutoLayoutAlignMain, type AutoLayoutCellAlign, type AutoLayoutChild, type AutoLayoutConstraints, type AutoLayoutGrid, type AutoLayoutGridArea, type AutoLayoutGridCell, type AutoLayoutGridGeometry, type AutoLayoutGridTrack, type AutoLayoutHorizontalConstraint, type AutoLayoutInsertTarget, type AutoLayoutMeasure, type AutoLayoutMode, type AutoLayoutOptions, type AutoLayoutPadding, type AutoLayoutSize, type AutoLayoutSizing, type AutoLayoutSizingPair, type AutoLayoutVerticalConstraint, BUILTIN_FAMILY_SCENES, BezierPath, BezierPathInput, CANVAS_COMPONENT_DRAG_TYPE, CANVAS_TOKEN_PROPERTIES, CARD_INSPECTION_ZONES, CHILD_LAYOUT_DATA_KEY, COMPONENT_DATA_KEY, COMPONENT_OVERRIDES_DATA_KEY, COMPONENT_PROPERTY_REFS_DATA_KEY, COMPONENT_SET_DATA_KEY, COMPONENT_SOURCE_DATA_KEY, CONNECTION_LINE_TYPES, CSS_ANIMATION_PROPERTIES, CSS_VARIABLE_DIAGRAM_SCENE_THEME, type CanvasAgentCursor, type CanvasAnimationController, type CanvasAnimationControllerOptions, type CanvasAnimationState, CanvasArrangeAction, type CanvasArrangeController, type CanvasArrangeControllerOptions, type CanvasAutoLayoutController, type CanvasAutoLayoutControllerOptions, CanvasClipboardPayload, type CanvasComponentData, type CanvasComponentErrorCode, type CanvasComponentInfo, type CanvasComponentPropertyDef, type CanvasComponentPropertyField, type CanvasComponentPropertyType, type CanvasComponentPropertyValue, type CanvasComponentResult, type CanvasComponentSetData, type CanvasComponentSetInfo, type CanvasComponentSyncOptions, type CanvasComponentsController, type CanvasComponentsControllerOptions, type CanvasConnectionLineType, type CanvasDrawController, type CanvasDrawControllerOptions, CanvasEdge, CanvasGradientDef, type CanvasHeightOptions, type CanvasInstanceData, type CanvasInstanceInfo, type CanvasInstancePropertyInfo, CanvasLayoutOptions, CanvasNode, CanvasNodeStyle, CanvasNodeUpdate, type CanvasScene, type CanvasScenesOptions, type CanvasScenesState, CanvasScenesStore, type CanvasTokenBindingInfo, type CanvasTokenOptions, type CanvasTokenProperty, type CanvasViewport, type CardInspectionZone, Clock, type CombineShapeNodesOptions, type CombineShapeNodesRefusal, type CombineShapeNodesResult, type ConnectorSnap, type ConnectorSnapOptions, type ConnectorSnapTarget, type CreateCanvasComponentOptions, type CreateCanvasInstanceOptions, type CssAnimationExport, type CssExportOptions, type CssPropertyAnimation, type CubicSegment, type CurvedPathOptions, DEFAULT_CURSOR_INACTIVITY_MS, DEFAULT_DIAGRAM_NODE_HEIGHT, DEFAULT_DIAGRAM_NODE_WIDTH, DEFAULT_NODE_HEIGHT, DEFAULT_NODE_WIDTH, DEFAULT_PLACEMENT_GAP, DIAGRAM_MARKER_IDS, DIAGRAM_RASTER_MAX_SIZE, DIAGRAM_SCENE_DARK_THEME, DIAGRAM_SCENE_LIGHT_THEME, DIAGRAM_SVG_DARK_THEME, DIAGRAM_SVG_LIGHT_THEME, DIAGRAM_TITLE_TARGET, type DiagramBounds, type DiagramCanvasHeightOptions, type DiagramCircleMark, type DiagramLayout, type DiagramLayoutOptions, type DiagramLineMark, type DiagramMark, type DiagramPathMark, type DiagramRectMark, type DiagramScene, type DiagramSceneOptions, type DiagramSceneTheme, type DiagramSize, DiagramStream, type DiagramStreamResult, type DiagramSvg, type DiagramSvgOptions, type DiagramSvgTheme, type DiagramTextMark, DirectionalDisplacementOptions, DistributeAxis, DistributeMode, DistributeNodesOptions, type DownloadDiagramPngOptions, type EvaluateAnimationOptions, type FamilyScene, type FamilySceneInput, FanOutTrajectoryOptions, type FitCubicsOptions, type FitPathDataOptions, type FitViewportOptions, type FreehandDrawOptions, type FreehandStroke, type FreehandStrokeStyle, type FreehandTool, type GuideIndex, type GuideLine, type HatchOptions, INSTANCE_DATA_KEY, IncrementalLayoutOptions, type KeyframeDragState, type KeyframePatch, type KeyframeRangeOptions, type KeyframeRef, type KeyframeSnap, MAX_KEYFRAME_REFS, MERMAID_SHAPE_PAINT, MatchSizeOptions, type MeasureGuide, type MeasureSelectionOptions, type MeasureSelectionResult, type MermaidCanvas, type MermaidCanvasOptions, type MermaidEdgeData, type MermaidFlowEdge, type MermaidFlowNode, type MermaidFlowOptions, type MermaidGroupData, type MermaidMovesOptions, type MermaidNodeData, type MermaidSceneOptions, type MermaidShapePaint, type MermaidShapePath, type MoveKeyframesResult, type MultiNodeTransitionOptions, type NodeAnimation, NodeRectOptions, NodeTransition, type OffsetShapeNodesOptions, type OutlineShapeStrokesOptions, PlaceBesideOptions, Point, PolygonFillRule, PolygonRing, Position, type PositionChangeLike, RESIZE_HANDLES, type RasterImage, type RasterizeSvgOptions, type RecordAnimationOptions, Rect, ReflowDisplacementOptions, type ResizeHandle, SHAPE_DATA_KEY, SHAPE_NODE_TYPE, SHAPE_OPERATIONS, type SampleAnimationOptions, type ScaleKeyframesOptions, type SerializedCanvasScenes, type SetCanvasVariantPropertiesOptions, type SetKeyframeOptions, ShapeDescription, type ShapeNodePolygonOptions, type ShapeOperation, type ShapePathEditOperation, type ShapePathEditRefusal, type ShapePathEditResult, ShapeSize, Side, SizeDimension, type SnapGuidesOptions, type SnapNodeDragOptions, type SnapNodeDragResult, type SnapNodeResizeOptions, type SnapNodeResizeResult, type SnapResizeOptions, type SnapResizeResult, type SnapResult, StreamingLayoutManager, type StreamingLayoutManagerOptions, StrokeCap, StrokeJoin, type StrokeToShapeNodeOptions, TOKEN_BINDINGS_DATA_KEY, TOKEN_MODES_DATA_KEY, type TimelineKeyframe, type TimelineRow, type TimelineRowsOptions, TrajectoryFunction, type WebAnimationSpec, XYPosition, ZOrderOperation, addCanvasVariant, addKeyframesAtTime, animateNode, applyAnimation, applyAnimationOverrides, applyConstraints, applyShapeCombination, applyShapeReplacement, architectureScene, autoLayoutDiagram, bindCanvasComponentProperty, bindCanvasToken, blendDiagramLayout, blendLayout, boundsOf, c4Scene, calculateCursorArrowRotation, calculateCurvedPath, calculateDagreReflowDisplacement, calculateDirectionalDisplacement, canCombineShapeNodes, canOffsetShapeNodes, canOutlineShapeNodeStrokes, canvasHeight, centerNodes, centre, clampAnimationValue, clampLayoutSize, collectDescendantIds, combineCanvasComponentsAsVariants, combineShapeNodes, computeNodesBoundingBox, computeSnapGuides, connectedDiagramOnly, connectedOnly, copyKeyframes, createBezierTrajectory, createCanvasAnimationController, createCanvasArrangeController, createCanvasAutoLayoutController, createCanvasComponent, createCanvasComponentsController, createCanvasDrawController, createCanvasInstance, createCanvasScenesStore, createDefaultStrokeStyle, createFanOutTrajectory, createGuideIndex, createNodeGuideIndex, cubicPointAt, cubicsToPathData, defaultEasing, deleteKeyframes, detachCanvasInstance, detachTokenBindings, diagramCanvasHeight, diagramFileName, diagramGroupSize, diagramImageSize, diagramLayoutBounds, diagramMarksBounds, diagramMarksToSvg, diagramRenameOp, diagramTargetLabel, diagramTextBaseline, diffOverrideGroups, downloadDiagramPng, easeDiagramTween, ensureDiagramLayout, ensureLayout, estimateCanvasHeight, estimateDiagramCanvasHeight, estimateDiagramNodeSize, estimateNodeSize, estimateTextWidth, evaluateAnimation, exportCssAnimation, familySceneFromLayout, findConnectorSnap, findStrokesAtPoint, findVariant, fitCubicRun, fitCubicWithTangents, fitCubics, fitFreehandPath, fitPathData, fitViewportToNodes, fitViewportToRect, flowSide, formatAgentCursorName, formatAnimationTime, formatVariantName, ganttScene, getAgentCardAnchor, getAnimatableProperty, getAnimatedProperties, getAnimatedValue, getAnimationDuration, getAnimationTrack, getAutoLayout, getAutoLayoutGrid, getAutoLayoutInsertTarget, getBindableTokenProperties, getCanvasComponentDragId, getCanvasTokenProperty, getCenteredNodePosition, getChildLayout, getComponentData, getComponentInstances, getComponentPropertyDefs, getComponentPropertyRefs, getComponentSourceId, getCssPropertyAnimations, getCursorTransitionDuration, getDefaultVariant, getEffectiveTokenModes, getFamilyScene, getFlowChildren, getInstanceData, getInstanceProperties, getInstanceStatus, getKeyframeTimes, getLayerName, getLayoutParent, getLayoutSizing, getLayoutedNodes, getNaturalMovementTiming, getNextVariantValues, getNodeAnimation, getNodeOverrides, getNodeShape, getNodeTokenBindings, getNodeTokenModes, getOwningComponent, getOwningInstance, getResizingNodeRect, getRootInstance, getTimelineRows, getTimelineTicks, getTokenPropertyScope, getTokensForProperty, getVariantConflicts, getVariantOptions, getVariantSet, getVariantValues, gitGraphScene, handlePoint, hasFamilyScene, hasVisibleStroke, hashString, hatchPath, inferResizeHandle, inspectCanvasInstance, inspectNodeTokens, isAgentCursor, isAutoLayoutFrame, isCanvasComponent, isCanvasComponentSet, isCanvasInstance, isCssExportExact, isEventFromTextInput, isInsideInstance, isKeyframeSelected, isMeasureModifierHeld, isNodeAnimated, isShapeNode, isStraightCubic, isValidCanvasEdge, isValidCanvasNode, isValidCanvasScene, isValidUrl, journeyScene, layoutAll, layoutBounds, layoutFrame, layoutUp, layoutUpMany, linearPositionTrajectory, linearTrajectory, listCanvasComponents, makeSizingCoherent, measureBetween, measureLabel, measureSelection, measureToLine, mergeNodeUpdates, mermaidEdgeDash, mermaidEdgeMarker, mermaidEdgeWidth, mermaidFlowEdges, mermaidFlowNodes, mermaidLabelLines, mermaidMarkerId, mermaidMovesFromCanvas, mermaidNodeMembers, mermaidNodePaint, mermaidShapePaths, mermaidThumbnailSvg, mermaidToCanvas, mermaidToScene, mermaidToSvg, mindmapScene, moveKeyframes, moveLayoutChild, nearestHandlePositions, offsetShapeNodes, oppositePosition, outlineShapeNodeStrokes, overlaps, parseCanvasClipboardData, parseCanvasScenes, parseKeyframeClipboard, parseMermaidStyles, parseNodeStyleDeclarations, parseVariantName, pasteKeyframes, pieScene, placeBeside, playWebAnimations, positionToSide, pruneCanvasTokenModes, pushCanvasInstanceOverrides, quadrantScene, radarChartSpec, radarScene, rasterSize, rasterizeSvg, readAnimatableValue, readNodeStyleProperty, readOverrideGroup, recordAnimationChanges, registerFamilyScene, relayoutUpdates, remapPastedNodes, removeCanvasVariant, removeTrack, renameCanvasVariantProperty, renameCanvasVariantValue, repositionNodesTo, resetCanvasInstanceOverrides, resizeHandleAxes, resolveCanvasTokens, resolveMermaidStyles, resolvePadding, restoreCanvasMainComponent, revertShapeCombination, runMultiNodeTransition, sampleAnimationFrames, scaleKeyframes, sceneColor, sequenceScene, serializeCanvasNodes, setCanvasComponentProperty, setCanvasInstanceProperties, setCanvasTokenMode, setCanvasVariantProperties, setKeyframe, setKeyframeEasing, setMotionPath, setTrackEnabled, shapeNodeToBezierPath, shapeNodeToPolygon, shapeToBezierPath, sideToPosition, snapKeyframeDelta, snapNodeDrag, snapNodeResize, snapResize, snapTimeToFrame, snapToGrid, streamedDiagramText, streamlinePoints, strokeBoundingBox, strokePointsToPathData, strokeToShapeNode, swapCanvasInstance, syncAllCanvasInstances, syncCanvasComponents, syncCanvasInstance, timeToX, timelineScene, toWebAnimations, updateKeyframe, withNodeAnimation, withStyleOpacity, wouldCreateComponentCycle, writeNodeStyleProperty, writeOverrideGroup, xToTime, xyChartScene, xyChartSpec };