@engenty/wizards-runtime 0.0.0-stage → 0.7.5

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 (518) hide show
  1. package/LICENSE +110 -0
  2. package/README.md +214 -2
  3. package/apps/runtime/dist/agents/architect.js +444 -0
  4. package/apps/runtime/dist/agents/studio-assistant.js +883 -0
  5. package/apps/runtime/dist/agents/subscription.js +207 -0
  6. package/apps/runtime/dist/agents/thought.js +21 -0
  7. package/apps/runtime/dist/agents/website.js +480 -0
  8. package/apps/runtime/dist/app.js +359 -0
  9. package/apps/runtime/dist/apple/wizards-apple +0 -0
  10. package/apps/runtime/dist/assistant/browser.js +26 -0
  11. package/apps/runtime/dist/assistant/docs.js +158 -0
  12. package/apps/runtime/dist/assistant/knows.js +353 -0
  13. package/apps/runtime/dist/assistant/primer.js +26 -0
  14. package/apps/runtime/dist/assistant/runs.js +24 -0
  15. package/apps/runtime/dist/auth/account.js +175 -0
  16. package/apps/runtime/dist/auth/device.js +112 -0
  17. package/apps/runtime/dist/auth/index.js +358 -0
  18. package/apps/runtime/dist/auth/keys.js +55 -0
  19. package/apps/runtime/dist/auth/local-ticket.js +26 -0
  20. package/apps/runtime/dist/authoring/example.js +74 -0
  21. package/apps/runtime/dist/authoring/guide.js +433 -0
  22. package/apps/runtime/dist/authoring/ops.js +117 -0
  23. package/apps/runtime/dist/browser/fast/action-space.js +160 -0
  24. package/apps/runtime/dist/browser/fast/classifier.js +91 -0
  25. package/apps/runtime/dist/browser/fast/decide.js +171 -0
  26. package/apps/runtime/dist/browser/fast/driver.js +141 -0
  27. package/apps/runtime/dist/browser/fast/instructions.js +33 -0
  28. package/apps/runtime/dist/browser/fast/run.js +249 -0
  29. package/apps/runtime/dist/browser/fast/span-picker.js +153 -0
  30. package/apps/runtime/dist/browser/fast/text-helper.js +178 -0
  31. package/apps/runtime/dist/browser/snapshot.js +335 -0
  32. package/apps/runtime/dist/cli/account.js +385 -0
  33. package/apps/runtime/dist/cli/autostart.js +182 -0
  34. package/apps/runtime/dist/cli/autoupdate.js +221 -0
  35. package/apps/runtime/dist/cli/clients.js +44 -0
  36. package/apps/runtime/dist/cli/connect.js +540 -0
  37. package/apps/runtime/dist/cli/environment.js +93 -0
  38. package/apps/runtime/dist/cli/exec.js +45 -0
  39. package/apps/runtime/dist/cli/features.js +50 -0
  40. package/apps/runtime/dist/cli/home.js +88 -0
  41. package/apps/runtime/dist/cli/install-env.js +33 -0
  42. package/apps/runtime/dist/cli/machine.js +107 -0
  43. package/apps/runtime/dist/cli/main.js +222 -0
  44. package/apps/runtime/dist/cli/mcp.js +136 -0
  45. package/apps/runtime/dist/cli/menu.js +202 -0
  46. package/apps/runtime/dist/cli/processes.js +72 -0
  47. package/apps/runtime/dist/cli/report.js +66 -0
  48. package/apps/runtime/dist/cli/setup.js +335 -0
  49. package/apps/runtime/dist/cli/start.js +276 -0
  50. package/apps/runtime/dist/cli/status.js +203 -0
  51. package/apps/runtime/dist/cli/ui.js +59 -0
  52. package/apps/runtime/dist/cli/uninstall-main.js +20 -0
  53. package/apps/runtime/dist/cli/uninstall.js +231 -0
  54. package/apps/runtime/dist/cli/update.js +86 -0
  55. package/apps/runtime/dist/cli/validate.js +75 -0
  56. package/apps/runtime/dist/cli/versions.js +123 -0
  57. package/apps/runtime/dist/connectors/builtin.js +86 -0
  58. package/apps/runtime/dist/connectors/external.js +409 -0
  59. package/apps/runtime/dist/connectors/gmail.js +107 -0
  60. package/apps/runtime/dist/connectors/imap.js +261 -0
  61. package/apps/runtime/dist/connectors/index.js +325 -0
  62. package/apps/runtime/dist/connectors/mail.js +72 -0
  63. package/apps/runtime/dist/connectors/outlook.js +90 -0
  64. package/apps/runtime/dist/connectors/plugin-connections.js +343 -0
  65. package/apps/runtime/dist/connectors/via-account.js +65 -0
  66. package/apps/runtime/dist/credits/credits.js +100 -0
  67. package/apps/runtime/dist/credits/estimate.js +152 -0
  68. package/apps/runtime/dist/db/adopt.js +149 -0
  69. package/apps/runtime/dist/db/client.js +173 -0
  70. package/apps/runtime/dist/db/control-schema.js +133 -0
  71. package/apps/runtime/dist/db/migrations/control/0000_last_absorbing_man.sql +47 -0
  72. package/apps/runtime/dist/db/migrations/control/0001_gorgeous_nicolaos.sql +41 -0
  73. package/apps/runtime/dist/db/migrations/control/0002_secret_penance.sql +1 -0
  74. package/apps/runtime/dist/db/migrations/control/0003_nasty_mordo.sql +3 -0
  75. package/apps/runtime/dist/db/migrations/control/0004_breezy_eddie_brock.sql +6 -0
  76. package/apps/runtime/dist/db/migrations/control/0005_chilly_oracle.sql +1 -0
  77. package/apps/runtime/dist/db/migrations/control/0006_sleepy_mojo.sql +1 -0
  78. package/apps/runtime/dist/db/migrations/control/0007_common_the_hand.sql +15 -0
  79. package/apps/runtime/dist/db/migrations/control/0008_runner.sql +8 -0
  80. package/apps/runtime/dist/db/migrations/control/0009_plugin_claim.sql +9 -0
  81. package/apps/runtime/dist/db/migrations/control/0010_tan_snowbird.sql +6 -0
  82. package/apps/runtime/dist/db/migrations/control/meta/0000_snapshot.json +311 -0
  83. package/apps/runtime/dist/db/migrations/control/meta/0001_snapshot.json +599 -0
  84. package/apps/runtime/dist/db/migrations/control/meta/0002_snapshot.json +607 -0
  85. package/apps/runtime/dist/db/migrations/control/meta/0003_snapshot.json +311 -0
  86. package/apps/runtime/dist/db/migrations/control/meta/0004_snapshot.json +350 -0
  87. package/apps/runtime/dist/db/migrations/control/meta/0005_snapshot.json +358 -0
  88. package/apps/runtime/dist/db/migrations/control/meta/0006_snapshot.json +365 -0
  89. package/apps/runtime/dist/db/migrations/control/meta/0007_snapshot.json +460 -0
  90. package/apps/runtime/dist/db/migrations/control/meta/0008_snapshot.json +505 -0
  91. package/apps/runtime/dist/db/migrations/control/meta/0009_snapshot.json +561 -0
  92. package/apps/runtime/dist/db/migrations/control/meta/0010_snapshot.json +600 -0
  93. package/apps/runtime/dist/db/migrations/control/meta/_journal.json +83 -0
  94. package/apps/runtime/dist/db/migrations/tenant/0000_eminent_freak.sql +188 -0
  95. package/apps/runtime/dist/db/migrations/tenant/0001_salty_master_chief.sql +1 -0
  96. package/apps/runtime/dist/db/migrations/tenant/0002_cloudy_firebird.sql +1 -0
  97. package/apps/runtime/dist/db/migrations/tenant/0003_brown_warbound.sql +52 -0
  98. package/apps/runtime/dist/db/migrations/tenant/0004_romantic_nocturne.sql +6 -0
  99. package/apps/runtime/dist/db/migrations/tenant/0005_reflective_forgotten_one.sql +2 -0
  100. package/apps/runtime/dist/db/migrations/tenant/0006_hard_war_machine.sql +30 -0
  101. package/apps/runtime/dist/db/migrations/tenant/0007_space_data.sql +43 -0
  102. package/apps/runtime/dist/db/migrations/tenant/0008_run_event_note.sql +1 -0
  103. package/apps/runtime/dist/db/migrations/tenant/0009_knowledge.sql +104 -0
  104. package/apps/runtime/dist/db/migrations/tenant/0010_plugin_connection.sql +15 -0
  105. package/apps/runtime/dist/db/migrations/tenant/0011_runners.sql +2 -0
  106. package/apps/runtime/dist/db/migrations/tenant/0012_assistant_chat.sql +40 -0
  107. package/apps/runtime/dist/db/migrations/tenant/0013_run_origin.sql +1 -0
  108. package/apps/runtime/dist/db/migrations/tenant/0014_run_answer.sql +2 -0
  109. package/apps/runtime/dist/db/migrations/tenant/0015_device_calls.sql +13 -0
  110. package/apps/runtime/dist/db/migrations/tenant/0016_even_trish_tilby.sql +12 -0
  111. package/apps/runtime/dist/db/migrations/tenant/meta/0000_snapshot.json +1323 -0
  112. package/apps/runtime/dist/db/migrations/tenant/meta/0001_snapshot.json +1330 -0
  113. package/apps/runtime/dist/db/migrations/tenant/meta/0002_snapshot.json +1337 -0
  114. package/apps/runtime/dist/db/migrations/tenant/meta/0003_snapshot.json +1605 -0
  115. package/apps/runtime/dist/db/migrations/tenant/meta/0004_snapshot.json +1645 -0
  116. package/apps/runtime/dist/db/migrations/tenant/meta/0005_snapshot.json +1659 -0
  117. package/apps/runtime/dist/db/migrations/tenant/meta/0006_snapshot.json +1696 -0
  118. package/apps/runtime/dist/db/migrations/tenant/meta/0007_snapshot.json +2012 -0
  119. package/apps/runtime/dist/db/migrations/tenant/meta/0008_snapshot.json +2019 -0
  120. package/apps/runtime/dist/db/migrations/tenant/meta/0009_snapshot.json +2837 -0
  121. package/apps/runtime/dist/db/migrations/tenant/meta/0010_snapshot.json +2942 -0
  122. package/apps/runtime/dist/db/migrations/tenant/meta/0011_snapshot.json +2956 -0
  123. package/apps/runtime/dist/db/migrations/tenant/meta/0012_snapshot.json +3132 -0
  124. package/apps/runtime/dist/db/migrations/tenant/meta/0013_snapshot.json +3139 -0
  125. package/apps/runtime/dist/db/migrations/tenant/meta/0014_snapshot.json +3154 -0
  126. package/apps/runtime/dist/db/migrations/tenant/meta/0015_snapshot.json +3243 -0
  127. package/apps/runtime/dist/db/migrations/tenant/meta/0016_snapshot.json +3326 -0
  128. package/apps/runtime/dist/db/migrations/tenant/meta/_journal.json +125 -0
  129. package/apps/runtime/dist/db/schema.js +602 -0
  130. package/apps/runtime/dist/debug.js +196 -0
  131. package/apps/runtime/dist/docs/dev/index.md +41 -0
  132. package/apps/runtime/dist/docs/dev/meta.json +7 -0
  133. package/apps/runtime/dist/docs/dev/plugins/connections.md +74 -0
  134. package/apps/runtime/dist/docs/dev/plugins/events.md +89 -0
  135. package/apps/runtime/dist/docs/dev/plugins/examples.md +101 -0
  136. package/apps/runtime/dist/docs/dev/plugins/index.md +78 -0
  137. package/apps/runtime/dist/docs/dev/plugins/layout.md +90 -0
  138. package/apps/runtime/dist/docs/dev/plugins/meta.json +28 -0
  139. package/apps/runtime/dist/docs/dev/plugins/quick-start.md +94 -0
  140. package/apps/runtime/dist/docs/dev/plugins/reference.md +348 -0
  141. package/apps/runtime/dist/docs/dev/plugins/reloading.md +76 -0
  142. package/apps/runtime/dist/docs/dev/plugins/routes.md +185 -0
  143. package/apps/runtime/dist/docs/dev/plugins/runners.md +230 -0
  144. package/apps/runtime/dist/docs/dev/plugins/server.md +281 -0
  145. package/apps/runtime/dist/docs/dev/plugins/shipping.md +79 -0
  146. package/apps/runtime/dist/docs/dev/plugins/space.md +297 -0
  147. package/apps/runtime/dist/docs/dev/plugins/starters.md +70 -0
  148. package/apps/runtime/dist/docs/dev/plugins/studio.md +363 -0
  149. package/apps/runtime/dist/docs/dev/plugins/styling.md +129 -0
  150. package/apps/runtime/dist/docs/dev/plugins/tables.md +104 -0
  151. package/apps/runtime/dist/docs/dev/plugins/tools.md +139 -0
  152. package/apps/runtime/dist/docs/dev/wizard-format.md +125 -0
  153. package/apps/runtime/dist/docs/meta.json +3 -0
  154. package/apps/runtime/dist/docs/user/ai-apps.md +112 -0
  155. package/apps/runtime/dist/docs/user/assistant.md +77 -0
  156. package/apps/runtime/dist/docs/user/build-a-wizard.md +116 -0
  157. package/apps/runtime/dist/docs/user/command-line.md +83 -0
  158. package/apps/runtime/dist/docs/user/connectors.md +90 -0
  159. package/apps/runtime/dist/docs/user/create-account.md +52 -0
  160. package/apps/runtime/dist/docs/user/data.md +66 -0
  161. package/apps/runtime/dist/docs/user/first-start.md +60 -0
  162. package/apps/runtime/dist/docs/user/index.md +49 -0
  163. package/apps/runtime/dist/docs/user/install.md +123 -0
  164. package/apps/runtime/dist/docs/user/local-only.md +42 -0
  165. package/apps/runtime/dist/docs/user/meta.json +32 -0
  166. package/apps/runtime/dist/docs/user/models.md +156 -0
  167. package/apps/runtime/dist/docs/user/plugins.md +71 -0
  168. package/apps/runtime/dist/docs/user/run.md +98 -0
  169. package/apps/runtime/dist/docs/user/server.md +52 -0
  170. package/apps/runtime/dist/docs/user/space.md +126 -0
  171. package/apps/runtime/dist/docs/user/steps.md +220 -0
  172. package/apps/runtime/dist/docs/user/test-and-share.md +224 -0
  173. package/apps/runtime/dist/docs/user/troubleshooting.md +67 -0
  174. package/apps/runtime/dist/docs/user/wordpress.md +121 -0
  175. package/apps/runtime/dist/documents/parse.js +246 -0
  176. package/apps/runtime/dist/engenty/connections-external/build-connector.js +193 -0
  177. package/apps/runtime/dist/engenty/connections-external/errors.js +11 -0
  178. package/apps/runtime/dist/engenty/connections-external/import-service.js +270 -0
  179. package/apps/runtime/dist/engenty/connections-external/importer/classify.js +34 -0
  180. package/apps/runtime/dist/engenty/connections-external/importer/map-auth.js +185 -0
  181. package/apps/runtime/dist/engenty/connections-external/importer/normalize-mcp.js +63 -0
  182. package/apps/runtime/dist/engenty/connections-external/importer/normalize-openapi.js +130 -0
  183. package/apps/runtime/dist/engenty/connections-external/invoke/http-invoker.js +143 -0
  184. package/apps/runtime/dist/engenty/connections-external/invoke/mcp-client.js +143 -0
  185. package/apps/runtime/dist/engenty/connections-external/net/guarded-fetch.js +119 -0
  186. package/apps/runtime/dist/engenty/connections-external/oauth-dcr.js +88 -0
  187. package/apps/runtime/dist/engenty/connections-external/registry-client.js +336 -0
  188. package/apps/runtime/dist/engenty/connections-external/registry-source.js +82 -0
  189. package/apps/runtime/dist/engenty/connections-external/types.js +7 -0
  190. package/apps/runtime/dist/engenty/connections-github/connector.js +209 -0
  191. package/apps/runtime/dist/engenty/connections-google/connectors/calendar.js +381 -0
  192. package/apps/runtime/dist/engenty/connections-google/connectors/contacts.js +94 -0
  193. package/apps/runtime/dist/engenty/connections-google/connectors/drive.js +290 -0
  194. package/apps/runtime/dist/engenty/connections-google/connectors/gmail.js +567 -0
  195. package/apps/runtime/dist/engenty/connections-google/definitions.js +11 -0
  196. package/apps/runtime/dist/engenty/connections-google/shared.js +73 -0
  197. package/apps/runtime/dist/engenty/connections-hubspot/connector.js +140 -0
  198. package/apps/runtime/dist/engenty/connections-microsoft/action.js +17 -0
  199. package/apps/runtime/dist/engenty/connections-microsoft/graph.js +114 -0
  200. package/apps/runtime/dist/engenty/connections-microsoft/onedrive.js +286 -0
  201. package/apps/runtime/dist/engenty/connections-microsoft/outlook.js +492 -0
  202. package/apps/runtime/dist/engenty/connections-s3/s3.js +328 -0
  203. package/apps/runtime/dist/engenty/connections-sdk/files-capability.js +86 -0
  204. package/apps/runtime/dist/engenty/connections-sdk/oauth2.js +150 -0
  205. package/apps/runtime/dist/engenty/connections-sdk/registry.js +89 -0
  206. package/apps/runtime/dist/engenty/connections-sdk/storage-capability.js +84 -0
  207. package/apps/runtime/dist/engenty/connections-sdk/types.js +30 -0
  208. package/apps/runtime/dist/engenty/connections-slack/connector.js +360 -0
  209. package/apps/runtime/dist/engenty/csv-import/csv-matrix.js +178 -0
  210. package/apps/runtime/dist/engenty/csv-import/import-sources.js +87 -0
  211. package/apps/runtime/dist/engenty/csv-import/parse-csv.js +129 -0
  212. package/apps/runtime/dist/engenty/csv-import/serialize-csv.js +20 -0
  213. package/apps/runtime/dist/engenty/csv-import/types.js +1 -0
  214. package/apps/runtime/dist/engenty/csv-import/xlsx-workbook.js +159 -0
  215. package/apps/runtime/dist/engenty/doc-converter/interface.js +9 -0
  216. package/apps/runtime/dist/engenty/doc-converter/page-break.js +92 -0
  217. package/apps/runtime/dist/engenty/doc-converter/providers/local/index.js +72 -0
  218. package/apps/runtime/dist/engenty/document-scanner/schemas/classifier.js +30 -0
  219. package/apps/runtime/dist/engenty/document-scanner/schemas/index.js +4 -0
  220. package/apps/runtime/dist/engenty/document-scanner/schemas/invoice.js +73 -0
  221. package/apps/runtime/dist/engenty/document-scanner/schemas/receipt.js +63 -0
  222. package/apps/runtime/dist/engenty/document-scanner/schemas/shared.js +40 -0
  223. package/apps/runtime/dist/engenty/search-index/chunks.js +164 -0
  224. package/apps/runtime/dist/engenty/search-index/contracts.js +9 -0
  225. package/apps/runtime/dist/engenty/shims/connections-sdk.js +39 -0
  226. package/apps/runtime/dist/engenty/shims/plugin-sdk.js +1 -0
  227. package/apps/runtime/dist/engenty/shims/web-ingest.js +19 -0
  228. package/apps/runtime/dist/engenty/web-ingest/ssrf.js +277 -0
  229. package/apps/runtime/dist/engine/asks.js +82 -0
  230. package/apps/runtime/dist/engine/decide.js +82 -0
  231. package/apps/runtime/dist/engine/device.js +194 -0
  232. package/apps/runtime/dist/engine/events.js +128 -0
  233. package/apps/runtime/dist/engine/input.js +208 -0
  234. package/apps/runtime/dist/engine/owner.js +32 -0
  235. package/apps/runtime/dist/engine/prepare.js +90 -0
  236. package/apps/runtime/dist/engine/push.js +58 -0
  237. package/apps/runtime/dist/engine/requirements.js +355 -0
  238. package/apps/runtime/dist/engine/resources.js +198 -0
  239. package/apps/runtime/dist/engine/runner.js +970 -0
  240. package/apps/runtime/dist/engine/steps.js +1000 -0
  241. package/apps/runtime/dist/engine/surface.js +91 -0
  242. package/apps/runtime/dist/engine/template.js +240 -0
  243. package/apps/runtime/dist/engine/types.js +4 -0
  244. package/apps/runtime/dist/env.js +295 -0
  245. package/apps/runtime/dist/features.js +123 -0
  246. package/apps/runtime/dist/files/blobs.js +22 -0
  247. package/apps/runtime/dist/files/objects.js +86 -0
  248. package/apps/runtime/dist/files/storage.js +120 -0
  249. package/apps/runtime/dist/files/web-images.js +101 -0
  250. package/apps/runtime/dist/film/project.js +257 -0
  251. package/apps/runtime/dist/film/skills.js +91 -0
  252. package/apps/runtime/dist/film/sounds.js +122 -0
  253. package/apps/runtime/dist/film/step.js +289 -0
  254. package/apps/runtime/dist/film/tools.js +99 -0
  255. package/apps/runtime/dist/geocode.js +58 -0
  256. package/apps/runtime/dist/harness/antigravity.js +129 -0
  257. package/apps/runtime/dist/harness/apple.js +270 -0
  258. package/apps/runtime/dist/harness/claude.js +147 -0
  259. package/apps/runtime/dist/harness/codex.js +229 -0
  260. package/apps/runtime/dist/harness/cursor.js +93 -0
  261. package/apps/runtime/dist/harness/env.js +124 -0
  262. package/apps/runtime/dist/harness/index.js +95 -0
  263. package/apps/runtime/dist/harness/model.js +279 -0
  264. package/apps/runtime/dist/harness/prompt.js +121 -0
  265. package/apps/runtime/dist/harness/terminal.js +194 -0
  266. package/apps/runtime/dist/harness/types.js +7 -0
  267. package/apps/runtime/dist/index.js +113 -0
  268. package/apps/runtime/dist/limits.js +81 -0
  269. package/apps/runtime/dist/link-preview.js +60 -0
  270. package/apps/runtime/dist/log.js +106 -0
  271. package/apps/runtime/dist/manage.js +249 -0
  272. package/apps/runtime/dist/mcp/auth.js +161 -0
  273. package/apps/runtime/dist/mcp/bridge.js +59 -0
  274. package/apps/runtime/dist/mcp/flow-app.js +97 -0
  275. package/apps/runtime/dist/mcp/handler.js +54 -0
  276. package/apps/runtime/dist/mcp/scopes.js +14 -0
  277. package/apps/runtime/dist/mcp/seen.js +65 -0
  278. package/apps/runtime/dist/mcp/tools.js +572 -0
  279. package/apps/runtime/dist/media/conversation.js +167 -0
  280. package/apps/runtime/dist/media/ffmpeg.js +121 -0
  281. package/apps/runtime/dist/media/generate.js +120 -0
  282. package/apps/runtime/dist/media/marking.js +121 -0
  283. package/apps/runtime/dist/media/transcribe.js +198 -0
  284. package/apps/runtime/dist/model-errors.js +42 -0
  285. package/apps/runtime/dist/models.js +1164 -0
  286. package/apps/runtime/dist/plugin.js +61 -0
  287. package/apps/runtime/dist/plugins/channels.js +78 -0
  288. package/apps/runtime/dist/plugins/claims.js +56 -0
  289. package/apps/runtime/dist/plugins/discovery.js +155 -0
  290. package/apps/runtime/dist/plugins/events.js +63 -0
  291. package/apps/runtime/dist/plugins/jobs.js +64 -0
  292. package/apps/runtime/dist/plugins/loader.js +508 -0
  293. package/apps/runtime/dist/plugins/migrations.js +69 -0
  294. package/apps/runtime/dist/plugins/pro-keys.js +34 -0
  295. package/apps/runtime/dist/plugins/pro-state.js +83 -0
  296. package/apps/runtime/dist/plugins/pro.js +310 -0
  297. package/apps/runtime/dist/plugins/public.js +44 -0
  298. package/apps/runtime/dist/plugins/registry.js +122 -0
  299. package/apps/runtime/dist/plugins/runs.js +210 -0
  300. package/apps/runtime/dist/render/browser-path.js +54 -0
  301. package/apps/runtime/dist/render/chromium.js +98 -0
  302. package/apps/runtime/dist/render/convert.js +158 -0
  303. package/apps/runtime/dist/render/downloads.js +299 -0
  304. package/apps/runtime/dist/render/guard.js +25 -0
  305. package/apps/runtime/dist/render/shaped.js +137 -0
  306. package/apps/runtime/dist/routes/api.js +440 -0
  307. package/apps/runtime/dist/routes/debug.js +42 -0
  308. package/apps/runtime/dist/routes/delivery.js +90 -0
  309. package/apps/runtime/dist/routes/internal.js +81 -0
  310. package/apps/runtime/dist/routes/lang.js +25 -0
  311. package/apps/runtime/dist/routes/marketplace.js +43 -0
  312. package/apps/runtime/dist/routes/plugin-public.js +113 -0
  313. package/apps/runtime/dist/routes/plugins.js +212 -0
  314. package/apps/runtime/dist/routes/runs.js +1422 -0
  315. package/apps/runtime/dist/routes/studio.js +1629 -0
  316. package/apps/runtime/dist/routes/wizard-stream.js +30 -0
  317. package/apps/runtime/dist/running.js +39 -0
  318. package/apps/runtime/dist/sandbox/docker.js +75 -0
  319. package/apps/runtime/dist/sandbox/index.js +23 -0
  320. package/apps/runtime/dist/sandbox/types.js +1 -0
  321. package/apps/runtime/dist/secrets/crypto.js +28 -0
  322. package/apps/runtime/dist/secrets/signing.js +52 -0
  323. package/apps/runtime/dist/secrets/vault.js +59 -0
  324. package/apps/runtime/dist/services/access.js +88 -0
  325. package/apps/runtime/dist/services/api.js +248 -0
  326. package/apps/runtime/dist/services/architect.js +95 -0
  327. package/apps/runtime/dist/services/assistant-chats.js +311 -0
  328. package/apps/runtime/dist/services/brand.js +85 -0
  329. package/apps/runtime/dist/services/cloud.js +456 -0
  330. package/apps/runtime/dist/services/draft-events.js +27 -0
  331. package/apps/runtime/dist/services/engenty-shapes.js +71 -0
  332. package/apps/runtime/dist/services/errors.js +29 -0
  333. package/apps/runtime/dist/services/files.js +178 -0
  334. package/apps/runtime/dist/services/knowledge-model.js +559 -0
  335. package/apps/runtime/dist/services/knowledge.js +721 -0
  336. package/apps/runtime/dist/services/links.js +16 -0
  337. package/apps/runtime/dist/services/marketplace.js +492 -0
  338. package/apps/runtime/dist/services/onboarding.js +152 -0
  339. package/apps/runtime/dist/services/package-file.js +82 -0
  340. package/apps/runtime/dist/services/package.js +170 -0
  341. package/apps/runtime/dist/services/profile.js +51 -0
  342. package/apps/runtime/dist/services/project-files.js +439 -0
  343. package/apps/runtime/dist/services/project-index.js +707 -0
  344. package/apps/runtime/dist/services/projects.js +387 -0
  345. package/apps/runtime/dist/services/relevance.js +58 -0
  346. package/apps/runtime/dist/services/runners.js +178 -0
  347. package/apps/runtime/dist/services/runs.js +524 -0
  348. package/apps/runtime/dist/services/shares.js +130 -0
  349. package/apps/runtime/dist/services/site.js +270 -0
  350. package/apps/runtime/dist/services/space-categories.js +861 -0
  351. package/apps/runtime/dist/services/space-data.js +792 -0
  352. package/apps/runtime/dist/services/space-origin.js +207 -0
  353. package/apps/runtime/dist/services/spaces.js +656 -0
  354. package/apps/runtime/dist/services/translations.js +306 -0
  355. package/apps/runtime/dist/services/widgets.js +34 -0
  356. package/apps/runtime/dist/services/wizard-icon.js +157 -0
  357. package/apps/runtime/dist/services/wizards.js +420 -0
  358. package/apps/runtime/dist/settings.js +16 -0
  359. package/apps/runtime/dist/store/errors.js +4 -0
  360. package/apps/runtime/dist/store/index.js +299 -0
  361. package/apps/runtime/dist/store/shared-lists.js +123 -0
  362. package/apps/runtime/dist/tenants/control.js +238 -0
  363. package/apps/runtime/dist/tenants/tenant.js +26 -0
  364. package/apps/runtime/dist/texts.js +207 -0
  365. package/apps/runtime/dist/tools/browser.js +703 -0
  366. package/apps/runtime/dist/tools/connector.js +204 -0
  367. package/apps/runtime/dist/tools/index.js +291 -0
  368. package/apps/runtime/dist/tools/mail.js +104 -0
  369. package/apps/runtime/dist/tools/net-guard.js +170 -0
  370. package/apps/runtime/dist/tools/pages.js +81 -0
  371. package/apps/runtime/dist/tools/plugin.js +180 -0
  372. package/apps/runtime/dist/tools/project.js +154 -0
  373. package/apps/runtime/dist/tools/shared.js +69 -0
  374. package/apps/runtime/dist/tools/store.js +238 -0
  375. package/apps/runtime/dist/update.js +113 -0
  376. package/apps/runtime/dist/widgets/bundle.js +99 -0
  377. package/apps/runtime/dist/widgets/render.js +329 -0
  378. package/apps/runtime/dist/widgets/runtime.js +108 -0
  379. package/apps/runtime/dist/widgets/script.js +30 -0
  380. package/apps/runtime/dist/widgets/step.js +223 -0
  381. package/apps/web/dist/ai-labels/ai-black.svg +20 -0
  382. package/apps/web/dist/ai-labels/ai-generated-black.svg +31 -0
  383. package/apps/web/dist/ai-labels/ai-generated-white.svg +32 -0
  384. package/apps/web/dist/ai-labels/ai-modified-black.svg +30 -0
  385. package/apps/web/dist/ai-labels/ai-modified-white.svg +31 -0
  386. package/apps/web/dist/ai-labels/ai-white.svg +21 -0
  387. package/apps/web/dist/assets/AboutDialog-D4mvc-zu.js +1 -0
  388. package/apps/web/dist/assets/ChangelogDialog-DLqpJsF6.js +1 -0
  389. package/apps/web/dist/assets/ChatView-3laypRcE.js +10 -0
  390. package/apps/web/dist/assets/EditorPage-BalA5U2Y.js +3 -0
  391. package/apps/web/dist/assets/FlowPreview-CusP7ci9.js +1 -0
  392. package/apps/web/dist/assets/Harness-BrP-ENHg.css +1 -0
  393. package/apps/web/dist/assets/Harness-iYLtOLaK.js +16 -0
  394. package/apps/web/dist/assets/NewWizardChannels-CbwJ9A56.js +1 -0
  395. package/apps/web/dist/assets/NewWizardPage-BOBYiB9i.js +7 -0
  396. package/apps/web/dist/assets/OnboardingPage-CUwCiVIr.js +1 -0
  397. package/apps/web/dist/assets/ProjectPage-Bb16MdYG.js +1 -0
  398. package/apps/web/dist/assets/PublicRunner-BCt7Q6C-.js +1 -0
  399. package/apps/web/dist/assets/ReadOnly-kIHX2TEy.js +1 -0
  400. package/apps/web/dist/assets/RunDrawer-hZ9oeSXu.js +4 -0
  401. package/apps/web/dist/assets/RunnerView-DUS9fPmx.js +1 -0
  402. package/apps/web/dist/assets/SettingsPage-BzwR50fi.js +1 -0
  403. package/apps/web/dist/assets/SetupPage-gAp7rPxp.js +1 -0
  404. package/apps/web/dist/assets/SharePage-DqZWHva_.js +1 -0
  405. package/apps/web/dist/assets/changelog-DugmCNSf.js +1 -0
  406. package/apps/web/dist/assets/engenty-eXZ-EAwd.js +1 -0
  407. package/apps/web/dist/assets/esm-DXeMu8Lb.js +7 -0
  408. package/apps/web/dist/assets/fluffy-engenty-ClRou7yu.js +456 -0
  409. package/apps/web/dist/assets/index-AfUa8xKD.css +1 -0
  410. package/apps/web/dist/assets/index-C5Sm7tTR.js +14 -0
  411. package/apps/web/dist/assets/jsx-runtime-BNakU3Ej.js +1 -0
  412. package/apps/web/dist/assets/lock-R_CfU0Xo.js +1 -0
  413. package/apps/web/dist/assets/oss-credits-cZ9NUaLZ.js +1 -0
  414. package/apps/web/dist/assets/pdfmake-Cx9scTbD.js +228 -0
  415. package/apps/web/dist/assets/phone-CgrIS4_-.js +1 -0
  416. package/apps/web/dist/assets/preload-helper-CNEI7N0N.js +1 -0
  417. package/apps/web/dist/assets/qr-scanner-worker.min-CJaXo3yu.js +98 -0
  418. package/apps/web/dist/assets/qr-scanner.min-C_UI0gH-.js +1 -0
  419. package/apps/web/dist/assets/rolldown-runtime-hePW80VL.js +1 -0
  420. package/apps/web/dist/assets/settings-menu-2IMOOlLl.js +1 -0
  421. package/apps/web/dist/assets/ui-dzGvc3xk.js +137 -0
  422. package/apps/web/dist/assets/upload-BSuTilFF.js +1 -0
  423. package/apps/web/dist/assets/vfs_fonts-DllDSYt1.js +1 -0
  424. package/apps/web/dist/embed.js +266 -0
  425. package/apps/web/dist/favicon.svg +1 -0
  426. package/apps/web/dist/icons/apple-touch-icon.png +0 -0
  427. package/apps/web/dist/icons/icon-192.png +0 -0
  428. package/apps/web/dist/icons/icon-512.png +0 -0
  429. package/apps/web/dist/icons/icon-maskable-512.png +0 -0
  430. package/apps/web/dist/index.html +48 -0
  431. package/apps/web/dist/install.sh +577 -0
  432. package/apps/web/dist/manifest.webmanifest +21 -0
  433. package/apps/web/dist/mcp/flow.html +980 -0
  434. package/apps/web/dist/sw.js +15 -0
  435. package/bin/wizards.mjs +288 -0
  436. package/modules/README.md +15 -0
  437. package/node_modules/@engenty/wizards/dist/plugin/index.d.ts +1150 -0
  438. package/node_modules/@engenty/wizards/dist/plugin/index.js +4 -0
  439. package/node_modules/@engenty/wizards/dist/plugin/studio.d.ts +322 -0
  440. package/node_modules/@engenty/wizards/dist/plugin/studio.js +4 -0
  441. package/node_modules/@engenty/wizards/dist/plugin/thread.d.ts +174 -0
  442. package/node_modules/@engenty/wizards/dist/plugin/thread.js +821 -0
  443. package/node_modules/@engenty/wizards/package.json +11 -0
  444. package/node_modules/@engenty-wizards/shared/dist/assistant.d.ts +174 -0
  445. package/node_modules/@engenty-wizards/shared/dist/assistant.js +65 -0
  446. package/node_modules/@engenty-wizards/shared/dist/changes.d.ts +22 -0
  447. package/node_modules/@engenty-wizards/shared/dist/changes.js +61 -0
  448. package/node_modules/@engenty-wizards/shared/dist/connectors.d.ts +77 -0
  449. package/node_modules/@engenty-wizards/shared/dist/connectors.js +2 -0
  450. package/node_modules/@engenty-wizards/shared/dist/decision.d.ts +76 -0
  451. package/node_modules/@engenty-wizards/shared/dist/decision.js +147 -0
  452. package/node_modules/@engenty-wizards/shared/dist/definition.d.ts +2922 -0
  453. package/node_modules/@engenty-wizards/shared/dist/definition.js +1920 -0
  454. package/node_modules/@engenty-wizards/shared/dist/engenty/data-tables/columns-format.d.ts +5 -0
  455. package/node_modules/@engenty-wizards/shared/dist/engenty/data-tables/columns-format.js +132 -0
  456. package/node_modules/@engenty-wizards/shared/dist/engenty/data-tables/columns-value.d.ts +11 -0
  457. package/node_modules/@engenty-wizards/shared/dist/engenty/data-tables/columns-value.js +209 -0
  458. package/node_modules/@engenty-wizards/shared/dist/engenty/data-tables/columns.d.ts +532 -0
  459. package/node_modules/@engenty-wizards/shared/dist/engenty/data-tables/columns.js +217 -0
  460. package/node_modules/@engenty-wizards/shared/dist/engenty/data-tables/index.d.ts +3 -0
  461. package/node_modules/@engenty-wizards/shared/dist/engenty/data-tables/index.js +3 -0
  462. package/node_modules/@engenty-wizards/shared/dist/engenty/search-index/catalog-lexical.d.ts +14 -0
  463. package/node_modules/@engenty-wizards/shared/dist/engenty/search-index/catalog-lexical.js +166 -0
  464. package/node_modules/@engenty-wizards/shared/dist/engenty/search-index/catalog-rank.d.ts +33 -0
  465. package/node_modules/@engenty-wizards/shared/dist/engenty/search-index/catalog-rank.js +99 -0
  466. package/node_modules/@engenty-wizards/shared/dist/feature-flags.d.ts +78 -0
  467. package/node_modules/@engenty-wizards/shared/dist/feature-flags.js +70 -0
  468. package/node_modules/@engenty-wizards/shared/dist/features.d.ts +41 -0
  469. package/node_modules/@engenty-wizards/shared/dist/features.js +89 -0
  470. package/node_modules/@engenty-wizards/shared/dist/fit.d.ts +71 -0
  471. package/node_modules/@engenty-wizards/shared/dist/fit.js +382 -0
  472. package/node_modules/@engenty-wizards/shared/dist/json-schema.d.ts +14 -0
  473. package/node_modules/@engenty-wizards/shared/dist/json-schema.js +66 -0
  474. package/node_modules/@engenty-wizards/shared/dist/knowledge.d.ts +199 -0
  475. package/node_modules/@engenty-wizards/shared/dist/knowledge.js +68 -0
  476. package/node_modules/@engenty-wizards/shared/dist/marketplace-entry.d.ts +35 -0
  477. package/node_modules/@engenty-wizards/shared/dist/marketplace-entry.js +107 -0
  478. package/node_modules/@engenty-wizards/shared/dist/marketplace-search.d.ts +20 -0
  479. package/node_modules/@engenty-wizards/shared/dist/marketplace-search.js +136 -0
  480. package/node_modules/@engenty-wizards/shared/dist/marketplace.d.ts +227 -0
  481. package/node_modules/@engenty-wizards/shared/dist/marketplace.js +354 -0
  482. package/node_modules/@engenty-wizards/shared/dist/merge.d.ts +7 -0
  483. package/node_modules/@engenty-wizards/shared/dist/merge.js +40 -0
  484. package/node_modules/@engenty-wizards/shared/dist/numbers.d.ts +24 -0
  485. package/node_modules/@engenty-wizards/shared/dist/numbers.js +54 -0
  486. package/node_modules/@engenty-wizards/shared/dist/projects.d.ts +224 -0
  487. package/node_modules/@engenty-wizards/shared/dist/projects.js +319 -0
  488. package/node_modules/@engenty-wizards/shared/dist/providers.d.ts +101 -0
  489. package/node_modules/@engenty-wizards/shared/dist/providers.js +390 -0
  490. package/node_modules/@engenty-wizards/shared/dist/run.d.ts +680 -0
  491. package/node_modules/@engenty-wizards/shared/dist/run.js +620 -0
  492. package/node_modules/@engenty-wizards/shared/dist/runner-texts.d.ts +546 -0
  493. package/node_modules/@engenty-wizards/shared/dist/runner-texts.js +523 -0
  494. package/node_modules/@engenty-wizards/shared/dist/runners.d.ts +93 -0
  495. package/node_modules/@engenty-wizards/shared/dist/runners.js +146 -0
  496. package/node_modules/@engenty-wizards/shared/dist/shape.d.ts +102 -0
  497. package/node_modules/@engenty-wizards/shared/dist/shape.js +318 -0
  498. package/node_modules/@engenty-wizards/shared/dist/space-data.d.ts +89 -0
  499. package/node_modules/@engenty-wizards/shared/dist/space-data.js +47 -0
  500. package/node_modules/@engenty-wizards/shared/dist/store.d.ts +117 -0
  501. package/node_modules/@engenty-wizards/shared/dist/store.js +81 -0
  502. package/node_modules/@engenty-wizards/shared/dist/surface.d.ts +115 -0
  503. package/node_modules/@engenty-wizards/shared/dist/surface.js +442 -0
  504. package/node_modules/@engenty-wizards/shared/dist/texts.d.ts +45 -0
  505. package/node_modules/@engenty-wizards/shared/dist/texts.js +54 -0
  506. package/node_modules/@engenty-wizards/shared/dist/translation.d.ts +23 -0
  507. package/node_modules/@engenty-wizards/shared/dist/translation.js +154 -0
  508. package/node_modules/@engenty-wizards/shared/dist/wizard-package.d.ts +48 -0
  509. package/node_modules/@engenty-wizards/shared/dist/wizard-package.js +49 -0
  510. package/node_modules/@engenty-wizards/shared/dist/workspace.d.ts +16 -0
  511. package/node_modules/@engenty-wizards/shared/dist/workspace.js +51 -0
  512. package/node_modules/@engenty-wizards/shared/package.json +10 -0
  513. package/package.json +77 -4
  514. package/plugin/.claude-plugin/plugin.json +9 -0
  515. package/plugin/.mcp.json +8 -0
  516. package/plugin/commands/wizard.md +8 -0
  517. package/plugin/skills/build-wizard/SKILL.md +27 -0
  518. package/plugin/skills/use-wizard/SKILL.md +18 -0
