wizards 0.2.24 → 0.2.26

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 (69) hide show
  1. package/apps/runtime/dist/agents/architect.js +5 -0
  2. package/apps/runtime/dist/authoring/guide.js +55 -6
  3. package/apps/runtime/dist/connectors/builtin.js +17 -1
  4. package/apps/runtime/dist/connectors/imap.js +46 -2
  5. package/apps/runtime/dist/connectors/index.js +52 -18
  6. package/apps/runtime/dist/connectors/via-account.js +63 -0
  7. package/apps/runtime/dist/credits/estimate.js +12 -2
  8. package/apps/runtime/dist/engine/decide.js +82 -0
  9. package/apps/runtime/dist/engine/input.js +12 -5
  10. package/apps/runtime/dist/engine/requirements.js +80 -15
  11. package/apps/runtime/dist/engine/runner.js +252 -6
  12. package/apps/runtime/dist/engine/steps.js +206 -18
  13. package/apps/runtime/dist/engine/surface.js +90 -0
  14. package/apps/runtime/dist/render/downloads.js +7 -0
  15. package/apps/runtime/dist/routes/runs.js +18 -5
  16. package/apps/runtime/dist/services/relevance.js +17 -49
  17. package/apps/runtime/dist/tools/pages.js +31 -6
  18. package/apps/web/dist/assets/{Account-thPW7H4A.js → Account-Cnksw5Ea.js} +1 -1
  19. package/apps/web/dist/assets/{ChangelogDialog-mCszGL5_.js → ChangelogDialog-CdtQWq0m.js} +1 -1
  20. package/apps/web/dist/assets/{CreditsDialog-Com2Y3g8.js → CreditsDialog-Ti43boCN.js} +1 -1
  21. package/apps/web/dist/assets/EditorPage-N7EzlRSj.js +3 -0
  22. package/apps/web/dist/assets/{FlowPreview-CRsxtwhV.js → FlowPreview-IZcNrBJi.js} +1 -1
  23. package/apps/web/dist/assets/{Harness-CfgVRYpr.js → Harness-Cj-k02TA.js} +1 -1
  24. package/apps/web/dist/assets/{HomePage-DYKF3C1U.js → HomePage-bjdKkt84.js} +1 -1
  25. package/apps/web/dist/assets/{ImportWizard-BTp7XTsF.js → ImportWizard-DagFXYPM.js} +1 -1
  26. package/apps/web/dist/assets/{LocalRuntime-CYhPXwAv.js → LocalRuntime-Boi_zqQJ.js} +1 -1
  27. package/apps/web/dist/assets/NewWizardPage-DO5J8OpZ.js +2 -0
  28. package/apps/web/dist/assets/ProjectPage-DdG9wYsd.js +2 -0
  29. package/apps/web/dist/assets/{PublicRunner-ClB2-2EF.js → PublicRunner-B4ts9rT6.js} +1 -1
  30. package/apps/web/dist/assets/RunDrawer-LnVfCiYO.js +4 -0
  31. package/apps/web/dist/assets/RunnerView-DwffK7AA.js +70 -0
  32. package/apps/web/dist/assets/{SettingsPage-qDqiZ7th.js → SettingsPage-Cyx_jTlp.js} +1 -1
  33. package/apps/web/dist/assets/{SetupPage-BeBReYLP.js → SetupPage-CBDD4rpC.js} +1 -1
  34. package/apps/web/dist/assets/{SharePage-Cv8toByB.js → SharePage-70niRKaO.js} +1 -1
  35. package/apps/web/dist/assets/{api-rJBQEu1G.js → api-C4M6cbpW.js} +1 -1
  36. package/apps/web/dist/assets/changelog-COyL1B5X.js +1 -0
  37. package/apps/web/dist/assets/definition-DoCLtZZL.js +55 -0
  38. package/apps/web/dist/assets/{esm-DFNBMDKB.js → esm-CfW8Rmtq.js} +1 -1
  39. package/apps/web/dist/assets/index-CJ0YJ5HC.css +1 -0
  40. package/apps/web/dist/assets/{index-CoTWrikR.js → index-DMKXnSf-.js} +3 -3
  41. package/apps/web/dist/assets/meta-6jZygxJq.js +1 -0
  42. package/apps/web/dist/assets/{settings-menu-bsLDpw56.js → settings-menu-Dph4yXbO.js} +1 -1
  43. package/apps/web/dist/assets/{table-2-BdDuBcF2.js → star-UHmZXpjA.js} +1 -1
  44. package/apps/web/dist/assets/ui-BS348L4M.js +1 -0
  45. package/apps/web/dist/assets/wand-sparkles-IEd4jkyn.js +1 -0
  46. package/apps/web/dist/index.html +4 -4
  47. package/apps/web/dist/mcp/flow.html +60 -60
  48. package/node_modules/@engenty-wizards/shared/dist/decision.d.ts +76 -0
  49. package/node_modules/@engenty-wizards/shared/dist/decision.js +147 -0
  50. package/node_modules/@engenty-wizards/shared/dist/definition.d.ts +1048 -50
  51. package/node_modules/@engenty-wizards/shared/dist/definition.js +516 -43
  52. package/node_modules/@engenty-wizards/shared/dist/marketplace-entry.js +19 -2
  53. package/node_modules/@engenty-wizards/shared/dist/marketplace.d.ts +1 -1
  54. package/node_modules/@engenty-wizards/shared/dist/run.d.ts +55 -0
  55. package/node_modules/@engenty-wizards/shared/dist/run.js +3 -0
  56. package/node_modules/@engenty-wizards/shared/dist/surface.d.ts +89 -0
  57. package/node_modules/@engenty-wizards/shared/dist/surface.js +198 -0
  58. package/package.json +1 -1
  59. package/apps/web/dist/assets/EditorPage-Dwg-K4UI.js +0 -2
  60. package/apps/web/dist/assets/NewWizardPage-BgnrGN8A.js +0 -2
  61. package/apps/web/dist/assets/ProjectPage-Cfco8MIG.js +0 -5
  62. package/apps/web/dist/assets/RunDrawer-B50sCUSw.js +0 -1
  63. package/apps/web/dist/assets/RunnerView-CFCmOmJI.js +0 -70
  64. package/apps/web/dist/assets/changelog-BmS3l433.js +0 -1
  65. package/apps/web/dist/assets/definition-BznNdlhf.js +0 -55
  66. package/apps/web/dist/assets/index-BZs1IxAk.css +0 -1
  67. package/apps/web/dist/assets/meta-DJta2rA3.js +0 -1
  68. package/apps/web/dist/assets/ui-DJOZSSKo.js +0 -1
  69. package/apps/web/dist/assets/wand-sparkles-Clj3VRB5.js +0 -1
@@ -1,4 +1,5 @@
1
1
  import { z } from "zod";
2
+ import { type SurfaceComponent } from "./surface.js";
2
3
  /** The engenty avatars a wizard can wear. Same cast as engenty's ui-core. */
3
4
  export declare const ENGENTY_KINDS: readonly ["round", "drop", "dome", "flame", "oval", "bean", "pebble", "sprout", "tower", "wedge"];
4
5
  export type EngentyKind = (typeof ENGENTY_KINDS)[number];
@@ -70,6 +71,56 @@ export declare const itemColumnSchema: z.ZodObject<{
70
71
  money: "money";
71
72
  }>;
72
73
  }, z.core.$strip>;
74
+ export declare const CONDITION_OPS: readonly ["equals", "notEquals", "in", "notEmpty", "empty", "gt", "lt", "contains"];
75
+ export type ConditionOp = (typeof CONDITION_OPS)[number];
76
+ /**
77
+ * One test on what the run knows: an answer by field id, an output of an agent step as
78
+ * "steps.<step>.<field>", or how many rows a stored list has as "lists.<list>.count".
79
+ */
80
+ export declare const conditionSchema: z.ZodObject<{
81
+ field: z.ZodString;
82
+ op: z.ZodEnum<{
83
+ in: "in";
84
+ equals: "equals";
85
+ notEquals: "notEquals";
86
+ notEmpty: "notEmpty";
87
+ empty: "empty";
88
+ gt: "gt";
89
+ lt: "lt";
90
+ contains: "contains";
91
+ }>;
92
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
93
+ }, z.core.$strip>;
94
+ export type Condition = z.infer<typeof conditionSchema>;
95
+ /** One condition, or several that must all hold. */
96
+ export declare const whenSchema: z.ZodUnion<readonly [z.ZodObject<{
97
+ field: z.ZodString;
98
+ op: z.ZodEnum<{
99
+ in: "in";
100
+ equals: "equals";
101
+ notEquals: "notEquals";
102
+ notEmpty: "notEmpty";
103
+ empty: "empty";
104
+ gt: "gt";
105
+ lt: "lt";
106
+ contains: "contains";
107
+ }>;
108
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
109
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
110
+ field: z.ZodString;
111
+ op: z.ZodEnum<{
112
+ in: "in";
113
+ equals: "equals";
114
+ notEquals: "notEquals";
115
+ notEmpty: "notEmpty";
116
+ empty: "empty";
117
+ gt: "gt";
118
+ lt: "lt";
119
+ contains: "contains";
120
+ }>;
121
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
122
+ }, z.core.$strip>>]>;
123
+ export type When = z.infer<typeof whenSchema>;
73
124
  export declare const fieldSchema: z.ZodObject<{
74
125
  id: z.ZodString;
75
126
  label: z.ZodString;
@@ -122,10 +173,58 @@ export declare const fieldSchema: z.ZodObject<{
122
173
  connection: z.ZodOptional<z.ZodString>;
123
174
  list: z.ZodOptional<z.ZodString>;
124
175
  prefill: z.ZodOptional<z.ZodString>;
176
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
177
+ field: z.ZodString;
178
+ op: z.ZodEnum<{
179
+ in: "in";
180
+ equals: "equals";
181
+ notEquals: "notEquals";
182
+ notEmpty: "notEmpty";
183
+ empty: "empty";
184
+ gt: "gt";
185
+ lt: "lt";
186
+ contains: "contains";
187
+ }>;
188
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
189
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
190
+ field: z.ZodString;
191
+ op: z.ZodEnum<{
192
+ in: "in";
193
+ equals: "equals";
194
+ notEquals: "notEquals";
195
+ notEmpty: "notEmpty";
196
+ empty: "empty";
197
+ gt: "gt";
198
+ lt: "lt";
199
+ contains: "contains";
200
+ }>;
201
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
202
+ }, z.core.$strip>>]>>;
203
+ optionsFrom: z.ZodOptional<z.ZodString>;
204
+ ask: z.ZodOptional<z.ZodString>;
205
+ group: z.ZodOptional<z.ZodString>;
125
206
  }, z.core.$strip>;
