@makaio/contracts 1.0.0-dev-1779051654000

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 (567) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +73 -0
  3. package/dist/account-identity-ZrtBl3Bq.mjs +1 -0
  4. package/dist/adapter/index.d.ts +13 -0
  5. package/dist/adapter/index.d.ts.map +1 -0
  6. package/dist/adapter/index.mjs +1 -0
  7. package/dist/adapter/namespace.d.ts +3171 -0
  8. package/dist/adapter/namespace.d.ts.map +1 -0
  9. package/dist/adapter/schemas/adapter-session-status.d.ts +15 -0
  10. package/dist/adapter/schemas/adapter-session-status.d.ts.map +1 -0
  11. package/dist/adapter/schemas/agent-created.d.ts +17 -0
  12. package/dist/adapter/schemas/agent-created.d.ts.map +1 -0
  13. package/dist/adapter/schemas/agent-resolution.d.ts +387 -0
  14. package/dist/adapter/schemas/agent-resolution.d.ts.map +1 -0
  15. package/dist/adapter/schemas/base-event.d.ts +11 -0
  16. package/dist/adapter/schemas/base-event.d.ts.map +1 -0
  17. package/dist/adapter/schemas/error.d.ts +22 -0
  18. package/dist/adapter/schemas/error.d.ts.map +1 -0
  19. package/dist/adapter/schemas/get-agent.d.ts +24 -0
  20. package/dist/adapter/schemas/get-agent.d.ts.map +1 -0
  21. package/dist/adapter/schemas/get-capabilities.d.ts +31 -0
  22. package/dist/adapter/schemas/get-capabilities.d.ts.map +1 -0
  23. package/dist/adapter/schemas/get-config-schema.d.ts +32 -0
  24. package/dist/adapter/schemas/get-config-schema.d.ts.map +1 -0
  25. package/dist/adapter/schemas/index.d.ts +49 -0
  26. package/dist/adapter/schemas/index.d.ts.map +1 -0
  27. package/dist/adapter/schemas/infer.d.ts +41 -0
  28. package/dist/adapter/schemas/infer.d.ts.map +1 -0
  29. package/dist/adapter/schemas/initialized.d.ts +27 -0
  30. package/dist/adapter/schemas/initialized.d.ts.map +1 -0
  31. package/dist/adapter/schemas/list-agents.d.ts +23 -0
  32. package/dist/adapter/schemas/list-agents.d.ts.map +1 -0
  33. package/dist/adapter/schemas/log.d.ts +32 -0
  34. package/dist/adapter/schemas/log.d.ts.map +1 -0
  35. package/dist/adapter/schemas/provider-context.d.ts +24 -0
  36. package/dist/adapter/schemas/provider-context.d.ts.map +1 -0
  37. package/dist/adapter/schemas/quota.d.ts +23 -0
  38. package/dist/adapter/schemas/quota.d.ts.map +1 -0
  39. package/dist/adapter/schemas/rehydrate-agent.d.ts +37 -0
  40. package/dist/adapter/schemas/rehydrate-agent.d.ts.map +1 -0
  41. package/dist/adapter/schemas/runtime-options.d.ts +32 -0
  42. package/dist/adapter/schemas/runtime-options.d.ts.map +1 -0
  43. package/dist/adapter/schemas/session-closed.d.ts +20 -0
  44. package/dist/adapter/schemas/session-closed.d.ts.map +1 -0
  45. package/dist/adapter/schemas/session-created.d.ts +17 -0
  46. package/dist/adapter/schemas/session-created.d.ts.map +1 -0
  47. package/dist/adapter/schemas/session-discovered.d.ts +29 -0
  48. package/dist/adapter/schemas/session-discovered.d.ts.map +1 -0
  49. package/dist/adapter/schemas/session-lineage.d.ts +62 -0
  50. package/dist/adapter/schemas/session-lineage.d.ts.map +1 -0
  51. package/dist/adapter/schemas/session-lineage.mjs +1 -0
  52. package/dist/adapter/schemas/session-linked.d.ts +26 -0
  53. package/dist/adapter/schemas/session-linked.d.ts.map +1 -0
  54. package/dist/adapter/schemas/session-status-changed.d.ts +23 -0
  55. package/dist/adapter/schemas/session-status-changed.d.ts.map +1 -0
  56. package/dist/adapter/schemas/session-usage.d.ts +22 -0
  57. package/dist/adapter/schemas/session-usage.d.ts.map +1 -0
  58. package/dist/adapter/schemas/start-agent.d.ts +1401 -0
  59. package/dist/adapter/schemas/start-agent.d.ts.map +1 -0
  60. package/dist/adapter/schemas/stop-agent.d.ts +20 -0
  61. package/dist/adapter/schemas/stop-agent.d.ts.map +1 -0
  62. package/dist/adapter/schemas.d.ts +1608 -0
  63. package/dist/adapter/schemas.d.ts.map +1 -0
  64. package/dist/adapter-CbtjTUAe.mjs +1 -0
  65. package/dist/agent/index.d.ts +11 -0
  66. package/dist/agent/index.d.ts.map +1 -0
  67. package/dist/agent/namespace.d.ts +2425 -0
  68. package/dist/agent/namespace.d.ts.map +1 -0
  69. package/dist/agent/schemas/base-event.d.ts +19 -0
  70. package/dist/agent/schemas/base-event.d.ts.map +1 -0
  71. package/dist/agent/schemas/complete.d.ts +43 -0
  72. package/dist/agent/schemas/complete.d.ts.map +1 -0
  73. package/dist/agent/schemas/context-window.d.ts +33 -0
  74. package/dist/agent/schemas/context-window.d.ts.map +1 -0
  75. package/dist/agent/schemas/credential-change.d.ts +36 -0
  76. package/dist/agent/schemas/credential-change.d.ts.map +1 -0
  77. package/dist/agent/schemas/cwd-change.d.ts +56 -0
  78. package/dist/agent/schemas/cwd-change.d.ts.map +1 -0
  79. package/dist/agent/schemas/get-capabilities.d.ts +21 -0
  80. package/dist/agent/schemas/get-capabilities.d.ts.map +1 -0
  81. package/dist/agent/schemas/idle.d.ts +27 -0
  82. package/dist/agent/schemas/idle.d.ts.map +1 -0
  83. package/dist/agent/schemas/index.d.ts +26 -0
  84. package/dist/agent/schemas/index.d.ts.map +1 -0
  85. package/dist/agent/schemas/interrupt.d.ts +32 -0
  86. package/dist/agent/schemas/interrupt.d.ts.map +1 -0
  87. package/dist/agent/schemas/mcp-servers-set.d.ts +118 -0
  88. package/dist/agent/schemas/mcp-servers-set.d.ts.map +1 -0
  89. package/dist/agent/schemas/message.d.ts +44 -0
  90. package/dist/agent/schemas/message.d.ts.map +1 -0
  91. package/dist/agent/schemas/model-change.d.ts +76 -0
  92. package/dist/agent/schemas/model-change.d.ts.map +1 -0
  93. package/dist/agent/schemas/model-changed.d.ts +39 -0
  94. package/dist/agent/schemas/model-changed.d.ts.map +1 -0
  95. package/dist/agent/schemas/reasoning.d.ts +44 -0
  96. package/dist/agent/schemas/reasoning.d.ts.map +1 -0
  97. package/dist/agent/schemas/send-message.d.ts +280 -0
  98. package/dist/agent/schemas/send-message.d.ts.map +1 -0
  99. package/dist/agent/schemas/session-closed.d.ts +27 -0
  100. package/dist/agent/schemas/session-closed.d.ts.map +1 -0
  101. package/dist/agent/schemas/started.d.ts +38 -0
  102. package/dist/agent/schemas/started.d.ts.map +1 -0
  103. package/dist/agent/schemas/step.d.ts +224 -0
  104. package/dist/agent/schemas/step.d.ts.map +1 -0
  105. package/dist/agent/schemas/tool-approve.d.ts +46 -0
  106. package/dist/agent/schemas/tool-approve.d.ts.map +1 -0
  107. package/dist/agent/schemas/tool.d.ts +96 -0
  108. package/dist/agent/schemas/tool.d.ts.map +1 -0
  109. package/dist/agent/schemas/turn.d.ts +126 -0
  110. package/dist/agent/schemas/turn.d.ts.map +1 -0
  111. package/dist/agent/schemas/usage.d.ts +52 -0
  112. package/dist/agent/schemas/usage.d.ts.map +1 -0
  113. package/dist/agent/schemas/user-message-acknowledged.d.ts +27 -0
  114. package/dist/agent/schemas/user-message-acknowledged.d.ts.map +1 -0
  115. package/dist/agent/schemas/user-message-completed.d.ts +43 -0
  116. package/dist/agent/schemas/user-message-completed.d.ts.map +1 -0
  117. package/dist/agent/schemas/user-message-sent.d.ts +96 -0
  118. package/dist/agent/schemas/user-message-sent.d.ts.map +1 -0
  119. package/dist/agent/schemas/validate-model-change.d.ts +27 -0
  120. package/dist/agent/schemas/validate-model-change.d.ts.map +1 -0
  121. package/dist/agent/schemas.d.ts +1238 -0
  122. package/dist/agent/schemas.d.ts.map +1 -0
  123. package/dist/agent-resolution/index.d.ts +3 -0
  124. package/dist/agent-resolution/index.d.ts.map +1 -0
  125. package/dist/agent-resolution/namespace.d.ts +324 -0
  126. package/dist/agent-resolution/namespace.d.ts.map +1 -0
  127. package/dist/agent-resolution/schemas.d.ts +263 -0
  128. package/dist/agent-resolution/schemas.d.ts.map +1 -0
  129. package/dist/approval/enriched-policy.d.ts +52 -0
  130. package/dist/approval/enriched-policy.d.ts.map +1 -0
  131. package/dist/approval/index.d.ts +6 -0
  132. package/dist/approval/index.d.ts.map +1 -0
  133. package/dist/approval/namespace.d.ts +127 -0
  134. package/dist/approval/namespace.d.ts.map +1 -0
  135. package/dist/approval/schemas.d.ts +80 -0
  136. package/dist/approval/schemas.d.ts.map +1 -0
  137. package/dist/approval/types.d.ts +49 -0
  138. package/dist/approval/types.d.ts.map +1 -0
  139. package/dist/canonical-model/index.d.ts +7 -0
  140. package/dist/canonical-model/index.d.ts.map +1 -0
  141. package/dist/canonical-model/namespace.d.ts +253 -0
  142. package/dist/canonical-model/namespace.d.ts.map +1 -0
  143. package/dist/canonical-model/parser.d.ts +47 -0
  144. package/dist/canonical-model/parser.d.ts.map +1 -0
  145. package/dist/canonical-model/schemas.d.ts +244 -0
  146. package/dist/canonical-model/schemas.d.ts.map +1 -0
  147. package/dist/canonical-model/selection.d.ts +117 -0
  148. package/dist/canonical-model/selection.d.ts.map +1 -0
  149. package/dist/canonical-model/types.d.ts +186 -0
  150. package/dist/canonical-model/types.d.ts.map +1 -0
  151. package/dist/capabilities/auto-launch/index.d.ts +3 -0
  152. package/dist/capabilities/auto-launch/index.d.ts.map +1 -0
  153. package/dist/capabilities/auto-launch/register.d.ts +11 -0
  154. package/dist/capabilities/auto-launch/register.d.ts.map +1 -0
  155. package/dist/capabilities/auto-launch/types.d.ts +38 -0
  156. package/dist/capabilities/auto-launch/types.d.ts.map +1 -0
  157. package/dist/capabilities/index.d.ts +15 -0
  158. package/dist/capabilities/index.d.ts.map +1 -0
  159. package/dist/capabilities/review/index.d.ts +6 -0
  160. package/dist/capabilities/review/index.d.ts.map +1 -0
  161. package/dist/capabilities/review/namespace.d.ts +912 -0
  162. package/dist/capabilities/review/namespace.d.ts.map +1 -0
  163. package/dist/capabilities/review/register.d.ts +39 -0
  164. package/dist/capabilities/review/register.d.ts.map +1 -0
  165. package/dist/capabilities/review/schemas.d.ts +636 -0
  166. package/dist/capabilities/review/schemas.d.ts.map +1 -0
  167. package/dist/capabilities/review/types.d.ts +199 -0
  168. package/dist/capabilities/review/types.d.ts.map +1 -0
  169. package/dist/capabilities/server/index.d.ts +3 -0
  170. package/dist/capabilities/server/index.d.ts.map +1 -0
  171. package/dist/capabilities/server/register.d.ts +18 -0
  172. package/dist/capabilities/server/register.d.ts.map +1 -0
  173. package/dist/capabilities/server/types.d.ts +97 -0
  174. package/dist/capabilities/server/types.d.ts.map +1 -0
  175. package/dist/capabilities/vcs/events.d.ts +70 -0
  176. package/dist/capabilities/vcs/events.d.ts.map +1 -0
  177. package/dist/capabilities/vcs/index.d.ts +7 -0
  178. package/dist/capabilities/vcs/index.d.ts.map +1 -0
  179. package/dist/capabilities/vcs/namespace.d.ts +603 -0
  180. package/dist/capabilities/vcs/namespace.d.ts.map +1 -0
  181. package/dist/capabilities/vcs/register.d.ts +21 -0
  182. package/dist/capabilities/vcs/register.d.ts.map +1 -0
  183. package/dist/capabilities/vcs/schemas/checks.d.ts +34 -0
  184. package/dist/capabilities/vcs/schemas/checks.d.ts.map +1 -0
  185. package/dist/capabilities/vcs/schemas/index.d.ts +372 -0
  186. package/dist/capabilities/vcs/schemas/index.d.ts.map +1 -0
  187. package/dist/capabilities/vcs/schemas/pr.d.ts +107 -0
  188. package/dist/capabilities/vcs/schemas/pr.d.ts.map +1 -0
  189. package/dist/capabilities/vcs/schemas/repository.d.ts +18 -0
  190. package/dist/capabilities/vcs/schemas/repository.d.ts.map +1 -0
  191. package/dist/capabilities/vcs/schemas/review.d.ts +24 -0
  192. package/dist/capabilities/vcs/schemas/review.d.ts.map +1 -0
  193. package/dist/capabilities/vcs/schemas/statuses.d.ts +27 -0
  194. package/dist/capabilities/vcs/schemas/statuses.d.ts.map +1 -0
  195. package/dist/capabilities/vcs/types.d.ts +216 -0
  196. package/dist/capabilities/vcs/types.d.ts.map +1 -0
  197. package/dist/capabilities/vcs-pr/index.d.ts +4 -0
  198. package/dist/capabilities/vcs-pr/index.d.ts.map +1 -0
  199. package/dist/capabilities/vcs-pr/namespace.d.ts +1080 -0
  200. package/dist/capabilities/vcs-pr/namespace.d.ts.map +1 -0
  201. package/dist/capabilities/vcs-pr/schemas.d.ts +816 -0
  202. package/dist/capabilities/vcs-pr/schemas.d.ts.map +1 -0
  203. package/dist/capabilities/vision/index.d.ts +5 -0
  204. package/dist/capabilities/vision/index.d.ts.map +1 -0
  205. package/dist/capabilities/vision/namespace.d.ts +25 -0
  206. package/dist/capabilities/vision/namespace.d.ts.map +1 -0
  207. package/dist/capabilities/vision/schemas.d.ts +36 -0
  208. package/dist/capabilities/vision/schemas.d.ts.map +1 -0
  209. package/dist/capabilities/vision/types.d.ts +19 -0
  210. package/dist/capabilities/vision/types.d.ts.map +1 -0
  211. package/dist/capabilities/voice/index.d.ts +7 -0
  212. package/dist/capabilities/voice/index.d.ts.map +1 -0
  213. package/dist/capabilities/voice/modes.d.ts +13 -0
  214. package/dist/capabilities/voice/modes.d.ts.map +1 -0
  215. package/dist/capabilities/voice/namespace.d.ts +174 -0
  216. package/dist/capabilities/voice/namespace.d.ts.map +1 -0
  217. package/dist/capabilities/voice/schemas.d.ts +221 -0
  218. package/dist/capabilities/voice/schemas.d.ts.map +1 -0
  219. package/dist/capabilities/voice/types.d.ts +188 -0
  220. package/dist/capabilities/voice/types.d.ts.map +1 -0
  221. package/dist/capability/index.d.ts +5 -0
  222. package/dist/capability/index.d.ts.map +1 -0
  223. package/dist/capability/namespace.d.ts +69 -0
  224. package/dist/capability/namespace.d.ts.map +1 -0
  225. package/dist/capability/schemas.d.ts +135 -0
  226. package/dist/capability/schemas.d.ts.map +1 -0
  227. package/dist/capability/types.d.ts +41 -0
  228. package/dist/capability/types.d.ts.map +1 -0
  229. package/dist/client/account-identity.d.ts +238 -0
  230. package/dist/client/account-identity.d.ts.map +1 -0
  231. package/dist/client/binary-management.d.ts +257 -0
  232. package/dist/client/binary-management.d.ts.map +1 -0
  233. package/dist/client/binary-resolution.d.ts +62 -0
  234. package/dist/client/binary-resolution.d.ts.map +1 -0
  235. package/dist/client/create-definition.d.ts +16 -0
  236. package/dist/client/create-definition.d.ts.map +1 -0
  237. package/dist/client/definition.d.ts +338 -0
  238. package/dist/client/definition.d.ts.map +1 -0
  239. package/dist/client/index.d.ts +25 -0
  240. package/dist/client/index.d.ts.map +1 -0
  241. package/dist/client/index.mjs +1 -0
  242. package/dist/client/namespace.d.ts +1188 -0
  243. package/dist/client/namespace.d.ts.map +1 -0
  244. package/dist/client/primitives.d.ts +23 -0
  245. package/dist/client/primitives.d.ts.map +1 -0
  246. package/dist/client/profile.d.ts +377 -0
  247. package/dist/client/profile.d.ts.map +1 -0
  248. package/dist/client/runtime-observation.d.ts +155 -0
  249. package/dist/client/runtime-observation.d.ts.map +1 -0
  250. package/dist/client/schemas.d.ts +611 -0
  251. package/dist/client/schemas.d.ts.map +1 -0
  252. package/dist/client/session-observed.d.ts +152 -0
  253. package/dist/client/session-observed.d.ts.map +1 -0
  254. package/dist/client-DBA09LFd.mjs +1 -0
  255. package/dist/common/action-intent.d.ts +112 -0
  256. package/dist/common/action-intent.d.ts.map +1 -0
  257. package/dist/common/focus-context.d.ts +17 -0
  258. package/dist/common/focus-context.d.ts.map +1 -0
  259. package/dist/common/index.d.ts +12 -0
  260. package/dist/common/index.d.ts.map +1 -0
  261. package/dist/common/index.mjs +1 -0
  262. package/dist/common/surface.d.ts +48 -0
  263. package/dist/common/surface.d.ts.map +1 -0
  264. package/dist/config/adapter-file.d.ts +41 -0
  265. package/dist/config/adapter-file.d.ts.map +1 -0
  266. package/dist/config/adapters-file.d.ts +72 -0
  267. package/dist/config/adapters-file.d.ts.map +1 -0
  268. package/dist/config/config-namespace.d.ts +189 -0
  269. package/dist/config/config-namespace.d.ts.map +1 -0
  270. package/dist/config/config-schema.d.ts +62 -0
  271. package/dist/config/config-schema.d.ts.map +1 -0
  272. package/dist/config/config-subjects.d.ts +126 -0
  273. package/dist/config/config-subjects.d.ts.map +1 -0
  274. package/dist/config/credential-ref.d.ts +64 -0
  275. package/dist/config/credential-ref.d.ts.map +1 -0
  276. package/dist/config/index.d.ts +10 -0
  277. package/dist/config/index.d.ts.map +1 -0
  278. package/dist/config/index.mjs +1 -0
  279. package/dist/config/provider-config-file.d.ts +40 -0
  280. package/dist/config/provider-config-file.d.ts.map +1 -0
  281. package/dist/config/provider-config-name.d.ts +41 -0
  282. package/dist/config/provider-config-name.d.ts.map +1 -0
  283. package/dist/config/provider-defaults.d.ts +207 -0
  284. package/dist/config/provider-defaults.d.ts.map +1 -0
  285. package/dist/config-namespace-B-nWOYn1.mjs +1 -0
  286. package/dist/credential/change-sequence.d.ts +13 -0
  287. package/dist/credential/change-sequence.d.ts.map +1 -0
  288. package/dist/credential/index.d.ts +8 -0
  289. package/dist/credential/index.d.ts.map +1 -0
  290. package/dist/credential/namespace.d.ts +242 -0
  291. package/dist/credential/namespace.d.ts.map +1 -0
  292. package/dist/credential-ref-DAVeyQ2h.mjs +1 -0
  293. package/dist/definition-7C4TvfXk.mjs +1 -0
  294. package/dist/extension/adapter-definition.d.ts +195 -0
  295. package/dist/extension/adapter-definition.d.ts.map +1 -0
  296. package/dist/extension/browser-entrypoint.d.ts +12 -0
  297. package/dist/extension/browser-entrypoint.d.ts.map +1 -0
  298. package/dist/extension/capability-token.d.ts +27 -0
  299. package/dist/extension/capability-token.d.ts.map +1 -0
  300. package/dist/extension/contribution-manifest.d.ts +568 -0
  301. package/dist/extension/contribution-manifest.d.ts.map +1 -0
  302. package/dist/extension/contributions/bootstrap-types.d.ts +118 -0
  303. package/dist/extension/contributions/bootstrap-types.d.ts.map +1 -0
  304. package/dist/extension/contributions/hash-trigger-types.d.ts +106 -0
  305. package/dist/extension/contributions/hash-trigger-types.d.ts.map +1 -0
  306. package/dist/extension/contributions/index.d.ts +11 -0
  307. package/dist/extension/contributions/index.d.ts.map +1 -0
  308. package/dist/extension/contributions/page-types.d.ts +168 -0
  309. package/dist/extension/contributions/page-types.d.ts.map +1 -0
  310. package/dist/extension/contributions/session-event-action-types.d.ts +275 -0
  311. package/dist/extension/contributions/session-event-action-types.d.ts.map +1 -0
  312. package/dist/extension/contributions/tile-types.d.ts +143 -0
  313. package/dist/extension/contributions/tile-types.d.ts.map +1 -0
  314. package/dist/extension/contributions/tool-formatter-types.d.ts +76 -0
  315. package/dist/extension/contributions/tool-formatter-types.d.ts.map +1 -0
  316. package/dist/extension/contributions/ui-context-types.d.ts +57 -0
  317. package/dist/extension/contributions/ui-context-types.d.ts.map +1 -0
  318. package/dist/extension/contributions/web-ui-types.d.ts +145 -0
  319. package/dist/extension/contributions/web-ui-types.d.ts.map +1 -0
  320. package/dist/extension/contributions/widget-types.d.ts +168 -0
  321. package/dist/extension/contributions/widget-types.d.ts.map +1 -0
  322. package/dist/extension/extension-cli.d.ts +110 -0
  323. package/dist/extension/extension-cli.d.ts.map +1 -0
  324. package/dist/extension/extension-config-provider.d.ts +27 -0
  325. package/dist/extension/extension-config-provider.d.ts.map +1 -0
  326. package/dist/extension/extension-context.d.ts +100 -0
  327. package/dist/extension/extension-context.d.ts.map +1 -0
  328. package/dist/extension/extension-contributions.d.ts +156 -0
  329. package/dist/extension/extension-contributions.d.ts.map +1 -0
  330. package/dist/extension/extension-descriptor.d.ts +413 -0
  331. package/dist/extension/extension-descriptor.d.ts.map +1 -0
  332. package/dist/extension/extension-lifecycle.d.ts +46 -0
  333. package/dist/extension/extension-lifecycle.d.ts.map +1 -0
  334. package/dist/extension/extension-runtime-boot.d.ts +13 -0
  335. package/dist/extension/extension-runtime-boot.d.ts.map +1 -0
  336. package/dist/extension/extension-token.d.ts +27 -0
  337. package/dist/extension/extension-token.d.ts.map +1 -0
  338. package/dist/extension/extension-warning.d.ts +128 -0
  339. package/dist/extension/extension-warning.d.ts.map +1 -0
  340. package/dist/extension/index.d.ts +27 -0
  341. package/dist/extension/index.d.ts.map +1 -0
  342. package/dist/extension/index.mjs +1 -0
  343. package/dist/extension/makaio-extension.d.ts +324 -0
  344. package/dist/extension/makaio-extension.d.ts.map +1 -0
  345. package/dist/extension/manifest.d.ts +624 -0
  346. package/dist/extension/manifest.d.ts.map +1 -0
  347. package/dist/extension/parse-extension-config.d.ts +21 -0
  348. package/dist/extension/parse-extension-config.d.ts.map +1 -0
  349. package/dist/extension-CfIRUup2.mjs +1 -0
  350. package/dist/harness/codex-capability-map.d.ts +11 -0
  351. package/dist/harness/codex-capability-map.d.ts.map +1 -0
  352. package/dist/harness/defaults.d.ts +12 -0
  353. package/dist/harness/defaults.d.ts.map +1 -0
  354. package/dist/harness/expand-capabilities.d.ts +93 -0
  355. package/dist/harness/expand-capabilities.d.ts.map +1 -0
  356. package/dist/harness/index.d.ts +8 -0
  357. package/dist/harness/index.d.ts.map +1 -0
  358. package/dist/harness/index.mjs +1 -0
  359. package/dist/harness/namespace.d.ts +1340 -0
  360. package/dist/harness/namespace.d.ts.map +1 -0
  361. package/dist/harness/schemas.d.ts +186 -0
  362. package/dist/harness/schemas.d.ts.map +1 -0
  363. package/dist/harness-BMzrOThN.mjs +1 -0
  364. package/dist/host/index.d.ts +4 -0
  365. package/dist/host/index.d.ts.map +1 -0
  366. package/dist/host/namespace.d.ts +139 -0
  367. package/dist/host/namespace.d.ts.map +1 -0
  368. package/dist/host/schemas.d.ts +199 -0
  369. package/dist/host/schemas.d.ts.map +1 -0
  370. package/dist/index.d.ts +62 -0
  371. package/dist/index.d.ts.map +1 -0
  372. package/dist/index.mjs +1 -0
  373. package/dist/mcp/constants.d.ts +8 -0
  374. package/dist/mcp/constants.d.ts.map +1 -0
  375. package/dist/mcp/index.d.ts +5 -0
  376. package/dist/mcp/index.d.ts.map +1 -0
  377. package/dist/mcp/namespace.d.ts +323 -0
  378. package/dist/mcp/namespace.d.ts.map +1 -0
  379. package/dist/mcp/schemas.d.ts +714 -0
  380. package/dist/mcp/schemas.d.ts.map +1 -0
  381. package/dist/model/index.d.ts +2 -0
  382. package/dist/model/index.d.ts.map +1 -0
  383. package/dist/model/schemas.d.ts +348 -0
  384. package/dist/model/schemas.d.ts.map +1 -0
  385. package/dist/model-registry/index.d.ts +4 -0
  386. package/dist/model-registry/index.d.ts.map +1 -0
  387. package/dist/model-registry/namespace.d.ts +29 -0
  388. package/dist/model-registry/namespace.d.ts.map +1 -0
  389. package/dist/model-registry/schemas.d.ts +36 -0
  390. package/dist/model-registry/schemas.d.ts.map +1 -0
  391. package/dist/namespace-DDYu5H_m.mjs +1 -0
  392. package/dist/namespace-catalog.d.ts +23 -0
  393. package/dist/namespace-catalog.d.ts.map +1 -0
  394. package/dist/native-session-supervisor/index.d.ts +4 -0
  395. package/dist/native-session-supervisor/index.d.ts.map +1 -0
  396. package/dist/native-session-supervisor/index.mjs +1 -0
  397. package/dist/native-session-supervisor/namespace.d.ts +171 -0
  398. package/dist/native-session-supervisor/namespace.d.ts.map +1 -0
  399. package/dist/native-session-supervisor/schemas.d.ts +245 -0
  400. package/dist/native-session-supervisor/schemas.d.ts.map +1 -0
  401. package/dist/native-session-supervisor-1VBkkmcf.mjs +1 -0
  402. package/dist/platform/index.d.ts +4 -0
  403. package/dist/platform/index.d.ts.map +1 -0
  404. package/dist/platform/namespace.d.ts +60 -0
  405. package/dist/platform/namespace.d.ts.map +1 -0
  406. package/dist/platform/schemas.d.ts +67 -0
  407. package/dist/platform/schemas.d.ts.map +1 -0
  408. package/dist/profile-Bcegl5D9.mjs +1 -0
  409. package/dist/protocol/catalog.d.ts +4849 -0
  410. package/dist/protocol/catalog.d.ts.map +1 -0
  411. package/dist/protocol/export-manifest-audit-utils.d.ts +38 -0
  412. package/dist/protocol/export-manifest-audit-utils.d.ts.map +1 -0
  413. package/dist/protocol/export-manifest-json-utils.d.ts +23 -0
  414. package/dist/protocol/export-manifest-json-utils.d.ts.map +1 -0
  415. package/dist/protocol/export-manifest-rust-checker.d.ts +11 -0
  416. package/dist/protocol/export-manifest-rust-checker.d.ts.map +1 -0
  417. package/dist/protocol/export-manifest-string-utils.d.ts +18 -0
  418. package/dist/protocol/export-manifest-string-utils.d.ts.map +1 -0
  419. package/dist/protocol/index.d.ts +5 -0
  420. package/dist/protocol/index.d.ts.map +1 -0
  421. package/dist/protocol/types.d.ts +107 -0
  422. package/dist/protocol/types.d.ts.map +1 -0
  423. package/dist/provider/definition.d.ts +155 -0
  424. package/dist/provider/definition.d.ts.map +1 -0
  425. package/dist/provider/index.d.ts +3 -0
  426. package/dist/provider/index.d.ts.map +1 -0
  427. package/dist/provider/index.mjs +1 -0
  428. package/dist/provider/visibility.d.ts +37 -0
  429. package/dist/provider/visibility.d.ts.map +1 -0
  430. package/dist/schemas-BJb5W0VZ.mjs +1 -0
  431. package/dist/schemas-BkyMBNp4.mjs +1 -0
  432. package/dist/session/connector-swap-cancelled-error.d.ts +18 -0
  433. package/dist/session/connector-swap-cancelled-error.d.ts.map +1 -0
  434. package/dist/session/connector-swap-warning.d.ts +25 -0
  435. package/dist/session/connector-swap-warning.d.ts.map +1 -0
  436. package/dist/session/index.d.ts +36 -0
  437. package/dist/session/index.d.ts.map +1 -0
  438. package/dist/session/index.mjs +1 -0
  439. package/dist/session/message-cursor.d.ts +29 -0
  440. package/dist/session/message-cursor.d.ts.map +1 -0
  441. package/dist/session/message-storage-namespace.d.ts +1719 -0
  442. package/dist/session/message-storage-namespace.d.ts.map +1 -0
  443. package/dist/session/namespace.d.ts +6921 -0
  444. package/dist/session/namespace.d.ts.map +1 -0
  445. package/dist/session/schemas/agent.d.ts +54 -0
  446. package/dist/session/schemas/agent.d.ts.map +1 -0
  447. package/dist/session/schemas/compression.d.ts +14 -0
  448. package/dist/session/schemas/compression.d.ts.map +1 -0
  449. package/dist/session/schemas/crud.d.ts +743 -0
  450. package/dist/session/schemas/crud.d.ts.map +1 -0
  451. package/dist/session/schemas/enrichment.d.ts +47 -0
  452. package/dist/session/schemas/enrichment.d.ts.map +1 -0
  453. package/dist/session/schemas/event.d.ts +475 -0
  454. package/dist/session/schemas/event.d.ts.map +1 -0
  455. package/dist/session/schemas/events.d.ts +525 -0
  456. package/dist/session/schemas/events.d.ts.map +1 -0
  457. package/dist/session/schemas/extension-context.d.ts +79 -0
  458. package/dist/session/schemas/extension-context.d.ts.map +1 -0
  459. package/dist/session/schemas/fork-child-info.d.ts +24 -0
  460. package/dist/session/schemas/fork-child-info.d.ts.map +1 -0
  461. package/dist/session/schemas/lifecycle-events.d.ts +519 -0
  462. package/dist/session/schemas/lifecycle-events.d.ts.map +1 -0
  463. package/dist/session/schemas/message.d.ts +266 -0
  464. package/dist/session/schemas/message.d.ts.map +1 -0
  465. package/dist/session/schemas/orchestrator.d.ts +1271 -0
  466. package/dist/session/schemas/orchestrator.d.ts.map +1 -0
  467. package/dist/session/schemas/primitives.d.ts +33 -0
  468. package/dist/session/schemas/primitives.d.ts.map +1 -0
  469. package/dist/session/schemas/resolve-agent-config.d.ts +171 -0
  470. package/dist/session/schemas/resolve-agent-config.d.ts.map +1 -0
  471. package/dist/session/schemas/resolve-system-prompt.d.ts +47 -0
  472. package/dist/session/schemas/resolve-system-prompt.d.ts.map +1 -0
  473. package/dist/session/schemas/session.d.ts +226 -0
  474. package/dist/session/schemas/session.d.ts.map +1 -0
  475. package/dist/session/schemas/snapshot.d.ts +1852 -0
  476. package/dist/session/schemas/snapshot.d.ts.map +1 -0
  477. package/dist/session/schemas.d.ts +3499 -0
  478. package/dist/session/schemas.d.ts.map +1 -0
  479. package/dist/session/session-context.d.ts +137 -0
  480. package/dist/session/session-context.d.ts.map +1 -0
  481. package/dist/session/session-event-storage-namespace.d.ts +2578 -0
  482. package/dist/session/session-event-storage-namespace.d.ts.map +1 -0
  483. package/dist/session/session-storage-namespace.d.ts +1702 -0
  484. package/dist/session/session-storage-namespace.d.ts.map +1 -0
  485. package/dist/session/types.d.ts +108 -0
  486. package/dist/session/types.d.ts.map +1 -0
  487. package/dist/session/utils/branch-kind.d.ts +89 -0
  488. package/dist/session/utils/branch-kind.d.ts.map +1 -0
  489. package/dist/session/utils/index.d.ts +3 -0
  490. package/dist/session/utils/index.d.ts.map +1 -0
  491. package/dist/session-dXeBGwBr.mjs +1 -0
  492. package/dist/shared/index.d.ts +495 -0
  493. package/dist/shared/index.d.ts.map +1 -0
  494. package/dist/shared/index.mjs +1 -0
  495. package/dist/shared/json-value.d.ts +38 -0
  496. package/dist/shared/json-value.d.ts.map +1 -0
  497. package/dist/shared/ui-config.d.ts +197 -0
  498. package/dist/shared/ui-config.d.ts.map +1 -0
  499. package/dist/shared-CE23KND3.mjs +1 -0
  500. package/dist/skill/index.d.ts +5 -0
  501. package/dist/skill/index.d.ts.map +1 -0
  502. package/dist/skill/index.mjs +1 -0
  503. package/dist/skill/namespace.d.ts +279 -0
  504. package/dist/skill/namespace.d.ts.map +1 -0
  505. package/dist/skill/schemas.d.ts +372 -0
  506. package/dist/skill/schemas.d.ts.map +1 -0
  507. package/dist/skill/storage-namespace.d.ts +391 -0
  508. package/dist/skill/storage-namespace.d.ts.map +1 -0
  509. package/dist/skill/types.d.ts +27 -0
  510. package/dist/skill/types.d.ts.map +1 -0
  511. package/dist/skill-DWpt3u5u.mjs +1 -0
  512. package/dist/storage-namespace-definition-ce8s152w.mjs +1 -0
  513. package/dist/storage-namespace-definition.d.ts +24 -0
  514. package/dist/storage-namespace-definition.d.ts.map +1 -0
  515. package/dist/subagent/errors.d.ts +24 -0
  516. package/dist/subagent/errors.d.ts.map +1 -0
  517. package/dist/subagent/index.d.ts +5 -0
  518. package/dist/subagent/index.d.ts.map +1 -0
  519. package/dist/subagent/namespace.d.ts +886 -0
  520. package/dist/subagent/namespace.d.ts.map +1 -0
  521. package/dist/subagent/schemas.d.ts +308 -0
  522. package/dist/subagent/schemas.d.ts.map +1 -0
  523. package/dist/timeout/index.d.ts +3 -0
  524. package/dist/timeout/index.d.ts.map +1 -0
  525. package/dist/timeout/schemas.d.ts +25 -0
  526. package/dist/timeout/schemas.d.ts.map +1 -0
  527. package/dist/toast/index.d.ts +4 -0
  528. package/dist/toast/index.d.ts.map +1 -0
  529. package/dist/toast/index.mjs +1 -0
  530. package/dist/toast/namespace.d.ts +79 -0
  531. package/dist/toast/namespace.d.ts.map +1 -0
  532. package/dist/toast/schemas.d.ts +121 -0
  533. package/dist/toast/schemas.d.ts.map +1 -0
  534. package/dist/tool/adapter-identity.d.ts +44 -0
  535. package/dist/tool/adapter-identity.d.ts.map +1 -0
  536. package/dist/tool/index.d.ts +6 -0
  537. package/dist/tool/index.d.ts.map +1 -0
  538. package/dist/tool/namespace.d.ts +203 -0
  539. package/dist/tool/namespace.d.ts.map +1 -0
  540. package/dist/tool/schemas.d.ts +260 -0
  541. package/dist/tool/schemas.d.ts.map +1 -0
  542. package/dist/tool-capability/capabilities.d.ts +83 -0
  543. package/dist/tool-capability/capabilities.d.ts.map +1 -0
  544. package/dist/tool-capability/index.d.ts +8 -0
  545. package/dist/tool-capability/index.d.ts.map +1 -0
  546. package/dist/tool-capability/picker-types.d.ts +55 -0
  547. package/dist/tool-capability/picker-types.d.ts.map +1 -0
  548. package/dist/ui-config-C1F4oDus.mjs +1 -0
  549. package/dist/variant/index.d.ts +4 -0
  550. package/dist/variant/index.d.ts.map +1 -0
  551. package/dist/variant/namespace.d.ts +95 -0
  552. package/dist/variant/namespace.d.ts.map +1 -0
  553. package/dist/variant/schemas.d.ts +129 -0
  554. package/dist/variant/schemas.d.ts.map +1 -0
  555. package/dist/version/index.d.ts +2 -0
  556. package/dist/version/index.d.ts.map +1 -0
  557. package/dist/version/primitives.d.ts +37 -0
  558. package/dist/version/primitives.d.ts.map +1 -0
  559. package/dist/version-u2rO7guD.mjs +1 -0
  560. package/dist/visibility-D4i0fywT.mjs +1 -0
  561. package/dist/workflow/index.d.ts +4 -0
  562. package/dist/workflow/index.d.ts.map +1 -0
  563. package/dist/workflow/schemas.d.ts +444 -0
  564. package/dist/workflow/schemas.d.ts.map +1 -0
  565. package/dist/workflow/trigger-type-registry.d.ts +53 -0
  566. package/dist/workflow/trigger-type-registry.d.ts.map +1 -0
  567. package/package.json +134 -0
