@tangle-network/agent-app 0.45.53 → 0.45.55

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 (480) hide show
  1. package/README.md +1 -1
  2. package/dist/alerting/index.d.ts +5 -175
  3. package/dist/alerting/slack.d.ts +176 -0
  4. package/dist/app-auth/index.d.ts +14 -17
  5. package/dist/assets/index.d.ts +2 -504
  6. package/dist/assets/schema.d.ts +264 -0
  7. package/dist/assets/types.d.ts +237 -0
  8. package/dist/assistant/AssistantDock.d.ts +56 -0
  9. package/dist/assistant/AssistantHistory.d.ts +41 -0
  10. package/dist/assistant/AssistantPanel.d.ts +84 -0
  11. package/dist/assistant/ProposalCard.d.ts +41 -0
  12. package/dist/assistant/ResizeHandle.d.ts +19 -0
  13. package/dist/assistant/client-context.d.ts +20 -0
  14. package/dist/assistant/client.d.ts +117 -0
  15. package/dist/assistant/index.d.ts +19 -848
  16. package/dist/assistant/launcher.d.ts +23 -0
  17. package/dist/assistant/persistence.d.ts +26 -0
  18. package/dist/assistant/presentation.d.ts +99 -0
  19. package/dist/assistant/provider-label.d.ts +7 -0
  20. package/dist/assistant/reducer.d.ts +130 -0
  21. package/dist/assistant/sse.d.ts +24 -0
  22. package/dist/assistant/time-ago.d.ts +6 -0
  23. package/dist/assistant/transcript.d.ts +97 -0
  24. package/dist/assistant/types.d.ts +291 -0
  25. package/dist/assistant/use-stick-to-bottom.d.ts +28 -0
  26. package/dist/assistant/useAssistantChat.d.ts +63 -0
  27. package/dist/assistant/useAssistantModels.d.ts +22 -0
  28. package/dist/assistant/useAssistantThreads.d.ts +47 -0
  29. package/dist/assistant/usePanelPrefs.d.ts +55 -0
  30. package/dist/billing/index.d.ts +19 -21
  31. package/dist/brand/index.d.ts +16 -10
  32. package/dist/brand-extraction/extract.d.ts +34 -0
  33. package/dist/brand-extraction/index.d.ts +12 -214
  34. package/dist/brand-extraction/map.d.ts +58 -0
  35. package/dist/brand-extraction/types.d.ts +119 -0
  36. package/dist/catalog/index.d.ts +11 -101
  37. package/dist/chat-react/composer-mode-controls.d.ts +14 -0
  38. package/dist/chat-react/entry-composer.d.ts +92 -0
  39. package/dist/chat-react/index.d.ts +22 -118
  40. package/dist/chat-react/types.d.ts +11 -0
  41. package/dist/chat-routes/attachment-store.d.ts +84 -0
  42. package/dist/chat-routes/attachment-upload.d.ts +84 -0
  43. package/dist/chat-routes/attachment-validation.d.ts +95 -0
  44. package/dist/chat-routes/binary-sniff.d.ts +45 -0
  45. package/dist/chat-routes/completed-sandbox-turn.d.ts +25 -0
  46. package/dist/chat-routes/detached-turn.d.ts +197 -0
  47. package/dist/chat-routes/dispatch-parts.d.ts +101 -0
  48. package/dist/chat-routes/draft-persistence.d.ts +189 -0
  49. package/dist/chat-routes/durable-projection.d.ts +18 -0
  50. package/dist/chat-routes/file-index.d.ts +115 -0
  51. package/dist/chat-routes/index.d.ts +25 -1840
  52. package/dist/chat-routes/model-failover-stream.d.ts +206 -0
  53. package/dist/chat-routes/promote-file-part.d.ts +84 -0
  54. package/dist/chat-routes/resolve-attachments.d.ts +72 -0
  55. package/dist/chat-routes/sandbox-producer.d.ts +146 -0
  56. package/dist/chat-routes/sandbox-turn-usage.d.ts +4 -0
  57. package/dist/{stale-turn-lock-DucQzvXu.d.ts → chat-routes/stale-turn-lock.d.ts} +7 -9
  58. package/dist/chat-routes/turn-routes.d.ts +540 -0
  59. package/dist/chat-routes/upload.d.ts +84 -0
  60. package/dist/{wire-DOZ-O6hD.d.ts → chat-routes/wire.d.ts} +41 -44
  61. package/dist/chat-store/core.d.ts +19 -0
  62. package/dist/chat-store/index.d.ts +22 -322
  63. package/dist/{parts-BqIHMdyu.d.ts → chat-store/parts.d.ts} +49 -47
  64. package/dist/chat-store/schema.d.ts +157 -0
  65. package/dist/chat-store/store.d.ts +177 -0
  66. package/dist/config/index.d.ts +13 -18
  67. package/dist/crypto/index.d.ts +10 -12
  68. package/dist/crypto/web-token.d.ts +22 -0
  69. package/dist/design-canvas/apply.d.ts +70 -0
  70. package/dist/design-canvas/drizzle-store.d.ts +29 -0
  71. package/dist/design-canvas/drizzle.d.ts +7 -575
  72. package/dist/{export-presets-mgVulRaV.d.ts → design-canvas/export-presets.d.ts} +18 -22
  73. package/dist/design-canvas/index.d.ts +22 -268
  74. package/dist/design-canvas/mcp-entry.d.ts +15 -0
  75. package/dist/design-canvas/mcp-handler.d.ts +34 -0
  76. package/dist/design-canvas/mcp-tools.d.ts +30 -0
  77. package/dist/{model-DnfO_PdJ.d.ts → design-canvas/model.d.ts} +33 -35
  78. package/dist/{operations-ByJ6yXOW.d.ts → design-canvas/operations.d.ts} +21 -25
  79. package/dist/design-canvas/schema.d.ts +558 -0
  80. package/dist/{store-CqfDtnPQ.d.ts → design-canvas/store.d.ts} +8 -12
  81. package/dist/design-canvas/templates.d.ts +72 -0
  82. package/dist/design-canvas/validate.d.ts +32 -0
  83. package/dist/design-canvas-react/components/BleedTrimOverlay.d.ts +22 -0
  84. package/dist/design-canvas-react/components/BrandKnot.d.ts +11 -0
  85. package/dist/design-canvas-react/components/CanvasEmptyState.d.ts +32 -0
  86. package/dist/design-canvas-react/components/CanvasInsertPanel.d.ts +53 -0
  87. package/dist/{lazy-DrkVyDpe.d.ts → design-canvas-react/components/DesignCanvas.d.ts} +27 -20
  88. package/dist/design-canvas-react/components/DesignCanvasEditor.d.ts +23 -0
  89. package/dist/design-canvas-react/components/ElementNode.d.ts +51 -0
  90. package/dist/design-canvas-react/components/ExportControl.d.ts +21 -0
  91. package/dist/design-canvas-react/components/GridLayer.d.ts +47 -0
  92. package/dist/design-canvas-react/components/InlineTextEditor.d.ts +25 -0
  93. package/dist/design-canvas-react/components/LayersPanel.d.ts +20 -0
  94. package/dist/design-canvas-react/components/PagesStrip.d.ts +34 -0
  95. package/dist/design-canvas-react/components/Rulers.d.ts +31 -0
  96. package/dist/design-canvas-react/components/SelectionLayer.d.ts +51 -0
  97. package/dist/design-canvas-react/components/SnapGuidesOverlay.d.ts +25 -0
  98. package/dist/design-canvas-react/components/Toolbar.d.ts +64 -0
  99. package/dist/design-canvas-react/components/Workspace.d.ts +92 -0
  100. package/dist/design-canvas-react/components/ZoomControls.d.ts +14 -0
  101. package/dist/design-canvas-react/components/glyphs.d.ts +46 -0
  102. package/dist/design-canvas-react/components/icon-button.d.ts +22 -0
  103. package/dist/design-canvas-react/components/index.d.ts +27 -0
  104. package/dist/design-canvas-react/components/layer-tree.d.ts +34 -0
  105. package/dist/design-canvas-react/components/ruler-math.d.ts +78 -0
  106. package/dist/design-canvas-react/components/transform-math.d.ts +168 -0
  107. package/dist/{command-stack-TNPWJCzW.d.ts → design-canvas-react/contracts.d.ts} +16 -63
  108. package/dist/design-canvas-react/engine/command-stack.d.ts +43 -0
  109. package/dist/design-canvas-react/engine/commands.d.ts +154 -0
  110. package/dist/design-canvas-react/engine/selection.d.ts +48 -0
  111. package/dist/design-canvas-react/engine/snap.d.ts +24 -0
  112. package/dist/design-canvas-react/engine/zoom-pan.d.ts +18 -0
  113. package/dist/design-canvas-react/engine.d.ts +21 -399
  114. package/dist/design-canvas-react/export-math.d.ts +104 -0
  115. package/dist/design-canvas-react/export.d.ts +89 -0
  116. package/dist/design-canvas-react/index.d.ts +16 -586
  117. package/dist/design-canvas-react/insert-builders.d.ts +61 -0
  118. package/dist/design-canvas-react/lazy.d.ts +21 -6
  119. package/dist/documents/docx.d.ts +50 -0
  120. package/dist/documents/extract.d.ts +87 -0
  121. package/dist/documents/index.d.ts +26 -232
  122. package/dist/documents/media-type.d.ts +33 -0
  123. package/dist/documents/pdf-inspector.d.ts +5 -9
  124. package/dist/{types-DrBidf3O.d.ts → documents/types.d.ts} +13 -15
  125. package/dist/documents/zip.d.ts +56 -0
  126. package/dist/eval/calibration.d.ts +106 -0
  127. package/dist/eval/index.d.ts +8 -116
  128. package/dist/eval-campaign/index.d.ts +11 -12
  129. package/dist/{trust-gate-Dcm5xSva.d.ts → eval-campaign/trust-gate.d.ts} +5 -9
  130. package/dist/forms/blank.d.ts +48 -0
  131. package/dist/forms/fill.d.ts +105 -0
  132. package/dist/forms/index.d.ts +58 -332
  133. package/dist/forms/registry.d.ts +115 -0
  134. package/dist/forms/verify.d.ts +58 -0
  135. package/dist/harness/index.d.ts +21 -19
  136. package/dist/intakes/api.d.ts +5 -11
  137. package/dist/{completion-CvcNUz07.d.ts → intakes/completion.d.ts} +7 -11
  138. package/dist/intakes/context-sufficiency.d.ts +113 -0
  139. package/dist/intakes/drizzle/schema.d.ts +338 -0
  140. package/dist/intakes/drizzle/store.d.ts +75 -0
  141. package/dist/intakes/drizzle.d.ts +12 -391
  142. package/dist/intakes/index.d.ts +23 -113
  143. package/dist/{model-C8U0HZxL.d.ts → intakes/model.d.ts} +15 -17
  144. package/dist/intakes-react/components/BrandMark.d.ts +10 -0
  145. package/dist/intakes-react/components/IntakeInterview.d.ts +15 -0
  146. package/dist/intakes-react/components/index.d.ts +1 -0
  147. package/dist/intakes-react/contracts.d.ts +42 -0
  148. package/dist/intakes-react/index.d.ts +12 -47
  149. package/dist/intakes-react/lazy.d.ts +9 -8
  150. package/dist/integrations/index.d.ts +10 -12
  151. package/dist/{contract-OxG_jVMx.d.ts → interactions/contract.d.ts} +40 -42
  152. package/dist/interactions/index.d.ts +16 -256
  153. package/dist/interactions/route.d.ts +151 -0
  154. package/dist/interactions/sidecar.d.ts +100 -0
  155. package/dist/knowledge/index.d.ts +7 -11
  156. package/dist/knowledge-loop/index.d.ts +13 -20
  157. package/dist/legibility/checks/empty-state.d.ts +59 -0
  158. package/dist/legibility/checks/reachability.d.ts +103 -0
  159. package/dist/legibility/checks/silent-failure.d.ts +57 -0
  160. package/dist/legibility/checks/success.d.ts +38 -0
  161. package/dist/legibility/checks/vocabulary.d.ts +65 -0
  162. package/dist/legibility/cli-args.d.ts +30 -0
  163. package/dist/legibility/cli.d.ts +25 -0
  164. package/dist/legibility/index.d.ts +10 -530
  165. package/dist/legibility/report.d.ts +22 -0
  166. package/dist/legibility/scan.d.ts +29 -0
  167. package/dist/legibility/source.d.ts +132 -0
  168. package/dist/legibility/suppress.d.ts +36 -0
  169. package/dist/legibility/types.d.ts +168 -0
  170. package/dist/legibility/walk-sources.d.ts +21 -0
  171. package/dist/{agent-activity-C8ZG0F0M.d.ts → missions/agent-activity.d.ts} +3 -5
  172. package/dist/missions/engine.d.ts +251 -0
  173. package/dist/missions/events.d.ts +195 -0
  174. package/dist/missions/index.d.ts +12 -765
  175. package/dist/missions/plan-parse.d.ts +50 -0
  176. package/dist/missions/service.d.ts +265 -0
  177. package/dist/{failover-D-3UXXTb.d.ts → model-resolution/failover.d.ts} +10 -12
  178. package/dist/model-resolution/index.d.ts +15 -18
  179. package/dist/object-store/index.d.ts +15 -17
  180. package/dist/openui/action.d.ts +54 -0
  181. package/dist/openui/authoring.d.ts +25 -0
  182. package/dist/openui/index.d.ts +24 -206
  183. package/dist/openui/route.d.ts +124 -0
  184. package/dist/openui/segments.d.ts +71 -0
  185. package/dist/openui/values.d.ts +82 -0
  186. package/dist/openui-react/index.d.ts +9 -13
  187. package/dist/peer-floors/check.d.ts +9 -190
  188. package/dist/peer-floors/cli.d.ts +2 -3
  189. package/dist/peer-floors/dependency-source.d.ts +178 -0
  190. package/dist/plans/index.d.ts +13 -14
  191. package/dist/{billing-BuNlaKlE.d.ts → platform/billing.d.ts} +28 -32
  192. package/dist/platform/guards.d.ts +79 -0
  193. package/dist/platform/hub.d.ts +107 -0
  194. package/dist/platform/index.d.ts +7 -112
  195. package/dist/{sso-Cm00S61u.d.ts → platform/sso.d.ts} +15 -97
  196. package/dist/preflight/cli.d.ts +3 -6
  197. package/dist/preflight/index.d.ts +16 -18
  198. package/dist/preset-cloudflare/headers.d.ts +12 -0
  199. package/dist/preset-cloudflare/index.d.ts +22 -74
  200. package/dist/preset-cloudflare/workflow-instance.d.ts +35 -0
  201. package/dist/profile/budget.d.ts +72 -0
  202. package/dist/profile/fingerprint.d.ts +65 -0
  203. package/dist/profile/index.d.ts +27 -19
  204. package/dist/prompt/index.d.ts +3 -5
  205. package/dist/record/drizzle/schema.d.ts +488 -0
  206. package/dist/record/drizzle/store.d.ts +224 -0
  207. package/dist/record/drizzle.d.ts +10 -679
  208. package/dist/record/fold.d.ts +99 -0
  209. package/dist/record/index.d.ts +13 -13
  210. package/dist/{fold-DACU7gtf.d.ts → record/model.d.ts} +22 -124
  211. package/dist/record/ulid.d.ts +12 -0
  212. package/dist/redact/index.d.ts +14 -16
  213. package/dist/run/index.d.ts +11 -16
  214. package/dist/runtime/agent.d.ts +23 -0
  215. package/dist/runtime/certified-delivery.d.ts +57 -0
  216. package/dist/runtime/index.d.ts +17 -367
  217. package/dist/runtime/loop.d.ts +58 -0
  218. package/dist/runtime/model-catalog.d.ts +103 -0
  219. package/dist/{model-CdCDfBA9.d.ts → runtime/model.d.ts} +25 -27
  220. package/dist/runtime/openai-stream.d.ts +126 -0
  221. package/dist/runtime/surface-profile.d.ts +115 -0
  222. package/dist/sandbox/binary-read.d.ts +63 -0
  223. package/dist/sandbox/diagnostics.d.ts +69 -0
  224. package/dist/sandbox/index.d.ts +103 -1085
  225. package/dist/sandbox/model.d.ts +179 -0
  226. package/dist/sandbox/outcome.d.ts +10 -0
  227. package/dist/sandbox/prewarm-claim-d1.d.ts +80 -0
  228. package/dist/sandbox/prewarm.d.ts +193 -0
  229. package/dist/sandbox/recovery.d.ts +216 -0
  230. package/dist/sandbox/terminal-connection.d.ts +145 -0
  231. package/dist/sandbox/workspace-sandbox-manager.d.ts +44 -0
  232. package/dist/sequences/apply.d.ts +54 -0
  233. package/dist/sequences/captions.d.ts +91 -0
  234. package/dist/sequences/drizzle-store.d.ts +36 -0
  235. package/dist/sequences/drizzle.d.ts +7 -1252
  236. package/dist/sequences/exports.d.ts +138 -0
  237. package/dist/sequences/index.d.ts +19 -340
  238. package/dist/sequences/mcp-entry.d.ts +15 -0
  239. package/dist/sequences/mcp-handler.d.ts +39 -0
  240. package/dist/sequences/mcp-tools.d.ts +47 -0
  241. package/dist/{store-B7LLlk9p.d.ts → sequences/model.d.ts} +26 -110
  242. package/dist/sequences/operations.d.ts +126 -0
  243. package/dist/sequences/schema.d.ts +1231 -0
  244. package/dist/sequences/store.d.ts +81 -0
  245. package/dist/sequences/validate.d.ts +98 -0
  246. package/dist/sequences-react/components/BrandMark.d.ts +10 -0
  247. package/dist/sequences-react/components/PreviewCanvas.d.ts +26 -0
  248. package/dist/sequences-react/components/SnapIndicatorLine.d.ts +11 -0
  249. package/dist/sequences-react/components/TimelineClipChip.d.ts +80 -0
  250. package/dist/sequences-react/components/TimelineEditor.d.ts +44 -0
  251. package/dist/sequences-react/components/TimelineEmptyState.d.ts +21 -0
  252. package/dist/sequences-react/components/TimelineGhostLanes.d.ts +14 -0
  253. package/dist/sequences-react/components/TimelinePlayhead.d.ts +11 -0
  254. package/dist/sequences-react/components/TimelineRuler.d.ts +16 -0
  255. package/dist/sequences-react/components/TimelineSmallScreenGate.d.ts +12 -0
  256. package/dist/sequences-react/components/TimelineTrackRow.d.ts +51 -0
  257. package/dist/sequences-react/components/ZoomControl.d.ts +15 -0
  258. package/dist/sequences-react/components/composite-command.d.ts +8 -0
  259. package/dist/sequences-react/components/glyphs.d.ts +26 -0
  260. package/dist/sequences-react/components/index.d.ts +31 -0
  261. package/dist/sequences-react/components/interaction-math.d.ts +103 -0
  262. package/dist/sequences-react/contracts.d.ts +187 -0
  263. package/dist/sequences-react/engine/command-stack.d.ts +18 -0
  264. package/dist/sequences-react/engine/commands.d.ts +146 -0
  265. package/dist/sequences-react/engine/playback.d.ts +18 -0
  266. package/dist/sequences-react/engine/snap.d.ts +29 -0
  267. package/dist/sequences-react/engine/zoom.d.ts +29 -0
  268. package/dist/sequences-react/index.d.ts +20 -880
  269. package/dist/sequences-react/lazy.d.ts +8 -0
  270. package/dist/sequences-react/media/frame-provider.d.ts +70 -0
  271. package/dist/sequences-react/media/transcription.d.ts +33 -0
  272. package/dist/sequences-react/media/waveform.d.ts +34 -0
  273. package/dist/session-shell/index.d.ts +31 -204
  274. package/dist/session-shell/nav-guard.d.ts +170 -0
  275. package/dist/session-shell/path.d.ts +19 -0
  276. package/dist/signoff/cli.d.ts +4 -7
  277. package/dist/signoff/config.d.ts +12 -0
  278. package/dist/signoff/exec.d.ts +44 -0
  279. package/dist/signoff/index.d.ts +56 -14
  280. package/dist/signoff/invoked-as-script.d.ts +25 -0
  281. package/dist/signoff/node-version.d.ts +50 -0
  282. package/dist/signoff/proof-attach.d.ts +88 -0
  283. package/dist/signoff/proof-cli.d.ts +1 -0
  284. package/dist/signoff/proof-fixture.d.ts +13 -0
  285. package/dist/signoff/proof-from-report.d.ts +22 -0
  286. package/dist/signoff/proof-git.d.ts +57 -0
  287. package/dist/signoff/proof-record.d.ts +202 -0
  288. package/dist/signoff/proof-verify.d.ts +103 -0
  289. package/dist/signoff/proof.d.ts +35 -310
  290. package/dist/signoff/report.d.ts +7 -0
  291. package/dist/{run-D80hoLKh.d.ts → signoff/run.d.ts} +3 -6
  292. package/dist/signoff/schedule.d.ts +55 -0
  293. package/dist/signoff/seeds.d.ts +50 -0
  294. package/dist/signoff/store.d.ts +22 -0
  295. package/dist/{types-Bd6uW9vQ.d.ts → signoff/types.d.ts} +15 -17
  296. package/dist/signoff/workflow-pin.d.ts +56 -0
  297. package/dist/signoff/workspace.d.ts +40 -0
  298. package/dist/skills/index.d.ts +28 -32
  299. package/dist/skills-placement/index.d.ts +7 -11
  300. package/dist/spend/budget.d.ts +123 -0
  301. package/dist/spend/ceiling.d.ts +51 -0
  302. package/dist/spend/cli-args.d.ts +20 -0
  303. package/dist/spend/cli.d.ts +1 -0
  304. package/dist/spend/fixtures/incident-parked-time.d.ts +55 -0
  305. package/dist/spend/index.d.ts +38 -1144
  306. package/dist/spend/liveness.d.ts +131 -0
  307. package/dist/spend/ownership.d.ts +87 -0
  308. package/dist/spend/reconcile.d.ts +109 -0
  309. package/dist/spend/reference.d.ts +42 -0
  310. package/dist/spend/report.d.ts +12 -0
  311. package/dist/spend/store.d.ts +123 -0
  312. package/dist/spend/types.d.ts +466 -0
  313. package/dist/store/index.d.ts +10 -12
  314. package/dist/stories/app-shell/fixtures.d.ts +43 -0
  315. package/dist/stories/app-shell/shell.d.ts +81 -0
  316. package/dist/stories/assistant/fixtures.d.ts +73 -0
  317. package/dist/stories/chat/fixtures.d.ts +70 -0
  318. package/dist/stories/chat/markdown.d.ts +11 -0
  319. package/dist/stories/chat/run-drill-in.d.ts +19 -0
  320. package/dist/stories/chat-controls/fixtures.d.ts +116 -0
  321. package/dist/stories/design-canvas/fixtures.d.ts +57 -0
  322. package/dist/stories/fixtures/canvas.d.ts +10 -0
  323. package/dist/stories/fixtures/catalog.d.ts +7 -0
  324. package/dist/stories/fixtures/chat.d.ts +39 -0
  325. package/dist/stories/fixtures/index.d.ts +4 -0
  326. package/dist/stories/fixtures/sequences.d.ts +17 -0
  327. package/dist/stories/panels/fixtures.d.ts +63 -0
  328. package/dist/stories/sequences/fixtures.d.ts +30 -0
  329. package/dist/stories/studio/fixtures.d.ts +22 -0
  330. package/dist/stream/index.d.ts +10 -56
  331. package/dist/{stream-normalizer-DKRxyVlZ.d.ts → stream/stream-normalizer.d.ts} +23 -26
  332. package/dist/{turn-buffer-COMQUwO2.d.ts → stream/turn-buffer.d.ts} +21 -23
  333. package/dist/stream/turn-identity.d.ts +49 -0
  334. package/dist/studio/generation.d.ts +179 -0
  335. package/dist/studio/index.d.ts +12 -181
  336. package/dist/studio-react/avatar-composer.d.ts +8 -0
  337. package/dist/studio-react/composer-hero.d.ts +12 -0
  338. package/dist/studio-react/composer-shell.d.ts +18 -0
  339. package/dist/studio-react/generation-card.d.ts +9 -0
  340. package/dist/studio-react/generation-detail-modal.d.ts +11 -0
  341. package/dist/studio-react/generation-detail.d.ts +6 -0
  342. package/dist/studio-react/generation-grid.d.ts +15 -0
  343. package/dist/studio-react/image-composer.d.ts +8 -0
  344. package/dist/studio-react/index.d.ts +32 -245
  345. package/dist/studio-react/library-drawer.d.ts +12 -0
  346. package/dist/studio-react/library-panel.d.ts +15 -0
  347. package/dist/studio-react/publish-package-composer.d.ts +18 -0
  348. package/dist/studio-react/result-canvas.d.ts +6 -0
  349. package/dist/studio-react/speech-composer.d.ts +4 -0
  350. package/dist/studio-react/studio-header.d.ts +5 -0
  351. package/dist/studio-react/studio-sheet.d.ts +12 -0
  352. package/dist/studio-react/studio-workspace.d.ts +23 -0
  353. package/dist/studio-react/transcription-composer.d.ts +12 -0
  354. package/dist/studio-react/type-config.d.ts +11 -0
  355. package/dist/studio-react/use-studio-generations.d.ts +20 -0
  356. package/dist/studio-react/video-composer.d.ts +10 -0
  357. package/dist/tangle/index.d.ts +7 -9
  358. package/dist/teams/drizzle/access.d.ts +82 -0
  359. package/dist/{invitations-schema-_fI7HkJP.d.ts → teams/drizzle/invitations-schema.d.ts} +39 -27
  360. package/dist/teams/drizzle/personal-organization.d.ts +41 -0
  361. package/dist/{access-490O6aOU.d.ts → teams/drizzle/schema.d.ts} +57 -122
  362. package/dist/teams/drizzle.d.ts +12 -44
  363. package/dist/teams/index.d.ts +20 -44
  364. package/dist/teams/invitations-api.d.ts +17 -21
  365. package/dist/{invitations-DoYMvXea.d.ts → teams/invitations.d.ts} +14 -18
  366. package/dist/teams/invite.d.ts +42 -0
  367. package/dist/teams/members-api.d.ts +12 -16
  368. package/dist/teams/resend.d.ts +3 -13
  369. package/dist/{roles-B4nU3jDi.d.ts → teams/roles.d.ts} +18 -20
  370. package/dist/teams-react/components/BrandMark.d.ts +10 -0
  371. package/dist/teams-react/components/InvitationsPanel.d.ts +13 -0
  372. package/dist/teams-react/components/InviteAcceptPage.d.ts +10 -0
  373. package/dist/teams-react/components/MembersPanel.d.ts +14 -0
  374. package/dist/teams-react/components/RoleSelect.d.ts +17 -0
  375. package/dist/teams-react/components/index.d.ts +3 -0
  376. package/dist/teams-react/contracts.d.ts +134 -0
  377. package/dist/teams-react/index.d.ts +12 -143
  378. package/dist/teams-react/lazy.d.ts +11 -11
  379. package/dist/test-setup.d.ts +1 -0
  380. package/dist/theme/index.d.ts +6 -104
  381. package/dist/theme/tailwind-preset.d.ts +1 -2
  382. package/dist/theme/theme.d.ts +106 -0
  383. package/dist/theme-contract/cli.d.ts +21 -0
  384. package/dist/theme-contract/index.d.ts +4 -6
  385. package/dist/{auth-BYtiazA4.d.ts → tools/auth.d.ts} +8 -11
  386. package/dist/tools/capability.d.ts +54 -0
  387. package/dist/tools/dispatch.d.ts +37 -0
  388. package/dist/tools/errors.d.ts +8 -0
  389. package/dist/tools/gating.d.ts +62 -0
  390. package/dist/tools/http.d.ts +27 -0
  391. package/dist/tools/index.d.ts +12 -217
  392. package/dist/{mcp-rpc-DYwPlYbZ.d.ts → tools/mcp-rpc.d.ts} +7 -9
  393. package/dist/{mcp-xxoZZfor.d.ts → tools/mcp.d.ts} +14 -16
  394. package/dist/tools/openai.d.ts +28 -0
  395. package/dist/tools/registry.d.ts +39 -0
  396. package/dist/tools/runtime.d.ts +22 -0
  397. package/dist/{types-B25Mib1r.d.ts → tools/types.d.ts} +15 -83
  398. package/dist/{flow-types-CJxEmaRy.d.ts → trace/flow-types.d.ts} +2 -4
  399. package/dist/trace/index.d.ts +11 -148
  400. package/dist/trace/mission-flow.d.ts +82 -0
  401. package/dist/trace/mission-trace.d.ts +52 -0
  402. package/dist/turn-health/classify.d.ts +207 -0
  403. package/dist/turn-health/index.d.ts +29 -637
  404. package/dist/turn-health/lifecycle.d.ts +75 -0
  405. package/dist/turn-health/sink.d.ts +122 -0
  406. package/dist/turn-health/sweep.d.ts +245 -0
  407. package/dist/turn-stream/adapters.d.ts +257 -0
  408. package/dist/turn-stream/core.d.ts +293 -0
  409. package/dist/turn-stream/do.d.ts +144 -0
  410. package/dist/turn-stream/index.d.ts +62 -738
  411. package/dist/turn-stream/memory.d.ts +41 -0
  412. package/dist/vault/ConfirmDialog.d.ts +22 -0
  413. package/dist/vault/VaultPane.d.ts +15 -0
  414. package/dist/{VaultPane-BDP6SB_K.d.ts → vault/contracts.d.ts} +15 -22
  415. package/dist/vault/index.d.ts +15 -22
  416. package/dist/vault/lazy.d.ts +9 -7
  417. package/dist/vault/server.d.ts +8 -10
  418. package/dist/web/free-route-limit.d.ts +187 -0
  419. package/dist/web/index.d.ts +15 -207
  420. package/dist/{rate-limit-BOVmJRXZ.d.ts → web/rate-limit.d.ts} +3 -5
  421. package/dist/web-react/agent-session-controls.d.ts +105 -0
  422. package/dist/web-react/async/async-view.d.ts +69 -0
  423. package/dist/web-react/async/index.d.ts +13 -305
  424. package/dist/web-react/async/state.d.ts +107 -0
  425. package/dist/web-react/async/use-async-resource.d.ts +41 -0
  426. package/dist/web-react/async/use-confirmed-mutation.d.ts +90 -0
  427. package/dist/web-react/brand-mark.d.ts +11 -0
  428. package/dist/web-react/chat-attachments.d.ts +21 -0
  429. package/dist/web-react/chat-composer.d.ts +174 -0
  430. package/dist/web-react/chat-interactions.d.ts +1 -0
  431. package/dist/web-react/chat-mentions.d.ts +48 -0
  432. package/dist/web-react/chat-stream.d.ts +106 -0
  433. package/dist/web-react/class-names.d.ts +10 -0
  434. package/dist/web-react/controls.d.ts +265 -0
  435. package/dist/web-react/durable-chat-cards.d.ts +40 -0
  436. package/dist/web-react/durable-interaction-submit.d.ts +22 -0
  437. package/dist/web-react/durable-plan-card.d.ts +13 -0
  438. package/dist/web-react/durable-plan-flow.d.ts +77 -0
  439. package/dist/web-react/harness-glyphs.d.ts +28 -0
  440. package/dist/web-react/index.d.ts +80 -2347
  441. package/dist/web-react/inert.d.ts +39 -0
  442. package/dist/web-react/insight-card.d.ts +203 -0
  443. package/dist/web-react/interaction-card-support.d.ts +115 -0
  444. package/dist/web-react/interaction-plan-card.d.ts +39 -0
  445. package/dist/web-react/interaction-question-card.d.ts +100 -0
  446. package/dist/web-react/message-attachments.d.ts +56 -0
  447. package/dist/web-react/mission-activity.d.ts +96 -0
  448. package/dist/web-react/motion.d.ts +43 -0
  449. package/dist/web-react/provenance-model.d.ts +195 -0
  450. package/dist/web-react/provenance.d.ts +82 -0
  451. package/dist/web-react/provider-logo.d.ts +14 -0
  452. package/dist/web-react/record-grid-model.d.ts +257 -0
  453. package/dist/web-react/record-grid.d.ts +108 -0
  454. package/dist/web-react/sandbox-terminal.d.ts +90 -0
  455. package/dist/web-react/seat-paywall.d.ts +47 -0
  456. package/dist/web-react/session-history.d.ts +196 -0
  457. package/dist/web-react/smooth-text.d.ts +29 -0
  458. package/dist/web-react/sparkline.d.ts +150 -0
  459. package/dist/web-react/terminal.d.ts +1 -92
  460. package/dist/web-react/use-chat-interactions.d.ts +78 -0
  461. package/dist/web-react/use-composer-attachments.d.ts +111 -0
  462. package/dist/web-react/use-file-mentions.d.ts +94 -0
  463. package/dist/web-react/work-product.d.ts +105 -0
  464. package/dist/work-product/claim-support.d.ts +288 -0
  465. package/dist/work-product/index.d.ts +16 -849
  466. package/dist/work-product/provenance.d.ts +61 -0
  467. package/dist/{queue-VTBA5ONX.d.ts → work-product/queue.d.ts} +10 -12
  468. package/dist/work-product/quote.d.ts +139 -0
  469. package/dist/work-product/route.d.ts +88 -0
  470. package/dist/work-product/service.d.ts +123 -0
  471. package/dist/work-product/tools.d.ts +144 -0
  472. package/dist/{types-CCeYywdS.d.ts → work-product/types.d.ts} +29 -31
  473. package/dist/work-product-react/index.d.ts +19 -8
  474. package/dist/workspace-react/index.d.ts +8 -11
  475. package/package.json +5 -4
  476. package/dist/agent-session-controls-CmlXwp_H.d.ts +0 -384
  477. package/dist/apply-6wlMOLf8.d.ts +0 -280
  478. package/dist/attachment-validation-BfJDBU1g.d.ts +0 -261
  479. package/dist/budget-BOucfcb_.d.ts +0 -142
  480. package/dist/values-C7RidJuI.d.ts +0 -156