126
207
  export type Field = z.infer<typeof fieldSchema>;
208
+ export declare const fieldGroupSchema: z.ZodObject<{
209
+ id: z.ZodString;
210
+ instructions: z.ZodString;
211
+ optional: z.ZodOptional<z.ZodBoolean>;
212
+ }, z.core.$strip>;
127
213
  export declare const nextRuleSchema: z.ZodObject<{
128
- when: z.ZodObject<{
214
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
215
+ field: z.ZodString;
216
+ op: z.ZodEnum<{
217
+ in: "in";
218
+ equals: "equals";
219
+ notEquals: "notEquals";
220
+ notEmpty: "notEmpty";
221
+ empty: "empty";
222
+ gt: "gt";
223
+ lt: "lt";
224
+ contains: "contains";
225
+ }>;
226
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
227
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
129
228
  field: z.ZodString;
130
229
  op: z.ZodEnum<{
131
230
  in: "in";
@@ -133,21 +232,27 @@ export declare const nextRuleSchema: z.ZodObject<{
133
232
  notEquals: "notEquals";
134
233
  notEmpty: "notEmpty";
135
234
  empty: "empty";
235
+ gt: "gt";
236
+ lt: "lt";
237
+ contains: "contains";
136
238
  }>;
137
239
  value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
138
- }, z.core.$strip>;
240
+ }, z.core.$strip>>]>>;
241
+ ask: z.ZodOptional<z.ZodString>;
139
242
  goto: z.ZodString;
243
+ max: z.ZodOptional<z.ZodNumber>;
140
244
  }, z.core.$strip>;
141
245
  export type NextRule = z.infer<typeof nextRuleSchema>;
142
246
  export declare const outputFieldSchema: z.ZodObject<{
143
247
  id: z.ZodString;
144
248
  kind: z.ZodEnum<{
145
249
  number: "number";
250
+ choice: "choice";
251
+ score: "score";
146
252
  text: "text";
147
253
  list: "list";
148
254
  table: "table";
149
255
  yesno: "yesno";
150
- choice: "choice";
151
256
  }>;
152
257
  description: z.ZodOptional<z.ZodString>;
153
258
  columns: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -207,13 +312,48 @@ export declare const pageStepSchema: z.ZodObject<{
207
312
  connection: z.ZodOptional<z.ZodString>;
208
313
  list: z.ZodOptional<z.ZodString>;
209
314
  prefill: z.ZodOptional<z.ZodString>;
315
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
316
+ field: z.ZodString;
317
+ op: z.ZodEnum<{
318
+ in: "in";
319
+ equals: "equals";
320
+ notEquals: "notEquals";
321
+ notEmpty: "notEmpty";
322
+ empty: "empty";
323
+ gt: "gt";
324
+ lt: "lt";
325
+ contains: "contains";
326
+ }>;
327
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
328
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
329
+ field: z.ZodString;
330
+ op: z.ZodEnum<{
331
+ in: "in";
332
+ equals: "equals";
333
+ notEquals: "notEquals";
334
+ notEmpty: "notEmpty";
335
+ empty: "empty";
336
+ gt: "gt";
337
+ lt: "lt";
338
+ contains: "contains";
339
+ }>;
340
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
341
+ }, z.core.$strip>>]>>;
342
+ optionsFrom: z.ZodOptional<z.ZodString>;
343
+ ask: z.ZodOptional<z.ZodString>;
344
+ group: z.ZodOptional<z.ZodString>;
210
345
  }, z.core.$strip>>;
346
+ groups: z.ZodOptional<z.ZodArray<z.ZodObject<{
347
+ id: z.ZodString;
348
+ instructions: z.ZodString;
349
+ optional: z.ZodOptional<z.ZodBoolean>;
350
+ }, z.core.$strip>>>;
211
351
  cta: z.ZodOptional<z.ZodString>;
212
352
  id: z.ZodString;
213
353
  title: z.ZodString;
214
354
  description: z.ZodOptional<z.ZodString>;
215
355
  next: z.ZodOptional<z.ZodArray<z.ZodObject<{
216
- when: z.ZodObject<{
356
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
217
357
  field: z.ZodString;
218
358
  op: z.ZodEnum<{
219
359
  in: "in";
@@ -221,10 +361,28 @@ export declare const pageStepSchema: z.ZodObject<{
221
361
  notEquals: "notEquals";
222
362
  notEmpty: "notEmpty";
223
363
  empty: "empty";
364
+ gt: "gt";
365
+ lt: "lt";
366
+ contains: "contains";
224
367
  }>;
225
368
  value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
226
- }, z.core.$strip>;
369
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
370
+ field: z.ZodString;
371
+ op: z.ZodEnum<{
372
+ in: "in";
373
+ equals: "equals";
374
+ notEquals: "notEquals";
375
+ notEmpty: "notEmpty";
376
+ empty: "empty";
377
+ gt: "gt";
378
+ lt: "lt";
379
+ contains: "contains";
380
+ }>;
381
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
382
+ }, z.core.$strip>>]>>;
383
+ ask: z.ZodOptional<z.ZodString>;
227
384
  goto: z.ZodString;
385
+ max: z.ZodOptional<z.ZodNumber>;
228
386
  }, z.core.$strip>>>;
229
387
  }, z.core.$strip>;
230
388
  export declare const agentStepSchema: z.ZodObject<{
@@ -251,16 +409,18 @@ export declare const agentStepSchema: z.ZodObject<{
251
409
  id: z.ZodString;
252
410
  kind: z.ZodEnum<{
253
411
  number: "number";
412
+ choice: "choice";
413
+ score: "score";
254
414
  text: "text";
255
415
  list: "list";
256
416
  table: "table";
257
417
  yesno: "yesno";
258
- choice: "choice";
259
418
  }>;
260
419
  description: z.ZodOptional<z.ZodString>;
261
420
  columns: z.ZodOptional<z.ZodArray<z.ZodString>>;
262
421
  options: z.ZodOptional<z.ZodArray<z.ZodString>>;
263
422
  }, z.core.$strip>>>;
423
+ surface: z.ZodOptional<z.ZodBoolean>;
264
424
  }, z.core.$strip>>;
265
425
  model: z.ZodOptional<z.ZodEnum<{
266
426
  classifier: "classifier";
@@ -273,12 +433,13 @@ export declare const agentStepSchema: z.ZodObject<{
273
433
  high: "high";
274
434
  low: "low";
275
435
  }>>;
436
+ each: z.ZodOptional<z.ZodString>;
276
437
  working: z.ZodOptional<z.ZodString>;
277
438
  id: z.ZodString;
278
439
  title: z.ZodString;
279
440
  description: z.ZodOptional<z.ZodString>;
280
441
  next: z.ZodOptional<z.ZodArray<z.ZodObject<{
281
- when: z.ZodObject<{
442
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
282
443
  field: z.ZodString;
283
444
  op: z.ZodEnum<{
284
445
  in: "in";
@@ -286,10 +447,28 @@ export declare const agentStepSchema: z.ZodObject<{
286
447
  notEquals: "notEquals";
287
448
  notEmpty: "notEmpty";
288
449
  empty: "empty";
450
+ gt: "gt";
451
+ lt: "lt";
452
+ contains: "contains";
289
453
  }>;
290
454
  value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
291
- }, z.core.$strip>;
455
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
456
+ field: z.ZodString;
457
+ op: z.ZodEnum<{
458
+ in: "in";
459
+ equals: "equals";
460
+ notEquals: "notEquals";
461
+ notEmpty: "notEmpty";
462
+ empty: "empty";
463
+ gt: "gt";
464
+ lt: "lt";
465
+ contains: "contains";
466
+ }>;
467
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
468
+ }, z.core.$strip>>]>>;
469
+ ask: z.ZodOptional<z.ZodString>;
292
470
  goto: z.ZodString;
471
+ max: z.ZodOptional<z.ZodNumber>;
293
472
  }, z.core.$strip>>>;
