@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,25 +1,42 @@
1
- import * as drizzle_orm_sqlite_core from 'drizzle-orm/sqlite-core';
2
- import { AnySQLiteTable, AnySQLiteColumn, BaseSQLiteDatabase } from 'drizzle-orm/sqlite-core';
3
- import { O as OrganizationRole, f as WorkspaceRole } from './roles-B4nU3jDi.js';
4
-
1
+ /**
2
+ * Drizzle schema factory for the teams tables. The product owns the user and
3
+ * workspace tables; this factory creates the tenancy/membership tables and
4
+ * wires their foreign keys into the passed-in tables so the whole graph lives
5
+ * in one drizzle schema with real cascade semantics. Column names, types,
6
+ * defaults, enums, and indexes mirror gtm's hand-rolled tables so a product
7
+ * with those tables can adopt the factory without rewriting rows.
8
+ *
9
+ * The three tables and their roles:
10
+ * - `organization` — the TENANT/ownership primitive. `kind` is 'personal'
11
+ * (one auto-created per user; see ensurePersonalOrganization) or 'team'.
12
+ * This is what owns workspaces and what billing/seats attach to.
13
+ * - `organizationMember` — who belongs to an org and at what org role.
14
+ * - `workspaceMember` — the additive invite/member surface: per-workspace
15
+ * access grants, including pending email-only invites carrying a token.
16
+ *
17
+ * Imports `drizzle-orm` at module top — that is WHY this lives behind the
18
+ * `/teams/drizzle` sub-subpath. The pure `./teams` leaf imports none of this,
19
+ * so a consumer that never touches the DB never pulls the optional peer.
20
+ */
21
+ import type { AnySQLiteColumn, AnySQLiteTable } from 'drizzle-orm/sqlite-core';
5
22
  /** A product table referenced by FK — only the `id` column is touched. */
