wizards 0.1.9

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 (308) hide show
  1. package/LICENSE +110 -0
  2. package/README.md +170 -0
  3. package/apps/runtime/dist/agents/architect.js +453 -0
  4. package/apps/runtime/dist/agents/project-assistant.js +354 -0
  5. package/apps/runtime/dist/agents/subscription.js +206 -0
  6. package/apps/runtime/dist/agents/thought.js +21 -0
  7. package/apps/runtime/dist/agents/website.js +197 -0
  8. package/apps/runtime/dist/app.js +153 -0
  9. package/apps/runtime/dist/auth/account.js +121 -0
  10. package/apps/runtime/dist/auth/index.js +329 -0
  11. package/apps/runtime/dist/auth/keys.js +55 -0
  12. package/apps/runtime/dist/auth/local-ticket.js +23 -0
  13. package/apps/runtime/dist/authoring/example.js +73 -0
  14. package/apps/runtime/dist/authoring/guide.js +259 -0
  15. package/apps/runtime/dist/authoring/ops.js +117 -0
  16. package/apps/runtime/dist/cli/autostart.js +134 -0
  17. package/apps/runtime/dist/cli/clients.js +44 -0
  18. package/apps/runtime/dist/cli/environment.js +81 -0
  19. package/apps/runtime/dist/cli/exec.js +45 -0
  20. package/apps/runtime/dist/cli/home.js +74 -0
  21. package/apps/runtime/dist/cli/machine.js +145 -0
  22. package/apps/runtime/dist/cli/main.js +125 -0
  23. package/apps/runtime/dist/cli/setup.js +273 -0
  24. package/apps/runtime/dist/cli/start.js +190 -0
  25. package/apps/runtime/dist/cli/status.js +120 -0
  26. package/apps/runtime/dist/cli/ui.js +12 -0
  27. package/apps/runtime/dist/cli/update.js +58 -0
  28. package/apps/runtime/dist/connectors/builtin.js +70 -0
  29. package/apps/runtime/dist/connectors/external.js +400 -0
  30. package/apps/runtime/dist/connectors/gmail.js +107 -0
  31. package/apps/runtime/dist/connectors/imap.js +217 -0
  32. package/apps/runtime/dist/connectors/index.js +266 -0
  33. package/apps/runtime/dist/connectors/mail.js +72 -0
  34. package/apps/runtime/dist/connectors/outlook.js +90 -0
  35. package/apps/runtime/dist/credits/credits.js +103 -0
  36. package/apps/runtime/dist/credits/estimate.js +132 -0
  37. package/apps/runtime/dist/db/adopt.js +149 -0
  38. package/apps/runtime/dist/db/client.js +146 -0
  39. package/apps/runtime/dist/db/control-schema.js +70 -0
  40. package/apps/runtime/dist/db/migrations/control/0000_last_absorbing_man.sql +47 -0
  41. package/apps/runtime/dist/db/migrations/control/0001_gorgeous_nicolaos.sql +41 -0
  42. package/apps/runtime/dist/db/migrations/control/0002_secret_penance.sql +1 -0
  43. package/apps/runtime/dist/db/migrations/control/0003_nasty_mordo.sql +3 -0
  44. package/apps/runtime/dist/db/migrations/control/0004_breezy_eddie_brock.sql +6 -0
  45. package/apps/runtime/dist/db/migrations/control/meta/0000_snapshot.json +311 -0
  46. package/apps/runtime/dist/db/migrations/control/meta/0001_snapshot.json +599 -0
  47. package/apps/runtime/dist/db/migrations/control/meta/0002_snapshot.json +607 -0
  48. package/apps/runtime/dist/db/migrations/control/meta/0003_snapshot.json +311 -0
  49. package/apps/runtime/dist/db/migrations/control/meta/0004_snapshot.json +350 -0
  50. package/apps/runtime/dist/db/migrations/control/meta/_journal.json +41 -0
  51. package/apps/runtime/dist/db/migrations/tenant/0000_eminent_freak.sql +188 -0
  52. package/apps/runtime/dist/db/migrations/tenant/0001_salty_master_chief.sql +1 -0
  53. package/apps/runtime/dist/db/migrations/tenant/0002_cloudy_firebird.sql +1 -0
  54. package/apps/runtime/dist/db/migrations/tenant/0003_brown_warbound.sql +52 -0
  55. package/apps/runtime/dist/db/migrations/tenant/0004_romantic_nocturne.sql +6 -0
  56. package/apps/runtime/dist/db/migrations/tenant/meta/0000_snapshot.json +1323 -0
  57. package/apps/runtime/dist/db/migrations/tenant/meta/0001_snapshot.json +1330 -0
  58. package/apps/runtime/dist/db/migrations/tenant/meta/0002_snapshot.json +1337 -0
  59. package/apps/runtime/dist/db/migrations/tenant/meta/0003_snapshot.json +1605 -0
  60. package/apps/runtime/dist/db/migrations/tenant/meta/0004_snapshot.json +1645 -0
  61. package/apps/runtime/dist/db/migrations/tenant/meta/_journal.json +41 -0
  62. package/apps/runtime/dist/db/schema.js +278 -0
  63. package/apps/runtime/dist/documents/parse.js +230 -0
  64. package/apps/runtime/dist/engenty/connections-external/build-connector.js +193 -0
  65. package/apps/runtime/dist/engenty/connections-external/errors.js +11 -0
  66. package/apps/runtime/dist/engenty/connections-external/import-service.js +270 -0
  67. package/apps/runtime/dist/engenty/connections-external/importer/classify.js +34 -0
  68. package/apps/runtime/dist/engenty/connections-external/importer/map-auth.js +185 -0
  69. package/apps/runtime/dist/engenty/connections-external/importer/normalize-mcp.js +63 -0
  70. package/apps/runtime/dist/engenty/connections-external/importer/normalize-openapi.js +130 -0
  71. package/apps/runtime/dist/engenty/connections-external/invoke/http-invoker.js +143 -0
  72. package/apps/runtime/dist/engenty/connections-external/invoke/mcp-client.js +143 -0
  73. package/apps/runtime/dist/engenty/connections-external/net/guarded-fetch.js +119 -0
  74. package/apps/runtime/dist/engenty/connections-external/oauth-dcr.js +88 -0
  75. package/apps/runtime/dist/engenty/connections-external/registry-client.js +336 -0
  76. package/apps/runtime/dist/engenty/connections-external/registry-source.js +82 -0
  77. package/apps/runtime/dist/engenty/connections-external/types.js +7 -0
  78. package/apps/runtime/dist/engenty/connections-github/connector.js +209 -0
  79. package/apps/runtime/dist/engenty/connections-google/connectors/calendar.js +359 -0
  80. package/apps/runtime/dist/engenty/connections-google/connectors/contacts.js +94 -0
  81. package/apps/runtime/dist/engenty/connections-google/connectors/drive.js +290 -0
  82. package/apps/runtime/dist/engenty/connections-google/connectors/gmail.js +567 -0
  83. package/apps/runtime/dist/engenty/connections-google/definitions.js +11 -0
  84. package/apps/runtime/dist/engenty/connections-google/shared.js +73 -0
  85. package/apps/runtime/dist/engenty/connections-hubspot/connector.js +140 -0
  86. package/apps/runtime/dist/engenty/connections-microsoft/action.js +17 -0
  87. package/apps/runtime/dist/engenty/connections-microsoft/graph.js +114 -0
  88. package/apps/runtime/dist/engenty/connections-microsoft/onedrive.js +286 -0
  89. package/apps/runtime/dist/engenty/connections-microsoft/outlook.js +464 -0
  90. package/apps/runtime/dist/engenty/connections-s3/s3.js +328 -0
  91. package/apps/runtime/dist/engenty/connections-sdk/files-capability.js +86 -0
  92. package/apps/runtime/dist/engenty/connections-sdk/oauth2.js +150 -0
  93. package/apps/runtime/dist/engenty/connections-sdk/registry.js +89 -0
  94. package/apps/runtime/dist/engenty/connections-sdk/storage-capability.js +84 -0
  95. package/apps/runtime/dist/engenty/connections-sdk/types.js +30 -0
  96. package/apps/runtime/dist/engenty/connections-slack/connector.js +360 -0
  97. package/apps/runtime/dist/engenty/csv-import/csv-matrix.js +178 -0
  98. package/apps/runtime/dist/engenty/csv-import/import-sources.js +87 -0
  99. package/apps/runtime/dist/engenty/csv-import/parse-csv.js +129 -0
  100. package/apps/runtime/dist/engenty/csv-import/serialize-csv.js +20 -0
  101. package/apps/runtime/dist/engenty/csv-import/types.js +1 -0
  102. package/apps/runtime/dist/engenty/csv-import/xlsx-workbook.js +159 -0
  103. package/apps/runtime/dist/engenty/doc-converter/interface.js +9 -0
  104. package/apps/runtime/dist/engenty/doc-converter/page-break.js +92 -0
  105. package/apps/runtime/dist/engenty/doc-converter/providers/local/index.js +72 -0
  106. package/apps/runtime/dist/engenty/document-scanner/schemas/classifier.js +30 -0
  107. package/apps/runtime/dist/engenty/document-scanner/schemas/index.js +4 -0
  108. package/apps/runtime/dist/engenty/document-scanner/schemas/invoice.js +73 -0
  109. package/apps/runtime/dist/engenty/document-scanner/schemas/receipt.js +63 -0
  110. package/apps/runtime/dist/engenty/document-scanner/schemas/shared.js +40 -0
  111. package/apps/runtime/dist/engenty/search-index/chunks.js +164 -0
  112. package/apps/runtime/dist/engenty/search-index/contracts.js +9 -0
  113. package/apps/runtime/dist/engenty/shims/connections-sdk.js +39 -0
  114. package/apps/runtime/dist/engenty/shims/plugin-sdk.js +1 -0
  115. package/apps/runtime/dist/engenty/shims/web-ingest.js +3 -0
  116. package/apps/runtime/dist/engenty/web-ingest/ssrf.js +277 -0
  117. package/apps/runtime/dist/engine/asks.js +60 -0
  118. package/apps/runtime/dist/engine/events.js +46 -0
  119. package/apps/runtime/dist/engine/input.js +170 -0
  120. package/apps/runtime/dist/engine/prepare.js +51 -0
  121. package/apps/runtime/dist/engine/requirements.js +124 -0
  122. package/apps/runtime/dist/engine/resources.js +89 -0
  123. package/apps/runtime/dist/engine/runner.js +560 -0
  124. package/apps/runtime/dist/engine/steps.js +598 -0
  125. package/apps/runtime/dist/engine/template.js +183 -0
  126. package/apps/runtime/dist/engine/types.js +3 -0
  127. package/apps/runtime/dist/env.js +224 -0
  128. package/apps/runtime/dist/files/blobs.js +22 -0
  129. package/apps/runtime/dist/files/objects.js +86 -0
  130. package/apps/runtime/dist/files/storage.js +95 -0
  131. package/apps/runtime/dist/geocode.js +58 -0
  132. package/apps/runtime/dist/harness/claude.js +138 -0
  133. package/apps/runtime/dist/harness/codex.js +228 -0
  134. package/apps/runtime/dist/harness/cursor.js +93 -0
  135. package/apps/runtime/dist/harness/env.js +124 -0
  136. package/apps/runtime/dist/harness/gemini.js +126 -0
  137. package/apps/runtime/dist/harness/index.js +99 -0
  138. package/apps/runtime/dist/harness/model.js +267 -0
  139. package/apps/runtime/dist/harness/prompt.js +121 -0
  140. package/apps/runtime/dist/harness/terminal.js +193 -0
  141. package/apps/runtime/dist/harness/types.js +7 -0
  142. package/apps/runtime/dist/index.js +76 -0
  143. package/apps/runtime/dist/limits.js +57 -0
  144. package/apps/runtime/dist/link-preview.js +59 -0
  145. package/apps/runtime/dist/manage.js +151 -0
  146. package/apps/runtime/dist/mcp/auth.js +102 -0
  147. package/apps/runtime/dist/mcp/bridge.js +59 -0
  148. package/apps/runtime/dist/mcp/handler.js +42 -0
  149. package/apps/runtime/dist/mcp/scopes.js +5 -0
  150. package/apps/runtime/dist/mcp/tools.js +401 -0
  151. package/apps/runtime/dist/media/ffmpeg.js +121 -0
  152. package/apps/runtime/dist/media/generate.js +120 -0
  153. package/apps/runtime/dist/media/marking.js +121 -0
  154. package/apps/runtime/dist/media/transcribe.js +30 -0
  155. package/apps/runtime/dist/model-errors.js +3 -0
  156. package/apps/runtime/dist/models.js +489 -0
  157. package/apps/runtime/dist/plugin.js +61 -0
  158. package/apps/runtime/dist/render/chromium.js +85 -0
  159. package/apps/runtime/dist/render/convert.js +161 -0
  160. package/apps/runtime/dist/render/downloads.js +277 -0
  161. package/apps/runtime/dist/render/guard.js +25 -0
  162. package/apps/runtime/dist/routes/api.js +74 -0
  163. package/apps/runtime/dist/routes/delivery.js +52 -0
  164. package/apps/runtime/dist/routes/internal.js +49 -0
  165. package/apps/runtime/dist/routes/marketplace.js +36 -0
  166. package/apps/runtime/dist/routes/runs.js +805 -0
  167. package/apps/runtime/dist/routes/studio.js +702 -0
  168. package/apps/runtime/dist/routes/wizard-stream.js +30 -0
  169. package/apps/runtime/dist/running.js +39 -0
  170. package/apps/runtime/dist/sandbox/agentos.js +191 -0
  171. package/apps/runtime/dist/sandbox/docker.js +77 -0
  172. package/apps/runtime/dist/sandbox/index.js +30 -0
  173. package/apps/runtime/dist/sandbox/types.js +1 -0
  174. package/apps/runtime/dist/secrets/crypto.js +28 -0
  175. package/apps/runtime/dist/secrets/signing.js +34 -0
  176. package/apps/runtime/dist/secrets/vault.js +59 -0
  177. package/apps/runtime/dist/services/architect.js +92 -0
  178. package/apps/runtime/dist/services/brand.js +20 -0
  179. package/apps/runtime/dist/services/cloud.js +52 -0
  180. package/apps/runtime/dist/services/draft-events.js +27 -0
  181. package/apps/runtime/dist/services/errors.js +24 -0
  182. package/apps/runtime/dist/services/files.js +129 -0
  183. package/apps/runtime/dist/services/links.js +16 -0
  184. package/apps/runtime/dist/services/marketplace.js +292 -0
  185. package/apps/runtime/dist/services/package.js +202 -0
  186. package/apps/runtime/dist/services/profile.js +23 -0
  187. package/apps/runtime/dist/services/project-files.js +266 -0
  188. package/apps/runtime/dist/services/project-index.js +109 -0
  189. package/apps/runtime/dist/services/projects.js +181 -0
  190. package/apps/runtime/dist/services/runs.js +224 -0
  191. package/apps/runtime/dist/services/shares.js +129 -0
  192. package/apps/runtime/dist/services/widgets.js +34 -0
  193. package/apps/runtime/dist/services/wizards.js +342 -0
  194. package/apps/runtime/dist/settings.js +16 -0
  195. package/apps/runtime/dist/store/index.js +279 -0
  196. package/apps/runtime/dist/tenants/control.js +106 -0
  197. package/apps/runtime/dist/tenants/tenant.js +26 -0
  198. package/apps/runtime/dist/tools/browser.js +380 -0
  199. package/apps/runtime/dist/tools/connector.js +204 -0
  200. package/apps/runtime/dist/tools/index.js +234 -0
  201. package/apps/runtime/dist/tools/mail.js +104 -0
  202. package/apps/runtime/dist/tools/net-guard.js +59 -0
  203. package/apps/runtime/dist/tools/project.js +53 -0
  204. package/apps/runtime/dist/tools/shared.js +42 -0
  205. package/apps/runtime/dist/tools/store.js +238 -0
  206. package/apps/runtime/dist/update.js +118 -0
  207. package/apps/runtime/dist/widgets/bundle.js +99 -0
  208. package/apps/runtime/dist/widgets/render.js +312 -0
  209. package/apps/runtime/dist/widgets/runtime.js +84 -0
  210. package/apps/runtime/dist/widgets/script.js +30 -0
  211. package/apps/runtime/dist/widgets/step.js +192 -0
  212. package/apps/web/dist/ai-labels/ai-black.svg +20 -0
  213. package/apps/web/dist/ai-labels/ai-generated-black.svg +31 -0
  214. package/apps/web/dist/ai-labels/ai-generated-white.svg +32 -0
  215. package/apps/web/dist/ai-labels/ai-modified-black.svg +30 -0
  216. package/apps/web/dist/ai-labels/ai-modified-white.svg +31 -0
  217. package/apps/web/dist/ai-labels/ai-white.svg +21 -0
  218. package/apps/web/dist/assets/ChangelogDialog-O00vEnbm.js +1 -0
  219. package/apps/web/dist/assets/ChatPanel-CH9ry0Hp.js +1 -0
  220. package/apps/web/dist/assets/CreditsDialog-DRzecwUw.js +1 -0
  221. package/apps/web/dist/assets/EditorPage-BRnBf02Q.js +2 -0
  222. package/apps/web/dist/assets/FlowPreview-DDOj8IAH.js +1 -0
  223. package/apps/web/dist/assets/HomePage-CAGTTG3N.js +1 -0
  224. package/apps/web/dist/assets/ImportWizard-0RRrAnX3.js +1 -0
  225. package/apps/web/dist/assets/LocalRuntime-BrP-ENHg.css +1 -0
  226. package/apps/web/dist/assets/LocalRuntime-C-TBYrzs.js +16 -0
  227. package/apps/web/dist/assets/NewWizardPage-kI90h3_9.js +2 -0
  228. package/apps/web/dist/assets/PublicRunner-CKRDeIVd.js +1 -0
  229. package/apps/web/dist/assets/RunnerView-Rc4H8wYH.js +2 -0
  230. package/apps/web/dist/assets/SettingsPage-CESMuZxq.js +2 -0
  231. package/apps/web/dist/assets/SetupPage-D1rrYU14.js +1 -0
  232. package/apps/web/dist/assets/SharePage-COTAmOgh.js +1 -0
  233. package/apps/web/dist/assets/api-BY28cjGY.js +10 -0
  234. package/apps/web/dist/assets/arrow-left-UpjOBfQp.js +1 -0
  235. package/apps/web/dist/assets/arrow-right-CucQycEy.js +1 -0
  236. package/apps/web/dist/assets/changelog-p3wsaDDS.js +1 -0
  237. package/apps/web/dist/assets/check-Bjx41xbB.js +1 -0
  238. package/apps/web/dist/assets/createLucideIcon-DBu2Ovxj.js +1 -0
  239. package/apps/web/dist/assets/definition-cy7uvY5L.js +55 -0
  240. package/apps/web/dist/assets/engenty-CWIFpgKq.js +1 -0
  241. package/apps/web/dist/assets/esm-D1OEhjTK.js +7 -0
  242. package/apps/web/dist/assets/external-link-CRg6DVdO.js +1 -0
  243. package/apps/web/dist/assets/fluffy-engenty-CJ3wCQgT.js +456 -0
  244. package/apps/web/dist/assets/index-CQ_q9iMO.css +1 -0
  245. package/apps/web/dist/assets/index-D0gxh90t.js +10 -0
  246. package/apps/web/dist/assets/jsx-runtime-Dk72oS4N.js +1 -0
  247. package/apps/web/dist/assets/meta-BbSdtTUa.js +1 -0
  248. package/apps/web/dist/assets/mic-CeqQ89Dj.js +1 -0
  249. package/apps/web/dist/assets/oss-credits-cPuZUFHD.js +1 -0
  250. package/apps/web/dist/assets/outputs-D6pxH6ve.js +69 -0
  251. package/apps/web/dist/assets/plus-HA210wXA.js +1 -0
  252. package/apps/web/dist/assets/preload-helper-CNEI7N0N.js +1 -0
  253. package/apps/web/dist/assets/qr-scanner-worker.min-CJaXo3yu.js +98 -0
  254. package/apps/web/dist/assets/qr-scanner.min-C_UI0gH-.js +1 -0
  255. package/apps/web/dist/assets/type-BzYgVWKL.js +1 -0
  256. package/apps/web/dist/assets/ui-Ddwl35A6.js +1 -0
  257. package/apps/web/dist/assets/upload-DsgLfQ3U.js +1 -0
  258. package/apps/web/dist/assets/video-Dk1fuTDl.js +1 -0
  259. package/apps/web/dist/assets/wand-sparkles-Bf97fs8T.js +1 -0
  260. package/apps/web/dist/embed.js +102 -0
  261. package/apps/web/dist/favicon.svg +1 -0
  262. package/apps/web/dist/icons/apple-touch-icon.png +0 -0
  263. package/apps/web/dist/icons/icon-192.png +0 -0
  264. package/apps/web/dist/icons/icon-512.png +0 -0
  265. package/apps/web/dist/icons/icon-maskable-512.png +0 -0
  266. package/apps/web/dist/index.html +46 -0
  267. package/apps/web/dist/install.sh +532 -0
  268. package/apps/web/dist/manifest.webmanifest +20 -0
  269. package/apps/web/dist/sw.js +15 -0
  270. package/bin/wizards.mjs +13 -0
  271. package/node_modules/@engenty-wizards/shared/dist/connectors.d.ts +77 -0
  272. package/node_modules/@engenty-wizards/shared/dist/connectors.js +2 -0
  273. package/node_modules/@engenty-wizards/shared/dist/definition.d.ts +1415 -0
  274. package/node_modules/@engenty-wizards/shared/dist/definition.js +762 -0
  275. package/node_modules/@engenty-wizards/shared/dist/engenty/data-tables/columns-format.d.ts +5 -0
  276. package/node_modules/@engenty-wizards/shared/dist/engenty/data-tables/columns-format.js +132 -0
  277. package/node_modules/@engenty-wizards/shared/dist/engenty/data-tables/columns-value.d.ts +11 -0
  278. package/node_modules/@engenty-wizards/shared/dist/engenty/data-tables/columns-value.js +209 -0
  279. package/node_modules/@engenty-wizards/shared/dist/engenty/data-tables/columns.d.ts +532 -0
  280. package/node_modules/@engenty-wizards/shared/dist/engenty/data-tables/columns.js +216 -0
  281. package/node_modules/@engenty-wizards/shared/dist/engenty/data-tables/index.d.ts +3 -0
  282. package/node_modules/@engenty-wizards/shared/dist/engenty/data-tables/index.js +3 -0
  283. package/node_modules/@engenty-wizards/shared/dist/engenty/search-index/catalog-lexical.d.ts +14 -0
  284. package/node_modules/@engenty-wizards/shared/dist/engenty/search-index/catalog-lexical.js +166 -0
  285. package/node_modules/@engenty-wizards/shared/dist/engenty/search-index/catalog-rank.d.ts +33 -0
  286. package/node_modules/@engenty-wizards/shared/dist/engenty/search-index/catalog-rank.js +99 -0
  287. package/node_modules/@engenty-wizards/shared/dist/marketplace-entry.d.ts +35 -0
  288. package/node_modules/@engenty-wizards/shared/dist/marketplace-entry.js +86 -0
  289. package/node_modules/@engenty-wizards/shared/dist/marketplace-search.d.ts +20 -0
  290. package/node_modules/@engenty-wizards/shared/dist/marketplace-search.js +133 -0
  291. package/node_modules/@engenty-wizards/shared/dist/marketplace.d.ts +298 -0
  292. package/node_modules/@engenty-wizards/shared/dist/marketplace.js +211 -0
  293. package/node_modules/@engenty-wizards/shared/dist/merge.d.ts +7 -0
  294. package/node_modules/@engenty-wizards/shared/dist/merge.js +40 -0
  295. package/node_modules/@engenty-wizards/shared/dist/projects.d.ts +74 -0
  296. package/node_modules/@engenty-wizards/shared/dist/projects.js +96 -0
  297. package/node_modules/@engenty-wizards/shared/dist/run.d.ts +219 -0
  298. package/node_modules/@engenty-wizards/shared/dist/run.js +1 -0
  299. package/node_modules/@engenty-wizards/shared/dist/store.d.ts +100 -0
  300. package/node_modules/@engenty-wizards/shared/dist/store.js +44 -0
  301. package/node_modules/@engenty-wizards/shared/dist/workspace.d.ts +16 -0
  302. package/node_modules/@engenty-wizards/shared/dist/workspace.js +51 -0
  303. package/node_modules/@engenty-wizards/shared/package.json +10 -0
  304. package/package.json +62 -0
  305. package/plugin/.claude-plugin/plugin.json +9 -0
  306. package/plugin/.mcp.json +8 -0
  307. package/plugin/commands/wizard.md +8 -0
  308. package/plugin/skills/build-wizard/SKILL.md +27 -0