294
473
  }, z.core.$strip>;
295
474
  export declare const generateStepSchema: z.ZodObject<{
@@ -344,7 +523,7 @@ export declare const generateStepSchema: z.ZodObject<{
344
523
  title: z.ZodString;
345
524
  description: z.ZodOptional<z.ZodString>;
346
525
  next: z.ZodOptional<z.ZodArray<z.ZodObject<{
347
- when: z.ZodObject<{
526
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
348
527
  field: z.ZodString;
349
528
  op: z.ZodEnum<{
350
529
  in: "in";
@@ -352,10 +531,28 @@ export declare const generateStepSchema: z.ZodObject<{
352
531
  notEquals: "notEquals";
353
532
  notEmpty: "notEmpty";
354
533
  empty: "empty";
534
+ gt: "gt";
535
+ lt: "lt";
536
+ contains: "contains";
355
537
  }>;
356
538
  value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
357
- }, z.core.$strip>;
539
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
540
+ field: z.ZodString;
541
+ op: z.ZodEnum<{
542
+ in: "in";
543
+ equals: "equals";
544
+ notEquals: "notEquals";
545
+ notEmpty: "notEmpty";
546
+ empty: "empty";
547
+ gt: "gt";
548
+ lt: "lt";
549
+ contains: "contains";
550
+ }>;
551
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
552
+ }, z.core.$strip>>]>>;
553
+ ask: z.ZodOptional<z.ZodString>;
358
554
  goto: z.ZodString;
555
+ max: z.ZodOptional<z.ZodNumber>;
359
556
  }, z.core.$strip>>>;
360
557
  }, z.core.$strip>;
361
558
  export declare const widgetStepSchema: z.ZodObject<{
@@ -373,7 +570,7 @@ export declare const widgetStepSchema: z.ZodObject<{
373
570
  title: z.ZodString;
374
571
  description: z.ZodOptional<z.ZodString>;
375
572
  next: z.ZodOptional<z.ZodArray<z.ZodObject<{
376
- when: z.ZodObject<{
573
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
377
574
  field: z.ZodString;
378
575
  op: z.ZodEnum<{
379
576
  in: "in";
@@ -381,10 +578,28 @@ export declare const widgetStepSchema: z.ZodObject<{
381
578
  notEquals: "notEquals";
382
579
  notEmpty: "notEmpty";
383
580
  empty: "empty";
581
+ gt: "gt";
582
+ lt: "lt";
583
+ contains: "contains";
384
584
  }>;
385
585
  value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
386
- }, z.core.$strip>;
586
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
587
+ field: z.ZodString;
588
+ op: z.ZodEnum<{
589
+ in: "in";
590
+ equals: "equals";
591
+ notEquals: "notEquals";
592
+ notEmpty: "notEmpty";
593
+ empty: "empty";
594
+ gt: "gt";
595
+ lt: "lt";
596
+ contains: "contains";
597
+ }>;
598
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
599
+ }, z.core.$strip>>]>>;
600
+ ask: z.ZodOptional<z.ZodString>;
387
601
  goto: z.ZodString;
602
+ max: z.ZodOptional<z.ZodNumber>;
388
603
  }, z.core.$strip>>>;
389
604
  }, z.core.$strip>;
390
605
  /** Formats a film step makes; the composition is drawn for this frame. */
@@ -427,7 +642,7 @@ export declare const filmStepSchema: z.ZodObject<{
427
642
  title: z.ZodString;
428
643
  description: z.ZodOptional<z.ZodString>;
429
644
  next: z.ZodOptional<z.ZodArray<z.ZodObject<{
430
- when: z.ZodObject<{
645
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
431
646
  field: z.ZodString;
432
647
  op: z.ZodEnum<{
433
648
  in: "in";
@@ -435,12 +650,168 @@ export declare const filmStepSchema: z.ZodObject<{
435
650
  notEquals: "notEquals";
436
651
  notEmpty: "notEmpty";
437
652
  empty: "empty";
653
+ gt: "gt";
654
+ lt: "lt";
655
+ contains: "contains";
438
656
  }>;
439
657
  value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
440
- }, z.core.$strip>;
658
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
659
+ field: z.ZodString;
660
+ op: z.ZodEnum<{
661
+ in: "in";
662
+ equals: "equals";
663
+ notEquals: "notEquals";
664
+ notEmpty: "notEmpty";
665
+ empty: "empty";
666
+ gt: "gt";
667
+ lt: "lt";
668
+ contains: "contains";
669
+ }>;
670
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
671
+ }, z.core.$strip>>]>>;
672
+ ask: z.ZodOptional<z.ZodString>;
441
673
  goto: z.ZodString;
674
+ max: z.ZodOptional<z.ZodNumber>;
442
675
  }, z.core.$strip>>>;
443
676
  }, z.core.$strip>;
677
+ /** A piece a decided surface may show: its components (the first has the piece's id) and what it shows. */
678
+ export declare const surfaceCandidateSchema: z.ZodObject<{
679
+ id: z.ZodString;
680
+ description: z.ZodString;
681
+ components: z.ZodArray<z.ZodObject<{
682
+ id: z.ZodString;
683
+ component: z.ZodEnum<{
684
+ Column: "Column";
685
+ Text: "Text";
686
+ List: "List";
687
+ Row: "Row";
688
+ DetailGrid: "DetailGrid";
689
+ Badge: "Badge";
690
+ Grid: "Grid";
691
+ Metric: "Metric";
692
+ Table: "Table";
693
+ Image: "Image";
694
+ BarChart: "BarChart";
695
+ LineChart: "LineChart";
696
+ DonutChart: "DonutChart";
697
+ Actions: "Actions";
698
+ Button: "Button";
699
+ }>;
700
+ children: z.ZodOptional<z.ZodUnion<readonly [z.ZodArray<z.ZodString>, z.ZodObject<{
701
+ path: z.ZodString;
702
+ componentId: z.ZodString;
703
+ }, z.core.$strip>]>>;
704
+ }, z.core.$loose>>;
705
+ group: z.ZodOptional<z.ZodString>;
706
+ required: z.ZodOptional<z.ZodBoolean>;
707
+ }, z.core.$strip>;
708
+ export declare const surfaceStepSchema: z.ZodObject<{
709
+ type: z.ZodLiteral<"surface">;
710
+ components: z.ZodOptional<z.ZodArray<z.ZodObject<{
711
+ id: z.ZodString;
712
+ component: z.ZodEnum<{
713
+ Column: "Column";
714
+ Text: "Text";
715
+ List: "List";
716
+ Row: "Row";
717
+ DetailGrid: "DetailGrid";
718
+ Badge: "Badge";
719
+ Grid: "Grid";
720
+ Metric: "Metric";
721
+ Table: "Table";
722
+ Image: "Image";
723
+ BarChart: "BarChart";
724
+ LineChart: "LineChart";
725
+ DonutChart: "DonutChart";
726
+ Actions: "Actions";
727
+ Button: "Button";
728
+ }>;
729
+ children: z.ZodOptional<z.ZodUnion<readonly [z.ZodArray<z.ZodString>, z.ZodObject<{
730
+ path: z.ZodString;
731
+ componentId: z.ZodString;
732
+ }, z.core.$strip>]>>;
733
+ }, z.core.$loose>>>;
734
+ candidates: z.ZodOptional<z.ZodArray<z.ZodObject<{
735
+ id: z.ZodString;
736
+ description: z.ZodString;
737
+ components: z.ZodArray<z.ZodObject<{
738
+ id: z.ZodString;
739
+ component: z.ZodEnum<{
740
+ Column: "Column";
741
+ Text: "Text";
742
+ List: "List";
743
+ Row: "Row";
744
+ DetailGrid: "DetailGrid";
745
+ Badge: "Badge";
746
+ Grid: "Grid";
747
+ Metric: "Metric";
748
+ Table: "Table";
749
+ Image: "Image";
750
+ BarChart: "BarChart";
751
+ LineChart: "LineChart";
752
+ DonutChart: "DonutChart";
753
+ Actions: "Actions";
754
+ Button: "Button";
755
+ }>;
756
+ children: z.ZodOptional<z.ZodUnion<readonly [z.ZodArray<z.ZodString>, z.ZodObject<{
757
+ path: z.ZodString;
758
+ componentId: z.ZodString;
759
+ }, z.core.$strip>]>>;
760
+ }, z.core.$loose>>;
761
+ group: z.ZodOptional<z.ZodString>;
762
+ required: z.ZodOptional<z.ZodBoolean>;
763
+ }, z.core.$strip>>>;
764
+ groups: z.ZodOptional<z.ZodArray<z.ZodObject<{
765
+ id: z.ZodString;
766
+ instructions: z.ZodString;
767
+ optional: z.ZodOptional<z.ZodBoolean>;
768
+ }, z.core.$strip>>>;
769
+ data: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
770
+ working: z.ZodOptional<z.ZodString>;
771
+ id: z.ZodString;
772
+ title: z.ZodString;
773
+ description: z.ZodOptional<z.ZodString>;
774
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
775
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
776
+ field: z.ZodString;
777
+ op: z.ZodEnum<{
778
+ in: "in";
779
+ equals: "equals";
780
+ notEquals: "notEquals";
781
+ notEmpty: "notEmpty";
782
+ empty: "empty";
783
+ gt: "gt";
784
+ lt: "lt";
785
+ contains: "contains";
786
+ }>;
787
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
788
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
789
+ field: z.ZodString;
790
+ op: z.ZodEnum<{
791
+ in: "in";
792
+ equals: "equals";
793
+ notEquals: "notEquals";
794
+ notEmpty: "notEmpty";
795
+ empty: "empty";
796
+ gt: "gt";
797
+ lt: "lt";
798
+ contains: "contains";
799
+ }>;
800
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
801
+ }, z.core.$strip>>]>>;
802
+ ask: z.ZodOptional<z.ZodString>;
803
+ goto: z.ZodString;
804
+ max: z.ZodOptional<z.ZodNumber>;
805
+ }, z.core.$strip>>>;
806
+ }, z.core.$strip>;
807
+ /**
808
+ * The components of a decided surface for the pieces kept: one root column holding them in
809
+ * their order. Every piece kept is the same as all of them for the validator.
810
+ */
811
+ export declare function assembleSurface(candidates: {
812
+ id: string;
813
+ components: SurfaceComponent[];
814
+ }[], kept: Iterable<string>): SurfaceComponent[];
444
815
  export declare const reviewStepSchema: z.ZodObject<{
445
816
  type: z.ZodLiteral<"review">;
446
817
  show: z.ZodArray<z.ZodString>;
@@ -450,7 +821,7 @@ export declare const reviewStepSchema: z.ZodObject<{
450
821
  title: z.ZodString;
451
822
  description: z.ZodOptional<z.ZodString>;
452
823
  next: z.ZodOptional<z.ZodArray<z.ZodObject<{
453
- when: z.ZodObject<{
824
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
454
825
  field: z.ZodString;
455
826
  op: z.ZodEnum<{
456
827
  in: "in";
@@ -458,10 +829,28 @@ export declare const reviewStepSchema: z.ZodObject<{
458
829
  notEquals: "notEquals";
459
830
  notEmpty: "notEmpty";
460
831
  empty: "empty";
832
+ gt: "gt";
833
+ lt: "lt";
834
+ contains: "contains";
461
835
  }>;
462
836
  value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
463
- }, z.core.$strip>;
837
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
838
+ field: z.ZodString;
839
+ op: z.ZodEnum<{
840
+ in: "in";
841
+ equals: "equals";
842
+ notEquals: "notEquals";
843
+ notEmpty: "notEmpty";
844
+ empty: "empty";
845
+ gt: "gt";
846
+ lt: "lt";
847
+ contains: "contains";
848
+ }>;
849
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
850
+ }, z.core.$strip>>]>>;
851
+ ask: z.ZodOptional<z.ZodString>;
464
852
  goto: z.ZodString;
853
+ max: z.ZodOptional<z.ZodNumber>;
465
854
  }, z.core.$strip>>>;
466
855
  }, z.core.$strip>;
