@ts-graphviz/common 2.1.0 → 2.1.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/CHANGELOG.md +22 -0
- package/lib/common.d.ts +4010 -5
- package/package.json +3 -3
- package/lib/attribute.d.ts +0 -2749
- package/lib/functional.d.ts +0 -9
- package/lib/functional.test.d.ts +0 -1
- package/lib/models-context.d.ts +0 -19
- package/lib/models.d.ts +0 -620
- package/lib/types.d.ts +0 -494
package/lib/types.d.ts
DELETED
|
@@ -1,494 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @hidden
|
|
3
|
-
*/
|
|
4
|
-
export type $keywords<T extends string> = {
|
|
5
|
-
[key in T]: key;
|
|
6
|
-
};
|
|
7
|
-
export type Insensitive<T> = T & Insensitive.LowercaseKeys<T> & Insensitive.UppercaseKeys<T>;
|
|
8
|
-
export declare namespace Insensitive {
|
|
9
|
-
type LowercaseKeys<T> = {
|
|
10
|
-
[key in keyof T as Lowercase<string & key>]: T[key];
|
|
11
|
-
};
|
|
12
|
-
type UppercaseKeys<T> = {
|
|
13
|
-
[key in keyof T as Uppercase<string & key>]: T[key];
|
|
14
|
-
};
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* @hidden
|
|
18
|
-
*/
|
|
19
|
-
export interface $keywordsValidation extends $keywords<`${string} ${string}` | `${string}\n${string}` | `${string}\t${string}`> {
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* Directive indicating which direction the Edge should point.
|
|
23
|
-
* @group Attribute Types
|
|
24
|
-
*/
|
|
25
|
-
export type Compass = Compass.values;
|
|
26
|
-
/** @hidden */
|
|
27
|
-
export declare namespace Compass {
|
|
28
|
-
type values = Exclude<keyof $values, keyof $exclude | symbol | number>;
|
|
29
|
-
interface $values extends $keywords<'n' | 'ne' | 'e' | 'se' | 's' | 'sw' | 'w' | 'nw' | 'c' | '_'> {
|
|
30
|
-
}
|
|
31
|
-
interface $exclude extends $keywordsValidation {
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* A value specifying an empty string for resetting some values.
|
|
36
|
-
* @group Attribute Types
|
|
37
|
-
*/
|
|
38
|
-
export type Blank = '';
|
|
39
|
-
/**
|
|
40
|
-
* A double with an optional prefix `'+'`.
|
|
41
|
-
*
|
|
42
|
-
* @see {@link https://graphviz.gitlab.io/docs/attr-types/addDouble/ addDouble}
|
|
43
|
-
* @group Attribute Types
|
|
44
|
-
*/
|
|
45
|
-
export type AddDouble = `+${Double}`;
|
|
46
|
-
/**
|
|
47
|
-
* Double-precision floating point number.
|
|
48
|
-
*
|
|
49
|
-
* @see {@link https://graphviz.gitlab.io/docs/attr-types/double/ double}
|
|
50
|
-
* @group Attribute Types
|
|
51
|
-
*/
|
|
52
|
-
export type Double = number;
|
|
53
|
-
/**
|
|
54
|
-
* Port Position
|
|
55
|
-
*
|
|
56
|
-
* @see {@link https://graphviz.gitlab.io/docs/attr-types/portPos/ portPos}
|
|
57
|
-
* @group Attribute Types
|
|
58
|
-
*/
|
|
59
|
-
export type PortPos = `${string}:${Compass}` | Compass;
|
|
60
|
-
/**
|
|
61
|
-
* A colon-separated list of doubles: `"%f(:%f)*"` where each %f is a double.
|
|
62
|
-
*
|
|
63
|
-
* @see {@link https://graphviz.gitlab.io/docs/attr-types/doubleList/ doubleList}
|
|
64
|
-
* @group Attribute Types
|
|
65
|
-
*/
|
|
66
|
-
export type DoubleList = Double | `${Double}:${Double}` | `${Double}:${Double}:${Double}` | `${Double}:${Double}:${Double}:${Double}` | `${Double}:${Double}:${Double}:${Double}:${Double}` | `${Double}:${Double}:${Double}:${Double}:${Double}:${Double}` | `${Double}:${Double}:${Double}:${Double}:${Double}:${Double}:${Double}` | `${Double}:${Double}:${Double}:${Double}:${Double}:${Double}:${Double}:${Double}` | `${Double}:${Double}:${Double}:${Double}:${Double}:${Double}:${Double}:${Double}:${Double}`;
|
|
67
|
-
/**
|
|
68
|
-
* Integer number.
|
|
69
|
-
*
|
|
70
|
-
* @see {@link https://graphviz.gitlab.io/docs/attr-types/int/ int}
|
|
71
|
-
* @group Attribute Types
|
|
72
|
-
*/
|
|
73
|
-
export type Int = number;
|
|
74
|
-
/**
|
|
75
|
-
* @see {@link https://graphviz.gitlab.io/docs/attr-types/shape/ shape}
|
|
76
|
-
* @group Attribute Types
|
|
77
|
-
*/
|
|
78
|
-
export type Shape = string;
|
|
79
|
-
/**
|
|
80
|
-
* @see {@link https://graphviz.gitlab.io/docs/attr-types/smoothType/ smoothType}
|
|
81
|
-
* @group Attribute Types
|
|
82
|
-
*/
|
|
83
|
-
export type SmoothType = SmoothType.values;
|
|
84
|
-
/** @hidden */
|
|
85
|
-
export declare namespace SmoothType {
|
|
86
|
-
type values = Exclude<keyof $values, keyof $exclude | symbol | number>;
|
|
87
|
-
interface $values extends $keywords<'none' | 'avg_dist' | 'graph_dist' | 'power_dist' | 'rng' | 'spring' | 'triangle'> {
|
|
88
|
-
}
|
|
89
|
-
interface $exclude extends $keywordsValidation {
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
/**
|
|
93
|
-
* @see {@link https://graphviz.gitlab.io/docs/attr-types/splineType/ splineType}
|
|
94
|
-
* @group Attribute Types
|
|
95
|
-
*/
|
|
96
|
-
export type SplineType = SplineType.spline | string;
|
|
97
|
-
/** @hidden */
|
|
98
|
-
export declare namespace SplineType {
|
|
99
|
-
type prefix = endp | startp | `${endp}${startp}` | '';
|
|
100
|
-
type spline = `${prefix}point ${triple}`;
|
|
101
|
-
type triple = `${Point} ${Point} ${Point}`;
|
|
102
|
-
type endp = `e,${Double},${Double} `;
|
|
103
|
-
type startp = `s,${Double},${Double} `;
|
|
104
|
-
}
|
|
105
|
-
/**
|
|
106
|
-
* @see {@link https://graphviz.gitlab.io/docs/attr-types/startType/ startType}
|
|
107
|
-
* @group Attribute Types
|
|
108
|
-
*/
|
|
109
|
-
export type StartType = `${StartType.style}${StartType.seed}`;
|
|
110
|
-
/** @hidden */
|
|
111
|
-
export declare namespace StartType {
|
|
112
|
-
type style = Exclude<keyof $style, keyof $exclude>;
|
|
113
|
-
interface $style extends $keywords<'regular' | 'self' | 'random'> {
|
|
114
|
-
}
|
|
115
|
-
type seed = number;
|
|
116
|
-
interface $exclude extends $keywordsValidation {
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
/**
|
|
120
|
-
* @see {@link https://graphviz.gitlab.io/docs/attr-types/style/ style}
|
|
121
|
-
* @group Attribute Types
|
|
122
|
-
*/
|
|
123
|
-
export type Style = Style.styleItem | `${Style.styleItem},${Style.styleItem}` | `${Style.styleItem},${Style.styleItem},${Style.styleItem}` | `${Style.styleItem},${Style.styleItem},${Style.styleItem},${Style.styleItem}`;
|
|
124
|
-
/** @hidden */
|
|
125
|
-
export declare namespace Style {
|
|
126
|
-
type styleItem = Exclude<keyof $styleItem, keyof $exclude>;
|
|
127
|
-
interface $styleItem extends $keywords<'dashed' | 'dotted' | 'solid' | 'invis' | 'bold' | 'tapered' | 'filled' | 'striped' | 'wedged' | 'diagonals' | 'rounded' | 'filled' | 'striped' | 'rounded' | 'radial'> {
|
|
128
|
-
}
|
|
129
|
-
interface $exclude extends $keywordsValidation {
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
/**
|
|
133
|
-
* @see {@link https://graphviz.gitlab.io/docs/attr-types/viewPort/ viewPort}
|
|
134
|
-
* @group Attribute Types
|
|
135
|
-
*/
|
|
136
|
-
export type ViewPort = `${Double},${Double},${Double},${Double},${Double}` | `${Double},${Double},${Double},${string}`;
|
|
137
|
-
/**
|
|
138
|
-
* list of strings separated by characters from the layersep attribute (by default, colons, tabs or spaces),
|
|
139
|
-
* defining layer names and implicitly numbered 1,2,…
|
|
140
|
-
*
|
|
141
|
-
* @see {@link https://graphviz.gitlab.io/docs/attr-types/layerList/ layerList}
|
|
142
|
-
* @group Attribute Types
|
|
143
|
-
*/
|
|
144
|
-
export type LayerList = string;
|
|
145
|
-
/**
|
|
146
|
-
* specifies a list of layers defined by the layers attribute.
|
|
147
|
-
*
|
|
148
|
-
* @see {@link https://graphviz.gitlab.io/docs/attr-types/layerRange/ layerRange}
|
|
149
|
-
* @group Attribute Types
|
|
150
|
-
*/
|
|
151
|
-
export type LayerRange = string;
|
|
152
|
-
/**
|
|
153
|
-
* String with Escape Sequences
|
|
154
|
-
*
|
|
155
|
-
* A string allowing escape sequences which are replaced according to the context.
|
|
156
|
-
*
|
|
157
|
-
* For node attributes, the substring `"\N"` is replaced by the name of the node,
|
|
158
|
-
* and the substring `"\G"` by the name of the graph.
|
|
159
|
-
*
|
|
160
|
-
* For graph or cluster attributes, the substring `"\G"` is replaced by the name of the graph or cluster.
|
|
161
|
-
*
|
|
162
|
-
* For edge attributes, the substring `"\E"` is replaced by the name of the edge, the substring `"\G"` is replaced by the name of the graph or cluster,
|
|
163
|
-
* and the substrings `"\T"` and `"\H"` by the names of the tail and head nodes,
|
|
164
|
-
* respectively.
|
|
165
|
-
*
|
|
166
|
-
* The name of an edge is the string formed from the name of the tail node,
|
|
167
|
-
* the appropriate edge operator (`"--"` or `"->"`) and the name of the head node.
|
|
168
|
-
*
|
|
169
|
-
* In all cases, the substring `"\L"` is replaced by the object's label attribute.
|
|
170
|
-
* @see {@link https://graphviz.gitlab.io/docs/attr-types/escString/ escString}
|
|
171
|
-
* @group Attribute Types
|
|
172
|
-
*/
|
|
173
|
-
export type EscString = string;
|
|
174
|
-
/**
|
|
175
|
-
* @see {@link https://graphviz.org/doc/info/shapes.html#html HTML-Like Labels}
|
|
176
|
-
* @group Attribute Types
|
|
177
|
-
*/
|
|
178
|
-
export type HTMLLikeLabel = `<${string}>`;
|
|
179
|
-
/** @hidden */
|
|
180
|
-
export declare namespace HTMLLikeLabel {
|
|
181
|
-
export type TableAttributes = Insensitive<{
|
|
182
|
-
align?: 'CENTER' | 'LEFT' | 'RIGHT';
|
|
183
|
-
bgcolor?: Color | ColorList;
|
|
184
|
-
border?: number;
|
|
185
|
-
cellborder?: number;
|
|
186
|
-
cellPadding?: number;
|
|
187
|
-
cellSpacing?: number;
|
|
188
|
-
color?: Color | ColorList;
|
|
189
|
-
columns?: number;
|
|
190
|
-
fixedSize?: true;
|
|
191
|
-
gradientAngle?: number;
|
|
192
|
-
height?: number;
|
|
193
|
-
href?: string;
|
|
194
|
-
id?: string;
|
|
195
|
-
port?: Compass | string;
|
|
196
|
-
rows?: number;
|
|
197
|
-
sides?: Side.Combinations;
|
|
198
|
-
style?: Style;
|
|
199
|
-
target?: string;
|
|
200
|
-
title?: string;
|
|
201
|
-
tooltip?: string;
|
|
202
|
-
valign?: 'MIDDLE' | 'BOTTOM' | 'TOP';
|
|
203
|
-
width?: number;
|
|
204
|
-
}>;
|
|
205
|
-
type NoAttributes = Record<string, unknown>;
|
|
206
|
-
export type TrAttributes = NoAttributes;
|
|
207
|
-
export type TdAttributes = Insensitive<{
|
|
208
|
-
align?: 'CENTER' | 'LEFT' | 'RIGHT' | 'TEXT';
|
|
209
|
-
balign?: 'CENTER' | 'LEFT' | 'RIGHT';
|
|
210
|
-
bgcolor?: Color | ColorList;
|
|
211
|
-
border?: number;
|
|
212
|
-
cellPadding?: number;
|
|
213
|
-
cellSpacing?: number;
|
|
214
|
-
color?: Color | ColorList;
|
|
215
|
-
colspan?: number;
|
|
216
|
-
fixedSize?: boolean;
|
|
217
|
-
gradientAngle?: number;
|
|
218
|
-
height?: number;
|
|
219
|
-
href?: string;
|
|
220
|
-
id?: string;
|
|
221
|
-
port?: Compass | string;
|
|
222
|
-
rowSpan?: number;
|
|
223
|
-
sides?: Side.Combinations;
|
|
224
|
-
style?: Style;
|
|
225
|
-
target?: string;
|
|
226
|
-
title?: string;
|
|
227
|
-
tooltip?: string;
|
|
228
|
-
valign?: 'MIDDLE' | 'BOTTOM' | 'TOP';
|
|
229
|
-
width?: number;
|
|
230
|
-
}>;
|
|
231
|
-
export type FontAttributes = Insensitive<{
|
|
232
|
-
color?: Color | ColorList;
|
|
233
|
-
face?: string;
|
|
234
|
-
'point-size'?: number;
|
|
235
|
-
}>;
|
|
236
|
-
export type BrAttributes = Insensitive<{
|
|
237
|
-
align?: 'CENTER' | 'LEFT' | 'RIGHT';
|
|
238
|
-
}>;
|
|
239
|
-
export type ImgAttributes = Insensitive<{
|
|
240
|
-
scale?: boolean | 'WIDTH' | 'HEIGHT' | 'BOTH';
|
|
241
|
-
src?: string;
|
|
242
|
-
}>;
|
|
243
|
-
export type IAttributes = NoAttributes;
|
|
244
|
-
export type BAttributes = NoAttributes;
|
|
245
|
-
export type UAttributes = NoAttributes;
|
|
246
|
-
export type OAttributes = NoAttributes;
|
|
247
|
-
export type SubAttributes = NoAttributes;
|
|
248
|
-
export type SupAttributes = NoAttributes;
|
|
249
|
-
export type SAttributes = NoAttributes;
|
|
250
|
-
export type HrAttributes = NoAttributes;
|
|
251
|
-
export type VrAttributes = NoAttributes;
|
|
252
|
-
export {};
|
|
253
|
-
}
|
|
254
|
-
/**
|
|
255
|
-
* An escString or an HTML label.
|
|
256
|
-
*
|
|
257
|
-
* @see {@link https://graphviz.gitlab.io/docs/attr-types/lblString/ lblString}
|
|
258
|
-
* @group Attribute Types
|
|
259
|
-
*/
|
|
260
|
-
export type LblString = HTMLLikeLabel | EscString;
|
|
261
|
-
/**
|
|
262
|
-
* `"%f,%f('!')?"` representing the point (x,y).
|
|
263
|
-
*
|
|
264
|
-
* The optional `'!'` indicates the node position should not change (input-only).
|
|
265
|
-
*
|
|
266
|
-
* If dim=3, point may also have the format `"%f,%f,%f('!')?"` to represent the point (x,y,z).
|
|
267
|
-
* @group Attribute Types
|
|
268
|
-
*/
|
|
269
|
-
export type Point = Point.position | `${Point.position}!`;
|
|
270
|
-
/** @hidden */
|
|
271
|
-
export declare namespace Point {
|
|
272
|
-
type position = `${Double},${Double}` | `${Double},${Double},${Double}` | `${Double},${Double},${Double},${Double},${Double}` | `${Double},${Double},${Double},${Double},${Double},${Double}` | `${Double},${Double},${Double},${Double},${Double},${Double},${Double}` | `${Double},${Double},${Double},${Double},${Double},${Double},${Double},${Double}` | `${Double},${Double},${Double},${Double},${Double},${Double},${Double},${Double},${Double}` | `${Double},${Double},${Double},${Double},${Double},${Double},${Double},${Double},${Double},${number}`;
|
|
273
|
-
}
|
|
274
|
-
/**
|
|
275
|
-
* A point with an optional prefix `'+'`.
|
|
276
|
-
*
|
|
277
|
-
* @see {@link https://graphviz.gitlab.io/docs/attr-types/addPoint/ addPoint}
|
|
278
|
-
* @group Attribute Types
|
|
279
|
-
*/
|
|
280
|
-
export type AddPoint = `+${Point}`;
|
|
281
|
-
/**
|
|
282
|
-
* @see {@link https://graphviz.gitlab.io/docs/attr-types/pointList/ pointList}
|
|
283
|
-
* @group Attribute Types
|
|
284
|
-
*/
|
|
285
|
-
export type PointList = Point | `${Point} ${Point}` | `${Point} ${Point} ${Point}` | `${Point} ${Point} ${Point} ${Point}`;
|
|
286
|
-
/**
|
|
287
|
-
* These specify the order in which nodes and edges are drawn in concrete output.
|
|
288
|
-
*
|
|
289
|
-
* - The default `"breadthfirst"` is the simplest, but when the graph layout does not avoid edge-node overlap, this mode will sometimes have edges drawn over nodes and sometimes on top of nodes.
|
|
290
|
-
* - If the mode `"nodesfirst"` is chosen, all nodes are drawn first, followed by the edges. This guarantees an edge-node overlap will not be mistaken for an edge ending at a node.
|
|
291
|
-
* - On the other hand, usually for aesthetic reasons, it may be desirable that all edges appear beneath nodes, even if the resulting drawing is ambiguous. This can be achieved by choosing `"edgesfirst"`.
|
|
292
|
-
*
|
|
293
|
-
* @see {@link https://graphviz.gitlab.io/docs/attr-types/outputMode/ outputMode}
|
|
294
|
-
* @group Attribute Types
|
|
295
|
-
*/
|
|
296
|
-
export type OutputMode = OutputMode.values;
|
|
297
|
-
/** @hidden */
|
|
298
|
-
export declare namespace OutputMode {
|
|
299
|
-
type values = Exclude<keyof $values, keyof $exclude | symbol | number>;
|
|
300
|
-
interface $values extends $keywords<'breadthfirst' | 'nodesfirst' | 'edgesfirst'> {
|
|
301
|
-
}
|
|
302
|
-
interface $exclude extends $keywordsValidation {
|
|
303
|
-
}
|
|
304
|
-
}
|
|
305
|
-
/**
|
|
306
|
-
* @see {@link https://graphviz.org/docs/attr-types/packMode/ packMode}
|
|
307
|
-
* @group Attribute Types
|
|
308
|
-
*/
|
|
309
|
-
export type PackMode = keyof PickMode.$values | `array${string}`;
|
|
310
|
-
/** @hidden */
|
|
311
|
-
export declare namespace PickMode {
|
|
312
|
-
type values = Exclude<keyof $values, keyof $exclude | symbol | number>;
|
|
313
|
-
interface $values extends $keywords<'node' | 'clust' | 'graph'> {
|
|
314
|
-
}
|
|
315
|
-
interface $exclude extends $keywordsValidation {
|
|
316
|
-
}
|
|
317
|
-
}
|
|
318
|
-
/**
|
|
319
|
-
* Using `"fast"` gives about a 2-4 times overall speedup compared with `"normal"`,
|
|
320
|
-
* though layout quality can suffer a little.
|
|
321
|
-
*
|
|
322
|
-
* @see {@link https://graphviz.gitlab.io/docs/attr-types/quadType/ quadType}
|
|
323
|
-
* @group Attribute Types
|
|
324
|
-
*/
|
|
325
|
-
export type QuadType = QuadType.values;
|
|
326
|
-
/** @hidden */
|
|
327
|
-
export declare namespace QuadType {
|
|
328
|
-
type values = Exclude<keyof $values, keyof $exclude | symbol | number>;
|
|
329
|
-
interface $values extends $keywords<'normal' | 'fast' | 'none'> {
|
|
330
|
-
}
|
|
331
|
-
interface $exclude extends $keywordsValidation {
|
|
332
|
-
}
|
|
333
|
-
}
|
|
334
|
-
/**
|
|
335
|
-
* Rank Direction
|
|
336
|
-
*
|
|
337
|
-
* Corresponding to directed graphs drawn from top to bottom,
|
|
338
|
-
* from left to right, from bottom to top, and from right to left, respectively.
|
|
339
|
-
*
|
|
340
|
-
* @see {@link https://graphviz.gitlab.io/docs/attr-types/rankdir/ rankdir}
|
|
341
|
-
* @group Attribute Types
|
|
342
|
-
*/
|
|
343
|
-
export type Rankdir = 'TB' | 'BT' | 'LR' | 'RL';
|
|
344
|
-
/**
|
|
345
|
-
* @see {@link https://graphviz.gitlab.io/docs/attr-types/rankType/ rankType}
|
|
346
|
-
* @group Attribute Types
|
|
347
|
-
*/
|
|
348
|
-
export type RankType = RankType.values;
|
|
349
|
-
/** @hidden */
|
|
350
|
-
export declare namespace RankType {
|
|
351
|
-
type values = Exclude<keyof $values, keyof $exclude | symbol | number>;
|
|
352
|
-
interface $values extends $keywords<'same' | 'min' | 'source' | 'max' | 'sink'> {
|
|
353
|
-
}
|
|
354
|
-
interface $exclude extends $keywordsValidation {
|
|
355
|
-
}
|
|
356
|
-
}
|
|
357
|
-
/**
|
|
358
|
-
* Which rank to move floating (loose) nodes to
|
|
359
|
-
*
|
|
360
|
-
* Valid options:
|
|
361
|
-
* - "min": Move floating (loose) nodes to minimum rank.
|
|
362
|
-
* - "max": Move floating (loose) nodes to maximum rank.
|
|
363
|
-
* - Otherwise, floating nodes are placed anywhere.
|
|
364
|
-
*
|
|
365
|
-
* Despite the name TBbalance ("Top-Bottom Balance"), this also works with left-right ranks, e.g. rankdir=LR.
|
|
366
|
-
*
|
|
367
|
-
* @see {@link https://graphviz.org/docs/attrs/TBbalance/ TBbalance}
|
|
368
|
-
* @group Attribute Types
|
|
369
|
-
*/
|
|
370
|
-
export type TBbalanceType = TBbalanceType.values;
|
|
371
|
-
/** @hidden */
|
|
372
|
-
export declare namespace TBbalanceType {
|
|
373
|
-
type values = Exclude<keyof $values, keyof $exclude | symbol | number>;
|
|
374
|
-
interface $values extends $keywords<'min' | 'max'> {
|
|
375
|
-
}
|
|
376
|
-
interface $exclude extends $keywordsValidation {
|
|
377
|
-
}
|
|
378
|
-
}
|
|
379
|
-
/**
|
|
380
|
-
* `"%f,%f,%f,%f"`
|
|
381
|
-
*
|
|
382
|
-
* The rectangle `llx,lly,urx,ury` gives the coordinates, in points,
|
|
383
|
-
* of the lower-left corner `(llx,lly)` and the upper-right corner `(urx,ury)`.
|
|
384
|
-
*
|
|
385
|
-
* @see {@link https://graphviz.gitlab.io/docs/attr-types/rect/ rect}
|
|
386
|
-
* @group Attribute Types
|
|
387
|
-
*/
|
|
388
|
-
export type Rect = `${Double},${Double},${Double},${Double}`;
|
|
389
|
-
/**
|
|
390
|
-
* The examples above show a set of commonly used arrow shapes.
|
|
391
|
-
*
|
|
392
|
-
* There is a grammar of arrow shapes which can be used to describe a collection of 3,111,696 arrow
|
|
393
|
-
* combinations of the 42 variations of the primitive set of 11 arrows.
|
|
394
|
-
*
|
|
395
|
-
* @see {@link https://graphviz.org/docs/attr-types/arrowType/ arrowType}
|
|
396
|
-
* @group Attribute Types
|
|
397
|
-
*/
|
|
398
|
-
export type ArrowType = ArrowType.aname | `${ArrowType.aname}${ArrowType.aname}`;
|
|
399
|
-
/** @hidden */
|
|
400
|
-
export declare namespace ArrowType {
|
|
401
|
-
type shape = keyof $shape;
|
|
402
|
-
interface $shape extends $keywords<'box' | 'crow' | 'curve' | 'icurve' | 'diamond' | 'dot' | 'inv' | 'none' | 'normal' | 'tee' | 'vee'> {
|
|
403
|
-
}
|
|
404
|
-
type side = 'l' | 'r';
|
|
405
|
-
type modifiers = side | 'o' | `o${side}`;
|
|
406
|
-
type aname = shape | `${modifiers}${shape}`;
|
|
407
|
-
}
|
|
408
|
-
/**
|
|
409
|
-
* @see {@link https://graphviz.gitlab.io/docs/attr-types/clusterMode/ clusterMode}
|
|
410
|
-
* @group Attribute Types
|
|
411
|
-
*/
|
|
412
|
-
export type ClusterMode = ClusterMode.values;
|
|
413
|
-
export declare namespace ClusterMode {
|
|
414
|
-
type values = Exclude<keyof $values, keyof $exclude | symbol | number>;
|
|
415
|
-
interface $values extends $keywords<'local' | 'global' | 'none'> {
|
|
416
|
-
}
|
|
417
|
-
interface $exclude extends $keywordsValidation {
|
|
418
|
-
}
|
|
419
|
-
}
|
|
420
|
-
/**
|
|
421
|
-
* @see {@link https://graphviz.gitlab.io/docs/attr-types/color/ color}
|
|
422
|
-
* @group Attribute Types
|
|
423
|
-
*/
|
|
424
|
-
export type Color = Color.RGB_RGBA | Color.HSV | Color.ColorName | number;
|
|
425
|
-
/** @hidden */
|
|
426
|
-
export declare namespace Color {
|
|
427
|
-
/**
|
|
428
|
-
* `"#%2x%2x%2x"` Red-Green-Blue (RGB)
|
|
429
|
-
*
|
|
430
|
-
* `"#%2x%2x%2x%2x"` Red-Green-Blue-Alpha (RGBA)
|
|
431
|
-
* @note A type that is too complicated to express in TypeScript.
|
|
432
|
-
*/
|
|
433
|
-
type RGB_RGBA = `#${string}`;
|
|
434
|
-
/**
|
|
435
|
-
* Hue-Saturation-Value (HSV) 0.0 <= H,S,V <= 1.0
|
|
436
|
-
*/
|
|
437
|
-
type HSV = `${number}+${number}+${number}`;
|
|
438
|
-
/**
|
|
439
|
-
* Color names are resolved in the context of a color scheme.
|
|
440
|
-
*
|
|
441
|
-
* Graphviz currently supports the X11 scheme, the SVG scheme, and the Brewer schemes, with X11 being the default.
|
|
442
|
-
* @see {@link https://graphviz.org/doc/info/colors.html Color Names}
|
|
443
|
-
*/
|
|
444
|
-
type ColorName = Exclude<keyof $colors, keyof $exclude>;
|
|
445
|
-
interface $colors extends $keywords<'aliceblue' | 'antiquewhite' | 'antiquewhite1' | 'antiquewhite2' | 'antiquewhite3' | 'antiquewhite4' | 'aqua' | 'aquamarine' | 'aquamarine1' | 'aquamarine2' | 'aquamarine3' | 'aquamarine4' | 'azure' | 'azure1' | 'azure2' | 'azure3' | 'azure4' | 'beige' | 'bisque' | 'bisque1' | 'bisque2' | 'bisque3' | 'bisque4' | 'black' | 'blanchedalmond' | 'blue' | 'blue1' | 'blue2' | 'blue3' | 'blue4' | 'blueviolet' | 'brown' | 'brown1' | 'brown2' | 'brown3' | 'brown4' | 'burlywood' | 'burlywood1' | 'burlywood2' | 'burlywood3' | 'burlywood4' | 'cadetblue' | 'cadetblue1' | 'cadetblue2' | 'cadetblue3' | 'cadetblue4' | 'chartreuse' | 'chartreuse1' | 'chartreuse2' | 'chartreuse3' | 'chartreuse4' | 'chocolate' | 'chocolate1' | 'chocolate2' | 'chocolate3' | 'chocolate4' | 'coral' | 'coral1' | 'coral2' | 'coral3' | 'coral4' | 'cornflowerblue' | 'cornsilk' | 'cornsilk1' | 'cornsilk2' | 'cornsilk3' | 'cornsilk4' | 'crimson' | 'cyan' | 'cyan1' | 'cyan2' | 'cyan3' | 'cyan4' | 'darkblue' | 'darkcyan' | 'darkgoldenrod' | 'darkgoldenrod1' | 'darkgoldenrod2' | 'darkgoldenrod3' | 'darkgoldenrod4' | 'darkgray' | 'darkgreen' | 'darkgrey' | 'darkkhaki' | 'darkmagenta' | 'darkolivegreen' | 'darkolivegreen1' | 'darkolivegreen2' | 'darkolivegreen3' | 'darkolivegreen4' | 'darkorange' | 'darkorange1' | 'darkorange2' | 'darkorange3' | 'darkorange4' | 'darkorchid' | 'darkorchid1' | 'darkorchid2' | 'darkorchid3' | 'darkorchid4' | 'darkred' | 'darksalmon' | 'darkseagreen' | 'darkseagreen1' | 'darkseagreen2' | 'darkseagreen3' | 'darkseagreen4' | 'darkslateblue' | 'darkslategray' | 'darkslategray1' | 'darkslategray2' | 'darkslategray3' | 'darkslategray4' | 'darkslategrey' | 'darkturquoise' | 'darkviolet' | 'deeppink' | 'deeppink1' | 'deeppink2' | 'deeppink3' | 'deeppink4' | 'deepskyblue' | 'deepskyblue1' | 'deepskyblue2' | 'deepskyblue3' | 'deepskyblue4' | 'dimgray' | 'dimgrey' | 'dodgerblue' | 'dodgerblue1' | 'dodgerblue2' | 'dodgerblue3' | 'dodgerblue4' | 'firebrick' | 'firebrick1' | 'firebrick2' | 'firebrick3' | 'firebrick4' | 'floralwhite' | 'forestgreen' | 'fuchsia' | 'gainsboro' | 'ghostwhite' | 'gold' | 'gold1' | 'gold2' | 'gold3' | 'gold4' | 'goldenrod' | 'goldenrod1' | 'goldenrod2' | 'goldenrod3' | 'goldenrod4' | 'gray' | 'gray0' | 'gray1' | 'gray10' | 'gray100' | 'gray11' | 'gray12' | 'gray13' | 'gray14' | 'gray15' | 'gray16' | 'gray17' | 'gray18' | 'gray19' | 'gray2' | 'gray20' | 'gray21' | 'gray22' | 'gray23' | 'gray24' | 'gray25' | 'gray26' | 'gray27' | 'gray28' | 'gray29' | 'gray3' | 'gray30' | 'gray31' | 'gray32' | 'gray33' | 'gray34' | 'gray35' | 'gray36' | 'gray37' | 'gray38' | 'gray39' | 'gray4' | 'gray40' | 'gray41' | 'gray42' | 'gray43' | 'gray44' | 'gray45' | 'gray46' | 'gray47' | 'gray48' | 'gray49' | 'gray5' | 'gray50' | 'gray51' | 'gray52' | 'gray53' | 'gray54' | 'gray55' | 'gray56' | 'gray57' | 'gray58' | 'gray59' | 'gray6' | 'gray60' | 'gray61' | 'gray62' | 'gray63' | 'gray64' | 'gray65' | 'gray66' | 'gray67' | 'gray68' | 'gray69' | 'gray7' | 'gray70' | 'gray71' | 'gray72' | 'gray73' | 'gray74' | 'gray75' | 'gray76' | 'gray77' | 'gray78' | 'gray79' | 'gray8' | 'gray80' | 'gray81' | 'gray82' | 'gray83' | 'gray84' | 'gray85' | 'gray86' | 'gray87' | 'gray88' | 'gray89' | 'gray9' | 'gray90' | 'gray91' | 'gray92' | 'gray93' | 'gray94' | 'gray95' | 'gray96' | 'gray97' | 'gray98' | 'gray99' | 'green' | 'green1' | 'green2' | 'green3' | 'green4' | 'greenyellow' | 'grey' | 'grey0' | 'grey1' | 'grey10' | 'grey100' | 'grey11' | 'grey12' | 'grey13' | 'grey14' | 'grey15' | 'grey16' | 'grey17' | 'grey18' | 'grey19' | 'grey2' | 'grey20' | 'grey21' | 'grey22' | 'grey23' | 'grey24' | 'grey25' | 'grey26' | 'grey27' | 'grey28' | 'grey29' | 'grey3' | 'grey30' | 'grey31' | 'grey32' | 'grey33' | 'grey34' | 'grey35' | 'grey36' | 'grey37' | 'grey38' | 'grey39' | 'grey4' | 'grey40' | 'grey41' | 'grey42' | 'grey43' | 'grey44' | 'grey45' | 'grey46' | 'grey47' | 'grey48' | 'grey49' | 'grey5' | 'grey50' | 'grey51' | 'grey52' | 'grey53' | 'grey54' | 'grey55' | 'grey56' | 'grey57' | 'grey58' | 'grey59' | 'grey6' | 'grey60' | 'grey61' | 'grey62' | 'grey63' | 'grey64' | 'grey65' | 'grey66' | 'grey67' | 'grey68' | 'grey69' | 'grey7' | 'grey70' | 'grey71' | 'grey72' | 'grey73' | 'grey74' | 'grey75' | 'grey76' | 'grey77' | 'grey78' | 'grey79' | 'grey8' | 'grey80' | 'grey81' | 'grey82' | 'grey83' | 'grey84' | 'grey85' | 'grey86' | 'grey87' | 'grey88' | 'grey89' | 'grey9' | 'grey90' | 'grey91' | 'grey92' | 'grey93' | 'grey94' | 'grey95' | 'grey96' | 'grey97' | 'grey98' | 'grey99' | 'honeydew' | 'honeydew1' | 'honeydew2' | 'honeydew3' | 'honeydew4' | 'hotpink' | 'hotpink1' | 'hotpink2' | 'hotpink3' | 'hotpink4' | 'indianred' | 'indianred1' | 'indianred2' | 'indianred3' | 'indianred4' | 'indigo' | 'invis' | 'ivory' | 'ivory1' | 'ivory2' | 'ivory3' | 'ivory4' | 'khaki' | 'khaki1' | 'khaki2' | 'khaki3' | 'khaki4' | 'lavender' | 'lavenderblush' | 'lavenderblush1' | 'lavenderblush2' | 'lavenderblush3' | 'lavenderblush4' | 'lawngreen' | 'lemonchiffon' | 'lemonchiffon1' | 'lemonchiffon2' | 'lemonchiffon3' | 'lemonchiffon4' | 'lightblue' | 'lightblue1' | 'lightblue2' | 'lightblue3' | 'lightblue4' | 'lightcoral' | 'lightcyan' | 'lightcyan1' | 'lightcyan2' | 'lightcyan3' | 'lightcyan4' | 'lightgoldenrod' | 'lightgoldenrod1' | 'lightgoldenrod2' | 'lightgoldenrod3' | 'lightgoldenrod4' | 'lightgoldenrodyellow' | 'lightgray' | 'lightgreen' | 'lightgrey' | 'lightpink' | 'lightpink1' | 'lightpink2' | 'lightpink3' | 'lightpink4' | 'lightsalmon' | 'lightsalmon1' | 'lightsalmon2' | 'lightsalmon3' | 'lightsalmon4' | 'lightseagreen' | 'lightskyblue' | 'lightskyblue1' | 'lightskyblue2' | 'lightskyblue3' | 'lightskyblue4' | 'lightslateblue' | 'lightslategray' | 'lightslategrey' | 'lightsteelblue' | 'lightsteelblue1' | 'lightsteelblue2' | 'lightsteelblue3' | 'lightsteelblue4' | 'lightyellow' | 'lightyellow1' | 'lightyellow2' | 'lightyellow3' | 'lightyellow4' | 'lime' | 'limegreen' | 'linen' | 'magenta' | 'magenta1' | 'magenta2' | 'magenta3' | 'magenta4' | 'maroon' | 'maroon1' | 'maroon2' | 'maroon3' | 'maroon4' | 'mediumaquamarine' | 'mediumblue' | 'mediumorchid' | 'mediumorchid1' | 'mediumorchid2' | 'mediumorchid3' | 'mediumorchid4' | 'mediumpurple' | 'mediumpurple1' | 'mediumpurple2' | 'mediumpurple3' | 'mediumpurple4' | 'mediumseagreen' | 'mediumslateblue' | 'mediumspringgreen' | 'mediumturquoise' | 'mediumvioletred' | 'midnightblue' | 'mintcream' | 'mistyrose' | 'mistyrose1' | 'mistyrose2' | 'mistyrose3' | 'mistyrose4' | 'moccasin' | 'navajowhite' | 'navajowhite1' | 'navajowhite2' | 'navajowhite3' | 'navajowhite4' | 'navy' | 'navyblue' | 'none' | 'oldlace' | 'olive' | 'olivedrab' | 'olivedrab1' | 'olivedrab2' | 'olivedrab3' | 'olivedrab4' | 'orange' | 'orange1' | 'orange2' | 'orange3' | 'orange4' | 'orangered' | 'orangered1' | 'orangered2' | 'orangered3' | 'orangered4' | 'orchid' | 'orchid1' | 'orchid2' | 'orchid3' | 'orchid4' | 'palegoldenrod' | 'palegreen' | 'palegreen1' | 'palegreen2' | 'palegreen3' | 'palegreen4' | 'paleturquoise' | 'paleturquoise1' | 'paleturquoise2' | 'paleturquoise3' | 'paleturquoise4' | 'palevioletred' | 'palevioletred1' | 'palevioletred2' | 'palevioletred3' | 'palevioletred4' | 'papayawhip' | 'peachpuff' | 'peachpuff1' | 'peachpuff2' | 'peachpuff3' | 'peachpuff4' | 'peru' | 'pink' | 'pink1' | 'pink2' | 'pink3' | 'pink4' | 'plum' | 'plum1' | 'plum2' | 'plum3' | 'plum4' | 'powderblue' | 'purple' | 'purple1' | 'purple2' | 'purple3' | 'purple4' | 'rebeccapurple' | 'red' | 'red1' | 'red2' | 'red3' | 'red4' | 'rosybrown' | 'rosybrown1' | 'rosybrown2' | 'rosybrown3' | 'rosybrown4' | 'royalblue' | 'royalblue1' | 'royalblue2' | 'royalblue3' | 'royalblue4' | 'saddlebrown' | 'salmon' | 'salmon1' | 'salmon2' | 'salmon3' | 'salmon4' | 'sandybrown' | 'seagreen' | 'seagreen1' | 'seagreen2' | 'seagreen3' | 'seagreen4' | 'seashell' | 'seashell1' | 'seashell2' | 'seashell3' | 'seashell4' | 'sienna' | 'sienna1' | 'sienna2' | 'sienna3' | 'sienna4' | 'silver' | 'skyblue' | 'skyblue1' | 'skyblue2' | 'skyblue3' | 'skyblue4' | 'slateblue' | 'slateblue1' | 'slateblue2' | 'slateblue3' | 'slateblue4' | 'slategray' | 'slategray1' | 'slategray2' | 'slategray3' | 'slategray4' | 'slategrey' | 'snow' | 'snow1' | 'snow2' | 'snow3' | 'snow4' | 'springgreen' | 'springgreen1' | 'springgreen2' | 'springgreen3' | 'springgreen4' | 'steelblue' | 'steelblue1' | 'steelblue2' | 'steelblue3' | 'steelblue4' | 'tan' | 'tan1' | 'tan2' | 'tan3' | 'tan4' | 'teal' | 'thistle' | 'thistle1' | 'thistle2' | 'thistle3' | 'thistle4' | 'tomato' | 'tomato1' | 'tomato2' | 'tomato3' | 'tomato4' | 'transparent' | 'turquoise' | 'turquoise1' | 'turquoise2' | 'turquoise3' | 'turquoise4' | 'violet' | 'violetred' | 'violetred1' | 'violetred2' | 'violetred3' | 'violetred4' | 'webgray' | 'webgreen' | 'webgrey' | 'webmaroon' | 'webpurple' | 'wheat' | 'wheat1' | 'wheat2' | 'wheat3' | 'wheat4' | 'white' | 'whitesmoke' | 'x11gray' | 'x11green' | 'x11grey' | 'x11maroon' | 'x11purple' | 'yellow' | 'yellow1' | 'yellow2' | 'yellow3' | 'yellow4' | 'yellowgreen' | 'aliceblue' | 'antiquewhite' | 'aqua' | 'aquamarine' | 'azure' | 'beige' | 'bisque' | 'black' | 'blanchedalmond' | 'blue' | 'blueviolet' | 'brown' | 'burlywood' | 'cadetblue' | 'chartreuse' | 'chocolate' | 'coral' | 'cornflowerblue' | 'cornsilk' | 'crimson' | 'cyan' | 'darkblue' | 'darkcyan' | 'darkgoldenrod' | 'darkgray' | 'darkgreen' | 'darkgrey' | 'darkkhaki' | 'darkmagenta' | 'darkolivegreen' | 'darkorange' | 'darkorchid' | 'darkred' | 'darksalmon' | 'darkseagreen' | 'darkslateblue' | 'darkslategray' | 'darkslategrey' | 'darkturquoise' | 'darkviolet' | 'deeppink' | 'deepskyblue' | 'dimgray' | 'dimgrey' | 'dodgerblue' | 'firebrick' | 'floralwhite' | 'forestgreen' | 'fuchsia' | 'gainsboro' | 'ghostwhite' | 'gold' | 'goldenrod' | 'gray' | 'grey' | 'green' | 'greenyellow' | 'honeydew' | 'hotpink' | 'indianred' | 'indigo' | 'ivory' | 'khaki' | 'lavender' | 'lavenderblush' | 'lawngreen' | 'lemonchiffon' | 'lightblue' | 'lightcoral' | 'lightcyan' | 'lightgoldenrodyellow' | 'lightgray' | 'lightgreen' | 'lightgrey' | 'lightpink' | 'lightsalmon' | 'lightseagreen' | 'lightskyblue' | 'lightslategray' | 'lightslategrey' | 'lightsteelblue' | 'lightyellow' | 'lime' | 'limegreen' | 'linen' | 'magenta' | 'maroon' | 'mediumaquamarine' | 'mediumblue' | 'mediumorchid' | 'mediumpurple' | 'mediumseagreen' | 'mediumslateblue' | 'mediumspringgreen' | 'mediumturquoise' | 'mediumvioletred' | 'midnightblue' | 'mintcream' | 'mistyrose' | 'moccasin' | 'navajowhite' | 'navy' | 'oldlace' | 'olive' | 'olivedrab' | 'orange' | 'orangered' | 'orchid' | 'palegoldenrod' | 'palegreen' | 'paleturquoise' | 'palevioletred' | 'papayawhip' | 'peachpuff' | 'peru' | 'pink' | 'plum' | 'powderblue' | 'purple' | 'red' | 'rosybrown' | 'royalblue' | 'saddlebrown' | 'salmon' | 'sandybrown' | 'seagreen' | 'seashell' | 'sienna' | 'silver' | 'skyblue' | 'slateblue' | 'slategray' | 'slategrey' | 'snow' | 'springgreen' | 'steelblue' | 'tan' | 'teal' | 'thistle' | 'tomato' | 'turquoise' | 'violet' | 'wheat' | 'white' | 'whitesmoke' | 'yellow' | 'yellowgreen'> {
|
|
446
|
-
}
|
|
447
|
-
interface $exclude extends $keywordsValidation {
|
|
448
|
-
}
|
|
449
|
-
}
|
|
450
|
-
/**
|
|
451
|
-
* A colon-separated list of weighted color values: WC(:WC)* where each WC has the form C(;F)? with C a color value and the optional F a floating-point number, 0 ≤ F ≤ 1.
|
|
452
|
-
*
|
|
453
|
-
* The sum of the floating-point numbers in a colorList must sum to at most 1.
|
|
454
|
-
*
|
|
455
|
-
* @note A type that is too complicated to express in TypeScript.
|
|
456
|
-
*
|
|
457
|
-
* @see {@link https://graphviz.gitlab.io/docs/attr-types/colorList/}
|
|
458
|
-
* @group Attribute Types
|
|
459
|
-
*/
|
|
460
|
-
export type ColorList = string;
|
|
461
|
-
/**
|
|
462
|
-
* Direction Type
|
|
463
|
-
*
|
|
464
|
-
* @see {@link https://graphviz.gitlab.io/docs/attr-types/dirType/ dirType}
|
|
465
|
-
* @group Attribute Types
|
|
466
|
-
*/
|
|
467
|
-
export type DirType = DirType.values;
|
|
468
|
-
/** @hidden */
|
|
469
|
-
export declare namespace DirType {
|
|
470
|
-
type values = Exclude<keyof $values, keyof $exclude | symbol | number>;
|
|
471
|
-
interface $values extends $keywords<'forward' | 'back' | 'both' | 'none'> {
|
|
472
|
-
}
|
|
473
|
-
interface $exclude extends $keywordsValidation {
|
|
474
|
-
}
|
|
475
|
-
}
|
|
476
|
-
export declare namespace Side {
|
|
477
|
-
type T = 'T';
|
|
478
|
-
type B = 'B';
|
|
479
|
-
type R = 'R';
|
|
480
|
-
type L = 'L';
|
|
481
|
-
type Combinations = T | B | R | L | `${T}${B}` | `${T}${R}` | `${T}${L}` | `${B}${R}` | `${B}${L}` | `${R}${L}` | `${T}${B}${R}` | `${T}${B}${L}` | `${T}${R}${L}` | `${B}${R}${L}` | `${T}${B}${R}${L}`;
|
|
482
|
-
}
|
|
483
|
-
/**
|
|
484
|
-
* Page Direction
|
|
485
|
-
*
|
|
486
|
-
* @see {@link https://graphviz.org/docs/attr-types/pagedir/ pagedir}
|
|
487
|
-
* @group Attribute Types
|
|
488
|
-
*/
|
|
489
|
-
export type Pagedir = `${Pagedir.TB}${Pagedir.RL}`;
|
|
490
|
-
/** @hidden */
|
|
491
|
-
export declare namespace Pagedir {
|
|
492
|
-
type TB = Side.T | Side.B;
|
|
493
|
-
type RL = Side.R | Side.L;
|
|
494
|
-
}
|