@@ -0,0 +1,1415 @@
1
+ import { z } from "zod";
2
+ /** The engenty avatars a wizard can wear. Same cast as engenty's ui-core. */
3
+ export declare const ENGENTY_KINDS: readonly ["round", "drop", "dome", "flame", "oval", "bean", "pebble", "sprout", "tower", "wedge"];
4
+ export type EngentyKind = (typeof ENGENTY_KINDS)[number];
5
+ export declare const FIELD_KINDS: readonly ["text", "textarea", "number", "select", "multiselect", "date", "email", "url", "toggle", "color", "image", "file", "items", "connection", "list", "location", "audio", "signature"];
6
+ export type FieldKind = (typeof FIELD_KINDS)[number];
7
+ /**
8
+ * What a `location` field holds: where the person stands (from the device), a place they typed,
9
+ * or both — the label is then the address of the position.
10
+ */
11
+ export interface LocationValue {
12
+ lat?: number;
13
+ lng?: number;
14
+ /** Radius in metres the device vouches for. */
15
+ accuracy?: number;
16
+ label?: string;
17
+ }
18
+ /** What an `audio` field holds: the recording, and what is said in it once it was listened to. */
19
+ export interface AudioValue {
20
+ /** Upload id of the recording. */
21
+ asset: string;
22
+ seconds?: number;
23
+ transcript?: string;
24
+ }
25
+ export declare function isLocationValue(v: unknown): v is LocationValue;
26
+ export declare function isAudioValue(v: unknown): v is AudioValue;
27
+ /** A position the way a person reads it: "Hauptplatz 1, Graz (47.07071, 15.43950, ±12 m)". */
28
+ export declare function locationText(v: LocationValue): string;
29
+ /** A field takes at most this many files. */
30
+ export declare const MAX_FILES = 30;
31
+ export declare const TOOL_IDS: readonly ["web_search", "web_fetch", "browser", "sandbox", "image", "http"];
32
+ /**
33
+ * The kinds of model a step can ask for. A step names a class; which model serves it is bound
34
+ * outside the wizard (the model-gateway, or the settings of a runtime that runs alone).
35
+ */
36
+ export declare const TEXT_CLASSES: readonly ["classifier", "standard", "high", "highest"];
37
+ export type TextClass = (typeof TEXT_CLASSES)[number];
38
+ export declare const MODEL_CLASSES: readonly ["classifier", "standard", "high", "highest", "image", "video", "audio", "speech"];
39
+ export type ModelClass = (typeof MODEL_CLASSES)[number];
40
+ /** How hard the model should think, where the bound model can be told. */
41
+ export declare const EFFORTS: readonly ["low", "medium", "high"];
42
+ export type Effort = (typeof EFFORTS)[number];
43
+ export type ToolId = (typeof TOOL_IDS)[number];
44
+ export declare const ASSET_KINDS: readonly ["image", "video", "voice", "document", "dashboard"];
45
+ export type AssetKind = (typeof ASSET_KINDS)[number];
46
+ export declare const FORMATS: readonly ["png", "mp4", "mp3", "pdf", "docx", "html", "md", "txt", "csv", "xlsx", "json", "zip"];
47
+ export type Format = (typeof FORMATS)[number];
48
+ export declare const ASPECT_RATIOS: readonly ["1:1", "16:9", "9:16", "4:5", "3:2", "2:3"];
49
+ /** What a video model renders at: 720p unless the step asks for less. Never more. */
50
+ export declare const VIDEO_RESOLUTIONS: readonly ["720p", "480p"];
51
+ export type VideoResolution = (typeof VIDEO_RESOLUTIONS)[number];
52
+ export declare const itemColumnSchema: z.ZodObject<{
53
+ id: z.ZodString;
54
+ label: z.ZodString;
55
+ kind: z.ZodEnum<{
56
+ number: "number";
57
+ text: "text";
58
+ money: "money";
59
+ }>;
60
+ }, z.core.$strip>;
61
+ export declare const fieldSchema: z.ZodObject<{
62
+ id: z.ZodString;
63
+ label: z.ZodString;
64
+ kind: z.ZodEnum<{
65
+ number: "number";
66
+ date: "date";
67
+ file: "file";
68
+ text: "text";
69
+ select: "select";
70
+ email: "email";
71
+ url: "url";
72
+ textarea: "textarea";
73
+ multiselect: "multiselect";
74
+ toggle: "toggle";
75
+ color: "color";
76
+ image: "image";
77
+ items: "items";
78
+ connection: "connection";
79
+ list: "list";
80
+ location: "location";
81
+ audio: "audio";
82
+ signature: "signature";
83
+ }>;
84
+ required: z.ZodOptional<z.ZodBoolean>;
85
+ placeholder: z.ZodOptional<z.ZodString>;
86
+ help: z.ZodOptional<z.ZodString>;
87
+ options: z.ZodOptional<z.ZodArray<z.ZodString>>;
88
+ default: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
89
+ columns: z.ZodOptional<z.ZodArray<z.ZodObject<{
90
+ id: z.ZodString;
91
+ label: z.ZodString;
92
+ kind: z.ZodEnum<{
93
+ number: "number";
94
+ text: "text";
95
+ money: "money";
96
+ }>;
97
+ }, z.core.$strip>>>;
98
+ vat: z.ZodOptional<z.ZodObject<{
99
+ rate: z.ZodOptional<z.ZodNumber>;
100
+ field: z.ZodOptional<z.ZodString>;
101
+ }, z.core.$strip>>;
102
+ currency: z.ZodOptional<z.ZodString>;
103
+ multiple: z.ZodOptional<z.ZodBoolean>;
104
+ min: z.ZodOptional<z.ZodNumber>;
105
+ max: z.ZodOptional<z.ZodNumber>;
106
+ camera: z.ZodOptional<z.ZodBoolean>;
107
+ video: z.ZodOptional<z.ZodBoolean>;
108
+ scan: z.ZodOptional<z.ZodBoolean>;
109
+ connection: z.ZodOptional<z.ZodString>;
110
+ list: z.ZodOptional<z.ZodString>;
111
+ prefill: z.ZodOptional<z.ZodString>;
112
+ }, z.core.$strip>;
113
+ export type Field = z.infer<typeof fieldSchema>;
114
+ export declare const nextRuleSchema: z.ZodObject<{
115
+ when: z.ZodObject<{
116
+ field: z.ZodString;
117
+ op: z.ZodEnum<{
118
+ in: "in";
119
+ equals: "equals";
120
+ notEquals: "notEquals";
121
+ notEmpty: "notEmpty";
122
+ empty: "empty";
123
+ }>;
124
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
125
+ }, z.core.$strip>;
126
+ goto: z.ZodString;
127
+ }, z.core.$strip>;
128
+ export type NextRule = z.infer<typeof nextRuleSchema>;
129
+ export declare const outputFieldSchema: z.ZodObject<{
130
+ id: z.ZodString;
131
+ kind: z.ZodEnum<{
132
+ number: "number";
133
+ text: "text";
134
+ list: "list";
135
+ table: "table";
136
+ yesno: "yesno";
137
+ choice: "choice";
138
+ }>;
139
+ description: z.ZodOptional<z.ZodString>;
140
+ columns: z.ZodOptional<z.ZodArray<z.ZodString>>;
141
+ options: z.ZodOptional<z.ZodArray<z.ZodString>>;
142
+ }, z.core.$strip>;
143
+ export declare const pageStepSchema: z.ZodObject<{
144
+ type: z.ZodLiteral<"page">;
145
+ fields: z.ZodArray<z.ZodObject<{
146
+ id: z.ZodString;
147
+ label: z.ZodString;
148
+ kind: z.ZodEnum<{
149
+ number: "number";
150
+ date: "date";
151
+ file: "file";
152
+ text: "text";
153
+ select: "select";
154
+ email: "email";
155
+ url: "url";
156
+ textarea: "textarea";
157
+ multiselect: "multiselect";
158
+ toggle: "toggle";
159
+ color: "color";
160
+ image: "image";
161
+ items: "items";
162
+ connection: "connection";
163
+ list: "list";
164
+ location: "location";
165
+ audio: "audio";
166
+ signature: "signature";
167
+ }>;
168
+ required: z.ZodOptional<z.ZodBoolean>;
169
+ placeholder: z.ZodOptional<z.ZodString>;
170
+ help: z.ZodOptional<z.ZodString>;
171
+ options: z.ZodOptional<z.ZodArray<z.ZodString>>;
172
+ default: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
173
+ columns: z.ZodOptional<z.ZodArray<z.ZodObject<{
174
+ id: z.ZodString;
175
+ label: z.ZodString;
176
+ kind: z.ZodEnum<{
177
+ number: "number";
178
+ text: "text";
179
+ money: "money";
180
+ }>;
181
+ }, z.core.$strip>>>;
182
+ vat: z.ZodOptional<z.ZodObject<{
183
+ rate: z.ZodOptional<z.ZodNumber>;
184
+ field: z.ZodOptional<z.ZodString>;
185
+ }, z.core.$strip>>;
186
+ currency: z.ZodOptional<z.ZodString>;
187
+ multiple: z.ZodOptional<z.ZodBoolean>;
188
+ min: z.ZodOptional<z.ZodNumber>;
189
+ max: z.ZodOptional<z.ZodNumber>;
190
+ camera: z.ZodOptional<z.ZodBoolean>;
191
+ video: z.ZodOptional<z.ZodBoolean>;
192
+ scan: z.ZodOptional<z.ZodBoolean>;
193
+ connection: z.ZodOptional<z.ZodString>;
194
+ list: z.ZodOptional<z.ZodString>;
195
+ prefill: z.ZodOptional<z.ZodString>;
196
+ }, z.core.$strip>>;
197
+ cta: z.ZodOptional<z.ZodString>;
198
+ id: z.ZodString;
199
+ title: z.ZodString;
200
+ description: z.ZodOptional<z.ZodString>;
201
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
202
+ when: z.ZodObject<{
203
+ field: z.ZodString;
204
+ op: z.ZodEnum<{
205
+ in: "in";
206
+ equals: "equals";
207
+ notEquals: "notEquals";
208
+ notEmpty: "notEmpty";
209
+ empty: "empty";
210
+ }>;
211
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
212
+ }, z.core.$strip>;
213
+ goto: z.ZodString;
214
+ }, z.core.$strip>>>;
215
+ }, z.core.$strip>;
216
+ export declare const agentStepSchema: z.ZodObject<{
217
+ type: z.ZodLiteral<"agent">;
218
+ instructions: z.ZodString;
219
+ tools: z.ZodDefault<z.ZodArray<z.ZodEnum<{
220
+ image: "image";
221
+ web_search: "web_search";
222
+ web_fetch: "web_fetch";
223
+ browser: "browser";
224
+ sandbox: "sandbox";
225
+ http: "http";
226
+ }>>>;
227
+ mcp: z.ZodOptional<z.ZodArray<z.ZodString>>;
228
+ connections: z.ZodOptional<z.ZodArray<z.ZodString>>;
229
+ output: z.ZodDefault<z.ZodObject<{
230
+ format: z.ZodEnum<{
231
+ markdown: "markdown";
232
+ text: "text";
233
+ json: "json";
234
+ }>;
235
+ fields: z.ZodOptional<z.ZodArray<z.ZodObject<{
236
+ id: z.ZodString;
237
+ kind: z.ZodEnum<{
238
+ number: "number";
239
+ text: "text";
240
+ list: "list";
241
+ table: "table";
242
+ yesno: "yesno";
243
+ choice: "choice";
244
+ }>;
245
+ description: z.ZodOptional<z.ZodString>;
246
+ columns: z.ZodOptional<z.ZodArray<z.ZodString>>;
247
+ options: z.ZodOptional<z.ZodArray<z.ZodString>>;
248
+ }, z.core.$strip>>>;
249
+ }, z.core.$strip>>;
250
+ model: z.ZodOptional<z.ZodEnum<{
251
+ classifier: "classifier";
252
+ standard: "standard";
253
+ high: "high";
254
+ highest: "highest";
255
+ }>>;
256
+ effort: z.ZodOptional<z.ZodEnum<{
257
+ medium: "medium";
258
+ high: "high";
259
+ low: "low";
260
+ }>>;
261
+ working: z.ZodOptional<z.ZodString>;
262
+ id: z.ZodString;
263
+ title: z.ZodString;
264
+ description: z.ZodOptional<z.ZodString>;
265
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
266
+ when: z.ZodObject<{
267
+ field: z.ZodString;
268
+ op: z.ZodEnum<{
269
+ in: "in";
270
+ equals: "equals";
271
+ notEquals: "notEquals";
272
+ notEmpty: "notEmpty";
273
+ empty: "empty";
274
+ }>;
275
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
276
+ }, z.core.$strip>;
277
+ goto: z.ZodString;
278
+ }, z.core.$strip>>>;
279
+ }, z.core.$strip>;
280
+ export declare const generateStepSchema: z.ZodObject<{
281
+ type: z.ZodLiteral<"generate">;
282
+ asset: z.ZodEnum<{
283
+ image: "image";
284
+ video: "video";
285
+ voice: "voice";
286
+ document: "document";
287
+ dashboard: "dashboard";
288
+ }>;
289
+ prompt: z.ZodString;
290
+ options: z.ZodOptional<z.ZodObject<{
291
+ aspectRatio: z.ZodOptional<z.ZodEnum<{
292
+ "1:1": "1:1";
293
+ "16:9": "16:9";
294
+ "9:16": "9:16";
295
+ "4:5": "4:5";
296
+ "3:2": "3:2";
297
+ "2:3": "2:3";
298
+ }>>;
299
+ duration: z.ZodOptional<z.ZodNumber>;
300
+ resolution: z.ZodOptional<z.ZodEnum<{
301
+ "720p": "720p";
302
+ "480p": "480p";
303
+ }>>;
304
+ style: z.ZodOptional<z.ZodString>;
305
+ template: z.ZodOptional<z.ZodEnum<{
306
+ invoice: "invoice";
307
+ offer: "offer";
308
+ briefing: "briefing";
309
+ letter: "letter";
310
+ report: "report";
311
+ free: "free";
312
+ }>>;
313
+ }, z.core.$strip>>;
314
+ referenceImage: z.ZodOptional<z.ZodString>;
315
+ each: z.ZodOptional<z.ZodString>;
316
+ model: z.ZodOptional<z.ZodEnum<{
317
+ classifier: "classifier";
318
+ standard: "standard";
319
+ high: "high";
320
+ highest: "highest";
321
+ }>>;
322
+ effort: z.ZodOptional<z.ZodEnum<{
323
+ medium: "medium";
324
+ high: "high";
325
+ low: "low";
326
+ }>>;
327
+ working: z.ZodOptional<z.ZodString>;
328
+ id: z.ZodString;
329
+ title: z.ZodString;
330
+ description: z.ZodOptional<z.ZodString>;
331
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
332
+ when: z.ZodObject<{
333
+ field: z.ZodString;
334
+ op: z.ZodEnum<{
335
+ in: "in";
336
+ equals: "equals";
337
+ notEquals: "notEquals";
338
+ notEmpty: "notEmpty";
339
+ empty: "empty";
340
+ }>;
341
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
342
+ }, z.core.$strip>;
343
+ goto: z.ZodString;
344
+ }, z.core.$strip>>>;
345
+ }, z.core.$strip>;
346
+ export declare const widgetStepSchema: z.ZodObject<{
347
+ type: z.ZodLiteral<"widget">;
348
+ entry: z.ZodString;
349
+ data: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
350
+ sample: z.ZodOptional<z.ZodString>;
351
+ size: z.ZodOptional<z.ZodObject<{
352
+ width: z.ZodNumber;
353
+ height: z.ZodNumber;
354
+ }, z.core.$strip>>;
355
+ video: z.ZodOptional<z.ZodBoolean>;
356
+ working: z.ZodOptional<z.ZodString>;
357
+ id: z.ZodString;
358
+ title: z.ZodString;
359
+ description: z.ZodOptional<z.ZodString>;
360
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
361
+ when: z.ZodObject<{
362
+ field: z.ZodString;
363
+ op: z.ZodEnum<{
364
+ in: "in";
365
+ equals: "equals";
366
+ notEquals: "notEquals";
367
+ notEmpty: "notEmpty";
368
+ empty: "empty";
369
+ }>;
370
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
371
+ }, z.core.$strip>;
372
+ goto: z.ZodString;
373
+ }, z.core.$strip>>>;
374
+ }, z.core.$strip>;
375
+ export declare const reviewStepSchema: z.ZodObject<{
376
+ type: z.ZodLiteral<"review">;
377
+ show: z.ZodArray<z.ZodString>;
378
+ edit: z.ZodOptional<z.ZodBoolean>;
379
+ regenerate: z.ZodOptional<z.ZodBoolean>;
380
+ id: z.ZodString;
381
+ title: z.ZodString;
382
+ description: z.ZodOptional<z.ZodString>;
383
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
384
+ when: z.ZodObject<{
385
+ field: z.ZodString;
386
+ op: z.ZodEnum<{
387
+ in: "in";
388
+ equals: "equals";
389
+ notEquals: "notEquals";
390
+ notEmpty: "notEmpty";
391
+ empty: "empty";
392
+ }>;
393
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
394
+ }, z.core.$strip>;
395
+ goto: z.ZodString;
396
+ }, z.core.$strip>>>;
397
+ }, z.core.$strip>;
398
+ export declare const deliverableSchema: z.ZodObject<{
399
+ from: z.ZodString;
400
+ label: z.ZodOptional<z.ZodString>;
401
+ formats: z.ZodArray<z.ZodEnum<{
402
+ png: "png";
403
+ mp4: "mp4";
404
+ mp3: "mp3";
405
+ pdf: "pdf";
406
+ docx: "docx";
407
+ html: "html";
408
+ md: "md";
409
+ txt: "txt";
410
+ csv: "csv";
411
+ xlsx: "xlsx";
412
+ json: "json";
413
+ zip: "zip";
414
+ }>>;
415
+ }, z.core.$strip>;
416
+ export declare const resultStepSchema: z.ZodObject<{
417
+ type: z.ZodLiteral<"result">;
418
+ message: z.ZodOptional<z.ZodString>;
419
+ deliverables: z.ZodArray<z.ZodObject<{
420
+ from: z.ZodString;
421
+ label: z.ZodOptional<z.ZodString>;
422
+ formats: z.ZodArray<z.ZodEnum<{
423
+ png: "png";
424
+ mp4: "mp4";
425
+ mp3: "mp3";
426
+ pdf: "pdf";
427
+ docx: "docx";
428
+ html: "html";
429
+ md: "md";
430
+ txt: "txt";
431
+ csv: "csv";
432
+ xlsx: "xlsx";
433
+ json: "json";
434
+ zip: "zip";
435
+ }>>;
436
+ }, z.core.$strip>>;
437
+ id: z.ZodString;
438
+ title: z.ZodString;
439
+ description: z.ZodOptional<z.ZodString>;
440
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
441
+ when: z.ZodObject<{
442
+ field: z.ZodString;
443
+ op: z.ZodEnum<{
444
+ in: "in";
445
+ equals: "equals";
446
+ notEquals: "notEquals";
447
+ notEmpty: "notEmpty";
448
+ empty: "empty";
449
+ }>;
450
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
451
+ }, z.core.$strip>;
452
+ goto: z.ZodString;
453
+ }, z.core.$strip>>>;
454
+ }, z.core.$strip>;
455
+ export declare const stepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
456
+ type: z.ZodLiteral<"page">;
457
+ fields: z.ZodArray<z.ZodObject<{
458
+ id: z.ZodString;
459
+ label: z.ZodString;
460
+ kind: z.ZodEnum<{
461
+ number: "number";
462
+ date: "date";
463
+ file: "file";
464
+ text: "text";
465
+ select: "select";
466
+ email: "email";
467
+ url: "url";
468
+ textarea: "textarea";
469
+ multiselect: "multiselect";
470
+ toggle: "toggle";
471
+ color: "color";
472
+ image: "image";
473
+ items: "items";
474
+ connection: "connection";
475
+ list: "list";
476
+ location: "location";
477
+ audio: "audio";
478
+ signature: "signature";
479
+ }>;
480
+ required: z.ZodOptional<z.ZodBoolean>;
481
+ placeholder: z.ZodOptional<z.ZodString>;
482
+ help: z.ZodOptional<z.ZodString>;
483
+ options: z.ZodOptional<z.ZodArray<z.ZodString>>;
484
+ default: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
485
+ columns: z.ZodOptional<z.ZodArray<z.ZodObject<{
486
+ id: z.ZodString;
487
+ label: z.ZodString;
488
+ kind: z.ZodEnum<{
489
+ number: "number";
490
+ text: "text";
491
+ money: "money";
492
+ }>;
493
+ }, z.core.$strip>>>;
494
+ vat: z.ZodOptional<z.ZodObject<{
495
+ rate: z.ZodOptional<z.ZodNumber>;
496
+ field: z.ZodOptional<z.ZodString>;
497
+ }, z.core.$strip>>;
498
+ currency: z.ZodOptional<z.ZodString>;
499
+ multiple: z.ZodOptional<z.ZodBoolean>;
500
+ min: z.ZodOptional<z.ZodNumber>;
501
+ max: z.ZodOptional<z.ZodNumber>;
502
+ camera: z.ZodOptional<z.ZodBoolean>;
503
+ video: z.ZodOptional<z.ZodBoolean>;
504
+ scan: z.ZodOptional<z.ZodBoolean>;
505
+ connection: z.ZodOptional<z.ZodString>;
506
+ list: z.ZodOptional<z.ZodString>;
507
+ prefill: z.ZodOptional<z.ZodString>;
508
+ }, z.core.$strip>>;
509
+ cta: z.ZodOptional<z.ZodString>;
510
+ id: z.ZodString;
511
+ title: z.ZodString;
512
+ description: z.ZodOptional<z.ZodString>;
513
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
514
+ when: z.ZodObject<{
515
+ field: z.ZodString;
516
+ op: z.ZodEnum<{
517
+ in: "in";
518
+ equals: "equals";
519
+ notEquals: "notEquals";
520
+ notEmpty: "notEmpty";
521
+ empty: "empty";
522
+ }>;
523
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
524
+ }, z.core.$strip>;
525
+ goto: z.ZodString;
526
+ }, z.core.$strip>>>;
527
+ }, z.core.$strip>, z.ZodObject<{
528
+ type: z.ZodLiteral<"agent">;
529
+ instructions: z.ZodString;
530
+ tools: z.ZodDefault<z.ZodArray<z.ZodEnum<{
531
+ image: "image";
532
+ web_search: "web_search";
533
+ web_fetch: "web_fetch";
534
+ browser: "browser";
535
+ sandbox: "sandbox";
536
+ http: "http";
537
+ }>>>;
538
+ mcp: z.ZodOptional<z.ZodArray<z.ZodString>>;
539
+ connections: z.ZodOptional<z.ZodArray<z.ZodString>>;
540
+ output: z.ZodDefault<z.ZodObject<{
541
+ format: z.ZodEnum<{
542
+ markdown: "markdown";
543
+ text: "text";
544
+ json: "json";
545
+ }>;
546
+ fields: z.ZodOptional<z.ZodArray<z.ZodObject<{
547
+ id: z.ZodString;
548
+ kind: z.ZodEnum<{
549
+ number: "number";
550
+ text: "text";
551
+ list: "list";
552
+ table: "table";
553
+ yesno: "yesno";
554
+ choice: "choice";
555
+ }>;
556
+ description: z.ZodOptional<z.ZodString>;
557
+ columns: z.ZodOptional<z.ZodArray<z.ZodString>>;
558
+ options: z.ZodOptional<z.ZodArray<z.ZodString>>;
559
+ }, z.core.$strip>>>;
560
+ }, z.core.$strip>>;
561
+ model: z.ZodOptional<z.ZodEnum<{
562
+ classifier: "classifier";
563
+ standard: "standard";
564
+ high: "high";
565
+ highest: "highest";
566
+ }>>;
567
+ effort: z.ZodOptional<z.ZodEnum<{
568
+ medium: "medium";
569
+ high: "high";
570
+ low: "low";
571
+ }>>;
572
+ working: z.ZodOptional<z.ZodString>;
573
+ id: z.ZodString;
574
+ title: z.ZodString;
575
+ description: z.ZodOptional<z.ZodString>;
576
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
577
+ when: z.ZodObject<{
578
+ field: z.ZodString;
579
+ op: z.ZodEnum<{
580
+ in: "in";
581
+ equals: "equals";
582
+ notEquals: "notEquals";
583
+ notEmpty: "notEmpty";
584
+ empty: "empty";
585
+ }>;
586
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
587
+ }, z.core.$strip>;
588
+ goto: z.ZodString;
589
+ }, z.core.$strip>>>;
590
+ }, z.core.$strip>, z.ZodObject<{
591
+ type: z.ZodLiteral<"generate">;
592
+ asset: z.ZodEnum<{
593
+ image: "image";
594
+ video: "video";
595
+ voice: "voice";
596
+ document: "document";
597
+ dashboard: "dashboard";
598
+ }>;
599
+ prompt: z.ZodString;
600
+ options: z.ZodOptional<z.ZodObject<{
601
+ aspectRatio: z.ZodOptional<z.ZodEnum<{
602
+ "1:1": "1:1";
603
+ "16:9": "16:9";
604
+ "9:16": "9:16";
605
+ "4:5": "4:5";
606
+ "3:2": "3:2";
607
+ "2:3": "2:3";
608
+ }>>;
609
+ duration: z.ZodOptional<z.ZodNumber>;
610
+ resolution: z.ZodOptional<z.ZodEnum<{
611
+ "720p": "720p";
612
+ "480p": "480p";
613
+ }>>;
614
+ style: z.ZodOptional<z.ZodString>;
615
+ template: z.ZodOptional<z.ZodEnum<{
616
+ invoice: "invoice";
617
+ offer: "offer";
618
+ briefing: "briefing";
619
+ letter: "letter";
620
+ report: "report";
621
+ free: "free";
622
+ }>>;
623
+ }, z.core.$strip>>;
624
+ referenceImage: z.ZodOptional<z.ZodString>;
625
+ each: z.ZodOptional<z.ZodString>;
626
+ model: z.ZodOptional<z.ZodEnum<{
627
+ classifier: "classifier";
628
+ standard: "standard";
629
+ high: "high";
630
+ highest: "highest";
631
+ }>>;
632
+ effort: z.ZodOptional<z.ZodEnum<{
633
+ medium: "medium";
634
+ high: "high";
635
+ low: "low";
636
+ }>>;
637
+ working: z.ZodOptional<z.ZodString>;
638
+ id: z.ZodString;
639
+ title: z.ZodString;
640
+ description: z.ZodOptional<z.ZodString>;
641
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
642
+ when: z.ZodObject<{
643
+ field: z.ZodString;
644
+ op: z.ZodEnum<{
645
+ in: "in";
646
+ equals: "equals";
647
+ notEquals: "notEquals";
648
+ notEmpty: "notEmpty";
649
+ empty: "empty";
650
+ }>;
651
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
652
+ }, z.core.$strip>;
653
+ goto: z.ZodString;
654
+ }, z.core.$strip>>>;
655
+ }, z.core.$strip>, z.ZodObject<{
656
+ type: z.ZodLiteral<"widget">;
657
+ entry: z.ZodString;
658
+ data: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
659
+ sample: z.ZodOptional<z.ZodString>;
660
+ size: z.ZodOptional<z.ZodObject<{
661
+ width: z.ZodNumber;
662
+ height: z.ZodNumber;
663
+ }, z.core.$strip>>;
664
+ video: z.ZodOptional<z.ZodBoolean>;
665
+ working: z.ZodOptional<z.ZodString>;
666
+ id: z.ZodString;
667
+ title: z.ZodString;
668
+ description: z.ZodOptional<z.ZodString>;
669
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
670
+ when: z.ZodObject<{
671
+ field: z.ZodString;
672
+ op: z.ZodEnum<{
673
+ in: "in";
674
+ equals: "equals";
675
+ notEquals: "notEquals";
676
+ notEmpty: "notEmpty";
677
+ empty: "empty";
678
+ }>;
679
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
680
+ }, z.core.$strip>;
681
+ goto: z.ZodString;
682
+ }, z.core.$strip>>>;
683
+ }, z.core.$strip>, z.ZodObject<{
684
+ type: z.ZodLiteral<"review">;
685
+ show: z.ZodArray<z.ZodString>;
686
+ edit: z.ZodOptional<z.ZodBoolean>;
687
+ regenerate: z.ZodOptional<z.ZodBoolean>;
688
+ id: z.ZodString;
689
+ title: z.ZodString;
690
+ description: z.ZodOptional<z.ZodString>;
691
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
692
+ when: z.ZodObject<{
693
+ field: z.ZodString;
694
+ op: z.ZodEnum<{
695
+ in: "in";
696
+ equals: "equals";
697
+ notEquals: "notEquals";
698
+ notEmpty: "notEmpty";
699
+ empty: "empty";
700
+ }>;
701
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
702
+ }, z.core.$strip>;
703
+ goto: z.ZodString;
704
+ }, z.core.$strip>>>;
705
+ }, z.core.$strip>, z.ZodObject<{
706
+ type: z.ZodLiteral<"result">;
707
+ message: z.ZodOptional<z.ZodString>;
708
+ deliverables: z.ZodArray<z.ZodObject<{
709
+ from: z.ZodString;
710
+ label: z.ZodOptional<z.ZodString>;
711
+ formats: z.ZodArray<z.ZodEnum<{
712
+ png: "png";
713
+ mp4: "mp4";
714
+ mp3: "mp3";
715
+ pdf: "pdf";
716
+ docx: "docx";
717
+ html: "html";
718
+ md: "md";
719
+ txt: "txt";
720
+ csv: "csv";
721
+ xlsx: "xlsx";
722
+ json: "json";
723
+ zip: "zip";
724
+ }>>;
725
+ }, z.core.$strip>>;
726
+ id: z.ZodString;
727
+ title: z.ZodString;
728
+ description: z.ZodOptional<z.ZodString>;
729
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
730
+ when: z.ZodObject<{
731
+ field: z.ZodString;
732
+ op: z.ZodEnum<{
733
+ in: "in";
734
+ equals: "equals";
735
+ notEquals: "notEquals";
736
+ notEmpty: "notEmpty";
737
+ empty: "empty";
738
+ }>;
739
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
740
+ }, z.core.$strip>;
741
+ goto: z.ZodString;
742
+ }, z.core.$strip>>>;
743
+ }, z.core.$strip>], "type">;
744
+ export type Step = z.infer<typeof stepSchema>;
745
+ export type PageStep = z.infer<typeof pageStepSchema>;
746
+ export type AgentStep = z.infer<typeof agentStepSchema>;
747
+ /**
748
+ * A decision: a step on the classifier class that uses no tools and whose output is only
749
+ * yes/no and choice fields. It is answered in one call, which a model that only decides
750
+ * (no text) can take.
751
+ */
752
+ export declare function isDecisionStep(step: AgentStep): boolean;
753
+ export type GenerateStep = z.infer<typeof generateStepSchema>;
754
+ export type WidgetStep = z.infer<typeof widgetStepSchema>;
755
+ export type ReviewStep = z.infer<typeof reviewStepSchema>;
756
+ export type ResultStep = z.infer<typeof resultStepSchema>;
757
+ export type StepType = Step["type"];
758
+ export declare const listSchema: z.ZodObject<{
759
+ id: z.ZodString;
760
+ title: z.ZodString;
761
+ description: z.ZodOptional<z.ZodString>;
762
+ columns: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
763
+ description: z.ZodOptional<z.ZodString>;
764
+ edit: z.ZodOptional<z.ZodEnum<{
765
+ inline: "inline";
766
+ popout: "popout";
767
+ }>>;
768
+ id: z.ZodString;
769
+ name: z.ZodString;
770
+ required: z.ZodOptional<z.ZodBoolean>;
771
+ format: z.ZodOptional<z.ZodObject<{
772
+ style: z.ZodDefault<z.ZodEnum<{
773
+ single: "single";
774
+ multiline: "multiline";
775
+ markdown: "markdown";
776
+ }>>;
777
+ }, z.core.$strip>>;
778
+ type: z.ZodLiteral<"text">;
779
+ }, z.core.$strip>, z.ZodObject<{
780
+ description: z.ZodOptional<z.ZodString>;
781
+ edit: z.ZodOptional<z.ZodEnum<{
782
+ inline: "inline";
783
+ popout: "popout";
784
+ }>>;
785
+ id: z.ZodString;
786
+ name: z.ZodString;
787
+ required: z.ZodOptional<z.ZodBoolean>;
788
+ format: z.ZodObject<{
789
+ currency: z.ZodOptional<z.ZodString>;
790
+ fractionDigits: z.ZodOptional<z.ZodNumber>;
791
+ grouping: z.ZodOptional<z.ZodBoolean>;
792
+ style: z.ZodEnum<{
793
+ integer: "integer";
794
+ decimal: "decimal";
795
+ percent: "percent";
796
+ currency: "currency";
797
+ }>;
798
+ }, z.core.$strip>;
799
+ type: z.ZodLiteral<"number">;
800
+ }, z.core.$strip>, z.ZodObject<{
801
+ description: z.ZodOptional<z.ZodString>;
802
+ edit: z.ZodOptional<z.ZodEnum<{
803
+ inline: "inline";
804
+ popout: "popout";
805
+ }>>;
806
+ id: z.ZodString;
807
+ name: z.ZodString;
808
+ required: z.ZodOptional<z.ZodBoolean>;
809
+ format: z.ZodObject<{
810
+ dateStyle: z.ZodOptional<z.ZodEnum<{
811
+ short: "short";
812
+ medium: "medium";
813
+ long: "long";
814
+ iso: "iso";
815
+ }>>;
816
+ kind: z.ZodEnum<{
817
+ date: "date";
818
+ datetime: "datetime";
819
+ time: "time";
820
+ }>;
821
+ timePrecision: z.ZodOptional<z.ZodEnum<{
822
+ hours: "hours";
823
+ minutes: "minutes";
824
+ seconds: "seconds";
825
+ }>>;
826
+ }, z.core.$strip>;
827
+ type: z.ZodLiteral<"date">;
828
+ }, z.core.$strip>, z.ZodObject<{
829
+ description: z.ZodOptional<z.ZodString>;
830
+ edit: z.ZodOptional<z.ZodEnum<{
831
+ inline: "inline";
832
+ popout: "popout";
833
+ }>>;
834
+ id: z.ZodString;
835
+ name: z.ZodString;
836
+ required: z.ZodOptional<z.ZodBoolean>;
837
+ format: z.ZodObject<{
838
+ display: z.ZodEnum<{
839
+ iso: "iso";
840
+ hours: "hours";
841
+ minutes: "minutes";
842
+ hms: "hms";
843
+ "decimal-hours": "decimal-hours";
844
+ }>;
845
+ inputUnit: z.ZodEnum<{
846
+ hours: "hours";
847
+ minutes: "minutes";
848
+ seconds: "seconds";
849
+ milliseconds: "milliseconds";
850
+ days: "days";
851
+ }>;
852
+ }, z.core.$strip>;
853
+ type: z.ZodLiteral<"duration">;
854
+ }, z.core.$strip>, z.ZodObject<{
855
+ description: z.ZodOptional<z.ZodString>;
856
+ edit: z.ZodOptional<z.ZodEnum<{
857
+ inline: "inline";
858
+ popout: "popout";
859
+ }>>;
860
+ id: z.ZodString;
861
+ name: z.ZodString;
862
+ required: z.ZodOptional<z.ZodBoolean>;
863
+ format: z.ZodObject<{
864
+ allowCustom: z.ZodBoolean;
865
+ multiple: z.ZodOptional<z.ZodBoolean>;
866
+ options: z.ZodArray<z.ZodObject<{
867
+ id: z.ZodString;
868
+ label: z.ZodString;
869
+ }, z.core.$strip>>;
870
+ }, z.core.$strip>;
871
+ type: z.ZodLiteral<"select">;
872
+ }, z.core.$strip>, z.ZodObject<{
873
+ description: z.ZodOptional<z.ZodString>;
874
+ edit: z.ZodOptional<z.ZodEnum<{
875
+ inline: "inline";
876
+ popout: "popout";
877
+ }>>;
878
+ id: z.ZodString;
879
+ name: z.ZodString;
880
+ required: z.ZodOptional<z.ZodBoolean>;
881
+ type: z.ZodLiteral<"boolean">;
882
+ }, z.core.$strip>], "type">>;
883
+ key: z.ZodOptional<z.ZodString>;
884
+ check: z.ZodOptional<z.ZodObject<{
885
+ file: z.ZodOptional<z.ZodString>;
886
+ status: z.ZodOptional<z.ZodString>;
887
+ }, z.core.$strip>>;
888
+ }, z.core.$strip>;
889
+ export declare const connectionSchema: z.ZodObject<{
890
+ id: z.ZodString;
891
+ kind: z.ZodOptional<z.ZodEnum<{
892
+ mail: "mail";
893
+ }>>;
894
+ connector: z.ZodOptional<z.ZodString>;
895
+ actions: z.ZodOptional<z.ZodArray<z.ZodString>>;
896
+ policy: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<{
897
+ allow: "allow";
898
+ ask: "ask";
899
+ }>>>;
900
+ title: z.ZodOptional<z.ZodString>;
901
+ description: z.ZodOptional<z.ZodString>;
902
+ }, z.core.$strip>;
903
+ /** The version of the definition this app writes and reads; raised only by a breaking change. */
904
+ export declare const DEFINITION_VERSION: 1;
905
+ export declare const wizardSchema: z.ZodObject<{
906
+ version: z.ZodDefault<z.ZodLiteral<1>>;
907
+ title: z.ZodString;
908
+ description: z.ZodDefault<z.ZodString>;
909
+ avatar: z.ZodDefault<z.ZodEnum<{
910
+ round: "round";
911
+ drop: "drop";
912
+ dome: "dome";
913
+ flame: "flame";
914
+ oval: "oval";
915
+ bean: "bean";
916
+ pebble: "pebble";
917
+ sprout: "sprout";
918
+ tower: "tower";
919
+ wedge: "wedge";
920
+ }>>;
921
+ intro: z.ZodOptional<z.ZodString>;
922
+ lists: z.ZodOptional<z.ZodArray<z.ZodObject<{
923
+ id: z.ZodString;
924
+ title: z.ZodString;
925
+ description: z.ZodOptional<z.ZodString>;
926
+ columns: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
927
+ description: z.ZodOptional<z.ZodString>;
928
+ edit: z.ZodOptional<z.ZodEnum<{
929
+ inline: "inline";
930
+ popout: "popout";
931
+ }>>;
932
+ id: z.ZodString;
933
+ name: z.ZodString;
934
+ required: z.ZodOptional<z.ZodBoolean>;
935
+ format: z.ZodOptional<z.ZodObject<{
936
+ style: z.ZodDefault<z.ZodEnum<{
937
+ single: "single";
938
+ multiline: "multiline";
939
+ markdown: "markdown";
940
+ }>>;
941
+ }, z.core.$strip>>;
942
+ type: z.ZodLiteral<"text">;
943
+ }, z.core.$strip>, z.ZodObject<{
944
+ description: z.ZodOptional<z.ZodString>;
945
+ edit: z.ZodOptional<z.ZodEnum<{
946
+ inline: "inline";
947
+ popout: "popout";
948
+ }>>;
949
+ id: z.ZodString;
950
+ name: z.ZodString;
951
+ required: z.ZodOptional<z.ZodBoolean>;
952
+ format: z.ZodObject<{
953
+ currency: z.ZodOptional<z.ZodString>;
954
+ fractionDigits: z.ZodOptional<z.ZodNumber>;
955
+ grouping: z.ZodOptional<z.ZodBoolean>;
956
+ style: z.ZodEnum<{
957
+ integer: "integer";
958
+ decimal: "decimal";
959
+ percent: "percent";
960
+ currency: "currency";
961
+ }>;
962
+ }, z.core.$strip>;
963
+ type: z.ZodLiteral<"number">;
964
+ }, z.core.$strip>, z.ZodObject<{
965
+ description: z.ZodOptional<z.ZodString>;
966
+ edit: z.ZodOptional<z.ZodEnum<{
967
+ inline: "inline";
968
+ popout: "popout";
969
+ }>>;
970
+ id: z.ZodString;
971
+ name: z.ZodString;
972
+ required: z.ZodOptional<z.ZodBoolean>;
973
+ format: z.ZodObject<{
974
+ dateStyle: z.ZodOptional<z.ZodEnum<{
975
+ short: "short";
976
+ medium: "medium";
977
+ long: "long";
978
+ iso: "iso";
979
+ }>>;
980
+ kind: z.ZodEnum<{
981
+ date: "date";
982
+ datetime: "datetime";
983
+ time: "time";
984
+ }>;
985
+ timePrecision: z.ZodOptional<z.ZodEnum<{
986
+ hours: "hours";
987
+ minutes: "minutes";
988
+ seconds: "seconds";
989
+ }>>;
990
+ }, z.core.$strip>;
991
+ type: z.ZodLiteral<"date">;
992
+ }, z.core.$strip>, z.ZodObject<{
993
+ description: z.ZodOptional<z.ZodString>;
994
+ edit: z.ZodOptional<z.ZodEnum<{
995
+ inline: "inline";
996
+ popout: "popout";
997
+ }>>;
998
+ id: z.ZodString;
999
+ name: z.ZodString;
1000
+ required: z.ZodOptional<z.ZodBoolean>;
1001
+ format: z.ZodObject<{
1002
+ display: z.ZodEnum<{
1003
+ iso: "iso";
1004
+ hours: "hours";
1005
+ minutes: "minutes";
1006
+ hms: "hms";
1007
+ "decimal-hours": "decimal-hours";
1008
+ }>;
1009
+ inputUnit: z.ZodEnum<{
1010
+ hours: "hours";
1011
+ minutes: "minutes";
1012
+ seconds: "seconds";
1013
+ milliseconds: "milliseconds";
1014
+ days: "days";
1015
+ }>;
1016
+ }, z.core.$strip>;
1017
+ type: z.ZodLiteral<"duration">;
1018
+ }, z.core.$strip>, z.ZodObject<{
1019
+ description: z.ZodOptional<z.ZodString>;
1020
+ edit: z.ZodOptional<z.ZodEnum<{
1021
+ inline: "inline";
1022
+ popout: "popout";
1023
+ }>>;
1024
+ id: z.ZodString;
1025
+ name: z.ZodString;
1026
+ required: z.ZodOptional<z.ZodBoolean>;
1027
+ format: z.ZodObject<{
1028
+ allowCustom: z.ZodBoolean;
1029
+ multiple: z.ZodOptional<z.ZodBoolean>;
1030
+ options: z.ZodArray<z.ZodObject<{
1031
+ id: z.ZodString;
1032
+ label: z.ZodString;
1033
+ }, z.core.$strip>>;
1034
+ }, z.core.$strip>;
1035
+ type: z.ZodLiteral<"select">;
1036
+ }, z.core.$strip>, z.ZodObject<{
1037
+ description: z.ZodOptional<z.ZodString>;
1038
+ edit: z.ZodOptional<z.ZodEnum<{
1039
+ inline: "inline";
1040
+ popout: "popout";
1041
+ }>>;
1042
+ id: z.ZodString;
1043
+ name: z.ZodString;
1044
+ required: z.ZodOptional<z.ZodBoolean>;
1045
+ type: z.ZodLiteral<"boolean">;
1046
+ }, z.core.$strip>], "type">>;
1047
+ key: z.ZodOptional<z.ZodString>;
1048
+ check: z.ZodOptional<z.ZodObject<{
1049
+ file: z.ZodOptional<z.ZodString>;
1050
+ status: z.ZodOptional<z.ZodString>;
1051
+ }, z.core.$strip>>;
1052
+ }, z.core.$strip>>>;
1053
+ connections: z.ZodOptional<z.ZodArray<z.ZodObject<{
1054
+ id: z.ZodString;
1055
+ kind: z.ZodOptional<z.ZodEnum<{
1056
+ mail: "mail";
1057
+ }>>;
1058
+ connector: z.ZodOptional<z.ZodString>;
1059
+ actions: z.ZodOptional<z.ZodArray<z.ZodString>>;
1060
+ policy: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<{
1061
+ allow: "allow";
1062
+ ask: "ask";
1063
+ }>>>;
1064
+ title: z.ZodOptional<z.ZodString>;
1065
+ description: z.ZodOptional<z.ZodString>;
1066
+ }, z.core.$strip>>>;
1067
+ steps: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
1068
+ type: z.ZodLiteral<"page">;
1069
+ fields: z.ZodArray<z.ZodObject<{
1070
+ id: z.ZodString;
1071
+ label: z.ZodString;
1072
+ kind: z.ZodEnum<{
1073
+ number: "number";
1074
+ date: "date";
1075
+ file: "file";
1076
+ text: "text";
1077
+ select: "select";
1078
+ email: "email";
1079
+ url: "url";
1080
+ textarea: "textarea";
1081
+ multiselect: "multiselect";
1082
+ toggle: "toggle";
1083
+ color: "color";
1084
+ image: "image";
1085
+ items: "items";
1086
+ connection: "connection";
1087
+ list: "list";
1088
+ location: "location";
1089
+ audio: "audio";
1090
+ signature: "signature";
1091
+ }>;
1092
+ required: z.ZodOptional<z.ZodBoolean>;
1093
+ placeholder: z.ZodOptional<z.ZodString>;
1094
+ help: z.ZodOptional<z.ZodString>;
1095
+ options: z.ZodOptional<z.ZodArray<z.ZodString>>;
1096
+ default: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1097
+ columns: z.ZodOptional<z.ZodArray<z.ZodObject<{
1098
+ id: z.ZodString;
1099
+ label: z.ZodString;
1100
+ kind: z.ZodEnum<{
1101
+ number: "number";
1102
+ text: "text";
1103
+ money: "money";
1104
+ }>;
1105
+ }, z.core.$strip>>>;
1106
+ vat: z.ZodOptional<z.ZodObject<{
1107
+ rate: z.ZodOptional<z.ZodNumber>;
1108
+ field: z.ZodOptional<z.ZodString>;
1109
+ }, z.core.$strip>>;
1110
+ currency: z.ZodOptional<z.ZodString>;
1111
+ multiple: z.ZodOptional<z.ZodBoolean>;
1112
+ min: z.ZodOptional<z.ZodNumber>;
1113
+ max: z.ZodOptional<z.ZodNumber>;
1114
+ camera: z.ZodOptional<z.ZodBoolean>;
1115
+ video: z.ZodOptional<z.ZodBoolean>;
1116
+ scan: z.ZodOptional<z.ZodBoolean>;
1117
+ connection: z.ZodOptional<z.ZodString>;
1118
+ list: z.ZodOptional<z.ZodString>;
1119
+ prefill: z.ZodOptional<z.ZodString>;
1120
+ }, z.core.$strip>>;
1121
+ cta: z.ZodOptional<z.ZodString>;
1122
+ id: z.ZodString;
1123
+ title: z.ZodString;
1124
+ description: z.ZodOptional<z.ZodString>;
1125
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
1126
+ when: z.ZodObject<{
1127
+ field: z.ZodString;
1128
+ op: z.ZodEnum<{
1129
+ in: "in";
1130
+ equals: "equals";
1131
+ notEquals: "notEquals";
1132
+ notEmpty: "notEmpty";
1133
+ empty: "empty";
1134
+ }>;
1135
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1136
+ }, z.core.$strip>;
1137
+ goto: z.ZodString;
1138
+ }, z.core.$strip>>>;
1139
+ }, z.core.$strip>, z.ZodObject<{
1140
+ type: z.ZodLiteral<"agent">;
1141
+ instructions: z.ZodString;
1142
+ tools: z.ZodDefault<z.ZodArray<z.ZodEnum<{
1143
+ image: "image";
1144
+ web_search: "web_search";
1145
+ web_fetch: "web_fetch";
1146
+ browser: "browser";
1147
+ sandbox: "sandbox";
1148
+ http: "http";
1149
+ }>>>;
1150
+ mcp: z.ZodOptional<z.ZodArray<z.ZodString>>;
1151
+ connections: z.ZodOptional<z.ZodArray<z.ZodString>>;
1152
+ output: z.ZodDefault<z.ZodObject<{
1153
+ format: z.ZodEnum<{
1154
+ markdown: "markdown";
1155
+ text: "text";
1156
+ json: "json";
1157
+ }>;
1158
+ fields: z.ZodOptional<z.ZodArray<z.ZodObject<{
1159
+ id: z.ZodString;
1160
+ kind: z.ZodEnum<{
1161
+ number: "number";
1162
+ text: "text";
1163
+ list: "list";
1164
+ table: "table";
1165
+ yesno: "yesno";
1166
+ choice: "choice";
1167
+ }>;
1168
+ description: z.ZodOptional<z.ZodString>;
1169
+ columns: z.ZodOptional<z.ZodArray<z.ZodString>>;
1170
+ options: z.ZodOptional<z.ZodArray<z.ZodString>>;
1171
+ }, z.core.$strip>>>;
1172
+ }, z.core.$strip>>;
1173
+ model: z.ZodOptional<z.ZodEnum<{
1174
+ classifier: "classifier";
1175
+ standard: "standard";
1176
+ high: "high";
1177
+ highest: "highest";
1178
+ }>>;
1179
+ effort: z.ZodOptional<z.ZodEnum<{
1180
+ medium: "medium";
1181
+ high: "high";
1182
+ low: "low";
1183
+ }>>;
1184
+ working: z.ZodOptional<z.ZodString>;
1185
+ id: z.ZodString;
1186
+ title: z.ZodString;
1187
+ description: z.ZodOptional<z.ZodString>;
1188
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
1189
+ when: z.ZodObject<{
1190
+ field: z.ZodString;
1191
+ op: z.ZodEnum<{
1192
+ in: "in";
1193
+ equals: "equals";
1194
+ notEquals: "notEquals";
1195
+ notEmpty: "notEmpty";
1196
+ empty: "empty";
1197
+ }>;
1198
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1199
+ }, z.core.$strip>;
1200
+ goto: z.ZodString;
1201
+ }, z.core.$strip>>>;
1202
+ }, z.core.$strip>, z.ZodObject<{
1203
+ type: z.ZodLiteral<"generate">;
1204
+ asset: z.ZodEnum<{
1205
+ image: "image";
1206
+ video: "video";
1207
+ voice: "voice";
1208
+ document: "document";
1209
+ dashboard: "dashboard";
1210
+ }>;
1211
+ prompt: z.ZodString;
1212
+ options: z.ZodOptional<z.ZodObject<{
1213
+ aspectRatio: z.ZodOptional<z.ZodEnum<{
1214
+ "1:1": "1:1";
1215
+ "16:9": "16:9";
1216
+ "9:16": "9:16";
1217
+ "4:5": "4:5";
1218
+ "3:2": "3:2";
1219
+ "2:3": "2:3";
1220
+ }>>;
1221
+ duration: z.ZodOptional<z.ZodNumber>;
1222
+ resolution: z.ZodOptional<z.ZodEnum<{
1223
+ "720p": "720p";
1224
+ "480p": "480p";
1225
+ }>>;
1226
+ style: z.ZodOptional<z.ZodString>;
1227
+ template: z.ZodOptional<z.ZodEnum<{
1228
+ invoice: "invoice";
1229
+ offer: "offer";
1230
+ briefing: "briefing";
1231
+ letter: "letter";
1232
+ report: "report";
1233
+ free: "free";
1234
+ }>>;
1235
+ }, z.core.$strip>>;
1236
+ referenceImage: z.ZodOptional<z.ZodString>;
1237
+ each: z.ZodOptional<z.ZodString>;
1238
+ model: z.ZodOptional<z.ZodEnum<{
1239
+ classifier: "classifier";
1240
+ standard: "standard";
1241
+ high: "high";
1242
+ highest: "highest";
1243
+ }>>;
1244
+ effort: z.ZodOptional<z.ZodEnum<{
1245
+ medium: "medium";
1246
+ high: "high";
1247
+ low: "low";
1248
+ }>>;
1249
+ working: z.ZodOptional<z.ZodString>;
1250
+ id: z.ZodString;
1251
+ title: z.ZodString;
1252
+ description: z.ZodOptional<z.ZodString>;
1253
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
1254
+ when: z.ZodObject<{
1255
+ field: z.ZodString;
1256
+ op: z.ZodEnum<{
1257
+ in: "in";
1258
+ equals: "equals";
1259
+ notEquals: "notEquals";
1260
+ notEmpty: "notEmpty";
1261
+ empty: "empty";
1262
+ }>;
1263
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1264
+ }, z.core.$strip>;
1265
+ goto: z.ZodString;
1266
+ }, z.core.$strip>>>;
1267
+ }, z.core.$strip>, z.ZodObject<{
1268
+ type: z.ZodLiteral<"widget">;
1269
+ entry: z.ZodString;
1270
+ data: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
1271
+ sample: z.ZodOptional<z.ZodString>;
1272
+ size: z.ZodOptional<z.ZodObject<{
1273
+ width: z.ZodNumber;
1274
+ height: z.ZodNumber;
1275
+ }, z.core.$strip>>;
1276
+ video: z.ZodOptional<z.ZodBoolean>;
1277
+ working: z.ZodOptional<z.ZodString>;
1278
+ id: z.ZodString;
1279
+ title: z.ZodString;
1280
+ description: z.ZodOptional<z.ZodString>;
1281
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
1282
+ when: z.ZodObject<{
1283
+ field: z.ZodString;
1284
+ op: z.ZodEnum<{
1285
+ in: "in";
1286
+ equals: "equals";
1287
+ notEquals: "notEquals";
1288
+ notEmpty: "notEmpty";
1289
+ empty: "empty";
1290
+ }>;
1291
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1292
+ }, z.core.$strip>;
1293
+ goto: z.ZodString;
1294
+ }, z.core.$strip>>>;
1295
+ }, z.core.$strip>, z.ZodObject<{
1296
+ type: z.ZodLiteral<"review">;
1297
+ show: z.ZodArray<z.ZodString>;
1298
+ edit: z.ZodOptional<z.ZodBoolean>;
1299
+ regenerate: z.ZodOptional<z.ZodBoolean>;
1300
+ id: z.ZodString;
1301
+ title: z.ZodString;
1302
+ description: z.ZodOptional<z.ZodString>;
1303
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
1304
+ when: z.ZodObject<{
1305
+ field: z.ZodString;
1306
+ op: z.ZodEnum<{
1307
+ in: "in";
1308
+ equals: "equals";
1309
+ notEquals: "notEquals";
1310
+ notEmpty: "notEmpty";
1311
+ empty: "empty";
1312
+ }>;
1313
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1314
+ }, z.core.$strip>;
1315
+ goto: z.ZodString;
1316
+ }, z.core.$strip>>>;
1317
+ }, z.core.$strip>, z.ZodObject<{
1318
+ type: z.ZodLiteral<"result">;
1319
+ message: z.ZodOptional<z.ZodString>;
1320
+ deliverables: z.ZodArray<z.ZodObject<{
1321
+ from: z.ZodString;
1322
+ label: z.ZodOptional<z.ZodString>;
1323
+ formats: z.ZodArray<z.ZodEnum<{
1324
+ png: "png";
1325
+ mp4: "mp4";
1326
+ mp3: "mp3";
1327
+ pdf: "pdf";
1328
+ docx: "docx";
1329
+ html: "html";
1330
+ md: "md";
1331
+ txt: "txt";
1332
+ csv: "csv";
1333
+ xlsx: "xlsx";
1334
+ json: "json";
1335
+ zip: "zip";
1336
+ }>>;
1337
+ }, z.core.$strip>>;
1338
+ id: z.ZodString;
1339
+ title: z.ZodString;
1340
+ description: z.ZodOptional<z.ZodString>;
1341
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
1342
+ when: z.ZodObject<{
1343
+ field: z.ZodString;
1344
+ op: z.ZodEnum<{
1345
+ in: "in";
1346
+ equals: "equals";
1347
+ notEquals: "notEquals";
1348
+ notEmpty: "notEmpty";
1349
+ empty: "empty";
1350
+ }>;
1351
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1352
+ }, z.core.$strip>;
1353
+ goto: z.ZodString;
1354
+ }, z.core.$strip>>>;
1355
+ }, z.core.$strip>], "type">>;
1356
+ }, z.core.$strip>;
1357
+ export type WizardDefinition = z.infer<typeof wizardSchema>;
1358
+ export declare const INTERACTIVE: ReadonlySet<StepType>;
1359
+ export declare function isInteractive(step: Step): boolean;
1360
+ /** Which formats each producing step can be downloaded in. */
1361
+ export declare function formatsFor(step: Step): Format[];
1362
+ /** Formats a stored list can be downloaded in; zip = the kept files its rows name, with the list. */
1363
+ export declare const LIST_FORMATS: Format[];
1364
+ /** "lists.providers" → "providers"; anything else → null. */
1365
+ export declare function listRef(ref: string): string | null;
1366
+ export declare const DEFAULT_WIDGET_SIZE: {
1367
+ width: number;
1368
+ height: number;
1369
+ };
1370
+ export declare function widgetSize(step: WidgetStep): {
1371
+ width: number;
1372
+ height: number;
1373
+ };
1374
+ /** A widget data reference without braces: "{{steps.x}}" and "steps.x" mean the same. */
1375
+ export declare function dataRef(raw: string): string;
1376
+ export interface ValidationIssue {
1377
+ stepId?: string;
1378
+ message: string;
1379
+ }
1380
+ export declare function templateRefs(template: string): string[];
1381
+ /**
1382
+ * Structural checks the schema cannot express: ids, references between steps,
1383
+ * templates naming things that exist by the time the step runs.
1384
+ */
1385
+ export declare function validateWizard(def: WizardDefinition, files?: string[]): ValidationIssue[];
1386
+ /** Parse + validate in one go. */
1387
+ export declare function parseWizard(input: unknown, files?: string[]): {
1388
+ ok: true;
1389
+ wizard: WizardDefinition;
1390
+ issues: ValidationIssue[];
1391
+ } | {
1392
+ ok: false;
1393
+ issues: ValidationIssue[];
1394
+ };
1395
+ /**
1396
+ * What branch rules can read in a run: the person's answers by field id, and the structured
1397
+ * output of the steps run so far as `steps.<step>.<field>`.
1398
+ */
1399
+ export declare function branchValues(values: Record<string, unknown>, outputs: Record<string, {
1400
+ json?: unknown;
1401
+ }>): Record<string, unknown>;
1402
+ /** The step after `step`, honouring its branch rules. `null` = the end. */
1403
+ export declare function nextStepId(def: WizardDefinition, stepId: string, values: Record<string, unknown>): string | null;
1404
+ export interface ItemsTotals {
1405
+ rows: Record<string, unknown>[];
1406
+ net: number;
1407
+ vatRate: number;
1408
+ vat: number;
1409
+ gross: number;
1410
+ currency: string;
1411
+ }
1412
+ export declare function itemsTotals(field: Field, value: unknown, values: Record<string, unknown>): ItemsTotals;
1413
+ export declare function allFields(def: WizardDefinition): Field[];
1414
+ /** True when this app's schema reads the definition without losing anything of it. */
1415
+ export declare function readable(definition: unknown): boolean;