6
- type TeamParentTable = AnySQLiteTable & {
23
+ export type TeamParentTable = AnySQLiteTable & {
7
24
  id: AnySQLiteColumn;
8
25
  };
9
26
  /** Define options specifying user and workspace tables for creating team-related tables */
10
- interface CreateTeamTablesOptions {
27
+ export interface CreateTeamTablesOptions {
11
28
  /** The product's user table — org/member rows reference `userTable.id`. */
12
29
  userTable: TeamParentTable;
13
30
  /** The product's workspace table — workspace members reference `workspaceTable.id`. */
14
31
  workspaceTable: TeamParentTable;
15
32
  }
16
33
  /** Build SQLite tables for organizations and related team structures using provided options */
17
- declare function createTeamTables(opts: CreateTeamTablesOptions): {
18
- organizations: drizzle_orm_sqlite_core.SQLiteTableWithColumns<{
34
+ export declare function createTeamTables(opts: CreateTeamTablesOptions): {
35
+ organizations: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
19
36
  name: "organization";
20
37
  schema: undefined;
21
38
  columns: {
22
- id: drizzle_orm_sqlite_core.SQLiteColumn<{
39
+ id: import("drizzle-orm/sqlite-core").SQLiteColumn<{
23
40
  name: "id";
24
41
  tableName: "organization";
25
42
  dataType: "string";
@@ -38,7 +55,7 @@ declare function createTeamTables(opts: CreateTeamTablesOptions): {
38
55
  }, {}, {
39
56
  length: number | undefined;
40
57
  }>;
41
- name: drizzle_orm_sqlite_core.SQLiteColumn<{
58
+ name: import("drizzle-orm/sqlite-core").SQLiteColumn<{
42
59
  name: "name";
43
60
  tableName: "organization";
44
61
  dataType: "string";
@@ -57,7 +74,7 @@ declare function createTeamTables(opts: CreateTeamTablesOptions): {
57
74
  }, {}, {
58
75
  length: number | undefined;
59
76
  }>;
60
- slug: drizzle_orm_sqlite_core.SQLiteColumn<{
77
+ slug: import("drizzle-orm/sqlite-core").SQLiteColumn<{
61
78
  name: "slug";
62
79
  tableName: "organization";
63
80
  dataType: "string";
@@ -76,12 +93,12 @@ declare function createTeamTables(opts: CreateTeamTablesOptions): {
76
93
  }, {}, {
77
94
  length: number | undefined;
78
95
  }>;
79
- kind: drizzle_orm_sqlite_core.SQLiteColumn<{
96
+ kind: import("drizzle-orm/sqlite-core").SQLiteColumn<{
80
97
  name: "kind";
81
98
  tableName: "organization";
82
99
  dataType: "string";
83
100
  columnType: "SQLiteText";
84
- data: "personal" | "team";
101
+ data: "team" | "personal";
85
102
  driverParam: string;
86
103
  notNull: true;
87
104
  hasDefault: true;
@@ -95,7 +112,7 @@ declare function createTeamTables(opts: CreateTeamTablesOptions): {
95
112
  }, {}, {
96
113
  length: number | undefined;
97
114
  }>;
98
- createdBy: drizzle_orm_sqlite_core.SQLiteColumn<{
115
+ createdBy: import("drizzle-orm/sqlite-core").SQLiteColumn<{
99
116
  name: "created_by";
100
117
  tableName: "organization";
101
118
  dataType: "string";
@@ -114,7 +131,7 @@ declare function createTeamTables(opts: CreateTeamTablesOptions): {
114
131
  }, {}, {
115
132
  length: number | undefined;
116
133
  }>;
117
- createdAt: drizzle_orm_sqlite_core.SQLiteColumn<{
134
+ createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
118
135
  name: "created_at";
119
136
  tableName: "organization";
120
137
  dataType: "date";
@@ -131,7 +148,7 @@ declare function createTeamTables(opts: CreateTeamTablesOptions): {
131
148
  identity: undefined;
132
149
  generated: undefined;
133
150
  }, {}, {}>;
134
- updatedAt: drizzle_orm_sqlite_core.SQLiteColumn<{
151
+ updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
135
152
  name: "updated_at";
136
153
  tableName: "organization";
137
154
  dataType: "date";
@@ -151,11 +168,11 @@ declare function createTeamTables(opts: CreateTeamTablesOptions): {
151
168
  };
152
169
  dialect: "sqlite";
153
170
  }>;
154
- organizationMembers: drizzle_orm_sqlite_core.SQLiteTableWithColumns<{
171
+ organizationMembers: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
155
172
  name: "organization_member";
156
173
  schema: undefined;
157
174
  columns: {
158
- id: drizzle_orm_sqlite_core.SQLiteColumn<{
175
+ id: import("drizzle-orm/sqlite-core").SQLiteColumn<{
159
176
  name: "id";
160
177
  tableName: "organization_member";
161
178
  dataType: "string";
@@ -174,7 +191,7 @@ declare function createTeamTables(opts: CreateTeamTablesOptions): {
174
191
  }, {}, {
175
192
  length: number | undefined;
176
193
  }>;
177
- organizationId: drizzle_orm_sqlite_core.SQLiteColumn<{
194
+ organizationId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
178
195
  name: "organization_id";
179
196
  tableName: "organization_member";
180
197
  dataType: "string";
@@ -193,7 +210,7 @@ declare function createTeamTables(opts: CreateTeamTablesOptions): {
193
210
  }, {}, {
194
211
  length: number | undefined;
195
212
  }>;
196
- userId: drizzle_orm_sqlite_core.SQLiteColumn<{
213
+ userId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
197
214
  name: "user_id";
198
215
  tableName: "organization_member";
199
216
  dataType: "string";
@@ -212,12 +229,12 @@ declare function createTeamTables(opts: CreateTeamTablesOptions): {
212
229
  }, {}, {
213
230
  length: number | undefined;
214
231
  }>;
215
- role: drizzle_orm_sqlite_core.SQLiteColumn<{
232
+ role: import("drizzle-orm/sqlite-core").SQLiteColumn<{
216
233
  name: "role";
217
234
  tableName: "organization_member";
218
235
  dataType: "string";
219
236
  columnType: "SQLiteText";
220
- data: "admin" | "owner" | "member" | "billing";
237
+ data: "billing" | "owner" | "admin" | "member";
221
238
  driverParam: string;
222
239
  notNull: true;
223
240
  hasDefault: true;
@@ -231,7 +248,7 @@ declare function createTeamTables(opts: CreateTeamTablesOptions): {
231
248
  }, {}, {
232
249
  length: number | undefined;
233
250
  }>;
234
- createdAt: drizzle_orm_sqlite_core.SQLiteColumn<{
251
+ createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
235
252
  name: "created_at";
236
253
  tableName: "organization_member";
237
254
  dataType: "date";
@@ -248,7 +265,7 @@ declare function createTeamTables(opts: CreateTeamTablesOptions): {
248
265
  identity: undefined;
249
266
  generated: undefined;
250
267
  }, {}, {}>;
251
- updatedAt: drizzle_orm_sqlite_core.SQLiteColumn<{
268
+ updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
252
269
  name: "updated_at";
253
270
  tableName: "organization_member";
254
271
  dataType: "date";
@@ -268,11 +285,11 @@ declare function createTeamTables(opts: CreateTeamTablesOptions): {
268
285
  };
269
286
  dialect: "sqlite";
270
287
  }>;
271
- workspaceMembers: drizzle_orm_sqlite_core.SQLiteTableWithColumns<{
288
+ workspaceMembers: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
272
289
  name: "workspace_member";
273
290
  schema: undefined;
274
291
  columns: {
275
- id: drizzle_orm_sqlite_core.SQLiteColumn<{
292
+ id: import("drizzle-orm/sqlite-core").SQLiteColumn<{
276
293
  name: "id";
277
294
  tableName: "workspace_member";
278
295
  dataType: "string";
@@ -291,7 +308,7 @@ declare function createTeamTables(opts: CreateTeamTablesOptions): {
291
308
  }, {}, {
292
309
  length: number | undefined;
293
310
  }>;
294
- workspaceId: drizzle_orm_sqlite_core.SQLiteColumn<{
311
+ workspaceId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
295
312
  name: "workspace_id";
296
313
  tableName: "workspace_member";
297
314
  dataType: "string";
@@ -310,7 +327,7 @@ declare function createTeamTables(opts: CreateTeamTablesOptions): {
310
327
  }, {}, {
311
328
  length: number | undefined;
312
329
  }>;
313
- organizationMemberId: drizzle_orm_sqlite_core.SQLiteColumn<{
330
+ organizationMemberId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
314
331
  name: "organization_member_id";
315
332
  tableName: "workspace_member";
316
333
  dataType: "string";
@@ -329,7 +346,7 @@ declare function createTeamTables(opts: CreateTeamTablesOptions): {
329
346
  }, {}, {
330
347
  length: number | undefined;
331
348
  }>;
332
- userId: drizzle_orm_sqlite_core.SQLiteColumn<{
349
+ userId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
333
350
  name: "user_id";
334
351
  tableName: "workspace_member";
335
352
  dataType: "string";
@@ -348,12 +365,12 @@ declare function createTeamTables(opts: CreateTeamTablesOptions): {
348
365
  }, {}, {
349
366
  length: number | undefined;
350
367
  }>;
351
- role: drizzle_orm_sqlite_core.SQLiteColumn<{
368
+ role: import("drizzle-orm/sqlite-core").SQLiteColumn<{
352
369
  name: "role";
353
370
  tableName: "workspace_member";
354
371
  dataType: "string";
355
372
  columnType: "SQLiteText";
356
- data: "viewer" | "editor" | "admin" | "owner";
373
+ data: "owner" | "admin" | "viewer" | "editor";
357
374
  driverParam: string;
358
375
  notNull: true;
359
376
  hasDefault: true;
@@ -367,7 +384,7 @@ declare function createTeamTables(opts: CreateTeamTablesOptions): {
367
384
  }, {}, {
368
385
  length: number | undefined;
369
386
  }>;
370
- invitedBy: drizzle_orm_sqlite_core.SQLiteColumn<{
387
+ invitedBy: import("drizzle-orm/sqlite-core").SQLiteColumn<{
371
388
  name: "invited_by";
372
389
  tableName: "workspace_member";
373
390
  dataType: "string";
@@ -386,7 +403,7 @@ declare function createTeamTables(opts: CreateTeamTablesOptions): {
386
403
  }, {}, {
387
404
  length: number | undefined;
388
405
  }>;
389
- inviteEmail: drizzle_orm_sqlite_core.SQLiteColumn<{
406
+ inviteEmail: import("drizzle-orm/sqlite-core").SQLiteColumn<{
390
407
  name: "invite_email";
391
408
  tableName: "workspace_member";
392
409
  dataType: "string";
@@ -405,7 +422,7 @@ declare function createTeamTables(opts: CreateTeamTablesOptions): {
405
422
  }, {}, {
406
423
  length: number | undefined;
407
424
  }>;
408
- inviteToken: drizzle_orm_sqlite_core.SQLiteColumn<{
425
+ inviteToken: import("drizzle-orm/sqlite-core").SQLiteColumn<{
409
426
  name: "invite_token";
410
427
  tableName: "workspace_member";
411
428
  dataType: "string";
@@ -424,7 +441,7 @@ declare function createTeamTables(opts: CreateTeamTablesOptions): {
424
441
  }, {}, {
425
442
  length: number | undefined;
426
443
  }>;
427
- invitedAt: drizzle_orm_sqlite_core.SQLiteColumn<{
444
+ invitedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
428
445
  name: "invited_at";
429
446
  tableName: "workspace_member";
430
447
  dataType: "date";
@@ -441,7 +458,7 @@ declare function createTeamTables(opts: CreateTeamTablesOptions): {
441
458
  identity: undefined;
442
459
  generated: undefined;
443
460
  }, {}, {}>;
444
- acceptedAt: drizzle_orm_sqlite_core.SQLiteColumn<{
461
+ acceptedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
445
462
  name: "accepted_at";
446
463
  tableName: "workspace_member";
447
464
  dataType: "date";
@@ -463,92 +480,10 @@ declare function createTeamTables(opts: CreateTeamTablesOptions): {
463
480
  }>;
464
481
  };
465
482
  /** Resolve team tables by deriving the return type of createTeamTables */
466
- type TeamTables = ReturnType<typeof createTeamTables>;
483
+ export type TeamTables = ReturnType<typeof createTeamTables>;
467
484
  /** Resolve the structure of an organization row from the organizations table in TeamTables */
468
- type OrganizationRow = TeamTables['organizations']['$inferSelect'];
485
+ export type OrganizationRow = TeamTables['organizations']['$inferSelect'];
469
486
  /** Resolve the structure of an organization member row from the team tables selection */
470
- type OrganizationMemberRow = TeamTables['organizationMembers']['$inferSelect'];
487
+ export type OrganizationMemberRow = TeamTables['organizationMembers']['$inferSelect'];
471
488
  /** Resolve a workspace member row with selected fields from the workspaceMembers table */
472
- type WorkspaceMemberRow = TeamTables['workspaceMembers']['$inferSelect'];
473
-
474
- /**
475
- * RBAC access builders over the teams tables. `createWorkspaceAccess` and
476
- * `createOrganizationAccess` close over the product's `db`, the tables from
477
- * `createTeamTables`, and the product's `workspace` table, returning the exact
478
- * `getWorkspaceAccess` / `requireWorkspaceAccess` / `listUserWorkspaces` /
479
- * `getOrganizationAccess` / `requireOrganizationAccess` functions a consumer
480
- * already calls — so adoption is a one-line import swap, every call site stays
481
- * identical.
482
- *
483
- * Defense in depth: org owners/admins are workspace owners across the org;
484
- * everyone else gets their explicit per-workspace role. Effective role is the
485
- * fold in `resolveWorkspaceRole` (pure, from `../roles`). Every query pins
486
- * `userId`, so a leaked id can never read across the tenancy boundary — it
487
- * surfaces as "not found".
488
- *
489
- * Driver-agnostic: builders are awaited, never `.run()`/`.all()`, so
490
- * better-sqlite3, D1, and libsql handles all behave identically.
491
- */
492
-
493
- /** Any SQLite drizzle database — `any` erases driver-specific generics so
494
- * better-sqlite3, D1, and libsql handles all fit. */
495
- type TeamDatabase = BaseSQLiteDatabase<'sync' | 'async', any, any>;
496
- /**
497
- * The product's workspace table, narrowed to the columns the access joins read.
498
- * Adopters pass their real drizzle workspace table — it carries these columns
499
- * (gtm's does); the type only asserts the minimum the joins touch.
500
- */
501
- interface WorkspaceAccessTable {
502
- id: any;
503
- organizationId: any;
504
- name: any;
505
- updatedAt: any;
506
- }
507
- /** Define options required to create access with database, tables, and workspace table references */
508
- interface CreateAccessOptions {
509
- db: TeamDatabase;
510
- tables: TeamTables;
511
- /** The product's workspace table (the FK target passed to createTeamTables). */
512
- workspaceTable: TeamParentTable & WorkspaceAccessTable;
513
- }
514
- /** Define access details including workspace data, organization info, member info, and role within workspace */
515
- interface WorkspaceAccess {
516
- workspace: Record<string, unknown>;
517
- organization: OrganizationRow;
518
- organizationMember: OrganizationMemberRow;
519
- role: WorkspaceRole;
520
- }
521
- /** Describe a user's workspace details including organization and role information */
522
- interface UserWorkspaceSummary extends Record<string, unknown> {
523
- organizationId: string;
524
- organizationName: string;
525
- role: WorkspaceRole;
526
- }
527
- /** Define methods to retrieve and enforce user access permissions within workspaces */
528
- interface WorkspaceAccessApi {
529
- getWorkspaceAccess(workspaceId: string, userId: string, minRole?: WorkspaceRole): Promise<WorkspaceAccess | null>;
530
- requireWorkspaceAccess(workspaceId: string, userId: string, minRole?: WorkspaceRole): Promise<WorkspaceAccess>;
531
- listUserWorkspaces(userId: string): Promise<UserWorkspaceSummary[]>;
532
- }
533
- /** Create workspace access API to manage user roles and permissions within a workspace */
534
- declare function createWorkspaceAccess(opts: CreateAccessOptions): WorkspaceAccessApi;
535
- /** Define access details linking an organization, its member, and the member's role */
536
- interface OrganizationAccess {
537
- organization: OrganizationRow;
538
- member: OrganizationMemberRow;
539
- role: OrganizationRole;
540
- }
541
- /** Define methods to retrieve and enforce user access levels within an organization */
542
- interface OrganizationAccessApi {
543
- getOrganizationAccess(organizationId: string, userId: string, minRole?: OrganizationRole): Promise<OrganizationAccess | null>;
544
- requireOrganizationAccess(organizationId: string, userId: string, minRole?: OrganizationRole): Promise<OrganizationAccess>;
545
- }
546
- /** Define options required to create access for an organization including database and tables */
547
- interface CreateOrganizationAccessOptions {
548
- db: TeamDatabase;
549
- tables: TeamTables;
550
- }
551
- /** Resolve organization access API with specified database and table options */
552
- declare function createOrganizationAccess(opts: CreateOrganizationAccessOptions): OrganizationAccessApi;
553
-
554
- export { type CreateAccessOptions as C, type OrganizationRow as O, type TeamDatabase as T, type UserWorkspaceSummary as U, type WorkspaceAccess as W, type TeamTables as a, type OrganizationMemberRow as b, type CreateOrganizationAccessOptions as c, type CreateTeamTablesOptions as d, type OrganizationAccess as e, type OrganizationAccessApi as f, type TeamParentTable as g, type WorkspaceAccessApi as h, type WorkspaceAccessTable as i, type WorkspaceMemberRow as j, createOrganizationAccess as k, createTeamTables as l, createWorkspaceAccess as m };
489
+ export type WorkspaceMemberRow = TeamTables['workspaceMembers']['$inferSelect'];
@@ -1,47 +1,15 @@
1
- import { T as TeamDatabase, a as TeamTables, O as OrganizationRow, b as OrganizationMemberRow } from '../access-490O6aOU.js';
2
- export { C as CreateAccessOptions, c as CreateOrganizationAccessOptions, d as CreateTeamTablesOptions, e as OrganizationAccess, f as OrganizationAccessApi, g as TeamParentTable, U as UserWorkspaceSummary, W as WorkspaceAccess, h as WorkspaceAccessApi, i as WorkspaceAccessTable, j as WorkspaceMemberRow, k as createOrganizationAccess, l as createTeamTables, m as createWorkspaceAccess } from '../access-490O6aOU.js';
3
- export { C as CreateWorkspaceInvitationTableOptions, W as WorkspaceInvitationRow, a as WorkspaceInvitationTables, c as createWorkspaceInvitationTable } from '../invitations-schema-_fI7HkJP.js';
4
- import { O as OrganizationRole } from '../roles-B4nU3jDi.js';
5
- import 'drizzle-orm/sqlite-core';
6
-
7
1
  /**
8
- * `ensurePersonalOrganization` the substrate that makes solo-user adoption
9
- * work. Every user gets exactly one auto-created `kind: 'personal'` org with
10
- * the user as `owner` member. That org is the tenant that owns their
11
- * workspaces, so role resolution (`getWorkspaceAccess`) has an org row to read
12
- * even before any team/invite exists.
2
+ * Drizzle-backed substrate for the teams module: the table factory
3
+ * (`createTeamTables`), the RBAC access builders (`createWorkspaceAccess`,
4
+ * `createOrganizationAccess`), and `createEnsurePersonalOrganization`. Its own
5
+ * subpath (`@tangle-network/agent-app/teams/drizzle`) because every file here
6
+ * imports `drizzle-orm` at module top — bundling them into `./teams` would make
7
+ * the optional peer a hard requirement for every teams consumer.
13
8
  *
14
- * Idempotent by construction: the org `slug` is derived from the user id
15
- * (`personal-<id>`) and upserted; the membership upserts on the
16
- * (organizationId, userId) unique index. Concurrent calls converge — no
17
- * duplicate personal orgs, no duplicate owner rows.
18
- *
19
- * ADOPTION CONTRACT: call this once per user at first authenticated entry
20
- * (e.g. right after sign-in / session bootstrap) BEFORE the first
21
- * `getWorkspaceAccess`. Role resolution requires the org membership to exist;
22
- * an adopter that skips this will see `null` access for a brand-new user with
23
- * no org row. There is no implicit creation inside the access builders — that
24
- * keeps reads side-effect-free; provisioning is this explicit call.
9
+ * The pure `./teams` leaf (role algebra + invite helpers) stays drizzle-free,
10
+ * so an app that imports only `./teams` (or only `.`) never pulls drizzle.
25
11
  */
26
-
27
- /** Define the structure for a user within a personal organization context */
28
- interface EnsurePersonalOrganizationUser {
29
- id: string;
30
- name?: string | null;
31
- email?: string | null;
32
- }
33
- /** Describe a personal organization result including organization, member, and role details */
34
- interface PersonalOrganizationResult {
35
- organization: OrganizationRow;
36
- member: OrganizationMemberRow;
37
- role: OrganizationRole;
38
- }
39
- /** Define options required to create a personal organization including database and tables references */
40
- interface CreatePersonalOrganizationOptions {
41
- db: TeamDatabase;
42
- tables: TeamTables;
43
- }
44
- /** Ensure a user has a personal organization by creating or retrieving it as needed */
45
- declare function createEnsurePersonalOrganization(opts: CreatePersonalOrganizationOptions): (user: EnsurePersonalOrganizationUser) => Promise<PersonalOrganizationResult>;
46
-
47
- export { type CreatePersonalOrganizationOptions, type EnsurePersonalOrganizationUser, OrganizationMemberRow, OrganizationRow, type PersonalOrganizationResult, TeamDatabase, TeamTables, createEnsurePersonalOrganization };
12
+ export * from './drizzle/schema';
13
+ export * from './drizzle/invitations-schema';
14
+ export * from './drizzle/access';
15
+ export * from './drizzle/personal-organization';
@@ -1,47 +1,23 @@
1
- export { a as ASSIGNABLE_WORKSPACE_ROLES, A as AssignableWorkspaceRole, b as ORGANIZATION_ROLES, c as ORGANIZATION_ROLE_RANK, O as OrganizationRole, S as SandboxWorkspaceRole, W as WORKSPACE_ROLES, d as WORKSPACE_ROLE_RANK, e as WorkspaceCollaborationAccess, f as WorkspaceRole, g as canManageWorkspaceMemberRole, h as hasOrganizationRole, i as hasWorkspaceRole, j as isAssignableWorkspaceRole, o as organizationRoleGrantsWorkspaceOwner, r as resolveWorkspaceRole, w as workspaceRoleToCollaborationAccess, k as workspaceRoleToSandboxRole } from '../roles-B4nU3jDi.js';
2
- export { I as INVITATION_EXPIRY_DAYS, a as InvitationEmailBrand, b as InvitationEmailStatus, c as InvitationPermission, d as InvitationStatus, R as RenderInvitationEmailInput, e as RenderedInvitationEmail, g as generateInvitationToken, f as getInvitationExpiresAt, i as inviteUrlForToken, n as normalizeInvitationEmail, p as parseInvitationPermission, r as renderInvitationEmail } from '../invitations-DoYMvXea.js';
3
-
4
1
  /**
5
- * Pure invite-token helpers generation, shape validation, and expiry math.
6
- * No I/O: the members API persists/looks up tokens; these functions only
7
- * produce well-formed tokens and decide, given values the caller already
8
- * loaded, whether an invite is usable.
2
+ * Teams capabilitythe tenancy/membership model for agent products, exposed
3
+ * as opt-in subpaths so an app that never imports `./teams*` pulls zero teams
4
+ * code (and zero `drizzle-orm`). This barrel is the PURE leaf: role algebra and
5
+ * invite-token helpers with no drizzle, no env, no react, no I/O.
9
6
  *
10
- * A token is an opaque high-entropy URL-safe string. It is the bearer secret
11
- * in `/invite/:token`, so it must be unguessable and never derived from the
12
- * email or workspace. `generateInviteToken` uses Web Crypto (`crypto`), which
13
- * is present in Workers, Node 18+, Deno, and browsers no Node-only import,
14
- * so this stays a pure leaf.
15
- */
16
- /** Cryptographically-random, URL-safe (base64url) invite token. */
17
- declare function generateInviteToken(): string;
18
- /** True when `value` has the shape of an invite token (not whether it exists). */
19
- declare function isInviteTokenShape(value: unknown): value is string;
20
- /** A pending invite row, narrowed to the fields invite acceptance reasons over. */
21
- interface InviteTokenState {
22
- /** null until accepted a non-null value means the invite was already used. */
23
- acceptedAt: Date | number | null | undefined;
24
- /** Email the invite was addressed to, if any. */
25
- inviteEmail?: string | null;
26
- /** Optional hard expiry; omit/undefined for invites that never expire. */
27
- expiresAt?: Date | number | null;
28
- }
29
- /** Define possible reasons for rejecting an invite including acceptance, expiration, or email mismatch */
30
- type InviteRejectionReason = 'already-accepted' | 'expired' | 'email-mismatch';
31
- /** Represent the outcome of validating an invite with success status and optional rejection reason */
32
- interface InviteValidationResult {
33
- ok: boolean;
34
- reason?: InviteRejectionReason;
35
- }
36
- /**
37
- * Decide whether a loaded invite can be accepted by `acceptingEmail` at `now`.
38
- * Pure: the caller has already fetched the row by token; this only judges it.
39
- * Email match is case-insensitive and only enforced when the invite was
40
- * addressed to a specific email (an open invite has no `inviteEmail`).
7
+ * The rest of the capability layers on top, each behind its own subpath:
8
+ * - `@tangle-network/agent-app/teams/drizzle` — table factory + access
9
+ * builders + `ensurePersonalOrganization` (imports `drizzle-orm`).
10
+ * - `@tangle-network/agent-app/teams/members-api`framework-neutral
11
+ * invite/list/role/remove handlers (imports `drizzle-orm`).
12
+ * - `@tangle-network/agent-app/teams/invitations-api` — framework-neutral
13
+ * email-invitation lifecycle (create/list/resend/revoke/preview/accept,
14
+ * imports `drizzle-orm`).
15
+ * - `@tangle-network/agent-app/teams-react` MembersPanel +
16
+ * InvitationsPanel + InviteAcceptPage (optional `react` peer).
17
+ *
18
+ * NEVER re-exported from the package root: `drizzle-orm` and `react` are
19
+ * optional peers, and the whole point is that the tax stays clean.
41
20
  */
42
- declare function validateInviteToken(invite: InviteTokenState, opts?: {
43
- acceptingEmail?: string | null;
44
- now?: Date;
45
- }): InviteValidationResult;
46
-
47
- export { type InviteRejectionReason, type InviteTokenState, type InviteValidationResult, generateInviteToken, isInviteTokenShape, validateInviteToken };
21
+ export * from './roles';
22
+ export * from './invite';
23
+ export * from './invitations';
@@ -1,11 +1,3 @@
1
- import { c as InvitationPermission, d as InvitationStatus, b as InvitationEmailStatus } from '../invitations-DoYMvXea.js';
2
- import { EnforceSeatSeam, MemberSyncSeam } from './members-api.js';
3
- export { SeatLimitError } from './members-api.js';
4
- import { T as TeamDatabase, a as TeamTables, g as TeamParentTable, h as WorkspaceAccessApi } from '../access-490O6aOU.js';
5
- import { a as WorkspaceInvitationTables } from '../invitations-schema-_fI7HkJP.js';
6
- import '../roles-B4nU3jDi.js';
7
- import 'drizzle-orm/sqlite-core';
8
-
9
1
  /**
10
2
  * Framework-neutral email-invitation lifecycle for the teams module: create /
11
3
  * list / resend / revoke / preview / accept over the dedicated
@@ -31,9 +23,15 @@ import 'drizzle-orm/sqlite-core';
31
23
  *
32
24
  * Imports `drizzle-orm`, so this is a subpath, never re-exported from root.
33
25
  */
34
-
26
+ import { type InvitationEmailStatus, type InvitationPermission, type InvitationStatus } from './invitations';
27
+ import { type EnforceSeatSeam, type MemberSyncSeam } from './members-api';
28
+ import type { TeamDatabase, WorkspaceAccessApi } from './drizzle/access';
29
+ import type { TeamParentTable, TeamTables } from './drizzle/schema';
30
+ import type { WorkspaceInvitationTables } from './drizzle/invitations-schema';
31
+ export { SeatLimitError } from './members-api';
32
+ export type { EnforceSeatSeam, MemberSyncSeam } from './members-api';
35
33
  /** The app's mail transport. Returns a typed outcome; never throws to the API. */
36
- interface SendInvitationEmailInput {
34
+ export interface SendInvitationEmailInput {
37
35
  to: string;
38
36
  workspaceName: string;
39
37
  inviterEmail: string;
@@ -42,29 +40,29 @@ interface SendInvitationEmailInput {
42
40
  expiresAt: Date;
43
41
  }
44
42
  /** Represent the outcome of sending an invitation email with success status and optional error message */
45
- type SendInvitationEmailResult = {
43
+ export type SendInvitationEmailResult = {
46
44
  succeeded: true;
47
45
  } | {
48
46
  succeeded: false;
49
47
  error: string;
50
48
  };
51
49
  /** Resolve sending an invitation email and return the result asynchronously */
52
- interface SendInvitationEmailSeam {
50
+ export interface SendInvitationEmailSeam {
53
51
  (input: SendInvitationEmailInput): Promise<SendInvitationEmailResult>;
54
52
  }
55
53
  /** The product's user table, narrowed to the columns the queries read. */
56
- interface InvitationUserTable {
54
+ export interface InvitationUserTable {
57
55
  id: any;
58
56
  email: any;
59
57
  emailVerified: any;
60
58
  }
61
59
  /** The product's workspace table, narrowed to the columns the queries read. */
62
- interface InvitationWorkspaceTable {
60
+ export interface InvitationWorkspaceTable {
63
61
  id: any;
64
62
  name: any;
65
63
  }
66
64
  /** Define configuration options required to manage workspace invitations and related data sources */
67
- interface InvitationsApiOptions {
65
+ export interface InvitationsApiOptions {
68
66
  db: TeamDatabase;
69
67
  tables: TeamTables;
70
68
  /** The invitation table from `createWorkspaceInvitationTable`. */
@@ -82,7 +80,7 @@ interface InvitationsApiOptions {
82
80
  productDisplayName?: string;
83
81
  }
84
82
  /** Represent a workspace invitation with details about inviter, permissions, status, and timestamps */
85
- interface WorkspaceInvitationView {
83
+ export interface WorkspaceInvitationView {
86
84
  id: string;
87
85
  workspaceId: string;
88
86
  organizationId: string;
@@ -100,7 +98,7 @@ interface WorkspaceInvitationView {
100
98
  lastSentAt: Date | null;
101
99
  }
102
100
  /** Describe the structure of an invitation preview with workspace, email, permissions, status, and expiration details */
103
- interface InvitationPreview {
101
+ export interface InvitationPreview {
104
102
  workspaceId: string;
105
103
  workspaceName: string;
106
104
  email: string;
@@ -110,7 +108,7 @@ interface InvitationPreview {
110
108
  expiresAt: Date;
111
109
  }
112
110
  /** Resolve the result of an invitation as success with a value or failure with status and error details */
113
- type InvitationOutcome<T> = {
111
+ export type InvitationOutcome<T> = {
114
112
  succeeded: true;
115
113
  value: T;
116
114
  } | {
@@ -122,7 +120,7 @@ type InvitationOutcome<T> = {
122
120
  * Build the invitations API bound to one product's db/tables/access/seams.
123
121
  * Returns the six lifecycle handlers an app mounts in its routes.
124
122
  */
125
- declare function createInvitationsApi(opts: InvitationsApiOptions): {
123
+ export declare function createInvitationsApi(opts: InvitationsApiOptions): {
126
124
  createInvitation: (input: {
127
125
  workspaceId: string;
128
126
  email: string;
@@ -171,5 +169,3 @@ declare function createInvitationsApi(opts: InvitationsApiOptions): {
171
169
  workspaceId: string;
172
170
  }>>;
173
171
  };
174
-
175
- export { EnforceSeatSeam, type InvitationOutcome, type InvitationPreview, type InvitationUserTable, type InvitationWorkspaceTable, type InvitationsApiOptions, MemberSyncSeam, type SendInvitationEmailInput, type SendInvitationEmailResult, type SendInvitationEmailSeam, type WorkspaceInvitationView, createInvitationsApi };