@@ -1,587 +1,17 @@
1
- import { D as DesignCanvasProps, c as createSceneCommandStack, E as ExportTriggerOptions, a as DesignCanvasMode } from '../command-stack-TNPWJCzW.js';
2
- export { A as ApplySceneResult, b as EditorSceneState, S as SCENE_COMMAND_HISTORY_LIMIT, d as SceneCommand, e as SceneCommandStack, f as SceneCommandStackWithReapply, g as SnapEngine, h as SnapResult, i as SnapTarget, j as SnapTargetKind, k as SnapTargets, Z as ZoomPanMath } from '../command-stack-TNPWJCzW.js';
3
- import { InsertPageGeometry, InsertTemplate, MultiSetAttrsEntry } from './engine.js';
4
- export { AddElementInput, AddPageInput, BindSlotInput, DEFAULT_INSERT_TEMPLATES, DUPLICATE_OFFSET, DeleteElementInput, DeletePageInput, DuplicatePageInput, ExportViewSnapshot, GroupElementsInput, MAX_INSERT_DIMENSION, MarqueeSelectOptions, NODE_CACHE_PIXEL_RATIO_MAX, NudgeDelta, ReorderElementInput, ReorderPageInput, ResolvedExportParams, SetAttrsInput, SetDocumentTitleInput, SetPageGuidesInput, SetPagePropsInput, UngroupElementInput, ZoomPanConfig, addElementCommand, addPageCommand, bindSlotCommand, buildInsertImageOp, centeredPosition, collectGridTargets, createSnapEngine, createZoomPanMath, deleteElementCommand, deletePageCommand, documentCropToStageCoords, duplicatePageCommand, fittedSize, groupElementsCommand, hitTestPoint, identifyTaintedSrc, isCrossOriginSrc, isExportHiddenNodeName, marqueeSelect, mintElementId, multiSetAttrsCommand, nudgeDelta, reorderElementCommand, reorderPageCommand, resolveExportParams, resolveNodeCachePixelRatio, setAttrsCommand, setDocumentTitleCommand, setPageGuidesCommand, setPagePropsCommand, ungroupElementCommand } from './engine.js';
5
- import { c as SceneDocument, S as ScenePage, a as SceneElement, P as PageBleed, b as PageGuides } from '../model-DnfO_PdJ.js';
6
- import { f as ExportPreset } from '../export-presets-mgVulRaV.js';
7
- export { d as ExportCropRect, h as bleedAwareExportBounds, s as scaleForPreset } from '../export-presets-mgVulRaV.js';
8
- export { D as DesignCanvas, a as DesignCanvasChromeLazy, b as DesignCanvasEditor, c as DesignCanvasFullProps, d as DesignCanvasLazy } from '../lazy-DrkVyDpe.js';
9
- import * as react from 'react';
10
- import { ButtonHTMLAttributes } from 'react';
11
- import { S as SceneOperation, h as SceneAttrsPatch } from '../operations-ByJ6yXOW.js';
12
- import { CanvasRenderPalette } from '../theme/index.js';
13
- import Konva from 'konva';
14
-
15
1
  /**
16
- * Client-side export for design-canvas pages: raster (PNG/JPEG via Konva
17
- * stage.toDataURL) and JSON (document serialisation).
18
- *
19
- * The heavy lifting crop math, pixel ratio resolution, CORS taint detection
20
- * — lives in export-math.ts where it can be unit-tested without a canvas
21
- * context. This file is the thin Konva-wiring layer: hide overlays, call
22
- * toDataURL, restore, handle the SecurityError.
23
- *
24
- * Konva is an OPTIONAL peer. Import this file only from browser-context code
25
- * that has konva wired in. The types are written against a minimal structural
26
- * interface so the file compiles even when konva's types are absent.
27
- */
28
-
29
- interface KonvaNodeLike {
30
- name(): string;
31
- visible(): boolean;
32
- visible(v: boolean): void;
33
- getAttr(key: string): unknown;
34
- isCached(): boolean;
35
- clearCache(): void;
36
- cache(config?: {
37
- pixelRatio?: number;
38
- }): void;
39
- getAbsoluteScale(): {
40
- x: number;
41
- y: number;
42
- };
43
- /** Konva.Container only — leaf shapes lack it; the cache walk treats its
44
- * absence as "no children". */
45
- getChildren?(): KonvaNodeLike[];
46
- }
47
- interface KonvaLayerLike {
48
- getChildren(): KonvaNodeLike[];
49
- }
50
- interface KonvaStageLike {
51
- scaleX(): number;
52
- scaleY(): number;
53
- x(): number;
54
- y(): number;
55
- getLayers(): KonvaLayerLike[];
56
- toDataURL(params: {
57
- mimeType: string;
58
- quality?: number;
59
- pixelRatio: number;
60
- x: number;
61
- y: number;
62
- width: number;
63
- height: number;
64
- }): string;
65
- }
66
- /** Define options to export a page as a data URL with format, pixel ratio, bleed, and preset settings */
67
- interface ExportPageDataUrlOptions {
68
- format: 'png' | 'jpeg';
69
- pixelRatio?: number;
70
- includeBleed?: boolean;
71
- preset?: ExportPreset;
72
- }
73
- /**
74
- * Render a single page to a data URL.
75
- *
76
- * The function temporarily hides every node whose name starts with 'overlay:'
77
- * plus any Transformer node, computes the crop rect and pixel ratio from the
78
- * page model and options, calls stage.toDataURL, then restores all prior view
79
- * state exactly — zoom, pan, and node visibility.
80
- *
81
- * Rejects with a descriptive error when a CORS-tainted image source causes
82
- * the SecurityError, naming the offending src so the caller can surface it.
83
- *
84
- * The `stage` argument must be the Konva stage with the page content already
85
- * rendered. The caller is responsible for ensuring all async image loads have
86
- * settled before calling this function.
87
- */
88
- declare function exportPageDataUrl(stage: KonvaStageLike, page: ScenePage, opts: ExportPageDataUrlOptions): Promise<string>;
89
- /**
90
- * Serialize a scene document to pretty-printed JSON with schemaVersion
91
- * asserted. Throws when the document's schemaVersion does not match
92
- * SCENE_SCHEMA_VERSION — the caller must not smuggle stale documents through.
93
- */
94
- declare function exportDocumentJson(document: SceneDocument): string;
95
- /**
96
- * Trigger a browser download for a data URL. Safe to import in SSR — the
97
- * function is a no-op when `document` is not defined (e.g. server-side render
98
- * or test environment without a DOM). The integrator must not rely on the
99
- * download executing in those contexts.
100
- */
101
- declare function downloadDataUrl(dataUrl: string, filename: string): void;
102
-
103
- /** An already-generated image the panel can offer for one-click insertion. */
104
- interface InsertGeneration {
105
- id: string;
106
- /** The image url to insert. Must satisfy the scene media boundary
107
- * (http(s) or rooted `/api/`); rejected otherwise at insert time. */
108
- url: string;
109
- /** Optional prompt/label shown as the tile's title. */
110
- label?: string;
111
- }
112
- interface CanvasInsertPanelProps {
113
- canWrite: boolean;
114
- /** The active page new elements are added to. */
115
- page: InsertPageGeometry;
116
- /** Submit operations through the host's apply pipeline. */
117
- onInsert(operations: SceneOperation[]): Promise<unknown>;
118
- /** Store an uploaded file and return its src (http(s) or rooted `/api/`). */
119
- onUploadImage?(file: File): Promise<string>;
120
- /** Optional provider for the Generations tab; omit to hide it. */
121
- loadGenerations?(): Promise<InsertGeneration[]>;
122
- /** Drop-in templates; defaults to the built-in starter set. */
123
- templates?: readonly InsertTemplate[];
124
- /** Accepted upload mime types. Default: PNG/JPEG/GIF/WebP. */
125
- accept?: string;
126
- className?: string;
127
- }
128
- declare function CanvasInsertPanel({ canWrite, page, onInsert, onUploadImage, loadGenerations, templates, accept, className, }: CanvasInsertPanelProps): react.JSX.Element;
129
-
130
- interface WorkspaceViewProps {
131
- /** The command stack this view commits gestures through. Must be the same
132
- * instance the chrome (DesignCanvasEditor) owns so undo/redo and layers-
133
- * panel selection are coherent. */
134
- stack: ReturnType<typeof createSceneCommandStack>;
135
- /** Active page resolved before render — WorkspaceView has no conditional
136
- * hook guards; the caller ensures this is never null. */
137
- activePage: ScenePage;
138
- canWrite: boolean;
139
- onApplyOperations: DesignCanvasProps['onApplyOperations'];
140
- onSelectionChange?: DesignCanvasProps['onSelectionChange'];
141
- className?: string;
142
- /** Ref the chrome fills with a fit-page callback. The chrome calls it on F /
143
- * Fit button; when injected via DesignCanvasEditor the ref is shared. */
144
- onFitRef?: React.MutableRefObject<(() => void) | null>;
145
- /** Host export hook. When set, the workspace fills `onExportRef` with a
146
- * callback that renders the stage to a data URL and forwards the result. */
147
- onExport?: DesignCanvasProps['onExport'];
148
- /** Ref the workspace fills with an export callback `(opts) => void`. The
149
- * chrome's Export control calls it; the workspace owns the Konva stage so it
150
- * produces the data URL here. Filled only when `onExport` is also set. */
151
- onExportRef?: React.MutableRefObject<((opts: ExportTriggerOptions) => void) | null>;
152
- /** Fit the active page to the viewport once, on the first non-zero measurement. Default true. */
153
- fitOnMount?: boolean;
154
- /** Called once after the first real (non-zero) measurement, after the initial fit is applied (or skipped). */
155
- onReady?(): void;
156
- /** Konva render palette. Omitted → light defaults (byte-identical history). */
157
- render?: CanvasRenderPalette;
158
- /** Show the branded in-canvas empty state (three doors) while the active page
159
- * has no elements and the user can write. Default true. Set false to keep a
160
- * bare blank stage (e.g. when restoring a saved-but-intentionally-empty page). */
161
- showEmptyState?: boolean;
162
- /** Focus/open the agent from the empty state's "Ask the agent" door. When
163
- * omitted that door is hidden — there is no agent surface to send them to. */
164
- onAskAgent?(): void;
165
- }
166
- declare function WorkspaceView({ canWrite, onApplyOperations, onSelectionChange, className, stack, activePage, onFitRef, onExport, onExportRef, fitOnMount, onReady, render, showEmptyState, onAskAgent, }: WorkspaceViewProps): react.JSX.Element;
167
- /**
168
- * Self-contained Konva workspace that creates its own command stack. Mount
169
- * this when you want the canvas without the toolbar/rulers/pages-strip chrome.
170
- *
171
- * Products that want the full editor (chrome + workspace sharing one stack)
172
- * should mount `DesignCanvasEditor` instead.
173
- */
174
- declare function Workspace(props: DesignCanvasProps): react.JSX.Element | null;
175
-
176
- /**
177
- * In-canvas empty state — the first move on a blank design. Shown by
178
- * WorkspaceView as a centered overlay while the active page has no user
179
- * content, so a fresh canvas reads as "ready to start" rather than "broken or
180
- * empty". Three doors cover the two ways people begin and the agent path:
181
- * - Start with a template — drop a starter element via the same command stack.
182
- * - Add an element — insert a text block by hand.
183
- * - Ask the agent — surfaced only when the host wires `onAskAgent` (an agent
184
- * panel exists); otherwise the door is omitted rather than rendered dead.
185
- *
186
- * Token-styled only (CSS-var tokens + Tailwind semantic names) and stamped with
187
- * the Tangle mark so the blank state is on-brand. Pointer-events stay scoped to
188
- * the card: clicking the surrounding canvas still starts a marquee.
189
- */
190
- interface CanvasEmptyStateProps {
191
- /** Drop a starter template element through the command stack. */
192
- onStartTemplate(): void;
193
- /** Insert a single editable element by hand. */
194
- onAddElement(): void;
195
- /** Focus the agent panel / open the agent. Omitted → the door is hidden. */
196
- onAskAgent?(): void;
197
- /** Heading copy. Overridable; defaults to the cold-open prompt. */
198
- title?: string;
199
- /** Supporting line under the heading. Overridable. */
200
- subtitle?: string;
201
- className?: string;
202
- }
203
- /**
204
- * The three-door empty state. Each door is a real action wired to the editor's
205
- * command stack (or the agent), never a placeholder.
206
- */
207
- declare function CanvasEmptyState({ onStartTemplate, onAddElement, onAskAgent, title, subtitle, className, }: CanvasEmptyStateProps): react.JSX.Element;
208
-
209
- interface SelectionLayerProps {
210
- /** Konva stage reference to look up selected nodes by name. */
211
- stageRef: React.RefObject<Konva.Stage | null>;
212
- /** Selected element ids from editor state. */
213
- selectedIds: string[];
214
- /** The model elements corresponding to selectedIds (pre-gesture snapshot). */
215
- selectedElements: SceneElement[];
216
- /** Whether the canvas is writable. False → transformer renders but is not interactive. */
217
- canWrite: boolean;
218
- /** Emitted when a transform gesture completes with final attrs per element. */
219
- onTransformEnd(entries: MultiSetAttrsEntry[]): void;
220
- /** Active page id — every entry in onTransformEnd carries this. */
221
- pageId: string;
222
- /** Theme render palette. Omitted → light defaults (byte-identical history). */
223
- render?: CanvasRenderPalette;
224
- }
225
- declare function SelectionLayer({ stageRef, selectedIds, selectedElements, canWrite, onTransformEnd, pageId, render, }: SelectionLayerProps): react.JSX.Element;
226
-
227
- interface PagesStripProps {
228
- pages: ScenePage[];
229
- activePageId: string;
230
- canWrite: boolean;
231
- /**
232
- * The host provides this to generate thumbnail data-URLs. The strip calls it
233
- * on mount and debounces re-calls on document changes. Returns null when the
234
- * thumbnail is not yet available (the strip renders a placeholder instead).
235
- */
236
- renderThumbnail(page: ScenePage): Promise<string | null>;
237
- onSelectPage(pageId: string): void;
238
- onAddPage(): void;
239
- onDuplicatePage(pageId: string): void;
240
- onDeletePage(pageId: string): void;
241
- onReorderPage(pageId: string, toIndex: number): void;
242
- /** Show page-management affordances (add / duplicate / delete). Default true.
243
- * The review surface passes false: pages are navigated, not authored. */
244
- canManagePages?: boolean;
245
- /** Heading shown above the strip so it reads as page management. Overridable;
246
- * defaults to "Pages". Set to '' to hide the visible label (the container
247
- * keeps its accessible name regardless). */
248
- label?: string;
249
- }
250
- declare function PagesStrip({ pages, activePageId, canWrite, renderThumbnail, onSelectPage, onAddPage, onDuplicatePage, onDeletePage, onReorderPage, canManagePages, label, }: PagesStripProps): react.JSX.Element;
251
-
252
- interface LayersPanelProps {
253
- page: ScenePage;
254
- selectedElementIds: string[];
255
- canWrite: boolean;
256
- /** Emit a set_attrs command for the given element. */
257
- onSetAttrs(elementId: string, attrs: Partial<Pick<SceneElement, 'name' | 'visible' | 'locked'>>): void;
258
- /** Emit a reorder_element command. */
259
- onReorder(elementId: string, toIndex: number): void;
260
- onSelect(elementId: string, additive: boolean): void;
261
- }
262
- declare function LayersPanel({ page, selectedElementIds, canWrite, onSetAttrs, onReorder, onSelect }: LayersPanelProps): react.JSX.Element;
263
-
264
- interface ToolbarProps {
265
- page: ScenePage;
266
- selectedElements: SceneElement[];
267
- canWrite: boolean;
268
- /** Capability mode. `'review'` (the lean reviewer) hides the view toggles,
269
- * page-props controls, and the destructive/structural selection controls
270
- * (z-order, group/ungroup, lock, slot, delete), keeping only safe direct
271
- * edits: text content, image fit/replace, opacity/rotation, undo/redo.
272
- * Defaults to `'edit'` (the full authoring toolbar). */
273
- mode?: DesignCanvasMode;
274
- canUndo: boolean;
275
- canRedo: boolean;
276
- gridEnabled: boolean;
277
- snapEnabled: boolean;
278
- showRulers: boolean;
279
- showBleed: boolean;
280
- onUndo(): void;
281
- onRedo(): void;
282
- onToggleGrid(): void;
283
- onToggleSnap(): void;
284
- onToggleRulers(): void;
285
- onToggleBleed(): void;
286
- /** Emit attrs patch for each selected element. */
287
- onSetAttrs(elementId: string, attrs: SceneAttrsPatch): void;
288
- onSetPageProps(props: {
289
- name?: string;
290
- width?: number;
291
- height?: number;
292
- background?: string;
293
- bleed?: PageBleed | null;
294
- }): void;
295
- onSetPageGuides(guides: {
296
- vertical: number[];
297
- horizontal: number[];
298
- }): void;
299
- onReorder(elementId: string, toIndex: number, ownerLength: number, direction: 'front' | 'back' | 'forward' | 'backward'): void;
300
- onGroup(elementIds: string[]): void;
301
- onUngroup(groupId: string): void;
302
- onDelete(elementIds: string[]): void;
303
- onBindSlot(elementId: string, slot: string | null): void;
304
- /** Field label for the page-size control. Defaults to the clearer "Page size";
305
- * overridable for consumers that want the older "Preset" wording. */
306
- pageSizeLabel?: string;
307
- /** Title for the "turn on print bleed" action. Defaults to "Show print bleed"
308
- * (the outcome) rather than the print-shop term "bleed". */
309
- enableBleedLabel?: string;
310
- }
311
- declare function Toolbar({ page, selectedElements, canWrite, mode, canUndo, canRedo, gridEnabled, snapEnabled, showRulers, showBleed, onUndo, onRedo, onToggleGrid, onToggleSnap, onToggleRulers, onToggleBleed, onSetAttrs, onSetPageProps, onSetPageGuides, onReorder, onGroup, onUngroup, onDelete, onBindSlot, pageSizeLabel, enableBleedLabel, }: ToolbarProps): react.JSX.Element;
312
-
313
- /**
314
- * Canvas zoom controls: fit-to-page, 100%, zoom-out/in buttons, and a percent
315
- * readout. Stateless — zoom lives in the editor's view state, updated through
316
- * onZoom.
317
- */
318
- interface ZoomControlsProps {
319
- zoom: number;
320
- onZoom(zoom: number): void;
321
- onFit(): void;
322
- /** Label/aria for the fit action. Defaults to "Fit to screen" — shorter and
323
- * matching every other tool's wording for the same action. */
324
- fitLabel?: string;
325
- }
326
- declare function ZoomControls({ zoom, onZoom, onFit, fitLabel }: ZoomControlsProps): react.JSX.Element;
327
-
328
- /** 28px square (h-7) — used by the main toolbar. */
329
- declare const BTN = "flex h-7 w-7 items-center justify-center rounded border border-[var(--border-default)] text-[var(--text-secondary)] transition hover:text-[var(--text-primary)] disabled:cursor-default disabled:opacity-40";
330
- declare const BTN_ACTIVE: string;
331
- /** 24px square (h-6) — used by the zoom controls and pages strip. */
332
- declare const BTN_SM = "flex h-6 w-6 items-center justify-center rounded border border-[var(--border-default)] text-[var(--text-secondary)] transition hover:text-[var(--text-primary)] disabled:cursor-default disabled:opacity-40";
333
- declare const BTN_SM_ACTIVE: string;
334
- interface IconButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
335
- /** Render the active (brand-colored) variant. */
336
- active?: boolean;
337
- /** 'md' = 28px (toolbar), 'sm' = 24px (zoom/pages). */
338
- size?: 'md' | 'sm';
339
- }
340
- declare const IconButton: react.ForwardRefExoticComponent<IconButtonProps & react.RefAttributes<HTMLButtonElement>>;
341
-
342
- interface ExportControlProps {
343
- /** Pre-selected format/scale when the popover opens. Default PNG @ 1x. */
344
- defaults?: ExportTriggerOptions;
345
- /** Called with the chosen format/scale when the user confirms. */
346
- onExport(opts: ExportTriggerOptions): void;
347
- className?: string;
348
- }
349
- declare function ExportControl({ defaults, onExport, className }: ExportControlProps): react.JSX.Element;
350
-
351
- interface ElementNodeProps {
352
- element: SceneElement;
353
- isSelected: boolean;
354
- zoom: number;
355
- /** Theme render palette. Omitted → light defaults (byte-identical history). */
356
- render?: CanvasRenderPalette;
357
- onClick?(elementId: string): void;
358
- onDragStart?(elementId: string): void;
359
- onDragMove?(elementId: string, dx: number, dy: number): void;
360
- onDragEnd?(elementId: string, finalX: number, finalY: number): void;
361
- onDoubleClick?(elementId: string): void;
362
- }
363
- declare function ElementNodeImpl(props: ElementNodeProps): react.JSX.Element | null;
364
- /**
365
- * Memoized so a `stack.notify()` (fired ~120/s during a pan/marquee) that
366
- * re-renders WorkspaceView does NOT re-render every element. With stable
367
- * handler identities supplied by WorkspaceView, an ElementNode re-renders only
368
- * when its OWN `element` reference, `isSelected`, `zoom`, or `render` palette
369
- * change — i.e. when it actually moved, was (de)selected, or the view scaled.
370
- * Pan-only frames change none of these props, so the N nodes stay reconciled.
371
- */
372
- declare const ElementNode: react.MemoExoticComponent<typeof ElementNodeImpl>;
373
-
374
- /**
375
- * Grid overlay rendered beneath page content. The whole grid is painted by a
376
- * SINGLE Konva node — a custom Shape whose `sceneFunc` strokes every grid line
377
- * in one pass — rather than one Konva.Line per line. At ~hundreds of lines on a
378
- * page this turns a per-pan-frame reconciliation of hundreds of React/Konva
379
- * nodes into a single node whose only changing props are the transform; panning
380
- * no longer churns the scene graph.
381
- *
382
- * Grid lines are skipped entirely when they would be closer than 4 screen
383
- * pixels apart — below that density the grid becomes visual noise rather than
384
- * guidance (gridVisible density-skip, unchanged).
385
- *
386
- * COORDINATE SYSTEM: the lines are authored in document space and wrapped in a
387
- * Group carrying the SAME (panX, panY, zoom) transform the content layer uses,
388
- * so the grid tracks the page exactly on pan and zoom. A Konva.Layer cannot
389
- * live inside a Group, so the transform is applied to an inner Group, not the
390
- * Layer. The grid is its own Layer (not merged into the content Layer) so the
391
- * content draws on top without per-frame z-ordering churn.
392
- *
393
- * EXPORT EXCLUSION: the Layer carries the name prefix 'overlay:' and the Shape
394
- * is named 'overlay:grid-shape' so export logic excludes the whole grid from
395
- * rasterization.
396
- */
397
- interface GridLayerProps {
398
- /** Page width in document px. */
399
- pageWidth: number;
400
- /** Page height in document px. */
401
- pageHeight: number;
402
- /** Document px between grid lines. */
403
- gridSize: number;
404
- /** Screen px per document px. */
405
- zoom: number;
406
- /** Horizontal pan offset in screen px (content Group x). */
407
- panX: number;
408
- /** Vertical pan offset in screen px (content Group y). */
409
- panY: number;
410
- /** Grid line color. */
411
- color?: string;
412
- /** Grid line opacity (0–1). */
413
- opacity?: number;
414
- }
415
- declare function GridLayer({ pageWidth, pageHeight, gridSize, zoom, panX, panY, color, opacity, }: GridLayerProps): react.JSX.Element | null;
416
-
417
- interface RulersProps {
418
- /** Page width in document px. */
419
- pageWidth: number;
420
- /** Page height in document px. */
421
- pageHeight: number;
422
- zoom: number;
423
- /** How many doc-px of the canvas are scrolled off-screen left/top. */
424
- scrollLeft: number;
425
- scrollTop: number;
426
- showRulers: boolean;
427
- guides: PageGuides;
428
- /** Emitted when the user drops a guide or deletes one back into the ruler. */
429
- onGuidesChange(guides: PageGuides): void;
430
- }
431
- declare function Rulers({ pageWidth, pageHeight, zoom, scrollLeft, scrollTop, showRulers, guides, onGuidesChange }: RulersProps): react.JSX.Element | null;
432
-
433
- /**
434
- * Pure layer-tree helpers: flatten a page's element array into an ordered list
435
- * for the LayersPanel, preserving group nesting. Extracted so render order,
436
- * depth, and selection math can be unit-tested independently of React.
437
- */
438
-
439
- /** Describe a layer row with its element, depth, grouping, ownership, and parent group details */
440
- interface LayerRow {
441
- element: SceneElement;
442
- depth: number;
443
- /** True when this row is a group whose children follow it in the list. */
444
- isGroup: boolean;
445
- /** Index within its owner (page.elements or group.children). */
446
- ownerIndex: number;
447
- /** Length of the owner array — needed for z-order bound math. */
448
- ownerLength: number;
449
- /** Id of the containing group, or null for page-root elements. */
450
- parentGroupId: string | null;
451
- }
452
- /**
453
- * Flatten `page.elements` into display order for the layers panel.
454
- *
455
- * Z-order is bottom→top in the element array; the layers panel shows
456
- * top→bottom (highest z-index first). A group row precedes its children
457
- * (the group is "above" its children in the panel, reflecting that the group
458
- * node itself paints last in Konva when empty; children paint inside it).
459
- *
460
- * Depth increases by 1 for each group level, starting at 0 for page-root
461
- * elements. Groups are expanded; collapsed state is a view concern the caller
462
- * tracks separately.
463
- */
464
- declare function flattenLayerTree(page: ScenePage): LayerRow[];
465
- /** The maximum number of rows the layers panel renders before truncating. */
466
- declare const LAYERS_PANEL_ROW_LIMIT = 500;
467
-
468
- /**
469
- * Pure geometry helpers extracted from component drag/transform logic so
470
- * every interactive math path is unit-testable without Konva or a DOM.
471
- *
472
- * Invariants:
473
- * - All inputs and outputs are in document-coordinate pixels unless noted.
474
- * - Rotation angles are degrees, clockwise, matching the Konva + model convention.
475
- * - "Baking" scale into width/height resets Konva's scaleX/scaleY to 1; that
476
- * is required so the model's width/height always reflects true size, never a
477
- * scaled-but-uncollapsed state.
478
- */
479
- interface TransformerNode {
480
- x: number;
481
- y: number;
482
- width: number;
483
- height: number;
484
- /** Konva's scale after the transformer gesture; 1 when already baked. */
485
- scaleX: number;
486
- scaleY: number;
487
- rotation: number;
488
- }
489
- /** Define baked node attributes including position, size, and rotation with collapsed scale */
490
- interface BakedNodeAttrs {
491
- x: number;
492
- y: number;
493
- /** True pixel size after scale is collapsed into dimensions. */
494
- width: number;
495
- height: number;
496
- rotation: number;
497
- }
498
- /**
499
- * Collapse Konva scaleX/scaleY into width/height so the model always stores
500
- * true pixel dimensions. The transformer mutates scale on drag; we bake it
501
- * once at dragend/transformend and emit width/height — scale resets to 1
502
- * implicitly (the emitted attrs do not include scale, so the next render
503
- * starts from scaleX=1).
504
- *
505
- * Konva rotates about the top-left origin and also shifts x/y to compensate
506
- * for scale — the transformer gives us the post-rotation, post-scale x/y
507
- * directly, so no further rotation math is needed here.
508
- */
509
- declare function bakeRectTransform(node: TransformerNode): BakedNodeAttrs;
510
- /**
511
- * Lines store points as a flat [x0, y0, x1, y1, ...] array relative to the
512
- * line element's (x, y). When the transformer scales the group containing the
513
- * line, we bake scaleX into every x-component of points and scaleY into every
514
- * y-component, then reset scale to 1. The element x/y is the Konva group
515
- * origin and is taken directly from the transformer output.
516
- */
517
- declare function bakeLineTransform(node: TransformerNode & {
518
- points: number[];
519
- }): BakedNodeAttrs & {
520
- points: number[];
521
- };
522
- /**
523
- * Text nodes have a fixed wrap width; scaling that width is what the
524
- * transformer controls. Height is content-derived and is NOT baked here —
525
- * it re-derives from text content at render time via estimateTextHeight.
526
- * Only scaleX is baked into width; scaleY into fontSize so text scales
527
- * proportionally when the user resizes with keepRatio.
528
- */
529
- declare function bakeTextTransform(node: TransformerNode & {
530
- fontSize: number;
531
- }): BakedNodeAttrs & {
532
- fontSize: number;
533
- };
534
-
535
- /**
536
- * Pure ruler tick-step and label math for the canvas rulers. Nothing here
537
- * touches React or the DOM — all interaction geometry is extracted so it can
538
- * be unit-tested without a browser.
539
- *
540
- * Canvas rulers show document-coordinate values (CSS px). Tick density adapts
541
- * to the current zoom so major ticks never sit closer than `minMajorSpacingPx`
542
- * screen pixels apart. The step table covers typical design zoom ranges; beyond
543
- * the table the step grows by doubling the last candidate.
544
- */
545
- /** Define spacing and visibility rules for major and minor ticks in a coordinate system */
546
- interface TickStep {
547
- /** Document-coordinate step between major ticks. */
548
- major: number;
549
- /** Document-coordinate step between minor ticks (major / 5). */
550
- minor: number;
551
- /** True when minor ticks should be drawn (they sit ≥ minMinorSpacingPx apart). */
552
- drawMinor: boolean;
553
- }
554
- /**
555
- * Select the major tick step that keeps major ticks ≥ minMajorSpacingPx apart
556
- * at the given zoom. Minor ticks are rendered when they'd clear minMinorSpacingPx.
557
- *
558
- * Both spacing thresholds are SCREEN pixels — the caller provides `zoom` (screen
559
- * px per document px) so the result is zoom-independent.
560
- */
561
- declare function selectTickStep(input: {
562
- zoom: number;
563
- minMajorSpacingPx?: number;
564
- minMinorSpacingPx?: number;
565
- }): TickStep;
566
- /** Define a ruler tick with a position and optional label for measurement markings */
567
- interface RulerTick {
568
- /** Position in document coordinates. */
569
- position: number;
570
- /** Label text, or null for a minor tick. */
571
- label: string | null;
572
- }
573
- /**
574
- * Generate all ticks visible in a ruler of `documentLength` document-px,
575
- * given the current tick step. The caller clips to the viewport; this produces
576
- * all ticks for the full document extent so the ruler can be rendered
577
- * declaratively without a separate clipping pass.
578
- */
579
- declare function buildRulerTicks(input: {
580
- documentLength: number;
581
- step: TickStep;
582
- }): RulerTick[];
583
- /** Format a document-px position as a compact label: integers stay whole,
584
- * decimals are rounded to 1 place. Values ≥ 1000 are compacted to "1k" etc. */
585
- declare function formatRulerLabel(value: number): string;
586
-
587
- export { BTN, BTN_ACTIVE, BTN_SM, BTN_SM_ACTIVE, type BakedNodeAttrs, CanvasEmptyState, type CanvasEmptyStateProps, CanvasInsertPanel, type CanvasInsertPanelProps, DesignCanvasMode, DesignCanvasProps, ElementNode, type ElementNodeProps, ExportControl, type ExportControlProps, type ExportPageDataUrlOptions, ExportPreset, ExportTriggerOptions, GridLayer, type GridLayerProps, IconButton, type IconButtonProps, type InsertGeneration, InsertPageGeometry, InsertTemplate, LAYERS_PANEL_ROW_LIMIT, type LayerRow, LayersPanel, type LayersPanelProps, MultiSetAttrsEntry, PagesStrip, type PagesStripProps, type RulerTick, Rulers, type RulersProps, SelectionLayer, type SelectionLayerProps, type TickStep, Toolbar, type ToolbarProps, type TransformerNode, Workspace, WorkspaceView, type WorkspaceViewProps, ZoomControls, type ZoomControlsProps, bakeLineTransform, bakeRectTransform, bakeTextTransform, buildRulerTicks, createSceneCommandStack, downloadDataUrl, exportDocumentJson, exportPageDataUrl, flattenLayerTree, formatRulerLabel, selectTickStep };
2
+ * React editor surface for the design-canvas module. The package root bundles
3
+ * the FULL editor (Konva renderer included). Two lighter subpaths exist so
4
+ * consumers import only what they need without the ~1.3 MB Konva renderer
5
+ * landing in their main bundle:
6
+ * - `./design-canvas-react/engine` the konva-free core (contracts, command
7
+ * stack, snap/zoom/selection + export math, insert builders).
8
+ * - `./design-canvas-react/lazy` `React.lazy` handles that keep the Konva
9
+ * editor in an async chunk, out of the host's main bundle.
10
+ *
11
+ * Never re-exported from the package root barrel `react` and `konva` are
12
+ * optional peers; DOM and Konva access begins only inside component render.
13
+ */
14
+ export * from './engine';
15
+ export * from './export';
16
+ export * from './components/index';
17
+ export * from './lazy';
@@ -0,0 +1,61 @@
1
+ /**
2
+ * Pure builders for the human "add element to the canvas" path — the math and
3
+ * `SceneOperation` construction behind {@link CanvasInsertPanel}, separated from
4
+ * the React/DOM layer so every insert is unit-testable without Konva or a
5
+ * browser. The panel calls these to produce `add_element` operations and hands
6
+ * them to the host's `onApplyOperations` (server-validated, undoable) — the same
7
+ * pipeline every other edit flows through.
8
+ *
9
+ * Media boundary: image inserts must pass {@link assertSceneMediaSrc} (remote
10
+ * http(s) or a rooted `/api/` path — never `data:` blobs or sandbox-local
11
+ * files). Builders that take a src assert it up front so a bad url fails here,
12
+ * not deep in the apply layer.
13
+ */
14
+ import type { SceneOperation } from '../design-canvas/operations';
15
+ /** Largest dimension (document px) a freshly inserted element is fitted to,
16
+ * before the page-size cap applies. Keeps a huge upload from filling the page. */
17
+ export declare const MAX_INSERT_DIMENSION = 600;
18
+ /** Active page geometry an insert lands into — drives centering and fitting. */
19
+ export interface InsertPageGeometry {
20
+ pageId: string;
21
+ width: number;
22
+ height: number;
23
+ background?: string;
24
+ }
25
+ /** Mint a DOM-safe element id. Prefers `crypto.randomUUID`; falls back to a
26
+ * time+random id where crypto is unavailable (older runtimes, some test envs). */
27
+ export declare function mintElementId(): string;
28
+ /** Fit (naturalW, naturalH) under a max-dimension cap (further bounded by the
29
+ * page), preserving aspect ratio. Never upscales past natural size. */
30
+ export declare function fittedSize(naturalW: number, naturalH: number, pageWidth: number, pageHeight: number): {
31
+ width: number;
32
+ height: number;
33
+ };
34
+ /** Top-left position that centers a (width, height) box on the page. */
35
+ export declare function centeredPosition(width: number, height: number, pageWidth: number, pageHeight: number): {
36
+ x: number;
37
+ y: number;
38
+ };
39
+ /**
40
+ * Build an `add_element` op placing an image, fitted and centered on the page.
41
+ * `naturalSize` is the probed image dimensions (the panel reads them in the
42
+ * browser); pass `{ width: 0, height: 0 }` when unknown to fall back to the cap.
43
+ *
44
+ * Throws (via `assertSceneMediaSrc`) when `src` is not http(s) or a rooted
45
+ * `/api/` path — callers should surface the error, never insert a `data:` src.
46
+ */
47
+ export declare function buildInsertImageOp(src: string, naturalSize: {
48
+ width: number;
49
+ height: number;
50
+ }, page: InsertPageGeometry): SceneOperation;
51
+ /** A template the insert panel can drop without the agent. `build` is pure and
52
+ * produces the operations for the active page geometry. */
53
+ export interface InsertTemplate {
54
+ id: string;
55
+ label: string;
56
+ build(page: InsertPageGeometry): SceneOperation[];
57
+ }
58
+ /** The built-in starter templates (heading, body text, rectangle, ellipse).
59
+ * Consumers can pass their own list to {@link CanvasInsertPanel}; this is the
60
+ * default so every canvas gets a usable set out of the box. */
61
+ export declare const DEFAULT_INSERT_TEMPLATES: readonly InsertTemplate[];