@@ -0,0 +1,2922 @@
1
+ import { z } from "zod";
2
+ import { type ObjectShape } from "./shape.js";
3
+ import { type SurfaceComponent } from "./surface.js";
4
+ /** The engenty avatars a wizard can wear. Same cast as engenty's ui-core. */
5
+ export declare const ENGENTY_KINDS: readonly ["round", "drop", "dome", "flame", "oval", "bean", "pebble", "sprout", "tower", "wedge"];
6
+ export type EngentyKind = (typeof ENGENTY_KINDS)[number];
7
+ /**
8
+ * The languages engenty speaks: the studio, the runner, the mails, a wizard's own words. A
9
+ * language joins once its strings are written; English is the one every string has, and what a
10
+ * language still lacks is said in English.
11
+ */
12
+ export declare const LANGS: readonly ["en", "de"];
13
+ export type Lang = (typeof LANGS)[number];
14
+ /** Each language's name, in that language: what a switch or a menu shows. */
15
+ export declare const LANG_NAMES: Record<Lang, string>;
16
+ /** The locale amounts and dates are written in for a language. */
17
+ export declare const LOCALES: Record<Lang, string>;
18
+ /** The locale speech is heard and spoken in for a language (recognition, voices). */
19
+ export declare const SPEECH_LOCALES: Record<Lang, string>;
20
+ export declare function isLang(value: unknown): value is Lang;
21
+ /** The language of a tag such as "de-AT", "fr" or "pt_BR", where engenty speaks it. */
22
+ export declare function langOf(tag: string | null | undefined): Lang | null;
23
+ /**
24
+ * The languages a wizard is offered in when its author picks one: English, German and the main
25
+ * languages of Europe. A wizard may name any other real language by its code as well.
26
+ */
27
+ export declare const WIZARD_LANGS: readonly string[];
28
+ /**
29
+ * The person's own language beside English: the first of their languages (the browser's, in
30
+ * its order) that engenty speaks, else the main language of the country their time zone lies
31
+ * in; null where neither names one.
32
+ */
33
+ export declare function localLang(languages: readonly string[], timeZone?: string | null): Lang | null;
34
+ /**
35
+ * A language a wizard can be translated into: any language, by its two- or three-letter code
36
+ * ("fr", "it", "pl"), not only those of `LANGS`.
37
+ */
38
+ export declare const LANG_CODE: RegExp;
39
+ /** The code of a tag such as "fr-CA" or "pt_BR"; null where it names no language. */
40
+ export declare function langCodeOf(tag: string | null | undefined): string | null;
41
+ /**
42
+ * A real language, as the platform's own language data knows it: "it" and "nb" are, "xx" is
43
+ * not. The schema only checks the shape of a code; this checks that it names a language.
44
+ */
45
+ export declare function isRealLanguage(code: string): boolean;
46
+ /** The language engenty's own strings are read in for any language: itself where they are written, else English. */
47
+ export declare function textLang(code: string): Lang;
48
+ /**
49
+ * The language the person reads, for a wizard translated on request: the first of their
50
+ * languages (the browser's, in its order), else the main language of the country their time
51
+ * zone lies in. Any language, not only one engenty's own strings are written in.
52
+ */
53
+ export declare function viewerLang(languages: readonly string[], timeZone?: string | null): string | null;
54
+ /** A language's name in that language, as a switch shows it: "Italiano", "Polski". */
55
+ export declare function langName(code: string): string;
56
+ /** A language's name in English, for a model told what to write in: "Italian". */
57
+ export declare function langNameEn(code: string): string;
58
+ /** The locale amounts, dates and plural forms are written in for any language. */
59
+ export declare function localeOf(code: string): string;
60
+ /** The locale speech is recognised and read aloud in for any language. */
61
+ export declare function speechLocaleOf(code: string): string;
62
+ export declare const FIELD_KINDS: readonly ["text", "textarea", "number", "select", "multiselect", "date", "email", "url", "toggle", "color", "image", "file", "items", "connection", "list", "location", "audio", "signature", "slot"];
63
+ export type FieldKind = (typeof FIELD_KINDS)[number];
64
+ /**
65
+ * How a field is answered without the page's form: `typed` as text, `tapped` from its choices,
66
+ * `value` as a plain value (a colour, line items, a place), `device` only with the person's
67
+ * device or account (a file, a recording, a signature, a connection, a kept list). The chat
68
+ * types and taps; an AI client over MCP gives every way but `device`.
69
+ */
70
+ export type FieldWay = "typed" | "tapped" | "value" | "device";
71
+ export declare const FIELD_WAYS: Record<FieldKind, FieldWay>;
72
+ /**
73
+ * What a `location` field holds: where the person stands (from the device), a place they typed,
74
+ * or both — the label is then the address of the position.
75
+ */
76
+ export interface LocationValue {
77
+ lat?: number;
78
+ lng?: number;
79
+ /** Radius in metres the device vouches for. */
80
+ accuracy?: number;
81
+ label?: string;
82
+ }
83
+ /** What an `audio` field holds: the recording, and what is said in it once it was listened to. */
84
+ export interface AudioValue {
85
+ /** Upload id of the recording. */
86
+ asset: string;
87
+ seconds?: number;
88
+ transcript?: string;
89
+ /** The language the runner was in when the note was taken: what it is most likely spoken in. */
90
+ lang?: Lang;
91
+ }
92
+ export declare function isLocationValue(v: unknown): v is LocationValue;
93
+ export declare function isAudioValue(v: unknown): v is AudioValue;
94
+ /** A position the way a person reads it: "Hauptplatz 1, Graz (47.07071, 15.43950, ±12 m)". */
95
+ export declare function locationText(v: LocationValue): string;
96
+ /** A field takes at most this many files. */
97
+ export declare const MAX_FILES = 30;
98
+ export declare const TOOL_IDS: readonly ["web_search", "web_fetch", "browser", "sandbox", "image", "http", "pages"];
99
+ /**
100
+ * A tool a plugin of the runtime adds: `<plugin id>.<tool name>`. A wizard that names one runs
101
+ * only where that plugin is installed.
102
+ */
103
+ export declare const PLUGIN_ID: RegExp;
104
+ export declare const PLUGIN_TOOL_NAME: RegExp;
105
+ export type PluginToolId = `${string}.${string}`;
106
+ /** The plugin and the tool a step's tool id names, or null for one of the built-in tools. */
107
+ export declare function pluginToolOf(id: string): {
108
+ plugin: string;
109
+ tool: string;
110
+ } | null;
111
+ /**
112
+ * The kinds of model a step can ask for. A step names a class; which model serves it is bound
113
+ * outside the wizard (the model-gateway, or the settings of a runtime that runs alone).
114
+ */
115
+ export declare const TEXT_CLASSES: readonly ["classifier", "standard", "high", "highest"];
116
+ export type TextClass = (typeof TEXT_CLASSES)[number];
117
+ export declare const MODEL_CLASSES: readonly ["classifier", "standard", "high", "highest", "image", "video", "audio", "speech"];
118
+ export type ModelClass = (typeof MODEL_CLASSES)[number];
119
+ /** How hard the model should think, where the bound model can be told. */
120
+ export declare const EFFORTS: readonly ["low", "medium", "high"];
121
+ export type Effort = (typeof EFFORTS)[number];
122
+ export type ToolId = (typeof TOOL_IDS)[number];
123
+ export declare const ASSET_KINDS: readonly ["image", "video", "voice", "document", "dashboard"];
124
+ export type AssetKind = (typeof ASSET_KINDS)[number];
125
+ export declare const FORMATS: readonly ["png", "mp4", "mp3", "pdf", "docx", "html", "md", "txt", "csv", "xlsx", "json", "zip"];
126
+ export type Format = (typeof FORMATS)[number];
127
+ export declare const ASPECT_RATIOS: readonly ["1:1", "16:9", "9:16", "4:5", "3:2", "2:3"];
128
+ /** What a video model renders at: 720p unless the step asks for less. Never more. */
129
+ export declare const VIDEO_RESOLUTIONS: readonly ["720p", "480p"];
130
+ export type VideoResolution = (typeof VIDEO_RESOLUTIONS)[number];
131
+ export declare const itemColumnSchema: z.ZodObject<{
132
+ id: z.ZodString;
133
+ label: z.ZodString;
134
+ kind: z.ZodEnum<{
135
+ money: "money";
136
+ number: "number";
137
+ text: "text";
138
+ }>;
139
+ }, z.core.$strip>;
140
+ export declare const CONDITION_OPS: readonly ["equals", "notEquals", "in", "notEmpty", "empty", "gt", "lt", "contains"];
141
+ export type ConditionOp = (typeof CONDITION_OPS)[number];
142
+ /**
143
+ * One test on what the run knows: an answer by field id, an output of an agent step as
144
+ * "steps.<step>.<field>", or how many rows a stored list has as "lists.<list>.count".
145
+ */
146
+ export declare const conditionSchema: z.ZodObject<{
147
+ field: z.ZodString;
148
+ op: z.ZodEnum<{
149
+ contains: "contains";
150
+ empty: "empty";
151
+ equals: "equals";
152
+ gt: "gt";
153
+ in: "in";
154
+ lt: "lt";
155
+ notEmpty: "notEmpty";
156
+ notEquals: "notEquals";
157
+ }>;
158
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
159
+ }, z.core.$strip>;
160
+ export type Condition = z.infer<typeof conditionSchema>;
161
+ /** One condition, or several that must all hold. */
162
+ export declare const whenSchema: z.ZodUnion<readonly [z.ZodObject<{
163
+ field: z.ZodString;
164
+ op: z.ZodEnum<{
165
+ contains: "contains";
166
+ empty: "empty";
167
+ equals: "equals";
168
+ gt: "gt";
169
+ in: "in";
170
+ lt: "lt";
171
+ notEmpty: "notEmpty";
172
+ notEquals: "notEquals";
173
+ }>;
174
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
175
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
176
+ field: z.ZodString;
177
+ op: z.ZodEnum<{
178
+ contains: "contains";
179
+ empty: "empty";
180
+ equals: "equals";
181
+ gt: "gt";
182
+ in: "in";
183
+ lt: "lt";
184
+ notEmpty: "notEmpty";
185
+ notEquals: "notEquals";
186
+ }>;
187
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
188
+ }, z.core.$strip>>]>;
189
+ export type When = z.infer<typeof whenSchema>;
190
+ /** What a card of a choice shows: the columns of the table the choices come from. */
191
+ export declare const cardsSchema: z.ZodObject<{
192
+ label: z.ZodString;
193
+ value: z.ZodOptional<z.ZodString>;
194
+ image: z.ZodOptional<z.ZodString>;
195
+ subtitle: z.ZodOptional<z.ZodString>;
196
+ meta: z.ZodOptional<z.ZodString>;
197
+ link: z.ZodOptional<z.ZodString>;
198
+ }, z.core.$strip>;
199
+ export type CardsDef = z.infer<typeof cardsSchema>;
200
+ /** A choice drawn as a card, as the runner gets it. */
201
+ export interface CardOption {
202
+ value: string;
203
+ label: string;
204
+ image?: string;
205
+ subtitle?: string;
206
+ meta?: string;
207
+ link?: string;
208
+ }
209
+ export declare const fieldSchema: z.ZodObject<{
210
+ id: z.ZodString;
211
+ label: z.ZodString;
212
+ kind: z.ZodEnum<{
213
+ audio: "audio";
214
+ color: "color";
215
+ connection: "connection";
216
+ date: "date";
217
+ email: "email";
218
+ file: "file";
219
+ image: "image";
220
+ items: "items";
221
+ list: "list";
222
+ location: "location";
223
+ multiselect: "multiselect";
224
+ number: "number";
225
+ select: "select";
226
+ signature: "signature";
227
+ slot: "slot";
228
+ text: "text";
229
+ textarea: "textarea";
230
+ toggle: "toggle";
231
+ url: "url";
232
+ }>;
233
+ required: z.ZodOptional<z.ZodBoolean>;
234
+ placeholder: z.ZodOptional<z.ZodString>;
235
+ help: z.ZodOptional<z.ZodString>;
236
+ options: z.ZodOptional<z.ZodArray<z.ZodString>>;
237
+ default: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
238
+ columns: z.ZodOptional<z.ZodArray<z.ZodObject<{
239
+ id: z.ZodString;
240
+ label: z.ZodString;
241
+ kind: z.ZodEnum<{
242
+ money: "money";
243
+ number: "number";
244
+ text: "text";
245
+ }>;
246
+ }, z.core.$strip>>>;
247
+ vat: z.ZodOptional<z.ZodObject<{
248
+ rate: z.ZodOptional<z.ZodNumber>;
249
+ field: z.ZodOptional<z.ZodString>;
250
+ }, z.core.$strip>>;
251
+ currency: z.ZodOptional<z.ZodString>;
252
+ multiple: z.ZodOptional<z.ZodBoolean>;
253
+ min: z.ZodOptional<z.ZodNumber>;
254
+ max: z.ZodOptional<z.ZodNumber>;
255
+ camera: z.ZodOptional<z.ZodBoolean>;
256
+ video: z.ZodOptional<z.ZodBoolean>;
257
+ listen: z.ZodOptional<z.ZodBoolean>;
258
+ scan: z.ZodOptional<z.ZodBoolean>;
259
+ connection: z.ZodOptional<z.ZodString>;
260
+ list: z.ZodOptional<z.ZodString>;
261
+ prefill: z.ZodOptional<z.ZodString>;
262
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
263
+ field: z.ZodString;
264
+ op: z.ZodEnum<{
265
+ contains: "contains";
266
+ empty: "empty";
267
+ equals: "equals";
268
+ gt: "gt";
269
+ in: "in";
270
+ lt: "lt";
271
+ notEmpty: "notEmpty";
272
+ notEquals: "notEquals";
273
+ }>;
274
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
275
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
276
+ field: z.ZodString;
277
+ op: z.ZodEnum<{
278
+ contains: "contains";
279
+ empty: "empty";
280
+ equals: "equals";
281
+ gt: "gt";
282
+ in: "in";
283
+ lt: "lt";
284
+ notEmpty: "notEmpty";
285
+ notEquals: "notEquals";
286
+ }>;
287
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
288
+ }, z.core.$strip>>]>>;
289
+ optionsFrom: z.ZodOptional<z.ZodString>;
290
+ cards: z.ZodOptional<z.ZodObject<{
291
+ label: z.ZodString;
292
+ value: z.ZodOptional<z.ZodString>;
293
+ image: z.ZodOptional<z.ZodString>;
294
+ subtitle: z.ZodOptional<z.ZodString>;
295
+ meta: z.ZodOptional<z.ZodString>;
296
+ link: z.ZodOptional<z.ZodString>;
297
+ }, z.core.$strip>>;
298
+ ask: z.ZodOptional<z.ZodString>;
299
+ group: z.ZodOptional<z.ZodString>;
300
+ }, z.core.$strip>;
301
+ export type Field = z.infer<typeof fieldSchema>;
302
+ export declare const fieldGroupSchema: z.ZodObject<{
303
+ id: z.ZodString;
304
+ instructions: z.ZodString;
305
+ optional: z.ZodOptional<z.ZodBoolean>;
306
+ }, z.core.$strip>;
307
+ export declare const nextRuleSchema: z.ZodObject<{
308
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
309
+ field: z.ZodString;
310
+ op: z.ZodEnum<{
311
+ contains: "contains";
312
+ empty: "empty";
313
+ equals: "equals";
314
+ gt: "gt";
315
+ in: "in";
316
+ lt: "lt";
317
+ notEmpty: "notEmpty";
318
+ notEquals: "notEquals";
319
+ }>;
320
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
321
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
322
+ field: z.ZodString;
323
+ op: z.ZodEnum<{
324
+ contains: "contains";
325
+ empty: "empty";
326
+ equals: "equals";
327
+ gt: "gt";
328
+ in: "in";
329
+ lt: "lt";
330
+ notEmpty: "notEmpty";
331
+ notEquals: "notEquals";
332
+ }>;
333
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
334
+ }, z.core.$strip>>]>>;
335
+ ask: z.ZodOptional<z.ZodString>;
336
+ goto: z.ZodString;
337
+ max: z.ZodOptional<z.ZodNumber>;
338
+ }, z.core.$strip>;
339
+ export type NextRule = z.infer<typeof nextRuleSchema>;
340
+ export declare const outputFieldSchema: z.ZodObject<{
341
+ id: z.ZodString;
342
+ kind: z.ZodEnum<{
343
+ choice: "choice";
344
+ list: "list";
345
+ number: "number";
346
+ score: "score";
347
+ table: "table";
348
+ text: "text";
349
+ yesno: "yesno";
350
+ }>;
351
+ description: z.ZodOptional<z.ZodString>;
352
+ columns: z.ZodOptional<z.ZodArray<z.ZodString>>;
353
+ options: z.ZodOptional<z.ZodArray<z.ZodString>>;
354
+ }, z.core.$strip>;
355
+ export declare const pageStepSchema: z.ZodObject<{
356
+ id: z.ZodString;
357
+ title: z.ZodString;
358
+ description: z.ZodOptional<z.ZodString>;
359
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
360
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
361
+ field: z.ZodString;
362
+ op: z.ZodEnum<{
363
+ contains: "contains";
364
+ empty: "empty";
365
+ equals: "equals";
366
+ gt: "gt";
367
+ in: "in";
368
+ lt: "lt";
369
+ notEmpty: "notEmpty";
370
+ notEquals: "notEquals";
371
+ }>;
372
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
373
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
374
+ field: z.ZodString;
375
+ op: z.ZodEnum<{
376
+ contains: "contains";
377
+ empty: "empty";
378
+ equals: "equals";
379
+ gt: "gt";
380
+ in: "in";
381
+ lt: "lt";
382
+ notEmpty: "notEmpty";
383
+ notEquals: "notEquals";
384
+ }>;
385
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
386
+ }, z.core.$strip>>]>>;
387
+ ask: z.ZodOptional<z.ZodString>;
388
+ goto: z.ZodString;
389
+ max: z.ZodOptional<z.ZodNumber>;
390
+ }, z.core.$strip>>>;
391
+ type: z.ZodLiteral<"page">;
392
+ fields: z.ZodArray<z.ZodObject<{
393
+ id: z.ZodString;
394
+ label: z.ZodString;
395
+ kind: z.ZodEnum<{
396
+ audio: "audio";
397
+ color: "color";
398
+ connection: "connection";
399
+ date: "date";
400
+ email: "email";
401
+ file: "file";
402
+ image: "image";
403
+ items: "items";
404
+ list: "list";
405
+ location: "location";
406
+ multiselect: "multiselect";
407
+ number: "number";
408
+ select: "select";
409
+ signature: "signature";
410
+ slot: "slot";
411
+ text: "text";
412
+ textarea: "textarea";
413
+ toggle: "toggle";
414
+ url: "url";
415
+ }>;
416
+ required: z.ZodOptional<z.ZodBoolean>;
417
+ placeholder: z.ZodOptional<z.ZodString>;
418
+ help: z.ZodOptional<z.ZodString>;
419
+ options: z.ZodOptional<z.ZodArray<z.ZodString>>;
420
+ default: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
421
+ columns: z.ZodOptional<z.ZodArray<z.ZodObject<{
422
+ id: z.ZodString;
423
+ label: z.ZodString;
424
+ kind: z.ZodEnum<{
425
+ money: "money";
426
+ number: "number";
427
+ text: "text";
428
+ }>;
429
+ }, z.core.$strip>>>;
430
+ vat: z.ZodOptional<z.ZodObject<{
431
+ rate: z.ZodOptional<z.ZodNumber>;
432
+ field: z.ZodOptional<z.ZodString>;
433
+ }, z.core.$strip>>;
434
+ currency: z.ZodOptional<z.ZodString>;
435
+ multiple: z.ZodOptional<z.ZodBoolean>;
436
+ min: z.ZodOptional<z.ZodNumber>;
437
+ max: z.ZodOptional<z.ZodNumber>;
438
+ camera: z.ZodOptional<z.ZodBoolean>;
439
+ video: z.ZodOptional<z.ZodBoolean>;
440
+ listen: z.ZodOptional<z.ZodBoolean>;
441
+ scan: z.ZodOptional<z.ZodBoolean>;
442
+ connection: z.ZodOptional<z.ZodString>;
443
+ list: z.ZodOptional<z.ZodString>;
444
+ prefill: z.ZodOptional<z.ZodString>;
445
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
446
+ field: z.ZodString;
447
+ op: z.ZodEnum<{
448
+ contains: "contains";
449
+ empty: "empty";
450
+ equals: "equals";
451
+ gt: "gt";
452
+ in: "in";
453
+ lt: "lt";
454
+ notEmpty: "notEmpty";
455
+ notEquals: "notEquals";
456
+ }>;
457
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
458
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
459
+ field: z.ZodString;
460
+ op: z.ZodEnum<{
461
+ contains: "contains";
462
+ empty: "empty";
463
+ equals: "equals";
464
+ gt: "gt";
465
+ in: "in";
466
+ lt: "lt";
467
+ notEmpty: "notEmpty";
468
+ notEquals: "notEquals";
469
+ }>;
470
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
471
+ }, z.core.$strip>>]>>;
472
+ optionsFrom: z.ZodOptional<z.ZodString>;
473
+ cards: z.ZodOptional<z.ZodObject<{
474
+ label: z.ZodString;
475
+ value: z.ZodOptional<z.ZodString>;
476
+ image: z.ZodOptional<z.ZodString>;
477
+ subtitle: z.ZodOptional<z.ZodString>;
478
+ meta: z.ZodOptional<z.ZodString>;
479
+ link: z.ZodOptional<z.ZodString>;
480
+ }, z.core.$strip>>;
481
+ ask: z.ZodOptional<z.ZodString>;
482
+ group: z.ZodOptional<z.ZodString>;
483
+ }, z.core.$strip>>;
484
+ groups: z.ZodOptional<z.ZodArray<z.ZodObject<{
485
+ id: z.ZodString;
486
+ instructions: z.ZodString;
487
+ optional: z.ZodOptional<z.ZodBoolean>;
488
+ }, z.core.$strip>>>;
489
+ cta: z.ZodOptional<z.ZodString>;
490
+ }, z.core.$strip>;
491
+ export declare const agentStepSchema: z.ZodObject<{
492
+ id: z.ZodString;
493
+ title: z.ZodString;
494
+ description: z.ZodOptional<z.ZodString>;
495
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
496
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
497
+ field: z.ZodString;
498
+ op: z.ZodEnum<{
499
+ contains: "contains";
500
+ empty: "empty";
501
+ equals: "equals";
502
+ gt: "gt";
503
+ in: "in";
504
+ lt: "lt";
505
+ notEmpty: "notEmpty";
506
+ notEquals: "notEquals";
507
+ }>;
508
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
509
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
510
+ field: z.ZodString;
511
+ op: z.ZodEnum<{
512
+ contains: "contains";
513
+ empty: "empty";
514
+ equals: "equals";
515
+ gt: "gt";
516
+ in: "in";
517
+ lt: "lt";
518
+ notEmpty: "notEmpty";
519
+ notEquals: "notEquals";
520
+ }>;
521
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
522
+ }, z.core.$strip>>]>>;
523
+ ask: z.ZodOptional<z.ZodString>;
524
+ goto: z.ZodString;
525
+ max: z.ZodOptional<z.ZodNumber>;
526
+ }, z.core.$strip>>>;
527
+ type: z.ZodLiteral<"agent">;
528
+ instructions: z.ZodDefault<z.ZodString>;
529
+ call: z.ZodOptional<z.ZodObject<{
530
+ tool: z.ZodTemplateLiteral<`${string}.${string}`>;
531
+ input: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
532
+ }, z.core.$strip>>;
533
+ tools: z.ZodDefault<z.ZodArray<z.ZodUnion<readonly [z.ZodEnum<{
534
+ browser: "browser";
535
+ http: "http";
536
+ image: "image";
537
+ pages: "pages";
538
+ sandbox: "sandbox";
539
+ web_fetch: "web_fetch";
540
+ web_search: "web_search";
541
+ }>, z.ZodTemplateLiteral<`${string}.${string}`>]>>>;
542
+ mcp: z.ZodOptional<z.ZodArray<z.ZodString>>;
543
+ connections: z.ZodOptional<z.ZodArray<z.ZodString>>;
544
+ output: z.ZodDefault<z.ZodObject<{
545
+ format: z.ZodEnum<{
546
+ json: "json";
547
+ markdown: "markdown";
548
+ text: "text";
549
+ }>;
550
+ fields: z.ZodOptional<z.ZodArray<z.ZodObject<{
551
+ id: z.ZodString;
552
+ kind: z.ZodEnum<{
553
+ choice: "choice";
554
+ list: "list";
555
+ number: "number";
556
+ score: "score";
557
+ table: "table";
558
+ text: "text";
559
+ yesno: "yesno";
560
+ }>;
561
+ description: z.ZodOptional<z.ZodString>;
562
+ columns: z.ZodOptional<z.ZodArray<z.ZodString>>;
563
+ options: z.ZodOptional<z.ZodArray<z.ZodString>>;
564
+ }, z.core.$strip>>>;
565
+ schema: z.ZodOptional<z.ZodType<ObjectShape, unknown, z.core.$ZodTypeInternals<ObjectShape, unknown>>>;
566
+ surface: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodArray<z.ZodObject<{
567
+ id: z.ZodString;
568
+ component: z.ZodEnum<{
569
+ Actions: "Actions";
570
+ Badge: "Badge";
571
+ BarChart: "BarChart";
572
+ Button: "Button";
573
+ Callout: "Callout";
574
+ Card: "Card";
575
+ Checklist: "Checklist";
576
+ Chips: "Chips";
577
+ Column: "Column";
578
+ DetailGrid: "DetailGrid";
579
+ DonutChart: "DonutChart";
580
+ Fold: "Fold";
581
+ Grid: "Grid";
582
+ Group: "Group";
583
+ Image: "Image";
584
+ LineChart: "LineChart";
585
+ Link: "Link";
586
+ List: "List";
587
+ Metric: "Metric";
588
+ Row: "Row";
589
+ Steps: "Steps";
590
+ Table: "Table";
591
+ Tabs: "Tabs";
592
+ Text: "Text";
593
+ }>;
594
+ children: z.ZodOptional<z.ZodUnion<readonly [z.ZodArray<z.ZodString>, z.ZodObject<{
595
+ path: z.ZodString;
596
+ componentId: z.ZodString;
597
+ }, z.core.$strip>]>>;
598
+ }, z.core.$loose>>]>>;
599
+ }, z.core.$strip>>;
600
+ model: z.ZodOptional<z.ZodEnum<{
601
+ classifier: "classifier";
602
+ high: "high";
603
+ highest: "highest";
604
+ standard: "standard";
605
+ }>>;
606
+ effort: z.ZodOptional<z.ZodEnum<{
607
+ high: "high";
608
+ low: "low";
609
+ medium: "medium";
610
+ }>>;
611
+ each: z.ZodOptional<z.ZodString>;
612
+ working: z.ZodOptional<z.ZodString>;
613
+ }, z.core.$strip>;
614
+ export declare const generateStepSchema: z.ZodObject<{
615
+ id: z.ZodString;
616
+ title: z.ZodString;
617
+ description: z.ZodOptional<z.ZodString>;
618
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
619
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
620
+ field: z.ZodString;
621
+ op: z.ZodEnum<{
622
+ contains: "contains";
623
+ empty: "empty";
624
+ equals: "equals";
625
+ gt: "gt";
626
+ in: "in";
627
+ lt: "lt";
628
+ notEmpty: "notEmpty";
629
+ notEquals: "notEquals";
630
+ }>;
631
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
632
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
633
+ field: z.ZodString;
634
+ op: z.ZodEnum<{
635
+ contains: "contains";
636
+ empty: "empty";
637
+ equals: "equals";
638
+ gt: "gt";
639
+ in: "in";
640
+ lt: "lt";
641
+ notEmpty: "notEmpty";
642
+ notEquals: "notEquals";
643
+ }>;
644
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
645
+ }, z.core.$strip>>]>>;
646
+ ask: z.ZodOptional<z.ZodString>;
647
+ goto: z.ZodString;
648
+ max: z.ZodOptional<z.ZodNumber>;
649
+ }, z.core.$strip>>>;
650
+ type: z.ZodLiteral<"generate">;
651
+ asset: z.ZodEnum<{
652
+ dashboard: "dashboard";
653
+ document: "document";
654
+ image: "image";
655
+ video: "video";
656
+ voice: "voice";
657
+ }>;
658
+ prompt: z.ZodString;
659
+ options: z.ZodOptional<z.ZodObject<{
660
+ aspectRatio: z.ZodOptional<z.ZodEnum<{
661
+ "16:9": "16:9";
662
+ "1:1": "1:1";
663
+ "2:3": "2:3";
664
+ "3:2": "3:2";
665
+ "4:5": "4:5";
666
+ "9:16": "9:16";
667
+ }>>;
668
+ duration: z.ZodOptional<z.ZodNumber>;
669
+ resolution: z.ZodOptional<z.ZodEnum<{
670
+ "480p": "480p";
671
+ "720p": "720p";
672
+ }>>;
673
+ style: z.ZodOptional<z.ZodString>;
674
+ template: z.ZodOptional<z.ZodEnum<{
675
+ briefing: "briefing";
676
+ free: "free";
677
+ invoice: "invoice";
678
+ letter: "letter";
679
+ offer: "offer";
680
+ report: "report";
681
+ }>>;
682
+ }, z.core.$strip>>;
683
+ referenceImage: z.ZodOptional<z.ZodString>;
684
+ each: z.ZodOptional<z.ZodString>;
685
+ model: z.ZodOptional<z.ZodEnum<{
686
+ classifier: "classifier";
687
+ high: "high";
688
+ highest: "highest";
689
+ standard: "standard";
690
+ }>>;
691
+ effort: z.ZodOptional<z.ZodEnum<{
692
+ high: "high";
693
+ low: "low";
694
+ medium: "medium";
695
+ }>>;
696
+ working: z.ZodOptional<z.ZodString>;
697
+ }, z.core.$strip>;
698
+ export declare const widgetStepSchema: z.ZodObject<{
699
+ id: z.ZodString;
700
+ title: z.ZodString;
701
+ description: z.ZodOptional<z.ZodString>;
702
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
703
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
704
+ field: z.ZodString;
705
+ op: z.ZodEnum<{
706
+ contains: "contains";
707
+ empty: "empty";
708
+ equals: "equals";
709
+ gt: "gt";
710
+ in: "in";
711
+ lt: "lt";
712
+ notEmpty: "notEmpty";
713
+ notEquals: "notEquals";
714
+ }>;
715
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
716
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
717
+ field: z.ZodString;
718
+ op: z.ZodEnum<{
719
+ contains: "contains";
720
+ empty: "empty";
721
+ equals: "equals";
722
+ gt: "gt";
723
+ in: "in";
724
+ lt: "lt";
725
+ notEmpty: "notEmpty";
726
+ notEquals: "notEquals";
727
+ }>;
728
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
729
+ }, z.core.$strip>>]>>;
730
+ ask: z.ZodOptional<z.ZodString>;
731
+ goto: z.ZodString;
732
+ max: z.ZodOptional<z.ZodNumber>;
733
+ }, z.core.$strip>>>;
734
+ type: z.ZodLiteral<"widget">;
735
+ entry: z.ZodString;
736
+ data: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
737
+ sample: z.ZodOptional<z.ZodString>;
738
+ layout: z.ZodOptional<z.ZodEnum<{
739
+ fixed: "fixed";
740
+ page: "page";
741
+ }>>;
742
+ size: z.ZodOptional<z.ZodObject<{
743
+ width: z.ZodNumber;
744
+ height: z.ZodNumber;
745
+ }, z.core.$strip>>;
746
+ video: z.ZodOptional<z.ZodBoolean>;
747
+ working: z.ZodOptional<z.ZodString>;
748
+ }, z.core.$strip>;
749
+ /** Formats a film step makes; the composition is drawn for this frame. */
750
+ export declare const FILM_FORMATS: readonly ["16:9", "9:16", "1:1"];
751
+ export type FilmFormat = (typeof FILM_FORMATS)[number];
752
+ export declare const FILM_SIZES: Record<FilmFormat, {
753
+ width: number;
754
+ height: number;
755
+ }>;
756
+ /**
757
+ * A film the AI client installed on this machine makes in a folder of its own: it writes the
758
+ * composition as code (HTML, CSS, JS) with the skills it is given, looks at its frames and fixes
759
+ * them; the runtime renders the MP4. It runs on the person's subscription, never on credits.
760
+ */
761
+ export declare const filmStepSchema: z.ZodObject<{
762
+ id: z.ZodString;
763
+ title: z.ZodString;
764
+ description: z.ZodOptional<z.ZodString>;
765
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
766
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
767
+ field: z.ZodString;
768
+ op: z.ZodEnum<{
769
+ contains: "contains";
770
+ empty: "empty";
771
+ equals: "equals";
772
+ gt: "gt";
773
+ in: "in";
774
+ lt: "lt";
775
+ notEmpty: "notEmpty";
776
+ notEquals: "notEquals";
777
+ }>;
778
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
779
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
780
+ field: z.ZodString;
781
+ op: z.ZodEnum<{
782
+ contains: "contains";
783
+ empty: "empty";
784
+ equals: "equals";
785
+ gt: "gt";
786
+ in: "in";
787
+ lt: "lt";
788
+ notEmpty: "notEmpty";
789
+ notEquals: "notEquals";
790
+ }>;
791
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
792
+ }, z.core.$strip>>]>>;
793
+ ask: z.ZodOptional<z.ZodString>;
794
+ goto: z.ZodString;
795
+ max: z.ZodOptional<z.ZodNumber>;
796
+ }, z.core.$strip>>>;
797
+ type: z.ZodLiteral<"film">;
798
+ brief: z.ZodString;
799
+ skills: z.ZodDefault<z.ZodArray<z.ZodString>>;
800
+ kit: z.ZodOptional<z.ZodString>;
801
+ inputs: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
802
+ format: z.ZodDefault<z.ZodEnum<{
803
+ "16:9": "16:9";
804
+ "1:1": "1:1";
805
+ "9:16": "9:16";
806
+ }>>;
807
+ seconds: z.ZodOptional<z.ZodNumber>;
808
+ model: z.ZodOptional<z.ZodEnum<{
809
+ classifier: "classifier";
810
+ high: "high";
811
+ highest: "highest";
812
+ standard: "standard";
813
+ }>>;
814
+ effort: z.ZodOptional<z.ZodEnum<{
815
+ high: "high";
816
+ low: "low";
817
+ medium: "medium";
818
+ }>>;
819
+ working: z.ZodOptional<z.ZodString>;
820
+ }, z.core.$strip>;
821
+ /** A piece a decided surface may show: its components (the first has the piece's id) and what it shows. */
822
+ export declare const surfaceCandidateSchema: z.ZodObject<{
823
+ id: z.ZodString;
824
+ description: z.ZodString;
825
+ components: z.ZodArray<z.ZodObject<{
826
+ id: z.ZodString;
827
+ component: z.ZodEnum<{
828
+ Actions: "Actions";
829
+ Badge: "Badge";
830
+ BarChart: "BarChart";
831
+ Button: "Button";
832
+ Callout: "Callout";
833
+ Card: "Card";
834
+ Checklist: "Checklist";
835
+ Chips: "Chips";
836
+ Column: "Column";
837
+ DetailGrid: "DetailGrid";
838
+ DonutChart: "DonutChart";
839
+ Fold: "Fold";
840
+ Grid: "Grid";
841
+ Group: "Group";
842
+ Image: "Image";
843
+ LineChart: "LineChart";
844
+ Link: "Link";
845
+ List: "List";
846
+ Metric: "Metric";
847
+ Row: "Row";
848
+ Steps: "Steps";
849
+ Table: "Table";
850
+ Tabs: "Tabs";
851
+ Text: "Text";
852
+ }>;
853
+ children: z.ZodOptional<z.ZodUnion<readonly [z.ZodArray<z.ZodString>, z.ZodObject<{
854
+ path: z.ZodString;
855
+ componentId: z.ZodString;
856
+ }, z.core.$strip>]>>;
857
+ }, z.core.$loose>>;
858
+ group: z.ZodOptional<z.ZodString>;
859
+ required: z.ZodOptional<z.ZodBoolean>;
860
+ }, z.core.$strip>;
861
+ export declare const surfaceStepSchema: z.ZodObject<{
862
+ id: z.ZodString;
863
+ title: z.ZodString;
864
+ description: z.ZodOptional<z.ZodString>;
865
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
866
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
867
+ field: z.ZodString;
868
+ op: z.ZodEnum<{
869
+ contains: "contains";
870
+ empty: "empty";
871
+ equals: "equals";
872
+ gt: "gt";
873
+ in: "in";
874
+ lt: "lt";
875
+ notEmpty: "notEmpty";
876
+ notEquals: "notEquals";
877
+ }>;
878
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
879
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
880
+ field: z.ZodString;
881
+ op: z.ZodEnum<{
882
+ contains: "contains";
883
+ empty: "empty";
884
+ equals: "equals";
885
+ gt: "gt";
886
+ in: "in";
887
+ lt: "lt";
888
+ notEmpty: "notEmpty";
889
+ notEquals: "notEquals";
890
+ }>;
891
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
892
+ }, z.core.$strip>>]>>;
893
+ ask: z.ZodOptional<z.ZodString>;
894
+ goto: z.ZodString;
895
+ max: z.ZodOptional<z.ZodNumber>;
896
+ }, z.core.$strip>>>;
897
+ type: z.ZodLiteral<"surface">;
898
+ components: z.ZodOptional<z.ZodArray<z.ZodObject<{
899
+ id: z.ZodString;
900
+ component: z.ZodEnum<{
901
+ Actions: "Actions";
902
+ Badge: "Badge";
903
+ BarChart: "BarChart";
904
+ Button: "Button";
905
+ Callout: "Callout";
906
+ Card: "Card";
907
+ Checklist: "Checklist";
908
+ Chips: "Chips";
909
+ Column: "Column";
910
+ DetailGrid: "DetailGrid";
911
+ DonutChart: "DonutChart";
912
+ Fold: "Fold";
913
+ Grid: "Grid";
914
+ Group: "Group";
915
+ Image: "Image";
916
+ LineChart: "LineChart";
917
+ Link: "Link";
918
+ List: "List";
919
+ Metric: "Metric";
920
+ Row: "Row";
921
+ Steps: "Steps";
922
+ Table: "Table";
923
+ Tabs: "Tabs";
924
+ Text: "Text";
925
+ }>;
926
+ children: z.ZodOptional<z.ZodUnion<readonly [z.ZodArray<z.ZodString>, z.ZodObject<{
927
+ path: z.ZodString;
928
+ componentId: z.ZodString;
929
+ }, z.core.$strip>]>>;
930
+ }, z.core.$loose>>>;
931
+ candidates: z.ZodOptional<z.ZodArray<z.ZodObject<{
932
+ id: z.ZodString;
933
+ description: z.ZodString;
934
+ components: z.ZodArray<z.ZodObject<{
935
+ id: z.ZodString;
936
+ component: z.ZodEnum<{
937
+ Actions: "Actions";
938
+ Badge: "Badge";
939
+ BarChart: "BarChart";
940
+ Button: "Button";
941
+ Callout: "Callout";
942
+ Card: "Card";
943
+ Checklist: "Checklist";
944
+ Chips: "Chips";
945
+ Column: "Column";
946
+ DetailGrid: "DetailGrid";
947
+ DonutChart: "DonutChart";
948
+ Fold: "Fold";
949
+ Grid: "Grid";
950
+ Group: "Group";
951
+ Image: "Image";
952
+ LineChart: "LineChart";
953
+ Link: "Link";
954
+ List: "List";
955
+ Metric: "Metric";
956
+ Row: "Row";
957
+ Steps: "Steps";
958
+ Table: "Table";
959
+ Tabs: "Tabs";
960
+ Text: "Text";
961
+ }>;
962
+ children: z.ZodOptional<z.ZodUnion<readonly [z.ZodArray<z.ZodString>, z.ZodObject<{
963
+ path: z.ZodString;
964
+ componentId: z.ZodString;
965
+ }, z.core.$strip>]>>;
966
+ }, z.core.$loose>>;
967
+ group: z.ZodOptional<z.ZodString>;
968
+ required: z.ZodOptional<z.ZodBoolean>;
969
+ }, z.core.$strip>>>;
970
+ groups: z.ZodOptional<z.ZodArray<z.ZodObject<{
971
+ id: z.ZodString;
972
+ instructions: z.ZodString;
973
+ optional: z.ZodOptional<z.ZodBoolean>;
974
+ }, z.core.$strip>>>;
975
+ data: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
976
+ working: z.ZodOptional<z.ZodString>;
977
+ }, z.core.$strip>;
978
+ /**
979
+ * The components of a decided surface for the pieces kept: one root column holding them in
980
+ * their order. Every piece kept is the same as all of them for the validator.
981
+ */
982
+ export declare function assembleSurface(candidates: {
983
+ id: string;
984
+ components: SurfaceComponent[];
985
+ }[], kept: Iterable<string>): SurfaceComponent[];
986
+ export declare const reviewStepSchema: z.ZodObject<{
987
+ id: z.ZodString;
988
+ title: z.ZodString;
989
+ description: z.ZodOptional<z.ZodString>;
990
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
991
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
992
+ field: z.ZodString;
993
+ op: z.ZodEnum<{
994
+ contains: "contains";
995
+ empty: "empty";
996
+ equals: "equals";
997
+ gt: "gt";
998
+ in: "in";
999
+ lt: "lt";
1000
+ notEmpty: "notEmpty";
1001
+ notEquals: "notEquals";
1002
+ }>;
1003
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1004
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
1005
+ field: z.ZodString;
1006
+ op: z.ZodEnum<{
1007
+ contains: "contains";
1008
+ empty: "empty";
1009
+ equals: "equals";
1010
+ gt: "gt";
1011
+ in: "in";
1012
+ lt: "lt";
1013
+ notEmpty: "notEmpty";
1014
+ notEquals: "notEquals";
1015
+ }>;
1016
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1017
+ }, z.core.$strip>>]>>;
1018
+ ask: z.ZodOptional<z.ZodString>;
1019
+ goto: z.ZodString;
1020
+ max: z.ZodOptional<z.ZodNumber>;
1021
+ }, z.core.$strip>>>;
1022
+ type: z.ZodLiteral<"review">;
1023
+ show: z.ZodArray<z.ZodString>;
1024
+ edit: z.ZodOptional<z.ZodBoolean>;
1025
+ regenerate: z.ZodOptional<z.ZodBoolean>;
1026
+ }, z.core.$strip>;
1027
+ export declare const deliverableSchema: z.ZodObject<{
1028
+ from: z.ZodString;
1029
+ label: z.ZodOptional<z.ZodString>;
1030
+ formats: z.ZodArray<z.ZodEnum<{
1031
+ csv: "csv";
1032
+ docx: "docx";
1033
+ html: "html";
1034
+ json: "json";
1035
+ md: "md";
1036
+ mp3: "mp3";
1037
+ mp4: "mp4";
1038
+ pdf: "pdf";
1039
+ png: "png";
1040
+ txt: "txt";
1041
+ xlsx: "xlsx";
1042
+ zip: "zip";
1043
+ }>>;
1044
+ }, z.core.$strip>;
1045
+ export declare const resultStepSchema: z.ZodObject<{
1046
+ id: z.ZodString;
1047
+ title: z.ZodString;
1048
+ description: z.ZodOptional<z.ZodString>;
1049
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
1050
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1051
+ field: z.ZodString;
1052
+ op: z.ZodEnum<{
1053
+ contains: "contains";
1054
+ empty: "empty";
1055
+ equals: "equals";
1056
+ gt: "gt";
1057
+ in: "in";
1058
+ lt: "lt";
1059
+ notEmpty: "notEmpty";
1060
+ notEquals: "notEquals";
1061
+ }>;
1062
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1063
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
1064
+ field: z.ZodString;
1065
+ op: z.ZodEnum<{
1066
+ contains: "contains";
1067
+ empty: "empty";
1068
+ equals: "equals";
1069
+ gt: "gt";
1070
+ in: "in";
1071
+ lt: "lt";
1072
+ notEmpty: "notEmpty";
1073
+ notEquals: "notEquals";
1074
+ }>;
1075
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1076
+ }, z.core.$strip>>]>>;
1077
+ ask: z.ZodOptional<z.ZodString>;
1078
+ goto: z.ZodString;
1079
+ max: z.ZodOptional<z.ZodNumber>;
1080
+ }, z.core.$strip>>>;
1081
+ type: z.ZodLiteral<"result">;
1082
+ message: z.ZodOptional<z.ZodString>;
1083
+ deliverables: z.ZodArray<z.ZodObject<{
1084
+ from: z.ZodString;
1085
+ label: z.ZodOptional<z.ZodString>;
1086
+ formats: z.ZodArray<z.ZodEnum<{
1087
+ csv: "csv";
1088
+ docx: "docx";
1089
+ html: "html";
1090
+ json: "json";
1091
+ md: "md";
1092
+ mp3: "mp3";
1093
+ mp4: "mp4";
1094
+ pdf: "pdf";
1095
+ png: "png";
1096
+ txt: "txt";
1097
+ xlsx: "xlsx";
1098
+ zip: "zip";
1099
+ }>>;
1100
+ }, z.core.$strip>>;
1101
+ }, z.core.$strip>;
1102
+ export declare const stepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
1103
+ id: z.ZodString;
1104
+ title: z.ZodString;
1105
+ description: z.ZodOptional<z.ZodString>;
1106
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
1107
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1108
+ field: z.ZodString;
1109
+ op: z.ZodEnum<{
1110
+ contains: "contains";
1111
+ empty: "empty";
1112
+ equals: "equals";
1113
+ gt: "gt";
1114
+ in: "in";
1115
+ lt: "lt";
1116
+ notEmpty: "notEmpty";
1117
+ notEquals: "notEquals";
1118
+ }>;
1119
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1120
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
1121
+ field: z.ZodString;
1122
+ op: z.ZodEnum<{
1123
+ contains: "contains";
1124
+ empty: "empty";
1125
+ equals: "equals";
1126
+ gt: "gt";
1127
+ in: "in";
1128
+ lt: "lt";
1129
+ notEmpty: "notEmpty";
1130
+ notEquals: "notEquals";
1131
+ }>;
1132
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1133
+ }, z.core.$strip>>]>>;
1134
+ ask: z.ZodOptional<z.ZodString>;
1135
+ goto: z.ZodString;
1136
+ max: z.ZodOptional<z.ZodNumber>;
1137
+ }, z.core.$strip>>>;
1138
+ type: z.ZodLiteral<"page">;
1139
+ fields: z.ZodArray<z.ZodObject<{
1140
+ id: z.ZodString;
1141
+ label: z.ZodString;
1142
+ kind: z.ZodEnum<{
1143
+ audio: "audio";
1144
+ color: "color";
1145
+ connection: "connection";
1146
+ date: "date";
1147
+ email: "email";
1148
+ file: "file";
1149
+ image: "image";
1150
+ items: "items";
1151
+ list: "list";
1152
+ location: "location";
1153
+ multiselect: "multiselect";
1154
+ number: "number";
1155
+ select: "select";
1156
+ signature: "signature";
1157
+ slot: "slot";
1158
+ text: "text";
1159
+ textarea: "textarea";
1160
+ toggle: "toggle";
1161
+ url: "url";
1162
+ }>;
1163
+ required: z.ZodOptional<z.ZodBoolean>;
1164
+ placeholder: z.ZodOptional<z.ZodString>;
1165
+ help: z.ZodOptional<z.ZodString>;
1166
+ options: z.ZodOptional<z.ZodArray<z.ZodString>>;
1167
+ default: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1168
+ columns: z.ZodOptional<z.ZodArray<z.ZodObject<{
1169
+ id: z.ZodString;
1170
+ label: z.ZodString;
1171
+ kind: z.ZodEnum<{
1172
+ money: "money";
1173
+ number: "number";
1174
+ text: "text";
1175
+ }>;
1176
+ }, z.core.$strip>>>;
1177
+ vat: z.ZodOptional<z.ZodObject<{
1178
+ rate: z.ZodOptional<z.ZodNumber>;
1179
+ field: z.ZodOptional<z.ZodString>;
1180
+ }, z.core.$strip>>;
1181
+ currency: z.ZodOptional<z.ZodString>;
1182
+ multiple: z.ZodOptional<z.ZodBoolean>;
1183
+ min: z.ZodOptional<z.ZodNumber>;
1184
+ max: z.ZodOptional<z.ZodNumber>;
1185
+ camera: z.ZodOptional<z.ZodBoolean>;
1186
+ video: z.ZodOptional<z.ZodBoolean>;
1187
+ listen: z.ZodOptional<z.ZodBoolean>;
1188
+ scan: z.ZodOptional<z.ZodBoolean>;
1189
+ connection: z.ZodOptional<z.ZodString>;
1190
+ list: z.ZodOptional<z.ZodString>;
1191
+ prefill: z.ZodOptional<z.ZodString>;
1192
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1193
+ field: z.ZodString;
1194
+ op: z.ZodEnum<{
1195
+ contains: "contains";
1196
+ empty: "empty";
1197
+ equals: "equals";
1198
+ gt: "gt";
1199
+ in: "in";
1200
+ lt: "lt";
1201
+ notEmpty: "notEmpty";
1202
+ notEquals: "notEquals";
1203
+ }>;
1204
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1205
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
1206
+ field: z.ZodString;
1207
+ op: z.ZodEnum<{
1208
+ contains: "contains";
1209
+ empty: "empty";
1210
+ equals: "equals";
1211
+ gt: "gt";
1212
+ in: "in";
1213
+ lt: "lt";
1214
+ notEmpty: "notEmpty";
1215
+ notEquals: "notEquals";
1216
+ }>;
1217
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1218
+ }, z.core.$strip>>]>>;
1219
+ optionsFrom: z.ZodOptional<z.ZodString>;
1220
+ cards: z.ZodOptional<z.ZodObject<{
1221
+ label: z.ZodString;
1222
+ value: z.ZodOptional<z.ZodString>;
1223
+ image: z.ZodOptional<z.ZodString>;
1224
+ subtitle: z.ZodOptional<z.ZodString>;
1225
+ meta: z.ZodOptional<z.ZodString>;
1226
+ link: z.ZodOptional<z.ZodString>;
1227
+ }, z.core.$strip>>;
1228
+ ask: z.ZodOptional<z.ZodString>;
1229
+ group: z.ZodOptional<z.ZodString>;
1230
+ }, z.core.$strip>>;
1231
+ groups: z.ZodOptional<z.ZodArray<z.ZodObject<{
1232
+ id: z.ZodString;
1233
+ instructions: z.ZodString;
1234
+ optional: z.ZodOptional<z.ZodBoolean>;
1235
+ }, z.core.$strip>>>;
1236
+ cta: z.ZodOptional<z.ZodString>;
1237
+ }, z.core.$strip>, z.ZodObject<{
1238
+ id: z.ZodString;
1239
+ title: z.ZodString;
1240
+ description: z.ZodOptional<z.ZodString>;
1241
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
1242
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1243
+ field: z.ZodString;
1244
+ op: z.ZodEnum<{
1245
+ contains: "contains";
1246
+ empty: "empty";
1247
+ equals: "equals";
1248
+ gt: "gt";
1249
+ in: "in";
1250
+ lt: "lt";
1251
+ notEmpty: "notEmpty";
1252
+ notEquals: "notEquals";
1253
+ }>;
1254
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1255
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
1256
+ field: z.ZodString;
1257
+ op: z.ZodEnum<{
1258
+ contains: "contains";
1259
+ empty: "empty";
1260
+ equals: "equals";
1261
+ gt: "gt";
1262
+ in: "in";
1263
+ lt: "lt";
1264
+ notEmpty: "notEmpty";
1265
+ notEquals: "notEquals";
1266
+ }>;
1267
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1268
+ }, z.core.$strip>>]>>;
1269
+ ask: z.ZodOptional<z.ZodString>;
1270
+ goto: z.ZodString;
1271
+ max: z.ZodOptional<z.ZodNumber>;
1272
+ }, z.core.$strip>>>;
1273
+ type: z.ZodLiteral<"agent">;
1274
+ instructions: z.ZodDefault<z.ZodString>;
1275
+ call: z.ZodOptional<z.ZodObject<{
1276
+ tool: z.ZodTemplateLiteral<`${string}.${string}`>;
1277
+ input: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1278
+ }, z.core.$strip>>;
1279
+ tools: z.ZodDefault<z.ZodArray<z.ZodUnion<readonly [z.ZodEnum<{
1280
+ browser: "browser";
1281
+ http: "http";
1282
+ image: "image";
1283
+ pages: "pages";
1284
+ sandbox: "sandbox";
1285
+ web_fetch: "web_fetch";
1286
+ web_search: "web_search";
1287
+ }>, z.ZodTemplateLiteral<`${string}.${string}`>]>>>;
1288
+ mcp: z.ZodOptional<z.ZodArray<z.ZodString>>;
1289
+ connections: z.ZodOptional<z.ZodArray<z.ZodString>>;
1290
+ output: z.ZodDefault<z.ZodObject<{
1291
+ format: z.ZodEnum<{
1292
+ json: "json";
1293
+ markdown: "markdown";
1294
+ text: "text";
1295
+ }>;
1296
+ fields: z.ZodOptional<z.ZodArray<z.ZodObject<{
1297
+ id: z.ZodString;
1298
+ kind: z.ZodEnum<{
1299
+ choice: "choice";
1300
+ list: "list";
1301
+ number: "number";
1302
+ score: "score";
1303
+ table: "table";
1304
+ text: "text";
1305
+ yesno: "yesno";
1306
+ }>;
1307
+ description: z.ZodOptional<z.ZodString>;
1308
+ columns: z.ZodOptional<z.ZodArray<z.ZodString>>;
1309
+ options: z.ZodOptional<z.ZodArray<z.ZodString>>;
1310
+ }, z.core.$strip>>>;
1311
+ schema: z.ZodOptional<z.ZodType<ObjectShape, unknown, z.core.$ZodTypeInternals<ObjectShape, unknown>>>;
1312
+ surface: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodArray<z.ZodObject<{
1313
+ id: z.ZodString;
1314
+ component: z.ZodEnum<{
1315
+ Actions: "Actions";
1316
+ Badge: "Badge";
1317
+ BarChart: "BarChart";
1318
+ Button: "Button";
1319
+ Callout: "Callout";
1320
+ Card: "Card";
1321
+ Checklist: "Checklist";
1322
+ Chips: "Chips";
1323
+ Column: "Column";
1324
+ DetailGrid: "DetailGrid";
1325
+ DonutChart: "DonutChart";
1326
+ Fold: "Fold";
1327
+ Grid: "Grid";
1328
+ Group: "Group";
1329
+ Image: "Image";
1330
+ LineChart: "LineChart";
1331
+ Link: "Link";
1332
+ List: "List";
1333
+ Metric: "Metric";
1334
+ Row: "Row";
1335
+ Steps: "Steps";
1336
+ Table: "Table";
1337
+ Tabs: "Tabs";
1338
+ Text: "Text";
1339
+ }>;
1340
+ children: z.ZodOptional<z.ZodUnion<readonly [z.ZodArray<z.ZodString>, z.ZodObject<{
1341
+ path: z.ZodString;
1342
+ componentId: z.ZodString;
1343
+ }, z.core.$strip>]>>;
1344
+ }, z.core.$loose>>]>>;
1345
+ }, z.core.$strip>>;
1346
+ model: z.ZodOptional<z.ZodEnum<{
1347
+ classifier: "classifier";
1348
+ high: "high";
1349
+ highest: "highest";
1350
+ standard: "standard";
1351
+ }>>;
1352
+ effort: z.ZodOptional<z.ZodEnum<{
1353
+ high: "high";
1354
+ low: "low";
1355
+ medium: "medium";
1356
+ }>>;
1357
+ each: z.ZodOptional<z.ZodString>;
1358
+ working: z.ZodOptional<z.ZodString>;
1359
+ }, z.core.$strip>, z.ZodObject<{
1360
+ id: z.ZodString;
1361
+ title: z.ZodString;
1362
+ description: z.ZodOptional<z.ZodString>;
1363
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
1364
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1365
+ field: z.ZodString;
1366
+ op: z.ZodEnum<{
1367
+ contains: "contains";
1368
+ empty: "empty";
1369
+ equals: "equals";
1370
+ gt: "gt";
1371
+ in: "in";
1372
+ lt: "lt";
1373
+ notEmpty: "notEmpty";
1374
+ notEquals: "notEquals";
1375
+ }>;
1376
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1377
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
1378
+ field: z.ZodString;
1379
+ op: z.ZodEnum<{
1380
+ contains: "contains";
1381
+ empty: "empty";
1382
+ equals: "equals";
1383
+ gt: "gt";
1384
+ in: "in";
1385
+ lt: "lt";
1386
+ notEmpty: "notEmpty";
1387
+ notEquals: "notEquals";
1388
+ }>;
1389
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1390
+ }, z.core.$strip>>]>>;
1391
+ ask: z.ZodOptional<z.ZodString>;
1392
+ goto: z.ZodString;
1393
+ max: z.ZodOptional<z.ZodNumber>;
1394
+ }, z.core.$strip>>>;
1395
+ type: z.ZodLiteral<"generate">;
1396
+ asset: z.ZodEnum<{
1397
+ dashboard: "dashboard";
1398
+ document: "document";
1399
+ image: "image";
1400
+ video: "video";
1401
+ voice: "voice";
1402
+ }>;
1403
+ prompt: z.ZodString;
1404
+ options: z.ZodOptional<z.ZodObject<{
1405
+ aspectRatio: z.ZodOptional<z.ZodEnum<{
1406
+ "16:9": "16:9";
1407
+ "1:1": "1:1";
1408
+ "2:3": "2:3";
1409
+ "3:2": "3:2";
1410
+ "4:5": "4:5";
1411
+ "9:16": "9:16";
1412
+ }>>;
1413
+ duration: z.ZodOptional<z.ZodNumber>;
1414
+ resolution: z.ZodOptional<z.ZodEnum<{
1415
+ "480p": "480p";
1416
+ "720p": "720p";
1417
+ }>>;
1418
+ style: z.ZodOptional<z.ZodString>;
1419
+ template: z.ZodOptional<z.ZodEnum<{
1420
+ briefing: "briefing";
1421
+ free: "free";
1422
+ invoice: "invoice";
1423
+ letter: "letter";
1424
+ offer: "offer";
1425
+ report: "report";
1426
+ }>>;
1427
+ }, z.core.$strip>>;
1428
+ referenceImage: z.ZodOptional<z.ZodString>;
1429
+ each: z.ZodOptional<z.ZodString>;
1430
+ model: z.ZodOptional<z.ZodEnum<{
1431
+ classifier: "classifier";
1432
+ high: "high";
1433
+ highest: "highest";
1434
+ standard: "standard";
1435
+ }>>;
1436
+ effort: z.ZodOptional<z.ZodEnum<{
1437
+ high: "high";
1438
+ low: "low";
1439
+ medium: "medium";
1440
+ }>>;
1441
+ working: z.ZodOptional<z.ZodString>;
1442
+ }, z.core.$strip>, z.ZodObject<{
1443
+ id: z.ZodString;
1444
+ title: z.ZodString;
1445
+ description: z.ZodOptional<z.ZodString>;
1446
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
1447
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1448
+ field: z.ZodString;
1449
+ op: z.ZodEnum<{
1450
+ contains: "contains";
1451
+ empty: "empty";
1452
+ equals: "equals";
1453
+ gt: "gt";
1454
+ in: "in";
1455
+ lt: "lt";
1456
+ notEmpty: "notEmpty";
1457
+ notEquals: "notEquals";
1458
+ }>;
1459
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1460
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
1461
+ field: z.ZodString;
1462
+ op: z.ZodEnum<{
1463
+ contains: "contains";
1464
+ empty: "empty";
1465
+ equals: "equals";
1466
+ gt: "gt";
1467
+ in: "in";
1468
+ lt: "lt";
1469
+ notEmpty: "notEmpty";
1470
+ notEquals: "notEquals";
1471
+ }>;
1472
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1473
+ }, z.core.$strip>>]>>;
1474
+ ask: z.ZodOptional<z.ZodString>;
1475
+ goto: z.ZodString;
1476
+ max: z.ZodOptional<z.ZodNumber>;
1477
+ }, z.core.$strip>>>;
1478
+ type: z.ZodLiteral<"widget">;
1479
+ entry: z.ZodString;
1480
+ data: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
1481
+ sample: z.ZodOptional<z.ZodString>;
1482
+ layout: z.ZodOptional<z.ZodEnum<{
1483
+ fixed: "fixed";
1484
+ page: "page";
1485
+ }>>;
1486
+ size: z.ZodOptional<z.ZodObject<{
1487
+ width: z.ZodNumber;
1488
+ height: z.ZodNumber;
1489
+ }, z.core.$strip>>;
1490
+ video: z.ZodOptional<z.ZodBoolean>;
1491
+ working: z.ZodOptional<z.ZodString>;
1492
+ }, z.core.$strip>, z.ZodObject<{
1493
+ id: z.ZodString;
1494
+ title: z.ZodString;
1495
+ description: z.ZodOptional<z.ZodString>;
1496
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
1497
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1498
+ field: z.ZodString;
1499
+ op: z.ZodEnum<{
1500
+ contains: "contains";
1501
+ empty: "empty";
1502
+ equals: "equals";
1503
+ gt: "gt";
1504
+ in: "in";
1505
+ lt: "lt";
1506
+ notEmpty: "notEmpty";
1507
+ notEquals: "notEquals";
1508
+ }>;
1509
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1510
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
1511
+ field: z.ZodString;
1512
+ op: z.ZodEnum<{
1513
+ contains: "contains";
1514
+ empty: "empty";
1515
+ equals: "equals";
1516
+ gt: "gt";
1517
+ in: "in";
1518
+ lt: "lt";
1519
+ notEmpty: "notEmpty";
1520
+ notEquals: "notEquals";
1521
+ }>;
1522
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1523
+ }, z.core.$strip>>]>>;
1524
+ ask: z.ZodOptional<z.ZodString>;
1525
+ goto: z.ZodString;
1526
+ max: z.ZodOptional<z.ZodNumber>;
1527
+ }, z.core.$strip>>>;
1528
+ type: z.ZodLiteral<"surface">;
1529
+ components: z.ZodOptional<z.ZodArray<z.ZodObject<{
1530
+ id: z.ZodString;
1531
+ component: z.ZodEnum<{
1532
+ Actions: "Actions";
1533
+ Badge: "Badge";
1534
+ BarChart: "BarChart";
1535
+ Button: "Button";
1536
+ Callout: "Callout";
1537
+ Card: "Card";
1538
+ Checklist: "Checklist";
1539
+ Chips: "Chips";
1540
+ Column: "Column";
1541
+ DetailGrid: "DetailGrid";
1542
+ DonutChart: "DonutChart";
1543
+ Fold: "Fold";
1544
+ Grid: "Grid";
1545
+ Group: "Group";
1546
+ Image: "Image";
1547
+ LineChart: "LineChart";
1548
+ Link: "Link";
1549
+ List: "List";
1550
+ Metric: "Metric";
1551
+ Row: "Row";
1552
+ Steps: "Steps";
1553
+ Table: "Table";
1554
+ Tabs: "Tabs";
1555
+ Text: "Text";
1556
+ }>;
1557
+ children: z.ZodOptional<z.ZodUnion<readonly [z.ZodArray<z.ZodString>, z.ZodObject<{
1558
+ path: z.ZodString;
1559
+ componentId: z.ZodString;
1560
+ }, z.core.$strip>]>>;
1561
+ }, z.core.$loose>>>;
1562
+ candidates: z.ZodOptional<z.ZodArray<z.ZodObject<{
1563
+ id: z.ZodString;
1564
+ description: z.ZodString;
1565
+ components: z.ZodArray<z.ZodObject<{
1566
+ id: z.ZodString;
1567
+ component: z.ZodEnum<{
1568
+ Actions: "Actions";
1569
+ Badge: "Badge";
1570
+ BarChart: "BarChart";
1571
+ Button: "Button";
1572
+ Callout: "Callout";
1573
+ Card: "Card";
1574
+ Checklist: "Checklist";
1575
+ Chips: "Chips";
1576
+ Column: "Column";
1577
+ DetailGrid: "DetailGrid";
1578
+ DonutChart: "DonutChart";
1579
+ Fold: "Fold";
1580
+ Grid: "Grid";
1581
+ Group: "Group";
1582
+ Image: "Image";
1583
+ LineChart: "LineChart";
1584
+ Link: "Link";
1585
+ List: "List";
1586
+ Metric: "Metric";
1587
+ Row: "Row";
1588
+ Steps: "Steps";
1589
+ Table: "Table";
1590
+ Tabs: "Tabs";
1591
+ Text: "Text";
1592
+ }>;
1593
+ children: z.ZodOptional<z.ZodUnion<readonly [z.ZodArray<z.ZodString>, z.ZodObject<{
1594
+ path: z.ZodString;
1595
+ componentId: z.ZodString;
1596
+ }, z.core.$strip>]>>;
1597
+ }, z.core.$loose>>;
1598
+ group: z.ZodOptional<z.ZodString>;
1599
+ required: z.ZodOptional<z.ZodBoolean>;
1600
+ }, z.core.$strip>>>;
1601
+ groups: z.ZodOptional<z.ZodArray<z.ZodObject<{
1602
+ id: z.ZodString;
1603
+ instructions: z.ZodString;
1604
+ optional: z.ZodOptional<z.ZodBoolean>;
1605
+ }, z.core.$strip>>>;
1606
+ data: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
1607
+ working: z.ZodOptional<z.ZodString>;
1608
+ }, z.core.$strip>, z.ZodObject<{
1609
+ id: z.ZodString;
1610
+ title: z.ZodString;
1611
+ description: z.ZodOptional<z.ZodString>;
1612
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
1613
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1614
+ field: z.ZodString;
1615
+ op: z.ZodEnum<{
1616
+ contains: "contains";
1617
+ empty: "empty";
1618
+ equals: "equals";
1619
+ gt: "gt";
1620
+ in: "in";
1621
+ lt: "lt";
1622
+ notEmpty: "notEmpty";
1623
+ notEquals: "notEquals";
1624
+ }>;
1625
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1626
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
1627
+ field: z.ZodString;
1628
+ op: z.ZodEnum<{
1629
+ contains: "contains";
1630
+ empty: "empty";
1631
+ equals: "equals";
1632
+ gt: "gt";
1633
+ in: "in";
1634
+ lt: "lt";
1635
+ notEmpty: "notEmpty";
1636
+ notEquals: "notEquals";
1637
+ }>;
1638
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1639
+ }, z.core.$strip>>]>>;
1640
+ ask: z.ZodOptional<z.ZodString>;
1641
+ goto: z.ZodString;
1642
+ max: z.ZodOptional<z.ZodNumber>;
1643
+ }, z.core.$strip>>>;
1644
+ type: z.ZodLiteral<"film">;
1645
+ brief: z.ZodString;
1646
+ skills: z.ZodDefault<z.ZodArray<z.ZodString>>;
1647
+ kit: z.ZodOptional<z.ZodString>;
1648
+ inputs: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
1649
+ format: z.ZodDefault<z.ZodEnum<{
1650
+ "16:9": "16:9";
1651
+ "1:1": "1:1";
1652
+ "9:16": "9:16";
1653
+ }>>;
1654
+ seconds: z.ZodOptional<z.ZodNumber>;
1655
+ model: z.ZodOptional<z.ZodEnum<{
1656
+ classifier: "classifier";
1657
+ high: "high";
1658
+ highest: "highest";
1659
+ standard: "standard";
1660
+ }>>;
1661
+ effort: z.ZodOptional<z.ZodEnum<{
1662
+ high: "high";
1663
+ low: "low";
1664
+ medium: "medium";
1665
+ }>>;
1666
+ working: z.ZodOptional<z.ZodString>;
1667
+ }, z.core.$strip>, z.ZodObject<{
1668
+ id: z.ZodString;
1669
+ title: z.ZodString;
1670
+ description: z.ZodOptional<z.ZodString>;
1671
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
1672
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1673
+ field: z.ZodString;
1674
+ op: z.ZodEnum<{
1675
+ contains: "contains";
1676
+ empty: "empty";
1677
+ equals: "equals";
1678
+ gt: "gt";
1679
+ in: "in";
1680
+ lt: "lt";
1681
+ notEmpty: "notEmpty";
1682
+ notEquals: "notEquals";
1683
+ }>;
1684
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1685
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
1686
+ field: z.ZodString;
1687
+ op: z.ZodEnum<{
1688
+ contains: "contains";
1689
+ empty: "empty";
1690
+ equals: "equals";
1691
+ gt: "gt";
1692
+ in: "in";
1693
+ lt: "lt";
1694
+ notEmpty: "notEmpty";
1695
+ notEquals: "notEquals";
1696
+ }>;
1697
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1698
+ }, z.core.$strip>>]>>;
1699
+ ask: z.ZodOptional<z.ZodString>;
1700
+ goto: z.ZodString;
1701
+ max: z.ZodOptional<z.ZodNumber>;
1702
+ }, z.core.$strip>>>;
1703
+ type: z.ZodLiteral<"review">;
1704
+ show: z.ZodArray<z.ZodString>;
1705
+ edit: z.ZodOptional<z.ZodBoolean>;
1706
+ regenerate: z.ZodOptional<z.ZodBoolean>;
1707
+ }, z.core.$strip>, z.ZodObject<{
1708
+ id: z.ZodString;
1709
+ title: z.ZodString;
1710
+ description: z.ZodOptional<z.ZodString>;
1711
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
1712
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1713
+ field: z.ZodString;
1714
+ op: z.ZodEnum<{
1715
+ contains: "contains";
1716
+ empty: "empty";
1717
+ equals: "equals";
1718
+ gt: "gt";
1719
+ in: "in";
1720
+ lt: "lt";
1721
+ notEmpty: "notEmpty";
1722
+ notEquals: "notEquals";
1723
+ }>;
1724
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1725
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
1726
+ field: z.ZodString;
1727
+ op: z.ZodEnum<{
1728
+ contains: "contains";
1729
+ empty: "empty";
1730
+ equals: "equals";
1731
+ gt: "gt";
1732
+ in: "in";
1733
+ lt: "lt";
1734
+ notEmpty: "notEmpty";
1735
+ notEquals: "notEquals";
1736
+ }>;
1737
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
1738
+ }, z.core.$strip>>]>>;
1739
+ ask: z.ZodOptional<z.ZodString>;
1740
+ goto: z.ZodString;
1741
+ max: z.ZodOptional<z.ZodNumber>;
1742
+ }, z.core.$strip>>>;
1743
+ type: z.ZodLiteral<"result">;
1744
+ message: z.ZodOptional<z.ZodString>;
1745
+ deliverables: z.ZodArray<z.ZodObject<{
1746
+ from: z.ZodString;
1747
+ label: z.ZodOptional<z.ZodString>;
1748
+ formats: z.ZodArray<z.ZodEnum<{
1749
+ csv: "csv";
1750
+ docx: "docx";
1751
+ html: "html";
1752
+ json: "json";
1753
+ md: "md";
1754
+ mp3: "mp3";
1755
+ mp4: "mp4";
1756
+ pdf: "pdf";
1757
+ png: "png";
1758
+ txt: "txt";
1759
+ xlsx: "xlsx";
1760
+ zip: "zip";
1761
+ }>>;
1762
+ }, z.core.$strip>>;
1763
+ }, z.core.$strip>], "type">;
1764
+ export type Step = z.infer<typeof stepSchema>;
1765
+ export type PageStep = z.infer<typeof pageStepSchema>;
1766
+ export type SurfaceStep = z.infer<typeof surfaceStepSchema>;
1767
+ export type AgentStep = z.infer<typeof agentStepSchema>;
1768
+ /**
1769
+ * A decision: a step on the classifier class that uses no tools and whose output is only
1770
+ * yes/no and choice fields. It is answered in one call, which a model that only decides
1771
+ * (no text) can take.
1772
+ */
1773
+ export declare function isDecisionStep(step: AgentStep): boolean;
1774
+ /**
1775
+ * What an agent step's json output holds: its schema, or its fields as one. Undefined when it
1776
+ * names neither (the model then returns one table).
1777
+ */
1778
+ export declare function declaredShape(step: AgentStep): ObjectShape | undefined;
1779
+ /** What an agent step's json output holds: its declared shape, or else one table. */
1780
+ export declare function stepShape(step: AgentStep): ObjectShape;
1781
+ /** The top-level keys of an agent step's output: what `steps.<id>.<key>` may name. */
1782
+ export declare function outputKeys(step: AgentStep): string[];
1783
+ export type GenerateStep = z.infer<typeof generateStepSchema>;
1784
+ export type WidgetStep = z.infer<typeof widgetStepSchema>;
1785
+ export type FilmStep = z.infer<typeof filmStepSchema>;
1786
+ export type ReviewStep = z.infer<typeof reviewStepSchema>;
1787
+ export type ResultStep = z.infer<typeof resultStepSchema>;
1788
+ export type StepType = Step["type"];
1789
+ export declare const listSchema: z.ZodObject<{
1790
+ id: z.ZodString;
1791
+ title: z.ZodString;
1792
+ description: z.ZodOptional<z.ZodString>;
1793
+ columns: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
1794
+ description: z.ZodOptional<z.ZodString>;
1795
+ edit: z.ZodOptional<z.ZodEnum<{
1796
+ inline: "inline";
1797
+ popout: "popout";
1798
+ }>>;
1799
+ id: z.ZodString;
1800
+ name: z.ZodString;
1801
+ required: z.ZodOptional<z.ZodBoolean>;
1802
+ format: z.ZodOptional<z.ZodObject<{
1803
+ style: z.ZodDefault<z.ZodEnum<{
1804
+ markdown: "markdown";
1805
+ multiline: "multiline";
1806
+ single: "single";
1807
+ }>>;
1808
+ }, z.core.$strip>>;
1809
+ type: z.ZodLiteral<"text">;
1810
+ }, z.core.$strip>, z.ZodObject<{
1811
+ description: z.ZodOptional<z.ZodString>;
1812
+ edit: z.ZodOptional<z.ZodEnum<{
1813
+ inline: "inline";
1814
+ popout: "popout";
1815
+ }>>;
1816
+ id: z.ZodString;
1817
+ name: z.ZodString;
1818
+ required: z.ZodOptional<z.ZodBoolean>;
1819
+ format: z.ZodObject<{
1820
+ currency: z.ZodOptional<z.ZodString>;
1821
+ fractionDigits: z.ZodOptional<z.ZodNumber>;
1822
+ grouping: z.ZodOptional<z.ZodBoolean>;
1823
+ style: z.ZodEnum<{
1824
+ currency: "currency";
1825
+ decimal: "decimal";
1826
+ integer: "integer";
1827
+ percent: "percent";
1828
+ }>;
1829
+ }, z.core.$strip>;
1830
+ type: z.ZodLiteral<"number">;
1831
+ }, z.core.$strip>, z.ZodObject<{
1832
+ description: z.ZodOptional<z.ZodString>;
1833
+ edit: z.ZodOptional<z.ZodEnum<{
1834
+ inline: "inline";
1835
+ popout: "popout";
1836
+ }>>;
1837
+ id: z.ZodString;
1838
+ name: z.ZodString;
1839
+ required: z.ZodOptional<z.ZodBoolean>;
1840
+ format: z.ZodObject<{
1841
+ dateStyle: z.ZodOptional<z.ZodEnum<{
1842
+ iso: "iso";
1843
+ long: "long";
1844
+ medium: "medium";
1845
+ short: "short";
1846
+ }>>;
1847
+ kind: z.ZodEnum<{
1848
+ date: "date";
1849
+ datetime: "datetime";
1850
+ time: "time";
1851
+ }>;
1852
+ timePrecision: z.ZodOptional<z.ZodEnum<{
1853
+ hours: "hours";
1854
+ minutes: "minutes";
1855
+ seconds: "seconds";
1856
+ }>>;
1857
+ }, z.core.$strip>;
1858
+ type: z.ZodLiteral<"date">;
1859
+ }, z.core.$strip>, z.ZodObject<{
1860
+ description: z.ZodOptional<z.ZodString>;
1861
+ edit: z.ZodOptional<z.ZodEnum<{
1862
+ inline: "inline";
1863
+ popout: "popout";
1864
+ }>>;
1865
+ id: z.ZodString;
1866
+ name: z.ZodString;
1867
+ required: z.ZodOptional<z.ZodBoolean>;
1868
+ format: z.ZodObject<{
1869
+ display: z.ZodEnum<{
1870
+ "decimal-hours": "decimal-hours";
1871
+ hms: "hms";
1872
+ hours: "hours";
1873
+ iso: "iso";
1874
+ minutes: "minutes";
1875
+ }>;
1876
+ inputUnit: z.ZodEnum<{
1877
+ days: "days";
1878
+ hours: "hours";
1879
+ milliseconds: "milliseconds";
1880
+ minutes: "minutes";
1881
+ seconds: "seconds";
1882
+ }>;
1883
+ }, z.core.$strip>;
1884
+ type: z.ZodLiteral<"duration">;
1885
+ }, z.core.$strip>, z.ZodObject<{
1886
+ description: z.ZodOptional<z.ZodString>;
1887
+ edit: z.ZodOptional<z.ZodEnum<{
1888
+ inline: "inline";
1889
+ popout: "popout";
1890
+ }>>;
1891
+ id: z.ZodString;
1892
+ name: z.ZodString;
1893
+ required: z.ZodOptional<z.ZodBoolean>;
1894
+ format: z.ZodObject<{
1895
+ allowCustom: z.ZodBoolean;
1896
+ multiple: z.ZodOptional<z.ZodBoolean>;
1897
+ options: z.ZodArray<z.ZodObject<{
1898
+ id: z.ZodString;
1899
+ label: z.ZodString;
1900
+ }, z.core.$strip>>;
1901
+ }, z.core.$strip>;
1902
+ type: z.ZodLiteral<"select">;
1903
+ }, z.core.$strip>, z.ZodObject<{
1904
+ description: z.ZodOptional<z.ZodString>;
1905
+ edit: z.ZodOptional<z.ZodEnum<{
1906
+ inline: "inline";
1907
+ popout: "popout";
1908
+ }>>;
1909
+ id: z.ZodString;
1910
+ name: z.ZodString;
1911
+ required: z.ZodOptional<z.ZodBoolean>;
1912
+ type: z.ZodLiteral<"boolean">;
1913
+ }, z.core.$strip>], "type">>;
1914
+ key: z.ZodOptional<z.ZodString>;
1915
+ check: z.ZodOptional<z.ZodObject<{
1916
+ file: z.ZodOptional<z.ZodString>;
1917
+ status: z.ZodOptional<z.ZodString>;
1918
+ }, z.core.$strip>>;
1919
+ shared: z.ZodOptional<z.ZodBoolean>;
1920
+ }, z.core.$strip>;
1921
+ export declare const connectionSchema: z.ZodObject<{
1922
+ id: z.ZodString;
1923
+ kind: z.ZodOptional<z.ZodEnum<{
1924
+ mail: "mail";
1925
+ }>>;
1926
+ connector: z.ZodOptional<z.ZodString>;
1927
+ actions: z.ZodOptional<z.ZodArray<z.ZodString>>;
1928
+ policy: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<{
1929
+ allow: "allow";
1930
+ ask: "ask";
1931
+ }>>>;
1932
+ title: z.ZodOptional<z.ZodString>;
1933
+ description: z.ZodOptional<z.ZodString>;
1934
+ }, z.core.$strip>;
1935
+ /** The version of the definition this app writes and reads; raised only by a breaking change. */
1936
+ export declare const DEFINITION_VERSION: 1;
1937
+ export declare const wizardSchema: z.ZodObject<{
1938
+ version: z.ZodDefault<z.ZodLiteral<1>>;
1939
+ title: z.ZodString;
1940
+ description: z.ZodDefault<z.ZodString>;
1941
+ avatar: z.ZodDefault<z.ZodEnum<{
1942
+ bean: "bean";
1943
+ dome: "dome";
1944
+ drop: "drop";
1945
+ flame: "flame";
1946
+ oval: "oval";
1947
+ pebble: "pebble";
1948
+ round: "round";
1949
+ sprout: "sprout";
1950
+ tower: "tower";
1951
+ wedge: "wedge";
1952
+ }>>;
1953
+ intro: z.ZodOptional<z.ZodString>;
1954
+ lang: z.ZodOptional<z.ZodString>;
1955
+ lists: z.ZodOptional<z.ZodArray<z.ZodObject<{
1956
+ id: z.ZodString;
1957
+ title: z.ZodString;
1958
+ description: z.ZodOptional<z.ZodString>;
1959
+ columns: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
1960
+ description: z.ZodOptional<z.ZodString>;
1961
+ edit: z.ZodOptional<z.ZodEnum<{
1962
+ inline: "inline";
1963
+ popout: "popout";
1964
+ }>>;
1965
+ id: z.ZodString;
1966
+ name: z.ZodString;
1967
+ required: z.ZodOptional<z.ZodBoolean>;
1968
+ format: z.ZodOptional<z.ZodObject<{
1969
+ style: z.ZodDefault<z.ZodEnum<{
1970
+ markdown: "markdown";
1971
+ multiline: "multiline";
1972
+ single: "single";
1973
+ }>>;
1974
+ }, z.core.$strip>>;
1975
+ type: z.ZodLiteral<"text">;
1976
+ }, z.core.$strip>, z.ZodObject<{
1977
+ description: z.ZodOptional<z.ZodString>;
1978
+ edit: z.ZodOptional<z.ZodEnum<{
1979
+ inline: "inline";
1980
+ popout: "popout";
1981
+ }>>;
1982
+ id: z.ZodString;
1983
+ name: z.ZodString;
1984
+ required: z.ZodOptional<z.ZodBoolean>;
1985
+ format: z.ZodObject<{
1986
+ currency: z.ZodOptional<z.ZodString>;
1987
+ fractionDigits: z.ZodOptional<z.ZodNumber>;
1988
+ grouping: z.ZodOptional<z.ZodBoolean>;
1989
+ style: z.ZodEnum<{
1990
+ currency: "currency";
1991
+ decimal: "decimal";
1992
+ integer: "integer";
1993
+ percent: "percent";
1994
+ }>;
1995
+ }, z.core.$strip>;
1996
+ type: z.ZodLiteral<"number">;
1997
+ }, z.core.$strip>, z.ZodObject<{
1998
+ description: z.ZodOptional<z.ZodString>;
1999
+ edit: z.ZodOptional<z.ZodEnum<{
2000
+ inline: "inline";
2001
+ popout: "popout";
2002
+ }>>;
2003
+ id: z.ZodString;
2004
+ name: z.ZodString;
2005
+ required: z.ZodOptional<z.ZodBoolean>;
2006
+ format: z.ZodObject<{
2007
+ dateStyle: z.ZodOptional<z.ZodEnum<{
2008
+ iso: "iso";
2009
+ long: "long";
2010
+ medium: "medium";
2011
+ short: "short";
2012
+ }>>;
2013
+ kind: z.ZodEnum<{
2014
+ date: "date";
2015
+ datetime: "datetime";
2016
+ time: "time";
2017
+ }>;
2018
+ timePrecision: z.ZodOptional<z.ZodEnum<{
2019
+ hours: "hours";
2020
+ minutes: "minutes";
2021
+ seconds: "seconds";
2022
+ }>>;
2023
+ }, z.core.$strip>;
2024
+ type: z.ZodLiteral<"date">;
2025
+ }, z.core.$strip>, z.ZodObject<{
2026
+ description: z.ZodOptional<z.ZodString>;
2027
+ edit: z.ZodOptional<z.ZodEnum<{
2028
+ inline: "inline";
2029
+ popout: "popout";
2030
+ }>>;
2031
+ id: z.ZodString;
2032
+ name: z.ZodString;
2033
+ required: z.ZodOptional<z.ZodBoolean>;
2034
+ format: z.ZodObject<{
2035
+ display: z.ZodEnum<{
2036
+ "decimal-hours": "decimal-hours";
2037
+ hms: "hms";
2038
+ hours: "hours";
2039
+ iso: "iso";
2040
+ minutes: "minutes";
2041
+ }>;
2042
+ inputUnit: z.ZodEnum<{
2043
+ days: "days";
2044
+ hours: "hours";
2045
+ milliseconds: "milliseconds";
2046
+ minutes: "minutes";
2047
+ seconds: "seconds";
2048
+ }>;
2049
+ }, z.core.$strip>;
2050
+ type: z.ZodLiteral<"duration">;
2051
+ }, z.core.$strip>, z.ZodObject<{
2052
+ description: z.ZodOptional<z.ZodString>;
2053
+ edit: z.ZodOptional<z.ZodEnum<{
2054
+ inline: "inline";
2055
+ popout: "popout";
2056
+ }>>;
2057
+ id: z.ZodString;
2058
+ name: z.ZodString;
2059
+ required: z.ZodOptional<z.ZodBoolean>;
2060
+ format: z.ZodObject<{
2061
+ allowCustom: z.ZodBoolean;
2062
+ multiple: z.ZodOptional<z.ZodBoolean>;
2063
+ options: z.ZodArray<z.ZodObject<{
2064
+ id: z.ZodString;
2065
+ label: z.ZodString;
2066
+ }, z.core.$strip>>;
2067
+ }, z.core.$strip>;
2068
+ type: z.ZodLiteral<"select">;
2069
+ }, z.core.$strip>, z.ZodObject<{
2070
+ description: z.ZodOptional<z.ZodString>;
2071
+ edit: z.ZodOptional<z.ZodEnum<{
2072
+ inline: "inline";
2073
+ popout: "popout";
2074
+ }>>;
2075
+ id: z.ZodString;
2076
+ name: z.ZodString;
2077
+ required: z.ZodOptional<z.ZodBoolean>;
2078
+ type: z.ZodLiteral<"boolean">;
2079
+ }, z.core.$strip>], "type">>;
2080
+ key: z.ZodOptional<z.ZodString>;
2081
+ check: z.ZodOptional<z.ZodObject<{
2082
+ file: z.ZodOptional<z.ZodString>;
2083
+ status: z.ZodOptional<z.ZodString>;
2084
+ }, z.core.$strip>>;
2085
+ shared: z.ZodOptional<z.ZodBoolean>;
2086
+ }, z.core.$strip>>>;
2087
+ connections: z.ZodOptional<z.ZodArray<z.ZodObject<{
2088
+ id: z.ZodString;
2089
+ kind: z.ZodOptional<z.ZodEnum<{
2090
+ mail: "mail";
2091
+ }>>;
2092
+ connector: z.ZodOptional<z.ZodString>;
2093
+ actions: z.ZodOptional<z.ZodArray<z.ZodString>>;
2094
+ policy: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<{
2095
+ allow: "allow";
2096
+ ask: "ask";
2097
+ }>>>;
2098
+ title: z.ZodOptional<z.ZodString>;
2099
+ description: z.ZodOptional<z.ZodString>;
2100
+ }, z.core.$strip>>>;
2101
+ steps: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
2102
+ id: z.ZodString;
2103
+ title: z.ZodString;
2104
+ description: z.ZodOptional<z.ZodString>;
2105
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
2106
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
2107
+ field: z.ZodString;
2108
+ op: z.ZodEnum<{
2109
+ contains: "contains";
2110
+ empty: "empty";
2111
+ equals: "equals";
2112
+ gt: "gt";
2113
+ in: "in";
2114
+ lt: "lt";
2115
+ notEmpty: "notEmpty";
2116
+ notEquals: "notEquals";
2117
+ }>;
2118
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
2119
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
2120
+ field: z.ZodString;
2121
+ op: z.ZodEnum<{
2122
+ contains: "contains";
2123
+ empty: "empty";
2124
+ equals: "equals";
2125
+ gt: "gt";
2126
+ in: "in";
2127
+ lt: "lt";
2128
+ notEmpty: "notEmpty";
2129
+ notEquals: "notEquals";
2130
+ }>;
2131
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
2132
+ }, z.core.$strip>>]>>;
2133
+ ask: z.ZodOptional<z.ZodString>;
2134
+ goto: z.ZodString;
2135
+ max: z.ZodOptional<z.ZodNumber>;
2136
+ }, z.core.$strip>>>;
2137
+ type: z.ZodLiteral<"page">;
2138
+ fields: z.ZodArray<z.ZodObject<{
2139
+ id: z.ZodString;
2140
+ label: z.ZodString;
2141
+ kind: z.ZodEnum<{
2142
+ audio: "audio";
2143
+ color: "color";
2144
+ connection: "connection";
2145
+ date: "date";
2146
+ email: "email";
2147
+ file: "file";
2148
+ image: "image";
2149
+ items: "items";
2150
+ list: "list";
2151
+ location: "location";
2152
+ multiselect: "multiselect";
2153
+ number: "number";
2154
+ select: "select";
2155
+ signature: "signature";
2156
+ slot: "slot";
2157
+ text: "text";
2158
+ textarea: "textarea";
2159
+ toggle: "toggle";
2160
+ url: "url";
2161
+ }>;
2162
+ required: z.ZodOptional<z.ZodBoolean>;
2163
+ placeholder: z.ZodOptional<z.ZodString>;
2164
+ help: z.ZodOptional<z.ZodString>;
2165
+ options: z.ZodOptional<z.ZodArray<z.ZodString>>;
2166
+ default: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
2167
+ columns: z.ZodOptional<z.ZodArray<z.ZodObject<{
2168
+ id: z.ZodString;
2169
+ label: z.ZodString;
2170
+ kind: z.ZodEnum<{
2171
+ money: "money";
2172
+ number: "number";
2173
+ text: "text";
2174
+ }>;
2175
+ }, z.core.$strip>>>;
2176
+ vat: z.ZodOptional<z.ZodObject<{
2177
+ rate: z.ZodOptional<z.ZodNumber>;
2178
+ field: z.ZodOptional<z.ZodString>;
2179
+ }, z.core.$strip>>;
2180
+ currency: z.ZodOptional<z.ZodString>;
2181
+ multiple: z.ZodOptional<z.ZodBoolean>;
2182
+ min: z.ZodOptional<z.ZodNumber>;
2183
+ max: z.ZodOptional<z.ZodNumber>;
2184
+ camera: z.ZodOptional<z.ZodBoolean>;
2185
+ video: z.ZodOptional<z.ZodBoolean>;
2186
+ listen: z.ZodOptional<z.ZodBoolean>;
2187
+ scan: z.ZodOptional<z.ZodBoolean>;
2188
+ connection: z.ZodOptional<z.ZodString>;
2189
+ list: z.ZodOptional<z.ZodString>;
2190
+ prefill: z.ZodOptional<z.ZodString>;
2191
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
2192
+ field: z.ZodString;
2193
+ op: z.ZodEnum<{
2194
+ contains: "contains";
2195
+ empty: "empty";
2196
+ equals: "equals";
2197
+ gt: "gt";
2198
+ in: "in";
2199
+ lt: "lt";
2200
+ notEmpty: "notEmpty";
2201
+ notEquals: "notEquals";
2202
+ }>;
2203
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
2204
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
2205
+ field: z.ZodString;
2206
+ op: z.ZodEnum<{
2207
+ contains: "contains";
2208
+ empty: "empty";
2209
+ equals: "equals";
2210
+ gt: "gt";
2211
+ in: "in";
2212
+ lt: "lt";
2213
+ notEmpty: "notEmpty";
2214
+ notEquals: "notEquals";
2215
+ }>;
2216
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
2217
+ }, z.core.$strip>>]>>;
2218
+ optionsFrom: z.ZodOptional<z.ZodString>;
2219
+ cards: z.ZodOptional<z.ZodObject<{
2220
+ label: z.ZodString;
2221
+ value: z.ZodOptional<z.ZodString>;
2222
+ image: z.ZodOptional<z.ZodString>;
2223
+ subtitle: z.ZodOptional<z.ZodString>;
2224
+ meta: z.ZodOptional<z.ZodString>;
2225
+ link: z.ZodOptional<z.ZodString>;
2226
+ }, z.core.$strip>>;
2227
+ ask: z.ZodOptional<z.ZodString>;
2228
+ group: z.ZodOptional<z.ZodString>;
2229
+ }, z.core.$strip>>;
2230
+ groups: z.ZodOptional<z.ZodArray<z.ZodObject<{
2231
+ id: z.ZodString;
2232
+ instructions: z.ZodString;
2233
+ optional: z.ZodOptional<z.ZodBoolean>;
2234
+ }, z.core.$strip>>>;
2235
+ cta: z.ZodOptional<z.ZodString>;
2236
+ }, z.core.$strip>, z.ZodObject<{
2237
+ id: z.ZodString;
2238
+ title: z.ZodString;
2239
+ description: z.ZodOptional<z.ZodString>;
2240
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
2241
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
2242
+ field: z.ZodString;
2243
+ op: z.ZodEnum<{
2244
+ contains: "contains";
2245
+ empty: "empty";
2246
+ equals: "equals";
2247
+ gt: "gt";
2248
+ in: "in";
2249
+ lt: "lt";
2250
+ notEmpty: "notEmpty";
2251
+ notEquals: "notEquals";
2252
+ }>;
2253
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
2254
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
2255
+ field: z.ZodString;
2256
+ op: z.ZodEnum<{
2257
+ contains: "contains";
2258
+ empty: "empty";
2259
+ equals: "equals";
2260
+ gt: "gt";
2261
+ in: "in";
2262
+ lt: "lt";
2263
+ notEmpty: "notEmpty";
2264
+ notEquals: "notEquals";
2265
+ }>;
2266
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
2267
+ }, z.core.$strip>>]>>;
2268
+ ask: z.ZodOptional<z.ZodString>;
2269
+ goto: z.ZodString;
2270
+ max: z.ZodOptional<z.ZodNumber>;
2271
+ }, z.core.$strip>>>;
2272
+ type: z.ZodLiteral<"agent">;
2273
+ instructions: z.ZodDefault<z.ZodString>;
2274
+ call: z.ZodOptional<z.ZodObject<{
2275
+ tool: z.ZodTemplateLiteral<`${string}.${string}`>;
2276
+ input: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2277
+ }, z.core.$strip>>;
2278
+ tools: z.ZodDefault<z.ZodArray<z.ZodUnion<readonly [z.ZodEnum<{
2279
+ browser: "browser";
2280
+ http: "http";
2281
+ image: "image";
2282
+ pages: "pages";
2283
+ sandbox: "sandbox";
2284
+ web_fetch: "web_fetch";
2285
+ web_search: "web_search";
2286
+ }>, z.ZodTemplateLiteral<`${string}.${string}`>]>>>;
2287
+ mcp: z.ZodOptional<z.ZodArray<z.ZodString>>;
2288
+ connections: z.ZodOptional<z.ZodArray<z.ZodString>>;
2289
+ output: z.ZodDefault<z.ZodObject<{
2290
+ format: z.ZodEnum<{
2291
+ json: "json";
2292
+ markdown: "markdown";
2293
+ text: "text";
2294
+ }>;
2295
+ fields: z.ZodOptional<z.ZodArray<z.ZodObject<{
2296
+ id: z.ZodString;
2297
+ kind: z.ZodEnum<{
2298
+ choice: "choice";
2299
+ list: "list";
2300
+ number: "number";
2301
+ score: "score";
2302
+ table: "table";
2303
+ text: "text";
2304
+ yesno: "yesno";
2305
+ }>;
2306
+ description: z.ZodOptional<z.ZodString>;
2307
+ columns: z.ZodOptional<z.ZodArray<z.ZodString>>;
2308
+ options: z.ZodOptional<z.ZodArray<z.ZodString>>;
2309
+ }, z.core.$strip>>>;
2310
+ schema: z.ZodOptional<z.ZodType<ObjectShape, unknown, z.core.$ZodTypeInternals<ObjectShape, unknown>>>;
2311
+ surface: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodArray<z.ZodObject<{
2312
+ id: z.ZodString;
2313
+ component: z.ZodEnum<{
2314
+ Actions: "Actions";
2315
+ Badge: "Badge";
2316
+ BarChart: "BarChart";
2317
+ Button: "Button";
2318
+ Callout: "Callout";
2319
+ Card: "Card";
2320
+ Checklist: "Checklist";
2321
+ Chips: "Chips";
2322
+ Column: "Column";
2323
+ DetailGrid: "DetailGrid";
2324
+ DonutChart: "DonutChart";
2325
+ Fold: "Fold";
2326
+ Grid: "Grid";
2327
+ Group: "Group";
2328
+ Image: "Image";
2329
+ LineChart: "LineChart";
2330
+ Link: "Link";
2331
+ List: "List";
2332
+ Metric: "Metric";
2333
+ Row: "Row";
2334
+ Steps: "Steps";
2335
+ Table: "Table";
2336
+ Tabs: "Tabs";
2337
+ Text: "Text";
2338
+ }>;
2339
+ children: z.ZodOptional<z.ZodUnion<readonly [z.ZodArray<z.ZodString>, z.ZodObject<{
2340
+ path: z.ZodString;
2341
+ componentId: z.ZodString;
2342
+ }, z.core.$strip>]>>;
2343
+ }, z.core.$loose>>]>>;
2344
+ }, z.core.$strip>>;
2345
+ model: z.ZodOptional<z.ZodEnum<{
2346
+ classifier: "classifier";
2347
+ high: "high";
2348
+ highest: "highest";
2349
+ standard: "standard";
2350
+ }>>;
2351
+ effort: z.ZodOptional<z.ZodEnum<{
2352
+ high: "high";
2353
+ low: "low";
2354
+ medium: "medium";
2355
+ }>>;
2356
+ each: z.ZodOptional<z.ZodString>;
2357
+ working: z.ZodOptional<z.ZodString>;
2358
+ }, z.core.$strip>, z.ZodObject<{
2359
+ id: z.ZodString;
2360
+ title: z.ZodString;
2361
+ description: z.ZodOptional<z.ZodString>;
2362
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
2363
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
2364
+ field: z.ZodString;
2365
+ op: z.ZodEnum<{
2366
+ contains: "contains";
2367
+ empty: "empty";
2368
+ equals: "equals";
2369
+ gt: "gt";
2370
+ in: "in";
2371
+ lt: "lt";
2372
+ notEmpty: "notEmpty";
2373
+ notEquals: "notEquals";
2374
+ }>;
2375
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
2376
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
2377
+ field: z.ZodString;
2378
+ op: z.ZodEnum<{
2379
+ contains: "contains";
2380
+ empty: "empty";
2381
+ equals: "equals";
2382
+ gt: "gt";
2383
+ in: "in";
2384
+ lt: "lt";
2385
+ notEmpty: "notEmpty";
2386
+ notEquals: "notEquals";
2387
+ }>;
2388
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
2389
+ }, z.core.$strip>>]>>;
2390
+ ask: z.ZodOptional<z.ZodString>;
2391
+ goto: z.ZodString;
2392
+ max: z.ZodOptional<z.ZodNumber>;
2393
+ }, z.core.$strip>>>;
2394
+ type: z.ZodLiteral<"generate">;
2395
+ asset: z.ZodEnum<{
2396
+ dashboard: "dashboard";
2397
+ document: "document";
2398
+ image: "image";
2399
+ video: "video";
2400
+ voice: "voice";
2401
+ }>;
2402
+ prompt: z.ZodString;
2403
+ options: z.ZodOptional<z.ZodObject<{
2404
+ aspectRatio: z.ZodOptional<z.ZodEnum<{
2405
+ "16:9": "16:9";
2406
+ "1:1": "1:1";
2407
+ "2:3": "2:3";
2408
+ "3:2": "3:2";
2409
+ "4:5": "4:5";
2410
+ "9:16": "9:16";
2411
+ }>>;
2412
+ duration: z.ZodOptional<z.ZodNumber>;
2413
+ resolution: z.ZodOptional<z.ZodEnum<{
2414
+ "480p": "480p";
2415
+ "720p": "720p";
2416
+ }>>;
2417
+ style: z.ZodOptional<z.ZodString>;
2418
+ template: z.ZodOptional<z.ZodEnum<{
2419
+ briefing: "briefing";
2420
+ free: "free";
2421
+ invoice: "invoice";
2422
+ letter: "letter";
2423
+ offer: "offer";
2424
+ report: "report";
2425
+ }>>;
2426
+ }, z.core.$strip>>;
2427
+ referenceImage: z.ZodOptional<z.ZodString>;
2428
+ each: z.ZodOptional<z.ZodString>;
2429
+ model: z.ZodOptional<z.ZodEnum<{
2430
+ classifier: "classifier";
2431
+ high: "high";
2432
+ highest: "highest";
2433
+ standard: "standard";
2434
+ }>>;
2435
+ effort: z.ZodOptional<z.ZodEnum<{
2436
+ high: "high";
2437
+ low: "low";
2438
+ medium: "medium";
2439
+ }>>;
2440
+ working: z.ZodOptional<z.ZodString>;
2441
+ }, z.core.$strip>, z.ZodObject<{
2442
+ id: z.ZodString;
2443
+ title: z.ZodString;
2444
+ description: z.ZodOptional<z.ZodString>;
2445
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
2446
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
2447
+ field: z.ZodString;
2448
+ op: z.ZodEnum<{
2449
+ contains: "contains";
2450
+ empty: "empty";
2451
+ equals: "equals";
2452
+ gt: "gt";
2453
+ in: "in";
2454
+ lt: "lt";
2455
+ notEmpty: "notEmpty";
2456
+ notEquals: "notEquals";
2457
+ }>;
2458
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
2459
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
2460
+ field: z.ZodString;
2461
+ op: z.ZodEnum<{
2462
+ contains: "contains";
2463
+ empty: "empty";
2464
+ equals: "equals";
2465
+ gt: "gt";
2466
+ in: "in";
2467
+ lt: "lt";
2468
+ notEmpty: "notEmpty";
2469
+ notEquals: "notEquals";
2470
+ }>;
2471
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
2472
+ }, z.core.$strip>>]>>;
2473
+ ask: z.ZodOptional<z.ZodString>;
2474
+ goto: z.ZodString;
2475
+ max: z.ZodOptional<z.ZodNumber>;
2476
+ }, z.core.$strip>>>;
2477
+ type: z.ZodLiteral<"widget">;
2478
+ entry: z.ZodString;
2479
+ data: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
2480
+ sample: z.ZodOptional<z.ZodString>;
2481
+ layout: z.ZodOptional<z.ZodEnum<{
2482
+ fixed: "fixed";
2483
+ page: "page";
2484
+ }>>;
2485
+ size: z.ZodOptional<z.ZodObject<{
2486
+ width: z.ZodNumber;
2487
+ height: z.ZodNumber;
2488
+ }, z.core.$strip>>;
2489
+ video: z.ZodOptional<z.ZodBoolean>;
2490
+ working: z.ZodOptional<z.ZodString>;
2491
+ }, z.core.$strip>, z.ZodObject<{
2492
+ id: z.ZodString;
2493
+ title: z.ZodString;
2494
+ description: z.ZodOptional<z.ZodString>;
2495
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
2496
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
2497
+ field: z.ZodString;
2498
+ op: z.ZodEnum<{
2499
+ contains: "contains";
2500
+ empty: "empty";
2501
+ equals: "equals";
2502
+ gt: "gt";
2503
+ in: "in";
2504
+ lt: "lt";
2505
+ notEmpty: "notEmpty";
2506
+ notEquals: "notEquals";
2507
+ }>;
2508
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
2509
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
2510
+ field: z.ZodString;
2511
+ op: z.ZodEnum<{
2512
+ contains: "contains";
2513
+ empty: "empty";
2514
+ equals: "equals";
2515
+ gt: "gt";
2516
+ in: "in";
2517
+ lt: "lt";
2518
+ notEmpty: "notEmpty";
2519
+ notEquals: "notEquals";
2520
+ }>;
2521
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
2522
+ }, z.core.$strip>>]>>;
2523
+ ask: z.ZodOptional<z.ZodString>;
2524
+ goto: z.ZodString;
2525
+ max: z.ZodOptional<z.ZodNumber>;
2526
+ }, z.core.$strip>>>;
2527
+ type: z.ZodLiteral<"surface">;
2528
+ components: z.ZodOptional<z.ZodArray<z.ZodObject<{
2529
+ id: z.ZodString;
2530
+ component: z.ZodEnum<{
2531
+ Actions: "Actions";
2532
+ Badge: "Badge";
2533
+ BarChart: "BarChart";
2534
+ Button: "Button";
2535
+ Callout: "Callout";
2536
+ Card: "Card";
2537
+ Checklist: "Checklist";
2538
+ Chips: "Chips";
2539
+ Column: "Column";
2540
+ DetailGrid: "DetailGrid";
2541
+ DonutChart: "DonutChart";
2542
+ Fold: "Fold";
2543
+ Grid: "Grid";
2544
+ Group: "Group";
2545
+ Image: "Image";
2546
+ LineChart: "LineChart";
2547
+ Link: "Link";
2548
+ List: "List";
2549
+ Metric: "Metric";
2550
+ Row: "Row";
2551
+ Steps: "Steps";
2552
+ Table: "Table";
2553
+ Tabs: "Tabs";
2554
+ Text: "Text";
2555
+ }>;
2556
+ children: z.ZodOptional<z.ZodUnion<readonly [z.ZodArray<z.ZodString>, z.ZodObject<{
2557
+ path: z.ZodString;
2558
+ componentId: z.ZodString;
2559
+ }, z.core.$strip>]>>;
2560
+ }, z.core.$loose>>>;
2561
+ candidates: z.ZodOptional<z.ZodArray<z.ZodObject<{
2562
+ id: z.ZodString;
2563
+ description: z.ZodString;
2564
+ components: z.ZodArray<z.ZodObject<{
2565
+ id: z.ZodString;
2566
+ component: z.ZodEnum<{
2567
+ Actions: "Actions";
2568
+ Badge: "Badge";
2569
+ BarChart: "BarChart";
2570
+ Button: "Button";
2571
+ Callout: "Callout";
2572
+ Card: "Card";
2573
+ Checklist: "Checklist";
2574
+ Chips: "Chips";
2575
+ Column: "Column";
2576
+ DetailGrid: "DetailGrid";
2577
+ DonutChart: "DonutChart";
2578
+ Fold: "Fold";
2579
+ Grid: "Grid";
2580
+ Group: "Group";
2581
+ Image: "Image";
2582
+ LineChart: "LineChart";
2583
+ Link: "Link";
2584
+ List: "List";
2585
+ Metric: "Metric";
2586
+ Row: "Row";
2587
+ Steps: "Steps";
2588
+ Table: "Table";
2589
+ Tabs: "Tabs";
2590
+ Text: "Text";
2591
+ }>;
2592
+ children: z.ZodOptional<z.ZodUnion<readonly [z.ZodArray<z.ZodString>, z.ZodObject<{
2593
+ path: z.ZodString;
2594
+ componentId: z.ZodString;
2595
+ }, z.core.$strip>]>>;
2596
+ }, z.core.$loose>>;
2597
+ group: z.ZodOptional<z.ZodString>;
2598
+ required: z.ZodOptional<z.ZodBoolean>;
2599
+ }, z.core.$strip>>>;
2600
+ groups: z.ZodOptional<z.ZodArray<z.ZodObject<{
2601
+ id: z.ZodString;
2602
+ instructions: z.ZodString;
2603
+ optional: z.ZodOptional<z.ZodBoolean>;
2604
+ }, z.core.$strip>>>;
2605
+ data: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
2606
+ working: z.ZodOptional<z.ZodString>;
2607
+ }, z.core.$strip>, z.ZodObject<{
2608
+ id: z.ZodString;
2609
+ title: z.ZodString;
2610
+ description: z.ZodOptional<z.ZodString>;
2611
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
2612
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
2613
+ field: z.ZodString;
2614
+ op: z.ZodEnum<{
2615
+ contains: "contains";
2616
+ empty: "empty";
2617
+ equals: "equals";
2618
+ gt: "gt";
2619
+ in: "in";
2620
+ lt: "lt";
2621
+ notEmpty: "notEmpty";
2622
+ notEquals: "notEquals";
2623
+ }>;
2624
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
2625
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
2626
+ field: z.ZodString;
2627
+ op: z.ZodEnum<{
2628
+ contains: "contains";
2629
+ empty: "empty";
2630
+ equals: "equals";
2631
+ gt: "gt";
2632
+ in: "in";
2633
+ lt: "lt";
2634
+ notEmpty: "notEmpty";
2635
+ notEquals: "notEquals";
2636
+ }>;
2637
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
2638
+ }, z.core.$strip>>]>>;
2639
+ ask: z.ZodOptional<z.ZodString>;
2640
+ goto: z.ZodString;
2641
+ max: z.ZodOptional<z.ZodNumber>;
2642
+ }, z.core.$strip>>>;
2643
+ type: z.ZodLiteral<"film">;
2644
+ brief: z.ZodString;
2645
+ skills: z.ZodDefault<z.ZodArray<z.ZodString>>;
2646
+ kit: z.ZodOptional<z.ZodString>;
2647
+ inputs: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
2648
+ format: z.ZodDefault<z.ZodEnum<{
2649
+ "16:9": "16:9";
2650
+ "1:1": "1:1";
2651
+ "9:16": "9:16";
2652
+ }>>;
2653
+ seconds: z.ZodOptional<z.ZodNumber>;
2654
+ model: z.ZodOptional<z.ZodEnum<{
2655
+ classifier: "classifier";
2656
+ high: "high";
2657
+ highest: "highest";
2658
+ standard: "standard";
2659
+ }>>;
2660
+ effort: z.ZodOptional<z.ZodEnum<{
2661
+ high: "high";
2662
+ low: "low";
2663
+ medium: "medium";
2664
+ }>>;
2665
+ working: z.ZodOptional<z.ZodString>;
2666
+ }, z.core.$strip>, z.ZodObject<{
2667
+ id: z.ZodString;
2668
+ title: z.ZodString;
2669
+ description: z.ZodOptional<z.ZodString>;
2670
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
2671
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
2672
+ field: z.ZodString;
2673
+ op: z.ZodEnum<{
2674
+ contains: "contains";
2675
+ empty: "empty";
2676
+ equals: "equals";
2677
+ gt: "gt";
2678
+ in: "in";
2679
+ lt: "lt";
2680
+ notEmpty: "notEmpty";
2681
+ notEquals: "notEquals";
2682
+ }>;
2683
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
2684
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
2685
+ field: z.ZodString;
2686
+ op: z.ZodEnum<{
2687
+ contains: "contains";
2688
+ empty: "empty";
2689
+ equals: "equals";
2690
+ gt: "gt";
2691
+ in: "in";
2692
+ lt: "lt";
2693
+ notEmpty: "notEmpty";
2694
+ notEquals: "notEquals";
2695
+ }>;
2696
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
2697
+ }, z.core.$strip>>]>>;
2698
+ ask: z.ZodOptional<z.ZodString>;
2699
+ goto: z.ZodString;
2700
+ max: z.ZodOptional<z.ZodNumber>;
2701
+ }, z.core.$strip>>>;
2702
+ type: z.ZodLiteral<"review">;
2703
+ show: z.ZodArray<z.ZodString>;
2704
+ edit: z.ZodOptional<z.ZodBoolean>;
2705
+ regenerate: z.ZodOptional<z.ZodBoolean>;
2706
+ }, z.core.$strip>, z.ZodObject<{
2707
+ id: z.ZodString;
2708
+ title: z.ZodString;
2709
+ description: z.ZodOptional<z.ZodString>;
2710
+ next: z.ZodOptional<z.ZodArray<z.ZodObject<{
2711
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
2712
+ field: z.ZodString;
2713
+ op: z.ZodEnum<{
2714
+ contains: "contains";
2715
+ empty: "empty";
2716
+ equals: "equals";
2717
+ gt: "gt";
2718
+ in: "in";
2719
+ lt: "lt";
2720
+ notEmpty: "notEmpty";
2721
+ notEquals: "notEquals";
2722
+ }>;
2723
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
2724
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
2725
+ field: z.ZodString;
2726
+ op: z.ZodEnum<{
2727
+ contains: "contains";
2728
+ empty: "empty";
2729
+ equals: "equals";
2730
+ gt: "gt";
2731
+ in: "in";
2732
+ lt: "lt";
2733
+ notEmpty: "notEmpty";
2734
+ notEquals: "notEquals";
2735
+ }>;
2736
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
2737
+ }, z.core.$strip>>]>>;
2738
+ ask: z.ZodOptional<z.ZodString>;
2739
+ goto: z.ZodString;
2740
+ max: z.ZodOptional<z.ZodNumber>;
2741
+ }, z.core.$strip>>>;
2742
+ type: z.ZodLiteral<"result">;
2743
+ message: z.ZodOptional<z.ZodString>;
2744
+ deliverables: z.ZodArray<z.ZodObject<{
2745
+ from: z.ZodString;
2746
+ label: z.ZodOptional<z.ZodString>;
2747
+ formats: z.ZodArray<z.ZodEnum<{
2748
+ csv: "csv";
2749
+ docx: "docx";
2750
+ html: "html";
2751
+ json: "json";
2752
+ md: "md";
2753
+ mp3: "mp3";
2754
+ mp4: "mp4";
2755
+ pdf: "pdf";
2756
+ png: "png";
2757
+ txt: "txt";
2758
+ xlsx: "xlsx";
2759
+ zip: "zip";
2760
+ }>>;
2761
+ }, z.core.$strip>>;
2762
+ }, z.core.$strip>], "type">>;
2763
+ }, z.core.$strip>;
2764
+ export type WizardDefinition = z.infer<typeof wizardSchema>;
2765
+ export declare const INTERACTIVE: ReadonlySet<StepType>;
2766
+ /** Which formats each producing step can be downloaded in. */
2767
+ export declare function formatsFor(step: Step): Format[];
2768
+ /** Formats a stored list can be downloaded in; zip = the kept files its rows name, with the list. */
2769
+ export declare const LIST_FORMATS: Format[];
2770
+ /** "lists.providers" → "providers"; anything else → null. */
2771
+ export declare function listRef(ref: string): string | null;
2772
+ export declare const DEFAULT_WIDGET_SIZE: {
2773
+ width: number;
2774
+ height: number;
2775
+ };
2776
+ export declare function widgetSize(step: WidgetStep): {
2777
+ width: number;
2778
+ height: number;
2779
+ };
2780
+ /** A widget data reference without braces: "{{steps.x}}" and "steps.x" mean the same. */
2781
+ export declare function dataRef(raw: string): string;
2782
+ export interface ValidationIssue {
2783
+ stepId?: string;
2784
+ message: string;
2785
+ }
2786
+ export declare function templateRefs(template: string): string[];
2787
+ /**
2788
+ * Structural checks the schema cannot express: ids, references between steps,
2789
+ * templates naming things that exist by the time the step runs.
2790
+ */
2791
+ export declare function validateWizard(def: WizardDefinition, files?: string[]): ValidationIssue[];
2792
+ /** Parse + validate in one go. */
2793
+ export declare function parseWizard(input: unknown, files?: string[]): {
2794
+ ok: true;
2795
+ wizard: WizardDefinition;
2796
+ issues: ValidationIssue[];
2797
+ } | {
2798
+ ok: false;
2799
+ issues: ValidationIssue[];
2800
+ };
2801
+ /** Where the shape is wrong, a step named by its id: `steps[2] "draft".title: …`. */
2802
+ export declare function shapeIssues(error: z.ZodError, raw: unknown): ValidationIssue[];
2803
+ /**
2804
+ * What branch rules can read in a run: the person's answers by field id, and the structured
2805
+ * output of the steps run so far as `steps.<step>.<field>`.
2806
+ */
2807
+ export declare function branchValues(values: Record<string, unknown>, outputs: Record<string, {
2808
+ json?: unknown;
2809
+ decided?: Record<string, number>;
2810
+ }>,
2811
+ /** Rows per stored list, read as `lists.<list>.count`. */
2812
+ listCounts?: Record<string, number>): Record<string, unknown>;
2813
+ /** A branch back to an earlier step without `max` is taken at most this often in one run. */
2814
+ export declare const DEFAULT_LOOP_MAX = 10;
2815
+ /** How a run counts the times it took a branch: "<step>→<goto>". */
2816
+ export declare function loopKey(stepId: string, goto: string): string;
2817
+ /** Whether a rule may still send the run on: one with `max`, or one back, stops after so many. */
2818
+ export declare function ruleOpen(def: WizardDefinition, stepId: string, rule: NextRule, loops?: Record<string, number>): boolean;
2819
+ /**
2820
+ * Where a run goes after a step: the first open `when` rule that holds (`rule` is its index in
2821
+ * `next`), else a decision over the open `ask` rules, else the next step in the list. `cursor`
2822
+ * null = the end.
2823
+ */
2824
+ export type RuleOutcome = {
2825
+ kind: "go";
2826
+ cursor: string | null;
2827
+ rule: number | null;
2828
+ } | {
2829
+ kind: "decide";
2830
+ rules: number[];
2831
+ };
2832
+ export declare function followRules(def: WizardDefinition, stepId: string, values: Record<string, unknown>, loops?: Record<string, number>): RuleOutcome;
2833
+ /** A rule with neither a condition nor a statement: where the run goes when no other rule holds. */
2834
+ export declare function isOtherwise(rule: NextRule): boolean;
2835
+ /**
2836
+ * Where a step goes when none of its rules holds: its "otherwise" rule (`rule` is its index in
2837
+ * `next`), else the next step in the list. `cursor` null = the end.
2838
+ */
2839
+ export declare function otherwiseOf(def: WizardDefinition, stepId: string, loops?: Record<string, number>): {
2840
+ cursor: string | null;
2841
+ rule: number | null;
2842
+ };
2843
+ /** The step after `step` by its `when` rules alone. `null` = the end. */
2844
+ export declare function nextStepId(def: WizardDefinition, stepId: string, values: Record<string, unknown>): string | null;
2845
+ /** The conditions of a rule or a field, as a list: one, several, or none. */
2846
+ export declare function conditionsOf(when: When | undefined): Condition[];
2847
+ export declare function conditionMatches(c: Condition, values: Record<string, unknown>): boolean;
2848
+ /** Whether every condition holds; no conditions hold trivially. */
2849
+ export declare function whenHolds(when: When | undefined, values: Record<string, unknown>): boolean;
2850
+ /** Whether a `when` rule holds. An `ask` rule never holds here: a decision takes it (see decide). */
2851
+ export declare function ruleMatches(rule: NextRule, values: Record<string, unknown>): boolean;
2852
+ /** A page with decided fields has at most this many; it shows at most MAX_SHOWN_FIELDS of them. */
2853
+ export declare const MAX_DECIDED_FIELDS = 12;
2854
+ export declare const MAX_SHOWN_FIELDS = 5;
2855
+ /** Whether a field is shown only when a decision keeps it. */
2856
+ export declare function isDecidedField(field: Field): boolean;
2857
+ /**
2858
+ * The fields of a page that are shown: those whose `when` holds on what was known before the
2859
+ * page (`known`) and what the page holds so far (`page`). A hidden field's value does not count
2860
+ * for the fields after it.
2861
+ */
2862
+ export declare function shownFields(fields: Field[], known: Record<string, unknown>, page: Record<string, unknown>): Field[];
2863
+ /** The references the `when` of a page's fields read outside the page: what the page must know. */
2864
+ export declare function pageNeeds(fields: Field[]): string[];
2865
+ /** At most this many choices come from data. */
2866
+ export declare const MAX_DATA_OPTIONS = 100;
2867
+ /**
2868
+ * The choices an `optionsFrom` reference finds in a run: the entries of a list output, one
2869
+ * column of a table output, or one column of a stored list — as text, without duplicates and
2870
+ * empties. Empty when the data is not there (yet).
2871
+ */
2872
+ export declare function optionsFromData(ref: string, outputs: Record<string, {
2873
+ json?: unknown;
2874
+ }>, lists?: Record<string, {
2875
+ rows: {
2876
+ cells: Record<string, unknown>;
2877
+ }[];
2878
+ }>, cards?: CardsDef): string[];
2879
+ /** The rows of a table output as cards: what `optionsFrom` with `cards` finds in the run. */
2880
+ export declare function cardsFromData(ref: string, outputs: Record<string, {
2881
+ json?: unknown;
2882
+ }>, cards: CardsDef): CardOption[];
2883
+ /** An offered appointment time read on its own clock: the offset it was written with. */
2884
+ export interface SlotTime {
2885
+ /** The calendar day there: "2026-10-12". */
2886
+ day: string;
2887
+ /** The time of day there: "09:00". */
2888
+ time: string;
2889
+ /** That day and time as if it were UTC — to name the weekday and month without moving it. */
2890
+ wall: Date;
2891
+ }
2892
+ /**
2893
+ * A slot option as day and time in its own offset (the business's time zone, not the reader's).
2894
+ * Null when it is not an ISO 8601 date-time with an offset.
2895
+ */
2896
+ export declare function slotTime(iso: string): SlotTime | null;
2897
+ /** The weekday and date of a slot's day: "Montag, 12. Oktober" / "Monday, 12 October". */
2898
+ export declare function slotDayText(iso: string, lang?: string): string;
2899
+ /** A chosen slot as a person reads it back: "Di 13.10.2026, 10:30" / "Tue 13/10/2026, 10:30". */
2900
+ export declare function slotText(iso: string, lang?: string): string;
2901
+ /**
2902
+ * The slot among `options` that is the same moment as `value`, written as offered — so an answer
2903
+ * in another offset ("…T07:00:00Z" for "…T09:00:00+02:00") picks the offered time.
2904
+ */
2905
+ export declare function offeredSlot(value: string, options: string[]): string | undefined;
2906
+ export interface ItemsTotals {
2907
+ rows: Record<string, unknown>[];
2908
+ net: number;
2909
+ vatRate: number;
2910
+ vat: number;
2911
+ gross: number;
2912
+ currency: string;
2913
+ }
2914
+ export declare function itemsTotals(field: Field, value: unknown, values: Record<string, unknown>): ItemsTotals;
2915
+ export declare function allFields(def: WizardDefinition): Field[];
2916
+ /**
2917
+ * The language a wizard speaks to people: the one it names, else read from its own words
2918
+ * (titles, labels, intro) — English where they are not clearly German.
2919
+ */
2920
+ export declare function wizardLang(def: WizardDefinition): string;
2921
+ /** True when this app's schema reads the definition without losing anything of it. */
2922
+ export declare function readable(definition: unknown): boolean;