467
856
  export declare const deliverableSchema: z.ZodObject<{
@@ -507,7 +896,7 @@ export declare const resultStepSchema: z.ZodObject<{
507
896
  title: z.ZodString;
508
897
  description: z.ZodOptional<z.ZodString>;
509
898
  next: z.ZodOptional<z.ZodArray<z.ZodObject<{
510
- when: z.ZodObject<{
899
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
511
900
  field: z.ZodString;
512
901
  op: z.ZodEnum<{
513
902
  in: "in";
@@ -515,10 +904,28 @@ export declare const resultStepSchema: z.ZodObject<{
515
904
  notEquals: "notEquals";
516
905
  notEmpty: "notEmpty";
517
906
  empty: "empty";
907
+ gt: "gt";
908
+ lt: "lt";
909
+ contains: "contains";
518
910
  }>;
519
911
  value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
520
- }, z.core.$strip>;
912
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
913
+ field: z.ZodString;
914
+ op: z.ZodEnum<{
915
+ in: "in";
916
+ equals: "equals";
917
+ notEquals: "notEquals";
918
+ notEmpty: "notEmpty";
919
+ empty: "empty";
920
+ gt: "gt";
921
+ lt: "lt";
922
+ contains: "contains";
923
+ }>;
924
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
925
+ }, z.core.$strip>>]>>;
926
+ ask: z.ZodOptional<z.ZodString>;
521
927
  goto: z.ZodString;
928
+ max: z.ZodOptional<z.ZodNumber>;
522
929
  }, z.core.$strip>>>;
523
930
  }, z.core.$strip>;
524
931
  export declare const stepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
@@ -575,13 +982,48 @@ export declare const stepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
575
982
  connection: z.ZodOptional<z.ZodString>;
576
983
  list: z.ZodOptional<z.ZodString>;
577
984
  prefill: z.ZodOptional<z.ZodString>;
985
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
986
+ field: z.ZodString;
987
+ op: z.ZodEnum<{
988
+ in: "in";
989
+ equals: "equals";
990
+ notEquals: "notEquals";
991
+ notEmpty: "notEmpty";
992
+ empty: "empty";
993
+ gt: "gt";
994
+ lt: "lt";
995
+ contains: "contains";
996
+ }>;
997
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
998
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
999
+ field: z.ZodString;
1000
+ op: z.ZodEnum<{
1001
+ in: "in";
1002
+ equals: "equals";
1003
+ notEquals: "notEquals";
1004
+ notEmpty: "notEmpty";
1005
+ empty: "empty";
1006
+ gt: "gt";
1007
+ lt: "lt";
1008
+ contains: "contains";
1009
+ }>;
1010
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1011
+ }, z.core.$strip>>]>>;
1012
+ optionsFrom: z.ZodOptional<z.ZodString>;
1013
+ ask: z.ZodOptional<z.ZodString>;
1014
+ group: z.ZodOptional<z.ZodString>;
578
1015
  }, z.core.$strip>>;
1016
+ groups: z.ZodOptional<z.ZodArray<z.ZodObject<{
1017
+ id: z.ZodString;
1018
+ instructions: z.ZodString;
1019
+ optional: z.ZodOptional<z.ZodBoolean>;
1020
+ }, z.core.$strip>>>;
579
1021
  cta: z.ZodOptional<z.ZodString>;
580
1022
  id: z.ZodString;
581
1023
  title: z.ZodString;
582
1024
  description: z.ZodOptional<z.ZodString>;
583
1025
  next: z.ZodOptional<z.ZodArray<z.ZodObject<{
584
- when: z.ZodObject<{
1026
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
585
1027
  field: z.ZodString;
586
1028
  op: z.ZodEnum<{
587
1029
  in: "in";
@@ -589,10 +1031,28 @@ export declare const stepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
589
1031
  notEquals: "notEquals";
590
1032
  notEmpty: "notEmpty";
591
1033
  empty: "empty";
1034
+ gt: "gt";
1035
+ lt: "lt";
1036
+ contains: "contains";
592
1037
  }>;
593
1038
  value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
594
- }, z.core.$strip>;
1039
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
1040
+ field: z.ZodString;
1041
+ op: z.ZodEnum<{
1042
+ in: "in";
1043
+ equals: "equals";
1044
+ notEquals: "notEquals";
1045
+ notEmpty: "notEmpty";
1046
+ empty: "empty";
1047
+ gt: "gt";
1048
+ lt: "lt";
1049
+ contains: "contains";
1050
+ }>;
1051
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1052
+ }, z.core.$strip>>]>>;
1053
+ ask: z.ZodOptional<z.ZodString>;
595
1054
  goto: z.ZodString;
1055
+ max: z.ZodOptional<z.ZodNumber>;
596
1056
  }, z.core.$strip>>>;
597
1057
  }, z.core.$strip>, z.ZodObject<{
598
1058
  type: z.ZodLiteral<"agent">;
@@ -618,16 +1078,18 @@ export declare const stepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
618
1078
  id: z.ZodString;
619
1079
  kind: z.ZodEnum<{
620
1080
  number: "number";
1081
+ choice: "choice";
1082
+ score: "score";
621
1083
  text: "text";
622
1084
  list: "list";
623
1085
  table: "table";
624
1086
  yesno: "yesno";
625
- choice: "choice";
626
1087
  }>;
627
1088
  description: z.ZodOptional<z.ZodString>;
628
1089
  columns: z.ZodOptional<z.ZodArray<z.ZodString>>;
629
1090
  options: z.ZodOptional<z.ZodArray<z.ZodString>>;
630
1091
  }, z.core.$strip>>>;
1092
+ surface: z.ZodOptional<z.ZodBoolean>;
631
1093
  }, z.core.$strip>>;
632
1094
  model: z.ZodOptional<z.ZodEnum<{
633
1095
  classifier: "classifier";
@@ -640,12 +1102,13 @@ export declare const stepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
640
1102
  high: "high";
641
1103
  low: "low";
642
1104
  }>>;
1105
+ each: z.ZodOptional<z.ZodString>;
643
1106
  working: z.ZodOptional<z.ZodString>;
644
1107
  id: z.ZodString;
645
1108
  title: z.ZodString;
646
1109
  description: z.ZodOptional<z.ZodString>;
