@crazyhappyone/auto-graph 0.0.1 → 0.0.2

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.cts CHANGED
@@ -1,3 +1,5 @@
1
+ import * as _napi_rs_canvas from '@napi-rs/canvas';
2
+
1
3
  type JsonPrimitive = string | number | boolean | null;
2
4
  type JsonValue = JsonPrimitive | JsonObject | JsonValue[];
3
5
  interface JsonObject {
@@ -125,6 +127,11 @@ declare function validateTextStyle(style: TextStyleOptions): void;
125
127
  declare function resolveLineHeight(style: TextStyleOptions): number;
126
128
  declare function toCanvasFont(style: TextStyleOptions): string;
127
129
 
130
+ interface DefaultTextMeasurerOptions {
131
+ installNodeCanvasRuntime?: () => boolean;
132
+ }
133
+ declare function createDefaultTextMeasurer(options?: DefaultTextMeasurerOptions): TextMeasurer;
134
+
128
135
  declare class DeterministicTextMeasurer implements TextMeasurer {
129
136
  prepare(text: string, style: TextStyleOptions): PreparedText;
130
137
  layout(prepared: PreparedText, maxWidth: number, lineHeight?: number): TextLayout;
@@ -132,6 +139,13 @@ declare class DeterministicTextMeasurer implements TextMeasurer {
132
139
  private wrap;
133
140
  }
134
141
 
142
+ type NodeCanvas = _napi_rs_canvas.Canvas;
143
+ type NodeCanvasModule = {
144
+ createCanvas(width: number, height: number): NodeCanvas;
145
+ };
146
+ type LoadNodeCanvasModule = () => NodeCanvasModule;
147
+ declare function installNodeCanvasRuntime(loadNodeCanvasModule?: LoadNodeCanvasModule): boolean;
148
+
135
149
  declare function isPretextRuntimeAvailable(): boolean;
136
150
  declare class PretextTextMeasurer implements TextMeasurer {
137
151
  prepare(text: string, style: TextStyleOptions): PreparedText;
@@ -156,6 +170,7 @@ interface LabelLayout {
156
170
  fittedSize: Size;
157
171
  padding: Insets;
158
172
  font: TextStyleOptions;
173
+ textBackend?: TextMeasurementBackend;
159
174
  lineHeight: number;
160
175
  lines: LabelLineLayout[];
161
176
  overflow: {
@@ -177,6 +192,9 @@ interface NodeBase {
177
192
  id: string;
178
193
  label?: Label;
179
194
  shape?: NodeShape;
195
+ style?: VisualStyle;
196
+ ports?: NodePort[];
197
+ compartments?: NodeCompartments;
180
198
  metadata?: JsonObject;
181
199
  }
182
200
  interface IntentNode extends NodeBase {
@@ -197,18 +215,48 @@ interface CoordinatedNode extends NodeBase {
197
215
  shape: NodeShape;
198
216
  box: Box;
199
217
  anchors: AnchorPoint[];
218
+ ports?: CoordinatedPort[];
200
219
  parentId?: string;
201
220
  labelLayout?: LabelLayout;
202
221
  }
203
222
  interface EdgeEndpoint {
204
223
  nodeId: string;
205
224
  anchor?: AnchorName;
225
+ portId?: string;
226
+ }
227
+ type EdgeStrokeStyle = "solid" | "dashed";
228
+ type EdgeArrowhead = "triangle" | "hollowTriangle";
229
+ type PortSide = "top" | "right" | "bottom" | "left";
230
+ type PortKind = "proxy" | "flow";
231
+ interface VisualStyle {
232
+ fill?: string;
233
+ stroke?: string;
234
+ }
235
+ interface NodePort {
236
+ id: string;
237
+ label?: Label;
238
+ side: PortSide;
239
+ kind: PortKind;
240
+ order?: number;
241
+ style?: VisualStyle;
242
+ }
243
+ interface CoordinatedPort extends NodePort {
244
+ box: Box;
245
+ anchor: Point;
246
+ }
247
+ interface NodeCompartments {
248
+ stereotype?: string;
249
+ name?: string;
250
+ properties?: string[];
251
+ constraints?: string[];
206
252
  }
207
253
  interface IntentEdge {
208
254
  id?: string;
209
255
  sourceId: string;
210
256
  targetId: string;
211
257
  label?: Label;
258
+ style?: EdgeStrokeStyle;
259
+ arrowhead?: EdgeArrowhead;
212
260
  metadata?: JsonObject;
213
261
  }
214
262
  interface NormalizedEdge {
@@ -216,6 +264,8 @@ interface NormalizedEdge {
216
264
  source: EdgeEndpoint;
217
265
  target: EdgeEndpoint;
218
266
  label?: Label;
267
+ style?: EdgeStrokeStyle;
268
+ arrowhead?: EdgeArrowhead;
219
269
  metadata?: JsonObject;
220
270
  }
221
271
  interface CoordinatedEdge extends NormalizedEdge {
@@ -242,6 +292,31 @@ interface NormalizedGroup {
242
292
  interface CoordinatedGroup extends NormalizedGroup {
243
293
  box: Box;
244
294
  }
295
+ type SwimlaneOrientation = "vertical" | "horizontal";
296
+ interface SwimlaneLane {
297
+ id: string;
298
+ label?: Label;
299
+ children: string[];
300
+ box?: Box;
301
+ }
302
+ interface Swimlane {
303
+ id: string;
304
+ label?: Label;
305
+ orientation: SwimlaneOrientation;
306
+ lanes: SwimlaneLane[];
307
+ box?: Box;
308
+ }
309
+ interface DiagramFrame {
310
+ kind: string;
311
+ context?: string;
312
+ name?: string;
313
+ titleTab: string;
314
+ style?: VisualStyle;
315
+ }
316
+ interface CoordinatedFrame extends DiagramFrame {
317
+ box: Box;
318
+ titleBox: Box;
319
+ }
245
320
 
246
321
  type LayoutLockSource = "fixed-position" | "exact-position";
247
322
  interface LayoutLock {
@@ -273,7 +348,9 @@ interface IntentDiagram {
273
348
  nodes: IntentNode[];
274
349
  edges?: IntentEdge[];
275
350
  groups?: IntentGroup[];
351
+ swimlanes?: Swimlane[];
276
352
  constraints?: Constraint[];
353
+ frame?: DiagramFrame;
277
354
  metadata?: DiagramMetadata;
278
355
  }
279
356
  interface NormalizedDiagram {
@@ -283,8 +360,10 @@ interface NormalizedDiagram {
283
360
  nodes: NormalizedNode[];
284
361
  edges: NormalizedEdge[];
285
362
  groups: NormalizedGroup[];
363
+ swimlanes?: Swimlane[];
286
364
  constraints: Constraint[];
287
365
  diagnostics: Diagnostic[];
366
+ frame?: DiagramFrame;
288
367
  metadata?: DiagramMetadata;
289
368
  }
290
369
  interface CoordinatedDiagram {
@@ -294,8 +373,10 @@ interface CoordinatedDiagram {
294
373
  nodes: CoordinatedNode[];
295
374
  edges: CoordinatedEdge[];
296
375
  groups: CoordinatedGroup[];
376
+ swimlanes?: Swimlane[];
297
377
  diagnostics: Diagnostic[];
298
378
  bounds: Box;
379
+ frame?: CoordinatedFrame;
299
380
  metadata?: DiagramMetadata;
300
381
  }
301
382
 
@@ -508,7 +589,12 @@ interface SolveDiagramOptions {
508
589
  routeKind?: RouteKind;
509
590
  obstacleMargin?: number | Insets;
510
591
  overlapSpacing?: number;
592
+ portShifting?: PortShiftingOptions;
593
+ }
594
+ interface PortShiftingOptions {
595
+ enabled?: boolean;
596
+ spacing?: number;
511
597
  }
512
598
  declare function solveDiagram(diagram: NormalizedDiagram, options?: SolveDiagramOptions): CoordinatedDiagram;
513
599
 
514
- export { type AlignConstraint, type AlignmentAxis, type AnchorName, type AnchorPoint, type Arrowhead, type Box, type CanonicalJson, type CanonicalizeOptions, type Constraint, type ConstraintBase, type ConstraintSolverInput, type ConstraintSolverResult, type ConstraintTarget, type ConstraintTargetKind, type ContainerGeometry, type ContainerGeometryInput, type ContainmentConstraint, type CoordinatedDiagram, type CoordinatedEdge, type CoordinatedGroup, type CoordinatedNode, DEFAULT_CANONICAL_PRECISION, DEFAULT_DSL_MAX_BYTES, type DagreLayoutEdge, type DagreLayoutInput, type DagreLayoutNode, type DagreLayoutOptions, DeterministicTextMeasurer, type Diagnostic, type DiagnosticPathSegment, type DiagnosticSeverity, type DiagramDirection, type DiagramMetadata, type DiagramStage, type DistributeConstraint, type DistributionAxis, type DslDiagnostic, type DslDiagnosticLayer, type DslOutputFormat, type EdgeEndpoint, type ExactPositionConstraint, type ExportFormat, type ExportOptions, type ExportResult, type InitialLayoutResult, type Insets, type IntentDiagram, type IntentEdge, type IntentGroup, type IntentNode, type JsonObject, type JsonPrimitive, type JsonValue, type Label, type LabelFitOptions, LabelFitter, type LabelLayout, type LabelLineLayout, type LayoutLock, type LayoutLockSource, type NodeBase, type NodeShape, type NormalizeDiagramDslOptions, type NormalizeDiagramDslResult, type NormalizedDiagram, type NormalizedEdge, type NormalizedGroup, type NormalizedNode, type ParseDiagramDslOptions, type ParseDiagramDslResult, type ParsedEdgeShorthand, type Point, type PreparedText, PretextTextMeasurer, type RelativePositionConstraint, type RelativePositionRelation, type RenderDiagramDslOptions, type RenderDiagramDslResult, type RouteEdgeInput, type RouteEdgeResult, type RouteKind, type ShapeGeometry, type ShapeGeometryInput, type Size, type SolveDiagramOptions, type TextCursor, type TextLayout, type TextLayoutLine, type TextMeasurementBackend, type TextMeasurer, type TextStyleOptions, applyLayoutConstraints, assertFiniteNonNegative, assertFinitePositive, boxCenter, canonicalize, computeArrowhead, computeContainerGeometry, computeShapeGeometry, expandBox, exportExcalidraw, exportSvg, fitLabel, getEdgePort, intersectsAabb, isPretextRuntimeAvailable, normalizeDiagramDsl, normalizeInsets, parseDiagramDsl, parseEdgeShorthand, renderDiagramDsl, resolveLineHeight, resolveOutputFormat, routeEdge, runDagreInitialLayout, simplifyRoute, solveDiagram, sortDslDiagnostics, stringifyCanonical, toCanvasFont, unionBoxes, validateBox, validateTextStyle };
600
+ export { type AlignConstraint, type AlignmentAxis, type AnchorName, type AnchorPoint, type Arrowhead, type Box, type CanonicalJson, type CanonicalizeOptions, type Constraint, type ConstraintBase, type ConstraintSolverInput, type ConstraintSolverResult, type ConstraintTarget, type ConstraintTargetKind, type ContainerGeometry, type ContainerGeometryInput, type ContainmentConstraint, type CoordinatedDiagram, type CoordinatedEdge, type CoordinatedFrame, type CoordinatedGroup, type CoordinatedNode, type CoordinatedPort, DEFAULT_CANONICAL_PRECISION, DEFAULT_DSL_MAX_BYTES, type DagreLayoutEdge, type DagreLayoutInput, type DagreLayoutNode, type DagreLayoutOptions, type DefaultTextMeasurerOptions, DeterministicTextMeasurer, type Diagnostic, type DiagnosticPathSegment, type DiagnosticSeverity, type DiagramDirection, type DiagramFrame, type DiagramMetadata, type DiagramStage, type DistributeConstraint, type DistributionAxis, type DslDiagnostic, type DslDiagnosticLayer, type DslOutputFormat, type EdgeArrowhead, type EdgeEndpoint, type EdgeStrokeStyle, type ExactPositionConstraint, type ExportFormat, type ExportOptions, type ExportResult, type InitialLayoutResult, type Insets, type IntentDiagram, type IntentEdge, type IntentGroup, type IntentNode, type JsonObject, type JsonPrimitive, type JsonValue, type Label, type LabelFitOptions, LabelFitter, type LabelLayout, type LabelLineLayout, type LayoutLock, type LayoutLockSource, type NodeBase, type NodeCompartments, type NodePort, type NodeShape, type NormalizeDiagramDslOptions, type NormalizeDiagramDslResult, type NormalizedDiagram, type NormalizedEdge, type NormalizedGroup, type NormalizedNode, type ParseDiagramDslOptions, type ParseDiagramDslResult, type ParsedEdgeShorthand, type Point, type PortKind, type PortShiftingOptions, type PortSide, type PreparedText, PretextTextMeasurer, type RelativePositionConstraint, type RelativePositionRelation, type RenderDiagramDslOptions, type RenderDiagramDslResult, type RouteEdgeInput, type RouteEdgeResult, type RouteKind, type ShapeGeometry, type ShapeGeometryInput, type Size, type SolveDiagramOptions, type Swimlane, type SwimlaneLane, type SwimlaneOrientation, type TextCursor, type TextLayout, type TextLayoutLine, type TextMeasurementBackend, type TextMeasurer, type TextStyleOptions, type VisualStyle, applyLayoutConstraints, assertFiniteNonNegative, assertFinitePositive, boxCenter, canonicalize, computeArrowhead, computeContainerGeometry, computeShapeGeometry, createDefaultTextMeasurer, expandBox, exportExcalidraw, exportSvg, fitLabel, getEdgePort, installNodeCanvasRuntime, intersectsAabb, isPretextRuntimeAvailable, normalizeDiagramDsl, normalizeInsets, parseDiagramDsl, parseEdgeShorthand, renderDiagramDsl, resolveLineHeight, resolveOutputFormat, routeEdge, runDagreInitialLayout, simplifyRoute, solveDiagram, sortDslDiagnostics, stringifyCanonical, toCanvasFont, unionBoxes, validateBox, validateTextStyle };
package/dist/index.d.ts CHANGED
@@ -1,3 +1,5 @@
1
+ import * as _napi_rs_canvas from '@napi-rs/canvas';
2
+
1
3
  type JsonPrimitive = string | number | boolean | null;
2
4
  type JsonValue = JsonPrimitive | JsonObject | JsonValue[];
3
5
  interface JsonObject {
@@ -125,6 +127,11 @@ declare function validateTextStyle(style: TextStyleOptions): void;
125
127
  declare function resolveLineHeight(style: TextStyleOptions): number;
126
128
  declare function toCanvasFont(style: TextStyleOptions): string;
127
129
 
130
+ interface DefaultTextMeasurerOptions {
131
+ installNodeCanvasRuntime?: () => boolean;
132
+ }
133
+ declare function createDefaultTextMeasurer(options?: DefaultTextMeasurerOptions): TextMeasurer;
134
+
128
135
  declare class DeterministicTextMeasurer implements TextMeasurer {
129
136
  prepare(text: string, style: TextStyleOptions): PreparedText;
130
137
  layout(prepared: PreparedText, maxWidth: number, lineHeight?: number): TextLayout;
@@ -132,6 +139,13 @@ declare class DeterministicTextMeasurer implements TextMeasurer {
132
139
  private wrap;
133
140
  }
134
141
 
142
+ type NodeCanvas = _napi_rs_canvas.Canvas;
143
+ type NodeCanvasModule = {
144
+ createCanvas(width: number, height: number): NodeCanvas;
145
+ };
146
+ type LoadNodeCanvasModule = () => NodeCanvasModule;
147
+ declare function installNodeCanvasRuntime(loadNodeCanvasModule?: LoadNodeCanvasModule): boolean;
148
+
135
149
  declare function isPretextRuntimeAvailable(): boolean;
136
150
  declare class PretextTextMeasurer implements TextMeasurer {
137
151
  prepare(text: string, style: TextStyleOptions): PreparedText;
@@ -156,6 +170,7 @@ interface LabelLayout {
156
170
  fittedSize: Size;
157
171
  padding: Insets;
158
172
  font: TextStyleOptions;
173
+ textBackend?: TextMeasurementBackend;
159
174
  lineHeight: number;
160
175
  lines: LabelLineLayout[];
161
176
  overflow: {
@@ -177,6 +192,9 @@ interface NodeBase {
177
192
  id: string;
178
193
  label?: Label;
179
194
  shape?: NodeShape;
195
+ style?: VisualStyle;
196
+ ports?: NodePort[];
197
+ compartments?: NodeCompartments;
180
198
  metadata?: JsonObject;
181
199
  }
182
200
  interface IntentNode extends NodeBase {
@@ -197,18 +215,48 @@ interface CoordinatedNode extends NodeBase {
197
215
  shape: NodeShape;
198
216
  box: Box;
199
217
  anchors: AnchorPoint[];
218
+ ports?: CoordinatedPort[];
200
219
  parentId?: string;
201
220
  labelLayout?: LabelLayout;
202
221
  }
203
222
  interface EdgeEndpoint {
204
223
  nodeId: string;
205
224
  anchor?: AnchorName;
225
+ portId?: string;
226
+ }
227
+ type EdgeStrokeStyle = "solid" | "dashed";
228
+ type EdgeArrowhead = "triangle" | "hollowTriangle";
229
+ type PortSide = "top" | "right" | "bottom" | "left";
230
+ type PortKind = "proxy" | "flow";
231
+ interface VisualStyle {
232
+ fill?: string;
233
+ stroke?: string;
234
+ }
235
+ interface NodePort {
236
+ id: string;
237
+ label?: Label;
238
+ side: PortSide;
239
+ kind: PortKind;
240
+ order?: number;
241
+ style?: VisualStyle;
242
+ }
243
+ interface CoordinatedPort extends NodePort {
244
+ box: Box;
245
+ anchor: Point;
246
+ }
247
+ interface NodeCompartments {
248
+ stereotype?: string;
249
+ name?: string;
250
+ properties?: string[];
251
+ constraints?: string[];
206
252
  }
207
253
  interface IntentEdge {
208
254
  id?: string;
209
255
  sourceId: string;
210
256
  targetId: string;
211
257
  label?: Label;
258
+ style?: EdgeStrokeStyle;
259
+ arrowhead?: EdgeArrowhead;
212
260
  metadata?: JsonObject;
213
261
  }
214
262
  interface NormalizedEdge {
@@ -216,6 +264,8 @@ interface NormalizedEdge {
216
264
  source: EdgeEndpoint;
217
265
  target: EdgeEndpoint;
218
266
  label?: Label;
267
+ style?: EdgeStrokeStyle;
268
+ arrowhead?: EdgeArrowhead;
219
269
  metadata?: JsonObject;
220
270
  }
221
271
  interface CoordinatedEdge extends NormalizedEdge {
@@ -242,6 +292,31 @@ interface NormalizedGroup {
242
292
  interface CoordinatedGroup extends NormalizedGroup {
243
293
  box: Box;
244
294
  }
295
+ type SwimlaneOrientation = "vertical" | "horizontal";
296
+ interface SwimlaneLane {
297
+ id: string;
298
+ label?: Label;
299
+ children: string[];
300
+ box?: Box;
301
+ }
302
+ interface Swimlane {
303
+ id: string;
304
+ label?: Label;
305
+ orientation: SwimlaneOrientation;
306
+ lanes: SwimlaneLane[];
307
+ box?: Box;
308
+ }
309
+ interface DiagramFrame {
310
+ kind: string;
311
+ context?: string;
312
+ name?: string;
313
+ titleTab: string;
314
+ style?: VisualStyle;
315
+ }
316
+ interface CoordinatedFrame extends DiagramFrame {
317
+ box: Box;
318
+ titleBox: Box;
319
+ }
245
320
 
246
321
  type LayoutLockSource = "fixed-position" | "exact-position";
247
322
  interface LayoutLock {
@@ -273,7 +348,9 @@ interface IntentDiagram {
273
348
  nodes: IntentNode[];
274
349
  edges?: IntentEdge[];
275
350
  groups?: IntentGroup[];
351
+ swimlanes?: Swimlane[];
276
352
  constraints?: Constraint[];
353
+ frame?: DiagramFrame;
277
354
  metadata?: DiagramMetadata;
278
355
  }
279
356
  interface NormalizedDiagram {
@@ -283,8 +360,10 @@ interface NormalizedDiagram {
283
360
  nodes: NormalizedNode[];
284
361
  edges: NormalizedEdge[];
285
362
  groups: NormalizedGroup[];
363
+ swimlanes?: Swimlane[];
286
364
  constraints: Constraint[];
287
365
  diagnostics: Diagnostic[];
366
+ frame?: DiagramFrame;
288
367
  metadata?: DiagramMetadata;
289
368
  }
290
369
  interface CoordinatedDiagram {
@@ -294,8 +373,10 @@ interface CoordinatedDiagram {
294
373
  nodes: CoordinatedNode[];
295
374
  edges: CoordinatedEdge[];
296
375
  groups: CoordinatedGroup[];
376
+ swimlanes?: Swimlane[];
297
377
  diagnostics: Diagnostic[];
298
378
  bounds: Box;
379
+ frame?: CoordinatedFrame;
299
380
  metadata?: DiagramMetadata;
300
381
  }
301
382
 
@@ -508,7 +589,12 @@ interface SolveDiagramOptions {
508
589
  routeKind?: RouteKind;
509
590
  obstacleMargin?: number | Insets;
510
591
  overlapSpacing?: number;
592
+ portShifting?: PortShiftingOptions;
593
+ }
594
+ interface PortShiftingOptions {
595
+ enabled?: boolean;
596
+ spacing?: number;
511
597
  }
512
598
  declare function solveDiagram(diagram: NormalizedDiagram, options?: SolveDiagramOptions): CoordinatedDiagram;
513
599
 
514
- export { type AlignConstraint, type AlignmentAxis, type AnchorName, type AnchorPoint, type Arrowhead, type Box, type CanonicalJson, type CanonicalizeOptions, type Constraint, type ConstraintBase, type ConstraintSolverInput, type ConstraintSolverResult, type ConstraintTarget, type ConstraintTargetKind, type ContainerGeometry, type ContainerGeometryInput, type ContainmentConstraint, type CoordinatedDiagram, type CoordinatedEdge, type CoordinatedGroup, type CoordinatedNode, DEFAULT_CANONICAL_PRECISION, DEFAULT_DSL_MAX_BYTES, type DagreLayoutEdge, type DagreLayoutInput, type DagreLayoutNode, type DagreLayoutOptions, DeterministicTextMeasurer, type Diagnostic, type DiagnosticPathSegment, type DiagnosticSeverity, type DiagramDirection, type DiagramMetadata, type DiagramStage, type DistributeConstraint, type DistributionAxis, type DslDiagnostic, type DslDiagnosticLayer, type DslOutputFormat, type EdgeEndpoint, type ExactPositionConstraint, type ExportFormat, type ExportOptions, type ExportResult, type InitialLayoutResult, type Insets, type IntentDiagram, type IntentEdge, type IntentGroup, type IntentNode, type JsonObject, type JsonPrimitive, type JsonValue, type Label, type LabelFitOptions, LabelFitter, type LabelLayout, type LabelLineLayout, type LayoutLock, type LayoutLockSource, type NodeBase, type NodeShape, type NormalizeDiagramDslOptions, type NormalizeDiagramDslResult, type NormalizedDiagram, type NormalizedEdge, type NormalizedGroup, type NormalizedNode, type ParseDiagramDslOptions, type ParseDiagramDslResult, type ParsedEdgeShorthand, type Point, type PreparedText, PretextTextMeasurer, type RelativePositionConstraint, type RelativePositionRelation, type RenderDiagramDslOptions, type RenderDiagramDslResult, type RouteEdgeInput, type RouteEdgeResult, type RouteKind, type ShapeGeometry, type ShapeGeometryInput, type Size, type SolveDiagramOptions, type TextCursor, type TextLayout, type TextLayoutLine, type TextMeasurementBackend, type TextMeasurer, type TextStyleOptions, applyLayoutConstraints, assertFiniteNonNegative, assertFinitePositive, boxCenter, canonicalize, computeArrowhead, computeContainerGeometry, computeShapeGeometry, expandBox, exportExcalidraw, exportSvg, fitLabel, getEdgePort, intersectsAabb, isPretextRuntimeAvailable, normalizeDiagramDsl, normalizeInsets, parseDiagramDsl, parseEdgeShorthand, renderDiagramDsl, resolveLineHeight, resolveOutputFormat, routeEdge, runDagreInitialLayout, simplifyRoute, solveDiagram, sortDslDiagnostics, stringifyCanonical, toCanvasFont, unionBoxes, validateBox, validateTextStyle };
600
+ export { type AlignConstraint, type AlignmentAxis, type AnchorName, type AnchorPoint, type Arrowhead, type Box, type CanonicalJson, type CanonicalizeOptions, type Constraint, type ConstraintBase, type ConstraintSolverInput, type ConstraintSolverResult, type ConstraintTarget, type ConstraintTargetKind, type ContainerGeometry, type ContainerGeometryInput, type ContainmentConstraint, type CoordinatedDiagram, type CoordinatedEdge, type CoordinatedFrame, type CoordinatedGroup, type CoordinatedNode, type CoordinatedPort, DEFAULT_CANONICAL_PRECISION, DEFAULT_DSL_MAX_BYTES, type DagreLayoutEdge, type DagreLayoutInput, type DagreLayoutNode, type DagreLayoutOptions, type DefaultTextMeasurerOptions, DeterministicTextMeasurer, type Diagnostic, type DiagnosticPathSegment, type DiagnosticSeverity, type DiagramDirection, type DiagramFrame, type DiagramMetadata, type DiagramStage, type DistributeConstraint, type DistributionAxis, type DslDiagnostic, type DslDiagnosticLayer, type DslOutputFormat, type EdgeArrowhead, type EdgeEndpoint, type EdgeStrokeStyle, type ExactPositionConstraint, type ExportFormat, type ExportOptions, type ExportResult, type InitialLayoutResult, type Insets, type IntentDiagram, type IntentEdge, type IntentGroup, type IntentNode, type JsonObject, type JsonPrimitive, type JsonValue, type Label, type LabelFitOptions, LabelFitter, type LabelLayout, type LabelLineLayout, type LayoutLock, type LayoutLockSource, type NodeBase, type NodeCompartments, type NodePort, type NodeShape, type NormalizeDiagramDslOptions, type NormalizeDiagramDslResult, type NormalizedDiagram, type NormalizedEdge, type NormalizedGroup, type NormalizedNode, type ParseDiagramDslOptions, type ParseDiagramDslResult, type ParsedEdgeShorthand, type Point, type PortKind, type PortShiftingOptions, type PortSide, type PreparedText, PretextTextMeasurer, type RelativePositionConstraint, type RelativePositionRelation, type RenderDiagramDslOptions, type RenderDiagramDslResult, type RouteEdgeInput, type RouteEdgeResult, type RouteKind, type ShapeGeometry, type ShapeGeometryInput, type Size, type SolveDiagramOptions, type Swimlane, type SwimlaneLane, type SwimlaneOrientation, type TextCursor, type TextLayout, type TextLayoutLine, type TextMeasurementBackend, type TextMeasurer, type TextStyleOptions, type VisualStyle, applyLayoutConstraints, assertFiniteNonNegative, assertFinitePositive, boxCenter, canonicalize, computeArrowhead, computeContainerGeometry, computeShapeGeometry, createDefaultTextMeasurer, expandBox, exportExcalidraw, exportSvg, fitLabel, getEdgePort, installNodeCanvasRuntime, intersectsAabb, isPretextRuntimeAvailable, normalizeDiagramDsl, normalizeInsets, parseDiagramDsl, parseEdgeShorthand, renderDiagramDsl, resolveLineHeight, resolveOutputFormat, routeEdge, runDagreInitialLayout, simplifyRoute, solveDiagram, sortDslDiagnostics, stringifyCanonical, toCanvasFont, unionBoxes, validateBox, validateTextStyle };