@appport/sdk 1.1.19 → 1.1.20

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 (479) hide show
  1. package/LICENSE +126 -0
  2. package/README.md +86 -9
  3. package/dist/application-onboarding.d.ts +52 -0
  4. package/dist/application-onboarding.d.ts.map +1 -0
  5. package/dist/application-onboarding.js +50 -0
  6. package/dist/application-onboarding.js.map +1 -0
  7. package/dist/external-compatibility.d.ts +142 -0
  8. package/dist/external-compatibility.d.ts.map +1 -0
  9. package/dist/external-compatibility.js +132 -0
  10. package/dist/external-compatibility.js.map +1 -0
  11. package/dist/index.d.ts +18 -13
  12. package/dist/index.d.ts.map +1 -1
  13. package/dist/index.js +18 -13
  14. package/dist/index.js.map +1 -1
  15. package/dist/node.d.ts +1 -1
  16. package/dist/node.js +1 -1
  17. package/dist/provider-lifecycle.d.ts +247 -0
  18. package/dist/provider-lifecycle.d.ts.map +1 -0
  19. package/dist/provider-lifecycle.js +314 -0
  20. package/dist/provider-lifecycle.js.map +1 -0
  21. package/dist/resolution-policy.d.ts +81 -0
  22. package/dist/resolution-policy.d.ts.map +1 -0
  23. package/dist/resolution-policy.js +131 -0
  24. package/dist/resolution-policy.js.map +1 -0
  25. package/package.json +32 -22
  26. package/vendor/@appport/authorization/README.md +28 -0
  27. package/vendor/@appport/authorization/dist/index.d.ts +94 -0
  28. package/vendor/@appport/authorization/dist/index.d.ts.map +1 -0
  29. package/vendor/@appport/authorization/dist/index.js +131 -0
  30. package/vendor/@appport/authorization/dist/index.js.map +1 -0
  31. package/vendor/@appport/authorization/package.json +28 -0
  32. package/vendor/@appport/client/README.md +35 -0
  33. package/vendor/@appport/client/dist/channel.d.ts +14 -0
  34. package/vendor/@appport/client/dist/channel.d.ts.map +1 -0
  35. package/vendor/@appport/client/dist/channel.js +58 -0
  36. package/vendor/@appport/client/dist/channel.js.map +1 -0
  37. package/vendor/@appport/client/dist/client.d.ts +61 -0
  38. package/vendor/@appport/client/dist/client.d.ts.map +1 -0
  39. package/vendor/@appport/client/dist/client.js +214 -0
  40. package/vendor/@appport/client/dist/client.js.map +1 -0
  41. package/vendor/@appport/client/dist/contract.d.ts +55 -0
  42. package/vendor/@appport/client/dist/contract.d.ts.map +1 -0
  43. package/vendor/@appport/client/dist/contract.js +12 -0
  44. package/vendor/@appport/client/dist/contract.js.map +1 -0
  45. package/vendor/@appport/client/dist/discovery.d.ts +17 -0
  46. package/vendor/@appport/client/dist/discovery.d.ts.map +1 -0
  47. package/vendor/@appport/client/dist/discovery.js +56 -0
  48. package/vendor/@appport/client/dist/discovery.js.map +1 -0
  49. package/vendor/@appport/client/dist/duplex.d.ts +25 -0
  50. package/vendor/@appport/client/dist/duplex.d.ts.map +1 -0
  51. package/vendor/@appport/client/dist/duplex.js +194 -0
  52. package/vendor/@appport/client/dist/duplex.js.map +1 -0
  53. package/vendor/@appport/client/dist/host.d.ts +62 -0
  54. package/vendor/@appport/client/dist/host.d.ts.map +1 -0
  55. package/vendor/@appport/client/dist/host.js +139 -0
  56. package/vendor/@appport/client/dist/host.js.map +1 -0
  57. package/vendor/@appport/client/dist/index.d.ts +14 -0
  58. package/vendor/@appport/client/dist/index.d.ts.map +1 -0
  59. package/vendor/@appport/client/dist/index.js +14 -0
  60. package/vendor/@appport/client/dist/index.js.map +1 -0
  61. package/vendor/@appport/client/dist/transport.d.ts +42 -0
  62. package/vendor/@appport/client/dist/transport.d.ts.map +1 -0
  63. package/vendor/@appport/client/dist/transport.js +2 -0
  64. package/vendor/@appport/client/dist/transport.js.map +1 -0
  65. package/vendor/@appport/client/package.json +32 -0
  66. package/vendor/@appport/core/README.md +91 -0
  67. package/vendor/@appport/core/dist/appboundry-capability-catalog.d.ts +930 -0
  68. package/vendor/@appport/core/dist/appboundry-capability-catalog.d.ts.map +1 -0
  69. package/vendor/@appport/core/dist/appboundry-capability-catalog.js +352 -0
  70. package/vendor/@appport/core/dist/appboundry-capability-catalog.js.map +1 -0
  71. package/vendor/@appport/core/dist/appboundry-composition.d.ts +93 -0
  72. package/vendor/@appport/core/dist/appboundry-composition.d.ts.map +1 -0
  73. package/vendor/@appport/core/dist/appboundry-composition.js +184 -0
  74. package/vendor/@appport/core/dist/appboundry-composition.js.map +1 -0
  75. package/vendor/@appport/core/dist/appboundry-contract.d.ts +80 -0
  76. package/vendor/@appport/core/dist/appboundry-contract.d.ts.map +1 -0
  77. package/vendor/@appport/core/dist/appboundry-contract.js +160 -0
  78. package/vendor/@appport/core/dist/appboundry-contract.js.map +1 -0
  79. package/vendor/@appport/core/dist/appboundry-diagnostics.d.ts +107 -0
  80. package/vendor/@appport/core/dist/appboundry-diagnostics.d.ts.map +1 -0
  81. package/vendor/@appport/core/dist/appboundry-diagnostics.js +358 -0
  82. package/vendor/@appport/core/dist/appboundry-diagnostics.js.map +1 -0
  83. package/vendor/@appport/core/dist/appboundry-discovery.d.ts +110 -0
  84. package/vendor/@appport/core/dist/appboundry-discovery.d.ts.map +1 -0
  85. package/vendor/@appport/core/dist/appboundry-discovery.js +141 -0
  86. package/vendor/@appport/core/dist/appboundry-discovery.js.map +1 -0
  87. package/vendor/@appport/core/dist/appboundry-entitlements.d.ts +128 -0
  88. package/vendor/@appport/core/dist/appboundry-entitlements.d.ts.map +1 -0
  89. package/vendor/@appport/core/dist/appboundry-entitlements.js +312 -0
  90. package/vendor/@appport/core/dist/appboundry-entitlements.js.map +1 -0
  91. package/vendor/@appport/core/dist/appboundry-execution.d.ts +84 -0
  92. package/vendor/@appport/core/dist/appboundry-execution.d.ts.map +1 -0
  93. package/vendor/@appport/core/dist/appboundry-execution.js +150 -0
  94. package/vendor/@appport/core/dist/appboundry-execution.js.map +1 -0
  95. package/vendor/@appport/core/dist/appboundry-exercise.d.ts +152 -0
  96. package/vendor/@appport/core/dist/appboundry-exercise.d.ts.map +1 -0
  97. package/vendor/@appport/core/dist/appboundry-exercise.js +416 -0
  98. package/vendor/@appport/core/dist/appboundry-exercise.js.map +1 -0
  99. package/vendor/@appport/core/dist/appboundry-materialization.d.ts +222 -0
  100. package/vendor/@appport/core/dist/appboundry-materialization.d.ts.map +1 -0
  101. package/vendor/@appport/core/dist/appboundry-materialization.js +494 -0
  102. package/vendor/@appport/core/dist/appboundry-materialization.js.map +1 -0
  103. package/vendor/@appport/core/dist/appboundry-migration.d.ts +195 -0
  104. package/vendor/@appport/core/dist/appboundry-migration.d.ts.map +1 -0
  105. package/vendor/@appport/core/dist/appboundry-migration.js +227 -0
  106. package/vendor/@appport/core/dist/appboundry-migration.js.map +1 -0
  107. package/vendor/@appport/core/dist/appboundry-onboarding.d.ts +70 -0
  108. package/vendor/@appport/core/dist/appboundry-onboarding.d.ts.map +1 -0
  109. package/vendor/@appport/core/dist/appboundry-onboarding.js +232 -0
  110. package/vendor/@appport/core/dist/appboundry-onboarding.js.map +1 -0
  111. package/vendor/@appport/core/dist/appboundry-operation-discovery.d.ts +93 -0
  112. package/vendor/@appport/core/dist/appboundry-operation-discovery.d.ts.map +1 -0
  113. package/vendor/@appport/core/dist/appboundry-operation-discovery.js +89 -0
  114. package/vendor/@appport/core/dist/appboundry-operation-discovery.js.map +1 -0
  115. package/vendor/@appport/core/dist/appboundry-resolution.d.ts +160 -0
  116. package/vendor/@appport/core/dist/appboundry-resolution.d.ts.map +1 -0
  117. package/vendor/@appport/core/dist/appboundry-resolution.js +218 -0
  118. package/vendor/@appport/core/dist/appboundry-resolution.js.map +1 -0
  119. package/vendor/@appport/core/dist/appboundry-surface.d.ts +96 -0
  120. package/vendor/@appport/core/dist/appboundry-surface.d.ts.map +1 -0
  121. package/vendor/@appport/core/dist/appboundry-surface.js +223 -0
  122. package/vendor/@appport/core/dist/appboundry-surface.js.map +1 -0
  123. package/vendor/@appport/core/dist/appboundry-usage.d.ts +94 -0
  124. package/vendor/@appport/core/dist/appboundry-usage.d.ts.map +1 -0
  125. package/vendor/@appport/core/dist/appboundry-usage.js +80 -0
  126. package/vendor/@appport/core/dist/appboundry-usage.js.map +1 -0
  127. package/vendor/@appport/core/dist/application-conformance.d.ts +68 -0
  128. package/vendor/@appport/core/dist/application-conformance.d.ts.map +1 -0
  129. package/vendor/@appport/core/dist/application-conformance.js +108 -0
  130. package/vendor/@appport/core/dist/application-conformance.js.map +1 -0
  131. package/vendor/@appport/core/dist/application-implementation.d.ts +125 -0
  132. package/vendor/@appport/core/dist/application-implementation.d.ts.map +1 -0
  133. package/vendor/@appport/core/dist/application-implementation.js +220 -0
  134. package/vendor/@appport/core/dist/application-implementation.js.map +1 -0
  135. package/vendor/@appport/core/dist/application-lifecycle.d.ts +150 -0
  136. package/vendor/@appport/core/dist/application-lifecycle.d.ts.map +1 -0
  137. package/vendor/@appport/core/dist/application-lifecycle.js +70 -0
  138. package/vendor/@appport/core/dist/application-lifecycle.js.map +1 -0
  139. package/vendor/@appport/core/dist/application-package.d.ts +105 -0
  140. package/vendor/@appport/core/dist/application-package.d.ts.map +1 -0
  141. package/vendor/@appport/core/dist/application-package.js +349 -0
  142. package/vendor/@appport/core/dist/application-package.js.map +1 -0
  143. package/vendor/@appport/core/dist/application-source.d.ts +109 -0
  144. package/vendor/@appport/core/dist/application-source.d.ts.map +1 -0
  145. package/vendor/@appport/core/dist/application-source.js +186 -0
  146. package/vendor/@appport/core/dist/application-source.js.map +1 -0
  147. package/vendor/@appport/core/dist/application.d.ts +124 -0
  148. package/vendor/@appport/core/dist/application.d.ts.map +1 -0
  149. package/vendor/@appport/core/dist/application.js +518 -0
  150. package/vendor/@appport/core/dist/application.js.map +1 -0
  151. package/vendor/@appport/core/dist/artifact.d.ts +395 -0
  152. package/vendor/@appport/core/dist/artifact.d.ts.map +1 -0
  153. package/vendor/@appport/core/dist/artifact.js +392 -0
  154. package/vendor/@appport/core/dist/artifact.js.map +1 -0
  155. package/vendor/@appport/core/dist/assembly.d.ts +237 -0
  156. package/vendor/@appport/core/dist/assembly.d.ts.map +1 -0
  157. package/vendor/@appport/core/dist/assembly.js +458 -0
  158. package/vendor/@appport/core/dist/assembly.js.map +1 -0
  159. package/vendor/@appport/core/dist/authority-attestation.d.ts +34 -0
  160. package/vendor/@appport/core/dist/authority-attestation.d.ts.map +1 -0
  161. package/vendor/@appport/core/dist/authority-attestation.js +72 -0
  162. package/vendor/@appport/core/dist/authority-attestation.js.map +1 -0
  163. package/vendor/@appport/core/dist/authorization-grant.d.ts +107 -0
  164. package/vendor/@appport/core/dist/authorization-grant.d.ts.map +1 -0
  165. package/vendor/@appport/core/dist/authorization-grant.js +131 -0
  166. package/vendor/@appport/core/dist/authorization-grant.js.map +1 -0
  167. package/vendor/@appport/core/dist/binding.d.ts +294 -0
  168. package/vendor/@appport/core/dist/binding.d.ts.map +1 -0
  169. package/vendor/@appport/core/dist/binding.js +263 -0
  170. package/vendor/@appport/core/dist/binding.js.map +1 -0
  171. package/vendor/@appport/core/dist/builtins.d.ts +18 -0
  172. package/vendor/@appport/core/dist/builtins.d.ts.map +1 -0
  173. package/vendor/@appport/core/dist/builtins.js +38 -0
  174. package/vendor/@appport/core/dist/builtins.js.map +1 -0
  175. package/vendor/@appport/core/dist/capability.d.ts +94 -0
  176. package/vendor/@appport/core/dist/capability.d.ts.map +1 -0
  177. package/vendor/@appport/core/dist/capability.js +85 -0
  178. package/vendor/@appport/core/dist/capability.js.map +1 -0
  179. package/vendor/@appport/core/dist/concurrency.d.ts +16 -0
  180. package/vendor/@appport/core/dist/concurrency.d.ts.map +1 -0
  181. package/vendor/@appport/core/dist/concurrency.js +46 -0
  182. package/vendor/@appport/core/dist/concurrency.js.map +1 -0
  183. package/vendor/@appport/core/dist/context.d.ts +59 -0
  184. package/vendor/@appport/core/dist/context.d.ts.map +1 -0
  185. package/vendor/@appport/core/dist/context.js +14 -0
  186. package/vendor/@appport/core/dist/context.js.map +1 -0
  187. package/vendor/@appport/core/dist/contract-artifact.d.ts +15 -0
  188. package/vendor/@appport/core/dist/contract-artifact.d.ts.map +1 -0
  189. package/vendor/@appport/core/dist/contract-artifact.js +161 -0
  190. package/vendor/@appport/core/dist/contract-artifact.js.map +1 -0
  191. package/vendor/@appport/core/dist/contract-attestation.d.ts +68 -0
  192. package/vendor/@appport/core/dist/contract-attestation.d.ts.map +1 -0
  193. package/vendor/@appport/core/dist/contract-attestation.js +76 -0
  194. package/vendor/@appport/core/dist/contract-attestation.js.map +1 -0
  195. package/vendor/@appport/core/dist/crash-injection.d.ts +3 -0
  196. package/vendor/@appport/core/dist/crash-injection.d.ts.map +1 -0
  197. package/vendor/@appport/core/dist/crash-injection.js +8 -0
  198. package/vendor/@appport/core/dist/crash-injection.js.map +1 -0
  199. package/vendor/@appport/core/dist/events.d.ts +33 -0
  200. package/vendor/@appport/core/dist/events.d.ts.map +1 -0
  201. package/vendor/@appport/core/dist/events.js +79 -0
  202. package/vendor/@appport/core/dist/events.js.map +1 -0
  203. package/vendor/@appport/core/dist/execution-barrier.d.ts +13 -0
  204. package/vendor/@appport/core/dist/execution-barrier.d.ts.map +1 -0
  205. package/vendor/@appport/core/dist/execution-barrier.js +33 -0
  206. package/vendor/@appport/core/dist/execution-barrier.js.map +1 -0
  207. package/vendor/@appport/core/dist/execution-ledger.d.ts +81 -0
  208. package/vendor/@appport/core/dist/execution-ledger.d.ts.map +1 -0
  209. package/vendor/@appport/core/dist/execution-ledger.js +173 -0
  210. package/vendor/@appport/core/dist/execution-ledger.js.map +1 -0
  211. package/vendor/@appport/core/dist/execution.d.ts +387 -0
  212. package/vendor/@appport/core/dist/execution.d.ts.map +1 -0
  213. package/vendor/@appport/core/dist/execution.js +165 -0
  214. package/vendor/@appport/core/dist/execution.js.map +1 -0
  215. package/vendor/@appport/core/dist/idempotency.d.ts +36 -0
  216. package/vendor/@appport/core/dist/idempotency.d.ts.map +1 -0
  217. package/vendor/@appport/core/dist/idempotency.js +36 -0
  218. package/vendor/@appport/core/dist/idempotency.js.map +1 -0
  219. package/vendor/@appport/core/dist/implementation.d.ts +110 -0
  220. package/vendor/@appport/core/dist/implementation.d.ts.map +1 -0
  221. package/vendor/@appport/core/dist/implementation.js +65 -0
  222. package/vendor/@appport/core/dist/implementation.js.map +1 -0
  223. package/vendor/@appport/core/dist/index.d.ts +62 -0
  224. package/vendor/@appport/core/dist/index.d.ts.map +1 -0
  225. package/vendor/@appport/core/dist/index.js +61 -0
  226. package/vendor/@appport/core/dist/index.js.map +1 -0
  227. package/vendor/@appport/core/dist/invocation.d.ts +253 -0
  228. package/vendor/@appport/core/dist/invocation.d.ts.map +1 -0
  229. package/vendor/@appport/core/dist/invocation.js +258 -0
  230. package/vendor/@appport/core/dist/invocation.js.map +1 -0
  231. package/vendor/@appport/core/dist/manifest.d.ts +157 -0
  232. package/vendor/@appport/core/dist/manifest.d.ts.map +1 -0
  233. package/vendor/@appport/core/dist/manifest.js +255 -0
  234. package/vendor/@appport/core/dist/manifest.js.map +1 -0
  235. package/vendor/@appport/core/dist/memory-application-data-store.d.ts +19 -0
  236. package/vendor/@appport/core/dist/memory-application-data-store.d.ts.map +1 -0
  237. package/vendor/@appport/core/dist/memory-application-data-store.js +161 -0
  238. package/vendor/@appport/core/dist/memory-application-data-store.js.map +1 -0
  239. package/vendor/@appport/core/dist/operations.d.ts +61 -0
  240. package/vendor/@appport/core/dist/operations.d.ts.map +1 -0
  241. package/vendor/@appport/core/dist/operations.js +210 -0
  242. package/vendor/@appport/core/dist/operations.js.map +1 -0
  243. package/vendor/@appport/core/dist/provider-contract.d.ts +89 -0
  244. package/vendor/@appport/core/dist/provider-contract.d.ts.map +1 -0
  245. package/vendor/@appport/core/dist/provider-contract.js +40 -0
  246. package/vendor/@appport/core/dist/provider-contract.js.map +1 -0
  247. package/vendor/@appport/core/dist/public.d.ts +23 -0
  248. package/vendor/@appport/core/dist/public.d.ts.map +1 -0
  249. package/vendor/@appport/core/dist/public.js +22 -0
  250. package/vendor/@appport/core/dist/public.js.map +1 -0
  251. package/vendor/@appport/core/dist/registration.d.ts +165 -0
  252. package/vendor/@appport/core/dist/registration.d.ts.map +1 -0
  253. package/vendor/@appport/core/dist/registration.js +253 -0
  254. package/vendor/@appport/core/dist/registration.js.map +1 -0
  255. package/vendor/@appport/core/dist/registry.d.ts +30 -0
  256. package/vendor/@appport/core/dist/registry.d.ts.map +1 -0
  257. package/vendor/@appport/core/dist/registry.js +149 -0
  258. package/vendor/@appport/core/dist/registry.js.map +1 -0
  259. package/vendor/@appport/core/dist/resolver.d.ts +130 -0
  260. package/vendor/@appport/core/dist/resolver.d.ts.map +1 -0
  261. package/vendor/@appport/core/dist/resolver.js +252 -0
  262. package/vendor/@appport/core/dist/resolver.js.map +1 -0
  263. package/vendor/@appport/core/dist/runtime-manifest.d.ts +68 -0
  264. package/vendor/@appport/core/dist/runtime-manifest.d.ts.map +1 -0
  265. package/vendor/@appport/core/dist/runtime-manifest.js +84 -0
  266. package/vendor/@appport/core/dist/runtime-manifest.js.map +1 -0
  267. package/vendor/@appport/core/dist/sanitize.d.ts +14 -0
  268. package/vendor/@appport/core/dist/sanitize.d.ts.map +1 -0
  269. package/vendor/@appport/core/dist/sanitize.js +49 -0
  270. package/vendor/@appport/core/dist/sanitize.js.map +1 -0
  271. package/vendor/@appport/core/dist/server-internal.d.ts +5 -0
  272. package/vendor/@appport/core/dist/server-internal.d.ts.map +1 -0
  273. package/vendor/@appport/core/dist/server-internal.js +4 -0
  274. package/vendor/@appport/core/dist/server-internal.js.map +1 -0
  275. package/vendor/@appport/core/dist/sessions.d.ts +29 -0
  276. package/vendor/@appport/core/dist/sessions.d.ts.map +1 -0
  277. package/vendor/@appport/core/dist/sessions.js +39 -0
  278. package/vendor/@appport/core/dist/sessions.js.map +1 -0
  279. package/vendor/@appport/core/dist/sha256.d.ts +3 -0
  280. package/vendor/@appport/core/dist/sha256.d.ts.map +1 -0
  281. package/vendor/@appport/core/dist/sha256.js +46 -0
  282. package/vendor/@appport/core/dist/sha256.js.map +1 -0
  283. package/vendor/@appport/core/dist/source-verification.d.ts +53 -0
  284. package/vendor/@appport/core/dist/source-verification.d.ts.map +1 -0
  285. package/vendor/@appport/core/dist/source-verification.js +92 -0
  286. package/vendor/@appport/core/dist/source-verification.js.map +1 -0
  287. package/vendor/@appport/core/dist/state-context.d.ts +312 -0
  288. package/vendor/@appport/core/dist/state-context.d.ts.map +1 -0
  289. package/vendor/@appport/core/dist/state-context.js +100 -0
  290. package/vendor/@appport/core/dist/state-context.js.map +1 -0
  291. package/vendor/@appport/core/dist/state.d.ts +96 -0
  292. package/vendor/@appport/core/dist/state.d.ts.map +1 -0
  293. package/vendor/@appport/core/dist/state.js +89 -0
  294. package/vendor/@appport/core/dist/state.js.map +1 -0
  295. package/vendor/@appport/core/dist/streams.d.ts +38 -0
  296. package/vendor/@appport/core/dist/streams.d.ts.map +1 -0
  297. package/vendor/@appport/core/dist/streams.js +123 -0
  298. package/vendor/@appport/core/dist/streams.js.map +1 -0
  299. package/vendor/@appport/core/dist/telemetry.d.ts +42 -0
  300. package/vendor/@appport/core/dist/telemetry.d.ts.map +1 -0
  301. package/vendor/@appport/core/dist/telemetry.js +32 -0
  302. package/vendor/@appport/core/dist/telemetry.js.map +1 -0
  303. package/vendor/@appport/core/dist/wasm-engine.d.ts +24 -0
  304. package/vendor/@appport/core/dist/wasm-engine.d.ts.map +1 -0
  305. package/vendor/@appport/core/dist/wasm-engine.js +376 -0
  306. package/vendor/@appport/core/dist/wasm-engine.js.map +1 -0
  307. package/vendor/@appport/core/package.json +58 -0
  308. package/vendor/@appport/mcp/README.md +29 -0
  309. package/vendor/@appport/mcp/dist/index.d.ts +59 -0
  310. package/vendor/@appport/mcp/dist/index.d.ts.map +1 -0
  311. package/vendor/@appport/mcp/dist/index.js +70 -0
  312. package/vendor/@appport/mcp/dist/index.js.map +1 -0
  313. package/vendor/@appport/mcp/package.json +29 -0
  314. package/vendor/@appport/mobile/README.md +10 -0
  315. package/vendor/@appport/mobile/dist/index.d.ts +66 -0
  316. package/vendor/@appport/mobile/dist/index.d.ts.map +1 -0
  317. package/vendor/@appport/mobile/dist/index.js +182 -0
  318. package/vendor/@appport/mobile/dist/index.js.map +1 -0
  319. package/vendor/@appport/mobile/package.json +33 -0
  320. package/vendor/@appport/protocol/README.md +41 -0
  321. package/vendor/@appport/protocol/dist/blob.d.ts +46 -0
  322. package/vendor/@appport/protocol/dist/blob.d.ts.map +1 -0
  323. package/vendor/@appport/protocol/dist/blob.js +23 -0
  324. package/vendor/@appport/protocol/dist/blob.js.map +1 -0
  325. package/vendor/@appport/protocol/dist/compatibility.d.ts +25 -0
  326. package/vendor/@appport/protocol/dist/compatibility.d.ts.map +1 -0
  327. package/vendor/@appport/protocol/dist/compatibility.js +189 -0
  328. package/vendor/@appport/protocol/dist/compatibility.js.map +1 -0
  329. package/vendor/@appport/protocol/dist/envelopes.d.ts +175 -0
  330. package/vendor/@appport/protocol/dist/envelopes.d.ts.map +1 -0
  331. package/vendor/@appport/protocol/dist/envelopes.js +97 -0
  332. package/vendor/@appport/protocol/dist/envelopes.js.map +1 -0
  333. package/vendor/@appport/protocol/dist/errors.d.ts +74 -0
  334. package/vendor/@appport/protocol/dist/errors.d.ts.map +1 -0
  335. package/vendor/@appport/protocol/dist/errors.js +92 -0
  336. package/vendor/@appport/protocol/dist/errors.js.map +1 -0
  337. package/vendor/@appport/protocol/dist/ids.d.ts +12 -0
  338. package/vendor/@appport/protocol/dist/ids.d.ts.map +1 -0
  339. package/vendor/@appport/protocol/dist/ids.js +50 -0
  340. package/vendor/@appport/protocol/dist/ids.js.map +1 -0
  341. package/vendor/@appport/protocol/dist/index.d.ts +21 -0
  342. package/vendor/@appport/protocol/dist/index.d.ts.map +1 -0
  343. package/vendor/@appport/protocol/dist/index.js +21 -0
  344. package/vendor/@appport/protocol/dist/index.js.map +1 -0
  345. package/vendor/@appport/protocol/dist/jsonschema.d.ts +50 -0
  346. package/vendor/@appport/protocol/dist/jsonschema.d.ts.map +1 -0
  347. package/vendor/@appport/protocol/dist/jsonschema.js +6 -0
  348. package/vendor/@appport/protocol/dist/jsonschema.js.map +1 -0
  349. package/vendor/@appport/protocol/dist/manifest.d.ts +134 -0
  350. package/vendor/@appport/protocol/dist/manifest.d.ts.map +1 -0
  351. package/vendor/@appport/protocol/dist/manifest.js +20 -0
  352. package/vendor/@appport/protocol/dist/manifest.js.map +1 -0
  353. package/vendor/@appport/protocol/dist/materialization.d.ts +59 -0
  354. package/vendor/@appport/protocol/dist/materialization.d.ts.map +1 -0
  355. package/vendor/@appport/protocol/dist/materialization.js +2 -0
  356. package/vendor/@appport/protocol/dist/materialization.js.map +1 -0
  357. package/vendor/@appport/protocol/dist/names.d.ts +26 -0
  358. package/vendor/@appport/protocol/dist/names.d.ts.map +1 -0
  359. package/vendor/@appport/protocol/dist/names.js +85 -0
  360. package/vendor/@appport/protocol/dist/names.js.map +1 -0
  361. package/vendor/@appport/protocol/dist/operations.d.ts +34 -0
  362. package/vendor/@appport/protocol/dist/operations.d.ts.map +1 -0
  363. package/vendor/@appport/protocol/dist/operations.js +9 -0
  364. package/vendor/@appport/protocol/dist/operations.js.map +1 -0
  365. package/vendor/@appport/protocol/dist/session.d.ts +27 -0
  366. package/vendor/@appport/protocol/dist/session.d.ts.map +1 -0
  367. package/vendor/@appport/protocol/dist/session.js +7 -0
  368. package/vendor/@appport/protocol/dist/session.js.map +1 -0
  369. package/vendor/@appport/protocol/dist/validate.d.ts +37 -0
  370. package/vendor/@appport/protocol/dist/validate.d.ts.map +1 -0
  371. package/vendor/@appport/protocol/dist/validate.js +321 -0
  372. package/vendor/@appport/protocol/dist/validate.js.map +1 -0
  373. package/vendor/@appport/protocol/dist/version.d.ts +27 -0
  374. package/vendor/@appport/protocol/dist/version.d.ts.map +1 -0
  375. package/vendor/@appport/protocol/dist/version.js +26 -0
  376. package/vendor/@appport/protocol/dist/version.js.map +1 -0
  377. package/vendor/@appport/protocol/package.json +25 -0
  378. package/vendor/@appport/schema/README.md +32 -0
  379. package/vendor/@appport/schema/dist/builder.d.ts +85 -0
  380. package/vendor/@appport/schema/dist/builder.d.ts.map +1 -0
  381. package/vendor/@appport/schema/dist/builder.js +278 -0
  382. package/vendor/@appport/schema/dist/builder.js.map +1 -0
  383. package/vendor/@appport/schema/dist/from-json-schema.d.ts +12 -0
  384. package/vendor/@appport/schema/dist/from-json-schema.d.ts.map +1 -0
  385. package/vendor/@appport/schema/dist/from-json-schema.js +186 -0
  386. package/vendor/@appport/schema/dist/from-json-schema.js.map +1 -0
  387. package/vendor/@appport/schema/dist/index.d.ts +23 -0
  388. package/vendor/@appport/schema/dist/index.d.ts.map +1 -0
  389. package/vendor/@appport/schema/dist/index.js +22 -0
  390. package/vendor/@appport/schema/dist/index.js.map +1 -0
  391. package/vendor/@appport/schema/dist/standard.d.ts +46 -0
  392. package/vendor/@appport/schema/dist/standard.d.ts.map +1 -0
  393. package/vendor/@appport/schema/dist/standard.js +42 -0
  394. package/vendor/@appport/schema/dist/standard.js.map +1 -0
  395. package/vendor/@appport/schema/dist/types.d.ts +40 -0
  396. package/vendor/@appport/schema/dist/types.d.ts.map +1 -0
  397. package/vendor/@appport/schema/dist/types.js +19 -0
  398. package/vendor/@appport/schema/dist/types.js.map +1 -0
  399. package/vendor/@appport/schema/package.json +28 -0
  400. package/vendor/@appport/server/README.md +39 -0
  401. package/vendor/@appport/server/dist/connection.d.ts +45 -0
  402. package/vendor/@appport/server/dist/connection.d.ts.map +1 -0
  403. package/vendor/@appport/server/dist/connection.js +217 -0
  404. package/vendor/@appport/server/dist/connection.js.map +1 -0
  405. package/vendor/@appport/server/dist/fetch.d.ts +10 -0
  406. package/vendor/@appport/server/dist/fetch.d.ts.map +1 -0
  407. package/vendor/@appport/server/dist/fetch.js +50 -0
  408. package/vendor/@appport/server/dist/fetch.js.map +1 -0
  409. package/vendor/@appport/server/dist/http.d.ts +80 -0
  410. package/vendor/@appport/server/dist/http.d.ts.map +1 -0
  411. package/vendor/@appport/server/dist/http.js +307 -0
  412. package/vendor/@appport/server/dist/http.js.map +1 -0
  413. package/vendor/@appport/server/dist/index.d.ts +11 -0
  414. package/vendor/@appport/server/dist/index.d.ts.map +1 -0
  415. package/vendor/@appport/server/dist/index.js +11 -0
  416. package/vendor/@appport/server/dist/index.js.map +1 -0
  417. package/vendor/@appport/server/dist/node-entry.d.ts +4 -0
  418. package/vendor/@appport/server/dist/node-entry.d.ts.map +1 -0
  419. package/vendor/@appport/server/dist/node-entry.js +4 -0
  420. package/vendor/@appport/server/dist/node-entry.js.map +1 -0
  421. package/vendor/@appport/server/dist/node.d.ts +45 -0
  422. package/vendor/@appport/server/dist/node.d.ts.map +1 -0
  423. package/vendor/@appport/server/dist/node.js +190 -0
  424. package/vendor/@appport/server/dist/node.js.map +1 -0
  425. package/vendor/@appport/server/dist/server.d.ts +83 -0
  426. package/vendor/@appport/server/dist/server.d.ts.map +1 -0
  427. package/vendor/@appport/server/dist/server.js +114 -0
  428. package/vendor/@appport/server/dist/server.js.map +1 -0
  429. package/vendor/@appport/server/dist/websocket.d.ts +25 -0
  430. package/vendor/@appport/server/dist/websocket.d.ts.map +1 -0
  431. package/vendor/@appport/server/dist/websocket.js +221 -0
  432. package/vendor/@appport/server/dist/websocket.js.map +1 -0
  433. package/vendor/@appport/server/package.json +34 -0
  434. package/vendor/@appport/transport-electron/README.md +56 -0
  435. package/vendor/@appport/transport-electron/dist/index.d.ts +11 -0
  436. package/vendor/@appport/transport-electron/dist/index.d.ts.map +1 -0
  437. package/vendor/@appport/transport-electron/dist/index.js +11 -0
  438. package/vendor/@appport/transport-electron/dist/index.js.map +1 -0
  439. package/vendor/@appport/transport-electron/dist/main.d.ts +31 -0
  440. package/vendor/@appport/transport-electron/dist/main.d.ts.map +1 -0
  441. package/vendor/@appport/transport-electron/dist/main.js +61 -0
  442. package/vendor/@appport/transport-electron/dist/main.js.map +1 -0
  443. package/vendor/@appport/transport-electron/dist/preload.d.ts +22 -0
  444. package/vendor/@appport/transport-electron/dist/preload.d.ts.map +1 -0
  445. package/vendor/@appport/transport-electron/dist/preload.js +29 -0
  446. package/vendor/@appport/transport-electron/dist/preload.js.map +1 -0
  447. package/vendor/@appport/transport-electron/dist/renderer.d.ts +16 -0
  448. package/vendor/@appport/transport-electron/dist/renderer.d.ts.map +1 -0
  449. package/vendor/@appport/transport-electron/dist/renderer.js +36 -0
  450. package/vendor/@appport/transport-electron/dist/renderer.js.map +1 -0
  451. package/vendor/@appport/transport-electron/dist/types.d.ts +49 -0
  452. package/vendor/@appport/transport-electron/dist/types.d.ts.map +1 -0
  453. package/vendor/@appport/transport-electron/dist/types.js +5 -0
  454. package/vendor/@appport/transport-electron/dist/types.js.map +1 -0
  455. package/vendor/@appport/transport-electron/package.json +46 -0
  456. package/vendor/@appport/transport-http/README.md +24 -0
  457. package/vendor/@appport/transport-http/dist/index.d.ts +18 -0
  458. package/vendor/@appport/transport-http/dist/index.d.ts.map +1 -0
  459. package/vendor/@appport/transport-http/dist/index.js +223 -0
  460. package/vendor/@appport/transport-http/dist/index.js.map +1 -0
  461. package/vendor/@appport/transport-http/package.json +29 -0
  462. package/vendor/@appport/transport-inprocess/README.md +24 -0
  463. package/vendor/@appport/transport-inprocess/dist/index.d.ts +16 -0
  464. package/vendor/@appport/transport-inprocess/dist/index.d.ts.map +1 -0
  465. package/vendor/@appport/transport-inprocess/dist/index.js +30 -0
  466. package/vendor/@appport/transport-inprocess/dist/index.js.map +1 -0
  467. package/vendor/@appport/transport-inprocess/package.json +30 -0
  468. package/vendor/@appport/transport-tauri/README.md +45 -0
  469. package/vendor/@appport/transport-tauri/dist/index.d.ts +23 -0
  470. package/vendor/@appport/transport-tauri/dist/index.d.ts.map +1 -0
  471. package/vendor/@appport/transport-tauri/dist/index.js +44 -0
  472. package/vendor/@appport/transport-tauri/dist/index.js.map +1 -0
  473. package/vendor/@appport/transport-tauri/package.json +29 -0
  474. package/vendor/@appport/transport-websocket/README.md +22 -0
  475. package/vendor/@appport/transport-websocket/dist/index.d.ts +26 -0
  476. package/vendor/@appport/transport-websocket/dist/index.d.ts.map +1 -0
  477. package/vendor/@appport/transport-websocket/dist/index.js +72 -0
  478. package/vendor/@appport/transport-websocket/dist/index.js.map +1 -0
  479. package/vendor/@appport/transport-websocket/package.json +29 -0
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Application-developer API consumed by `@appport/sdk`.
3
+ *
4
+ * This is deliberately narrower than core's internal index. Durable authority,
5
+ * persistence, lifecycle, binding, ledger, artifact storage, and execution
6
+ * engine modules are not part of the npm API contract.
7
+ */
8
+ export * from "./application.js";
9
+ export * from "./assembly.js";
10
+ export * from "./capability.js";
11
+ export * from "./context.js";
12
+ export * from "./implementation.js";
13
+ export * from "./manifest.js";
14
+ export * from "./contract-artifact.js";
15
+ export * from "./application-package.js";
16
+ export * from "./appboundry-contract.js";
17
+ export * from "./runtime-manifest.js";
18
+ export * from "./streams.js";
19
+ export type { CapabilityInvocationContext, CapabilityInvocationRequest, CapabilityInvocationResult, CancelledInvocationResult, FailedInvocationResult, SuccessfulInvocationResult, TimedOutInvocationResult } from "./invocation.js";
20
+ export * from "./appboundry-capability-catalog.js";
21
+ export * from "./appboundry-operation-discovery.js";
22
+ export * from "./appboundry-migration.js";
23
+ //# sourceMappingURL=public.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../src/public.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC;AAC9B,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,cAAc,CAAC;AAC7B,YAAY,EACV,2BAA2B,EAC3B,2BAA2B,EAC3B,0BAA0B,EAC1B,yBAAyB,EACzB,sBAAsB,EACtB,0BAA0B,EAC1B,wBAAwB,EACzB,MAAM,iBAAiB,CAAC;AAEzB,cAAc,oCAAoC,CAAC;AACnD,cAAc,qCAAqC,CAAC;AACpD,cAAc,2BAA2B,CAAC"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Application-developer API consumed by `@appport/sdk`.
3
+ *
4
+ * This is deliberately narrower than core's internal index. Durable authority,
5
+ * persistence, lifecycle, binding, ledger, artifact storage, and execution
6
+ * engine modules are not part of the npm API contract.
7
+ */
8
+ export * from "./application.js";
9
+ export * from "./assembly.js";
10
+ export * from "./capability.js";
11
+ export * from "./context.js";
12
+ export * from "./implementation.js";
13
+ export * from "./manifest.js";
14
+ export * from "./contract-artifact.js";
15
+ export * from "./application-package.js";
16
+ export * from "./appboundry-contract.js";
17
+ export * from "./runtime-manifest.js";
18
+ export * from "./streams.js";
19
+ export * from "./appboundry-capability-catalog.js";
20
+ export * from "./appboundry-operation-discovery.js";
21
+ export * from "./appboundry-migration.js";
22
+ //# sourceMappingURL=public.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"public.js","sourceRoot":"","sources":["../src/public.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC;AAC9B,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,cAAc,CAAC;AAW7B,cAAc,oCAAoC,CAAC;AACnD,cAAc,qCAAqC,CAAC;AACpD,cAAc,2BAA2B,CAAC"}
@@ -0,0 +1,165 @@
1
+ /**
2
+ * Application Registry: FeltDB-backed application state management
3
+ *
4
+ * Handles registration, lookup, listing, and state persistence of
5
+ * tracked applications. Integrates with FeltDB via the adapter pattern.
6
+ *
7
+ * The registry is the authoritative source for:
8
+ * - Application identity and manifests
9
+ * - Fingerprints and verification state
10
+ * - Application lifecycle and revisions
11
+ * - Application discovery
12
+ */
13
+ import type { ApplicationState, RegisterApplicationOptions } from "./state.js";
14
+ /**
15
+ * Storage interface for application state.
16
+ *
17
+ * This is similar to {@link FeltDbLike} but purpose-specific for applications.
18
+ * Implementations can use FeltDB, memory storage, or any persistent backend.
19
+ */
20
+ export interface ApplicationStateStore {
21
+ /**
22
+ * Retrieve an application state by ID.
23
+ *
24
+ * Returns undefined if the application is not found.
25
+ */
26
+ get(id: string): Promise<ApplicationState | undefined>;
27
+ /**
28
+ * Store an application state.
29
+ *
30
+ * If an application with this ID already exists, its state is updated.
31
+ */
32
+ put(state: ApplicationState): Promise<void>;
33
+ /**
34
+ * Remove an application from storage.
35
+ */
36
+ delete(id: string): Promise<void>;
37
+ /**
38
+ * List all registered applications.
39
+ *
40
+ * Options:
41
+ * - prefix: Filter applications by ID prefix
42
+ * - limit: Maximum number of results
43
+ */
44
+ list(options?: {
45
+ prefix?: string;
46
+ limit?: number;
47
+ }): Promise<ApplicationState[]>;
48
+ }
49
+ /**
50
+ * In-memory application state store.
51
+ *
52
+ * Useful for testing and development without a persistent backend.
53
+ */
54
+ export declare class MemoryApplicationStateStore implements ApplicationStateStore {
55
+ #private;
56
+ get(id: string): Promise<ApplicationState | undefined>;
57
+ put(state: ApplicationState): Promise<void>;
58
+ delete(id: string): Promise<void>;
59
+ list(options?: {
60
+ prefix?: string;
61
+ limit?: number;
62
+ }): Promise<ApplicationState[]>;
63
+ }
64
+ /**
65
+ * Application registry: manages registration, lookup, and tracking of
66
+ * applications via a persistent store.
67
+ *
68
+ * The registry enforces:
69
+ * - Only verified applications can be registered
70
+ * - Fingerprint verification for idempotency
71
+ * - No implementation persistence
72
+ * - Manifest as canonical contract
73
+ */
74
+ export declare class ApplicationRegistry {
75
+ #private;
76
+ constructor(store: ApplicationStateStore);
77
+ /**
78
+ * Register a verified application.
79
+ *
80
+ * @param options - Identity, manifest, fingerprint, and verification state
81
+ * @returns The registered application state
82
+ *
83
+ * Throws if application is not verified or if registration is invalid.
84
+ */
85
+ register(options: RegisterApplicationOptions): Promise<ApplicationState>;
86
+ /**
87
+ * Register an application, validating manifest and fingerprint match.
88
+ *
89
+ * This is the same as {@link register} but additionally validates that
90
+ * the provided fingerprint matches the manifest hash.
91
+ *
92
+ * @throws If fingerprint does not match manifest
93
+ */
94
+ registerWithValidation(options: RegisterApplicationOptions): Promise<ApplicationState>;
95
+ /**
96
+ * Retrieve a registered application by ID.
97
+ *
98
+ * @returns The application state, or undefined if not registered
99
+ */
100
+ get(id: string): Promise<ApplicationState | undefined>;
101
+ /**
102
+ * Check if an application is registered.
103
+ */
104
+ has(id: string): Promise<boolean>;
105
+ /**
106
+ * List all registered applications.
107
+ *
108
+ * @param options - Query options (prefix, limit)
109
+ * @returns Array of registered application states
110
+ */
111
+ list(options?: {
112
+ prefix?: string;
113
+ limit?: number;
114
+ }): Promise<ApplicationState[]>;
115
+ /**
116
+ * Find applications by name.
117
+ *
118
+ * Returns all versions of an application with the given name (deterministically sorted by ID).
119
+ */
120
+ findByName(name: string): Promise<ApplicationState[]>;
121
+ /**
122
+ * Find the latest version of an application by name.
123
+ *
124
+ * Returns undefined if no application with this name is registered.
125
+ */
126
+ getLatestByName(name: string): Promise<ApplicationState | undefined>;
127
+ /**
128
+ * Delete a registered application.
129
+ *
130
+ * This marks an application as no longer tracked. The state is
131
+ * permanently removed from storage.
132
+ */
133
+ delete(id: string): Promise<void>;
134
+ /** Persist an authoritative activation transition. */
135
+ activate(id: string): Promise<ApplicationState>;
136
+ /** Retire without deleting identity, contract, state, or history. */
137
+ retire(id: string): Promise<ApplicationState>;
138
+ /**
139
+ * Find an application by its manifest fingerprint.
140
+ *
141
+ * @param fingerprint - SHA256 fingerprint of the manifest
142
+ * @returns Array of applications with matching fingerprint (deterministically sorted by ID)
143
+ *
144
+ * Note: Applications should have unique fingerprints in practice, but this method
145
+ * returns an array for consistency with other discovery methods.
146
+ */
147
+ findByFingerprint(fingerprint: string): Promise<ApplicationState[]>;
148
+ /**
149
+ * Find applications that provide a given capability.
150
+ *
151
+ * @param name - Capability name (e.g., "invoices.read")
152
+ * @param version - Optional specific capability version. If omitted, matches any version of the capability.
153
+ * @returns Array of applications providing this capability (deterministically sorted by ID)
154
+ */
155
+ findByCapability(name: string, version?: number): Promise<ApplicationState[]>;
156
+ /**
157
+ * Find applications that require a given capability.
158
+ *
159
+ * @param name - Capability name (e.g., "invoices.read")
160
+ * @param version - Optional specific capability version. If omitted, matches any version of the requirement.
161
+ * @returns Array of applications requiring this capability (deterministically sorted by ID)
162
+ */
163
+ findByRequirement(name: string, version?: number): Promise<ApplicationState[]>;
164
+ }
165
+ //# sourceMappingURL=registration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registration.d.ts","sourceRoot":"","sources":["../src/registration.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,253 @@
1
+ /**
2
+ * Application Registry: FeltDB-backed application state management
3
+ *
4
+ * Handles registration, lookup, listing, and state persistence of
5
+ * tracked applications. Integrates with FeltDB via the adapter pattern.
6
+ *
7
+ * The registry is the authoritative source for:
8
+ * - Application identity and manifests
9
+ * - Fingerprints and verification state
10
+ * - Application lifecycle and revisions
11
+ * - Application discovery
12
+ */
13
+ import { createApplicationState, markApplicationActive, retireApplication, updateApplicationState } from "./state.js";
14
+ import { fingerprintManifest } from "./manifest.js";
15
+ /**
16
+ * In-memory application state store.
17
+ *
18
+ * Useful for testing and development without a persistent backend.
19
+ */
20
+ export class MemoryApplicationStateStore {
21
+ #states = new Map();
22
+ async get(id) {
23
+ return this.#states.get(id);
24
+ }
25
+ async put(state) {
26
+ this.#states.set(state.id, state);
27
+ }
28
+ async delete(id) {
29
+ this.#states.delete(id);
30
+ }
31
+ async list(options) {
32
+ let results = [...this.#states.values()];
33
+ if (options?.prefix) {
34
+ results = results.filter((s) => s.id.startsWith(options.prefix));
35
+ }
36
+ // Deterministic ordering by application ID
37
+ results.sort((a, b) => a.id.localeCompare(b.id));
38
+ if (options?.limit) {
39
+ results = results.slice(0, options.limit);
40
+ }
41
+ return results;
42
+ }
43
+ }
44
+ /**
45
+ * Application registry: manages registration, lookup, and tracking of
46
+ * applications via a persistent store.
47
+ *
48
+ * The registry enforces:
49
+ * - Only verified applications can be registered
50
+ * - Fingerprint verification for idempotency
51
+ * - No implementation persistence
52
+ * - Manifest as canonical contract
53
+ */
54
+ export class ApplicationRegistry {
55
+ #store;
56
+ constructor(store) {
57
+ this.#store = store;
58
+ }
59
+ /**
60
+ * Register a verified application.
61
+ *
62
+ * @param options - Identity, manifest, fingerprint, and verification state
63
+ * @returns The registered application state
64
+ *
65
+ * Throws if application is not verified or if registration is invalid.
66
+ */
67
+ async register(options) {
68
+ // Only verified applications can be registered
69
+ if (!options.verification.ready) {
70
+ throw new Error(`Cannot register application "${options.identity.id}": application is not verified. ` +
71
+ `Fix verification errors and try again.`);
72
+ }
73
+ const id = options.identity.id;
74
+ const existing = await this.#store.get(id);
75
+ // Idempotency: if application already registered with same fingerprint, return existing
76
+ if (existing) {
77
+ if (existing.fingerprint === options.fingerprint) {
78
+ // Idempotent: same contract, return existing state
79
+ return existing;
80
+ }
81
+ // Different contract: update to new revision
82
+ const updated = updateApplicationState(existing, {
83
+ manifest: options.manifest,
84
+ fingerprint: options.fingerprint,
85
+ verification: options.verification,
86
+ status: options.status
87
+ });
88
+ await this.#store.put(updated);
89
+ return updated;
90
+ }
91
+ // New registration: create initial state
92
+ const state = createApplicationState(options, 1);
93
+ await this.#store.put(state);
94
+ return state;
95
+ }
96
+ /**
97
+ * Register an application, validating manifest and fingerprint match.
98
+ *
99
+ * This is the same as {@link register} but additionally validates that
100
+ * the provided fingerprint matches the manifest hash.
101
+ *
102
+ * @throws If fingerprint does not match manifest
103
+ */
104
+ async registerWithValidation(options) {
105
+ const expectedFingerprint = fingerprintManifest(options.manifest);
106
+ if (options.fingerprint !== expectedFingerprint) {
107
+ throw new Error(`Registration validation failed: fingerprint mismatch for "${options.identity.id}". ` +
108
+ `Expected: ${expectedFingerprint}, got: ${options.fingerprint}`);
109
+ }
110
+ return this.register(options);
111
+ }
112
+ /**
113
+ * Retrieve a registered application by ID.
114
+ *
115
+ * @returns The application state, or undefined if not registered
116
+ */
117
+ async get(id) {
118
+ return this.#store.get(id);
119
+ }
120
+ /**
121
+ * Check if an application is registered.
122
+ */
123
+ async has(id) {
124
+ const state = await this.#store.get(id);
125
+ return state !== undefined;
126
+ }
127
+ /**
128
+ * List all registered applications.
129
+ *
130
+ * @param options - Query options (prefix, limit)
131
+ * @returns Array of registered application states
132
+ */
133
+ async list(options) {
134
+ return this.#store.list(options);
135
+ }
136
+ /**
137
+ * Find applications by name.
138
+ *
139
+ * Returns all versions of an application with the given name (deterministically sorted by ID).
140
+ */
141
+ async findByName(name) {
142
+ const all = await this.#store.list();
143
+ const results = all.filter((s) => s.name === name);
144
+ // Deterministic ordering by application ID
145
+ results.sort((a, b) => a.id.localeCompare(b.id));
146
+ return results;
147
+ }
148
+ /**
149
+ * Find the latest version of an application by name.
150
+ *
151
+ * Returns undefined if no application with this name is registered.
152
+ */
153
+ async getLatestByName(name) {
154
+ const all = await this.findByName(name);
155
+ if (all.length === 0)
156
+ return undefined;
157
+ // Sort by semantic version (simple comparison - assumes valid semver)
158
+ all.sort((a, b) => {
159
+ const aParts = a.version.split(".").map((p) => parseInt(p, 10));
160
+ const bParts = b.version.split(".").map((p) => parseInt(p, 10));
161
+ for (let i = 0; i < Math.max(aParts.length, bParts.length); i++) {
162
+ const aVal = aParts[i] ?? 0;
163
+ const bVal = bParts[i] ?? 0;
164
+ if (aVal !== bVal)
165
+ return bVal - aVal;
166
+ }
167
+ return 0;
168
+ });
169
+ return all[0];
170
+ }
171
+ /**
172
+ * Delete a registered application.
173
+ *
174
+ * This marks an application as no longer tracked. The state is
175
+ * permanently removed from storage.
176
+ */
177
+ async delete(id) {
178
+ await this.#store.delete(id);
179
+ }
180
+ /** Persist an authoritative activation transition. */
181
+ async activate(id) {
182
+ const state = await this.#store.get(id);
183
+ if (!state)
184
+ throw new Error(`Cannot activate unknown application "${id}"`);
185
+ if (state.status === "retired")
186
+ throw new Error(`Cannot activate retired application "${id}"`);
187
+ const active = markApplicationActive(state);
188
+ await this.#store.put(active);
189
+ return active;
190
+ }
191
+ /** Retire without deleting identity, contract, state, or history. */
192
+ async retire(id) {
193
+ const state = await this.#store.get(id);
194
+ if (!state)
195
+ throw new Error(`Cannot retire unknown application "${id}"`);
196
+ const retired = retireApplication(state);
197
+ await this.#store.put(retired);
198
+ return retired;
199
+ }
200
+ /**
201
+ * Find an application by its manifest fingerprint.
202
+ *
203
+ * @param fingerprint - SHA256 fingerprint of the manifest
204
+ * @returns Array of applications with matching fingerprint (deterministically sorted by ID)
205
+ *
206
+ * Note: Applications should have unique fingerprints in practice, but this method
207
+ * returns an array for consistency with other discovery methods.
208
+ */
209
+ async findByFingerprint(fingerprint) {
210
+ const all = await this.#store.list();
211
+ const results = all.filter((state) => state.fingerprint === fingerprint);
212
+ // Deterministic ordering by application ID
213
+ results.sort((a, b) => a.id.localeCompare(b.id));
214
+ return results;
215
+ }
216
+ /**
217
+ * Find applications that provide a given capability.
218
+ *
219
+ * @param name - Capability name (e.g., "invoices.read")
220
+ * @param version - Optional specific capability version. If omitted, matches any version of the capability.
221
+ * @returns Array of applications providing this capability (deterministically sorted by ID)
222
+ */
223
+ async findByCapability(name, version) {
224
+ const all = await this.#store.list();
225
+ const results = all.filter((state) => state.status !== "retired" && (() => {
226
+ return state.manifest.provides.some((cap) => {
227
+ return cap.name === name && (version === undefined || cap.version === version);
228
+ });
229
+ })());
230
+ // Deterministic ordering by application ID
231
+ results.sort((a, b) => a.id.localeCompare(b.id));
232
+ return results;
233
+ }
234
+ /**
235
+ * Find applications that require a given capability.
236
+ *
237
+ * @param name - Capability name (e.g., "invoices.read")
238
+ * @param version - Optional specific capability version. If omitted, matches any version of the requirement.
239
+ * @returns Array of applications requiring this capability (deterministically sorted by ID)
240
+ */
241
+ async findByRequirement(name, version) {
242
+ const all = await this.#store.list();
243
+ const results = all.filter((state) => {
244
+ return state.manifest.requires.some((req) => {
245
+ return req.name === name && (version === undefined || req.version === version);
246
+ });
247
+ });
248
+ // Deterministic ordering by application ID
249
+ results.sort((a, b) => a.id.localeCompare(b.id));
250
+ return results;
251
+ }
252
+ }
253
+ //# sourceMappingURL=registration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registration.js","sourceRoot":"","sources":["../src/registration.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAEtH,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAuCpD;;;;GAIG;AACH,MAAM,OAAO,2BAA2B;IAC7B,OAAO,GAAG,IAAI,GAAG,EAA4B,CAAC;IAEvD,KAAK,CAAC,GAAG,CAAC,EAAU;QAClB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,KAAuB;QAC/B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU;QACrB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,OAA6C;QACtD,IAAI,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QACzC,IAAI,OAAO,EAAE,MAAM,EAAE,CAAC;YACpB,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,MAAO,CAAC,CAAC,CAAC;QACpE,CAAC;QACD,2CAA2C;QAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjD,IAAI,OAAO,EAAE,KAAK,EAAE,CAAC;YACnB,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;CACF;AAED;;;;;;;;;GASG;AACH,MAAM,OAAO,mBAAmB;IACrB,MAAM,CAAwB;IAEvC,YAAY,KAA4B;QACtC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,QAAQ,CAAC,OAAmC;QAChD,+CAA+C;QAC/C,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CACb,gCAAgC,OAAO,CAAC,QAAQ,CAAC,EAAE,kCAAkC;gBACnF,wCAAwC,CAC3C,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC/B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAE3C,wFAAwF;QACxF,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,QAAQ,CAAC,WAAW,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC;gBACjD,mDAAmD;gBACnD,OAAO,QAAQ,CAAC;YAClB,CAAC;YAED,6CAA6C;YAC7C,MAAM,OAAO,GAAG,sBAAsB,CAAC,QAAQ,EAAE;gBAC/C,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,YAAY,EAAE,OAAO,CAAC,YAAY;gBAClC,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC,CAAC;YAEH,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAC/B,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,yCAAyC;QACzC,MAAM,KAAK,GAAG,sBAAsB,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QACjD,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC7B,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,sBAAsB,CAAC,OAAmC;QAC9D,MAAM,mBAAmB,GAAG,mBAAmB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAClE,IAAI,OAAO,CAAC,WAAW,KAAK,mBAAmB,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CACb,6DAA6D,OAAO,CAAC,QAAQ,CAAC,EAAE,KAAK;gBACnF,aAAa,mBAAmB,UAAU,OAAO,CAAC,WAAW,EAAE,CAClE,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,GAAG,CAAC,EAAU;QAClB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,GAAG,CAAC,EAAU;QAClB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACxC,OAAO,KAAK,KAAK,SAAS,CAAC;IAC7B,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,IAAI,CAAC,OAA6C;QACtD,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,UAAU,CAAC,IAAY;QAC3B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;QACnD,2CAA2C;QAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,eAAe,CAAC,IAAY;QAChC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QAEvC,sEAAsE;QACtE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAChB,MAAM,MAAM,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;YAChE,MAAM,MAAM,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;YAEhE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBAChE,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAC5B,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAC5B,IAAI,IAAI,KAAK,IAAI;oBAAE,OAAO,IAAI,GAAG,IAAI,CAAC;YACxC,CAAC;YAED,OAAO,CAAC,CAAC;QACX,CAAC,CAAC,CAAC;QAEH,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;IAChB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CAAC,EAAU;QACrB,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC;IAED,sDAAsD;IACtD,KAAK,CAAC,QAAQ,CAAC,EAAU;QACvB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACxC,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,EAAE,GAAG,CAAC,CAAC;QAC3E,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,EAAE,GAAG,CAAC,CAAC;QAC/F,MAAM,MAAM,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAAC,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAAC,OAAO,MAAM,CAAC;IAC5F,CAAC;IAED,qEAAqE;IACrE,KAAK,CAAC,MAAM,CAAC,EAAU;QACrB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACxC,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,EAAE,GAAG,CAAC,CAAC;QACzE,MAAM,OAAO,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAAC,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAAC,OAAO,OAAO,CAAC;IAC3F,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,iBAAiB,CAAC,WAAmB;QACzC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,KAAK,WAAW,CAAC,CAAC;QACzE,2CAA2C;QAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,gBAAgB,CAAC,IAAY,EAAE,OAAgB;QACnD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,GAAG,EAAE;YACxE,OAAO,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;gBAC1C,OAAO,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,GAAG,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC;YACjF,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,EAAE,CAAC,CAAC;QACN,2CAA2C;QAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,iBAAiB,CAAC,IAAY,EAAE,OAAgB;QACpD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE;YACnC,OAAO,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;gBAC1C,OAAO,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,GAAG,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC;YACjF,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,2CAA2C;QAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjD,OAAO,OAAO,CAAC;IACjB,CAAC;CACF"}
@@ -0,0 +1,30 @@
1
+ import { type AppPortManifest, type ApplicationDescriptor, type CapabilityManifestEntry, type EventManifestEntry, type MaterializationDeclaration, type TransportDescriptor } from "../../protocol/dist/index.d.ts";
2
+ import type { AnyCapability, AnyEvent, CapabilityDefinition, EventDefinition } from "./capability.js";
3
+ /**
4
+ * The capability registry: the authoritative set of capabilities and events an
5
+ * application exposes, and the source of its manifest (§30).
6
+ */
7
+ export declare class CapabilityRegistry {
8
+ #private;
9
+ register<Input, Output>(input: CapabilityDefinition<Input, Output>): this;
10
+ registerEvent<Payload>(input: EventDefinition<Payload>): this;
11
+ has(name: string, version?: number): boolean;
12
+ /** Resolves a capability, or throws the correct protocol error (§15). */
13
+ resolve(name: string, version: number): AnyCapability;
14
+ getEvent(name: string, version?: number): AnyEvent | undefined;
15
+ capabilities(): AnyCapability[];
16
+ events(): AnyEvent[];
17
+ capabilityNames(): string[];
18
+ /** Renders the manifest entries for every registered capability. */
19
+ capabilityEntries(): CapabilityManifestEntry[];
20
+ eventEntries(): EventManifestEntry[];
21
+ /** Builds the full application manifest (§30). */
22
+ manifest(options: {
23
+ application: ApplicationDescriptor;
24
+ transports?: TransportDescriptor[];
25
+ materialization?: MaterializationDeclaration;
26
+ extensions?: string[];
27
+ conformance?: AppPortManifest["conformance"];
28
+ }): AppPortManifest;
29
+ }
30
+ //# sourceMappingURL=registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC1B,KAAK,uBAAuB,EAE5B,KAAK,kBAAkB,EAEvB,KAAK,0BAA0B,EAC/B,KAAK,mBAAmB,EAGzB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEtG;;;GAGG;AACH,qBAAa,kBAAkB;;IAI7B,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,IAAI;IAiBzE,aAAa,CAAC,OAAO,EAAE,KAAK,EAAE,eAAe,CAAC,OAAO,CAAC,GAAG,IAAI;IAW7D,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO;IAM5C,yEAAyE;IACzE,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,aAAa;IAUrD,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS;IAU9D,YAAY,IAAI,aAAa,EAAE;IAI/B,MAAM,IAAI,QAAQ,EAAE;IAIpB,eAAe,IAAI,MAAM,EAAE;IAI3B,oEAAoE;IACpE,iBAAiB,IAAI,uBAAuB,EAAE;IAoC9C,YAAY,IAAI,kBAAkB,EAAE;IA0BpC,kDAAkD;IAClD,QAAQ,CAAC,OAAO,EAAE;QAChB,WAAW,EAAE,qBAAqB,CAAC;QACnC,UAAU,CAAC,EAAE,mBAAmB,EAAE,CAAC;QACnC,eAAe,CAAC,EAAE,0BAA0B,CAAC;QAC7C,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;QACtB,WAAW,CAAC,EAAE,eAAe,CAAC,aAAa,CAAC,CAAC;KAC9C,GAAG,eAAe;CAkBpB"}