647
1110
  next: z.ZodOptional<z.ZodArray<z.ZodObject<{
648
- when: z.ZodObject<{
1111
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
649
1112
  field: z.ZodString;
650
1113
  op: z.ZodEnum<{
651
1114
  in: "in";
@@ -653,10 +1116,28 @@ export declare const stepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
653
1116
  notEquals: "notEquals";
654
1117
  notEmpty: "notEmpty";
655
1118
  empty: "empty";
1119
+ gt: "gt";
1120
+ lt: "lt";
1121
+ contains: "contains";
656
1122
  }>;
657
1123
  value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
658
- }, z.core.$strip>;
1124
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
1125
+ field: z.ZodString;
1126
+ op: z.ZodEnum<{
1127
+ in: "in";
1128
+ equals: "equals";
1129
+ notEquals: "notEquals";
1130
+ notEmpty: "notEmpty";
1131
+ empty: "empty";
1132
+ gt: "gt";
1133
+ lt: "lt";
1134
+ contains: "contains";
1135
+ }>;
1136
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1137
+ }, z.core.$strip>>]>>;
1138
+ ask: z.ZodOptional<z.ZodString>;
659
1139
  goto: z.ZodString;
1140
+ max: z.ZodOptional<z.ZodNumber>;
660
1141
  }, z.core.$strip>>>;
661
1142
  }, z.core.$strip>, z.ZodObject<{
662
1143
  type: z.ZodLiteral<"generate">;
@@ -710,7 +1191,7 @@ export declare const stepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
710
1191
  title: z.ZodString;
711
1192
  description: z.ZodOptional<z.ZodString>;
712
1193
  next: z.ZodOptional<z.ZodArray<z.ZodObject<{
713
- when: z.ZodObject<{
1194
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
714
1195
  field: z.ZodString;
715
1196
  op: z.ZodEnum<{
716
1197
  in: "in";
@@ -718,10 +1199,28 @@ export declare const stepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
718
1199
  notEquals: "notEquals";
719
1200
  notEmpty: "notEmpty";
720
1201
  empty: "empty";
1202
+ gt: "gt";
1203
+ lt: "lt";
1204
+ contains: "contains";
721
1205
  }>;
722
1206
  value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
723
- }, z.core.$strip>;
1207
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
1208
+ field: z.ZodString;
1209
+ op: z.ZodEnum<{
1210
+ in: "in";
1211
+ equals: "equals";
1212
+ notEquals: "notEquals";
1213
+ notEmpty: "notEmpty";
1214
+ empty: "empty";
1215
+ gt: "gt";
1216
+ lt: "lt";
1217
+ contains: "contains";
1218
+ }>;
1219
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1220
+ }, z.core.$strip>>]>>;
1221
+ ask: z.ZodOptional<z.ZodString>;
724
1222
  goto: z.ZodString;
1223
+ max: z.ZodOptional<z.ZodNumber>;
725
1224
  }, z.core.$strip>>>;
726
1225
  }, z.core.$strip>, z.ZodObject<{
727
1226
  type: z.ZodLiteral<"widget">;
@@ -738,7 +1237,7 @@ export declare const stepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
738
1237
  title: z.ZodString;
739
1238
  description: z.ZodOptional<z.ZodString>;
740
1239
  next: z.ZodOptional<z.ZodArray<z.ZodObject<{
741
- when: z.ZodObject<{
1240
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
742
1241
  field: z.ZodString;
743
1242
  op: z.ZodEnum<{
744
1243
  in: "in";
@@ -746,10 +1245,126 @@ export declare const stepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
746
1245
  notEquals: "notEquals";
747
1246
  notEmpty: "notEmpty";
748
1247
  empty: "empty";
1248
+ gt: "gt";
1249
+ lt: "lt";
1250
+ contains: "contains";
749
1251
  }>;
750
1252
  value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
751
- }, z.core.$strip>;
1253
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
1254
+ field: z.ZodString;
1255
+ op: z.ZodEnum<{
1256
+ in: "in";
1257
+ equals: "equals";
1258
+ notEquals: "notEquals";
1259
+ notEmpty: "notEmpty";
1260
+ empty: "empty";
1261
+ gt: "gt";
1262
+ lt: "lt";
1263
+ contains: "contains";
1264
+ }>;
1265
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1266
+ }, z.core.$strip>>]>>;
1267
+ ask: z.ZodOptional<z.ZodString>;
752
1268
  goto: z.ZodString;
1269
+ max: z.ZodOptional<z.ZodNumber>;
1270
+ }, z.core.$strip>>>;
1271
+ }, z.core.$strip>, z.ZodObject<{
1272
+ type: z.ZodLiteral<"surface">;
1273
+ components: z.ZodOptional<z.ZodArray<z.ZodObject<{
1274
+ id: z.ZodString;
1275
+ component: z.ZodEnum<{
1276
+ Column: "Column";
1277
+ Text: "Text";
1278
+ List: "List";
1279
+ Row: "Row";
1280
+ DetailGrid: "DetailGrid";
1281
+ Badge: "Badge";
1282
+ Grid: "Grid";
1283
+ Metric: "Metric";
1284
+ Table: "Table";
1285
+ Image: "Image";
1286
+ BarChart: "BarChart";
1287
+ LineChart: "LineChart";
1288
+ DonutChart: "DonutChart";
1289
+ Actions: "Actions";
1290
+ Button: "Button";
1291
+ }>;
1292
+ children: z.ZodOptional<z.ZodUnion<readonly [z.ZodArray<z.ZodString>, z.ZodObject<{
1293
+ path: z.ZodString;
1294
+ componentId: z.ZodString;
1295
+ }, z.core.$strip>]>>;
1296
+ }, z.core.$loose>>>;
1297
+ candidates: z.ZodOptional<z.ZodArray<z.ZodObject<{
1298
+ id: z.ZodString;
1299
+ description: z.ZodString;
1300
+ components: z.ZodArray<z.ZodObject<{
1301
+ id: z.ZodString;
1302
+ component: z.ZodEnum<{
1303
+ Column: "Column";
1304
+ Text: "Text";
1305
+ List: "List";
1306
+ Row: "Row";
1307
+ DetailGrid: "DetailGrid";
1308
+ Badge: "Badge";
1309
+ Grid: "Grid";
1310
+ Metric: "Metric";
1311
+ Table: "Table";
1312
+ Image: "Image";
1313
+ BarChart: "BarChart";
1314
+ LineChart: "LineChart";
1315
+ DonutChart: "DonutChart";
1316
+ Actions: "Actions";
1317
+ Button: "Button";
1318
+ }>;
1319
+ children: z.ZodOptional<z.ZodUnion<readonly [z.ZodArray<z.ZodString>, z.ZodObject<{
1320
+ path: z.ZodString;
1321
+ componentId: z.ZodString;
1322
+ }, z.core.$strip>]>>;
1323
+ }, z.core.$loose>>;
1324
+ group: z.ZodOptional<z.ZodString>;
1325
+ required: z.ZodOptional<z.ZodBoolean>;
1326
+ }, z.core.$strip>>>;
1327
+ groups: z.ZodOptional<z.ZodArray<z.ZodObject<{
1328
+ id: z.ZodString;
1329
+ instructions: z.ZodString;
1330
+ optional: z.ZodOptional<z.ZodBoolean>;
1331
+ }, z.core.$strip>>>;
1332
+ data: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
1333
+ working: z.ZodOptional<z.ZodString>;
1334
+ id: z.ZodString;
1335
+ title: z.ZodString;
1336
+ description: z.ZodOptional<z.ZodString>;
1337
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
1338
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1339
+ field: z.ZodString;
1340
+ op: z.ZodEnum<{
1341
+ in: "in";
1342
+ equals: "equals";
1343
+ notEquals: "notEquals";
1344
+ notEmpty: "notEmpty";
1345
+ empty: "empty";
1346
+ gt: "gt";
1347
+ lt: "lt";
1348
+ contains: "contains";
1349
+ }>;
1350
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1351
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
1352
+ field: z.ZodString;
1353
+ op: z.ZodEnum<{
1354
+ in: "in";
1355
+ equals: "equals";
1356
+ notEquals: "notEquals";
1357
+ notEmpty: "notEmpty";
1358
+ empty: "empty";
1359
+ gt: "gt";
1360
+ lt: "lt";
1361
+ contains: "contains";
1362
+ }>;
1363
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1364
+ }, z.core.$strip>>]>>;
1365
+ ask: z.ZodOptional<z.ZodString>;
1366
+ goto: z.ZodString;
1367
+ max: z.ZodOptional<z.ZodNumber>;
753
1368
  }, z.core.$strip>>>;
754
1369
  }, z.core.$strip>, z.ZodObject<{
755
1370
  type: z.ZodLiteral<"film">;
@@ -779,7 +1394,7 @@ export declare const stepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
779
1394
  title: z.ZodString;
780
1395
  description: z.ZodOptional<z.ZodString>;
781
1396
  next: z.ZodOptional<z.ZodArray<z.ZodObject<{
782
- when: z.ZodObject<{
1397
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
783
1398
  field: z.ZodString;
784
1399
  op: z.ZodEnum<{
785
1400
  in: "in";
@@ -787,10 +1402,28 @@ export declare const stepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
787
1402
  notEquals: "notEquals";
788
1403
  notEmpty: "notEmpty";
789
1404
  empty: "empty";
1405
+ gt: "gt";
1406
+ lt: "lt";
1407
+ contains: "contains";
790
1408
  }>;
791
1409
  value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
792
- }, z.core.$strip>;
1410
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
1411
+ field: z.ZodString;
1412
+ op: z.ZodEnum<{
1413
+ in: "in";
1414
+ equals: "equals";
1415
+ notEquals: "notEquals";
1416
+ notEmpty: "notEmpty";
1417
+ empty: "empty";
1418
+ gt: "gt";
1419
+ lt: "lt";
1420
+ contains: "contains";
1421
+ }>;
1422
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1423
+ }, z.core.$strip>>]>>;
1424
+ ask: z.ZodOptional<z.ZodString>;
793
1425
  goto: z.ZodString;
