@algomotion/spec 0.0.0-stage → 1.0.0-alpha.1

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 (97) hide show
  1. package/LICENSE +675 -0
  2. package/dist/.tsbuildinfo +1 -0
  3. package/dist/common.d.ts +136 -0
  4. package/dist/common.d.ts.map +1 -0
  5. package/dist/common.js +181 -0
  6. package/dist/common.js.map +1 -0
  7. package/dist/errors.d.ts +71 -0
  8. package/dist/errors.d.ts.map +1 -0
  9. package/dist/errors.js +43 -0
  10. package/dist/errors.js.map +1 -0
  11. package/dist/index.d.ts +10 -0
  12. package/dist/index.d.ts.map +1 -0
  13. package/dist/index.js +10 -0
  14. package/dist/index.js.map +1 -0
  15. package/dist/json-schema.d.ts +3 -0
  16. package/dist/json-schema.d.ts.map +1 -0
  17. package/dist/json-schema.js +16 -0
  18. package/dist/json-schema.js.map +1 -0
  19. package/dist/kinds/array.d.ts +171 -0
  20. package/dist/kinds/array.d.ts.map +1 -0
  21. package/dist/kinds/array.js +179 -0
  22. package/dist/kinds/array.js.map +1 -0
  23. package/dist/kinds/btree.d.ts +190 -0
  24. package/dist/kinds/btree.d.ts.map +1 -0
  25. package/dist/kinds/btree.js +274 -0
  26. package/dist/kinds/btree.js.map +1 -0
  27. package/dist/kinds/graph.d.ts +227 -0
  28. package/dist/kinds/graph.d.ts.map +1 -0
  29. package/dist/kinds/graph.js +229 -0
  30. package/dist/kinds/graph.js.map +1 -0
  31. package/dist/kinds/hash-table.d.ts +108 -0
  32. package/dist/kinds/hash-table.d.ts.map +1 -0
  33. package/dist/kinds/hash-table.js +133 -0
  34. package/dist/kinds/hash-table.js.map +1 -0
  35. package/dist/kinds/index.d.ts +98 -0
  36. package/dist/kinds/index.d.ts.map +1 -0
  37. package/dist/kinds/index.js +53 -0
  38. package/dist/kinds/index.js.map +1 -0
  39. package/dist/kinds/kind.d.ts +73 -0
  40. package/dist/kinds/kind.d.ts.map +1 -0
  41. package/dist/kinds/kind.js +4 -0
  42. package/dist/kinds/kind.js.map +1 -0
  43. package/dist/kinds/linear.d.ts +24 -0
  44. package/dist/kinds/linear.d.ts.map +1 -0
  45. package/dist/kinds/linear.js +26 -0
  46. package/dist/kinds/linear.js.map +1 -0
  47. package/dist/kinds/linked-list.d.ts +132 -0
  48. package/dist/kinds/linked-list.d.ts.map +1 -0
  49. package/dist/kinds/linked-list.js +95 -0
  50. package/dist/kinds/linked-list.js.map +1 -0
  51. package/dist/kinds/plane.d.ts +190 -0
  52. package/dist/kinds/plane.d.ts.map +1 -0
  53. package/dist/kinds/plane.js +206 -0
  54. package/dist/kinds/plane.js.map +1 -0
  55. package/dist/kinds/priority-queue.d.ts +120 -0
  56. package/dist/kinds/priority-queue.d.ts.map +1 -0
  57. package/dist/kinds/priority-queue.js +108 -0
  58. package/dist/kinds/priority-queue.js.map +1 -0
  59. package/dist/kinds/queue.d.ts +94 -0
  60. package/dist/kinds/queue.d.ts.map +1 -0
  61. package/dist/kinds/queue.js +59 -0
  62. package/dist/kinds/queue.js.map +1 -0
  63. package/dist/kinds/stack.d.ts +70 -0
  64. package/dist/kinds/stack.d.ts.map +1 -0
  65. package/dist/kinds/stack.js +50 -0
  66. package/dist/kinds/stack.js.map +1 -0
  67. package/dist/kinds/table.d.ts +65 -0
  68. package/dist/kinds/table.d.ts.map +1 -0
  69. package/dist/kinds/table.js +116 -0
  70. package/dist/kinds/table.js.map +1 -0
  71. package/dist/kinds/tree.d.ts +272 -0
  72. package/dist/kinds/tree.d.ts.map +1 -0
  73. package/dist/kinds/tree.js +380 -0
  74. package/dist/kinds/tree.js.map +1 -0
  75. package/dist/parse.d.ts +26 -0
  76. package/dist/parse.d.ts.map +1 -0
  77. package/dist/parse.js +380 -0
  78. package/dist/parse.js.map +1 -0
  79. package/dist/result.d.ts +16 -0
  80. package/dist/result.d.ts.map +1 -0
  81. package/dist/result.js +3 -0
  82. package/dist/result.js.map +1 -0
  83. package/dist/share.d.ts +68 -0
  84. package/dist/share.d.ts.map +1 -0
  85. package/dist/share.js +319 -0
  86. package/dist/share.js.map +1 -0
  87. package/dist/version.d.ts +108 -0
  88. package/dist/version.d.ts.map +1 -0
  89. package/dist/version.js +167 -0
  90. package/dist/version.js.map +1 -0
  91. package/dist/visualization.d.ts +3591 -0
  92. package/dist/visualization.d.ts.map +1 -0
  93. package/dist/visualization.js +131 -0
  94. package/dist/visualization.js.map +1 -0
  95. package/package.json +45 -4
  96. package/schema/visualization.schema.json +5717 -0
  97. package/README.md +0 -3
