@procedures/client 0.0.0-stage → 0.2.0

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 (777) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/LICENSE +21 -0
  3. package/README.md +832 -2
  4. package/dist/.tsbuildinfo +1 -0
  5. package/dist/adapters/http/client/index.d.ts +11 -0
  6. package/dist/adapters/http/client/index.d.ts.map +1 -0
  7. package/dist/adapters/http/client/index.js +18 -0
  8. package/dist/adapters/http/client/index.js.map +1 -0
  9. package/dist/adapters/http/client/transport.d.ts +72 -0
  10. package/dist/adapters/http/client/transport.d.ts.map +1 -0
  11. package/dist/adapters/http/client/transport.js +282 -0
  12. package/dist/adapters/http/client/transport.js.map +1 -0
  13. package/dist/adapters/http/client/types.d.ts +27 -0
  14. package/dist/adapters/http/client/types.d.ts.map +1 -0
  15. package/dist/adapters/http/client/types.js +8 -0
  16. package/dist/adapters/http/client/types.js.map +1 -0
  17. package/dist/adapters/http/index.d.ts +7 -0
  18. package/dist/adapters/http/index.d.ts.map +1 -0
  19. package/dist/adapters/http/index.js +7 -0
  20. package/dist/adapters/http/index.js.map +1 -0
  21. package/dist/adapters/http/server/index.d.ts +9 -0
  22. package/dist/adapters/http/server/index.d.ts.map +1 -0
  23. package/dist/adapters/http/server/index.js +10 -0
  24. package/dist/adapters/http/server/index.js.map +1 -0
  25. package/dist/adapters/http/server/strategies.d.ts +39 -0
  26. package/dist/adapters/http/server/strategies.d.ts.map +1 -0
  27. package/dist/adapters/http/server/strategies.js +90 -0
  28. package/dist/adapters/http/server/strategies.js.map +1 -0
  29. package/dist/adapters/http/server/transport.d.ts +66 -0
  30. package/dist/adapters/http/server/transport.d.ts.map +1 -0
  31. package/dist/adapters/http/server/transport.js +562 -0
  32. package/dist/adapters/http/server/transport.js.map +1 -0
  33. package/dist/adapters/http/server/types.d.ts +71 -0
  34. package/dist/adapters/http/server/types.d.ts.map +1 -0
  35. package/dist/adapters/http/server/types.js +7 -0
  36. package/dist/adapters/http/server/types.js.map +1 -0
  37. package/dist/adapters/http/shared/constants.d.ts +95 -0
  38. package/dist/adapters/http/shared/constants.d.ts.map +1 -0
  39. package/dist/adapters/http/shared/constants.js +102 -0
  40. package/dist/adapters/http/shared/constants.js.map +1 -0
  41. package/dist/adapters/http/shared/errors.d.ts +78 -0
  42. package/dist/adapters/http/shared/errors.d.ts.map +1 -0
  43. package/dist/adapters/http/shared/errors.js +151 -0
  44. package/dist/adapters/http/shared/errors.js.map +1 -0
  45. package/dist/adapters/http/shared/headers.d.ts +122 -0
  46. package/dist/adapters/http/shared/headers.d.ts.map +1 -0
  47. package/dist/adapters/http/shared/headers.js +216 -0
  48. package/dist/adapters/http/shared/headers.js.map +1 -0
  49. package/dist/adapters/http/shared/index.d.ts +12 -0
  50. package/dist/adapters/http/shared/index.d.ts.map +1 -0
  51. package/dist/adapters/http/shared/index.js +17 -0
  52. package/dist/adapters/http/shared/index.js.map +1 -0
  53. package/dist/adapters/http/shared/status-codes.d.ts +92 -0
  54. package/dist/adapters/http/shared/status-codes.d.ts.map +1 -0
  55. package/dist/adapters/http/shared/status-codes.js +189 -0
  56. package/dist/adapters/http/shared/status-codes.js.map +1 -0
  57. package/dist/adapters/http/shared/strategies.d.ts +90 -0
  58. package/dist/adapters/http/shared/strategies.d.ts.map +1 -0
  59. package/dist/adapters/http/shared/strategies.js +180 -0
  60. package/dist/adapters/http/shared/strategies.js.map +1 -0
  61. package/dist/adapters/local/client/index.d.ts +8 -0
  62. package/dist/adapters/local/client/index.d.ts.map +1 -0
  63. package/dist/adapters/local/client/index.js +8 -0
  64. package/dist/adapters/local/client/index.js.map +1 -0
  65. package/dist/adapters/local/client/transport.d.ts +81 -0
  66. package/dist/adapters/local/client/transport.d.ts.map +1 -0
  67. package/dist/adapters/local/client/transport.js +172 -0
  68. package/dist/adapters/local/client/transport.js.map +1 -0
  69. package/dist/adapters/local/client/types.d.ts +39 -0
  70. package/dist/adapters/local/client/types.d.ts.map +1 -0
  71. package/dist/adapters/local/client/types.js +13 -0
  72. package/dist/adapters/local/client/types.js.map +1 -0
  73. package/dist/adapters/metadata.d.ts +10 -0
  74. package/dist/adapters/metadata.d.ts.map +1 -0
  75. package/dist/adapters/metadata.js +19 -0
  76. package/dist/adapters/metadata.js.map +1 -0
  77. package/dist/adapters/mock/client/builder.d.ts +35 -0
  78. package/dist/adapters/mock/client/builder.d.ts.map +1 -0
  79. package/dist/adapters/mock/client/builder.js +58 -0
  80. package/dist/adapters/mock/client/builder.js.map +1 -0
  81. package/dist/adapters/mock/client/index.d.ts +9 -0
  82. package/dist/adapters/mock/client/index.d.ts.map +1 -0
  83. package/dist/adapters/mock/client/index.js +10 -0
  84. package/dist/adapters/mock/client/index.js.map +1 -0
  85. package/dist/adapters/mock/client/transport.d.ts +149 -0
  86. package/dist/adapters/mock/client/transport.d.ts.map +1 -0
  87. package/dist/adapters/mock/client/transport.js +289 -0
  88. package/dist/adapters/mock/client/transport.js.map +1 -0
  89. package/dist/adapters/mock/client/types.d.ts +86 -0
  90. package/dist/adapters/mock/client/types.d.ts.map +1 -0
  91. package/dist/adapters/mock/client/types.js +7 -0
  92. package/dist/adapters/mock/client/types.js.map +1 -0
  93. package/dist/adapters/websocket/client/index.d.ts +9 -0
  94. package/dist/adapters/websocket/client/index.d.ts.map +1 -0
  95. package/dist/adapters/websocket/client/index.js +9 -0
  96. package/dist/adapters/websocket/client/index.js.map +1 -0
  97. package/dist/adapters/websocket/client/transport.d.ts +106 -0
  98. package/dist/adapters/websocket/client/transport.d.ts.map +1 -0
  99. package/dist/adapters/websocket/client/transport.js +647 -0
  100. package/dist/adapters/websocket/client/transport.js.map +1 -0
  101. package/dist/adapters/websocket/client/types.d.ts +192 -0
  102. package/dist/adapters/websocket/client/types.d.ts.map +1 -0
  103. package/dist/adapters/websocket/client/types.js +17 -0
  104. package/dist/adapters/websocket/client/types.js.map +1 -0
  105. package/dist/adapters/websocket/index.d.ts +8 -0
  106. package/dist/adapters/websocket/index.d.ts.map +1 -0
  107. package/dist/adapters/websocket/index.js +8 -0
  108. package/dist/adapters/websocket/index.js.map +1 -0
  109. package/dist/adapters/websocket/server/index.d.ts +8 -0
  110. package/dist/adapters/websocket/server/index.d.ts.map +1 -0
  111. package/dist/adapters/websocket/server/index.js +8 -0
  112. package/dist/adapters/websocket/server/index.js.map +1 -0
  113. package/dist/adapters/websocket/server/transport.d.ts +112 -0
  114. package/dist/adapters/websocket/server/transport.d.ts.map +1 -0
  115. package/dist/adapters/websocket/server/transport.js +619 -0
  116. package/dist/adapters/websocket/server/transport.js.map +1 -0
  117. package/dist/adapters/websocket/server/types.d.ts +140 -0
  118. package/dist/adapters/websocket/server/types.d.ts.map +1 -0
  119. package/dist/adapters/websocket/server/types.js +7 -0
  120. package/dist/adapters/websocket/server/types.js.map +1 -0
  121. package/dist/browser.d.ts +51 -0
  122. package/dist/browser.d.ts.map +1 -0
  123. package/dist/browser.js +89 -0
  124. package/dist/browser.js.map +1 -0
  125. package/dist/client/batch-executor.d.ts +160 -0
  126. package/dist/client/batch-executor.d.ts.map +1 -0
  127. package/dist/client/batch-executor.js +397 -0
  128. package/dist/client/batch-executor.js.map +1 -0
  129. package/dist/client/call-types.d.ts +271 -0
  130. package/dist/client/call-types.d.ts.map +1 -0
  131. package/dist/client/call-types.js +208 -0
  132. package/dist/client/call-types.js.map +1 -0
  133. package/dist/client/client.d.ts +525 -0
  134. package/dist/client/client.d.ts.map +1 -0
  135. package/dist/client/client.js +1011 -0
  136. package/dist/client/client.js.map +1 -0
  137. package/dist/client/consumption.d.ts +191 -0
  138. package/dist/client/consumption.d.ts.map +1 -0
  139. package/dist/client/consumption.js +98 -0
  140. package/dist/client/consumption.js.map +1 -0
  141. package/dist/client/context.d.ts +116 -0
  142. package/dist/client/context.d.ts.map +1 -0
  143. package/dist/client/context.js +111 -0
  144. package/dist/client/context.js.map +1 -0
  145. package/dist/client/errors/codes.d.ts +71 -0
  146. package/dist/client/errors/codes.d.ts.map +1 -0
  147. package/dist/client/errors/codes.js +81 -0
  148. package/dist/client/errors/codes.js.map +1 -0
  149. package/dist/client/errors/factory.d.ts +102 -0
  150. package/dist/client/errors/factory.d.ts.map +1 -0
  151. package/dist/client/errors/factory.js +210 -0
  152. package/dist/client/errors/factory.js.map +1 -0
  153. package/dist/client/errors/http-errors.d.ts +47 -0
  154. package/dist/client/errors/http-errors.d.ts.map +1 -0
  155. package/dist/client/errors/http-errors.js +548 -0
  156. package/dist/client/errors/http-errors.js.map +1 -0
  157. package/dist/client/errors/http-status.d.ts +73 -0
  158. package/dist/client/errors/http-status.d.ts.map +1 -0
  159. package/dist/client/errors/http-status.js +79 -0
  160. package/dist/client/errors/http-status.js.map +1 -0
  161. package/dist/client/errors/index.d.ts +36 -0
  162. package/dist/client/errors/index.d.ts.map +1 -0
  163. package/dist/client/errors/index.js +40 -0
  164. package/dist/client/errors/index.js.map +1 -0
  165. package/dist/client/errors/registry.d.ts +38 -0
  166. package/dist/client/errors/registry.d.ts.map +1 -0
  167. package/dist/client/errors/registry.js +535 -0
  168. package/dist/client/errors/registry.js.map +1 -0
  169. package/dist/client/errors/types.d.ts +112 -0
  170. package/dist/client/errors/types.d.ts.map +1 -0
  171. package/dist/client/errors/types.js +45 -0
  172. package/dist/client/errors/types.js.map +1 -0
  173. package/dist/client/index.d.ts +44 -0
  174. package/dist/client/index.d.ts.map +1 -0
  175. package/dist/client/index.js +36 -0
  176. package/dist/client/index.js.map +1 -0
  177. package/dist/client/middleware/auth.d.ts +90 -0
  178. package/dist/client/middleware/auth.d.ts.map +1 -0
  179. package/dist/client/middleware/auth.js +98 -0
  180. package/dist/client/middleware/auth.js.map +1 -0
  181. package/dist/client/middleware/batching.d.ts +102 -0
  182. package/dist/client/middleware/batching.d.ts.map +1 -0
  183. package/dist/client/middleware/batching.js +245 -0
  184. package/dist/client/middleware/batching.js.map +1 -0
  185. package/dist/client/middleware/cache.d.ts +124 -0
  186. package/dist/client/middleware/cache.d.ts.map +1 -0
  187. package/dist/client/middleware/cache.js +208 -0
  188. package/dist/client/middleware/cache.js.map +1 -0
  189. package/dist/client/middleware/circuit-breaker.d.ts +113 -0
  190. package/dist/client/middleware/circuit-breaker.d.ts.map +1 -0
  191. package/dist/client/middleware/circuit-breaker.js +236 -0
  192. package/dist/client/middleware/circuit-breaker.js.map +1 -0
  193. package/dist/client/middleware/contexts.d.ts +199 -0
  194. package/dist/client/middleware/contexts.d.ts.map +1 -0
  195. package/dist/client/middleware/contexts.js +74 -0
  196. package/dist/client/middleware/contexts.js.map +1 -0
  197. package/dist/client/middleware/items.d.ts +37 -0
  198. package/dist/client/middleware/items.d.ts.map +1 -0
  199. package/dist/client/middleware/items.js +100 -0
  200. package/dist/client/middleware/items.js.map +1 -0
  201. package/dist/client/middleware/lru.d.ts +32 -0
  202. package/dist/client/middleware/lru.d.ts.map +1 -0
  203. package/dist/client/middleware/lru.js +62 -0
  204. package/dist/client/middleware/lru.js.map +1 -0
  205. package/dist/client/middleware/pagination.d.ts +114 -0
  206. package/dist/client/middleware/pagination.d.ts.map +1 -0
  207. package/dist/client/middleware/pagination.js +148 -0
  208. package/dist/client/middleware/pagination.js.map +1 -0
  209. package/dist/client/middleware/rate-limit.d.ts +105 -0
  210. package/dist/client/middleware/rate-limit.d.ts.map +1 -0
  211. package/dist/client/middleware/rate-limit.js +222 -0
  212. package/dist/client/middleware/rate-limit.js.map +1 -0
  213. package/dist/client/middleware/retry.d.ts +100 -0
  214. package/dist/client/middleware/retry.d.ts.map +1 -0
  215. package/dist/client/middleware/retry.js +150 -0
  216. package/dist/client/middleware/retry.js.map +1 -0
  217. package/dist/client/middleware/timeout.d.ts +91 -0
  218. package/dist/client/middleware/timeout.d.ts.map +1 -0
  219. package/dist/client/middleware/timeout.js +253 -0
  220. package/dist/client/middleware/timeout.js.map +1 -0
  221. package/dist/client/middleware/tracing.d.ts +118 -0
  222. package/dist/client/middleware/tracing.d.ts.map +1 -0
  223. package/dist/client/middleware/tracing.js +152 -0
  224. package/dist/client/middleware/tracing.js.map +1 -0
  225. package/dist/client/route-resolver.d.ts +181 -0
  226. package/dist/client/route-resolver.d.ts.map +1 -0
  227. package/dist/client/route-resolver.js +300 -0
  228. package/dist/client/route-resolver.js.map +1 -0
  229. package/dist/client/typed-method.d.ts +29 -0
  230. package/dist/client/typed-method.d.ts.map +1 -0
  231. package/dist/client/typed-method.js +36 -0
  232. package/dist/client/typed-method.js.map +1 -0
  233. package/dist/client/typed.d.ts +102 -0
  234. package/dist/client/typed.d.ts.map +1 -0
  235. package/dist/client/typed.js +52 -0
  236. package/dist/client/typed.js.map +1 -0
  237. package/dist/client/types.d.ts +305 -0
  238. package/dist/client/types.d.ts.map +1 -0
  239. package/dist/client/types.js +26 -0
  240. package/dist/client/types.js.map +1 -0
  241. package/dist/client/validation/index.d.ts +34 -0
  242. package/dist/client/validation/index.d.ts.map +1 -0
  243. package/dist/client/validation/index.js +36 -0
  244. package/dist/client/validation/index.js.map +1 -0
  245. package/dist/client/validation/middleware.d.ts +82 -0
  246. package/dist/client/validation/middleware.d.ts.map +1 -0
  247. package/dist/client/validation/middleware.js +138 -0
  248. package/dist/client/validation/middleware.js.map +1 -0
  249. package/dist/client/validation/types.d.ts +118 -0
  250. package/dist/client/validation/types.d.ts.map +1 -0
  251. package/dist/client/validation/types.js +59 -0
  252. package/dist/client/validation/types.js.map +1 -0
  253. package/dist/collections/async/async-queue.d.ts +144 -0
  254. package/dist/collections/async/async-queue.d.ts.map +1 -0
  255. package/dist/collections/async/async-queue.js +347 -0
  256. package/dist/collections/async/async-queue.js.map +1 -0
  257. package/dist/collections/async/channels.d.ts +188 -0
  258. package/dist/collections/async/channels.d.ts.map +1 -0
  259. package/dist/collections/async/channels.js +312 -0
  260. package/dist/collections/async/channels.js.map +1 -0
  261. package/dist/collections/behaviors/bounded.d.ts +79 -0
  262. package/dist/collections/behaviors/bounded.d.ts.map +1 -0
  263. package/dist/collections/behaviors/bounded.js +384 -0
  264. package/dist/collections/behaviors/bounded.js.map +1 -0
  265. package/dist/collections/behaviors/evented.d.ts +154 -0
  266. package/dist/collections/behaviors/evented.d.ts.map +1 -0
  267. package/dist/collections/behaviors/evented.js +299 -0
  268. package/dist/collections/behaviors/evented.js.map +1 -0
  269. package/dist/collections/behaviors/lru.d.ts +84 -0
  270. package/dist/collections/behaviors/lru.d.ts.map +1 -0
  271. package/dist/collections/behaviors/lru.js +330 -0
  272. package/dist/collections/behaviors/lru.js.map +1 -0
  273. package/dist/collections/behaviors/readonly.d.ts +73 -0
  274. package/dist/collections/behaviors/readonly.d.ts.map +1 -0
  275. package/dist/collections/behaviors/readonly.js +158 -0
  276. package/dist/collections/behaviors/readonly.js.map +1 -0
  277. package/dist/collections/behaviors/safe.d.ts +163 -0
  278. package/dist/collections/behaviors/safe.d.ts.map +1 -0
  279. package/dist/collections/behaviors/safe.js +172 -0
  280. package/dist/collections/behaviors/safe.js.map +1 -0
  281. package/dist/collections/behaviors/synchronized.d.ts +88 -0
  282. package/dist/collections/behaviors/synchronized.d.ts.map +1 -0
  283. package/dist/collections/behaviors/synchronized.js +294 -0
  284. package/dist/collections/behaviors/synchronized.js.map +1 -0
  285. package/dist/collections/behaviors/ttl.d.ts +118 -0
  286. package/dist/collections/behaviors/ttl.d.ts.map +1 -0
  287. package/dist/collections/behaviors/ttl.js +338 -0
  288. package/dist/collections/behaviors/ttl.js.map +1 -0
  289. package/dist/collections/core/effects.d.ts +176 -0
  290. package/dist/collections/core/effects.d.ts.map +1 -0
  291. package/dist/collections/core/effects.js +180 -0
  292. package/dist/collections/core/effects.js.map +1 -0
  293. package/dist/collections/core/events.d.ts +192 -0
  294. package/dist/collections/core/events.d.ts.map +1 -0
  295. package/dist/collections/core/events.js +291 -0
  296. package/dist/collections/core/events.js.map +1 -0
  297. package/dist/collections/core/middleware.d.ts +231 -0
  298. package/dist/collections/core/middleware.d.ts.map +1 -0
  299. package/dist/collections/core/middleware.js +161 -0
  300. package/dist/collections/core/middleware.js.map +1 -0
  301. package/dist/collections/core/policies.d.ts +220 -0
  302. package/dist/collections/core/policies.d.ts.map +1 -0
  303. package/dist/collections/core/policies.js +48 -0
  304. package/dist/collections/core/policies.js.map +1 -0
  305. package/dist/collections/core/traits.d.ts +142 -0
  306. package/dist/collections/core/traits.d.ts.map +1 -0
  307. package/dist/collections/core/traits.js +8 -0
  308. package/dist/collections/core/traits.js.map +1 -0
  309. package/dist/collections/examples.d.ts +13 -0
  310. package/dist/collections/examples.d.ts.map +1 -0
  311. package/dist/collections/examples.js +302 -0
  312. package/dist/collections/examples.js.map +1 -0
  313. package/dist/collections/fx/collectors.d.ts +190 -0
  314. package/dist/collections/fx/collectors.d.ts.map +1 -0
  315. package/dist/collections/fx/collectors.js +369 -0
  316. package/dist/collections/fx/collectors.js.map +1 -0
  317. package/dist/collections/fx/iter.d.ts +166 -0
  318. package/dist/collections/fx/iter.d.ts.map +1 -0
  319. package/dist/collections/fx/iter.js +421 -0
  320. package/dist/collections/fx/iter.js.map +1 -0
  321. package/dist/collections/impl/array-deque.d.ts +107 -0
  322. package/dist/collections/impl/array-deque.d.ts.map +1 -0
  323. package/dist/collections/impl/array-deque.js +381 -0
  324. package/dist/collections/impl/array-deque.js.map +1 -0
  325. package/dist/collections/impl/array-list.d.ts +101 -0
  326. package/dist/collections/impl/array-list.d.ts.map +1 -0
  327. package/dist/collections/impl/array-list.js +387 -0
  328. package/dist/collections/impl/array-list.js.map +1 -0
  329. package/dist/collections/impl/hash-map.d.ts +141 -0
  330. package/dist/collections/impl/hash-map.d.ts.map +1 -0
  331. package/dist/collections/impl/hash-map.js +450 -0
  332. package/dist/collections/impl/hash-map.js.map +1 -0
  333. package/dist/collections/impl/hash-set.d.ts +125 -0
  334. package/dist/collections/impl/hash-set.d.ts.map +1 -0
  335. package/dist/collections/impl/hash-set.js +264 -0
  336. package/dist/collections/impl/hash-set.js.map +1 -0
  337. package/dist/collections/impl/linked-hash-map.d.ts +141 -0
  338. package/dist/collections/impl/linked-hash-map.d.ts.map +1 -0
  339. package/dist/collections/impl/linked-hash-map.js +472 -0
  340. package/dist/collections/impl/linked-hash-map.js.map +1 -0
  341. package/dist/collections/impl/linked-list.d.ts +109 -0
  342. package/dist/collections/impl/linked-list.d.ts.map +1 -0
  343. package/dist/collections/impl/linked-list.js +491 -0
  344. package/dist/collections/impl/linked-list.js.map +1 -0
  345. package/dist/collections/impl/priority-queue.d.ts +134 -0
  346. package/dist/collections/impl/priority-queue.d.ts.map +1 -0
  347. package/dist/collections/impl/priority-queue.js +336 -0
  348. package/dist/collections/impl/priority-queue.js.map +1 -0
  349. package/dist/collections/impl/tree-map.d.ts +146 -0
  350. package/dist/collections/impl/tree-map.d.ts.map +1 -0
  351. package/dist/collections/impl/tree-map.js +781 -0
  352. package/dist/collections/impl/tree-map.js.map +1 -0
  353. package/dist/collections/impl/tree-set.d.ts +112 -0
  354. package/dist/collections/impl/tree-set.d.ts.map +1 -0
  355. package/dist/collections/impl/tree-set.js +374 -0
  356. package/dist/collections/impl/tree-set.js.map +1 -0
  357. package/dist/collections/index.d.ts +105 -0
  358. package/dist/collections/index.d.ts.map +1 -0
  359. package/dist/collections/index.js +135 -0
  360. package/dist/collections/index.js.map +1 -0
  361. package/dist/collections/interfaces/collection.d.ts +119 -0
  362. package/dist/collections/interfaces/collection.d.ts.map +1 -0
  363. package/dist/collections/interfaces/collection.js +8 -0
  364. package/dist/collections/interfaces/collection.js.map +1 -0
  365. package/dist/collections/interfaces/list.d.ts +247 -0
  366. package/dist/collections/interfaces/list.d.ts.map +1 -0
  367. package/dist/collections/interfaces/list.js +8 -0
  368. package/dist/collections/interfaces/list.js.map +1 -0
  369. package/dist/collections/interfaces/map.d.ts +344 -0
  370. package/dist/collections/interfaces/map.d.ts.map +1 -0
  371. package/dist/collections/interfaces/map.js +8 -0
  372. package/dist/collections/interfaces/map.js.map +1 -0
  373. package/dist/collections/interfaces/queue.d.ts +304 -0
  374. package/dist/collections/interfaces/queue.d.ts.map +1 -0
  375. package/dist/collections/interfaces/queue.js +8 -0
  376. package/dist/collections/interfaces/queue.js.map +1 -0
  377. package/dist/collections/interfaces/set.d.ts +137 -0
  378. package/dist/collections/interfaces/set.d.ts.map +1 -0
  379. package/dist/collections/interfaces/set.js +8 -0
  380. package/dist/collections/interfaces/set.js.map +1 -0
  381. package/dist/collections/storage/api.d.ts +109 -0
  382. package/dist/collections/storage/api.d.ts.map +1 -0
  383. package/dist/collections/storage/api.js +182 -0
  384. package/dist/collections/storage/api.js.map +1 -0
  385. package/dist/collections/storage/hybrid.d.ts +164 -0
  386. package/dist/collections/storage/hybrid.d.ts.map +1 -0
  387. package/dist/collections/storage/hybrid.js +416 -0
  388. package/dist/collections/storage/hybrid.js.map +1 -0
  389. package/dist/collections/storage/index.d.ts +16 -0
  390. package/dist/collections/storage/index.d.ts.map +1 -0
  391. package/dist/collections/storage/index.js +13 -0
  392. package/dist/collections/storage/index.js.map +1 -0
  393. package/dist/collections/storage/interface.d.ts +141 -0
  394. package/dist/collections/storage/interface.d.ts.map +1 -0
  395. package/dist/collections/storage/interface.js +23 -0
  396. package/dist/collections/storage/interface.js.map +1 -0
  397. package/dist/collections/storage/memory.d.ts +68 -0
  398. package/dist/collections/storage/memory.d.ts.map +1 -0
  399. package/dist/collections/storage/memory.js +154 -0
  400. package/dist/collections/storage/memory.js.map +1 -0
  401. package/dist/collections/utils/defaults.d.ts +135 -0
  402. package/dist/collections/utils/defaults.d.ts.map +1 -0
  403. package/dist/collections/utils/defaults.js +322 -0
  404. package/dist/collections/utils/defaults.js.map +1 -0
  405. package/dist/collections/utils/factories.d.ts +144 -0
  406. package/dist/collections/utils/factories.d.ts.map +1 -0
  407. package/dist/collections/utils/factories.js +293 -0
  408. package/dist/collections/utils/factories.js.map +1 -0
  409. package/dist/collections/utils/helpers.d.ts +137 -0
  410. package/dist/collections/utils/helpers.d.ts.map +1 -0
  411. package/dist/collections/utils/helpers.js +221 -0
  412. package/dist/collections/utils/helpers.js.map +1 -0
  413. package/dist/collections.d.ts +12 -0
  414. package/dist/collections.d.ts.map +1 -0
  415. package/dist/collections.js +10 -0
  416. package/dist/collections.js.map +1 -0
  417. package/dist/components/define.d.ts +134 -0
  418. package/dist/components/define.d.ts.map +1 -0
  419. package/dist/components/define.js +486 -0
  420. package/dist/components/define.js.map +1 -0
  421. package/dist/components/index.d.ts +39 -0
  422. package/dist/components/index.d.ts.map +1 -0
  423. package/dist/components/index.js +38 -0
  424. package/dist/components/index.js.map +1 -0
  425. package/dist/components/types.d.ts +264 -0
  426. package/dist/components/types.d.ts.map +1 -0
  427. package/dist/components/types.js +46 -0
  428. package/dist/components/types.js.map +1 -0
  429. package/dist/events/bus.d.ts +193 -0
  430. package/dist/events/bus.d.ts.map +1 -0
  431. package/dist/events/bus.js +511 -0
  432. package/dist/events/bus.js.map +1 -0
  433. package/dist/events/index.d.ts +34 -0
  434. package/dist/events/index.d.ts.map +1 -0
  435. package/dist/events/index.js +36 -0
  436. package/dist/events/index.js.map +1 -0
  437. package/dist/events/types.d.ts +242 -0
  438. package/dist/events/types.d.ts.map +1 -0
  439. package/dist/events/types.js +8 -0
  440. package/dist/events/types.js.map +1 -0
  441. package/dist/index.d.ts +17 -0
  442. package/dist/index.d.ts.map +1 -0
  443. package/dist/index.js +17 -0
  444. package/dist/index.js.map +1 -0
  445. package/dist/middleware/compose.d.ts +88 -0
  446. package/dist/middleware/compose.d.ts.map +1 -0
  447. package/dist/middleware/compose.js +108 -0
  448. package/dist/middleware/compose.js.map +1 -0
  449. package/dist/middleware/index.d.ts +12 -0
  450. package/dist/middleware/index.d.ts.map +1 -0
  451. package/dist/middleware/index.js +11 -0
  452. package/dist/middleware/index.js.map +1 -0
  453. package/dist/middleware/types.d.ts +112 -0
  454. package/dist/middleware/types.d.ts.map +1 -0
  455. package/dist/middleware/types.js +14 -0
  456. package/dist/middleware/types.js.map +1 -0
  457. package/dist/procedures/capability.d.ts +111 -0
  458. package/dist/procedures/capability.d.ts.map +1 -0
  459. package/dist/procedures/capability.js +269 -0
  460. package/dist/procedures/capability.js.map +1 -0
  461. package/dist/procedures/cli/announce.d.ts +67 -0
  462. package/dist/procedures/cli/announce.d.ts.map +1 -0
  463. package/dist/procedures/cli/announce.js +392 -0
  464. package/dist/procedures/cli/announce.js.map +1 -0
  465. package/dist/procedures/cli/discover.d.ts +66 -0
  466. package/dist/procedures/cli/discover.d.ts.map +1 -0
  467. package/dist/procedures/cli/discover.js +310 -0
  468. package/dist/procedures/cli/discover.js.map +1 -0
  469. package/dist/procedures/cli/index.d.ts +13 -0
  470. package/dist/procedures/cli/index.d.ts.map +1 -0
  471. package/dist/procedures/cli/index.js +203 -0
  472. package/dist/procedures/cli/index.js.map +1 -0
  473. package/dist/procedures/cli/init.d.ts +17 -0
  474. package/dist/procedures/cli/init.d.ts.map +1 -0
  475. package/dist/procedures/cli/init.js +336 -0
  476. package/dist/procedures/cli/init.js.map +1 -0
  477. package/dist/procedures/collection/index.d.ts +10 -0
  478. package/dist/procedures/collection/index.d.ts.map +1 -0
  479. package/dist/procedures/collection/index.js +10 -0
  480. package/dist/procedures/collection/index.js.map +1 -0
  481. package/dist/procedures/collection/procedures.d.ts +21 -0
  482. package/dist/procedures/collection/procedures.d.ts.map +1 -0
  483. package/dist/procedures/collection/procedures.js +210 -0
  484. package/dist/procedures/collection/procedures.js.map +1 -0
  485. package/dist/procedures/collection/schemas.d.ts +131 -0
  486. package/dist/procedures/collection/schemas.d.ts.map +1 -0
  487. package/dist/procedures/collection/schemas.js +422 -0
  488. package/dist/procedures/collection/schemas.js.map +1 -0
  489. package/dist/procedures/collection/storage.d.ts +53 -0
  490. package/dist/procedures/collection/storage.d.ts.map +1 -0
  491. package/dist/procedures/collection/storage.js +2 -0
  492. package/dist/procedures/collection/storage.js.map +1 -0
  493. package/dist/procedures/core/array.d.ts +276 -0
  494. package/dist/procedures/core/array.d.ts.map +1 -0
  495. package/dist/procedures/core/array.js +639 -0
  496. package/dist/procedures/core/array.js.map +1 -0
  497. package/dist/procedures/core/comparison.d.ts +85 -0
  498. package/dist/procedures/core/comparison.d.ts.map +1 -0
  499. package/dist/procedures/core/comparison.js +158 -0
  500. package/dist/procedures/core/comparison.js.map +1 -0
  501. package/dist/procedures/core/index.d.ts +261 -0
  502. package/dist/procedures/core/index.d.ts.map +1 -0
  503. package/dist/procedures/core/index.js +588 -0
  504. package/dist/procedures/core/index.js.map +1 -0
  505. package/dist/procedures/core/logic.d.ts +144 -0
  506. package/dist/procedures/core/logic.d.ts.map +1 -0
  507. package/dist/procedures/core/logic.js +169 -0
  508. package/dist/procedures/core/logic.js.map +1 -0
  509. package/dist/procedures/core/math.d.ts +139 -0
  510. package/dist/procedures/core/math.d.ts.map +1 -0
  511. package/dist/procedures/core/math.js +275 -0
  512. package/dist/procedures/core/math.js.map +1 -0
  513. package/dist/procedures/core/meta.d.ts +111 -0
  514. package/dist/procedures/core/meta.d.ts.map +1 -0
  515. package/dist/procedures/core/meta.js +244 -0
  516. package/dist/procedures/core/meta.js.map +1 -0
  517. package/dist/procedures/core/object.d.ts +109 -0
  518. package/dist/procedures/core/object.d.ts.map +1 -0
  519. package/dist/procedures/core/object.js +272 -0
  520. package/dist/procedures/core/object.js.map +1 -0
  521. package/dist/procedures/core/operands.d.ts +51 -0
  522. package/dist/procedures/core/operands.d.ts.map +1 -0
  523. package/dist/procedures/core/operands.js +90 -0
  524. package/dist/procedures/core/operands.js.map +1 -0
  525. package/dist/procedures/core/outputs.d.ts +28 -0
  526. package/dist/procedures/core/outputs.d.ts.map +1 -0
  527. package/dist/procedures/core/outputs.js +42 -0
  528. package/dist/procedures/core/outputs.js.map +1 -0
  529. package/dist/procedures/core/results.d.ts +202 -0
  530. package/dist/procedures/core/results.d.ts.map +1 -0
  531. package/dist/procedures/core/results.js +106 -0
  532. package/dist/procedures/core/results.js.map +1 -0
  533. package/dist/procedures/core/schemas.d.ts +48 -0
  534. package/dist/procedures/core/schemas.d.ts.map +1 -0
  535. package/dist/procedures/core/schemas.js +102 -0
  536. package/dist/procedures/core/schemas.js.map +1 -0
  537. package/dist/procedures/core/string.d.ts +138 -0
  538. package/dist/procedures/core/string.d.ts.map +1 -0
  539. package/dist/procedures/core/string.js +270 -0
  540. package/dist/procedures/core/string.js.map +1 -0
  541. package/dist/procedures/core/type.d.ts +101 -0
  542. package/dist/procedures/core/type.d.ts.map +1 -0
  543. package/dist/procedures/core/type.js +210 -0
  544. package/dist/procedures/core/type.js.map +1 -0
  545. package/dist/procedures/define-procedure.d.ts +187 -0
  546. package/dist/procedures/define-procedure.d.ts.map +1 -0
  547. package/dist/procedures/define-procedure.js +357 -0
  548. package/dist/procedures/define-procedure.js.map +1 -0
  549. package/dist/procedures/define.d.ts +228 -0
  550. package/dist/procedures/define.d.ts.map +1 -0
  551. package/dist/procedures/define.js +300 -0
  552. package/dist/procedures/define.js.map +1 -0
  553. package/dist/procedures/discovery.d.ts +57 -0
  554. package/dist/procedures/discovery.d.ts.map +1 -0
  555. package/dist/procedures/discovery.js +68 -0
  556. package/dist/procedures/discovery.js.map +1 -0
  557. package/dist/procedures/effects.d.ts +15 -0
  558. package/dist/procedures/effects.d.ts.map +1 -0
  559. package/dist/procedures/effects.js +18 -0
  560. package/dist/procedures/effects.js.map +1 -0
  561. package/dist/procedures/index.d.ts +27 -0
  562. package/dist/procedures/index.d.ts.map +1 -0
  563. package/dist/procedures/index.js +54 -0
  564. package/dist/procedures/index.js.map +1 -0
  565. package/dist/procedures/interceptors.d.ts +82 -0
  566. package/dist/procedures/interceptors.d.ts.map +1 -0
  567. package/dist/procedures/interceptors.js +194 -0
  568. package/dist/procedures/interceptors.js.map +1 -0
  569. package/dist/procedures/invoke.d.ts +155 -0
  570. package/dist/procedures/invoke.d.ts.map +1 -0
  571. package/dist/procedures/invoke.js +343 -0
  572. package/dist/procedures/invoke.js.map +1 -0
  573. package/dist/procedures/module.d.ts +54 -0
  574. package/dist/procedures/module.d.ts.map +1 -0
  575. package/dist/procedures/module.js +103 -0
  576. package/dist/procedures/module.js.map +1 -0
  577. package/dist/procedures/policy.d.ts +70 -0
  578. package/dist/procedures/policy.d.ts.map +1 -0
  579. package/dist/procedures/policy.js +138 -0
  580. package/dist/procedures/policy.js.map +1 -0
  581. package/dist/procedures/ref.d.ts +606 -0
  582. package/dist/procedures/ref.d.ts.map +1 -0
  583. package/dist/procedures/ref.js +895 -0
  584. package/dist/procedures/ref.js.map +1 -0
  585. package/dist/procedures/registry.d.ts +208 -0
  586. package/dist/procedures/registry.d.ts.map +1 -0
  587. package/dist/procedures/registry.js +402 -0
  588. package/dist/procedures/registry.js.map +1 -0
  589. package/dist/procedures/schema.d.ts +126 -0
  590. package/dist/procedures/schema.d.ts.map +1 -0
  591. package/dist/procedures/schema.js +108 -0
  592. package/dist/procedures/schema.js.map +1 -0
  593. package/dist/procedures/storage/adapter.d.ts +148 -0
  594. package/dist/procedures/storage/adapter.d.ts.map +1 -0
  595. package/dist/procedures/storage/adapter.js +214 -0
  596. package/dist/procedures/storage/adapter.js.map +1 -0
  597. package/dist/procedures/storage/api.d.ts +125 -0
  598. package/dist/procedures/storage/api.d.ts.map +1 -0
  599. package/dist/procedures/storage/api.js +220 -0
  600. package/dist/procedures/storage/api.js.map +1 -0
  601. package/dist/procedures/storage/factory.d.ts +134 -0
  602. package/dist/procedures/storage/factory.d.ts.map +1 -0
  603. package/dist/procedures/storage/factory.js +166 -0
  604. package/dist/procedures/storage/factory.js.map +1 -0
  605. package/dist/procedures/storage/hybrid.d.ts +193 -0
  606. package/dist/procedures/storage/hybrid.d.ts.map +1 -0
  607. package/dist/procedures/storage/hybrid.js +519 -0
  608. package/dist/procedures/storage/hybrid.js.map +1 -0
  609. package/dist/procedures/storage/index.d.ts +17 -0
  610. package/dist/procedures/storage/index.d.ts.map +1 -0
  611. package/dist/procedures/storage/index.js +17 -0
  612. package/dist/procedures/storage/index.js.map +1 -0
  613. package/dist/procedures/storage/procedures.d.ts +39 -0
  614. package/dist/procedures/storage/procedures.d.ts.map +1 -0
  615. package/dist/procedures/storage/procedures.js +261 -0
  616. package/dist/procedures/storage/procedures.js.map +1 -0
  617. package/dist/procedures/storage/serialization.d.ts +123 -0
  618. package/dist/procedures/storage/serialization.d.ts.map +1 -0
  619. package/dist/procedures/storage/serialization.js +216 -0
  620. package/dist/procedures/storage/serialization.js.map +1 -0
  621. package/dist/procedures/storage/synced-registry.d.ts +246 -0
  622. package/dist/procedures/storage/synced-registry.d.ts.map +1 -0
  623. package/dist/procedures/storage/synced-registry.js +575 -0
  624. package/dist/procedures/storage/synced-registry.js.map +1 -0
  625. package/dist/procedures/storage/types.d.ts +130 -0
  626. package/dist/procedures/storage/types.d.ts.map +1 -0
  627. package/dist/procedures/storage/types.js +8 -0
  628. package/dist/procedures/storage/types.js.map +1 -0
  629. package/dist/procedures/types.d.ts +468 -0
  630. package/dist/procedures/types.d.ts.map +1 -0
  631. package/dist/procedures/types.js +23 -0
  632. package/dist/procedures/types.js.map +1 -0
  633. package/dist/register.d.ts +8 -0
  634. package/dist/register.d.ts.map +1 -0
  635. package/dist/register.js +9 -0
  636. package/dist/register.js.map +1 -0
  637. package/dist/server/browser-guard.d.ts +69 -0
  638. package/dist/server/browser-guard.d.ts.map +1 -0
  639. package/dist/server/browser-guard.js +103 -0
  640. package/dist/server/browser-guard.js.map +1 -0
  641. package/dist/server/host-policy.d.ts +81 -0
  642. package/dist/server/host-policy.d.ts.map +1 -0
  643. package/dist/server/host-policy.js +104 -0
  644. package/dist/server/host-policy.js.map +1 -0
  645. package/dist/server/index.d.ts +46 -0
  646. package/dist/server/index.d.ts.map +1 -0
  647. package/dist/server/index.js +42 -0
  648. package/dist/server/index.js.map +1 -0
  649. package/dist/server/method.d.ts +24 -0
  650. package/dist/server/method.d.ts.map +1 -0
  651. package/dist/server/method.js +29 -0
  652. package/dist/server/method.js.map +1 -0
  653. package/dist/server/procedure-server.d.ts +226 -0
  654. package/dist/server/procedure-server.d.ts.map +1 -0
  655. package/dist/server/procedure-server.js +348 -0
  656. package/dist/server/procedure-server.js.map +1 -0
  657. package/dist/server/server.d.ts +161 -0
  658. package/dist/server/server.d.ts.map +1 -0
  659. package/dist/server/server.js +279 -0
  660. package/dist/server/server.js.map +1 -0
  661. package/dist/server/types.d.ts +106 -0
  662. package/dist/server/types.d.ts.map +1 -0
  663. package/dist/server/types.js +29 -0
  664. package/dist/server/types.js.map +1 -0
  665. package/package.json +117 -3
  666. package/src/adapters/http/client/index.ts +51 -0
  667. package/src/adapters/http/client/transport.ts +338 -0
  668. package/src/adapters/http/client/types.ts +33 -0
  669. package/src/adapters/http/index.ts +7 -0
  670. package/src/adapters/http/server/index.ts +14 -0
  671. package/src/adapters/http/server/strategies.ts +105 -0
  672. package/src/adapters/http/server/transport.ts +623 -0
  673. package/src/adapters/http/server/types.ts +81 -0
  674. package/src/adapters/http/shared/constants.ts +108 -0
  675. package/src/adapters/http/shared/errors.ts +199 -0
  676. package/src/adapters/http/shared/headers.ts +291 -0
  677. package/src/adapters/http/shared/index.ts +21 -0
  678. package/src/adapters/http/shared/status-codes.ts +212 -0
  679. package/src/adapters/http/shared/strategies.ts +255 -0
  680. package/src/adapters/local/client/index.ts +11 -0
  681. package/src/adapters/local/client/transport.ts +188 -0
  682. package/src/adapters/local/client/types.ts +50 -0
  683. package/src/adapters/metadata.ts +17 -0
  684. package/src/adapters/mock/client/builder.ts +64 -0
  685. package/src/adapters/mock/client/index.ts +19 -0
  686. package/src/adapters/mock/client/transport.ts +352 -0
  687. package/src/adapters/mock/client/types.ts +99 -0
  688. package/src/adapters/websocket/client/index.ts +18 -0
  689. package/src/adapters/websocket/client/transport.ts +733 -0
  690. package/src/adapters/websocket/client/types.ts +235 -0
  691. package/src/adapters/websocket/index.ts +24 -0
  692. package/src/adapters/websocket/server/index.ts +18 -0
  693. package/src/adapters/websocket/server/transport.ts +705 -0
  694. package/src/adapters/websocket/server/types.ts +169 -0
  695. package/src/browser.ts +401 -0
  696. package/src/client/batch-executor.ts +514 -0
  697. package/src/client/call-types.ts +491 -0
  698. package/src/client/client.ts +1229 -0
  699. package/src/client/consumption.ts +288 -0
  700. package/src/client/context.ts +228 -0
  701. package/src/client/errors/README.md +279 -0
  702. package/src/client/errors/codes.ts +88 -0
  703. package/src/client/errors/factory.ts +263 -0
  704. package/src/client/errors/http-errors.ts +601 -0
  705. package/src/client/errors/http-status.ts +82 -0
  706. package/src/client/errors/index.ts +72 -0
  707. package/src/client/errors/registry.ts +595 -0
  708. package/src/client/errors/types.ts +139 -0
  709. package/src/client/index.ts +124 -0
  710. package/src/client/middleware/auth.ts +132 -0
  711. package/src/client/middleware/cache.ts +316 -0
  712. package/src/client/middleware/circuit-breaker.ts +339 -0
  713. package/src/client/middleware/contexts.ts +319 -0
  714. package/src/client/middleware/items.ts +114 -0
  715. package/src/client/middleware/lru.ts +66 -0
  716. package/src/client/middleware/pagination.ts +213 -0
  717. package/src/client/middleware/rate-limit.ts +315 -0
  718. package/src/client/middleware/retry.ts +236 -0
  719. package/src/client/middleware/timeout.ts +308 -0
  720. package/src/client/middleware/tracing.ts +191 -0
  721. package/src/client/route-resolver.ts +407 -0
  722. package/src/client/typed-method.ts +65 -0
  723. package/src/client/typed.ts +140 -0
  724. package/src/client/types.ts +372 -0
  725. package/src/client/validation/index.ts +56 -0
  726. package/src/client/validation/middleware.ts +254 -0
  727. package/src/client/validation/types.ts +162 -0
  728. package/src/events/bus.ts +594 -0
  729. package/src/events/index.ts +67 -0
  730. package/src/events/types.ts +263 -0
  731. package/src/index.ts +33 -0
  732. package/src/middleware/compose.ts +159 -0
  733. package/src/middleware/index.ts +28 -0
  734. package/src/middleware/types.ts +166 -0
  735. package/src/procedures/capability.ts +333 -0
  736. package/src/procedures/cli/announce.ts +470 -0
  737. package/src/procedures/cli/discover.ts +390 -0
  738. package/src/procedures/cli/index.ts +231 -0
  739. package/src/procedures/cli/init.ts +370 -0
  740. package/src/procedures/collection/index.ts +51 -0
  741. package/src/procedures/collection/procedures.ts +257 -0
  742. package/src/procedures/collection/schemas.ts +550 -0
  743. package/src/procedures/collection/storage.ts +53 -0
  744. package/src/procedures/core/array.ts +1026 -0
  745. package/src/procedures/core/comparison.ts +265 -0
  746. package/src/procedures/core/index.ts +898 -0
  747. package/src/procedures/core/logic.ts +225 -0
  748. package/src/procedures/core/math.ts +471 -0
  749. package/src/procedures/core/meta.ts +389 -0
  750. package/src/procedures/core/object.ts +429 -0
  751. package/src/procedures/core/operands.ts +119 -0
  752. package/src/procedures/core/outputs.ts +48 -0
  753. package/src/procedures/core/results.ts +296 -0
  754. package/src/procedures/core/schemas.ts +123 -0
  755. package/src/procedures/core/string.ts +460 -0
  756. package/src/procedures/core/type.ts +346 -0
  757. package/src/procedures/define-procedure.ts +532 -0
  758. package/src/procedures/define.ts +387 -0
  759. package/src/procedures/discovery.ts +76 -0
  760. package/src/procedures/effects.ts +24 -0
  761. package/src/procedures/index.ts +239 -0
  762. package/src/procedures/interceptors.ts +273 -0
  763. package/src/procedures/invoke.ts +506 -0
  764. package/src/procedures/module.ts +117 -0
  765. package/src/procedures/policy.ts +171 -0
  766. package/src/procedures/ref.ts +1305 -0
  767. package/src/procedures/registry.ts +473 -0
  768. package/src/procedures/schema.ts +225 -0
  769. package/src/procedures/types.ts +596 -0
  770. package/src/register.ts +10 -0
  771. package/src/server/browser-guard.ts +147 -0
  772. package/src/server/host-policy.ts +163 -0
  773. package/src/server/index.ts +70 -0
  774. package/src/server/method.ts +33 -0
  775. package/src/server/procedure-server.ts +459 -0
  776. package/src/server/server.ts +364 -0
  777. package/src/server/types.ts +147 -0