1426
+ max: z.ZodOptional<z.ZodNumber>;
794
1427
  }, z.core.$strip>>>;
795
1428
  }, z.core.$strip>, z.ZodObject<{
796
1429
  type: z.ZodLiteral<"review">;
@@ -801,7 +1434,7 @@ export declare const stepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
801
1434
  title: z.ZodString;
802
1435
  description: z.ZodOptional<z.ZodString>;
803
1436
  next: z.ZodOptional<z.ZodArray<z.ZodObject<{
804
- when: z.ZodObject<{
1437
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
805
1438
  field: z.ZodString;
806
1439
  op: z.ZodEnum<{
807
1440
  in: "in";
@@ -809,10 +1442,28 @@ export declare const stepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
809
1442
  notEquals: "notEquals";
810
1443
  notEmpty: "notEmpty";
811
1444
  empty: "empty";
1445
+ gt: "gt";
1446
+ lt: "lt";
1447
+ contains: "contains";
812
1448
  }>;
813
1449
  value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
814
- }, z.core.$strip>;
1450
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
1451
+ field: z.ZodString;
1452
+ op: z.ZodEnum<{
1453
+ in: "in";
1454
+ equals: "equals";
1455
+ notEquals: "notEquals";
1456
+ notEmpty: "notEmpty";
1457
+ empty: "empty";
1458
+ gt: "gt";
1459
+ lt: "lt";
1460
+ contains: "contains";
1461
+ }>;
1462
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1463
+ }, z.core.$strip>>]>>;
1464
+ ask: z.ZodOptional<z.ZodString>;
815
1465
  goto: z.ZodString;
1466
+ max: z.ZodOptional<z.ZodNumber>;
816
1467
  }, z.core.$strip>>>;
817
1468
  }, z.core.$strip>, z.ZodObject<{
818
1469
  type: z.ZodLiteral<"result">;
@@ -839,7 +1490,7 @@ export declare const stepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
839
1490
  title: z.ZodString;
840
1491
  description: z.ZodOptional<z.ZodString>;
841
1492
  next: z.ZodOptional<z.ZodArray<z.ZodObject<{
842
- when: z.ZodObject<{
1493
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
843
1494
  field: z.ZodString;
844
1495
  op: z.ZodEnum<{
845
1496
  in: "in";
@@ -847,14 +1498,33 @@ export declare const stepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
847
1498
  notEquals: "notEquals";
848
1499
  notEmpty: "notEmpty";
849
1500
  empty: "empty";
1501
+ gt: "gt";
1502
+ lt: "lt";
1503
+ contains: "contains";
850
1504
  }>;
851
1505
  value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
852
- }, z.core.$strip>;
1506
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
1507
+ field: z.ZodString;
1508
+ op: z.ZodEnum<{
1509
+ in: "in";
1510
+ equals: "equals";
1511
+ notEquals: "notEquals";
1512
+ notEmpty: "notEmpty";
1513
+ empty: "empty";
1514
+ gt: "gt";
1515
+ lt: "lt";
1516
+ contains: "contains";
1517
+ }>;
1518
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1519
+ }, z.core.$strip>>]>>;
1520
+ ask: z.ZodOptional<z.ZodString>;
853
1521
  goto: z.ZodString;
1522
+ max: z.ZodOptional<z.ZodNumber>;
854
1523
  }, z.core.$strip>>>;
855
1524
  }, z.core.$strip>], "type">;
856
1525
  export type Step = z.infer<typeof stepSchema>;
857
1526
  export type PageStep = z.infer<typeof pageStepSchema>;
1527
+ export type SurfaceStep = z.infer<typeof surfaceStepSchema>;
858
1528
  export type AgentStep = z.infer<typeof agentStepSchema>;