@@ -0,0 +1,3591 @@
1
+ /**
2
+ * Top-level document schemas.
3
+ *
4
+ * Two forms exist (ADR 0007):
5
+ * - `VisualizationInput` is what people and LLMs write; it allows shorthands.
6
+ * - `Visualization` is the canonical form that `parseVisualization` returns
7
+ * and that renderers consume.
8
+ */
9
+ import { z } from 'zod';
10
+ /** Any built-in action in canonical form, tagged with its structure. */
11
+ export declare const TargetedAction: z.ZodUnion<readonly [z.ZodDiscriminatedUnion<[z.ZodObject<{
12
+ type: z.ZodLiteral<"set">;
13
+ index: z.ZodInt;
14
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
15
+ } & {
16
+ target: z.ZodString;
17
+ }, z.core.$strict>, z.ZodObject<{
18
+ type: z.ZodLiteral<"swap">;
19
+ i: z.ZodInt;
20
+ j: z.ZodInt;
21
+ } & {
22
+ target: z.ZodString;
23
+ }, z.core.$strict>, z.ZodObject<{
24
+ type: z.ZodLiteral<"insert">;
25
+ index: z.ZodInt;
26
+ element: z.ZodObject<{
27
+ id: z.ZodString;
28
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
29
+ }, z.core.$strict>;
30
+ } & {
31
+ target: z.ZodString;
32
+ }, z.core.$strict>, z.ZodObject<{
33
+ type: z.ZodLiteral<"remove">;
34
+ index: z.ZodInt;
35
+ } & {
36
+ target: z.ZodString;
37
+ }, z.core.$strict>, z.ZodObject<{
38
+ type: z.ZodLiteral<"compare">;
39
+ i: z.ZodInt;
40
+ j: z.ZodInt;
41
+ } & {
42
+ target: z.ZodString;
43
+ }, z.core.$strict>, z.ZodObject<{
44
+ type: z.ZodLiteral<"highlight">;
45
+ indices: z.ZodArray<z.ZodInt>;
46
+ } & {
47
+ target: z.ZodString;
48
+ }, z.core.$strict>, z.ZodObject<{
49
+ type: z.ZodLiteral<"pointer">;
50
+ name: z.ZodString;
51
+ index: z.ZodNullable<z.ZodInt>;
52
+ } & {
53
+ target: z.ZodString;
54
+ }, z.core.$strict>, z.ZodObject<{
55
+ type: z.ZodLiteral<"settle">;
56
+ index: z.ZodInt;
57
+ } & {
58
+ target: z.ZodString;
59
+ }, z.core.$strict>, z.ZodObject<{
60
+ type: z.ZodLiteral<"align">;
61
+ shift: z.ZodInt;
62
+ matched: z.ZodOptional<z.ZodInt>;
63
+ } & {
64
+ target: z.ZodString;
65
+ }, z.core.$strict>, z.ZodObject<{
66
+ type: z.ZodLiteral<"check">;
67
+ j: z.ZodInt;
68
+ } & {
69
+ target: z.ZodString;
70
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
71
+ type: z.ZodLiteral<"push">;
72
+ element: z.ZodObject<{
73
+ id: z.ZodString;
74
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
75
+ }, z.core.$strict>;
76
+ } & {
77
+ target: z.ZodString;
78
+ }, z.core.$strict>, z.ZodObject<{
79
+ type: z.ZodLiteral<"pop">;
80
+ } & {
81
+ target: z.ZodString;
82
+ }, z.core.$strict>, z.ZodObject<{
83
+ type: z.ZodLiteral<"peek">;
84
+ } & {
85
+ target: z.ZodString;
86
+ }, z.core.$strict>, z.ZodObject<{
87
+ type: z.ZodLiteral<"highlight">;
88
+ indices: z.ZodArray<z.ZodInt>;
89
+ } & {
90
+ target: z.ZodString;
91
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
92
+ type: z.ZodLiteral<"enqueue">;
93
+ element: z.ZodObject<{
94
+ id: z.ZodString;
95
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
96
+ }, z.core.$strict>;
97
+ } & {
98
+ target: z.ZodString;
99
+ }, z.core.$strict>, z.ZodObject<{
100
+ type: z.ZodLiteral<"dequeue">;
101
+ } & {
102
+ target: z.ZodString;
103
+ }, z.core.$strict>, z.ZodObject<{
104
+ type: z.ZodLiteral<"pushFront">;
105
+ element: z.ZodObject<{
106
+ id: z.ZodString;
107
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
108
+ }, z.core.$strict>;
109
+ } & {
110
+ target: z.ZodString;
111
+ }, z.core.$strict>, z.ZodObject<{
112
+ type: z.ZodLiteral<"popBack">;
113
+ } & {
114
+ target: z.ZodString;
115
+ }, z.core.$strict>, z.ZodObject<{
116
+ type: z.ZodLiteral<"peek">;
117
+ end: z.ZodOptional<z.ZodEnum<{
118
+ front: "front";
119
+ back: "back";
120
+ }>>;
121
+ } & {
122
+ target: z.ZodString;
123
+ }, z.core.$strict>, z.ZodObject<{
124
+ type: z.ZodLiteral<"highlight">;
125
+ indices: z.ZodArray<z.ZodInt>;
126
+ } & {
127
+ target: z.ZodString;
128
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
129
+ type: z.ZodLiteral<"insert">;
130
+ index: z.ZodInt;
131
+ element: z.ZodObject<{
132
+ id: z.ZodString;
133
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
134
+ }, z.core.$strict>;
135
+ } & {
136
+ target: z.ZodString;
137
+ }, z.core.$strict>, z.ZodObject<{
138
+ type: z.ZodLiteral<"remove">;
139
+ index: z.ZodInt;
140
+ } & {
141
+ target: z.ZodString;
142
+ }, z.core.$strict>, z.ZodObject<{
143
+ type: z.ZodLiteral<"set">;
144
+ index: z.ZodInt;
145
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
146
+ } & {
147
+ target: z.ZodString;
148
+ }, z.core.$strict>, z.ZodObject<{
149
+ type: z.ZodLiteral<"move">;
150
+ from: z.ZodInt;
151
+ to: z.ZodInt;
152
+ } & {
153
+ target: z.ZodString;
154
+ }, z.core.$strict>, z.ZodObject<{
155
+ type: z.ZodLiteral<"link">;
156
+ from: z.ZodInt;
157
+ to: z.ZodNullable<z.ZodInt>;
158
+ field: z.ZodOptional<z.ZodEnum<{
159
+ next: "next";
160
+ prev: "prev";
161
+ }>>;
162
+ } & {
163
+ target: z.ZodString;
164
+ }, z.core.$strict>, z.ZodObject<{
165
+ type: z.ZodLiteral<"pointer">;
166
+ name: z.ZodString;
167
+ index: z.ZodNullable<z.ZodInt>;
168
+ } & {
169
+ target: z.ZodString;
170
+ }, z.core.$strict>, z.ZodObject<{
171
+ type: z.ZodLiteral<"highlight">;
172
+ indices: z.ZodArray<z.ZodInt>;
173
+ } & {
174
+ target: z.ZodString;
175
+ }, z.core.$strict>, z.ZodObject<{
176
+ type: z.ZodLiteral<"visit">;
177
+ index: z.ZodInt;
178
+ } & {
179
+ target: z.ZodString;
180
+ }, z.core.$strict>, z.ZodObject<{
181
+ type: z.ZodLiteral<"settle">;
182
+ index: z.ZodInt;
183
+ } & {
184
+ target: z.ZodString;
185
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
186
+ slot: z.ZodOptional<z.ZodInt>;
187
+ type: z.ZodLiteral<"addNode">;
188
+ node: z.ZodObject<{
189
+ id: z.ZodString;
190
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
191
+ color: z.ZodOptional<z.ZodEnum<{
192
+ red: "red";
193
+ black: "black";
194
+ }>>;
195
+ }, z.core.$strict>;
196
+ parent: z.ZodNullable<z.ZodString>;
197
+ } & {
198
+ target: z.ZodString;
199
+ }, z.core.$strict>, z.ZodObject<{
200
+ type: z.ZodLiteral<"removeNode">;
201
+ node: z.ZodString;
202
+ } & {
203
+ target: z.ZodString;
204
+ }, z.core.$strict>, z.ZodObject<{
205
+ slot: z.ZodOptional<z.ZodInt>;
206
+ type: z.ZodLiteral<"setChild">;
207
+ parent: z.ZodString;
208
+ child: z.ZodNullable<z.ZodString>;
209
+ } & {
210
+ target: z.ZodString;
211
+ }, z.core.$strict>, z.ZodObject<{
212
+ type: z.ZodLiteral<"detach">;
213
+ node: z.ZodString;
214
+ slot: z.ZodOptional<z.ZodInt>;
215
+ } & {
216
+ target: z.ZodString;
217
+ }, z.core.$strict>, z.ZodObject<{
218
+ type: z.ZodLiteral<"rotate">;
219
+ node: z.ZodString;
220
+ direction: z.ZodEnum<{
221
+ left: "left";
222
+ right: "right";
223
+ }>;
224
+ } & {
225
+ target: z.ZodString;
226
+ }, z.core.$strict>, z.ZodObject<{
227
+ type: z.ZodLiteral<"setValue">;
228
+ node: z.ZodString;
229
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
230
+ } & {
231
+ target: z.ZodString;
232
+ }, z.core.$strict>, z.ZodObject<{
233
+ type: z.ZodLiteral<"swapValues">;
234
+ a: z.ZodString;
235
+ b: z.ZodString;
236
+ } & {
237
+ target: z.ZodString;
238
+ }, z.core.$strict>, z.ZodObject<{
239
+ type: z.ZodLiteral<"setColor">;
240
+ node: z.ZodString;
241
+ color: z.ZodNullable<z.ZodEnum<{
242
+ red: "red";
243
+ black: "black";
244
+ }>>;
245
+ } & {
246
+ target: z.ZodString;
247
+ }, z.core.$strict>, z.ZodObject<{
248
+ type: z.ZodLiteral<"highlight">;
249
+ nodes: z.ZodArray<z.ZodString>;
250
+ } & {
251
+ target: z.ZodString;
252
+ }, z.core.$strict>, z.ZodObject<{
253
+ type: z.ZodLiteral<"compare">;
254
+ a: z.ZodString;
255
+ b: z.ZodString;
256
+ } & {
257
+ target: z.ZodString;
258
+ }, z.core.$strict>, z.ZodObject<{
259
+ type: z.ZodLiteral<"visit">;
260
+ node: z.ZodString;
261
+ } & {
262
+ target: z.ZodString;
263
+ }, z.core.$strict>, z.ZodObject<{
264
+ type: z.ZodLiteral<"settle">;
265
+ node: z.ZodString;
266
+ } & {
267
+ target: z.ZodString;
268
+ }, z.core.$strict>, z.ZodObject<{
269
+ type: z.ZodLiteral<"group">;
270
+ node: z.ZodString;
271
+ group: z.ZodNullable<z.ZodLiteral<0 | 1 | 4 | 2 | 3 | 5>>;
272
+ } & {
273
+ target: z.ZodString;
274
+ }, z.core.$strict>, z.ZodObject<{
275
+ type: z.ZodLiteral<"pointer">;
276
+ name: z.ZodString;
277
+ node: z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
278
+ parent: z.ZodString;
279
+ slot: z.ZodInt;
280
+ }, z.core.$strict>]>>;
281
+ } & {
282
+ target: z.ZodString;
283
+ }, z.core.$strict>, z.ZodObject<{
284
+ type: z.ZodLiteral<"annotate">;
285
+ node: z.ZodString;
286
+ text: z.ZodNullable<z.ZodString>;
287
+ field: z.ZodOptional<z.ZodString>;
288
+ } & {
289
+ target: z.ZodString;
290
+ }, z.core.$strict>, z.ZodObject<{
291
+ type: z.ZodLiteral<"markEdge">;
292
+ node: z.ZodString;
293
+ mark: z.ZodNullable<z.ZodEnum<{
294
+ selected: "selected";
295
+ rejected: "rejected";
296
+ }>>;
297
+ } & {
298
+ target: z.ZodString;
299
+ }, z.core.$strict>, z.ZodObject<{
300
+ type: z.ZodLiteral<"labelEdge">;
301
+ node: z.ZodString;
302
+ label: z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
303
+ } & {
304
+ target: z.ZodString;
305
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
306
+ type: z.ZodLiteral<"addNode">;
307
+ node: z.ZodObject<{
308
+ id: z.ZodString;
309
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
310
+ x: z.ZodOptional<z.ZodNumber>;
311
+ y: z.ZodOptional<z.ZodNumber>;
312
+ }, z.core.$strict>;
313
+ } & {
314
+ target: z.ZodString;
315
+ }, z.core.$strict>, z.ZodObject<{
316
+ type: z.ZodLiteral<"removeNode">;
317
+ node: z.ZodString;
318
+ } & {
319
+ target: z.ZodString;
320
+ }, z.core.$strict>, z.ZodObject<{
321
+ type: z.ZodLiteral<"setValue">;
322
+ node: z.ZodString;
323
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
324
+ } & {
325
+ target: z.ZodString;
326
+ }, z.core.$strict>, z.ZodObject<{
327
+ type: z.ZodLiteral<"addEdge">;
328
+ edge: z.ZodObject<{
329
+ id: z.ZodString;
330
+ from: z.ZodString;
331
+ to: z.ZodString;
332
+ weight: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>;
333
+ }, z.core.$strict>;
334
+ } & {
335
+ target: z.ZodString;
336
+ }, z.core.$strict>, z.ZodObject<{
337
+ type: z.ZodLiteral<"removeEdge">;
338
+ edge: z.ZodString;
339
+ } & {
340
+ target: z.ZodString;
341
+ }, z.core.$strict>, z.ZodObject<{
342
+ type: z.ZodLiteral<"setWeight">;
343
+ edge: z.ZodString;
344
+ weight: z.ZodNullable<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>;
345
+ } & {
346
+ target: z.ZodString;
347
+ }, z.core.$strict>, z.ZodObject<{
348
+ type: z.ZodLiteral<"highlight">;
349
+ nodes: z.ZodOptional<z.ZodArray<z.ZodString>>;
350
+ edges: z.ZodOptional<z.ZodArray<z.ZodString>>;
351
+ } & {
352
+ target: z.ZodString;
353
+ }, z.core.$strict>, z.ZodObject<{
354
+ type: z.ZodLiteral<"visit">;
355
+ node: z.ZodString;
356
+ } & {
357
+ target: z.ZodString;
358
+ }, z.core.$strict>, z.ZodObject<{
359
+ type: z.ZodLiteral<"settle">;
360
+ node: z.ZodString;
361
+ } & {
362
+ target: z.ZodString;
363
+ }, z.core.$strict>, z.ZodObject<{
364
+ type: z.ZodLiteral<"group">;
365
+ node: z.ZodString;
366
+ group: z.ZodNullable<z.ZodLiteral<0 | 1 | 4 | 2 | 3 | 5>>;
367
+ } & {
368
+ target: z.ZodString;
369
+ }, z.core.$strict>, z.ZodObject<{
370
+ type: z.ZodLiteral<"pointer">;
371
+ name: z.ZodString;
372
+ node: z.ZodNullable<z.ZodString>;
373
+ } & {
374
+ target: z.ZodString;
375
+ }, z.core.$strict>, z.ZodObject<{
376
+ type: z.ZodLiteral<"annotate">;
377
+ node: z.ZodString;
378
+ text: z.ZodNullable<z.ZodString>;
379
+ } & {
380
+ target: z.ZodString;
381
+ }, z.core.$strict>, z.ZodObject<{
382
+ type: z.ZodLiteral<"markEdge">;
383
+ edge: z.ZodString;
384
+ mark: z.ZodNullable<z.ZodEnum<{
385
+ selected: "selected";
386
+ rejected: "rejected";
387
+ }>>;
388
+ } & {
389
+ target: z.ZodString;
390
+ }, z.core.$strict>, z.ZodObject<{
391
+ type: z.ZodLiteral<"resetMarks">;
392
+ } & {
393
+ target: z.ZodString;
394
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
395
+ type: z.ZodLiteral<"set">;
396
+ cell: z.ZodTuple<[z.ZodInt, z.ZodInt], null>;
397
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
398
+ } & {
399
+ target: z.ZodString;
400
+ }, z.core.$strict>, z.ZodObject<{
401
+ type: z.ZodLiteral<"highlight">;
402
+ cells: z.ZodArray<z.ZodTuple<[z.ZodInt, z.ZodInt], null>>;
403
+ } & {
404
+ target: z.ZodString;
405
+ }, z.core.$strict>, z.ZodObject<{
406
+ type: z.ZodLiteral<"depend">;
407
+ cell: z.ZodTuple<[z.ZodInt, z.ZodInt], null>;
408
+ on: z.ZodArray<z.ZodTuple<[z.ZodInt, z.ZodInt], null>>;
409
+ } & {
410
+ target: z.ZodString;
411
+ }, z.core.$strict>, z.ZodObject<{
412
+ type: z.ZodLiteral<"settle">;
413
+ cells: z.ZodArray<z.ZodTuple<[z.ZodInt, z.ZodInt], null>>;
414
+ } & {
415
+ target: z.ZodString;
416
+ }, z.core.$strict>, z.ZodObject<{
417
+ type: z.ZodLiteral<"resetMarks">;
418
+ } & {
419
+ target: z.ZodString;
420
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
421
+ type: z.ZodLiteral<"insert">;
422
+ bucket: z.ZodInt;
423
+ element: z.ZodObject<{
424
+ id: z.ZodString;
425
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
426
+ }, z.core.$strict>;
427
+ index: z.ZodOptional<z.ZodInt>;
428
+ } & {
429
+ target: z.ZodString;
430
+ }, z.core.$strict>, z.ZodObject<{
431
+ type: z.ZodLiteral<"remove">;
432
+ bucket: z.ZodInt;
433
+ index: z.ZodInt;
434
+ } & {
435
+ target: z.ZodString;
436
+ }, z.core.$strict>, z.ZodObject<{
437
+ type: z.ZodLiteral<"set">;
438
+ bucket: z.ZodInt;
439
+ index: z.ZodInt;
440
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
441
+ } & {
442
+ target: z.ZodString;
443
+ }, z.core.$strict>, z.ZodObject<{
444
+ type: z.ZodLiteral<"highlight">;
445
+ bucket: z.ZodInt;
446
+ indices: z.ZodOptional<z.ZodArray<z.ZodInt>>;
447
+ } & {
448
+ target: z.ZodString;
449
+ }, z.core.$strict>, z.ZodObject<{
450
+ type: z.ZodLiteral<"settle">;
451
+ bucket: z.ZodInt;
452
+ index: z.ZodInt;
453
+ } & {
454
+ target: z.ZodString;
455
+ }, z.core.$strict>, z.ZodObject<{
456
+ type: z.ZodLiteral<"resetMarks">;
457
+ } & {
458
+ target: z.ZodString;
459
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
460
+ type: z.ZodLiteral<"insert">;
461
+ element: z.ZodObject<{
462
+ id: z.ZodString;
463
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
464
+ }, z.core.$strict>;
465
+ key: z.ZodNullable<z.ZodNumber>;
466
+ } & {
467
+ target: z.ZodString;
468
+ }, z.core.$strict>, z.ZodObject<{
469
+ type: z.ZodLiteral<"extract">;
470
+ } & {
471
+ target: z.ZodString;
472
+ }, z.core.$strict>, z.ZodObject<{
473
+ type: z.ZodLiteral<"setKey">;
474
+ id: z.ZodString;
475
+ key: z.ZodNullable<z.ZodNumber>;
476
+ } & {
477
+ target: z.ZodString;
478
+ }, z.core.$strict>, z.ZodObject<{
479
+ type: z.ZodLiteral<"peek">;
480
+ } & {
481
+ target: z.ZodString;
482
+ }, z.core.$strict>, z.ZodObject<{
483
+ type: z.ZodLiteral<"highlight">;
484
+ ids: z.ZodArray<z.ZodString>;
485
+ } & {
486
+ target: z.ZodString;
487
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
488
+ type: z.ZodLiteral<"insertKey">;
489
+ node: z.ZodString;
490
+ index: z.ZodInt;
491
+ key: z.ZodObject<{
492
+ id: z.ZodString;
493
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
494
+ }, z.core.$strict>;
495
+ } & {
496
+ target: z.ZodString;
497
+ }, z.core.$strict>, z.ZodObject<{
498
+ type: z.ZodLiteral<"removeKey">;
499
+ key: z.ZodString;
500
+ } & {
501
+ target: z.ZodString;
502
+ }, z.core.$strict>, z.ZodObject<{
503
+ type: z.ZodLiteral<"setKey">;
504
+ key: z.ZodString;
505
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
506
+ } & {
507
+ target: z.ZodString;
508
+ }, z.core.$strict>, z.ZodObject<{
509
+ type: z.ZodLiteral<"lift">;
510
+ key: z.ZodString;
511
+ over: z.ZodString;
512
+ } & {
513
+ target: z.ZodString;
514
+ }, z.core.$strict>, z.ZodObject<{
515
+ type: z.ZodLiteral<"split">;
516
+ node: z.ZodString;
517
+ index: z.ZodInt;
518
+ newNode: z.ZodString;
519
+ } & {
520
+ target: z.ZodString;
521
+ }, z.core.$strict>, z.ZodObject<{
522
+ type: z.ZodLiteral<"grow">;
523
+ newRoot: z.ZodString;
524
+ } & {
525
+ target: z.ZodString;
526
+ }, z.core.$strict>, z.ZodObject<{
527
+ type: z.ZodLiteral<"merge">;
528
+ node: z.ZodString;
529
+ index: z.ZodInt;
530
+ } & {
531
+ target: z.ZodString;
532
+ }, z.core.$strict>, z.ZodObject<{
533
+ type: z.ZodLiteral<"shrink">;
534
+ } & {
535
+ target: z.ZodString;
536
+ }, z.core.$strict>, z.ZodObject<{
537
+ type: z.ZodLiteral<"borrow">;
538
+ node: z.ZodString;
539
+ child: z.ZodInt;
540
+ from: z.ZodEnum<{
541
+ left: "left";
542
+ right: "right";
543
+ }>;
544
+ } & {
545
+ target: z.ZodString;
546
+ }, z.core.$strict>, z.ZodObject<{
547
+ type: z.ZodLiteral<"highlight">;
548
+ keys: z.ZodOptional<z.ZodArray<z.ZodString>>;
549
+ nodes: z.ZodOptional<z.ZodArray<z.ZodString>>;
550
+ } & {
551
+ target: z.ZodString;
552
+ }, z.core.$strict>, z.ZodObject<{
553
+ type: z.ZodLiteral<"settle">;
554
+ key: z.ZodString;
555
+ } & {
556
+ target: z.ZodString;
557
+ }, z.core.$strict>, z.ZodObject<{
558
+ type: z.ZodLiteral<"pointer">;
559
+ name: z.ZodString;
560
+ node: z.ZodNullable<z.ZodString>;
561
+ } & {
562
+ target: z.ZodString;
563
+ }, z.core.$strict>, z.ZodObject<{
564
+ type: z.ZodLiteral<"annotate">;
565
+ node: z.ZodString;
566
+ text: z.ZodNullable<z.ZodString>;
567
+ } & {
568
+ target: z.ZodString;
569
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
570
+ type: z.ZodLiteral<"addPoint">;
571
+ point: z.ZodObject<{
572
+ id: z.ZodString;
573
+ x: z.ZodNumber;
574
+ y: z.ZodNumber;
575
+ label: z.ZodOptional<z.ZodString>;
576
+ }, z.core.$strict>;
577
+ } & {
578
+ target: z.ZodString;
579
+ }, z.core.$strict>, z.ZodObject<{
580
+ type: z.ZodLiteral<"removePoint">;
581
+ id: z.ZodString;
582
+ } & {
583
+ target: z.ZodString;
584
+ }, z.core.$strict>, z.ZodObject<{
585
+ type: z.ZodLiteral<"addSegment">;
586
+ segment: z.ZodObject<{
587
+ id: z.ZodString;
588
+ from: z.ZodString;
589
+ to: z.ZodString;
590
+ label: z.ZodOptional<z.ZodString>;
591
+ }, z.core.$strict>;
592
+ } & {
593
+ target: z.ZodString;
594
+ }, z.core.$strict>, z.ZodObject<{
595
+ type: z.ZodLiteral<"removeSegment">;
596
+ id: z.ZodString;
597
+ } & {
598
+ target: z.ZodString;
599
+ }, z.core.$strict>, z.ZodObject<{
600
+ type: z.ZodLiteral<"label">;
601
+ segment: z.ZodString;
602
+ text: z.ZodNullable<z.ZodString>;
603
+ } & {
604
+ target: z.ZodString;
605
+ }, z.core.$strict>, z.ZodObject<{
606
+ type: z.ZodLiteral<"highlight">;
607
+ points: z.ZodOptional<z.ZodArray<z.ZodString>>;
608
+ segments: z.ZodOptional<z.ZodArray<z.ZodString>>;
609
+ } & {
610
+ target: z.ZodString;
611
+ }, z.core.$strict>, z.ZodObject<{
612
+ type: z.ZodLiteral<"compare">;
613
+ points: z.ZodArray<z.ZodString>;
614
+ } & {
615
+ target: z.ZodString;
616
+ }, z.core.$strict>, z.ZodObject<{
617
+ type: z.ZodLiteral<"visit">;
618
+ point: z.ZodString;
619
+ } & {
620
+ target: z.ZodString;
621
+ }, z.core.$strict>, z.ZodObject<{
622
+ type: z.ZodLiteral<"settle">;
623
+ point: z.ZodString;
624
+ } & {
625
+ target: z.ZodString;
626
+ }, z.core.$strict>, z.ZodObject<{
627
+ type: z.ZodLiteral<"select">;
628
+ segment: z.ZodString;
629
+ on: z.ZodBoolean;
630
+ } & {
631
+ target: z.ZodString;
632
+ }, z.core.$strict>, z.ZodObject<{
633
+ type: z.ZodLiteral<"pointer">;
634
+ name: z.ZodString;
635
+ point: z.ZodNullable<z.ZodString>;
636
+ } & {
637
+ target: z.ZodString;
638
+ }, z.core.$strict>, z.ZodObject<{
639
+ type: z.ZodLiteral<"line">;
640
+ name: z.ZodString;
641
+ x: z.ZodNullable<z.ZodNumber>;
642
+ } & {
643
+ target: z.ZodString;
644
+ }, z.core.$strict>], "type">]>;
645
+ export type TargetedAction = z.infer<typeof TargetedAction>;
646
+ /** Any built-in action in authoring form, tagged with its structure. */
647
+ export declare const TargetedActionInput: z.ZodUnion<readonly [z.ZodDiscriminatedUnion<[z.ZodObject<{
648
+ type: z.ZodLiteral<"set">;
649
+ index: z.ZodInt;
650
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
651
+ } & {
652
+ target: z.ZodString;
653
+ }, z.core.$strict>, z.ZodObject<{
654
+ type: z.ZodLiteral<"swap">;
655
+ i: z.ZodInt;
656
+ j: z.ZodInt;
657
+ } & {
658
+ target: z.ZodString;
659
+ }, z.core.$strict>, z.ZodObject<{
660
+ type: z.ZodLiteral<"insert">;
661
+ index: z.ZodInt;
662
+ element: z.ZodUnion<readonly [z.ZodObject<{
663
+ id: z.ZodString;
664
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
665
+ }, z.core.$strict>, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>]>;
666
+ } & {
667
+ target: z.ZodString;
668
+ }, z.core.$strict>, z.ZodObject<{
669
+ type: z.ZodLiteral<"remove">;
670
+ index: z.ZodInt;
671
+ } & {
672
+ target: z.ZodString;
673
+ }, z.core.$strict>, z.ZodObject<{
674
+ type: z.ZodLiteral<"compare">;
675
+ i: z.ZodInt;
676
+ j: z.ZodInt;
677
+ } & {
678
+ target: z.ZodString;
679
+ }, z.core.$strict>, z.ZodObject<{
680
+ type: z.ZodLiteral<"highlight">;
681
+ indices: z.ZodArray<z.ZodInt>;
682
+ } & {
683
+ target: z.ZodString;
684
+ }, z.core.$strict>, z.ZodObject<{
685
+ type: z.ZodLiteral<"pointer">;
686
+ name: z.ZodString;
687
+ index: z.ZodNullable<z.ZodInt>;
688
+ } & {
689
+ target: z.ZodString;
690
+ }, z.core.$strict>, z.ZodObject<{
691
+ type: z.ZodLiteral<"settle">;
692
+ index: z.ZodInt;
693
+ } & {
694
+ target: z.ZodString;
695
+ }, z.core.$strict>, z.ZodObject<{
696
+ type: z.ZodLiteral<"align">;
697
+ shift: z.ZodInt;
698
+ matched: z.ZodOptional<z.ZodInt>;
699
+ } & {
700
+ target: z.ZodString;
701
+ }, z.core.$strict>, z.ZodObject<{
702
+ type: z.ZodLiteral<"check">;
703
+ j: z.ZodInt;
704
+ } & {
705
+ target: z.ZodString;
706
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
707
+ type: z.ZodLiteral<"push">;
708
+ element: z.ZodUnion<readonly [z.ZodObject<{
709
+ id: z.ZodString;
710
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
711
+ }, z.core.$strict>, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>]>;
712
+ } & {
713
+ target: z.ZodString;
714
+ }, z.core.$strict>, z.ZodObject<{
715
+ type: z.ZodLiteral<"pop">;
716
+ } & {
717
+ target: z.ZodString;
718
+ }, z.core.$strict>, z.ZodObject<{
719
+ type: z.ZodLiteral<"peek">;
720
+ } & {
721
+ target: z.ZodString;
722
+ }, z.core.$strict>, z.ZodObject<{
723
+ type: z.ZodLiteral<"highlight">;
724
+ indices: z.ZodArray<z.ZodInt>;
725
+ } & {
726
+ target: z.ZodString;
727
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
728
+ type: z.ZodLiteral<"enqueue">;
729
+ element: z.ZodUnion<readonly [z.ZodObject<{
730
+ id: z.ZodString;
731
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
732
+ }, z.core.$strict>, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>]>;
733
+ } & {
734
+ target: z.ZodString;
735
+ }, z.core.$strict>, z.ZodObject<{
736
+ type: z.ZodLiteral<"dequeue">;
737
+ } & {
738
+ target: z.ZodString;
739
+ }, z.core.$strict>, z.ZodObject<{
740
+ type: z.ZodLiteral<"pushFront">;
741
+ element: z.ZodUnion<readonly [z.ZodObject<{
742
+ id: z.ZodString;
743
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
744
+ }, z.core.$strict>, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>]>;
745
+ } & {
746
+ target: z.ZodString;
747
+ }, z.core.$strict>, z.ZodObject<{
748
+ type: z.ZodLiteral<"popBack">;
749
+ } & {
750
+ target: z.ZodString;
751
+ }, z.core.$strict>, z.ZodObject<{
752
+ type: z.ZodLiteral<"peek">;
753
+ end: z.ZodOptional<z.ZodEnum<{
754
+ front: "front";
755
+ back: "back";
756
+ }>>;
757
+ } & {
758
+ target: z.ZodString;
759
+ }, z.core.$strict>, z.ZodObject<{
760
+ type: z.ZodLiteral<"highlight">;
761
+ indices: z.ZodArray<z.ZodInt>;
762
+ } & {
763
+ target: z.ZodString;
764
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
765
+ type: z.ZodLiteral<"insert">;
766
+ index: z.ZodInt;
767
+ element: z.ZodUnion<readonly [z.ZodObject<{
768
+ id: z.ZodString;
769
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
770
+ }, z.core.$strict>, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>]>;
771
+ } & {
772
+ target: z.ZodString;
773
+ }, z.core.$strict>, z.ZodObject<{
774
+ type: z.ZodLiteral<"remove">;
775
+ index: z.ZodInt;
776
+ } & {
777
+ target: z.ZodString;
778
+ }, z.core.$strict>, z.ZodObject<{
779
+ type: z.ZodLiteral<"set">;
780
+ index: z.ZodInt;
781
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
782
+ } & {
783
+ target: z.ZodString;
784
+ }, z.core.$strict>, z.ZodObject<{
785
+ type: z.ZodLiteral<"move">;
786
+ from: z.ZodInt;
787
+ to: z.ZodInt;
788
+ } & {
789
+ target: z.ZodString;
790
+ }, z.core.$strict>, z.ZodObject<{
791
+ type: z.ZodLiteral<"link">;
792
+ from: z.ZodInt;
793
+ to: z.ZodNullable<z.ZodInt>;
794
+ field: z.ZodOptional<z.ZodEnum<{
795
+ next: "next";
796
+ prev: "prev";
797
+ }>>;
798
+ } & {
799
+ target: z.ZodString;
800
+ }, z.core.$strict>, z.ZodObject<{
801
+ type: z.ZodLiteral<"pointer">;
802
+ name: z.ZodString;
803
+ index: z.ZodNullable<z.ZodInt>;
804
+ } & {
805
+ target: z.ZodString;
806
+ }, z.core.$strict>, z.ZodObject<{
807
+ type: z.ZodLiteral<"highlight">;
808
+ indices: z.ZodArray<z.ZodInt>;
809
+ } & {
810
+ target: z.ZodString;
811
+ }, z.core.$strict>, z.ZodObject<{
812
+ type: z.ZodLiteral<"visit">;
813
+ index: z.ZodInt;
814
+ } & {
815
+ target: z.ZodString;
816
+ }, z.core.$strict>, z.ZodObject<{
817
+ type: z.ZodLiteral<"settle">;
818
+ index: z.ZodInt;
819
+ } & {
820
+ target: z.ZodString;
821
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
822
+ slot: z.ZodOptional<z.ZodUnion<readonly [z.ZodInt, z.ZodEnum<{
823
+ left: "left";
824
+ right: "right";
825
+ }>]>>;
826
+ type: z.ZodLiteral<"addNode">;
827
+ node: z.ZodUnion<readonly [z.ZodObject<{
828
+ id: z.ZodString;
829
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
830
+ color: z.ZodOptional<z.ZodEnum<{
831
+ red: "red";
832
+ black: "black";
833
+ }>>;
834
+ }, z.core.$strict>, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>]>;
835
+ parent: z.ZodNullable<z.ZodString>;
836
+ } & {
837
+ target: z.ZodString;
838
+ }, z.core.$strict>, z.ZodObject<{
839
+ type: z.ZodLiteral<"removeNode">;
840
+ node: z.ZodString;
841
+ } & {
842
+ target: z.ZodString;
843
+ }, z.core.$strict>, z.ZodObject<{
844
+ slot: z.ZodOptional<z.ZodUnion<readonly [z.ZodInt, z.ZodEnum<{
845
+ left: "left";
846
+ right: "right";
847
+ }>]>>;
848
+ type: z.ZodLiteral<"setChild">;
849
+ parent: z.ZodString;
850
+ child: z.ZodNullable<z.ZodString>;
851
+ } & {
852
+ target: z.ZodString;
853
+ }, z.core.$strict>, z.ZodObject<{
854
+ type: z.ZodLiteral<"detach">;
855
+ node: z.ZodString;
856
+ slot: z.ZodOptional<z.ZodInt>;
857
+ } & {
858
+ target: z.ZodString;
859
+ }, z.core.$strict>, z.ZodObject<{
860
+ type: z.ZodLiteral<"rotate">;
861
+ node: z.ZodString;
862
+ direction: z.ZodEnum<{
863
+ left: "left";
864
+ right: "right";
865
+ }>;
866
+ } & {
867
+ target: z.ZodString;
868
+ }, z.core.$strict>, z.ZodObject<{
869
+ type: z.ZodLiteral<"setValue">;
870
+ node: z.ZodString;
871
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
872
+ } & {
873
+ target: z.ZodString;
874
+ }, z.core.$strict>, z.ZodObject<{
875
+ type: z.ZodLiteral<"swapValues">;
876
+ a: z.ZodString;
877
+ b: z.ZodString;
878
+ } & {
879
+ target: z.ZodString;
880
+ }, z.core.$strict>, z.ZodObject<{
881
+ type: z.ZodLiteral<"setColor">;
882
+ node: z.ZodString;
883
+ color: z.ZodNullable<z.ZodEnum<{
884
+ red: "red";
885
+ black: "black";
886
+ }>>;
887
+ } & {
888
+ target: z.ZodString;
889
+ }, z.core.$strict>, z.ZodObject<{
890
+ type: z.ZodLiteral<"highlight">;
891
+ nodes: z.ZodArray<z.ZodString>;
892
+ } & {
893
+ target: z.ZodString;
894
+ }, z.core.$strict>, z.ZodObject<{
895
+ type: z.ZodLiteral<"compare">;
896
+ a: z.ZodString;
897
+ b: z.ZodString;
898
+ } & {
899
+ target: z.ZodString;
900
+ }, z.core.$strict>, z.ZodObject<{
901
+ type: z.ZodLiteral<"visit">;
902
+ node: z.ZodString;
903
+ } & {
904
+ target: z.ZodString;
905
+ }, z.core.$strict>, z.ZodObject<{
906
+ type: z.ZodLiteral<"settle">;
907
+ node: z.ZodString;
908
+ } & {
909
+ target: z.ZodString;
910
+ }, z.core.$strict>, z.ZodObject<{
911
+ type: z.ZodLiteral<"group">;
912
+ node: z.ZodString;
913
+ group: z.ZodNullable<z.ZodLiteral<0 | 1 | 4 | 2 | 3 | 5>>;
914
+ } & {
915
+ target: z.ZodString;
916
+ }, z.core.$strict>, z.ZodObject<{
917
+ type: z.ZodLiteral<"pointer">;
918
+ name: z.ZodString;
919
+ node: z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
920
+ parent: z.ZodString;
921
+ slot: z.ZodUnion<readonly [z.ZodInt, z.ZodEnum<{
922
+ left: "left";
923
+ right: "right";
924
+ }>]>;
925
+ }, z.core.$strict>]>>;
926
+ } & {
927
+ target: z.ZodString;
928
+ }, z.core.$strict>, z.ZodObject<{
929
+ type: z.ZodLiteral<"annotate">;
930
+ node: z.ZodString;
931
+ text: z.ZodNullable<z.ZodString>;
932
+ field: z.ZodOptional<z.ZodString>;
933
+ } & {
934
+ target: z.ZodString;
935
+ }, z.core.$strict>, z.ZodObject<{
936
+ type: z.ZodLiteral<"markEdge">;
937
+ node: z.ZodString;
938
+ mark: z.ZodNullable<z.ZodEnum<{
939
+ selected: "selected";
940
+ rejected: "rejected";
941
+ }>>;
942
+ } & {
943
+ target: z.ZodString;
944
+ }, z.core.$strict>, z.ZodObject<{
945
+ type: z.ZodLiteral<"labelEdge">;
946
+ node: z.ZodString;
947
+ label: z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
948
+ } & {
949
+ target: z.ZodString;
950
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
951
+ type: z.ZodLiteral<"addNode">;
952
+ node: z.ZodUnion<readonly [z.ZodObject<{
953
+ id: z.ZodString;
954
+ x: z.ZodOptional<z.ZodNumber>;
955
+ y: z.ZodOptional<z.ZodNumber>;
956
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>;
957
+ }, z.core.$strict>, z.ZodString, z.ZodNumber]>;
958
+ } & {
959
+ target: z.ZodString;
960
+ }, z.core.$strict>, z.ZodObject<{
961
+ type: z.ZodLiteral<"removeNode">;
962
+ node: z.ZodString;
963
+ } & {
964
+ target: z.ZodString;
965
+ }, z.core.$strict>, z.ZodObject<{
966
+ type: z.ZodLiteral<"setValue">;
967
+ node: z.ZodString;
968
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
969
+ } & {
970
+ target: z.ZodString;
971
+ }, z.core.$strict>, z.ZodObject<{
972
+ type: z.ZodLiteral<"addEdge">;
973
+ edge: z.ZodUnion<readonly [z.ZodObject<{
974
+ from: z.ZodString;
975
+ to: z.ZodString;
976
+ weight: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>;
977
+ id: z.ZodOptional<z.ZodString>;
978
+ }, z.core.$strict>, z.ZodTuple<[z.ZodString, z.ZodString], null>, z.ZodTuple<[z.ZodString, z.ZodString, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>], null>]>;
979
+ } & {
980
+ target: z.ZodString;
981
+ }, z.core.$strict>, z.ZodObject<{
982
+ type: z.ZodLiteral<"removeEdge">;
983
+ edge: z.ZodString;
984
+ } & {
985
+ target: z.ZodString;
986
+ }, z.core.$strict>, z.ZodObject<{
987
+ type: z.ZodLiteral<"setWeight">;
988
+ edge: z.ZodString;
989
+ weight: z.ZodNullable<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>;
990
+ } & {
991
+ target: z.ZodString;
992
+ }, z.core.$strict>, z.ZodObject<{
993
+ type: z.ZodLiteral<"highlight">;
994
+ nodes: z.ZodOptional<z.ZodArray<z.ZodString>>;
995
+ edges: z.ZodOptional<z.ZodArray<z.ZodString>>;
996
+ } & {
997
+ target: z.ZodString;
998
+ }, z.core.$strict>, z.ZodObject<{
999
+ type: z.ZodLiteral<"visit">;
1000
+ node: z.ZodString;
1001
+ } & {
1002
+ target: z.ZodString;
1003
+ }, z.core.$strict>, z.ZodObject<{
1004
+ type: z.ZodLiteral<"settle">;
1005
+ node: z.ZodString;
1006
+ } & {
1007
+ target: z.ZodString;
1008
+ }, z.core.$strict>, z.ZodObject<{
1009
+ type: z.ZodLiteral<"group">;
1010
+ node: z.ZodString;
1011
+ group: z.ZodNullable<z.ZodLiteral<0 | 1 | 4 | 2 | 3 | 5>>;
1012
+ } & {
1013
+ target: z.ZodString;
1014
+ }, z.core.$strict>, z.ZodObject<{
1015
+ type: z.ZodLiteral<"pointer">;
1016
+ name: z.ZodString;
1017
+ node: z.ZodNullable<z.ZodString>;
1018
+ } & {
1019
+ target: z.ZodString;
1020
+ }, z.core.$strict>, z.ZodObject<{
1021
+ type: z.ZodLiteral<"annotate">;
1022
+ node: z.ZodString;
1023
+ text: z.ZodNullable<z.ZodString>;
1024
+ } & {
1025
+ target: z.ZodString;
1026
+ }, z.core.$strict>, z.ZodObject<{
1027
+ type: z.ZodLiteral<"markEdge">;
1028
+ edge: z.ZodString;
1029
+ mark: z.ZodNullable<z.ZodEnum<{
1030
+ selected: "selected";
1031
+ rejected: "rejected";
1032
+ }>>;
1033
+ } & {
1034
+ target: z.ZodString;
1035
+ }, z.core.$strict>, z.ZodObject<{
1036
+ type: z.ZodLiteral<"resetMarks">;
1037
+ } & {
1038
+ target: z.ZodString;
1039
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
1040
+ type: z.ZodLiteral<"set">;
1041
+ cell: z.ZodTuple<[z.ZodInt, z.ZodInt], null>;
1042
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1043
+ } & {
1044
+ target: z.ZodString;
1045
+ }, z.core.$strict>, z.ZodObject<{
1046
+ type: z.ZodLiteral<"highlight">;
1047
+ cells: z.ZodArray<z.ZodTuple<[z.ZodInt, z.ZodInt], null>>;
1048
+ } & {
1049
+ target: z.ZodString;
1050
+ }, z.core.$strict>, z.ZodObject<{
1051
+ type: z.ZodLiteral<"depend">;
1052
+ cell: z.ZodTuple<[z.ZodInt, z.ZodInt], null>;
1053
+ on: z.ZodArray<z.ZodTuple<[z.ZodInt, z.ZodInt], null>>;
1054
+ } & {
1055
+ target: z.ZodString;
1056
+ }, z.core.$strict>, z.ZodObject<{
1057
+ type: z.ZodLiteral<"settle">;
1058
+ cells: z.ZodArray<z.ZodTuple<[z.ZodInt, z.ZodInt], null>>;
1059
+ } & {
1060
+ target: z.ZodString;
1061
+ }, z.core.$strict>, z.ZodObject<{
1062
+ type: z.ZodLiteral<"resetMarks">;
1063
+ } & {
1064
+ target: z.ZodString;
1065
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
1066
+ type: z.ZodLiteral<"insert">;
1067
+ bucket: z.ZodInt;
1068
+ element: z.ZodUnion<readonly [z.ZodObject<{
1069
+ id: z.ZodString;
1070
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1071
+ }, z.core.$strict>, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>]>;
1072
+ index: z.ZodOptional<z.ZodInt>;
1073
+ } & {
1074
+ target: z.ZodString;
1075
+ }, z.core.$strict>, z.ZodObject<{
1076
+ type: z.ZodLiteral<"remove">;
1077
+ bucket: z.ZodInt;
1078
+ index: z.ZodInt;
1079
+ } & {
1080
+ target: z.ZodString;
1081
+ }, z.core.$strict>, z.ZodObject<{
1082
+ type: z.ZodLiteral<"set">;
1083
+ bucket: z.ZodInt;
1084
+ index: z.ZodInt;
1085
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1086
+ } & {
1087
+ target: z.ZodString;
1088
+ }, z.core.$strict>, z.ZodObject<{
1089
+ type: z.ZodLiteral<"highlight">;
1090
+ bucket: z.ZodInt;
1091
+ indices: z.ZodOptional<z.ZodArray<z.ZodInt>>;
1092
+ } & {
1093
+ target: z.ZodString;
1094
+ }, z.core.$strict>, z.ZodObject<{
1095
+ type: z.ZodLiteral<"settle">;
1096
+ bucket: z.ZodInt;
1097
+ index: z.ZodInt;
1098
+ } & {
1099
+ target: z.ZodString;
1100
+ }, z.core.$strict>, z.ZodObject<{
1101
+ type: z.ZodLiteral<"resetMarks">;
1102
+ } & {
1103
+ target: z.ZodString;
1104
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
1105
+ type: z.ZodLiteral<"insert">;
1106
+ element: z.ZodUnion<readonly [z.ZodObject<{
1107
+ id: z.ZodString;
1108
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1109
+ }, z.core.$strict>, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>]>;
1110
+ key: z.ZodNullable<z.ZodNumber>;
1111
+ } & {
1112
+ target: z.ZodString;
1113
+ }, z.core.$strict>, z.ZodObject<{
1114
+ type: z.ZodLiteral<"extract">;
1115
+ } & {
1116
+ target: z.ZodString;
1117
+ }, z.core.$strict>, z.ZodObject<{
1118
+ type: z.ZodLiteral<"setKey">;
1119
+ id: z.ZodString;
1120
+ key: z.ZodNullable<z.ZodNumber>;
1121
+ } & {
1122
+ target: z.ZodString;
1123
+ }, z.core.$strict>, z.ZodObject<{
1124
+ type: z.ZodLiteral<"peek">;
1125
+ } & {
1126
+ target: z.ZodString;
1127
+ }, z.core.$strict>, z.ZodObject<{
1128
+ type: z.ZodLiteral<"highlight">;
1129
+ ids: z.ZodArray<z.ZodString>;
1130
+ } & {
1131
+ target: z.ZodString;
1132
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
1133
+ type: z.ZodLiteral<"insertKey">;
1134
+ node: z.ZodString;
1135
+ index: z.ZodInt;
1136
+ key: z.ZodUnion<readonly [z.ZodObject<{
1137
+ id: z.ZodString;
1138
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1139
+ }, z.core.$strict>, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>]>;
1140
+ } & {
1141
+ target: z.ZodString;
1142
+ }, z.core.$strict>, z.ZodObject<{
1143
+ type: z.ZodLiteral<"removeKey">;
1144
+ key: z.ZodString;
1145
+ } & {
1146
+ target: z.ZodString;
1147
+ }, z.core.$strict>, z.ZodObject<{
1148
+ type: z.ZodLiteral<"setKey">;
1149
+ key: z.ZodString;
1150
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1151
+ } & {
1152
+ target: z.ZodString;
1153
+ }, z.core.$strict>, z.ZodObject<{
1154
+ type: z.ZodLiteral<"lift">;
1155
+ key: z.ZodString;
1156
+ over: z.ZodString;
1157
+ } & {
1158
+ target: z.ZodString;
1159
+ }, z.core.$strict>, z.ZodObject<{
1160
+ type: z.ZodLiteral<"split">;
1161
+ node: z.ZodString;
1162
+ index: z.ZodInt;
1163
+ newNode: z.ZodString;
1164
+ } & {
1165
+ target: z.ZodString;
1166
+ }, z.core.$strict>, z.ZodObject<{
1167
+ type: z.ZodLiteral<"grow">;
1168
+ newRoot: z.ZodString;
1169
+ } & {
1170
+ target: z.ZodString;
1171
+ }, z.core.$strict>, z.ZodObject<{
1172
+ type: z.ZodLiteral<"merge">;
1173
+ node: z.ZodString;
1174
+ index: z.ZodInt;
1175
+ } & {
1176
+ target: z.ZodString;
1177
+ }, z.core.$strict>, z.ZodObject<{
1178
+ type: z.ZodLiteral<"shrink">;
1179
+ } & {
1180
+ target: z.ZodString;
1181
+ }, z.core.$strict>, z.ZodObject<{
1182
+ type: z.ZodLiteral<"borrow">;
1183
+ node: z.ZodString;
1184
+ child: z.ZodInt;
1185
+ from: z.ZodEnum<{
1186
+ left: "left";
1187
+ right: "right";
1188
+ }>;
1189
+ } & {
1190
+ target: z.ZodString;
1191
+ }, z.core.$strict>, z.ZodObject<{
1192
+ type: z.ZodLiteral<"highlight">;
1193
+ keys: z.ZodOptional<z.ZodArray<z.ZodString>>;
1194
+ nodes: z.ZodOptional<z.ZodArray<z.ZodString>>;
1195
+ } & {
1196
+ target: z.ZodString;
1197
+ }, z.core.$strict>, z.ZodObject<{
1198
+ type: z.ZodLiteral<"settle">;
1199
+ key: z.ZodString;
1200
+ } & {
1201
+ target: z.ZodString;
1202
+ }, z.core.$strict>, z.ZodObject<{
1203
+ type: z.ZodLiteral<"pointer">;
1204
+ name: z.ZodString;
1205
+ node: z.ZodNullable<z.ZodString>;
1206
+ } & {
1207
+ target: z.ZodString;
1208
+ }, z.core.$strict>, z.ZodObject<{
1209
+ type: z.ZodLiteral<"annotate">;
1210
+ node: z.ZodString;
1211
+ text: z.ZodNullable<z.ZodString>;
1212
+ } & {
1213
+ target: z.ZodString;
1214
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
1215
+ type: z.ZodLiteral<"addPoint">;
1216
+ point: z.ZodObject<{
1217
+ id: z.ZodString;
1218
+ x: z.ZodNumber;
1219
+ y: z.ZodNumber;
1220
+ label: z.ZodOptional<z.ZodString>;
1221
+ }, z.core.$strict>;
1222
+ } & {
1223
+ target: z.ZodString;
1224
+ }, z.core.$strict>, z.ZodObject<{
1225
+ type: z.ZodLiteral<"removePoint">;
1226
+ id: z.ZodString;
1227
+ } & {
1228
+ target: z.ZodString;
1229
+ }, z.core.$strict>, z.ZodObject<{
1230
+ type: z.ZodLiteral<"addSegment">;
1231
+ segment: z.ZodObject<{
1232
+ id: z.ZodString;
1233
+ from: z.ZodString;
1234
+ to: z.ZodString;
1235
+ label: z.ZodOptional<z.ZodString>;
1236
+ }, z.core.$strict>;
1237
+ } & {
1238
+ target: z.ZodString;
1239
+ }, z.core.$strict>, z.ZodObject<{
1240
+ type: z.ZodLiteral<"removeSegment">;
1241
+ id: z.ZodString;
1242
+ } & {
1243
+ target: z.ZodString;
1244
+ }, z.core.$strict>, z.ZodObject<{
1245
+ type: z.ZodLiteral<"label">;
1246
+ segment: z.ZodString;
1247
+ text: z.ZodNullable<z.ZodString>;
1248
+ } & {
1249
+ target: z.ZodString;
1250
+ }, z.core.$strict>, z.ZodObject<{
1251
+ type: z.ZodLiteral<"highlight">;
1252
+ points: z.ZodOptional<z.ZodArray<z.ZodString>>;
1253
+ segments: z.ZodOptional<z.ZodArray<z.ZodString>>;
1254
+ } & {
1255
+ target: z.ZodString;
1256
+ }, z.core.$strict>, z.ZodObject<{
1257
+ type: z.ZodLiteral<"compare">;
1258
+ points: z.ZodArray<z.ZodString>;
1259
+ } & {
1260
+ target: z.ZodString;
1261
+ }, z.core.$strict>, z.ZodObject<{
1262
+ type: z.ZodLiteral<"visit">;
1263
+ point: z.ZodString;
1264
+ } & {
1265
+ target: z.ZodString;
1266
+ }, z.core.$strict>, z.ZodObject<{
1267
+ type: z.ZodLiteral<"settle">;
1268
+ point: z.ZodString;
1269
+ } & {
1270
+ target: z.ZodString;
1271
+ }, z.core.$strict>, z.ZodObject<{
1272
+ type: z.ZodLiteral<"select">;
1273
+ segment: z.ZodString;
1274
+ on: z.ZodBoolean;
1275
+ } & {
1276
+ target: z.ZodString;
1277
+ }, z.core.$strict>, z.ZodObject<{
1278
+ type: z.ZodLiteral<"pointer">;
1279
+ name: z.ZodString;
1280
+ point: z.ZodNullable<z.ZodString>;
1281
+ } & {
1282
+ target: z.ZodString;
1283
+ }, z.core.$strict>, z.ZodObject<{
1284
+ type: z.ZodLiteral<"line">;
1285
+ name: z.ZodString;
1286
+ x: z.ZodNullable<z.ZodNumber>;
1287
+ } & {
1288
+ target: z.ZodString;
1289
+ }, z.core.$strict>], "type">]>;
1290
+ export type TargetedActionInput = z.infer<typeof TargetedActionInput>;
1291
+ export declare const StructureDecl: z.ZodDiscriminatedUnion<[z.ZodObject<{
1292
+ kind: z.ZodLiteral<"array">;
1293
+ label: z.ZodOptional<z.ZodString>;
1294
+ place: z.ZodOptional<z.ZodEnum<{
1295
+ main: "main";
1296
+ side: "side";
1297
+ }>>;
1298
+ view: z.ZodOptional<z.ZodEnum<{
1299
+ row: "row";
1300
+ tree: "tree";
1301
+ heap: "heap";
1302
+ }>>;
1303
+ initial: z.ZodArray<z.ZodObject<{
1304
+ id: z.ZodString;
1305
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1306
+ }, z.core.$strict>>;
1307
+ pattern: z.ZodOptional<z.ZodArray<z.ZodObject<{
1308
+ id: z.ZodString;
1309
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1310
+ }, z.core.$strict>>>;
1311
+ shift: z.ZodOptional<z.ZodInt>;
1312
+ }, z.core.$strict>, z.ZodObject<{
1313
+ kind: z.ZodLiteral<"stack">;
1314
+ label: z.ZodOptional<z.ZodString>;
1315
+ place: z.ZodOptional<z.ZodEnum<{
1316
+ main: "main";
1317
+ side: "side";
1318
+ }>>;
1319
+ initial: z.ZodArray<z.ZodObject<{
1320
+ id: z.ZodString;
1321
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1322
+ }, z.core.$strict>>;
1323
+ }, z.core.$strict>, z.ZodObject<{
1324
+ kind: z.ZodLiteral<"queue">;
1325
+ label: z.ZodOptional<z.ZodString>;
1326
+ place: z.ZodOptional<z.ZodEnum<{
1327
+ main: "main";
1328
+ side: "side";
1329
+ }>>;
1330
+ initial: z.ZodArray<z.ZodObject<{
1331
+ id: z.ZodString;
1332
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1333
+ }, z.core.$strict>>;
1334
+ }, z.core.$strict>, z.ZodObject<{
1335
+ initial: z.ZodArray<z.ZodObject<{
1336
+ id: z.ZodString;
1337
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1338
+ }, z.core.$strict>>;
1339
+ kind: z.ZodLiteral<"linkedList">;
1340
+ label: z.ZodOptional<z.ZodString>;
1341
+ place: z.ZodOptional<z.ZodEnum<{
1342
+ main: "main";
1343
+ side: "side";
1344
+ }>>;
1345
+ doubly: z.ZodOptional<z.ZodBoolean>;
1346
+ circular: z.ZodOptional<z.ZodBoolean>;
1347
+ }, z.core.$strict>, z.ZodObject<{
1348
+ kind: z.ZodLiteral<"tree">;
1349
+ label: z.ZodOptional<z.ZodString>;
1350
+ place: z.ZodOptional<z.ZodEnum<{
1351
+ main: "main";
1352
+ side: "side";
1353
+ }>>;
1354
+ binary: z.ZodBoolean;
1355
+ nodes: z.ZodArray<z.ZodObject<{
1356
+ id: z.ZodString;
1357
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1358
+ children: z.ZodOptional<z.ZodArray<z.ZodNullable<z.ZodString>>>;
1359
+ color: z.ZodOptional<z.ZodEnum<{
1360
+ red: "red";
1361
+ black: "black";
1362
+ }>>;
1363
+ }, z.core.$strict>>;
1364
+ roots: z.ZodArray<z.ZodString>;
1365
+ rootList: z.ZodOptional<z.ZodEnum<{
1366
+ circular: "circular";
1367
+ list: "list";
1368
+ }>>;
1369
+ }, z.core.$strict>, z.ZodObject<{
1370
+ kind: z.ZodLiteral<"graph">;
1371
+ label: z.ZodOptional<z.ZodString>;
1372
+ place: z.ZodOptional<z.ZodEnum<{
1373
+ main: "main";
1374
+ side: "side";
1375
+ }>>;
1376
+ directed: z.ZodBoolean;
1377
+ layout: z.ZodEnum<{
1378
+ auto: "auto";
1379
+ circle: "circle";
1380
+ layered: "layered";
1381
+ grid: "grid";
1382
+ manual: "manual";
1383
+ }>;
1384
+ nodes: z.ZodArray<z.ZodObject<{
1385
+ id: z.ZodString;
1386
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1387
+ x: z.ZodOptional<z.ZodNumber>;
1388
+ y: z.ZodOptional<z.ZodNumber>;
1389
+ }, z.core.$strict>>;
1390
+ edges: z.ZodArray<z.ZodObject<{
1391
+ id: z.ZodString;
1392
+ from: z.ZodString;
1393
+ to: z.ZodString;
1394
+ weight: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>;
1395
+ }, z.core.$strict>>;
1396
+ }, z.core.$strict>, z.ZodObject<{
1397
+ kind: z.ZodLiteral<"table">;
1398
+ label: z.ZodOptional<z.ZodString>;
1399
+ place: z.ZodOptional<z.ZodEnum<{
1400
+ main: "main";
1401
+ side: "side";
1402
+ }>>;
1403
+ cells: z.ZodArray<z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>>;
1404
+ rowLabels: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>>;
1405
+ columnLabels: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>>;
1406
+ }, z.core.$strict>, z.ZodObject<{
1407
+ kind: z.ZodLiteral<"hashTable">;
1408
+ label: z.ZodOptional<z.ZodString>;
1409
+ place: z.ZodOptional<z.ZodEnum<{
1410
+ main: "main";
1411
+ side: "side";
1412
+ }>>;
1413
+ buckets: z.ZodArray<z.ZodArray<z.ZodObject<{
1414
+ id: z.ZodString;
1415
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1416
+ }, z.core.$strict>>>;
1417
+ }, z.core.$strict>, z.ZodObject<{
1418
+ kind: z.ZodLiteral<"priorityQueue">;
1419
+ label: z.ZodOptional<z.ZodString>;
1420
+ place: z.ZodOptional<z.ZodEnum<{
1421
+ main: "main";
1422
+ side: "side";
1423
+ }>>;
1424
+ order: z.ZodOptional<z.ZodEnum<{
1425
+ min: "min";
1426
+ max: "max";
1427
+ }>>;
1428
+ initial: z.ZodArray<z.ZodObject<{
1429
+ id: z.ZodString;
1430
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1431
+ key: z.ZodNullable<z.ZodNumber>;
1432
+ }, z.core.$strict>>;
1433
+ }, z.core.$strict>, z.ZodObject<{
1434
+ kind: z.ZodLiteral<"btree">;
1435
+ label: z.ZodOptional<z.ZodString>;
1436
+ place: z.ZodOptional<z.ZodEnum<{
1437
+ main: "main";
1438
+ side: "side";
1439
+ }>>;
1440
+ nodes: z.ZodArray<z.ZodObject<{
1441
+ id: z.ZodString;
1442
+ keys: z.ZodArray<z.ZodObject<{
1443
+ id: z.ZodString;
1444
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1445
+ }, z.core.$strict>>;
1446
+ children: z.ZodOptional<z.ZodArray<z.ZodString>>;
1447
+ }, z.core.$strict>>;
1448
+ root: z.ZodString;
1449
+ }, z.core.$strict>, z.ZodObject<{
1450
+ points: z.ZodArray<z.ZodObject<{
1451
+ id: z.ZodString;
1452
+ x: z.ZodNumber;
1453
+ y: z.ZodNumber;
1454
+ label: z.ZodOptional<z.ZodString>;
1455
+ }, z.core.$strict>>;
1456
+ segments: z.ZodOptional<z.ZodArray<z.ZodObject<{
1457
+ id: z.ZodString;
1458
+ from: z.ZodString;
1459
+ to: z.ZodString;
1460
+ label: z.ZodOptional<z.ZodString>;
1461
+ }, z.core.$strict>>>;
1462
+ kind: z.ZodLiteral<"plane">;
1463
+ label: z.ZodOptional<z.ZodString>;
1464
+ place: z.ZodOptional<z.ZodEnum<{
1465
+ main: "main";
1466
+ side: "side";
1467
+ }>>;
1468
+ axes: z.ZodOptional<z.ZodBoolean>;
1469
+ }, z.core.$strict>], "kind">;
1470
+ export type StructureDecl = z.infer<typeof StructureDecl>;
1471
+ export declare const StructureDeclInput: z.ZodDiscriminatedUnion<[z.ZodObject<{
1472
+ kind: z.ZodLiteral<"array">;
1473
+ label: z.ZodOptional<z.ZodString>;
1474
+ place: z.ZodOptional<z.ZodEnum<{
1475
+ main: "main";
1476
+ side: "side";
1477
+ }>>;
1478
+ view: z.ZodOptional<z.ZodEnum<{
1479
+ row: "row";
1480
+ tree: "tree";
1481
+ heap: "heap";
1482
+ }>>;
1483
+ shift: z.ZodOptional<z.ZodInt>;
1484
+ initial: z.ZodUnion<readonly [z.ZodArray<z.ZodObject<{
1485
+ id: z.ZodString;
1486
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1487
+ }, z.core.$strict>>, z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>]>;
1488
+ pattern: z.ZodOptional<z.ZodUnion<readonly [z.ZodArray<z.ZodObject<{
1489
+ id: z.ZodString;
1490
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1491
+ }, z.core.$strict>>, z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>]>>;
1492
+ }, z.core.$strict>, z.ZodObject<{
1493
+ kind: z.ZodLiteral<"stack">;
1494
+ label: z.ZodOptional<z.ZodString>;
1495
+ place: z.ZodOptional<z.ZodEnum<{
1496
+ main: "main";
1497
+ side: "side";
1498
+ }>>;
1499
+ initial: z.ZodUnion<readonly [z.ZodArray<z.ZodObject<{
1500
+ id: z.ZodString;
1501
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1502
+ }, z.core.$strict>>, z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>]>;
1503
+ }, z.core.$strict>, z.ZodObject<{
1504
+ kind: z.ZodLiteral<"queue">;
1505
+ label: z.ZodOptional<z.ZodString>;
1506
+ place: z.ZodOptional<z.ZodEnum<{
1507
+ main: "main";
1508
+ side: "side";
1509
+ }>>;
1510
+ initial: z.ZodUnion<readonly [z.ZodArray<z.ZodObject<{
1511
+ id: z.ZodString;
1512
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1513
+ }, z.core.$strict>>, z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>]>;
1514
+ }, z.core.$strict>, z.ZodObject<{
1515
+ initial: z.ZodUnion<readonly [z.ZodArray<z.ZodObject<{
1516
+ id: z.ZodString;
1517
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1518
+ }, z.core.$strict>>, z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>]>;
1519
+ kind: z.ZodLiteral<"linkedList">;
1520
+ label: z.ZodOptional<z.ZodString>;
1521
+ place: z.ZodOptional<z.ZodEnum<{
1522
+ main: "main";
1523
+ side: "side";
1524
+ }>>;
1525
+ doubly: z.ZodOptional<z.ZodBoolean>;
1526
+ circular: z.ZodOptional<z.ZodBoolean>;
1527
+ }, z.core.$strict>, z.ZodObject<{
1528
+ kind: z.ZodLiteral<"tree">;
1529
+ label: z.ZodOptional<z.ZodString>;
1530
+ place: z.ZodOptional<z.ZodEnum<{
1531
+ main: "main";
1532
+ side: "side";
1533
+ }>>;
1534
+ binary: z.ZodOptional<z.ZodBoolean>;
1535
+ nodes: z.ZodOptional<z.ZodArray<z.ZodObject<{
1536
+ id: z.ZodString;
1537
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1538
+ children: z.ZodOptional<z.ZodArray<z.ZodNullable<z.ZodString>>>;
1539
+ color: z.ZodOptional<z.ZodEnum<{
1540
+ red: "red";
1541
+ black: "black";
1542
+ }>>;
1543
+ }, z.core.$strict>>>;
1544
+ roots: z.ZodOptional<z.ZodArray<z.ZodString>>;
1545
+ rootList: z.ZodOptional<z.ZodEnum<{
1546
+ circular: "circular";
1547
+ list: "list";
1548
+ }>>;
1549
+ levelOrder: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>>;
1550
+ }, z.core.$strict>, z.ZodObject<{
1551
+ kind: z.ZodLiteral<"graph">;
1552
+ label: z.ZodOptional<z.ZodString>;
1553
+ place: z.ZodOptional<z.ZodEnum<{
1554
+ main: "main";
1555
+ side: "side";
1556
+ }>>;
1557
+ directed: z.ZodOptional<z.ZodBoolean>;
1558
+ layout: z.ZodOptional<z.ZodEnum<{
1559
+ auto: "auto";
1560
+ circle: "circle";
1561
+ layered: "layered";
1562
+ grid: "grid";
1563
+ manual: "manual";
1564
+ }>>;
1565
+ nodes: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
1566
+ id: z.ZodString;
1567
+ x: z.ZodOptional<z.ZodNumber>;
1568
+ y: z.ZodOptional<z.ZodNumber>;
1569
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>;
1570
+ }, z.core.$strict>, z.ZodString, z.ZodNumber]>>>;
1571
+ edges: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
1572
+ from: z.ZodString;
1573
+ to: z.ZodString;
1574
+ weight: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>;
1575
+ id: z.ZodOptional<z.ZodString>;
1576
+ }, z.core.$strict>, z.ZodTuple<[z.ZodString, z.ZodString], null>, z.ZodTuple<[z.ZodString, z.ZodString, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>], null>]>>>;
1577
+ }, z.core.$strict>, z.ZodObject<{
1578
+ kind: z.ZodLiteral<"table">;
1579
+ label: z.ZodOptional<z.ZodString>;
1580
+ place: z.ZodOptional<z.ZodEnum<{
1581
+ main: "main";
1582
+ side: "side";
1583
+ }>>;
1584
+ rows: z.ZodOptional<z.ZodInt>;
1585
+ columns: z.ZodOptional<z.ZodInt>;
1586
+ initial: z.ZodOptional<z.ZodArray<z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>>>;
1587
+ rowLabels: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>>;
1588
+ columnLabels: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>>;
1589
+ cells: z.ZodOptional<z.ZodArray<z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>>>;
1590
+ }, z.core.$strict>, z.ZodObject<{
1591
+ kind: z.ZodLiteral<"hashTable">;
1592
+ label: z.ZodOptional<z.ZodString>;
1593
+ place: z.ZodOptional<z.ZodEnum<{
1594
+ main: "main";
1595
+ side: "side";
1596
+ }>>;
1597
+ size: z.ZodOptional<z.ZodInt>;
1598
+ initial: z.ZodOptional<z.ZodArray<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
1599
+ id: z.ZodString;
1600
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1601
+ }, z.core.$strict>, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>]>>>>;
1602
+ buckets: z.ZodOptional<z.ZodArray<z.ZodArray<z.ZodObject<{
1603
+ id: z.ZodString;
1604
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1605
+ }, z.core.$strict>>>>;
1606
+ }, z.core.$strict>, z.ZodObject<{
1607
+ kind: z.ZodLiteral<"priorityQueue">;
1608
+ label: z.ZodOptional<z.ZodString>;
1609
+ place: z.ZodOptional<z.ZodEnum<{
1610
+ main: "main";
1611
+ side: "side";
1612
+ }>>;
1613
+ order: z.ZodOptional<z.ZodEnum<{
1614
+ min: "min";
1615
+ max: "max";
1616
+ }>>;
1617
+ initial: z.ZodArray<z.ZodObject<{
1618
+ id: z.ZodOptional<z.ZodString>;
1619
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1620
+ key: z.ZodNullable<z.ZodNumber>;
1621
+ }, z.core.$strict>>;
1622
+ }, z.core.$strict>, z.ZodObject<{
1623
+ kind: z.ZodLiteral<"btree">;
1624
+ label: z.ZodOptional<z.ZodString>;
1625
+ place: z.ZodOptional<z.ZodEnum<{
1626
+ main: "main";
1627
+ side: "side";
1628
+ }>>;
1629
+ nodes: z.ZodOptional<z.ZodArray<z.ZodObject<{
1630
+ id: z.ZodString;
1631
+ keys: z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
1632
+ id: z.ZodString;
1633
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1634
+ }, z.core.$strict>, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>]>>;
1635
+ children: z.ZodOptional<z.ZodArray<z.ZodString>>;
1636
+ }, z.core.$strict>>>;
1637
+ root: z.ZodOptional<z.ZodString>;
1638
+ }, z.core.$strict>, z.ZodObject<{
1639
+ points: z.ZodOptional<z.ZodArray<z.ZodObject<{
1640
+ id: z.ZodString;
1641
+ x: z.ZodNumber;
1642
+ y: z.ZodNumber;
1643
+ label: z.ZodOptional<z.ZodString>;
1644
+ }, z.core.$strict>>>;
1645
+ segments: z.ZodOptional<z.ZodArray<z.ZodObject<{
1646
+ id: z.ZodString;
1647
+ from: z.ZodString;
1648
+ to: z.ZodString;
1649
+ label: z.ZodOptional<z.ZodString>;
1650
+ }, z.core.$strict>>>;
1651
+ kind: z.ZodLiteral<"plane">;
1652
+ label: z.ZodOptional<z.ZodString>;
1653
+ place: z.ZodOptional<z.ZodEnum<{
1654
+ main: "main";
1655
+ side: "side";
1656
+ }>>;
1657
+ axes: z.ZodOptional<z.ZodBoolean>;
1658
+ }, z.core.$strict>], "kind">;
1659
+ export type StructureDeclInput = z.infer<typeof StructureDeclInput>;
1660
+ export declare const Visualization: z.ZodObject<{
1661
+ version: z.ZodEnum<{
1662
+ "1.0": "1.0";
1663
+ }>;
1664
+ title: z.ZodOptional<z.ZodString>;
1665
+ source: z.ZodOptional<z.ZodObject<{
1666
+ language: z.ZodOptional<z.ZodString>;
1667
+ code: z.ZodString;
1668
+ }, z.core.$strict>>;
1669
+ sources: z.ZodOptional<z.ZodArray<z.ZodObject<{
1670
+ language: z.ZodString;
1671
+ code: z.ZodString;
1672
+ anchors: z.ZodRecord<z.ZodString, z.ZodInt>;
1673
+ }, z.core.$strict>>>;
1674
+ structures: z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
1675
+ kind: z.ZodLiteral<"array">;
1676
+ label: z.ZodOptional<z.ZodString>;
1677
+ place: z.ZodOptional<z.ZodEnum<{
1678
+ main: "main";
1679
+ side: "side";
1680
+ }>>;
1681
+ view: z.ZodOptional<z.ZodEnum<{
1682
+ row: "row";
1683
+ tree: "tree";
1684
+ heap: "heap";
1685
+ }>>;
1686
+ initial: z.ZodArray<z.ZodObject<{
1687
+ id: z.ZodString;
1688
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1689
+ }, z.core.$strict>>;
1690
+ pattern: z.ZodOptional<z.ZodArray<z.ZodObject<{
1691
+ id: z.ZodString;
1692
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1693
+ }, z.core.$strict>>>;
1694
+ shift: z.ZodOptional<z.ZodInt>;
1695
+ }, z.core.$strict>, z.ZodObject<{
1696
+ kind: z.ZodLiteral<"stack">;
1697
+ label: z.ZodOptional<z.ZodString>;
1698
+ place: z.ZodOptional<z.ZodEnum<{
1699
+ main: "main";
1700
+ side: "side";
1701
+ }>>;
1702
+ initial: z.ZodArray<z.ZodObject<{
1703
+ id: z.ZodString;
1704
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1705
+ }, z.core.$strict>>;
1706
+ }, z.core.$strict>, z.ZodObject<{
1707
+ kind: z.ZodLiteral<"queue">;
1708
+ label: z.ZodOptional<z.ZodString>;
1709
+ place: z.ZodOptional<z.ZodEnum<{
1710
+ main: "main";
1711
+ side: "side";
1712
+ }>>;
1713
+ initial: z.ZodArray<z.ZodObject<{
1714
+ id: z.ZodString;
1715
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1716
+ }, z.core.$strict>>;
1717
+ }, z.core.$strict>, z.ZodObject<{
1718
+ initial: z.ZodArray<z.ZodObject<{
1719
+ id: z.ZodString;
1720
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1721
+ }, z.core.$strict>>;
1722
+ kind: z.ZodLiteral<"linkedList">;
1723
+ label: z.ZodOptional<z.ZodString>;
1724
+ place: z.ZodOptional<z.ZodEnum<{
1725
+ main: "main";
1726
+ side: "side";
1727
+ }>>;
1728
+ doubly: z.ZodOptional<z.ZodBoolean>;
1729
+ circular: z.ZodOptional<z.ZodBoolean>;
1730
+ }, z.core.$strict>, z.ZodObject<{
1731
+ kind: z.ZodLiteral<"tree">;
1732
+ label: z.ZodOptional<z.ZodString>;
1733
+ place: z.ZodOptional<z.ZodEnum<{
1734
+ main: "main";
1735
+ side: "side";
1736
+ }>>;
1737
+ binary: z.ZodBoolean;
1738
+ nodes: z.ZodArray<z.ZodObject<{
1739
+ id: z.ZodString;
1740
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1741
+ children: z.ZodOptional<z.ZodArray<z.ZodNullable<z.ZodString>>>;
1742
+ color: z.ZodOptional<z.ZodEnum<{
1743
+ red: "red";
1744
+ black: "black";
1745
+ }>>;
1746
+ }, z.core.$strict>>;
1747
+ roots: z.ZodArray<z.ZodString>;
1748
+ rootList: z.ZodOptional<z.ZodEnum<{
1749
+ circular: "circular";
1750
+ list: "list";
1751
+ }>>;
1752
+ }, z.core.$strict>, z.ZodObject<{
1753
+ kind: z.ZodLiteral<"graph">;
1754
+ label: z.ZodOptional<z.ZodString>;
1755
+ place: z.ZodOptional<z.ZodEnum<{
1756
+ main: "main";
1757
+ side: "side";
1758
+ }>>;
1759
+ directed: z.ZodBoolean;
1760
+ layout: z.ZodEnum<{
1761
+ auto: "auto";
1762
+ circle: "circle";
1763
+ layered: "layered";
1764
+ grid: "grid";
1765
+ manual: "manual";
1766
+ }>;
1767
+ nodes: z.ZodArray<z.ZodObject<{
1768
+ id: z.ZodString;
1769
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1770
+ x: z.ZodOptional<z.ZodNumber>;
1771
+ y: z.ZodOptional<z.ZodNumber>;
1772
+ }, z.core.$strict>>;
1773
+ edges: z.ZodArray<z.ZodObject<{
1774
+ id: z.ZodString;
1775
+ from: z.ZodString;
1776
+ to: z.ZodString;
1777
+ weight: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>;
1778
+ }, z.core.$strict>>;
1779
+ }, z.core.$strict>, z.ZodObject<{
1780
+ kind: z.ZodLiteral<"table">;
1781
+ label: z.ZodOptional<z.ZodString>;
1782
+ place: z.ZodOptional<z.ZodEnum<{
1783
+ main: "main";
1784
+ side: "side";
1785
+ }>>;
1786
+ cells: z.ZodArray<z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>>;
1787
+ rowLabels: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>>;
1788
+ columnLabels: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>>;
1789
+ }, z.core.$strict>, z.ZodObject<{
1790
+ kind: z.ZodLiteral<"hashTable">;
1791
+ label: z.ZodOptional<z.ZodString>;
1792
+ place: z.ZodOptional<z.ZodEnum<{
1793
+ main: "main";
1794
+ side: "side";
1795
+ }>>;
1796
+ buckets: z.ZodArray<z.ZodArray<z.ZodObject<{
1797
+ id: z.ZodString;
1798
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1799
+ }, z.core.$strict>>>;
1800
+ }, z.core.$strict>, z.ZodObject<{
1801
+ kind: z.ZodLiteral<"priorityQueue">;
1802
+ label: z.ZodOptional<z.ZodString>;
1803
+ place: z.ZodOptional<z.ZodEnum<{
1804
+ main: "main";
1805
+ side: "side";
1806
+ }>>;
1807
+ order: z.ZodOptional<z.ZodEnum<{
1808
+ min: "min";
1809
+ max: "max";
1810
+ }>>;
1811
+ initial: z.ZodArray<z.ZodObject<{
1812
+ id: z.ZodString;
1813
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1814
+ key: z.ZodNullable<z.ZodNumber>;
1815
+ }, z.core.$strict>>;
1816
+ }, z.core.$strict>, z.ZodObject<{
1817
+ kind: z.ZodLiteral<"btree">;
1818
+ label: z.ZodOptional<z.ZodString>;
1819
+ place: z.ZodOptional<z.ZodEnum<{
1820
+ main: "main";
1821
+ side: "side";
1822
+ }>>;
1823
+ nodes: z.ZodArray<z.ZodObject<{
1824
+ id: z.ZodString;
1825
+ keys: z.ZodArray<z.ZodObject<{
1826
+ id: z.ZodString;
1827
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1828
+ }, z.core.$strict>>;
1829
+ children: z.ZodOptional<z.ZodArray<z.ZodString>>;
1830
+ }, z.core.$strict>>;
1831
+ root: z.ZodString;
1832
+ }, z.core.$strict>, z.ZodObject<{
1833
+ points: z.ZodArray<z.ZodObject<{
1834
+ id: z.ZodString;
1835
+ x: z.ZodNumber;
1836
+ y: z.ZodNumber;
1837
+ label: z.ZodOptional<z.ZodString>;
1838
+ }, z.core.$strict>>;
1839
+ segments: z.ZodOptional<z.ZodArray<z.ZodObject<{
1840
+ id: z.ZodString;
1841
+ from: z.ZodString;
1842
+ to: z.ZodString;
1843
+ label: z.ZodOptional<z.ZodString>;
1844
+ }, z.core.$strict>>>;
1845
+ kind: z.ZodLiteral<"plane">;
1846
+ label: z.ZodOptional<z.ZodString>;
1847
+ place: z.ZodOptional<z.ZodEnum<{
1848
+ main: "main";
1849
+ side: "side";
1850
+ }>>;
1851
+ axes: z.ZodOptional<z.ZodBoolean>;
1852
+ }, z.core.$strict>], "kind">>;
1853
+ steps: z.ZodArray<z.ZodObject<{
1854
+ actions: z.ZodArray<z.ZodUnion<readonly [z.ZodDiscriminatedUnion<[z.ZodObject<{
1855
+ type: z.ZodLiteral<"set">;
1856
+ index: z.ZodInt;
1857
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1858
+ } & {
1859
+ target: z.ZodString;
1860
+ }, z.core.$strict>, z.ZodObject<{
1861
+ type: z.ZodLiteral<"swap">;
1862
+ i: z.ZodInt;
1863
+ j: z.ZodInt;
1864
+ } & {
1865
+ target: z.ZodString;
1866
+ }, z.core.$strict>, z.ZodObject<{
1867
+ type: z.ZodLiteral<"insert">;
1868
+ index: z.ZodInt;
1869
+ element: z.ZodObject<{
1870
+ id: z.ZodString;
1871
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1872
+ }, z.core.$strict>;
1873
+ } & {
1874
+ target: z.ZodString;
1875
+ }, z.core.$strict>, z.ZodObject<{
1876
+ type: z.ZodLiteral<"remove">;
1877
+ index: z.ZodInt;
1878
+ } & {
1879
+ target: z.ZodString;
1880
+ }, z.core.$strict>, z.ZodObject<{
1881
+ type: z.ZodLiteral<"compare">;
1882
+ i: z.ZodInt;
1883
+ j: z.ZodInt;
1884
+ } & {
1885
+ target: z.ZodString;
1886
+ }, z.core.$strict>, z.ZodObject<{
1887
+ type: z.ZodLiteral<"highlight">;
1888
+ indices: z.ZodArray<z.ZodInt>;
1889
+ } & {
1890
+ target: z.ZodString;
1891
+ }, z.core.$strict>, z.ZodObject<{
1892
+ type: z.ZodLiteral<"pointer">;
1893
+ name: z.ZodString;
1894
+ index: z.ZodNullable<z.ZodInt>;
1895
+ } & {
1896
+ target: z.ZodString;
1897
+ }, z.core.$strict>, z.ZodObject<{
1898
+ type: z.ZodLiteral<"settle">;
1899
+ index: z.ZodInt;
1900
+ } & {
1901
+ target: z.ZodString;
1902
+ }, z.core.$strict>, z.ZodObject<{
1903
+ type: z.ZodLiteral<"align">;
1904
+ shift: z.ZodInt;
1905
+ matched: z.ZodOptional<z.ZodInt>;
1906
+ } & {
1907
+ target: z.ZodString;
1908
+ }, z.core.$strict>, z.ZodObject<{
1909
+ type: z.ZodLiteral<"check">;
1910
+ j: z.ZodInt;
1911
+ } & {
1912
+ target: z.ZodString;
1913
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
1914
+ type: z.ZodLiteral<"push">;
1915
+ element: z.ZodObject<{
1916
+ id: z.ZodString;
1917
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1918
+ }, z.core.$strict>;
1919
+ } & {
1920
+ target: z.ZodString;
1921
+ }, z.core.$strict>, z.ZodObject<{
1922
+ type: z.ZodLiteral<"pop">;
1923
+ } & {
1924
+ target: z.ZodString;
1925
+ }, z.core.$strict>, z.ZodObject<{
1926
+ type: z.ZodLiteral<"peek">;
1927
+ } & {
1928
+ target: z.ZodString;
1929
+ }, z.core.$strict>, z.ZodObject<{
1930
+ type: z.ZodLiteral<"highlight">;
1931
+ indices: z.ZodArray<z.ZodInt>;
1932
+ } & {
1933
+ target: z.ZodString;
1934
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
1935
+ type: z.ZodLiteral<"enqueue">;
1936
+ element: z.ZodObject<{
1937
+ id: z.ZodString;
1938
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1939
+ }, z.core.$strict>;
1940
+ } & {
1941
+ target: z.ZodString;
1942
+ }, z.core.$strict>, z.ZodObject<{
1943
+ type: z.ZodLiteral<"dequeue">;
1944
+ } & {
1945
+ target: z.ZodString;
1946
+ }, z.core.$strict>, z.ZodObject<{
1947
+ type: z.ZodLiteral<"pushFront">;
1948
+ element: z.ZodObject<{
1949
+ id: z.ZodString;
1950
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1951
+ }, z.core.$strict>;
1952
+ } & {
1953
+ target: z.ZodString;
1954
+ }, z.core.$strict>, z.ZodObject<{
1955
+ type: z.ZodLiteral<"popBack">;
1956
+ } & {
1957
+ target: z.ZodString;
1958
+ }, z.core.$strict>, z.ZodObject<{
1959
+ type: z.ZodLiteral<"peek">;
1960
+ end: z.ZodOptional<z.ZodEnum<{
1961
+ front: "front";
1962
+ back: "back";
1963
+ }>>;
1964
+ } & {
1965
+ target: z.ZodString;
1966
+ }, z.core.$strict>, z.ZodObject<{
1967
+ type: z.ZodLiteral<"highlight">;
1968
+ indices: z.ZodArray<z.ZodInt>;
1969
+ } & {
1970
+ target: z.ZodString;
1971
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
1972
+ type: z.ZodLiteral<"insert">;
1973
+ index: z.ZodInt;
1974
+ element: z.ZodObject<{
1975
+ id: z.ZodString;
1976
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1977
+ }, z.core.$strict>;
1978
+ } & {
1979
+ target: z.ZodString;
1980
+ }, z.core.$strict>, z.ZodObject<{
1981
+ type: z.ZodLiteral<"remove">;
1982
+ index: z.ZodInt;
1983
+ } & {
1984
+ target: z.ZodString;
1985
+ }, z.core.$strict>, z.ZodObject<{
1986
+ type: z.ZodLiteral<"set">;
1987
+ index: z.ZodInt;
1988
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
1989
+ } & {
1990
+ target: z.ZodString;
1991
+ }, z.core.$strict>, z.ZodObject<{
1992
+ type: z.ZodLiteral<"move">;
1993
+ from: z.ZodInt;
1994
+ to: z.ZodInt;
1995
+ } & {
1996
+ target: z.ZodString;
1997
+ }, z.core.$strict>, z.ZodObject<{
1998
+ type: z.ZodLiteral<"link">;
1999
+ from: z.ZodInt;
2000
+ to: z.ZodNullable<z.ZodInt>;
2001
+ field: z.ZodOptional<z.ZodEnum<{
2002
+ next: "next";
2003
+ prev: "prev";
2004
+ }>>;
2005
+ } & {
2006
+ target: z.ZodString;
2007
+ }, z.core.$strict>, z.ZodObject<{
2008
+ type: z.ZodLiteral<"pointer">;
2009
+ name: z.ZodString;
2010
+ index: z.ZodNullable<z.ZodInt>;
2011
+ } & {
2012
+ target: z.ZodString;
2013
+ }, z.core.$strict>, z.ZodObject<{
2014
+ type: z.ZodLiteral<"highlight">;
2015
+ indices: z.ZodArray<z.ZodInt>;
2016
+ } & {
2017
+ target: z.ZodString;
2018
+ }, z.core.$strict>, z.ZodObject<{
2019
+ type: z.ZodLiteral<"visit">;
2020
+ index: z.ZodInt;
2021
+ } & {
2022
+ target: z.ZodString;
2023
+ }, z.core.$strict>, z.ZodObject<{
2024
+ type: z.ZodLiteral<"settle">;
2025
+ index: z.ZodInt;
2026
+ } & {
2027
+ target: z.ZodString;
2028
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
2029
+ slot: z.ZodOptional<z.ZodInt>;
2030
+ type: z.ZodLiteral<"addNode">;
2031
+ node: z.ZodObject<{
2032
+ id: z.ZodString;
2033
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2034
+ color: z.ZodOptional<z.ZodEnum<{
2035
+ red: "red";
2036
+ black: "black";
2037
+ }>>;
2038
+ }, z.core.$strict>;
2039
+ parent: z.ZodNullable<z.ZodString>;
2040
+ } & {
2041
+ target: z.ZodString;
2042
+ }, z.core.$strict>, z.ZodObject<{
2043
+ type: z.ZodLiteral<"removeNode">;
2044
+ node: z.ZodString;
2045
+ } & {
2046
+ target: z.ZodString;
2047
+ }, z.core.$strict>, z.ZodObject<{
2048
+ slot: z.ZodOptional<z.ZodInt>;
2049
+ type: z.ZodLiteral<"setChild">;
2050
+ parent: z.ZodString;
2051
+ child: z.ZodNullable<z.ZodString>;
2052
+ } & {
2053
+ target: z.ZodString;
2054
+ }, z.core.$strict>, z.ZodObject<{
2055
+ type: z.ZodLiteral<"detach">;
2056
+ node: z.ZodString;
2057
+ slot: z.ZodOptional<z.ZodInt>;
2058
+ } & {
2059
+ target: z.ZodString;
2060
+ }, z.core.$strict>, z.ZodObject<{
2061
+ type: z.ZodLiteral<"rotate">;
2062
+ node: z.ZodString;
2063
+ direction: z.ZodEnum<{
2064
+ left: "left";
2065
+ right: "right";
2066
+ }>;
2067
+ } & {
2068
+ target: z.ZodString;
2069
+ }, z.core.$strict>, z.ZodObject<{
2070
+ type: z.ZodLiteral<"setValue">;
2071
+ node: z.ZodString;
2072
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2073
+ } & {
2074
+ target: z.ZodString;
2075
+ }, z.core.$strict>, z.ZodObject<{
2076
+ type: z.ZodLiteral<"swapValues">;
2077
+ a: z.ZodString;
2078
+ b: z.ZodString;
2079
+ } & {
2080
+ target: z.ZodString;
2081
+ }, z.core.$strict>, z.ZodObject<{
2082
+ type: z.ZodLiteral<"setColor">;
2083
+ node: z.ZodString;
2084
+ color: z.ZodNullable<z.ZodEnum<{
2085
+ red: "red";
2086
+ black: "black";
2087
+ }>>;
2088
+ } & {
2089
+ target: z.ZodString;
2090
+ }, z.core.$strict>, z.ZodObject<{
2091
+ type: z.ZodLiteral<"highlight">;
2092
+ nodes: z.ZodArray<z.ZodString>;
2093
+ } & {
2094
+ target: z.ZodString;
2095
+ }, z.core.$strict>, z.ZodObject<{
2096
+ type: z.ZodLiteral<"compare">;
2097
+ a: z.ZodString;
2098
+ b: z.ZodString;
2099
+ } & {
2100
+ target: z.ZodString;
2101
+ }, z.core.$strict>, z.ZodObject<{
2102
+ type: z.ZodLiteral<"visit">;
2103
+ node: z.ZodString;
2104
+ } & {
2105
+ target: z.ZodString;
2106
+ }, z.core.$strict>, z.ZodObject<{
2107
+ type: z.ZodLiteral<"settle">;
2108
+ node: z.ZodString;
2109
+ } & {
2110
+ target: z.ZodString;
2111
+ }, z.core.$strict>, z.ZodObject<{
2112
+ type: z.ZodLiteral<"group">;
2113
+ node: z.ZodString;
2114
+ group: z.ZodNullable<z.ZodLiteral<0 | 1 | 4 | 2 | 3 | 5>>;
2115
+ } & {
2116
+ target: z.ZodString;
2117
+ }, z.core.$strict>, z.ZodObject<{
2118
+ type: z.ZodLiteral<"pointer">;
2119
+ name: z.ZodString;
2120
+ node: z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
2121
+ parent: z.ZodString;
2122
+ slot: z.ZodInt;
2123
+ }, z.core.$strict>]>>;
2124
+ } & {
2125
+ target: z.ZodString;
2126
+ }, z.core.$strict>, z.ZodObject<{
2127
+ type: z.ZodLiteral<"annotate">;
2128
+ node: z.ZodString;
2129
+ text: z.ZodNullable<z.ZodString>;
2130
+ field: z.ZodOptional<z.ZodString>;
2131
+ } & {
2132
+ target: z.ZodString;
2133
+ }, z.core.$strict>, z.ZodObject<{
2134
+ type: z.ZodLiteral<"markEdge">;
2135
+ node: z.ZodString;
2136
+ mark: z.ZodNullable<z.ZodEnum<{
2137
+ selected: "selected";
2138
+ rejected: "rejected";
2139
+ }>>;
2140
+ } & {
2141
+ target: z.ZodString;
2142
+ }, z.core.$strict>, z.ZodObject<{
2143
+ type: z.ZodLiteral<"labelEdge">;
2144
+ node: z.ZodString;
2145
+ label: z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
2146
+ } & {
2147
+ target: z.ZodString;
2148
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
2149
+ type: z.ZodLiteral<"addNode">;
2150
+ node: z.ZodObject<{
2151
+ id: z.ZodString;
2152
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2153
+ x: z.ZodOptional<z.ZodNumber>;
2154
+ y: z.ZodOptional<z.ZodNumber>;
2155
+ }, z.core.$strict>;
2156
+ } & {
2157
+ target: z.ZodString;
2158
+ }, z.core.$strict>, z.ZodObject<{
2159
+ type: z.ZodLiteral<"removeNode">;
2160
+ node: z.ZodString;
2161
+ } & {
2162
+ target: z.ZodString;
2163
+ }, z.core.$strict>, z.ZodObject<{
2164
+ type: z.ZodLiteral<"setValue">;
2165
+ node: z.ZodString;
2166
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2167
+ } & {
2168
+ target: z.ZodString;
2169
+ }, z.core.$strict>, z.ZodObject<{
2170
+ type: z.ZodLiteral<"addEdge">;
2171
+ edge: z.ZodObject<{
2172
+ id: z.ZodString;
2173
+ from: z.ZodString;
2174
+ to: z.ZodString;
2175
+ weight: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>;
2176
+ }, z.core.$strict>;
2177
+ } & {
2178
+ target: z.ZodString;
2179
+ }, z.core.$strict>, z.ZodObject<{
2180
+ type: z.ZodLiteral<"removeEdge">;
2181
+ edge: z.ZodString;
2182
+ } & {
2183
+ target: z.ZodString;
2184
+ }, z.core.$strict>, z.ZodObject<{
2185
+ type: z.ZodLiteral<"setWeight">;
2186
+ edge: z.ZodString;
2187
+ weight: z.ZodNullable<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>;
2188
+ } & {
2189
+ target: z.ZodString;
2190
+ }, z.core.$strict>, z.ZodObject<{
2191
+ type: z.ZodLiteral<"highlight">;
2192
+ nodes: z.ZodOptional<z.ZodArray<z.ZodString>>;
2193
+ edges: z.ZodOptional<z.ZodArray<z.ZodString>>;
2194
+ } & {
2195
+ target: z.ZodString;
2196
+ }, z.core.$strict>, z.ZodObject<{
2197
+ type: z.ZodLiteral<"visit">;
2198
+ node: z.ZodString;
2199
+ } & {
2200
+ target: z.ZodString;
2201
+ }, z.core.$strict>, z.ZodObject<{
2202
+ type: z.ZodLiteral<"settle">;
2203
+ node: z.ZodString;
2204
+ } & {
2205
+ target: z.ZodString;
2206
+ }, z.core.$strict>, z.ZodObject<{
2207
+ type: z.ZodLiteral<"group">;
2208
+ node: z.ZodString;
2209
+ group: z.ZodNullable<z.ZodLiteral<0 | 1 | 4 | 2 | 3 | 5>>;
2210
+ } & {
2211
+ target: z.ZodString;
2212
+ }, z.core.$strict>, z.ZodObject<{
2213
+ type: z.ZodLiteral<"pointer">;
2214
+ name: z.ZodString;
2215
+ node: z.ZodNullable<z.ZodString>;
2216
+ } & {
2217
+ target: z.ZodString;
2218
+ }, z.core.$strict>, z.ZodObject<{
2219
+ type: z.ZodLiteral<"annotate">;
2220
+ node: z.ZodString;
2221
+ text: z.ZodNullable<z.ZodString>;
2222
+ } & {
2223
+ target: z.ZodString;
2224
+ }, z.core.$strict>, z.ZodObject<{
2225
+ type: z.ZodLiteral<"markEdge">;
2226
+ edge: z.ZodString;
2227
+ mark: z.ZodNullable<z.ZodEnum<{
2228
+ selected: "selected";
2229
+ rejected: "rejected";
2230
+ }>>;
2231
+ } & {
2232
+ target: z.ZodString;
2233
+ }, z.core.$strict>, z.ZodObject<{
2234
+ type: z.ZodLiteral<"resetMarks">;
2235
+ } & {
2236
+ target: z.ZodString;
2237
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
2238
+ type: z.ZodLiteral<"set">;
2239
+ cell: z.ZodTuple<[z.ZodInt, z.ZodInt], null>;
2240
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2241
+ } & {
2242
+ target: z.ZodString;
2243
+ }, z.core.$strict>, z.ZodObject<{
2244
+ type: z.ZodLiteral<"highlight">;
2245
+ cells: z.ZodArray<z.ZodTuple<[z.ZodInt, z.ZodInt], null>>;
2246
+ } & {
2247
+ target: z.ZodString;
2248
+ }, z.core.$strict>, z.ZodObject<{
2249
+ type: z.ZodLiteral<"depend">;
2250
+ cell: z.ZodTuple<[z.ZodInt, z.ZodInt], null>;
2251
+ on: z.ZodArray<z.ZodTuple<[z.ZodInt, z.ZodInt], null>>;
2252
+ } & {
2253
+ target: z.ZodString;
2254
+ }, z.core.$strict>, z.ZodObject<{
2255
+ type: z.ZodLiteral<"settle">;
2256
+ cells: z.ZodArray<z.ZodTuple<[z.ZodInt, z.ZodInt], null>>;
2257
+ } & {
2258
+ target: z.ZodString;
2259
+ }, z.core.$strict>, z.ZodObject<{
2260
+ type: z.ZodLiteral<"resetMarks">;
2261
+ } & {
2262
+ target: z.ZodString;
2263
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
2264
+ type: z.ZodLiteral<"insert">;
2265
+ bucket: z.ZodInt;
2266
+ element: z.ZodObject<{
2267
+ id: z.ZodString;
2268
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2269
+ }, z.core.$strict>;
2270
+ index: z.ZodOptional<z.ZodInt>;
2271
+ } & {
2272
+ target: z.ZodString;
2273
+ }, z.core.$strict>, z.ZodObject<{
2274
+ type: z.ZodLiteral<"remove">;
2275
+ bucket: z.ZodInt;
2276
+ index: z.ZodInt;
2277
+ } & {
2278
+ target: z.ZodString;
2279
+ }, z.core.$strict>, z.ZodObject<{
2280
+ type: z.ZodLiteral<"set">;
2281
+ bucket: z.ZodInt;
2282
+ index: z.ZodInt;
2283
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2284
+ } & {
2285
+ target: z.ZodString;
2286
+ }, z.core.$strict>, z.ZodObject<{
2287
+ type: z.ZodLiteral<"highlight">;
2288
+ bucket: z.ZodInt;
2289
+ indices: z.ZodOptional<z.ZodArray<z.ZodInt>>;
2290
+ } & {
2291
+ target: z.ZodString;
2292
+ }, z.core.$strict>, z.ZodObject<{
2293
+ type: z.ZodLiteral<"settle">;
2294
+ bucket: z.ZodInt;
2295
+ index: z.ZodInt;
2296
+ } & {
2297
+ target: z.ZodString;
2298
+ }, z.core.$strict>, z.ZodObject<{
2299
+ type: z.ZodLiteral<"resetMarks">;
2300
+ } & {
2301
+ target: z.ZodString;
2302
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
2303
+ type: z.ZodLiteral<"insert">;
2304
+ element: z.ZodObject<{
2305
+ id: z.ZodString;
2306
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2307
+ }, z.core.$strict>;
2308
+ key: z.ZodNullable<z.ZodNumber>;
2309
+ } & {
2310
+ target: z.ZodString;
2311
+ }, z.core.$strict>, z.ZodObject<{
2312
+ type: z.ZodLiteral<"extract">;
2313
+ } & {
2314
+ target: z.ZodString;
2315
+ }, z.core.$strict>, z.ZodObject<{
2316
+ type: z.ZodLiteral<"setKey">;
2317
+ id: z.ZodString;
2318
+ key: z.ZodNullable<z.ZodNumber>;
2319
+ } & {
2320
+ target: z.ZodString;
2321
+ }, z.core.$strict>, z.ZodObject<{
2322
+ type: z.ZodLiteral<"peek">;
2323
+ } & {
2324
+ target: z.ZodString;
2325
+ }, z.core.$strict>, z.ZodObject<{
2326
+ type: z.ZodLiteral<"highlight">;
2327
+ ids: z.ZodArray<z.ZodString>;
2328
+ } & {
2329
+ target: z.ZodString;
2330
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
2331
+ type: z.ZodLiteral<"insertKey">;
2332
+ node: z.ZodString;
2333
+ index: z.ZodInt;
2334
+ key: z.ZodObject<{
2335
+ id: z.ZodString;
2336
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2337
+ }, z.core.$strict>;
2338
+ } & {
2339
+ target: z.ZodString;
2340
+ }, z.core.$strict>, z.ZodObject<{
2341
+ type: z.ZodLiteral<"removeKey">;
2342
+ key: z.ZodString;
2343
+ } & {
2344
+ target: z.ZodString;
2345
+ }, z.core.$strict>, z.ZodObject<{
2346
+ type: z.ZodLiteral<"setKey">;
2347
+ key: z.ZodString;
2348
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2349
+ } & {
2350
+ target: z.ZodString;
2351
+ }, z.core.$strict>, z.ZodObject<{
2352
+ type: z.ZodLiteral<"lift">;
2353
+ key: z.ZodString;
2354
+ over: z.ZodString;
2355
+ } & {
2356
+ target: z.ZodString;
2357
+ }, z.core.$strict>, z.ZodObject<{
2358
+ type: z.ZodLiteral<"split">;
2359
+ node: z.ZodString;
2360
+ index: z.ZodInt;
2361
+ newNode: z.ZodString;
2362
+ } & {
2363
+ target: z.ZodString;
2364
+ }, z.core.$strict>, z.ZodObject<{
2365
+ type: z.ZodLiteral<"grow">;
2366
+ newRoot: z.ZodString;
2367
+ } & {
2368
+ target: z.ZodString;
2369
+ }, z.core.$strict>, z.ZodObject<{
2370
+ type: z.ZodLiteral<"merge">;
2371
+ node: z.ZodString;
2372
+ index: z.ZodInt;
2373
+ } & {
2374
+ target: z.ZodString;
2375
+ }, z.core.$strict>, z.ZodObject<{
2376
+ type: z.ZodLiteral<"shrink">;
2377
+ } & {
2378
+ target: z.ZodString;
2379
+ }, z.core.$strict>, z.ZodObject<{
2380
+ type: z.ZodLiteral<"borrow">;
2381
+ node: z.ZodString;
2382
+ child: z.ZodInt;
2383
+ from: z.ZodEnum<{
2384
+ left: "left";
2385
+ right: "right";
2386
+ }>;
2387
+ } & {
2388
+ target: z.ZodString;
2389
+ }, z.core.$strict>, z.ZodObject<{
2390
+ type: z.ZodLiteral<"highlight">;
2391
+ keys: z.ZodOptional<z.ZodArray<z.ZodString>>;
2392
+ nodes: z.ZodOptional<z.ZodArray<z.ZodString>>;
2393
+ } & {
2394
+ target: z.ZodString;
2395
+ }, z.core.$strict>, z.ZodObject<{
2396
+ type: z.ZodLiteral<"settle">;
2397
+ key: z.ZodString;
2398
+ } & {
2399
+ target: z.ZodString;
2400
+ }, z.core.$strict>, z.ZodObject<{
2401
+ type: z.ZodLiteral<"pointer">;
2402
+ name: z.ZodString;
2403
+ node: z.ZodNullable<z.ZodString>;
2404
+ } & {
2405
+ target: z.ZodString;
2406
+ }, z.core.$strict>, z.ZodObject<{
2407
+ type: z.ZodLiteral<"annotate">;
2408
+ node: z.ZodString;
2409
+ text: z.ZodNullable<z.ZodString>;
2410
+ } & {
2411
+ target: z.ZodString;
2412
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
2413
+ type: z.ZodLiteral<"addPoint">;
2414
+ point: z.ZodObject<{
2415
+ id: z.ZodString;
2416
+ x: z.ZodNumber;
2417
+ y: z.ZodNumber;
2418
+ label: z.ZodOptional<z.ZodString>;
2419
+ }, z.core.$strict>;
2420
+ } & {
2421
+ target: z.ZodString;
2422
+ }, z.core.$strict>, z.ZodObject<{
2423
+ type: z.ZodLiteral<"removePoint">;
2424
+ id: z.ZodString;
2425
+ } & {
2426
+ target: z.ZodString;
2427
+ }, z.core.$strict>, z.ZodObject<{
2428
+ type: z.ZodLiteral<"addSegment">;
2429
+ segment: z.ZodObject<{
2430
+ id: z.ZodString;
2431
+ from: z.ZodString;
2432
+ to: z.ZodString;
2433
+ label: z.ZodOptional<z.ZodString>;
2434
+ }, z.core.$strict>;
2435
+ } & {
2436
+ target: z.ZodString;
2437
+ }, z.core.$strict>, z.ZodObject<{
2438
+ type: z.ZodLiteral<"removeSegment">;
2439
+ id: z.ZodString;
2440
+ } & {
2441
+ target: z.ZodString;
2442
+ }, z.core.$strict>, z.ZodObject<{
2443
+ type: z.ZodLiteral<"label">;
2444
+ segment: z.ZodString;
2445
+ text: z.ZodNullable<z.ZodString>;
2446
+ } & {
2447
+ target: z.ZodString;
2448
+ }, z.core.$strict>, z.ZodObject<{
2449
+ type: z.ZodLiteral<"highlight">;
2450
+ points: z.ZodOptional<z.ZodArray<z.ZodString>>;
2451
+ segments: z.ZodOptional<z.ZodArray<z.ZodString>>;
2452
+ } & {
2453
+ target: z.ZodString;
2454
+ }, z.core.$strict>, z.ZodObject<{
2455
+ type: z.ZodLiteral<"compare">;
2456
+ points: z.ZodArray<z.ZodString>;
2457
+ } & {
2458
+ target: z.ZodString;
2459
+ }, z.core.$strict>, z.ZodObject<{
2460
+ type: z.ZodLiteral<"visit">;
2461
+ point: z.ZodString;
2462
+ } & {
2463
+ target: z.ZodString;
2464
+ }, z.core.$strict>, z.ZodObject<{
2465
+ type: z.ZodLiteral<"settle">;
2466
+ point: z.ZodString;
2467
+ } & {
2468
+ target: z.ZodString;
2469
+ }, z.core.$strict>, z.ZodObject<{
2470
+ type: z.ZodLiteral<"select">;
2471
+ segment: z.ZodString;
2472
+ on: z.ZodBoolean;
2473
+ } & {
2474
+ target: z.ZodString;
2475
+ }, z.core.$strict>, z.ZodObject<{
2476
+ type: z.ZodLiteral<"pointer">;
2477
+ name: z.ZodString;
2478
+ point: z.ZodNullable<z.ZodString>;
2479
+ } & {
2480
+ target: z.ZodString;
2481
+ }, z.core.$strict>, z.ZodObject<{
2482
+ type: z.ZodLiteral<"line">;
2483
+ name: z.ZodString;
2484
+ x: z.ZodNullable<z.ZodNumber>;
2485
+ } & {
2486
+ target: z.ZodString;
2487
+ }, z.core.$strict>], "type">]>>;
2488
+ meta: z.ZodOptional<z.ZodObject<{
2489
+ id: z.ZodOptional<z.ZodString>;
2490
+ at: z.ZodOptional<z.ZodString>;
2491
+ line: z.ZodOptional<z.ZodInt>;
2492
+ narration: z.ZodOptional<z.ZodString>;
2493
+ vars: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
2494
+ }, z.core.$strict>>;
2495
+ }, z.core.$strict>>;
2496
+ sections: z.ZodOptional<z.ZodArray<z.ZodObject<{
2497
+ id: z.ZodString;
2498
+ title: z.ZodString;
2499
+ start: z.ZodInt;
2500
+ }, z.core.$strict>>>;
2501
+ }, z.core.$strict>;
2502
+ export type Visualization = z.infer<typeof Visualization>;
2503
+ export type Step = Visualization['steps'][number];
2504
+ export declare const VisualizationInput: z.ZodObject<{
2505
+ version: z.ZodEnum<{
2506
+ "1.0": "1.0";
2507
+ }>;
2508
+ title: z.ZodOptional<z.ZodString>;
2509
+ source: z.ZodOptional<z.ZodObject<{
2510
+ language: z.ZodOptional<z.ZodString>;
2511
+ code: z.ZodString;
2512
+ }, z.core.$strict>>;
2513
+ sources: z.ZodOptional<z.ZodArray<z.ZodObject<{
2514
+ language: z.ZodString;
2515
+ code: z.ZodString;
2516
+ anchors: z.ZodRecord<z.ZodString, z.ZodInt>;
2517
+ }, z.core.$strict>>>;
2518
+ structures: z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
2519
+ kind: z.ZodLiteral<"array">;
2520
+ label: z.ZodOptional<z.ZodString>;
2521
+ place: z.ZodOptional<z.ZodEnum<{
2522
+ main: "main";
2523
+ side: "side";
2524
+ }>>;
2525
+ view: z.ZodOptional<z.ZodEnum<{
2526
+ row: "row";
2527
+ tree: "tree";
2528
+ heap: "heap";
2529
+ }>>;
2530
+ shift: z.ZodOptional<z.ZodInt>;
2531
+ initial: z.ZodUnion<readonly [z.ZodArray<z.ZodObject<{
2532
+ id: z.ZodString;
2533
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2534
+ }, z.core.$strict>>, z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>]>;
2535
+ pattern: z.ZodOptional<z.ZodUnion<readonly [z.ZodArray<z.ZodObject<{
2536
+ id: z.ZodString;
2537
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2538
+ }, z.core.$strict>>, z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>]>>;
2539
+ }, z.core.$strict>, z.ZodObject<{
2540
+ kind: z.ZodLiteral<"stack">;
2541
+ label: z.ZodOptional<z.ZodString>;
2542
+ place: z.ZodOptional<z.ZodEnum<{
2543
+ main: "main";
2544
+ side: "side";
2545
+ }>>;
2546
+ initial: z.ZodUnion<readonly [z.ZodArray<z.ZodObject<{
2547
+ id: z.ZodString;
2548
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2549
+ }, z.core.$strict>>, z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>]>;
2550
+ }, z.core.$strict>, z.ZodObject<{
2551
+ kind: z.ZodLiteral<"queue">;
2552
+ label: z.ZodOptional<z.ZodString>;
2553
+ place: z.ZodOptional<z.ZodEnum<{
2554
+ main: "main";
2555
+ side: "side";
2556
+ }>>;
2557
+ initial: z.ZodUnion<readonly [z.ZodArray<z.ZodObject<{
2558
+ id: z.ZodString;
2559
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2560
+ }, z.core.$strict>>, z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>]>;
2561
+ }, z.core.$strict>, z.ZodObject<{
2562
+ initial: z.ZodUnion<readonly [z.ZodArray<z.ZodObject<{
2563
+ id: z.ZodString;
2564
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2565
+ }, z.core.$strict>>, z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>]>;
2566
+ kind: z.ZodLiteral<"linkedList">;
2567
+ label: z.ZodOptional<z.ZodString>;
2568
+ place: z.ZodOptional<z.ZodEnum<{
2569
+ main: "main";
2570
+ side: "side";
2571
+ }>>;
2572
+ doubly: z.ZodOptional<z.ZodBoolean>;
2573
+ circular: z.ZodOptional<z.ZodBoolean>;
2574
+ }, z.core.$strict>, z.ZodObject<{
2575
+ kind: z.ZodLiteral<"tree">;
2576
+ label: z.ZodOptional<z.ZodString>;
2577
+ place: z.ZodOptional<z.ZodEnum<{
2578
+ main: "main";
2579
+ side: "side";
2580
+ }>>;
2581
+ binary: z.ZodOptional<z.ZodBoolean>;
2582
+ nodes: z.ZodOptional<z.ZodArray<z.ZodObject<{
2583
+ id: z.ZodString;
2584
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2585
+ children: z.ZodOptional<z.ZodArray<z.ZodNullable<z.ZodString>>>;
2586
+ color: z.ZodOptional<z.ZodEnum<{
2587
+ red: "red";
2588
+ black: "black";
2589
+ }>>;
2590
+ }, z.core.$strict>>>;
2591
+ roots: z.ZodOptional<z.ZodArray<z.ZodString>>;
2592
+ rootList: z.ZodOptional<z.ZodEnum<{
2593
+ circular: "circular";
2594
+ list: "list";
2595
+ }>>;
2596
+ levelOrder: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>>;
2597
+ }, z.core.$strict>, z.ZodObject<{
2598
+ kind: z.ZodLiteral<"graph">;
2599
+ label: z.ZodOptional<z.ZodString>;
2600
+ place: z.ZodOptional<z.ZodEnum<{
2601
+ main: "main";
2602
+ side: "side";
2603
+ }>>;
2604
+ directed: z.ZodOptional<z.ZodBoolean>;
2605
+ layout: z.ZodOptional<z.ZodEnum<{
2606
+ auto: "auto";
2607
+ circle: "circle";
2608
+ layered: "layered";
2609
+ grid: "grid";
2610
+ manual: "manual";
2611
+ }>>;
2612
+ nodes: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
2613
+ id: z.ZodString;
2614
+ x: z.ZodOptional<z.ZodNumber>;
2615
+ y: z.ZodOptional<z.ZodNumber>;
2616
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>;
2617
+ }, z.core.$strict>, z.ZodString, z.ZodNumber]>>>;
2618
+ edges: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
2619
+ from: z.ZodString;
2620
+ to: z.ZodString;
2621
+ weight: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>;
2622
+ id: z.ZodOptional<z.ZodString>;
2623
+ }, z.core.$strict>, z.ZodTuple<[z.ZodString, z.ZodString], null>, z.ZodTuple<[z.ZodString, z.ZodString, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>], null>]>>>;
2624
+ }, z.core.$strict>, z.ZodObject<{
2625
+ kind: z.ZodLiteral<"table">;
2626
+ label: z.ZodOptional<z.ZodString>;
2627
+ place: z.ZodOptional<z.ZodEnum<{
2628
+ main: "main";
2629
+ side: "side";
2630
+ }>>;
2631
+ rows: z.ZodOptional<z.ZodInt>;
2632
+ columns: z.ZodOptional<z.ZodInt>;
2633
+ initial: z.ZodOptional<z.ZodArray<z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>>>;
2634
+ rowLabels: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>>;
2635
+ columnLabels: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>>;
2636
+ cells: z.ZodOptional<z.ZodArray<z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>>>;
2637
+ }, z.core.$strict>, z.ZodObject<{
2638
+ kind: z.ZodLiteral<"hashTable">;
2639
+ label: z.ZodOptional<z.ZodString>;
2640
+ place: z.ZodOptional<z.ZodEnum<{
2641
+ main: "main";
2642
+ side: "side";
2643
+ }>>;
2644
+ size: z.ZodOptional<z.ZodInt>;
2645
+ initial: z.ZodOptional<z.ZodArray<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
2646
+ id: z.ZodString;
2647
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2648
+ }, z.core.$strict>, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>]>>>>;
2649
+ buckets: z.ZodOptional<z.ZodArray<z.ZodArray<z.ZodObject<{
2650
+ id: z.ZodString;
2651
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2652
+ }, z.core.$strict>>>>;
2653
+ }, z.core.$strict>, z.ZodObject<{
2654
+ kind: z.ZodLiteral<"priorityQueue">;
2655
+ label: z.ZodOptional<z.ZodString>;
2656
+ place: z.ZodOptional<z.ZodEnum<{
2657
+ main: "main";
2658
+ side: "side";
2659
+ }>>;
2660
+ order: z.ZodOptional<z.ZodEnum<{
2661
+ min: "min";
2662
+ max: "max";
2663
+ }>>;
2664
+ initial: z.ZodArray<z.ZodObject<{
2665
+ id: z.ZodOptional<z.ZodString>;
2666
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2667
+ key: z.ZodNullable<z.ZodNumber>;
2668
+ }, z.core.$strict>>;
2669
+ }, z.core.$strict>, z.ZodObject<{
2670
+ kind: z.ZodLiteral<"btree">;
2671
+ label: z.ZodOptional<z.ZodString>;
2672
+ place: z.ZodOptional<z.ZodEnum<{
2673
+ main: "main";
2674
+ side: "side";
2675
+ }>>;
2676
+ nodes: z.ZodOptional<z.ZodArray<z.ZodObject<{
2677
+ id: z.ZodString;
2678
+ keys: z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
2679
+ id: z.ZodString;
2680
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2681
+ }, z.core.$strict>, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>]>>;
2682
+ children: z.ZodOptional<z.ZodArray<z.ZodString>>;
2683
+ }, z.core.$strict>>>;
2684
+ root: z.ZodOptional<z.ZodString>;
2685
+ }, z.core.$strict>, z.ZodObject<{
2686
+ points: z.ZodOptional<z.ZodArray<z.ZodObject<{
2687
+ id: z.ZodString;
2688
+ x: z.ZodNumber;
2689
+ y: z.ZodNumber;
2690
+ label: z.ZodOptional<z.ZodString>;
2691
+ }, z.core.$strict>>>;
2692
+ segments: z.ZodOptional<z.ZodArray<z.ZodObject<{
2693
+ id: z.ZodString;
2694
+ from: z.ZodString;
2695
+ to: z.ZodString;
2696
+ label: z.ZodOptional<z.ZodString>;
2697
+ }, z.core.$strict>>>;
2698
+ kind: z.ZodLiteral<"plane">;
2699
+ label: z.ZodOptional<z.ZodString>;
2700
+ place: z.ZodOptional<z.ZodEnum<{
2701
+ main: "main";
2702
+ side: "side";
2703
+ }>>;
2704
+ axes: z.ZodOptional<z.ZodBoolean>;
2705
+ }, z.core.$strict>], "kind">>;
2706
+ steps: z.ZodArray<z.ZodObject<{
2707
+ actions: z.ZodArray<z.ZodUnion<readonly [z.ZodDiscriminatedUnion<[z.ZodObject<{
2708
+ type: z.ZodLiteral<"set">;
2709
+ index: z.ZodInt;
2710
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2711
+ } & {
2712
+ target: z.ZodString;
2713
+ }, z.core.$strict>, z.ZodObject<{
2714
+ type: z.ZodLiteral<"swap">;
2715
+ i: z.ZodInt;
2716
+ j: z.ZodInt;
2717
+ } & {
2718
+ target: z.ZodString;
2719
+ }, z.core.$strict>, z.ZodObject<{
2720
+ type: z.ZodLiteral<"insert">;
2721
+ index: z.ZodInt;
2722
+ element: z.ZodUnion<readonly [z.ZodObject<{
2723
+ id: z.ZodString;
2724
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2725
+ }, z.core.$strict>, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>]>;
2726
+ } & {
2727
+ target: z.ZodString;
2728
+ }, z.core.$strict>, z.ZodObject<{
2729
+ type: z.ZodLiteral<"remove">;
2730
+ index: z.ZodInt;
2731
+ } & {
2732
+ target: z.ZodString;
2733
+ }, z.core.$strict>, z.ZodObject<{
2734
+ type: z.ZodLiteral<"compare">;
2735
+ i: z.ZodInt;
2736
+ j: z.ZodInt;
2737
+ } & {
2738
+ target: z.ZodString;
2739
+ }, z.core.$strict>, z.ZodObject<{
2740
+ type: z.ZodLiteral<"highlight">;
2741
+ indices: z.ZodArray<z.ZodInt>;
2742
+ } & {
2743
+ target: z.ZodString;
2744
+ }, z.core.$strict>, z.ZodObject<{
2745
+ type: z.ZodLiteral<"pointer">;
2746
+ name: z.ZodString;
2747
+ index: z.ZodNullable<z.ZodInt>;
2748
+ } & {
2749
+ target: z.ZodString;
2750
+ }, z.core.$strict>, z.ZodObject<{
2751
+ type: z.ZodLiteral<"settle">;
2752
+ index: z.ZodInt;
2753
+ } & {
2754
+ target: z.ZodString;
2755
+ }, z.core.$strict>, z.ZodObject<{
2756
+ type: z.ZodLiteral<"align">;
2757
+ shift: z.ZodInt;
2758
+ matched: z.ZodOptional<z.ZodInt>;
2759
+ } & {
2760
+ target: z.ZodString;
2761
+ }, z.core.$strict>, z.ZodObject<{
2762
+ type: z.ZodLiteral<"check">;
2763
+ j: z.ZodInt;
2764
+ } & {
2765
+ target: z.ZodString;
2766
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
2767
+ type: z.ZodLiteral<"push">;
2768
+ element: z.ZodUnion<readonly [z.ZodObject<{
2769
+ id: z.ZodString;
2770
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2771
+ }, z.core.$strict>, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>]>;
2772
+ } & {
2773
+ target: z.ZodString;
2774
+ }, z.core.$strict>, z.ZodObject<{
2775
+ type: z.ZodLiteral<"pop">;
2776
+ } & {
2777
+ target: z.ZodString;
2778
+ }, z.core.$strict>, z.ZodObject<{
2779
+ type: z.ZodLiteral<"peek">;
2780
+ } & {
2781
+ target: z.ZodString;
2782
+ }, z.core.$strict>, z.ZodObject<{
2783
+ type: z.ZodLiteral<"highlight">;
2784
+ indices: z.ZodArray<z.ZodInt>;
2785
+ } & {
2786
+ target: z.ZodString;
2787
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
2788
+ type: z.ZodLiteral<"enqueue">;
2789
+ element: z.ZodUnion<readonly [z.ZodObject<{
2790
+ id: z.ZodString;
2791
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2792
+ }, z.core.$strict>, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>]>;
2793
+ } & {
2794
+ target: z.ZodString;
2795
+ }, z.core.$strict>, z.ZodObject<{
2796
+ type: z.ZodLiteral<"dequeue">;
2797
+ } & {
2798
+ target: z.ZodString;
2799
+ }, z.core.$strict>, z.ZodObject<{
2800
+ type: z.ZodLiteral<"pushFront">;
2801
+ element: z.ZodUnion<readonly [z.ZodObject<{
2802
+ id: z.ZodString;
2803
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2804
+ }, z.core.$strict>, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>]>;
2805
+ } & {
2806
+ target: z.ZodString;
2807
+ }, z.core.$strict>, z.ZodObject<{
2808
+ type: z.ZodLiteral<"popBack">;
2809
+ } & {
2810
+ target: z.ZodString;
2811
+ }, z.core.$strict>, z.ZodObject<{
2812
+ type: z.ZodLiteral<"peek">;
2813
+ end: z.ZodOptional<z.ZodEnum<{
2814
+ front: "front";
2815
+ back: "back";
2816
+ }>>;
2817
+ } & {
2818
+ target: z.ZodString;
2819
+ }, z.core.$strict>, z.ZodObject<{
2820
+ type: z.ZodLiteral<"highlight">;
2821
+ indices: z.ZodArray<z.ZodInt>;
2822
+ } & {
2823
+ target: z.ZodString;
2824
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
2825
+ type: z.ZodLiteral<"insert">;
2826
+ index: z.ZodInt;
2827
+ element: z.ZodUnion<readonly [z.ZodObject<{
2828
+ id: z.ZodString;
2829
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2830
+ }, z.core.$strict>, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>]>;
2831
+ } & {
2832
+ target: z.ZodString;
2833
+ }, z.core.$strict>, z.ZodObject<{
2834
+ type: z.ZodLiteral<"remove">;
2835
+ index: z.ZodInt;
2836
+ } & {
2837
+ target: z.ZodString;
2838
+ }, z.core.$strict>, z.ZodObject<{
2839
+ type: z.ZodLiteral<"set">;
2840
+ index: z.ZodInt;
2841
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2842
+ } & {
2843
+ target: z.ZodString;
2844
+ }, z.core.$strict>, z.ZodObject<{
2845
+ type: z.ZodLiteral<"move">;
2846
+ from: z.ZodInt;
2847
+ to: z.ZodInt;
2848
+ } & {
2849
+ target: z.ZodString;
2850
+ }, z.core.$strict>, z.ZodObject<{
2851
+ type: z.ZodLiteral<"link">;
2852
+ from: z.ZodInt;
2853
+ to: z.ZodNullable<z.ZodInt>;
2854
+ field: z.ZodOptional<z.ZodEnum<{
2855
+ next: "next";
2856
+ prev: "prev";
2857
+ }>>;
2858
+ } & {
2859
+ target: z.ZodString;
2860
+ }, z.core.$strict>, z.ZodObject<{
2861
+ type: z.ZodLiteral<"pointer">;
2862
+ name: z.ZodString;
2863
+ index: z.ZodNullable<z.ZodInt>;
2864
+ } & {
2865
+ target: z.ZodString;
2866
+ }, z.core.$strict>, z.ZodObject<{
2867
+ type: z.ZodLiteral<"highlight">;
2868
+ indices: z.ZodArray<z.ZodInt>;
2869
+ } & {
2870
+ target: z.ZodString;
2871
+ }, z.core.$strict>, z.ZodObject<{
2872
+ type: z.ZodLiteral<"visit">;
2873
+ index: z.ZodInt;
2874
+ } & {
2875
+ target: z.ZodString;
2876
+ }, z.core.$strict>, z.ZodObject<{
2877
+ type: z.ZodLiteral<"settle">;
2878
+ index: z.ZodInt;
2879
+ } & {
2880
+ target: z.ZodString;
2881
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
2882
+ slot: z.ZodOptional<z.ZodUnion<readonly [z.ZodInt, z.ZodEnum<{
2883
+ left: "left";
2884
+ right: "right";
2885
+ }>]>>;
2886
+ type: z.ZodLiteral<"addNode">;
2887
+ node: z.ZodUnion<readonly [z.ZodObject<{
2888
+ id: z.ZodString;
2889
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2890
+ color: z.ZodOptional<z.ZodEnum<{
2891
+ red: "red";
2892
+ black: "black";
2893
+ }>>;
2894
+ }, z.core.$strict>, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>]>;
2895
+ parent: z.ZodNullable<z.ZodString>;
2896
+ } & {
2897
+ target: z.ZodString;
2898
+ }, z.core.$strict>, z.ZodObject<{
2899
+ type: z.ZodLiteral<"removeNode">;
2900
+ node: z.ZodString;
2901
+ } & {
2902
+ target: z.ZodString;
2903
+ }, z.core.$strict>, z.ZodObject<{
2904
+ slot: z.ZodOptional<z.ZodUnion<readonly [z.ZodInt, z.ZodEnum<{
2905
+ left: "left";
2906
+ right: "right";
2907
+ }>]>>;
2908
+ type: z.ZodLiteral<"setChild">;
2909
+ parent: z.ZodString;
2910
+ child: z.ZodNullable<z.ZodString>;
2911
+ } & {
2912
+ target: z.ZodString;
2913
+ }, z.core.$strict>, z.ZodObject<{
2914
+ type: z.ZodLiteral<"detach">;
2915
+ node: z.ZodString;
2916
+ slot: z.ZodOptional<z.ZodInt>;
2917
+ } & {
2918
+ target: z.ZodString;
2919
+ }, z.core.$strict>, z.ZodObject<{
2920
+ type: z.ZodLiteral<"rotate">;
2921
+ node: z.ZodString;
2922
+ direction: z.ZodEnum<{
2923
+ left: "left";
2924
+ right: "right";
2925
+ }>;
2926
+ } & {
2927
+ target: z.ZodString;
2928
+ }, z.core.$strict>, z.ZodObject<{
2929
+ type: z.ZodLiteral<"setValue">;
2930
+ node: z.ZodString;
2931
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
2932
+ } & {
2933
+ target: z.ZodString;
2934
+ }, z.core.$strict>, z.ZodObject<{
2935
+ type: z.ZodLiteral<"swapValues">;
2936
+ a: z.ZodString;
2937
+ b: z.ZodString;
2938
+ } & {
2939
+ target: z.ZodString;
2940
+ }, z.core.$strict>, z.ZodObject<{
2941
+ type: z.ZodLiteral<"setColor">;
2942
+ node: z.ZodString;
2943
+ color: z.ZodNullable<z.ZodEnum<{
2944
+ red: "red";
2945
+ black: "black";
2946
+ }>>;
2947
+ } & {
2948
+ target: z.ZodString;
2949
+ }, z.core.$strict>, z.ZodObject<{
2950
+ type: z.ZodLiteral<"highlight">;
2951
+ nodes: z.ZodArray<z.ZodString>;
2952
+ } & {
2953
+ target: z.ZodString;
2954
+ }, z.core.$strict>, z.ZodObject<{
2955
+ type: z.ZodLiteral<"compare">;
2956
+ a: z.ZodString;
2957
+ b: z.ZodString;
2958
+ } & {
2959
+ target: z.ZodString;
2960
+ }, z.core.$strict>, z.ZodObject<{
2961
+ type: z.ZodLiteral<"visit">;
2962
+ node: z.ZodString;
2963
+ } & {
2964
+ target: z.ZodString;
2965
+ }, z.core.$strict>, z.ZodObject<{
2966
+ type: z.ZodLiteral<"settle">;
2967
+ node: z.ZodString;
2968
+ } & {
2969
+ target: z.ZodString;
2970
+ }, z.core.$strict>, z.ZodObject<{
2971
+ type: z.ZodLiteral<"group">;
2972
+ node: z.ZodString;
2973
+ group: z.ZodNullable<z.ZodLiteral<0 | 1 | 4 | 2 | 3 | 5>>;
2974
+ } & {
2975
+ target: z.ZodString;
2976
+ }, z.core.$strict>, z.ZodObject<{
2977
+ type: z.ZodLiteral<"pointer">;
2978
+ name: z.ZodString;
2979
+ node: z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
2980
+ parent: z.ZodString;
2981
+ slot: z.ZodUnion<readonly [z.ZodInt, z.ZodEnum<{
2982
+ left: "left";
2983
+ right: "right";
2984
+ }>]>;
2985
+ }, z.core.$strict>]>>;
2986
+ } & {
2987
+ target: z.ZodString;
2988
+ }, z.core.$strict>, z.ZodObject<{
2989
+ type: z.ZodLiteral<"annotate">;
2990
+ node: z.ZodString;
2991
+ text: z.ZodNullable<z.ZodString>;
2992
+ field: z.ZodOptional<z.ZodString>;
2993
+ } & {
2994
+ target: z.ZodString;
2995
+ }, z.core.$strict>, z.ZodObject<{
2996
+ type: z.ZodLiteral<"markEdge">;
2997
+ node: z.ZodString;
2998
+ mark: z.ZodNullable<z.ZodEnum<{
2999
+ selected: "selected";
3000
+ rejected: "rejected";
3001
+ }>>;
3002
+ } & {
3003
+ target: z.ZodString;
3004
+ }, z.core.$strict>, z.ZodObject<{
3005
+ type: z.ZodLiteral<"labelEdge">;
3006
+ node: z.ZodString;
3007
+ label: z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
3008
+ } & {
3009
+ target: z.ZodString;
3010
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
3011
+ type: z.ZodLiteral<"addNode">;
3012
+ node: z.ZodUnion<readonly [z.ZodObject<{
3013
+ id: z.ZodString;
3014
+ x: z.ZodOptional<z.ZodNumber>;
3015
+ y: z.ZodOptional<z.ZodNumber>;
3016
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>;
3017
+ }, z.core.$strict>, z.ZodString, z.ZodNumber]>;
3018
+ } & {
3019
+ target: z.ZodString;
3020
+ }, z.core.$strict>, z.ZodObject<{
3021
+ type: z.ZodLiteral<"removeNode">;
3022
+ node: z.ZodString;
3023
+ } & {
3024
+ target: z.ZodString;
3025
+ }, z.core.$strict>, z.ZodObject<{
3026
+ type: z.ZodLiteral<"setValue">;
3027
+ node: z.ZodString;
3028
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
3029
+ } & {
3030
+ target: z.ZodString;
3031
+ }, z.core.$strict>, z.ZodObject<{
3032
+ type: z.ZodLiteral<"addEdge">;
3033
+ edge: z.ZodUnion<readonly [z.ZodObject<{
3034
+ from: z.ZodString;
3035
+ to: z.ZodString;
3036
+ weight: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>;
3037
+ id: z.ZodOptional<z.ZodString>;
3038
+ }, z.core.$strict>, z.ZodTuple<[z.ZodString, z.ZodString], null>, z.ZodTuple<[z.ZodString, z.ZodString, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>], null>]>;
3039
+ } & {
3040
+ target: z.ZodString;
3041
+ }, z.core.$strict>, z.ZodObject<{
3042
+ type: z.ZodLiteral<"removeEdge">;
3043
+ edge: z.ZodString;
3044
+ } & {
3045
+ target: z.ZodString;
3046
+ }, z.core.$strict>, z.ZodObject<{
3047
+ type: z.ZodLiteral<"setWeight">;
3048
+ edge: z.ZodString;
3049
+ weight: z.ZodNullable<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>;
3050
+ } & {
3051
+ target: z.ZodString;
3052
+ }, z.core.$strict>, z.ZodObject<{
3053
+ type: z.ZodLiteral<"highlight">;
3054
+ nodes: z.ZodOptional<z.ZodArray<z.ZodString>>;
3055
+ edges: z.ZodOptional<z.ZodArray<z.ZodString>>;
3056
+ } & {
3057
+ target: z.ZodString;
3058
+ }, z.core.$strict>, z.ZodObject<{
3059
+ type: z.ZodLiteral<"visit">;
3060
+ node: z.ZodString;
3061
+ } & {
3062
+ target: z.ZodString;
3063
+ }, z.core.$strict>, z.ZodObject<{
3064
+ type: z.ZodLiteral<"settle">;
3065
+ node: z.ZodString;
3066
+ } & {
3067
+ target: z.ZodString;
3068
+ }, z.core.$strict>, z.ZodObject<{
3069
+ type: z.ZodLiteral<"group">;
3070
+ node: z.ZodString;
3071
+ group: z.ZodNullable<z.ZodLiteral<0 | 1 | 4 | 2 | 3 | 5>>;
3072
+ } & {
3073
+ target: z.ZodString;
3074
+ }, z.core.$strict>, z.ZodObject<{
3075
+ type: z.ZodLiteral<"pointer">;
3076
+ name: z.ZodString;
3077
+ node: z.ZodNullable<z.ZodString>;
3078
+ } & {
3079
+ target: z.ZodString;
3080
+ }, z.core.$strict>, z.ZodObject<{
3081
+ type: z.ZodLiteral<"annotate">;
3082
+ node: z.ZodString;
3083
+ text: z.ZodNullable<z.ZodString>;
3084
+ } & {
3085
+ target: z.ZodString;
3086
+ }, z.core.$strict>, z.ZodObject<{
3087
+ type: z.ZodLiteral<"markEdge">;
3088
+ edge: z.ZodString;
3089
+ mark: z.ZodNullable<z.ZodEnum<{
3090
+ selected: "selected";
3091
+ rejected: "rejected";
3092
+ }>>;
3093
+ } & {
3094
+ target: z.ZodString;
3095
+ }, z.core.$strict>, z.ZodObject<{
3096
+ type: z.ZodLiteral<"resetMarks">;
3097
+ } & {
3098
+ target: z.ZodString;
3099
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
3100
+ type: z.ZodLiteral<"set">;
3101
+ cell: z.ZodTuple<[z.ZodInt, z.ZodInt], null>;
3102
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
3103
+ } & {
3104
+ target: z.ZodString;
3105
+ }, z.core.$strict>, z.ZodObject<{
3106
+ type: z.ZodLiteral<"highlight">;
3107
+ cells: z.ZodArray<z.ZodTuple<[z.ZodInt, z.ZodInt], null>>;
3108
+ } & {
3109
+ target: z.ZodString;
3110
+ }, z.core.$strict>, z.ZodObject<{
3111
+ type: z.ZodLiteral<"depend">;
3112
+ cell: z.ZodTuple<[z.ZodInt, z.ZodInt], null>;
3113
+ on: z.ZodArray<z.ZodTuple<[z.ZodInt, z.ZodInt], null>>;
3114
+ } & {
3115
+ target: z.ZodString;
3116
+ }, z.core.$strict>, z.ZodObject<{
3117
+ type: z.ZodLiteral<"settle">;
3118
+ cells: z.ZodArray<z.ZodTuple<[z.ZodInt, z.ZodInt], null>>;
3119
+ } & {
3120
+ target: z.ZodString;
3121
+ }, z.core.$strict>, z.ZodObject<{
3122
+ type: z.ZodLiteral<"resetMarks">;
3123
+ } & {
3124
+ target: z.ZodString;
3125
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
3126
+ type: z.ZodLiteral<"insert">;
3127
+ bucket: z.ZodInt;
3128
+ element: z.ZodUnion<readonly [z.ZodObject<{
3129
+ id: z.ZodString;
3130
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
3131
+ }, z.core.$strict>, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>]>;
3132
+ index: z.ZodOptional<z.ZodInt>;
3133
+ } & {
3134
+ target: z.ZodString;
3135
+ }, z.core.$strict>, z.ZodObject<{
3136
+ type: z.ZodLiteral<"remove">;
3137
+ bucket: z.ZodInt;
3138
+ index: z.ZodInt;
3139
+ } & {
3140
+ target: z.ZodString;
3141
+ }, z.core.$strict>, z.ZodObject<{
3142
+ type: z.ZodLiteral<"set">;
3143
+ bucket: z.ZodInt;
3144
+ index: z.ZodInt;
3145
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
3146
+ } & {
3147
+ target: z.ZodString;
3148
+ }, z.core.$strict>, z.ZodObject<{
3149
+ type: z.ZodLiteral<"highlight">;
3150
+ bucket: z.ZodInt;
3151
+ indices: z.ZodOptional<z.ZodArray<z.ZodInt>>;
3152
+ } & {
3153
+ target: z.ZodString;
3154
+ }, z.core.$strict>, z.ZodObject<{
3155
+ type: z.ZodLiteral<"settle">;
3156
+ bucket: z.ZodInt;
3157
+ index: z.ZodInt;
3158
+ } & {
3159
+ target: z.ZodString;
3160
+ }, z.core.$strict>, z.ZodObject<{
3161
+ type: z.ZodLiteral<"resetMarks">;
3162
+ } & {
3163
+ target: z.ZodString;
3164
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
3165
+ type: z.ZodLiteral<"insert">;
3166
+ element: z.ZodUnion<readonly [z.ZodObject<{
3167
+ id: z.ZodString;
3168
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
3169
+ }, z.core.$strict>, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>]>;
3170
+ key: z.ZodNullable<z.ZodNumber>;
3171
+ } & {
3172
+ target: z.ZodString;
3173
+ }, z.core.$strict>, z.ZodObject<{
3174
+ type: z.ZodLiteral<"extract">;
3175
+ } & {
3176
+ target: z.ZodString;
3177
+ }, z.core.$strict>, z.ZodObject<{
3178
+ type: z.ZodLiteral<"setKey">;
3179
+ id: z.ZodString;
3180
+ key: z.ZodNullable<z.ZodNumber>;
3181
+ } & {
3182
+ target: z.ZodString;
3183
+ }, z.core.$strict>, z.ZodObject<{
3184
+ type: z.ZodLiteral<"peek">;
3185
+ } & {
3186
+ target: z.ZodString;
3187
+ }, z.core.$strict>, z.ZodObject<{
3188
+ type: z.ZodLiteral<"highlight">;
3189
+ ids: z.ZodArray<z.ZodString>;
3190
+ } & {
3191
+ target: z.ZodString;
3192
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
3193
+ type: z.ZodLiteral<"insertKey">;
3194
+ node: z.ZodString;
3195
+ index: z.ZodInt;
3196
+ key: z.ZodUnion<readonly [z.ZodObject<{
3197
+ id: z.ZodString;
3198
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
3199
+ }, z.core.$strict>, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>]>;
3200
+ } & {
3201
+ target: z.ZodString;
3202
+ }, z.core.$strict>, z.ZodObject<{
3203
+ type: z.ZodLiteral<"removeKey">;
3204
+ key: z.ZodString;
3205
+ } & {
3206
+ target: z.ZodString;
3207
+ }, z.core.$strict>, z.ZodObject<{
3208
+ type: z.ZodLiteral<"setKey">;
3209
+ key: z.ZodString;
3210
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
3211
+ } & {
3212
+ target: z.ZodString;
3213
+ }, z.core.$strict>, z.ZodObject<{
3214
+ type: z.ZodLiteral<"lift">;
3215
+ key: z.ZodString;
3216
+ over: z.ZodString;
3217
+ } & {
3218
+ target: z.ZodString;
3219
+ }, z.core.$strict>, z.ZodObject<{
3220
+ type: z.ZodLiteral<"split">;
3221
+ node: z.ZodString;
3222
+ index: z.ZodInt;
3223
+ newNode: z.ZodString;
3224
+ } & {
3225
+ target: z.ZodString;
3226
+ }, z.core.$strict>, z.ZodObject<{
3227
+ type: z.ZodLiteral<"grow">;
3228
+ newRoot: z.ZodString;
3229
+ } & {
3230
+ target: z.ZodString;
3231
+ }, z.core.$strict>, z.ZodObject<{
3232
+ type: z.ZodLiteral<"merge">;
3233
+ node: z.ZodString;
3234
+ index: z.ZodInt;
3235
+ } & {
3236
+ target: z.ZodString;
3237
+ }, z.core.$strict>, z.ZodObject<{
3238
+ type: z.ZodLiteral<"shrink">;
3239
+ } & {
3240
+ target: z.ZodString;
3241
+ }, z.core.$strict>, z.ZodObject<{
3242
+ type: z.ZodLiteral<"borrow">;
3243
+ node: z.ZodString;
3244
+ child: z.ZodInt;
3245
+ from: z.ZodEnum<{
3246
+ left: "left";
3247
+ right: "right";
3248
+ }>;
3249
+ } & {
3250
+ target: z.ZodString;
3251
+ }, z.core.$strict>, z.ZodObject<{
3252
+ type: z.ZodLiteral<"highlight">;
3253
+ keys: z.ZodOptional<z.ZodArray<z.ZodString>>;
3254
+ nodes: z.ZodOptional<z.ZodArray<z.ZodString>>;
3255
+ } & {
3256
+ target: z.ZodString;
3257
+ }, z.core.$strict>, z.ZodObject<{
3258
+ type: z.ZodLiteral<"settle">;
3259
+ key: z.ZodString;
3260
+ } & {
3261
+ target: z.ZodString;
3262
+ }, z.core.$strict>, z.ZodObject<{
3263
+ type: z.ZodLiteral<"pointer">;
3264
+ name: z.ZodString;
3265
+ node: z.ZodNullable<z.ZodString>;
3266
+ } & {
3267
+ target: z.ZodString;
3268
+ }, z.core.$strict>, z.ZodObject<{
3269
+ type: z.ZodLiteral<"annotate">;
3270
+ node: z.ZodString;
3271
+ text: z.ZodNullable<z.ZodString>;
3272
+ } & {
3273
+ target: z.ZodString;
3274
+ }, z.core.$strict>], "type">, z.ZodDiscriminatedUnion<[z.ZodObject<{
3275
+ type: z.ZodLiteral<"addPoint">;
3276
+ point: z.ZodObject<{
3277
+ id: z.ZodString;
3278
+ x: z.ZodNumber;
3279
+ y: z.ZodNumber;
3280
+ label: z.ZodOptional<z.ZodString>;
3281
+ }, z.core.$strict>;
3282
+ } & {
3283
+ target: z.ZodString;
3284
+ }, z.core.$strict>, z.ZodObject<{
3285
+ type: z.ZodLiteral<"removePoint">;
3286
+ id: z.ZodString;
3287
+ } & {
3288
+ target: z.ZodString;
3289
+ }, z.core.$strict>, z.ZodObject<{
3290
+ type: z.ZodLiteral<"addSegment">;
3291
+ segment: z.ZodObject<{
3292
+ id: z.ZodString;
3293
+ from: z.ZodString;
3294
+ to: z.ZodString;
3295
+ label: z.ZodOptional<z.ZodString>;
3296
+ }, z.core.$strict>;
3297
+ } & {
3298
+ target: z.ZodString;
3299
+ }, z.core.$strict>, z.ZodObject<{
3300
+ type: z.ZodLiteral<"removeSegment">;
3301
+ id: z.ZodString;
3302
+ } & {
3303
+ target: z.ZodString;
3304
+ }, z.core.$strict>, z.ZodObject<{
3305
+ type: z.ZodLiteral<"label">;
3306
+ segment: z.ZodString;
3307
+ text: z.ZodNullable<z.ZodString>;
3308
+ } & {
3309
+ target: z.ZodString;
3310
+ }, z.core.$strict>, z.ZodObject<{
3311
+ type: z.ZodLiteral<"highlight">;
3312
+ points: z.ZodOptional<z.ZodArray<z.ZodString>>;
3313
+ segments: z.ZodOptional<z.ZodArray<z.ZodString>>;
3314
+ } & {
3315
+ target: z.ZodString;
3316
+ }, z.core.$strict>, z.ZodObject<{
3317
+ type: z.ZodLiteral<"compare">;
3318
+ points: z.ZodArray<z.ZodString>;
3319
+ } & {
3320
+ target: z.ZodString;
3321
+ }, z.core.$strict>, z.ZodObject<{
3322
+ type: z.ZodLiteral<"visit">;
3323
+ point: z.ZodString;
3324
+ } & {
3325
+ target: z.ZodString;
3326
+ }, z.core.$strict>, z.ZodObject<{
3327
+ type: z.ZodLiteral<"settle">;
3328
+ point: z.ZodString;
3329
+ } & {
3330
+ target: z.ZodString;
3331
+ }, z.core.$strict>, z.ZodObject<{
3332
+ type: z.ZodLiteral<"select">;
3333
+ segment: z.ZodString;
3334
+ on: z.ZodBoolean;
3335
+ } & {
3336
+ target: z.ZodString;
3337
+ }, z.core.$strict>, z.ZodObject<{
3338
+ type: z.ZodLiteral<"pointer">;
3339
+ name: z.ZodString;
3340
+ point: z.ZodNullable<z.ZodString>;
3341
+ } & {
3342
+ target: z.ZodString;
3343
+ }, z.core.$strict>, z.ZodObject<{
3344
+ type: z.ZodLiteral<"line">;
3345
+ name: z.ZodString;
3346
+ x: z.ZodNullable<z.ZodNumber>;
3347
+ } & {
3348
+ target: z.ZodString;
3349
+ }, z.core.$strict>], "type">]>>;
3350
+ meta: z.ZodOptional<z.ZodObject<{
3351
+ id: z.ZodOptional<z.ZodString>;
3352
+ at: z.ZodOptional<z.ZodString>;
3353
+ line: z.ZodOptional<z.ZodInt>;
3354
+ narration: z.ZodOptional<z.ZodString>;
3355
+ vars: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
3356
+ }, z.core.$strict>>;
3357
+ }, z.core.$strict>>;
3358
+ sections: z.ZodOptional<z.ZodArray<z.ZodObject<{
3359
+ id: z.ZodString;
3360
+ title: z.ZodString;
3361
+ start: z.ZodInt;
3362
+ }, z.core.$strict>>>;
3363
+ }, z.core.$strict>;
3364
+ export type VisualizationInput = z.infer<typeof VisualizationInput>;
3365
+ /**
3366
+ * First-pass schema used by the parser: actions are only checked for
3367
+ * `target` and `type`, so that their payload can then be validated against
3368
+ * the schema of the target's kind with precise error messages.
3369
+ */
3370
+ export declare const Envelope: z.ZodObject<{
3371
+ version: z.ZodEnum<{
3372
+ "1.0": "1.0";
3373
+ }>;
3374
+ title: z.ZodOptional<z.ZodString>;
3375
+ source: z.ZodOptional<z.ZodObject<{
3376
+ language: z.ZodOptional<z.ZodString>;
3377
+ code: z.ZodString;
3378
+ }, z.core.$strict>>;
3379
+ sources: z.ZodOptional<z.ZodArray<z.ZodObject<{
3380
+ language: z.ZodString;
3381
+ code: z.ZodString;
3382
+ anchors: z.ZodRecord<z.ZodString, z.ZodInt>;
3383
+ }, z.core.$strict>>>;
3384
+ structures: z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
3385
+ kind: z.ZodLiteral<"array">;
3386
+ label: z.ZodOptional<z.ZodString>;
3387
+ place: z.ZodOptional<z.ZodEnum<{
3388
+ main: "main";
3389
+ side: "side";
3390
+ }>>;
3391
+ view: z.ZodOptional<z.ZodEnum<{
3392
+ row: "row";
3393
+ tree: "tree";
3394
+ heap: "heap";
3395
+ }>>;
3396
+ shift: z.ZodOptional<z.ZodInt>;
3397
+ initial: z.ZodUnion<readonly [z.ZodArray<z.ZodObject<{
3398
+ id: z.ZodString;
3399
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
3400
+ }, z.core.$strict>>, z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>]>;
3401
+ pattern: z.ZodOptional<z.ZodUnion<readonly [z.ZodArray<z.ZodObject<{
3402
+ id: z.ZodString;
3403
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
3404
+ }, z.core.$strict>>, z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>]>>;
3405
+ }, z.core.$strict>, z.ZodObject<{
3406
+ kind: z.ZodLiteral<"stack">;
3407
+ label: z.ZodOptional<z.ZodString>;
3408
+ place: z.ZodOptional<z.ZodEnum<{
3409
+ main: "main";
3410
+ side: "side";
3411
+ }>>;
3412
+ initial: z.ZodUnion<readonly [z.ZodArray<z.ZodObject<{
3413
+ id: z.ZodString;
3414
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
3415
+ }, z.core.$strict>>, z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>]>;
3416
+ }, z.core.$strict>, z.ZodObject<{
3417
+ kind: z.ZodLiteral<"queue">;
3418
+ label: z.ZodOptional<z.ZodString>;
3419
+ place: z.ZodOptional<z.ZodEnum<{
3420
+ main: "main";
3421
+ side: "side";
3422
+ }>>;
3423
+ initial: z.ZodUnion<readonly [z.ZodArray<z.ZodObject<{
3424
+ id: z.ZodString;
3425
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
3426
+ }, z.core.$strict>>, z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>]>;
3427
+ }, z.core.$strict>, z.ZodObject<{
3428
+ initial: z.ZodUnion<readonly [z.ZodArray<z.ZodObject<{
3429
+ id: z.ZodString;
3430
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
3431
+ }, z.core.$strict>>, z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>]>;
3432
+ kind: z.ZodLiteral<"linkedList">;
3433
+ label: z.ZodOptional<z.ZodString>;
3434
+ place: z.ZodOptional<z.ZodEnum<{
3435
+ main: "main";
3436
+ side: "side";
3437
+ }>>;
3438
+ doubly: z.ZodOptional<z.ZodBoolean>;
3439
+ circular: z.ZodOptional<z.ZodBoolean>;
3440
+ }, z.core.$strict>, z.ZodObject<{
3441
+ kind: z.ZodLiteral<"tree">;
3442
+ label: z.ZodOptional<z.ZodString>;
3443
+ place: z.ZodOptional<z.ZodEnum<{
3444
+ main: "main";
3445
+ side: "side";
3446
+ }>>;
3447
+ binary: z.ZodOptional<z.ZodBoolean>;
3448
+ nodes: z.ZodOptional<z.ZodArray<z.ZodObject<{
3449
+ id: z.ZodString;
3450
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
3451
+ children: z.ZodOptional<z.ZodArray<z.ZodNullable<z.ZodString>>>;
3452
+ color: z.ZodOptional<z.ZodEnum<{
3453
+ red: "red";
3454
+ black: "black";
3455
+ }>>;
3456
+ }, z.core.$strict>>>;
3457
+ roots: z.ZodOptional<z.ZodArray<z.ZodString>>;
3458
+ rootList: z.ZodOptional<z.ZodEnum<{
3459
+ circular: "circular";
3460
+ list: "list";
3461
+ }>>;
3462
+ levelOrder: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>>;
3463
+ }, z.core.$strict>, z.ZodObject<{
3464
+ kind: z.ZodLiteral<"graph">;
3465
+ label: z.ZodOptional<z.ZodString>;
3466
+ place: z.ZodOptional<z.ZodEnum<{
3467
+ main: "main";
3468
+ side: "side";
3469
+ }>>;
3470
+ directed: z.ZodOptional<z.ZodBoolean>;
3471
+ layout: z.ZodOptional<z.ZodEnum<{
3472
+ auto: "auto";
3473
+ circle: "circle";
3474
+ layered: "layered";
3475
+ grid: "grid";
3476
+ manual: "manual";
3477
+ }>>;
3478
+ nodes: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
3479
+ id: z.ZodString;
3480
+ x: z.ZodOptional<z.ZodNumber>;
3481
+ y: z.ZodOptional<z.ZodNumber>;
3482
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>;
3483
+ }, z.core.$strict>, z.ZodString, z.ZodNumber]>>>;
3484
+ edges: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
3485
+ from: z.ZodString;
3486
+ to: z.ZodString;
3487
+ weight: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>;
3488
+ id: z.ZodOptional<z.ZodString>;
3489
+ }, z.core.$strict>, z.ZodTuple<[z.ZodString, z.ZodString], null>, z.ZodTuple<[z.ZodString, z.ZodString, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>], null>]>>>;
3490
+ }, z.core.$strict>, z.ZodObject<{
3491
+ kind: z.ZodLiteral<"table">;
3492
+ label: z.ZodOptional<z.ZodString>;
3493
+ place: z.ZodOptional<z.ZodEnum<{
3494
+ main: "main";
3495
+ side: "side";
3496
+ }>>;
3497
+ rows: z.ZodOptional<z.ZodInt>;
3498
+ columns: z.ZodOptional<z.ZodInt>;
3499
+ initial: z.ZodOptional<z.ZodArray<z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>>>;
3500
+ rowLabels: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>>;
3501
+ columnLabels: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>>;
3502
+ cells: z.ZodOptional<z.ZodArray<z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>>>>;
3503
+ }, z.core.$strict>, z.ZodObject<{
3504
+ kind: z.ZodLiteral<"hashTable">;
3505
+ label: z.ZodOptional<z.ZodString>;
3506
+ place: z.ZodOptional<z.ZodEnum<{
3507
+ main: "main";
3508
+ side: "side";
3509
+ }>>;
3510
+ size: z.ZodOptional<z.ZodInt>;
3511
+ initial: z.ZodOptional<z.ZodArray<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
3512
+ id: z.ZodString;
3513
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
3514
+ }, z.core.$strict>, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>]>>>>;
3515
+ buckets: z.ZodOptional<z.ZodArray<z.ZodArray<z.ZodObject<{
3516
+ id: z.ZodString;
3517
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
3518
+ }, z.core.$strict>>>>;
3519
+ }, z.core.$strict>, z.ZodObject<{
3520
+ kind: z.ZodLiteral<"priorityQueue">;
3521
+ label: z.ZodOptional<z.ZodString>;
3522
+ place: z.ZodOptional<z.ZodEnum<{
3523
+ main: "main";
3524
+ side: "side";
3525
+ }>>;
3526
+ order: z.ZodOptional<z.ZodEnum<{
3527
+ min: "min";
3528
+ max: "max";
3529
+ }>>;
3530
+ initial: z.ZodArray<z.ZodObject<{
3531
+ id: z.ZodOptional<z.ZodString>;
3532
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
3533
+ key: z.ZodNullable<z.ZodNumber>;
3534
+ }, z.core.$strict>>;
3535
+ }, z.core.$strict>, z.ZodObject<{
3536
+ kind: z.ZodLiteral<"btree">;
3537
+ label: z.ZodOptional<z.ZodString>;
3538
+ place: z.ZodOptional<z.ZodEnum<{
3539
+ main: "main";
3540
+ side: "side";
3541
+ }>>;
3542
+ nodes: z.ZodOptional<z.ZodArray<z.ZodObject<{
3543
+ id: z.ZodString;
3544
+ keys: z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
3545
+ id: z.ZodString;
3546
+ value: z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>;
3547
+ }, z.core.$strict>, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>]>>;
3548
+ children: z.ZodOptional<z.ZodArray<z.ZodString>>;
3549
+ }, z.core.$strict>>>;
3550
+ root: z.ZodOptional<z.ZodString>;
3551
+ }, z.core.$strict>, z.ZodObject<{
3552
+ points: z.ZodOptional<z.ZodArray<z.ZodObject<{
3553
+ id: z.ZodString;
3554
+ x: z.ZodNumber;
3555
+ y: z.ZodNumber;
3556
+ label: z.ZodOptional<z.ZodString>;
3557
+ }, z.core.$strict>>>;
3558
+ segments: z.ZodOptional<z.ZodArray<z.ZodObject<{
3559
+ id: z.ZodString;
3560
+ from: z.ZodString;
3561
+ to: z.ZodString;
3562
+ label: z.ZodOptional<z.ZodString>;
3563
+ }, z.core.$strict>>>;
3564
+ kind: z.ZodLiteral<"plane">;
3565
+ label: z.ZodOptional<z.ZodString>;
3566
+ place: z.ZodOptional<z.ZodEnum<{
3567
+ main: "main";
3568
+ side: "side";
3569
+ }>>;
3570
+ axes: z.ZodOptional<z.ZodBoolean>;
3571
+ }, z.core.$strict>], "kind">>;
3572
+ steps: z.ZodArray<z.ZodObject<{
3573
+ actions: z.ZodArray<z.ZodObject<{
3574
+ target: z.ZodString;
3575
+ type: z.ZodString;
3576
+ }, z.core.$loose>>;
3577
+ meta: z.ZodOptional<z.ZodObject<{
3578
+ id: z.ZodOptional<z.ZodString>;
3579
+ at: z.ZodOptional<z.ZodString>;
3580
+ line: z.ZodOptional<z.ZodInt>;
3581
+ narration: z.ZodOptional<z.ZodString>;
3582
+ vars: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
3583
+ }, z.core.$strict>>;
3584
+ }, z.core.$strict>>;
3585
+ sections: z.ZodOptional<z.ZodArray<z.ZodObject<{
3586
+ id: z.ZodString;
3587
+ title: z.ZodString;
3588
+ start: z.ZodInt;
3589
+ }, z.core.$strict>>>;
3590
+ }, z.core.$strict>;
3591
+ //# sourceMappingURL=visualization.d.ts.map