@@ -0,0 +1,145 @@
1
+ import type { ComponentType } from 'react';
2
+ import type { FormFieldProps } from '../../shared/ui-config.js';
3
+ import type { UiContextSnapshot } from './ui-context-types.js';
4
+ /**
5
+ * Request context passed to a WebUI loader function.
6
+ *
7
+ * Provides visibility-aware context so loaders can filter data by the active
8
+ * host UI context. URL params are forwarded from the route match so loaders can
9
+ * access path segments and query strings.
10
+ */
11
+ export interface LoaderContext {
12
+ /**
13
+ * Active session identifier, if a session is selected.
14
+ *
15
+ * `undefined` when no session is currently active.
16
+ */
17
+ sessionId?: string;
18
+ /** Active host UI context for the matched route. */
19
+ uiContext: UiContextSnapshot;
20
+ /**
21
+ * URL parameters from the matched route, including path segments and query
22
+ * strings.
23
+ *
24
+ * Forwarded from the router so loaders can read route-specific identifiers.
25
+ */
26
+ params: Record<string, string>;
27
+ }
28
+ /**
29
+ * Loader function that fetches data for a WebUI route.
30
+ *
31
+ * Receives a {@link LoaderContext} with active session, UI context, and URL
32
+ * params so loaders can return visibility-appropriate data. The resolved data
33
+ * is passed to the component as `loaderData`.
34
+ * @typeParam TData - Type of data returned by the loader.
35
+ * @param context - Request context with session, UI context, and URL params.
36
+ * @returns Promise resolving to the loader data.
37
+ */
38
+ export type MakaioWebUiLoader<TData = unknown> = (context: LoaderContext) => Promise<TData>;
39
+ /**
40
+ * Action function that performs server-side operations.
41
+ * @typeParam TData - Type of data returned by the action.
42
+ * @typeParam TArgs - Tuple type of arguments accepted by the action.
43
+ * @param args - Arguments passed to the action.
44
+ * @returns Promise resolving to the action result.
45
+ */
46
+ export type MakaioWebUiAction<TData = unknown, TArgs extends unknown[] = unknown[]> = (...args: TArgs) => Promise<TData>;
47
+ /**
48
+ * Record of named actions available to a WebUI route.
49
+ *
50
+ * Each action can return different data types.
51
+ */
52
+ export type MakaioWebUiActions = Record<string, MakaioWebUiAction<unknown, unknown[]>>;
53
+ /**
54
+ * Transforms server-side action definitions into client-side Promise-based
55
+ * executors.
56
+ *
57
+ * Used in component props to provide an async/await API for actions.
58
+ * @typeParam TActions - The server-side action record shape.
59
+ */
60
+ export type PromisifiedActions<TActions extends MakaioWebUiActions> = {
61
+ [K in keyof TActions]: TActions[K] extends (...args: infer Args) => Promise<infer Result> ? (...args: Args) => Promise<Result> : never;
62
+ };
63
+ /**
64
+ * Props passed to a WebUI component.
65
+ *
66
+ * Provides type-safe access to loader data, Promise-based action executors,
67
+ * and the {@link LoaderContext} that was active when the loader ran.
68
+ * @typeParam TLoaderData - Type of data returned by the loader.
69
+ * @typeParam TActions - Record of available actions.
70
+ */
71
+ export type MakaioWebUiComponentProps<TLoaderData = unknown, TActions extends MakaioWebUiActions = MakaioWebUiActions> = {
72
+ /** Data resolved by the loader before the component was rendered. */
73
+ loaderData: TLoaderData;
74
+ /** Promisified action executors for mutating server-side state. */
75
+ actions: TActions extends MakaioWebUiActions ? PromisifiedActions<TActions> : Record<string, never>;
76
+ /** The loader context that was active when the loader ran. */
77
+ loaderContext: LoaderContext;
78
+ };
79
+ /**
80
+ * WebUI route definition for packages.
81
+ *
82
+ * Defines a route with path, optional loader/actions, and a lazy-loaded React
83
+ * component. Provides full TypeScript inference for component props.
84
+ * @typeParam TLoaderData - Type of data returned by the loader.
85
+ * @typeParam TActions - Record of available actions (or `undefined` if none).
86
+ */
87
+ export interface MakaioWebUiRoute<TLoaderData = unknown, TActions extends MakaioWebUiActions | undefined = undefined> {
88
+ /** Route path relative to the package mount point. */
89
+ path: string;
90
+ /** Optional data loader. */
91
+ loader?: MakaioWebUiLoader<TLoaderData>;
92
+ /** Optional action handlers. */
93
+ actions?: TActions;
94
+ /**
95
+ * Lazy component loader — called only browser-side.
96
+ *
97
+ * Must return a module with a default export of a React component that
98
+ * accepts the inferred {@link MakaioWebUiComponentProps}.
99
+ */
100
+ component: () => Promise<{
101
+ default: ComponentType<MakaioWebUiComponentProps<TLoaderData, TActions extends MakaioWebUiActions ? TActions : Record<string, never>>>;
102
+ }>;
103
+ }
104
+ /**
105
+ * Props for custom extension configuration components.
106
+ *
107
+ * When an extension provides `ui.configComponent`, the loaded component receives
108
+ * these props to interact with the extension configuration system.
109
+ * @typeParam TConfig - Extension configuration type.
110
+ */
111
+ export interface ExtensionConfigComponentProps<TConfig = unknown> {
112
+ /** Current configuration values. */
113
+ config: TConfig;
114
+ /**
115
+ * Called when configuration values change.
116
+ * @param config - Updated configuration.
117
+ */
118
+ onChange: (config: TConfig) => void;
119
+ /** Called when the user confirms the save action. */
120
+ onSave: () => Promise<void>;
121
+ /** Whether a save is currently in progress. */
122
+ isSaving: boolean;
123
+ /** Validation errors keyed by field name. */
124
+ errors?: Record<string, string>;
125
+ }
126
+ /**
127
+ * Async loader for registering custom form field types.
128
+ *
129
+ * Must return a module with a default export of a React component that accepts
130
+ * {@link FormFieldProps}.
131
+ */
132
+ export type ExtensionFieldTypeLoader = () => Promise<{
133
+ default: ComponentType<FormFieldProps>;
134
+ }>;
135
+ /**
136
+ * Async loader for a custom extension configuration component.
137
+ *
138
+ * Must return a module with a default export of a React component that accepts
139
+ * {@link ExtensionConfigComponentProps}.
140
+ * @typeParam TConfig - Extension configuration type.
141
+ */
142
+ export type ExtensionConfigComponentLoader<TConfig = unknown> = () => Promise<{
143
+ default: ComponentType<ExtensionConfigComponentProps<TConfig>>;
144
+ }>;
145
+ //# sourceMappingURL=web-ui-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"web-ui-types.d.ts","sourceRoot":"","sources":["../../../src/extension/contributions/web-ui-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE/D;;;;;;GAMG;AACH,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oDAAoD;IACpD,SAAS,EAAE,iBAAiB,CAAC;IAC7B;;;;;OAKG;IACH,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,iBAAiB,CAAC,KAAK,GAAG,OAAO,IAAI,CAAC,OAAO,EAAE,aAAa,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC;AAE5F;;;;;;GAMG;AACH,MAAM,MAAM,iBAAiB,CAAC,KAAK,GAAG,OAAO,EAAE,KAAK,SAAS,OAAO,EAAE,GAAG,OAAO,EAAE,IAAI,CACpF,GAAG,IAAI,EAAE,KAAK,KACX,OAAO,CAAC,KAAK,CAAC,CAAC;AAEpB;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;AAEvF;;;;;;GAMG;AACH,MAAM,MAAM,kBAAkB,CAAC,QAAQ,SAAS,kBAAkB,IAAI;KACnE,CAAC,IAAI,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,MAAM,IAAI,KAAK,OAAO,CAAC,MAAM,MAAM,CAAC,GACrF,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,MAAM,CAAC,GAClC,KAAK;CACV,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,yBAAyB,CACnC,WAAW,GAAG,OAAO,EACrB,QAAQ,SAAS,kBAAkB,GAAG,kBAAkB,IACtD;IACF,qEAAqE;IACrE,UAAU,EAAE,WAAW,CAAC;IACxB,mEAAmE;IACnE,OAAO,EAAE,QAAQ,SAAS,kBAAkB,GAAG,kBAAkB,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACpG,8DAA8D;IAC9D,aAAa,EAAE,aAAa,CAAC;CAC9B,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,WAAW,gBAAgB,CAAC,WAAW,GAAG,OAAO,EAAE,QAAQ,SAAS,kBAAkB,GAAG,SAAS,GAAG,SAAS;IAClH,sDAAsD;IACtD,IAAI,EAAE,MAAM,CAAC;IACb,4BAA4B;IAC5B,MAAM,CAAC,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;IACxC,gCAAgC;IAChC,OAAO,CAAC,EAAE,QAAQ,CAAC;IACnB;;;;;OAKG;IACH,SAAS,EAAE,MAAM,OAAO,CAAC;QACvB,OAAO,EAAE,aAAa,CACpB,yBAAyB,CAAC,WAAW,EAAE,QAAQ,SAAS,kBAAkB,GAAG,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAC/G,CAAC;KACH,CAAC,CAAC;CACJ;AAED;;;;;;GAMG;AACH,MAAM,WAAW,6BAA6B,CAAC,OAAO,GAAG,OAAO;IAC9D,oCAAoC;IACpC,MAAM,EAAE,OAAO,CAAC;IAChB;;;OAGG;IACH,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACpC,qDAAqD;IACrD,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,+CAA+C;IAC/C,QAAQ,EAAE,OAAO,CAAC;IAClB,6CAA6C;IAC7C,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED;;;;;GAKG;AACH,MAAM,MAAM,wBAAwB,GAAG,MAAM,OAAO,CAAC;IAAE,OAAO,EAAE,aAAa,CAAC,cAAc,CAAC,CAAA;CAAE,CAAC,CAAC;AAEjG;;;;;;GAMG;AACH,MAAM,MAAM,8BAA8B,CAAC,OAAO,GAAG,OAAO,IAAI,MAAM,OAAO,CAAC;IAC5E,OAAO,EAAE,aAAa,CAAC,6BAA6B,CAAC,OAAO,CAAC,CAAC,CAAC;CAChE,CAAC,CAAC"}
@@ -0,0 +1,168 @@
1
+ import type { UiContextSnapshot, UiScope } from './ui-context-types.js';
2
+ /**
3
+ * Widget size variants.
4
+ *
5
+ * Defines the visual footprint a widget can occupy in a layout.
6
+ * - `'small'`: Minimal space, suitable for status indicators
7
+ * - `'medium'`: Standard panel size, default for most widgets
8
+ * - `'large'`: Expanded view, for detailed information
9
+ * - `'full-width'`: Spans the full available width
10
+ */
11
+ export type WidgetSize = 'small' | 'medium' | 'large' | 'full-width';
12
+ /**
13
+ * Serializable widget definition.
14
+ *
15
+ * Platform-agnostic description of what data a widget needs and how it
16
+ * behaves. This definition can be serialized and stored in user preferences.
17
+ */
18
+ export interface WidgetDefinition {
19
+ /**
20
+ * Bus subject for the widget's data source.
21
+ *
22
+ * Optional — widgets can render without dynamic data (e.g. static controls).
23
+ * When provided, the widget requests data from this subject.
24
+ */
25
+ dataSource?: string;
26
+ /**
27
+ * Events that trigger a widget refresh.
28
+ *
29
+ * List of bus event subjects that cause the widget to refresh its data.
30
+ * @example `['session.updated', 'extension.stateChanged']`
31
+ */
32
+ refreshOn?: string[];
33
+ /**
34
+ * Supported size variants for this widget.
35
+ *
36
+ * Must include at least one size and must include `defaultSize`.
37
+ */
38
+ sizes: WidgetSize[];
39
+ /**
40
+ * Default size when the widget is first added to a layout.
41
+ *
42
+ * Must be one of the values in {@link sizes}.
43
+ */
44
+ defaultSize: WidgetSize;
45
+ }
46
+ /**
47
+ * Props passed to widget components.
48
+ * @typeParam TData - Type of data from the widget's data source, if any.
49
+ */
50
+ export interface WidgetProps<TData = unknown> {
51
+ /** The widget's definition (from declaration). */
52
+ definition: WidgetDefinition;
53
+ /** Current size of this widget instance. */
54
+ size: WidgetSize;
55
+ /** Data from the widget's data source (when `dataSource` is defined). */
56
+ data?: TData;
57
+ /** Active host UI context for this widget surface. */
58
+ uiContext: UiContextSnapshot;
59
+ }
60
+ /**
61
+ * Framework-agnostic UI component shape for lazy widget modules.
62
+ *
63
+ * Kept free of React imports so the contracts package does not force React
64
+ * types onto non-web consumers. React function components are structurally
65
+ * assignable to the call signature.
66
+ */
67
+ type WidgetComponent = ((props: WidgetProps) => unknown) | (new (props: WidgetProps) => unknown);
68
+ /** Lazy widget component loader. */
69
+ type WidgetComponentLoader = () => Promise<{
70
+ default: WidgetComponent;
71
+ }>;
72
+ /**
73
+ * Platform renderers for a widget.
74
+ *
75
+ * SEAM: Currently supports React; additional platforms can be added as optional
76
+ * keys without breaking existing declarations.
77
+ */
78
+ export interface WidgetRenderers {
79
+ /**
80
+ * React renderer for the web UI.
81
+ *
82
+ * Lazy-loaded component module with a default export that accepts
83
+ * `WidgetProps<TData>` where `TData` matches the `dataSource` response.
84
+ */
85
+ react: WidgetComponentLoader;
86
+ /**
87
+ * SEAM: Future platform renderers (e.g. `reactNative`, `electron`).
88
+ *
89
+ * Additional platforms can be added here as optional keys.
90
+ */
91
+ [platform: string]: WidgetComponentLoader | undefined;
92
+ }
93
+ /**
94
+ * Widget declaration contributed by a package.
95
+ *
96
+ * Packages declare widgets they provide. These are collected into a global
97
+ * catalog that the UI system uses to populate focus contexts.
98
+ * @example
99
+ * ```typescript
100
+ * const statusExtension: MakaioExtension = {
101
+ * name: 'status-panel',
102
+ * ui: {
103
+ * widgets: [
104
+ * {
105
+ * id: 'status-summary',
106
+ * name: 'Status Summary',
107
+ * description: 'Shows current runtime status',
108
+ * scope: 'global',
109
+ * definition: {
110
+ * dataSource: 'runtime.getStatus',
111
+ * refreshOn: ['runtime.ready', 'extension.stateChanged'],
112
+ * sizes: ['small', 'medium', 'large'],
113
+ * defaultSize: 'medium',
114
+ * },
115
+ * renderers: {
116
+ * react: () => import('./widgets/StatusSummary.js'),
117
+ * },
118
+ * },
119
+ * ],
120
+ * },
121
+ * };
122
+ * ```
123
+ */
124
+ export interface WidgetDeclaration {
125
+ /**
126
+ * Unique widget identifier.
127
+ *
128
+ * Must be unique across all packages. Use the package name as a prefix to
129
+ * avoid collisions.
130
+ * @example `'status-summary'`, `'session-activity'`
131
+ */
132
+ id: string;
133
+ /**
134
+ * Display name for the widget.
135
+ *
136
+ * Human-readable name shown in UI when users browse available widgets.
137
+ */
138
+ name: string;
139
+ /**
140
+ * Optional description of widget purpose.
141
+ *
142
+ * Provides additional context about what the widget displays and when to
143
+ * use it.
144
+ */
145
+ description?: string;
146
+ /**
147
+ * Widget scope identifier.
148
+ *
149
+ * Defaults to `'global'` when not specified.
150
+ */
151
+ scope?: UiScope;
152
+ /**
153
+ * Serializable widget definition.
154
+ *
155
+ * Describes the widget's data needs and behavior without platform-specific
156
+ * details. Can be serialized and stored in user preferences.
157
+ */
158
+ definition: WidgetDefinition;
159
+ /**
160
+ * Platform-specific renderers.
161
+ *
162
+ * Maps platform names to lazy-loaded component modules. At minimum, the
163
+ * `'react'` platform is required for the web UI.
164
+ */
165
+ renderers: WidgetRenderers;
166
+ }
167
+ export {};
168
+ //# sourceMappingURL=widget-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"widget-types.d.ts","sourceRoot":"","sources":["../../../src/extension/contributions/widget-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAExE;;;;;;;;GAQG;AACH,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,YAAY,CAAC;AAErE;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB;;;;OAIG;IACH,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB;;;;OAIG;IACH,WAAW,EAAE,UAAU,CAAC;CACzB;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW,CAAC,KAAK,GAAG,OAAO;IAC1C,kDAAkD;IAClD,UAAU,EAAE,gBAAgB,CAAC;IAC7B,4CAA4C;IAC5C,IAAI,EAAE,UAAU,CAAC;IACjB,yEAAyE;IACzE,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,sDAAsD;IACtD,SAAS,EAAE,iBAAiB,CAAC;CAC9B;AAED;;;;;;GAMG;AACH,KAAK,eAAe,GAAG,CAAC,CAAC,KAAK,EAAE,WAAW,KAAK,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC;AAEjG,oCAAoC;AACpC,KAAK,qBAAqB,GAAG,MAAM,OAAO,CAAC;IAAE,OAAO,EAAE,eAAe,CAAA;CAAE,CAAC,CAAC;AAEzE;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;;OAKG;IACH,KAAK,EAAE,qBAAqB,CAAC;IAE7B;;;;OAIG;IACH,CAAC,QAAQ,EAAE,MAAM,GAAG,qBAAqB,GAAG,SAAS,CAAC;CACvD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;;;OAMG;IACH,EAAE,EAAE,MAAM,CAAC;IACX;;;;OAIG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;;;OAKG;IACH,UAAU,EAAE,gBAAgB,CAAC;IAC7B;;;;;OAKG;IACH,SAAS,EAAE,eAAe,CAAC;CAC5B"}
@@ -0,0 +1,110 @@
1
+ import type { MakaioBusLike } from '@makaio/framework/core';
2
+ import type { CliManifest } from './manifest.js';
3
+ /**
4
+ * Type-erased output channel used by extension-local CLI handlers.
5
+ *
6
+ * Runtime code exposes the fully typed helper API via `@makaio/kernel/cli`.
7
+ */
8
+ export interface ExtensionCliOutputWriter {
9
+ /** Write text to standard output. */
10
+ write(text: string): void;
11
+ /** Write text to standard error. */
12
+ error(text: string): void;
13
+ }
14
+ /**
15
+ * Type-erased handler context stored in the contracts layer.
16
+ *
17
+ * Runtime code provides the fully typed variant in `@makaio/kernel/cli`.
18
+ */
19
+ export interface ExtensionCliHandlerContext<TBus extends MakaioBusLike = MakaioBusLike> {
20
+ /** Parsed and validated command arguments/options. */
21
+ readonly args: unknown;
22
+ /**
23
+ * Bus client connected to the running Makaio instance.
24
+ *
25
+ * `null` when the bus is unavailable and the contribution's `beforeRun`
26
+ * hook opted into offline execution.
27
+ */
28
+ readonly bus: TBus | null;
29
+ /** Output channel for writing to stdout and stderr. */
30
+ readonly output: ExtensionCliOutputWriter;
31
+ /** Abort signal triggered when the invocation is cancelled. */
32
+ readonly signal: AbortSignal;
33
+ /**
34
+ * Set the process-style exit code for the current command invocation.
35
+ * @param exitCode - Command exit code to report.
36
+ */
37
+ setExitCode(exitCode: number): void;
38
+ }
39
+ /**
40
+ * Interactive entry context stored in the contracts layer.
41
+ */
42
+ export interface ExtensionCliInteractiveContext<TBus extends MakaioBusLike = MakaioBusLike> {
43
+ /**
44
+ * Bus client connected to the running Makaio instance.
45
+ *
46
+ * `null` when the bus is unavailable and the contribution's `beforeRun`
47
+ * hook opted into bus-optional execution.
48
+ */
49
+ readonly bus: TBus | null;
50
+ }
51
+ /**
52
+ * Type-erased CLI subcommand entry for collection storage.
53
+ *
54
+ * See `@makaio/kernel/cli` for the full typed API including
55
+ * `defineCliSubcommand`.
56
+ */
57
+ export interface ExtensionCliSubcommandEntry<TBus extends MakaioBusLike = MakaioBusLike> {
58
+ /** Subcommand name. */
59
+ readonly name: string;
60
+ /** One-line description shown in help text. */
61
+ readonly description: string;
62
+ /** Minimal parse-only schema contract kept free of runtime Zod APIs. */
63
+ readonly schema: {
64
+ parse(v: unknown): unknown;
65
+ };
66
+ /** Handler invoked with the type-erased CLI execution context. */
67
+ readonly handler: (ctx: ExtensionCliHandlerContext<TBus>) => Promise<void>;
68
+ }
69
+ /**
70
+ * Type-erased context for the {@link ExtensionCliContribution.beforeRun} gate.
71
+ */
72
+ export interface ExtensionCliBeforeRunContext<TBus extends MakaioBusLike = MakaioBusLike> {
73
+ /** Subcommand name, or `'__interactive__'` for bare interactive invocations. */
74
+ readonly subcommandName: string;
75
+ /** Parsed and validated arguments for the subcommand. */
76
+ readonly args: Record<string, unknown>;
77
+ /** Bus client, or `null` when the server is unreachable. */
78
+ readonly bus: TBus | null;
79
+ }
80
+ /**
81
+ * Type-erased result of an {@link ExtensionCliContribution.beforeRun} gate.
82
+ */
83
+ export type ExtensionCliBeforeRunResult = {
84
+ readonly proceed: true;
85
+ } | {
86
+ readonly proceed: false;
87
+ readonly message: string;
88
+ readonly exitCode?: number;
89
+ };
90
+ /**
91
+ * An extension's CLI contribution declared in its `MakaioExtension` manifest.
92
+ *
93
+ * Full implementation types live in `@makaio/kernel/cli`. This contract
94
+ * keeps the extension layer on the executable shape only.
95
+ */
96
+ export interface ExtensionCliContribution<TBus extends MakaioBusLike = MakaioBusLike> extends CliManifest {
97
+ /**
98
+ * Interactive TUI launched when the command is invoked without a subcommand.
99
+ */
100
+ readonly interactive?: (ctx: ExtensionCliInteractiveContext<TBus>) => Promise<void>;
101
+ /** Declared subcommands exposed by this contribution. */
102
+ readonly subcommands: ReadonlyArray<ExtensionCliSubcommandEntry<TBus>>;
103
+ /**
104
+ * Pre-execution gate that replaces the default bus-required check.
105
+ * @param context - Subcommand name, parsed args, and bus availability.
106
+ * @returns Whether to proceed or block with a message.
107
+ */
108
+ readonly beforeRun?: (context: ExtensionCliBeforeRunContext<TBus>) => ExtensionCliBeforeRunResult | Promise<ExtensionCliBeforeRunResult>;
109
+ }
110
+ //# sourceMappingURL=extension-cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extension-cli.d.ts","sourceRoot":"","sources":["../../src/extension/extension-cli.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD;;;;GAIG;AACH,MAAM,WAAW,wBAAwB;IACvC,qCAAqC;IACrC,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,oCAAoC;IACpC,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED;;;;GAIG;AACH,MAAM,WAAW,0BAA0B,CAAC,IAAI,SAAS,aAAa,GAAG,aAAa;IACpF,sDAAsD;IACtD,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB;;;;;OAKG;IACH,QAAQ,CAAC,GAAG,EAAE,IAAI,GAAG,IAAI,CAAC;IAC1B,uDAAuD;IACvD,QAAQ,CAAC,MAAM,EAAE,wBAAwB,CAAC;IAC1C,+DAA+D;IAC/D,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B;;;OAGG;IACH,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,8BAA8B,CAAC,IAAI,SAAS,aAAa,GAAG,aAAa;IACxF;;;;;OAKG;IACH,QAAQ,CAAC,GAAG,EAAE,IAAI,GAAG,IAAI,CAAC;CAC3B;AAED;;;;;GAKG;AACH,MAAM,WAAW,2BAA2B,CAAC,IAAI,SAAS,aAAa,GAAG,aAAa;IACrF,uBAAuB;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,+CAA+C;IAC/C,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,wEAAwE;IACxE,QAAQ,CAAC,MAAM,EAAE;QAAE,KAAK,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAAA;KAAE,CAAC;IAChD,kEAAkE;IAClE,QAAQ,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,0BAA0B,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5E;AAED;;GAEG;AACH,MAAM,WAAW,4BAA4B,CAAC,IAAI,SAAS,aAAa,GAAG,aAAa;IACtF,gFAAgF;IAChF,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,yDAAyD;IACzD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,4DAA4D;IAC5D,QAAQ,CAAC,GAAG,EAAE,IAAI,GAAG,IAAI,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,MAAM,2BAA2B,GACnC;IAAE,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAA;CAAE,GAC1B;IAAE,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtF;;;;;GAKG;AACH,MAAM,WAAW,wBAAwB,CAAC,IAAI,SAAS,aAAa,GAAG,aAAa,CAAE,SAAQ,WAAW;IACvG;;OAEG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,8BAA8B,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpF,yDAAyD;IACzD,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,2BAA2B,CAAC,IAAI,CAAC,CAAC,CAAC;IACvE;;;;OAIG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,CACnB,OAAO,EAAE,4BAA4B,CAAC,IAAI,CAAC,KACxC,2BAA2B,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC;CACzE"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Provider for persisted extension configuration and enablement state.
3
+ *
4
+ * Injected by the host composition root. When absent, all extensions start
5
+ * enabled with default (Zod-schema) configuration only.
6
+ */
7
+ export interface ExtensionConfigProvider {
8
+ /**
9
+ * Load persisted configuration for an extension by name.
10
+ *
11
+ * Returns `undefined` when no stored config exists for the extension.
12
+ * Invalid values are ignored by the coordinator during schema parse.
13
+ * @param name - Extension package name.
14
+ * @returns Stored configuration object, or `undefined` when absent.
15
+ */
16
+ loadConfig(name: string): Record<string, unknown> | undefined;
17
+ /**
18
+ * Check whether an extension is enabled in persistent storage.
19
+ *
20
+ * Returns `undefined` to indicate no persisted preference — the coordinator
21
+ * treats `undefined` the same as `true` (start normally).
22
+ * @param name - Extension package name.
23
+ * @returns `false` to skip the package at boot, `true` or `undefined` to start normally.
24
+ */
25
+ loadEnabled(name: string): boolean | undefined;
26
+ }
27
+ //# sourceMappingURL=extension-config-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extension-config-provider.d.ts","sourceRoot":"","sources":["../../src/extension/extension-config-provider.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,WAAW,uBAAuB;IACtC;;;;;;;OAOG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IAE9D;;;;;;;OAOG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;CAChD"}
@@ -0,0 +1,100 @@
1
+ import type { MakaioBusLike } from '@makaio/framework/core';
2
+ import type { ExtensionToken } from './extension-token.js';
3
+ import type { ExtensionIdentity } from './extension-lifecycle.js';
4
+ /**
5
+ * Generic context provided by a host runtime when creating an extension's service.
6
+ *
7
+ * Contains host-agnostic runtime seams: the bus instance, extension identity,
8
+ * extension-local data directory, machine identity, config, service lookup, and
9
+ * lifecycle controls. Host-specific environment details belong on explicit
10
+ * context extensions such as {@link NodeExtensionContext}.
11
+ */
12
+ export interface ExtensionContext<TBus extends MakaioBusLike = MakaioBusLike> {
13
+ /** Bus instance for registering handlers and emitting events. */
14
+ readonly bus: TBus;
15
+ /** Coordinator-minted identity for the extension being created. */
16
+ readonly identity: ExtensionIdentity;
17
+ /**
18
+ * Per-extension writable data directory resolved by the host runtime.
19
+ *
20
+ * Use this for extension-local persistence (caches, state files, etc.).
21
+ */
22
+ readonly dataDir: string;
23
+ /**
24
+ * Stable machine identifier used for machine-scoped persistence and
25
+ * encryption key derivation.
26
+ *
27
+ * Resolved by the composition root (e.g., `node-machine-id`) before
28
+ * extensions are started.
29
+ */
30
+ readonly machineId: string;
31
+ /**
32
+ * Resolved configuration for this extension, merged from stored values and
33
+ * descriptor defaults. Present only when the extension declared a
34
+ * `configSchema` on its {@link MakaioExtension}.
35
+ *
36
+ * Extensions should parse this with their Zod schema to get typed config:
37
+ * ```ts
38
+ * const config = parseExtensionConfig(MyConfigSchema, ctx.config);
39
+ * ```
40
+ */
41
+ readonly config?: unknown;
42
+ /**
43
+ * Retrieve a service exposed by another active extension.
44
+ * @param token - Extension-owned token identifying the desired service.
45
+ * @returns The active service instance, or `undefined` when unavailable.
46
+ */
47
+ getService<T>(token: ExtensionToken<T>): T | undefined;
48
+ /**
49
+ * Attempt a dynamic import, returning `null` when the package is not installed.
50
+ *
51
+ * Only swallows errors caused by the package itself being absent. Transitive
52
+ * dependency failures and module evaluation errors are re-thrown.
53
+ * @typeParam T - Expected module shape (caller-asserted, not runtime-verified).
54
+ * @param specifier - Package specifier to import.
55
+ * @returns The imported module cast to `T`, or `null` when the package is not installed.
56
+ */
57
+ readonly tryImport: <T>(specifier: string) => Promise<T | null>;
58
+ /**
59
+ * Abort signal triggered during graceful shutdown.
60
+ *
61
+ * Extensions can pass this to long-running operations (fetch, timers, streams)
62
+ * so they cancel promptly when the runtime is stopping.
63
+ */
64
+ readonly signal: AbortSignal;
65
+ /**
66
+ * Check whether an extension with the given name is active.
67
+ *
68
+ * Returns `true` when the named extension has been loaded and reached
69
+ * `active` state. Use this for optional integration checks without
70
+ * requiring an ExtensionToken.
71
+ * @param name - Extension name to check.
72
+ * @returns `true` when the extension is active.
73
+ */
74
+ readonly hasExtension: (name: string) => boolean;
75
+ }
76
+ /**
77
+ * Node.js host extension context.
78
+ *
79
+ * Adds the OS and filesystem fields supplied by Node-based composition roots.
80
+ * Extensions that need these fields should opt into this context explicitly;
81
+ * host-agnostic extensions can type themselves against {@link ExtensionContext}.
82
+ */
83
+ export interface NodeExtensionContext<TBus extends MakaioBusLike = MakaioBusLike> extends ExtensionContext<TBus> {
84
+ /** Current platform identifier (e.g., `'darwin'`, `'linux'`, `'win32'`). */
85
+ readonly platform: NodeJS.Platform;
86
+ /** User's home directory path. */
87
+ readonly homedir: string;
88
+ /** Resolved `.makaio` directory root (e.g., `~/.makaio`). */
89
+ readonly makaioHome: string;
90
+ /** Current OS username. */
91
+ readonly username: string;
92
+ /**
93
+ * WebSocket URL for the host bus, when the runtime exposes one.
94
+ *
95
+ * Detached `bus-websocket` extensions use this to connect back to the host.
96
+ * Hosts without a WebSocket bus omit it.
97
+ */
98
+ readonly busUrl?: string;
99
+ }
100
+ //# sourceMappingURL=extension-context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extension-context.d.ts","sourceRoot":"","sources":["../../src/extension/extension-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAElE;;;;;;;GAOG;AACH,MAAM,WAAW,gBAAgB,CAAC,IAAI,SAAS,aAAa,GAAG,aAAa;IAC1E,iEAAiE;IACjE,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC;IACnB,mEAAmE;IACnE,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IACrC;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB;;;;;;OAMG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B;;;;;;;;;OASG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;OAIG;IACH,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;IACvD;;;;;;;;OAQG;IACH,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IAChE;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B;;;;;;;;OAQG;IACH,QAAQ,CAAC,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;CAClD;AAED;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB,CAAC,IAAI,SAAS,aAAa,GAAG,aAAa,CAAE,SAAQ,gBAAgB,CAAC,IAAI,CAAC;IAC9G,4EAA4E;IAC5E,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;IACnC,kCAAkC;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,6DAA6D;IAC7D,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,2BAA2B;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B"}