859
1529
  /**
860
1530
  * A decision: a step on the classifier class that uses no tools and whose output is only
@@ -1233,13 +1903,48 @@ export declare const wizardSchema: z.ZodObject<{
1233
1903
  connection: z.ZodOptional<z.ZodString>;
1234
1904
  list: z.ZodOptional<z.ZodString>;
1235
1905
  prefill: z.ZodOptional<z.ZodString>;
1906
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1907
+ field: z.ZodString;
1908
+ op: z.ZodEnum<{
1909
+ in: "in";
1910
+ equals: "equals";
1911
+ notEquals: "notEquals";
1912
+ notEmpty: "notEmpty";
1913
+ empty: "empty";
1914
+ gt: "gt";
1915
+ lt: "lt";
1916
+ contains: "contains";
1917
+ }>;
1918
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1919
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
1920
+ field: z.ZodString;
1921
+ op: z.ZodEnum<{
1922
+ in: "in";
1923
+ equals: "equals";
1924
+ notEquals: "notEquals";
1925
+ notEmpty: "notEmpty";
1926
+ empty: "empty";
1927
+ gt: "gt";
1928
+ lt: "lt";
1929
+ contains: "contains";
1930
+ }>;
1931
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1932
+ }, z.core.$strip>>]>>;
1933
+ optionsFrom: z.ZodOptional<z.ZodString>;
1934
+ ask: z.ZodOptional<z.ZodString>;
1935
+ group: z.ZodOptional<z.ZodString>;
1236
1936
  }, z.core.$strip>>;
1937
+ groups: z.ZodOptional<z.ZodArray<z.ZodObject<{
1938
+ id: z.ZodString;
1939
+ instructions: z.ZodString;
1940
+ optional: z.ZodOptional<z.ZodBoolean>;
1941
+ }, z.core.$strip>>>;
1237
1942
  cta: z.ZodOptional<z.ZodString>;
1238
1943
  id: z.ZodString;
1239
1944
  title: z.ZodString;
1240
1945
  description: z.ZodOptional<z.ZodString>;
1241
1946
  next: z.ZodOptional<z.ZodArray<z.ZodObject<{
1242
- when: z.ZodObject<{
1947
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1243
1948
  field: z.ZodString;
1244
1949
  op: z.ZodEnum<{
1245
1950
  in: "in";
@@ -1247,10 +1952,28 @@ export declare const wizardSchema: z.ZodObject<{
1247
1952
  notEquals: "notEquals";
1248
1953
  notEmpty: "notEmpty";
1249
1954
  empty: "empty";
1955
+ gt: "gt";
1956
+ lt: "lt";
1957
+ contains: "contains";
1250
1958
  }>;
1251
1959
  value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1252
- }, z.core.$strip>;
1960
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
1961
+ field: z.ZodString;
1962
+ op: z.ZodEnum<{
1963
+ in: "in";
1964
+ equals: "equals";
1965
+ notEquals: "notEquals";
1966
+ notEmpty: "notEmpty";
1967
+ empty: "empty";
1968
+ gt: "gt";
1969
+ lt: "lt";
1970
+ contains: "contains";
1971
+ }>;
1972
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1973
+ }, z.core.$strip>>]>>;
1974
+ ask: z.ZodOptional<z.ZodString>;
1253
1975
  goto: z.ZodString;
1976
+ max: z.ZodOptional<z.ZodNumber>;
1254
1977
  }, z.core.$strip>>>;
1255
1978
  }, z.core.$strip>, z.ZodObject<{
1256
1979
  type: z.ZodLiteral<"agent">;
@@ -1276,16 +1999,18 @@ export declare const wizardSchema: z.ZodObject<{
1276
1999
  id: z.ZodString;
1277
2000
  kind: z.ZodEnum<{
1278
2001
  number: "number";
2002
+ choice: "choice";
2003
+ score: "score";
1279
2004
  text: "text";
1280
2005
  list: "list";
1281
2006
  table: "table";
1282
2007
  yesno: "yesno";
1283
- choice: "choice";
1284
2008
  }>;
1285
2009
  description: z.ZodOptional<z.ZodString>;
1286
2010
  columns: z.ZodOptional<z.ZodArray<z.ZodString>>;
1287
2011
  options: z.ZodOptional<z.ZodArray<z.ZodString>>;
1288
2012
  }, z.core.$strip>>>;
2013
+ surface: z.ZodOptional<z.ZodBoolean>;
1289
2014
  }, z.core.$strip>>;
1290
2015
  model: z.ZodOptional<z.ZodEnum<{
1291
2016
  classifier: "classifier";
@@ -1298,12 +2023,13 @@ export declare const wizardSchema: z.ZodObject<{
1298
2023
  high: "high";
1299
2024
  low: "low";
1300
2025
  }>>;
2026
+ each: z.ZodOptional<z.ZodString>;
1301
2027
  working: z.ZodOptional<z.ZodString>;
1302
2028
  id: z.ZodString;
1303
2029
  title: z.ZodString;
1304
2030
  description: z.ZodOptional<z.ZodString>;
1305
2031
  next: z.ZodOptional<z.ZodArray<z.ZodObject<{
1306
- when: z.ZodObject<{
2032
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1307
2033
  field: z.ZodString;
1308
2034
  op: z.ZodEnum<{
1309
2035
  in: "in";
@@ -1311,10 +2037,28 @@ export declare const wizardSchema: z.ZodObject<{
1311
2037
  notEquals: "notEquals";
1312
2038
  notEmpty: "notEmpty";
1313
2039
  empty: "empty";
2040
+ gt: "gt";
2041
+ lt: "lt";
2042
+ contains: "contains";
1314
2043
  }>;
1315
2044
  value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1316
- }, z.core.$strip>;
2045
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
2046
+ field: z.ZodString;
2047
+ op: z.ZodEnum<{
2048
+ in: "in";
2049
+ equals: "equals";
2050
+ notEquals: "notEquals";
2051
+ notEmpty: "notEmpty";
2052
+ empty: "empty";
2053
+ gt: "gt";
2054
+ lt: "lt";
2055
+ contains: "contains";
2056
+ }>;
2057
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
2058
+ }, z.core.$strip>>]>>;
2059
+ ask: z.ZodOptional<z.ZodString>;
1317
2060
  goto: z.ZodString;
2061
+ max: z.ZodOptional<z.ZodNumber>;
1318
2062
  }, z.core.$strip>>>;
1319
2063
  }, z.core.$strip>, z.ZodObject<{
1320
2064
  type: z.ZodLiteral<"generate">;
@@ -1368,7 +2112,7 @@ export declare const wizardSchema: z.ZodObject<{
1368
2112
  title: z.ZodString;
1369
2113
  description: z.ZodOptional<z.ZodString>;
1370
2114
  next: z.ZodOptional<z.ZodArray<z.ZodObject<{
1371
- when: z.ZodObject<{
2115
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1372
2116
  field: z.ZodString;
1373
2117
  op: z.ZodEnum<{
1374
2118
  in: "in";
@@ -1376,10 +2120,28 @@ export declare const wizardSchema: z.ZodObject<{
1376
2120
  notEquals: "notEquals";
1377
2121
  notEmpty: "notEmpty";
1378
2122
  empty: "empty";
2123
+ gt: "gt";
2124
+ lt: "lt";
2125
+ contains: "contains";
1379
2126
  }>;
1380
2127
  value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1381
- }, z.core.$strip>;
2128
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
2129
+ field: z.ZodString;
2130
+ op: z.ZodEnum<{
2131
+ in: "in";
2132
+ equals: "equals";
2133
+ notEquals: "notEquals";
2134
+ notEmpty: "notEmpty";
2135
+ empty: "empty";
2136
+ gt: "gt";
2137
+ lt: "lt";
2138
+ contains: "contains";
2139
+ }>;
2140
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
2141
+ }, z.core.$strip>>]>>;
2142
+ ask: z.ZodOptional<z.ZodString>;
1382
2143
  goto: z.ZodString;
2144
+ max: z.ZodOptional<z.ZodNumber>;
1383
2145
  }, z.core.$strip>>>;
1384
2146
  }, z.core.$strip>, z.ZodObject<{
1385
2147
  type: z.ZodLiteral<"widget">;
@@ -1396,7 +2158,7 @@ export declare const wizardSchema: z.ZodObject<{
1396
2158
  title: z.ZodString;
1397
2159
  description: z.ZodOptional<z.ZodString>;
1398
2160
  next: z.ZodOptional<z.ZodArray<z.ZodObject<{
1399
- when: z.ZodObject<{
2161
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1400
2162
  field: z.ZodString;
1401
2163
  op: z.ZodEnum<{
1402
2164
  in: "in";
@@ -1404,10 +2166,126 @@ export declare const wizardSchema: z.ZodObject<{
1404
2166
  notEquals: "notEquals";
1405
2167
  notEmpty: "notEmpty";
1406
2168
  empty: "empty";
2169
+ gt: "gt";
2170
+ lt: "lt";
2171
+ contains: "contains";
1407
2172
  }>;
1408
2173
  value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1409
- }, z.core.$strip>;
2174
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
2175
+ field: z.ZodString;
2176
+ op: z.ZodEnum<{
2177
+ in: "in";
2178
+ equals: "equals";
2179
+ notEquals: "notEquals";
2180
+ notEmpty: "notEmpty";
2181
+ empty: "empty";
2182
+ gt: "gt";
2183
+ lt: "lt";
2184
+ contains: "contains";
2185
+ }>;
2186
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
2187
+ }, z.core.$strip>>]>>;
2188
+ ask: z.ZodOptional<z.ZodString>;
2189
+ goto: z.ZodString;
2190
+ max: z.ZodOptional<z.ZodNumber>;
2191
+ }, z.core.$strip>>>;
2192
+ }, z.core.$strip>, z.ZodObject<{
2193
+ type: z.ZodLiteral<"surface">;
2194
+ components: z.ZodOptional<z.ZodArray<z.ZodObject<{
2195
+ id: z.ZodString;
2196
+ component: z.ZodEnum<{
2197
+ Column: "Column";
2198
+ Text: "Text";
2199
+ List: "List";
2200
+ Row: "Row";
2201
+ DetailGrid: "DetailGrid";
2202
+ Badge: "Badge";
2203
+ Grid: "Grid";
2204
+ Metric: "Metric";
2205
+ Table: "Table";
2206
+ Image: "Image";
2207
+ BarChart: "BarChart";
2208
+ LineChart: "LineChart";
2209
+ DonutChart: "DonutChart";
2210
+ Actions: "Actions";
2211
+ Button: "Button";
2212
+ }>;
2213
+ children: z.ZodOptional<z.ZodUnion<readonly [z.ZodArray<z.ZodString>, z.ZodObject<{
2214
+ path: z.ZodString;
2215
+ componentId: z.ZodString;
2216
+ }, z.core.$strip>]>>;
2217
+ }, z.core.$loose>>>;
2218
+ candidates: z.ZodOptional<z.ZodArray<z.ZodObject<{
2219
+ id: z.ZodString;
2220
+ description: z.ZodString;
2221
+ components: z.ZodArray<z.ZodObject<{
2222
+ id: z.ZodString;
2223
+ component: z.ZodEnum<{
2224
+ Column: "Column";
2225
+ Text: "Text";
2226
+ List: "List";
2227
+ Row: "Row";
2228
+ DetailGrid: "DetailGrid";
2229
+ Badge: "Badge";
2230
+ Grid: "Grid";
2231
+ Metric: "Metric";
2232
+ Table: "Table";
2233
+ Image: "Image";
2234
+ BarChart: "BarChart";
2235
+ LineChart: "LineChart";
2236
+ DonutChart: "DonutChart";
2237
+ Actions: "Actions";
2238
+ Button: "Button";
2239
+ }>;
2240
+ children: z.ZodOptional<z.ZodUnion<readonly [z.ZodArray<z.ZodString>, z.ZodObject<{
2241
+ path: z.ZodString;
2242
+ componentId: z.ZodString;
2243
+ }, z.core.$strip>]>>;
2244
+ }, z.core.$loose>>;
2245
+ group: z.ZodOptional<z.ZodString>;
2246
+ required: z.ZodOptional<z.ZodBoolean>;
2247
+ }, z.core.$strip>>>;
2248
+ groups: z.ZodOptional<z.ZodArray<z.ZodObject<{
2249
+ id: z.ZodString;
2250
+ instructions: z.ZodString;
2251
+ optional: z.ZodOptional<z.ZodBoolean>;
2252
+ }, z.core.$strip>>>;
2253
+ data: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
2254
+ working: z.ZodOptional<z.ZodString>;
2255
+ id: z.ZodString;
2256
+ title: z.ZodString;
2257
+ description: z.ZodOptional<z.ZodString>;
2258
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
2259
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
2260
+ field: z.ZodString;
2261
+ op: z.ZodEnum<{
2262
+ in: "in";
2263
+ equals: "equals";
2264
+ notEquals: "notEquals";
2265
+ notEmpty: "notEmpty";
2266
+ empty: "empty";
2267
+ gt: "gt";
2268
+ lt: "lt";
2269
+ contains: "contains";
2270
+ }>;
2271
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
2272
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
2273
+ field: z.ZodString;
2274
+ op: z.ZodEnum<{
2275
+ in: "in";
2276
+ equals: "equals";
2277
+ notEquals: "notEquals";
2278
+ notEmpty: "notEmpty";
2279
+ empty: "empty";
2280
+ gt: "gt";
2281
+ lt: "lt";
2282
+ contains: "contains";
2283
+ }>;
2284
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
2285
+ }, z.core.$strip>>]>>;
2286
+ ask: z.ZodOptional<z.ZodString>;
1410
2287
  goto: z.ZodString;
2288
+ max: z.ZodOptional<z.ZodNumber>;
1411
2289
  }, z.core.$strip>>>;
1412
2290
  }, z.core.$strip>, z.ZodObject<{
1413
2291
  type: z.ZodLiteral<"film">;
@@ -1437,7 +2315,7 @@ export declare const wizardSchema: z.ZodObject<{
1437
2315
  title: z.ZodString;
1438
2316
  description: z.ZodOptional<z.ZodString>;
1439
2317
  next: z.ZodOptional<z.ZodArray<z.ZodObject<{
1440
- when: z.ZodObject<{
2318
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1441
2319
  field: z.ZodString;
1442
2320
  op: z.ZodEnum<{
1443
2321
  in: "in";
@@ -1445,10 +2323,28 @@ export declare const wizardSchema: z.ZodObject<{
1445
2323
  notEquals: "notEquals";
1446
2324
  notEmpty: "notEmpty";
1447
2325
  empty: "empty";
2326
+ gt: "gt";
2327
+ lt: "lt";
2328
+ contains: "contains";
1448
2329
  }>;
1449
2330
  value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1450
- }, z.core.$strip>;
2331
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
2332
+ field: z.ZodString;
2333
+ op: z.ZodEnum<{
2334
+ in: "in";
2335
+ equals: "equals";
2336
+ notEquals: "notEquals";
2337
+ notEmpty: "notEmpty";
2338
+ empty: "empty";
2339
+ gt: "gt";
2340
+ lt: "lt";
2341
+ contains: "contains";
2342
+ }>;
2343
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
2344
+ }, z.core.$strip>>]>>;
2345
+ ask: z.ZodOptional<z.ZodString>;
1451
2346
  goto: z.ZodString;
2347
+ max: z.ZodOptional<z.ZodNumber>;
1452
2348
  }, z.core.$strip>>>;
1453
2349
  }, z.core.$strip>, z.ZodObject<{
1454
2350
  type: z.ZodLiteral<"review">;
@@ -1459,7 +2355,7 @@ export declare const wizardSchema: z.ZodObject<{
1459
2355
  title: z.ZodString;
1460
2356
  description: z.ZodOptional<z.ZodString>;
1461
2357
  next: z.ZodOptional<z.ZodArray<z.ZodObject<{
1462
- when: z.ZodObject<{
2358
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1463
2359
  field: z.ZodString;
1464
2360
  op: z.ZodEnum<{
1465
2361
  in: "in";
@@ -1467,10 +2363,28 @@ export declare const wizardSchema: z.ZodObject<{
1467
2363
  notEquals: "notEquals";
1468
2364
  notEmpty: "notEmpty";
1469
2365
  empty: "empty";
2366
+ gt: "gt";
2367
+ lt: "lt";
2368
+ contains: "contains";
1470
2369
  }>;
1471
2370
  value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1472
- }, z.core.$strip>;
2371
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
2372
+ field: z.ZodString;
2373
+ op: z.ZodEnum<{
2374
+ in: "in";
2375
+ equals: "equals";
2376
+ notEquals: "notEquals";
2377
+ notEmpty: "notEmpty";
2378
+ empty: "empty";
2379
+ gt: "gt";
2380
+ lt: "lt";
2381
+ contains: "contains";
2382
+ }>;
2383
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
2384
+ }, z.core.$strip>>]>>;
2385
+ ask: z.ZodOptional<z.ZodString>;
1473
2386
  goto: z.ZodString;
2387
+ max: z.ZodOptional<z.ZodNumber>;
1474
2388
  }, z.core.$strip>>>;
1475
2389
  }, z.core.$strip>, z.ZodObject<{
1476
2390
  type: z.ZodLiteral<"result">;
@@ -1497,7 +2411,7 @@ export declare const wizardSchema: z.ZodObject<{
1497
2411
  title: z.ZodString;
1498
2412
  description: z.ZodOptional<z.ZodString>;
1499
2413
  next: z.ZodOptional<z.ZodArray<z.ZodObject<{
1500
- when: z.ZodObject<{
2414
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1501
2415
  field: z.ZodString;
1502
2416
  op: z.ZodEnum<{
1503
2417
  in: "in";
@@ -1505,10 +2419,28 @@ export declare const wizardSchema: z.ZodObject<{
1505
2419
  notEquals: "notEquals";
1506
2420
  notEmpty: "notEmpty";
1507
2421
  empty: "empty";
2422
+ gt: "gt";
2423
+ lt: "lt";
2424
+ contains: "contains";
1508
2425
  }>;
1509
2426
  value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1510
- }, z.core.$strip>;
2427
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
2428
+ field: z.ZodString;
2429
+ op: z.ZodEnum<{
2430
+ in: "in";
2431
+ equals: "equals";
2432
+ notEquals: "notEquals";
2433
+ notEmpty: "notEmpty";
2434
+ empty: "empty";
2435
+ gt: "gt";
2436
+ lt: "lt";
2437
+ contains: "contains";
2438
+ }>;
2439
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
2440
+ }, z.core.$strip>>]>>;
2441
+ ask: z.ZodOptional<z.ZodString>;
1511
2442
  goto: z.ZodString;
2443
+ max: z.ZodOptional<z.ZodNumber>;
1512
2444
  }, z.core.$strip>>>;
1513
2445
  }, z.core.$strip>], "type">>;
1514
2446
  }, z.core.$strip>;
@@ -1561,10 +2493,76 @@ export declare function parseWizard(input: unknown, files?: string[]): {
1561
2493
  */