@@ -0,0 +1,525 @@
1
+ /**
2
+ * Universal Client
3
+ *
4
+ * Protocol-agnostic RPC client with middleware composition.
5
+ * Works with any transport: HTTP, gRPC, WebSocket, or local.
6
+ *
7
+ * The Client class is generic over its accumulated context type, enabling
8
+ * compile-time validation of middleware chains. Each call to `use()` returns
9
+ * a new type that includes the middleware's provided context.
10
+ *
11
+ * @example
12
+ * ```typescript
13
+ * // Type accumulates as middleware is added
14
+ * const client = new Client(transport)
15
+ * .use(createRetryMiddleware()) // Client<BaseContext & RetryContext>
16
+ * .use(createCacheMiddleware({ methods: ["users.get"] })) // Client<... & CacheContext>
17
+ * .use(createAuthMiddleware(...)) // Client<... & AuthContext>
18
+ *
19
+ * // Middleware requiring context validates at compile time
20
+ * client.use(middlewareThatRequiresAuth); // OK if AuthContext is in chain
21
+ *
22
+ * // Context passing via withContext() and per-call options
23
+ * const authedClient = client.withContext({ auth: { token: "user-token" } });
24
+ * await authedClient.call(method, payload, { context: { retry: { maxAttempts: 5 } } });
25
+ * ```
26
+ */
27
+ import type { Transport, Method, Metadata, ClientMiddleware, ClientOptions, TypedClientMiddleware } from "./types.js";
28
+ import type { CallOptions, ClientContextInput } from "./context.js";
29
+ import type { ZodLike } from "./validation/types.js";
30
+ import type { Route, CallRequest, CallResponse, StreamingCallResponse } from "./call-types.js";
31
+ import type { ProcedureRegistry } from "../procedures/registry.js";
32
+ import type { EventBus } from "../events/types.js";
33
+ import type { ProcedurePath } from "../procedures/types.js";
34
+ import { type AnyProcedureRef, type HydrationEvent } from "../procedures/ref.js";
35
+ /** The options of `exec()` and `execStream()`. */
36
+ export interface ExecOptions {
37
+ /**
38
+ * This function gets the hydration events of this program only: the refs that hydration runs,
39
+ * also inside control flow and runners, with the call that gets each result. A trace uses it.
40
+ * (`observeHydration()` gets the events of every program in the process.)
41
+ */
42
+ onRef?: ((event: HydrationEvent) => void) | undefined;
43
+ }
44
+ /**
45
+ * Universal Client for protocol-agnostic RPC.
46
+ *
47
+ * Features:
48
+ * - Works with any transport (HTTP, gRPC, WebSocket, local)
49
+ * - Middleware composition (retry, cache, timeout, custom)
50
+ * - Stream-first API (single response = stream with 1 item)
51
+ * - Type-safe request/response handling
52
+ * - **Type-accumulating middleware**: Context types build through `use()` calls
53
+ *
54
+ * @typeParam TContext - Accumulated context type from applied middleware.
55
+ * Starts as `{}` and grows as middleware is added via `use()`.
56
+ *
57
+ * @example
58
+ * ```typescript
59
+ * // HTTP client with type-accumulating middleware
60
+ * const client = new Client({ transport: new HttpTransport({ baseUrl: "/api" }) })
61
+ * .use(createRetryMiddleware()) // Client<{} & RetryContext>
62
+ * .use(createCacheMiddleware({ methods: ["users.get"] })) // Client<{} & RetryContext & CacheContext>
63
+ * .use(createAuthMiddleware({ // Client<... & AuthContext>
64
+ * token: "abc123"
65
+ * }));
66
+ *
67
+ * // The client type now carries all middleware context
68
+ * const user = await client.call(
69
+ * { service: "users", operation: "get" },
70
+ * { id: 123 }
71
+ * );
72
+ *
73
+ * // Streaming
74
+ * for await (const event of client.stream(
75
+ * { service: "events", operation: "watch" },
76
+ * { topic: "orders" }
77
+ * )) {
78
+ * console.log(event);
79
+ * }
80
+ * ```
81
+ */
82
+ export declare class Client<TContext = {}> {
83
+ private readonly transport;
84
+ private readonly middleware;
85
+ private readonly defaultMetadata;
86
+ private readonly throwOnError;
87
+ /** The bus of the local procedures. Undefined: the global bus. */
88
+ private bus;
89
+ /** The interceptors of the local invocations (roadmap 1.2) */
90
+ private interceptors;
91
+ /** The capability of the local invocations (CAPABILITIES-2026-10). Undefined: no limits. */
92
+ private capability;
93
+ /** The order of the clearance values. */
94
+ private clearanceOrder;
95
+ /**
96
+ * Context values set via withContext().
97
+ * Merged with parent context when creating child clients.
98
+ */
99
+ private readonly clientContext;
100
+ /**
101
+ * Parent client reference (for context inheritance).
102
+ * When set, middleware and transport are shared, only context differs.
103
+ */
104
+ private readonly parent?;
105
+ constructor(options: ClientOptions | Transport);
106
+ /**
107
+ * Create a child client from this client (private, for withContext).
108
+ */
109
+ private static createChild;
110
+ /**
111
+ * Create a child client with additional context.
112
+ *
113
+ * Child clients:
114
+ * - Share the middleware chain (cheap to create)
115
+ * - Inherit parent context (merged recursively)
116
+ * - Can override specific context fields
117
+ *
118
+ * Context priority (lowest to highest):
119
+ * 1. Middleware defaults (e.g., maxRetries: 3 from createRetryMiddleware)
120
+ * 2. Parent client context (full inheritance chain)
121
+ * 3. This client's context
122
+ * 4. Per-call context override
123
+ *
124
+ * @param context - Context to set/override on the child client
125
+ * @returns New client with accumulated context
126
+ *
127
+ * @example
128
+ * ```typescript
129
+ * // Create authenticated child client
130
+ * const authedClient = client.withContext({
131
+ * auth: { token: "user-token" },
132
+ * timeout: { overall: 5000 }
133
+ * });
134
+ *
135
+ * // Nested children inherit and can override
136
+ * const adminClient = authedClient.withContext({
137
+ * auth: { token: "admin-token" }, // Overrides parent token
138
+ * // timeout inherited from parent
139
+ * });
140
+ * ```
141
+ */
142
+ withContext<TAdditional extends object = {}>(context: TAdditional & ClientContextInput<TContext>): Client<TContext & TAdditional>;
143
+ /**
144
+ * Get effective context by merging entire parent chain.
145
+ *
146
+ * @returns Merged context from all ancestors plus this client
147
+ */
148
+ private getEffectiveContext;
149
+ /**
150
+ * Add middleware to the client.
151
+ *
152
+ * Middleware is composed in the order added (onion model):
153
+ * - First added = outermost layer
154
+ * - Last added = innermost layer (closest to transport)
155
+ *
156
+ * **Type Accumulation**: When using `TypedClientMiddleware`, the return type
157
+ * accumulates the middleware's provided context. This enables compile-time
158
+ * validation of middleware chains.
159
+ *
160
+ * @typeParam TProvides - Context type this middleware provides
161
+ * @typeParam TRequires - Context type this middleware requires (must be subset of TContext)
162
+ * @param middleware - Middleware function (typed or untyped)
163
+ * @returns Client with accumulated context type
164
+ *
165
+ * @example
166
+ * ```typescript
167
+ * // Type accumulation example
168
+ * const client = new Client(transport)
169
+ * .use(createTimeoutMiddleware({ overall: 5000 })) // Client<TimeoutContext>
170
+ * .use(createRetryMiddleware()) // Client<TimeoutContext & RetryContext>
171
+ * .use(createCacheMiddleware({ methods: ["users.get"] })); // Client<... & CacheContext>
172
+ *
173
+ * // Middleware ordering (onion model)
174
+ * client
175
+ * .use(timeoutMiddleware()) // Outer: handles timeouts
176
+ * .use(retryMiddleware()) // Middle: handles retries
177
+ * .use(cacheMiddleware()); // Inner: handles caching
178
+ * ```
179
+ */
180
+ use<TProvides = {}, TRequires extends TContext = TContext>(middleware: TypedClientMiddleware<TProvides, TRequires> | ClientMiddleware): Client<TContext & TProvides>;
181
+ /**
182
+ * Make a single RPC call (request/response).
183
+ *
184
+ * The result is the last item of the response stream: the one item of a request/response
185
+ * call, or the final item of a streaming procedure. To read each item, use `stream()`.
186
+ *
187
+ * @param method - Method to invoke
188
+ * @param payload - Request payload
189
+ * @param options - Call options (context override, metadata, signal, schema)
190
+ * OR legacy Metadata object for backward compatibility
191
+ * @returns Response payload
192
+ * @throws {ClientError} if response has error status (when throwOnError=true)
193
+ *
194
+ * @example
195
+ * ```typescript
196
+ * // Simple call
197
+ * const user = await client.call(
198
+ * { service: "users", operation: "get" },
199
+ * { id: 123 }
200
+ * );
201
+ *
202
+ * // With context override
203
+ * const user = await client.call(
204
+ * { service: "users", operation: "get" },
205
+ * { id: 123 },
206
+ * { context: { timeout: { overall: 10000 } } }
207
+ * );
208
+ * ```
209
+ */
210
+ call<TReq, TRes>(method: Method, payload: TReq, options?: CallOptions<TContext> | Metadata): Promise<TRes>;
211
+ /**
212
+ * Execute a procedure reference with automatic input hydration.
213
+ *
214
+ * This method supports procedure-as-data: procedures can be passed as inputs
215
+ * to other procedures, composed declaratively via JSON, or imperatively via TypeScript.
216
+ *
217
+ * **Input Hydration**: Any ProcedureRef or `$proc` objects in the input tree
218
+ * are automatically executed and replaced with their results before the
219
+ * main procedure runs.
220
+ *
221
+ * @param refOrPath - Procedure reference, JSON procedure ref, or procedure path
222
+ * @param input - Input for the procedure. With a reference, its fields go over the fields of the reference's input.
223
+ * @returns Output of the procedure
224
+ *
225
+ * @example
226
+ * ```typescript
227
+ * import { proc } from "@procedures/client";
228
+ *
229
+ * // Using proc() builder
230
+ * const result = await client.exec(
231
+ * proc(["git", "add"]).input({ all: true }).build()
232
+ * );
233
+ *
234
+ * // Using JSON format
235
+ * const result = await client.exec({
236
+ * $proc: ["git", "add"],
237
+ * input: { all: true },
238
+ * });
239
+ *
240
+ * // Using path + input (simple form)
241
+ * const result = await client.exec(["git", "add"], { all: true });
242
+ *
243
+ * // Nested procedure refs (hydrated automatically)
244
+ * const result = await client.exec(
245
+ * proc(["dag", "traverse"]).input({
246
+ * visit: proc(["client", "chain"]).input({
247
+ * steps: [
248
+ * proc(["git", "add"]).input({ all: true }).ref,
249
+ * proc(["git", "commit"]).input({ message: "auto" }).ref,
250
+ * ],
251
+ * }).ref,
252
+ * }).build()
253
+ * );
254
+ * ```
255
+ */
256
+ exec<TOutput = unknown>(refOrPath: AnyProcedureRef | ProcedurePath, input?: unknown, options?: ExecOptions): Promise<TOutput>;
257
+ /**
258
+ * Execute a procedure reference and read each output: each item of a streaming procedure, or
259
+ * the one value of another procedure. The input refs run as in `exec()`. Nothing runs until
260
+ * the caller reads the first item.
261
+ *
262
+ * @example
263
+ * ```typescript
264
+ * for await (const line of client.execStream(["logs", "tail"], { file: "app.log" })) {
265
+ * console.log(line);
266
+ * }
267
+ * ```
268
+ */
269
+ execStream<TOutput = unknown>(refOrPath: AnyProcedureRef | ProcedurePath, input?: unknown, options?: ExecOptions): AsyncIterable<TOutput>;
270
+ /**
271
+ * The path and the input of a reference, with the refs of the input run (hydrated).
272
+ */
273
+ private prepareRef;
274
+ /**
275
+ * The options of a local invocation. The nested calls of the procedure go through this
276
+ * client, so a path without a local handler goes to the transport. The nested calls get the
277
+ * metadata and the signal of the caller: when the caller aborts, its nested work stops. (Before,
278
+ * each nested call started again with no metadata and no signal: deep dive CORE-10.)
279
+ */
280
+ private invokeOptions;
281
+ /**
282
+ * The call options of a remote call for a caller: its metadata as context, and its signal. A
283
+ * deadline goes as the remaining time (`procedure-timeout`, in milliseconds): the server
284
+ * calculates its own deadline, so a difference between two clocks has no effect.
285
+ */
286
+ private remoteCallOptions;
287
+ /**
288
+ * The input for a procedure without a local handler: validated with the local schema when
289
+ * the registry has the procedure, then sent to the transport.
290
+ */
291
+ private remoteInput;
292
+ /**
293
+ * Internal procedure execution (no hydration of the top-level input).
294
+ */
295
+ private execInternal;
296
+ /**
297
+ * Internal streaming execution (no hydration of the top-level input).
298
+ */
299
+ private execStreamInternal;
300
+ /**
301
+ * Make a streaming RPC call.
302
+ *
303
+ * Returns an async iterable that yields response payloads.
304
+ * For single request/response, yields exactly one item.
305
+ *
306
+ * @param method - Method to invoke
307
+ * @param payload - Request payload
308
+ * @param options - Call options (context override, metadata, signal, schema)
309
+ * OR legacy Metadata object for backward compatibility
310
+ * @returns Async iterable of response payloads
311
+ * @throws {ClientError} if any response item has error status (when throwOnError=true)
312
+ *
313
+ * @example
314
+ * ```typescript
315
+ * // Streaming response
316
+ * for await (const event of client.stream(
317
+ * { service: "events", operation: "watch" },
318
+ * { topic: "orders" }
319
+ * )) {
320
+ * console.log(event);
321
+ * }
322
+ *
323
+ * // With context and signal
324
+ * const controller = new AbortController();
325
+ * for await (const event of client.stream(
326
+ * { service: "events", operation: "watch" },
327
+ * { topic: "orders" },
328
+ * { context: { timeout: { overall: 30000 } }, signal: controller.signal }
329
+ * )) {
330
+ * console.log(event);
331
+ * }
332
+ * ```
333
+ */
334
+ stream<TReq, TRes>(method: Method, payload: TReq, options?: CallOptions<TContext> | Metadata): AsyncIterable<TRes>;
335
+ /**
336
+ * Compose middleware chain using universal middleware composition.
337
+ *
338
+ * @returns Composed runner function
339
+ * @private
340
+ */
341
+ private composeMiddleware;
342
+ /**
343
+ * Get transport name.
344
+ */
345
+ get transportName(): string;
346
+ /**
347
+ * Close client and cleanup transport resources.
348
+ */
349
+ close(): Promise<void>;
350
+ /**
351
+ * Cached reference to Zod middleware for schema registration.
352
+ */
353
+ private zodMiddleware;
354
+ /**
355
+ * Register a validation schema for a specific method.
356
+ *
357
+ * Requires `createZodMiddleware()` to be added via `.use()` first.
358
+ * Schemas are used to validate request payloads before sending and
359
+ * response payloads after receiving.
360
+ *
361
+ * @param method - Method to register schema for
362
+ * @param schemas - Input and/or output Zod schemas
363
+ * @returns this (for chaining)
364
+ *
365
+ * @example
366
+ * ```typescript
367
+ * import { z } from "zod";
368
+ *
369
+ * const client = new Client({ transport })
370
+ * .use(createZodMiddleware())
371
+ * .schema({ service: "users", operation: "get" }, {
372
+ * input: z.object({ id: z.string() }),
373
+ * output: z.object({ id: z.string(), name: z.string() }),
374
+ * })
375
+ * .schema({ service: "users", operation: "create" }, {
376
+ * input: UserCreateSchema,
377
+ * output: UserSchema,
378
+ * });
379
+ *
380
+ * // Validation happens automatically on call
381
+ * const user = await client.call(
382
+ * { service: "users", operation: "get" },
383
+ * { id: "123" } // Validated against input schema
384
+ * );
385
+ * // Response validated against output schema
386
+ * ```
387
+ */
388
+ schema<TInput extends ZodLike = ZodLike, TOutput extends ZodLike = ZodLike>(method: Method, schemas: {
389
+ input?: TInput;
390
+ output?: TOutput;
391
+ }): this;
392
+ /**
393
+ * Find Zod middleware in the middleware chain.
394
+ */
395
+ private findZodMiddleware;
396
+ /**
397
+ * Procedure registry for route resolution.
398
+ * Uses global registry by default.
399
+ */
400
+ private procedureRegistry;
401
+ /**
402
+ * Route resolver instance (lazy initialized).
403
+ */
404
+ private routeResolver;
405
+ /**
406
+ * Batch executor instance (lazy initialized).
407
+ */
408
+ private batchExecutor;
409
+ /**
410
+ * Set a custom procedure registry for this client.
411
+ *
412
+ * @param registry - Procedure registry to use
413
+ * @returns this (for chaining)
414
+ */
415
+ useRegistry(registry: ProcedureRegistry): this;
416
+ /**
417
+ * Set the event bus of the local procedures of this client (`ctx.bus`).
418
+ *
419
+ * @param bus - Event bus for the procedures
420
+ * @returns this (for chaining)
421
+ */
422
+ useBus(bus: EventBus): this;
423
+ /**
424
+ * Make a call using the nested route API.
425
+ *
426
+ * This method supports:
427
+ * - Per-call middleware overrides
428
+ * - Batch execution with configurable strategies
429
+ * - Type-safe nested route structures
430
+ *
431
+ * @param request - Call request with route and options
432
+ * @returns Response mirroring the route structure
433
+ *
434
+ * @example
435
+ * ```typescript
436
+ * // Single route call
437
+ * const result = await client.route({
438
+ * route: {
439
+ * collections: {
440
+ * users: {
441
+ * get: { id: "123" }
442
+ * }
443
+ * }
444
+ * }
445
+ * });
446
+ * // result.collections.users.get.data = { id: "123", name: "John" }
447
+ *
448
+ * // Batched call with middleware overrides
449
+ * const results = await client.route({
450
+ * middlewares: {
451
+ * retry: { attempts: 3 },
452
+ * timeout: { ms: 5000 }
453
+ * },
454
+ * batch: { strategy: 'all' },
455
+ * route: {
456
+ * collections: {
457
+ * users: { get: { id: "123" } },
458
+ * orders: { list: { userId: "123" } }
459
+ * },
460
+ * weather: {
461
+ * forecast: { city: "NYC", days: 5 }
462
+ * }
463
+ * }
464
+ * });
465
+ * ```
466
+ */
467
+ route<TRoute extends Route>(request: CallRequest<TRoute>): Promise<CallResponse<TRoute>>;
468
+ /**
469
+ * Make a streaming call using the nested route API.
470
+ *
471
+ * Returns an async iterator that yields results as they complete,
472
+ * plus a promise for the final complete response.
473
+ *
474
+ * @param request - Call request (batch.strategy should be 'stream')
475
+ * @returns Streaming response with iterator and completion promise
476
+ */
477
+ routeStream<TRoute extends Route>(request: CallRequest<TRoute>): StreamingCallResponse<TRoute>;
478
+ /**
479
+ * The results of a route that did not resolve: an error for each leaf that failed, and
480
+ * `SKIPPED` for every other leaf, also the leaves after a validation error. (Before, the leaves
481
+ * after a validation error were missing: deep dive CORE-14.)
482
+ */
483
+ private resolutionFailure;
484
+ /**
485
+ * Get the route resolver (lazy initialization).
486
+ */
487
+ private getRouteResolver;
488
+ /**
489
+ * Get the batch executor (lazy initialization).
490
+ */
491
+ private getBatchExecutor;
492
+ /**
493
+ * Create execution context from call request.
494
+ */
495
+ private createExecutionContext;
496
+ /**
497
+ * Execute a single procedure call.
498
+ * Used by BatchExecutor.
499
+ *
500
+ * The `out` config of the route leaf chooses the result (BUGS-2026-07 H8):
501
+ * - sponge (the default): the value, or the last item of a stream (or `accumulate` of all items);
502
+ * - stream: `data` is an AsyncIterable of the items. The procedure starts when the reader reads.
503
+ * With `bufferSize`, that many items are read ahead of the reader;
504
+ * - handlers: `progress` gets each item but the last, `complete` gets the last, `error` gets the error.
505
+ *
506
+ * A procedure with `outputMode: "batch"` returns an array: sponge gives the array, and stream
507
+ * gives each element.
508
+ */
509
+ private executeProcedure;
510
+ /**
511
+ * The output items of a resolved route: from the local handler, or from the transport.
512
+ */
513
+ private routeItems;
514
+ /** The sponge mode: the last item, or `accumulate` of all items. */
515
+ private sponge;
516
+ /** The handlers mode: `progress` for each item but the last, then `complete`, or `error`. */
517
+ private consumeWithHandlers;
518
+ /** A handler callback gets the data: a function, or a procedure path (the data is its input). */
519
+ private deliver;
520
+ /**
521
+ * Convert procedure path to Method object.
522
+ */
523
+ private pathToMethod;
524
+ }
525
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client/client.ts"],"names":[],"mappings":"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"}