1562
2494
  export declare function branchValues(values: Record<string, unknown>, outputs: Record<string, {
1563
2495
  json?: unknown;
1564
- }>): Record<string, unknown>;
1565
- /** The step after `step`, honouring its branch rules. `null` = the end. */
2496
+ decided?: Record<string, number>;
2497
+ }>,
2498
+ /** Rows per stored list, read as `lists.<list>.count`. */
2499
+ listCounts?: Record<string, number>): Record<string, unknown>;
2500
+ /** A branch back to an earlier step without `max` is taken at most this often in one run. */
2501
+ export declare const DEFAULT_LOOP_MAX = 10;
2502
+ /** How a run counts the times it took a branch: "<step>→<goto>". */
2503
+ export declare function loopKey(stepId: string, goto: string): string;
2504
+ /** Whether a rule may still send the run on: one with `max`, or one back, stops after so many. */
2505
+ export declare function ruleOpen(def: WizardDefinition, stepId: string, rule: NextRule, loops?: Record<string, number>): boolean;
2506
+ /**
2507
+ * Where a run goes after a step: the first open `when` rule that holds (`rule` is its index in
2508
+ * `next`), else a decision over the open `ask` rules, else the next step in the list. `cursor`
2509
+ * null = the end.
2510
+ */
2511
+ export type RuleOutcome = {
2512
+ kind: "go";
2513
+ cursor: string | null;
2514
+ rule: number | null;
2515
+ } | {
2516
+ kind: "decide";
2517
+ rules: number[];
2518
+ };
2519
+ export declare function followRules(def: WizardDefinition, stepId: string, values: Record<string, unknown>, loops?: Record<string, number>): RuleOutcome;
2520
+ /** A rule with neither a condition nor a statement: where the run goes when no other rule holds. */
2521
+ export declare function isOtherwise(rule: NextRule): boolean;
2522
+ /**
2523
+ * Where a step goes when none of its rules holds: its "otherwise" rule (`rule` is its index in
2524
+ * `next`), else the next step in the list. `cursor` null = the end.
2525
+ */
2526
+ export declare function otherwiseOf(def: WizardDefinition, stepId: string, loops?: Record<string, number>): {
2527
+ cursor: string | null;
2528
+ rule: number | null;
2529
+ };
2530
+ /** The step after `step` by its `when` rules alone. `null` = the end. */
1566
2531
  export declare function nextStepId(def: WizardDefinition, stepId: string, values: Record<string, unknown>): string | null;
2532
+ /** The conditions of a rule or a field, as a list: one, several, or none. */
2533
+ export declare function conditionsOf(when: When | undefined): Condition[];
2534
+ export declare function conditionMatches(c: Condition, values: Record<string, unknown>): boolean;
2535
+ /** Whether every condition holds; no conditions hold trivially. */
2536
+ export declare function whenHolds(when: When | undefined, values: Record<string, unknown>): boolean;
2537
+ /** Whether a `when` rule holds. An `ask` rule never holds here: a decision takes it (see decide). */
1567
2538
  export declare function ruleMatches(rule: NextRule, values: Record<string, unknown>): boolean;
2539
+ /** A page with decided fields has at most this many; it shows at most MAX_SHOWN_FIELDS of them. */
2540
+ export declare const MAX_DECIDED_FIELDS = 12;
2541
+ export declare const MAX_SHOWN_FIELDS = 5;
2542
+ /** Whether a field is shown only when a decision keeps it. */
2543
+ export declare function isDecidedField(field: Field): boolean;
2544
+ /**
2545
+ * The fields of a page that are shown: those whose `when` holds on what was known before the
2546
+ * page (`known`) and what the page holds so far (`page`). A hidden field's value does not count
2547
+ * for the fields after it.
2548
+ */
2549
+ export declare function shownFields(fields: Field[], known: Record<string, unknown>, page: Record<string, unknown>): Field[];
2550
+ /** The references the `when` of a page's fields read outside the page: what the page must know. */
2551
+ export declare function pageNeeds(fields: Field[]): string[];
2552
+ /** At most this many choices come from data. */
2553
+ export declare const MAX_DATA_OPTIONS = 100;
2554
+ /**
2555
+ * The choices an `optionsFrom` reference finds in a run: the entries of a list output, one
2556
+ * column of a table output, or one column of a stored list — as text, without duplicates and
2557
+ * empties. Empty when the data is not there (yet).
2558
+ */
2559
+ export declare function optionsFromData(ref: string, outputs: Record<string, {
2560
+ json?: unknown;
2561
+ }>, lists?: Record<string, {
2562
+ rows: {
2563
+ cells: Record<string, unknown>;
2564
+ }[];
2565
+ }>): string[];
1568
2566
  export interface ItemsTotals {
1569
2567
  rows: Record<string, unknown>[];
1570
2568
  net: number;