@agirails/sdk 2.0.1-beta → 2.0.2

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 (405) hide show
  1. package/LICENSE +190 -0
  2. package/README.md +116 -108
  3. package/bin/actp +10 -0
  4. package/dist/ACTPClient.d.ts +456 -33
  5. package/dist/ACTPClient.d.ts.map +1 -1
  6. package/dist/ACTPClient.js +477 -93
  7. package/dist/ACTPClient.js.map +1 -1
  8. package/dist/abi/AgentRegistry.json +782 -0
  9. package/dist/abi/EscrowVault.json +106 -38
  10. package/dist/abi/IdentityRegistry.json +316 -0
  11. package/dist/adapters/BaseAdapter.d.ts +231 -0
  12. package/dist/adapters/BaseAdapter.d.ts.map +1 -0
  13. package/dist/adapters/BaseAdapter.js +393 -0
  14. package/dist/adapters/BaseAdapter.js.map +1 -0
  15. package/dist/adapters/BeginnerAdapter.d.ts +152 -0
  16. package/dist/adapters/BeginnerAdapter.d.ts.map +1 -0
  17. package/dist/adapters/BeginnerAdapter.js +168 -0
  18. package/dist/adapters/BeginnerAdapter.js.map +1 -0
  19. package/dist/adapters/IntermediateAdapter.d.ts +211 -0
  20. package/dist/adapters/IntermediateAdapter.d.ts.map +1 -0
  21. package/dist/adapters/IntermediateAdapter.js +260 -0
  22. package/dist/adapters/IntermediateAdapter.js.map +1 -0
  23. package/dist/adapters/index.d.ts +15 -0
  24. package/dist/adapters/index.d.ts.map +1 -0
  25. package/dist/adapters/index.js +26 -0
  26. package/dist/adapters/index.js.map +1 -0
  27. package/dist/builders/DeliveryProofBuilder.d.ts +60 -1
  28. package/dist/builders/DeliveryProofBuilder.d.ts.map +1 -1
  29. package/dist/builders/DeliveryProofBuilder.js +81 -5
  30. package/dist/builders/DeliveryProofBuilder.js.map +1 -1
  31. package/dist/builders/QuoteBuilder.d.ts +101 -0
  32. package/dist/builders/QuoteBuilder.d.ts.map +1 -1
  33. package/dist/builders/QuoteBuilder.js +120 -3
  34. package/dist/builders/QuoteBuilder.js.map +1 -1
  35. package/dist/builders/index.d.ts +4 -0
  36. package/dist/builders/index.d.ts.map +1 -1
  37. package/dist/builders/index.js +4 -0
  38. package/dist/builders/index.js.map +1 -1
  39. package/dist/cli/commands/balance.d.ts +13 -0
  40. package/dist/cli/commands/balance.d.ts.map +1 -0
  41. package/dist/cli/commands/balance.js +89 -0
  42. package/dist/cli/commands/balance.js.map +1 -0
  43. package/dist/cli/commands/batch.d.ts +24 -0
  44. package/dist/cli/commands/batch.d.ts.map +1 -0
  45. package/dist/cli/commands/batch.js +424 -0
  46. package/dist/cli/commands/batch.js.map +1 -0
  47. package/dist/cli/commands/config.d.ts +13 -0
  48. package/dist/cli/commands/config.d.ts.map +1 -0
  49. package/dist/cli/commands/config.js +192 -0
  50. package/dist/cli/commands/config.js.map +1 -0
  51. package/dist/cli/commands/init.d.ts +19 -0
  52. package/dist/cli/commands/init.d.ts.map +1 -0
  53. package/dist/cli/commands/init.js +143 -0
  54. package/dist/cli/commands/init.js.map +1 -0
  55. package/dist/cli/commands/mint.d.ts +13 -0
  56. package/dist/cli/commands/mint.d.ts.map +1 -0
  57. package/dist/cli/commands/mint.js +91 -0
  58. package/dist/cli/commands/mint.js.map +1 -0
  59. package/dist/cli/commands/pay.d.ts +18 -0
  60. package/dist/cli/commands/pay.d.ts.map +1 -0
  61. package/dist/cli/commands/pay.js +87 -0
  62. package/dist/cli/commands/pay.js.map +1 -0
  63. package/dist/cli/commands/simulate.d.ts +32 -0
  64. package/dist/cli/commands/simulate.d.ts.map +1 -0
  65. package/dist/cli/commands/simulate.js +290 -0
  66. package/dist/cli/commands/simulate.js.map +1 -0
  67. package/dist/cli/commands/time.d.ts +29 -0
  68. package/dist/cli/commands/time.d.ts.map +1 -0
  69. package/dist/cli/commands/time.js +252 -0
  70. package/dist/cli/commands/time.js.map +1 -0
  71. package/dist/cli/commands/tx.d.ts +16 -0
  72. package/dist/cli/commands/tx.d.ts.map +1 -0
  73. package/dist/cli/commands/tx.js +379 -0
  74. package/dist/cli/commands/tx.js.map +1 -0
  75. package/dist/cli/commands/watch.d.ts +20 -0
  76. package/dist/cli/commands/watch.d.ts.map +1 -0
  77. package/dist/cli/commands/watch.js +160 -0
  78. package/dist/cli/commands/watch.js.map +1 -0
  79. package/dist/cli/index.d.ts +17 -0
  80. package/dist/cli/index.d.ts.map +1 -0
  81. package/dist/cli/index.js +104 -0
  82. package/dist/cli/index.js.map +1 -0
  83. package/dist/cli/utils/client.d.ts +70 -0
  84. package/dist/cli/utils/client.d.ts.map +1 -0
  85. package/dist/cli/utils/client.js +240 -0
  86. package/dist/cli/utils/client.js.map +1 -0
  87. package/dist/cli/utils/config.d.ts +91 -0
  88. package/dist/cli/utils/config.d.ts.map +1 -0
  89. package/dist/cli/utils/config.js +240 -0
  90. package/dist/cli/utils/config.js.map +1 -0
  91. package/dist/cli/utils/output.d.ts +174 -0
  92. package/dist/cli/utils/output.d.ts.map +1 -0
  93. package/dist/cli/utils/output.js +380 -0
  94. package/dist/cli/utils/output.js.map +1 -0
  95. package/dist/config/networks.d.ts +28 -0
  96. package/dist/config/networks.d.ts.map +1 -1
  97. package/dist/config/networks.js +60 -12
  98. package/dist/config/networks.js.map +1 -1
  99. package/dist/errors/index.d.ts +165 -2
  100. package/dist/errors/index.d.ts.map +1 -1
  101. package/dist/errors/index.js +260 -2
  102. package/dist/errors/index.js.map +1 -1
  103. package/dist/index.d.ts +61 -13
  104. package/dist/index.d.ts.map +1 -1
  105. package/dist/index.js +141 -36
  106. package/dist/index.js.map +1 -1
  107. package/dist/level0/Provider.d.ts +106 -0
  108. package/dist/level0/Provider.d.ts.map +1 -0
  109. package/dist/level0/Provider.js +10 -0
  110. package/dist/level0/Provider.js.map +1 -0
  111. package/dist/level0/ServiceDirectory.d.ts +74 -0
  112. package/dist/level0/ServiceDirectory.d.ts.map +1 -0
  113. package/dist/level0/ServiceDirectory.js +122 -0
  114. package/dist/level0/ServiceDirectory.js.map +1 -0
  115. package/dist/level0/index.d.ts +10 -0
  116. package/dist/level0/index.d.ts.map +1 -0
  117. package/dist/level0/index.js +15 -0
  118. package/dist/level0/index.js.map +1 -0
  119. package/dist/level0/provide.d.ts +51 -0
  120. package/dist/level0/provide.d.ts.map +1 -0
  121. package/dist/level0/provide.js +113 -0
  122. package/dist/level0/provide.js.map +1 -0
  123. package/dist/level0/request.d.ts +53 -0
  124. package/dist/level0/request.d.ts.map +1 -0
  125. package/dist/level0/request.js +462 -0
  126. package/dist/level0/request.js.map +1 -0
  127. package/dist/level1/Agent.d.ts +472 -0
  128. package/dist/level1/Agent.d.ts.map +1 -0
  129. package/dist/level1/Agent.js +1091 -0
  130. package/dist/level1/Agent.js.map +1 -0
  131. package/dist/level1/index.d.ts +10 -0
  132. package/dist/level1/index.d.ts.map +1 -0
  133. package/dist/level1/index.js +30 -0
  134. package/dist/level1/index.js.map +1 -0
  135. package/dist/level1/pricing/PriceCalculator.d.ts +62 -0
  136. package/dist/level1/pricing/PriceCalculator.d.ts.map +1 -0
  137. package/dist/level1/pricing/PriceCalculator.js +237 -0
  138. package/dist/level1/pricing/PriceCalculator.js.map +1 -0
  139. package/dist/level1/pricing/PricingStrategy.d.ts +179 -0
  140. package/dist/level1/pricing/PricingStrategy.d.ts.map +1 -0
  141. package/dist/level1/pricing/PricingStrategy.js +11 -0
  142. package/dist/level1/pricing/PricingStrategy.js.map +1 -0
  143. package/dist/level1/types/Job.d.ts +166 -0
  144. package/dist/level1/types/Job.d.ts.map +1 -0
  145. package/dist/level1/types/Job.js +11 -0
  146. package/dist/level1/types/Job.js.map +1 -0
  147. package/dist/level1/types/Options.d.ts +258 -0
  148. package/dist/level1/types/Options.d.ts.map +1 -0
  149. package/dist/level1/types/Options.js +8 -0
  150. package/dist/level1/types/Options.js.map +1 -0
  151. package/dist/level1/types/index.d.ts +8 -0
  152. package/dist/level1/types/index.d.ts.map +1 -0
  153. package/dist/level1/types/index.js +8 -0
  154. package/dist/level1/types/index.js.map +1 -0
  155. package/dist/protocol/ACTPKernel.d.ts +229 -2
  156. package/dist/protocol/ACTPKernel.d.ts.map +1 -1
  157. package/dist/protocol/ACTPKernel.js +367 -33
  158. package/dist/protocol/ACTPKernel.js.map +1 -1
  159. package/dist/protocol/AgentRegistry.d.ts +177 -0
  160. package/dist/protocol/AgentRegistry.d.ts.map +1 -0
  161. package/dist/protocol/AgentRegistry.js +449 -0
  162. package/dist/protocol/AgentRegistry.js.map +1 -0
  163. package/dist/protocol/DIDManager.d.ts +289 -0
  164. package/dist/protocol/DIDManager.d.ts.map +1 -0
  165. package/dist/protocol/DIDManager.js +481 -0
  166. package/dist/protocol/DIDManager.js.map +1 -0
  167. package/dist/protocol/DIDResolver.d.ts +236 -0
  168. package/dist/protocol/DIDResolver.d.ts.map +1 -0
  169. package/dist/protocol/DIDResolver.js +495 -0
  170. package/dist/protocol/DIDResolver.js.map +1 -0
  171. package/dist/protocol/EASHelper.d.ts +57 -2
  172. package/dist/protocol/EASHelper.d.ts.map +1 -1
  173. package/dist/protocol/EASHelper.js +230 -37
  174. package/dist/protocol/EASHelper.js.map +1 -1
  175. package/dist/protocol/EscrowVault.d.ts +93 -2
  176. package/dist/protocol/EscrowVault.d.ts.map +1 -1
  177. package/dist/protocol/EscrowVault.js +122 -33
  178. package/dist/protocol/EscrowVault.js.map +1 -1
  179. package/dist/protocol/EventMonitor.d.ts +45 -1
  180. package/dist/protocol/EventMonitor.d.ts.map +1 -1
  181. package/dist/protocol/EventMonitor.js +64 -8
  182. package/dist/protocol/EventMonitor.js.map +1 -1
  183. package/dist/protocol/MessageSigner.d.ts +116 -2
  184. package/dist/protocol/MessageSigner.d.ts.map +1 -1
  185. package/dist/protocol/MessageSigner.js +215 -9
  186. package/dist/protocol/MessageSigner.js.map +1 -1
  187. package/dist/protocol/ProofGenerator.d.ts +93 -0
  188. package/dist/protocol/ProofGenerator.d.ts.map +1 -1
  189. package/dist/protocol/ProofGenerator.js +194 -9
  190. package/dist/protocol/ProofGenerator.js.map +1 -1
  191. package/dist/protocol/QuoteBuilder.d.ts +8 -0
  192. package/dist/protocol/QuoteBuilder.d.ts.map +1 -1
  193. package/dist/protocol/QuoteBuilder.js +8 -0
  194. package/dist/protocol/QuoteBuilder.js.map +1 -1
  195. package/dist/runtime/BlockchainRuntime.d.ts +360 -0
  196. package/dist/runtime/BlockchainRuntime.d.ts.map +1 -0
  197. package/dist/runtime/BlockchainRuntime.js +767 -0
  198. package/dist/runtime/BlockchainRuntime.js.map +1 -0
  199. package/dist/runtime/IACTPRuntime.d.ts +271 -0
  200. package/dist/runtime/IACTPRuntime.d.ts.map +1 -0
  201. package/dist/runtime/IACTPRuntime.js +15 -0
  202. package/dist/runtime/IACTPRuntime.js.map +1 -0
  203. package/dist/runtime/MockRuntime.d.ts +445 -0
  204. package/dist/runtime/MockRuntime.d.ts.map +1 -0
  205. package/dist/runtime/MockRuntime.js +1065 -0
  206. package/dist/runtime/MockRuntime.js.map +1 -0
  207. package/dist/runtime/MockStateManager.d.ts +233 -0
  208. package/dist/runtime/MockStateManager.d.ts.map +1 -0
  209. package/dist/runtime/MockStateManager.js +533 -0
  210. package/dist/runtime/MockStateManager.js.map +1 -0
  211. package/dist/runtime/index.d.ts +14 -0
  212. package/dist/runtime/index.d.ts.map +1 -0
  213. package/dist/runtime/index.js +42 -0
  214. package/dist/runtime/index.js.map +1 -0
  215. package/dist/runtime/types/MockState.d.ts +167 -0
  216. package/dist/runtime/types/MockState.d.ts.map +1 -0
  217. package/dist/runtime/types/MockState.js +43 -0
  218. package/dist/runtime/types/MockState.js.map +1 -0
  219. package/dist/types/agent.d.ts +76 -0
  220. package/dist/types/agent.d.ts.map +1 -0
  221. package/dist/types/agent.js +8 -0
  222. package/dist/types/agent.js.map +1 -0
  223. package/dist/types/did.d.ts +192 -0
  224. package/dist/types/did.d.ts.map +1 -0
  225. package/dist/types/did.js +38 -0
  226. package/dist/types/did.js.map +1 -0
  227. package/dist/types/eip712.d.ts +34 -0
  228. package/dist/types/eip712.d.ts.map +1 -1
  229. package/dist/types/eip712.js +31 -5
  230. package/dist/types/eip712.js.map +1 -1
  231. package/dist/types/escrow.d.ts +17 -10
  232. package/dist/types/escrow.d.ts.map +1 -1
  233. package/dist/types/index.d.ts +5 -0
  234. package/dist/types/index.d.ts.map +1 -1
  235. package/dist/types/index.js +8 -0
  236. package/dist/types/index.js.map +1 -1
  237. package/dist/types/message.d.ts +32 -0
  238. package/dist/types/message.d.ts.map +1 -1
  239. package/dist/types/message.js +4 -0
  240. package/dist/types/message.js.map +1 -1
  241. package/dist/types/state.d.ts +28 -0
  242. package/dist/types/state.d.ts.map +1 -1
  243. package/dist/types/state.js +37 -6
  244. package/dist/types/state.js.map +1 -1
  245. package/dist/types/transaction.d.ts +17 -0
  246. package/dist/types/transaction.d.ts.map +1 -1
  247. package/dist/utils/ErrorRecoveryGuide.d.ts +125 -0
  248. package/dist/utils/ErrorRecoveryGuide.d.ts.map +1 -0
  249. package/dist/utils/ErrorRecoveryGuide.js +579 -0
  250. package/dist/utils/ErrorRecoveryGuide.js.map +1 -0
  251. package/dist/utils/Helpers.d.ts +453 -0
  252. package/dist/utils/Helpers.d.ts.map +1 -0
  253. package/dist/utils/Helpers.js +623 -0
  254. package/dist/utils/Helpers.js.map +1 -0
  255. package/dist/utils/IPFSClient.d.ts +113 -0
  256. package/dist/utils/IPFSClient.d.ts.map +1 -1
  257. package/dist/utils/IPFSClient.js +128 -7
  258. package/dist/utils/IPFSClient.js.map +1 -1
  259. package/dist/utils/Logger.d.ts +195 -0
  260. package/dist/utils/Logger.d.ts.map +1 -0
  261. package/dist/utils/Logger.js +382 -0
  262. package/dist/utils/Logger.js.map +1 -0
  263. package/dist/utils/NonceManager.d.ts +234 -1
  264. package/dist/utils/NonceManager.d.ts.map +1 -1
  265. package/dist/utils/NonceManager.js +372 -7
  266. package/dist/utils/NonceManager.js.map +1 -1
  267. package/dist/utils/RateLimiter.d.ts +253 -0
  268. package/dist/utils/RateLimiter.d.ts.map +1 -0
  269. package/dist/utils/RateLimiter.js +424 -0
  270. package/dist/utils/RateLimiter.js.map +1 -0
  271. package/dist/utils/ReceivedNonceTracker.d.ts +175 -0
  272. package/dist/utils/ReceivedNonceTracker.d.ts.map +1 -1
  273. package/dist/utils/ReceivedNonceTracker.js +261 -5
  274. package/dist/utils/ReceivedNonceTracker.js.map +1 -1
  275. package/dist/utils/SDKLifecycle.d.ts +156 -0
  276. package/dist/utils/SDKLifecycle.d.ts.map +1 -0
  277. package/dist/utils/SDKLifecycle.js +347 -0
  278. package/dist/utils/SDKLifecycle.js.map +1 -0
  279. package/dist/utils/SecureNonce.d.ts +57 -0
  280. package/dist/utils/SecureNonce.d.ts.map +1 -0
  281. package/dist/utils/SecureNonce.js +80 -0
  282. package/dist/utils/SecureNonce.js.map +1 -0
  283. package/dist/utils/Semaphore.d.ts +123 -0
  284. package/dist/utils/Semaphore.d.ts.map +1 -0
  285. package/dist/utils/Semaphore.js +247 -0
  286. package/dist/utils/Semaphore.js.map +1 -0
  287. package/dist/utils/UsedAttestationTracker.d.ts +167 -0
  288. package/dist/utils/UsedAttestationTracker.d.ts.map +1 -0
  289. package/dist/utils/UsedAttestationTracker.js +309 -0
  290. package/dist/utils/UsedAttestationTracker.js.map +1 -0
  291. package/dist/utils/canonicalJson.d.ts +22 -0
  292. package/dist/utils/canonicalJson.d.ts.map +1 -1
  293. package/dist/utils/canonicalJson.js +26 -3
  294. package/dist/utils/canonicalJson.js.map +1 -1
  295. package/dist/utils/computeTypeHash.d.ts +14 -0
  296. package/dist/utils/computeTypeHash.d.ts.map +1 -1
  297. package/dist/utils/computeTypeHash.js +19 -2
  298. package/dist/utils/computeTypeHash.js.map +1 -1
  299. package/dist/utils/fsSafe.d.ts +14 -0
  300. package/dist/utils/fsSafe.d.ts.map +1 -0
  301. package/dist/utils/fsSafe.js +89 -0
  302. package/dist/utils/fsSafe.js.map +1 -0
  303. package/dist/utils/index.d.ts +15 -0
  304. package/dist/utils/index.d.ts.map +1 -0
  305. package/dist/utils/index.js +51 -0
  306. package/dist/utils/index.js.map +1 -0
  307. package/dist/utils/security.d.ts +147 -0
  308. package/dist/utils/security.d.ts.map +1 -0
  309. package/dist/utils/security.js +391 -0
  310. package/dist/utils/security.js.map +1 -0
  311. package/dist/utils/validation.d.ts +40 -0
  312. package/dist/utils/validation.d.ts.map +1 -1
  313. package/dist/utils/validation.js +184 -7
  314. package/dist/utils/validation.js.map +1 -1
  315. package/package.json +54 -37
  316. package/src/ACTPClient.ts +692 -178
  317. package/src/abi/AgentRegistry.json +782 -0
  318. package/src/abi/EscrowVault.json +106 -38
  319. package/src/abi/IdentityRegistry.json +316 -0
  320. package/src/adapters/BaseAdapter.ts +473 -0
  321. package/src/adapters/BeginnerAdapter.ts +232 -0
  322. package/src/adapters/IntermediateAdapter.ts +316 -0
  323. package/src/adapters/index.ts +25 -0
  324. package/src/builders/DeliveryProofBuilder.ts +3 -2
  325. package/src/cli/commands/balance.ts +110 -0
  326. package/src/cli/commands/batch.ts +487 -0
  327. package/src/cli/commands/config.ts +231 -0
  328. package/src/cli/commands/init.ts +161 -0
  329. package/src/cli/commands/mint.ts +116 -0
  330. package/src/cli/commands/pay.ts +113 -0
  331. package/src/cli/commands/simulate.ts +345 -0
  332. package/src/cli/commands/time.ts +303 -0
  333. package/src/cli/commands/tx.ts +448 -0
  334. package/src/cli/commands/watch.ts +211 -0
  335. package/src/cli/index.ts +116 -0
  336. package/src/cli/utils/client.ts +249 -0
  337. package/src/cli/utils/config.ts +282 -0
  338. package/src/cli/utils/output.ts +465 -0
  339. package/src/config/networks.ts +32 -9
  340. package/src/errors/index.ts +298 -1
  341. package/src/index.ts +207 -71
  342. package/src/level0/Provider.ts +117 -0
  343. package/src/level0/ServiceDirectory.ts +131 -0
  344. package/src/level0/index.ts +10 -0
  345. package/src/level0/provide.ts +131 -0
  346. package/src/level0/request.ts +494 -0
  347. package/src/level1/Agent.ts +1432 -0
  348. package/src/level1/index.ts +10 -0
  349. package/src/level1/pricing/PriceCalculator.ts +255 -0
  350. package/src/level1/pricing/PricingStrategy.ts +198 -0
  351. package/src/level1/types/Job.ts +179 -0
  352. package/src/level1/types/Options.ts +291 -0
  353. package/src/level1/types/index.ts +8 -0
  354. package/src/protocol/ACTPKernel.ts +175 -23
  355. package/src/protocol/AgentRegistry.ts +559 -0
  356. package/src/protocol/DIDManager.ts +629 -0
  357. package/src/protocol/DIDResolver.ts +554 -0
  358. package/src/protocol/EASHelper.ts +230 -46
  359. package/src/protocol/EscrowVault.ts +68 -50
  360. package/src/protocol/EventMonitor.ts +44 -15
  361. package/src/protocol/MessageSigner.ts +193 -13
  362. package/src/protocol/ProofGenerator.ts +223 -4
  363. package/src/runtime/BlockchainRuntime.ts +993 -0
  364. package/src/runtime/IACTPRuntime.ts +284 -0
  365. package/src/runtime/MockRuntime.ts +1244 -0
  366. package/src/runtime/MockStateManager.ts +576 -0
  367. package/src/runtime/index.ts +25 -0
  368. package/src/runtime/types/MockState.ts +227 -0
  369. package/src/types/agent.ts +79 -0
  370. package/src/types/did.ts +223 -0
  371. package/src/types/escrow.ts +12 -11
  372. package/src/types/index.ts +5 -1
  373. package/src/types/state.ts +12 -3
  374. package/src/types/transaction.ts +4 -1
  375. package/src/utils/ErrorRecoveryGuide.ts +675 -0
  376. package/src/utils/Helpers.ts +688 -0
  377. package/src/utils/IPFSClient.ts +122 -5
  378. package/src/utils/Logger.ts +484 -0
  379. package/src/utils/NonceManager.ts +305 -8
  380. package/src/utils/RateLimiter.ts +534 -0
  381. package/src/utils/ReceivedNonceTracker.ts +170 -0
  382. package/src/utils/SDKLifecycle.ts +416 -0
  383. package/src/utils/SecureNonce.ts +78 -0
  384. package/src/utils/Semaphore.ts +276 -0
  385. package/src/utils/UsedAttestationTracker.ts +387 -0
  386. package/src/utils/fsSafe.ts +75 -0
  387. package/src/utils/index.ts +80 -0
  388. package/src/utils/security.ts +418 -0
  389. package/src/utils/validation.ts +164 -0
  390. package/src/__tests__/ProofGenerator.test.ts +0 -124
  391. package/src/__tests__/QuoteBuilder.test.ts +0 -516
  392. package/src/__tests__/StateMachine.test.ts +0 -82
  393. package/src/__tests__/builders/DeliveryProofBuilder.test.ts +0 -581
  394. package/src/__tests__/integration/ACTPClient.test.ts +0 -263
  395. package/src/__tests__/integration.test.ts +0 -289
  396. package/src/__tests__/protocol/EASHelper.test.ts +0 -472
  397. package/src/__tests__/protocol/EventMonitor.test.ts +0 -382
  398. package/src/__tests__/security/ACTPKernel.security.test.ts +0 -1167
  399. package/src/__tests__/security/EscrowVault.security.test.ts +0 -570
  400. package/src/__tests__/security/MessageSigner.security.test.ts +0 -286
  401. package/src/__tests__/security/NonceReplay.security.test.ts +0 -501
  402. package/src/__tests__/security/validation.security.test.ts +0 -376
  403. package/src/__tests__/utils/IPFSClient.test.ts +0 -262
  404. package/src/__tests__/utils/NonceManager.test.ts +0 -205
  405. package/src/__tests__/utils/canonicalJson.test.ts +0 -153
package/dist/index.js CHANGED
@@ -1,54 +1,155 @@
1
1
  "use strict";
2
+ /**
3
+ * AGIRAILS SDK - Agent Commerce Transaction Protocol
4
+ *
5
+ * This is the main entry point for the AGIRAILS SDK.
6
+ * The recommended way to use this SDK is through the ACTPClient class.
7
+ *
8
+ * @packageDocumentation
9
+ *
10
+ * @example
11
+ * ```typescript
12
+ * import { ACTPClient } from '@agirails/sdk';
13
+ *
14
+ * // Create client in mock mode
15
+ * const client = await ACTPClient.create({
16
+ * mode: 'mock',
17
+ * requesterAddress: '0x1234...',
18
+ * });
19
+ *
20
+ * // Mint some tokens for testing
21
+ * await client.mintTokens(client.getAddress(), '10000000000');
22
+ *
23
+ * // Create a payment
24
+ * const result = await client.beginner.pay({
25
+ * to: '0xProvider...',
26
+ * amount: '100',
27
+ * });
28
+ *
29
+ * console.log('Transaction ID:', result.txId);
30
+ * ```
31
+ */
2
32
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isValidNetwork = exports.getNetwork = exports.NETWORKS = exports.InvalidAmountError = exports.InvalidAddressError = exports.ValidationError = exports.NetworkError = exports.TransactionRevertedError = exports.SignatureVerificationError = exports.InvalidStateTransitionError = exports.DeadlineExpiredError = exports.TransactionNotFoundError = exports.InsufficientFundsError = exports.ACTPError = exports.validateTxId = exports.validateDisputeWindow = exports.validateDeadline = exports.validateAmount = exports.validateAddress = exports.createReceivedNonceTracker = exports.SetBasedReceivedNonceTracker = exports.InMemoryReceivedNonceTracker = exports.createNonceManager = exports.DIDScopedNonceManager = exports.InMemoryNonceManager = exports.IPFS_CONFIGS = exports.createIPFSClient = exports.IPFSHTTPClientImpl = exports.computeResultHash = exports.computeCanonicalHash = exports.canonicalJsonStringify = exports.AGIRAILS_DELIVERY_SCHEMA_UID = exports.DeliveryProofBuilder = exports.deliveryProofDataFromProof = exports.DeliveryProofTypes = exports.AIP4DeliveryProofTypes = exports.StateMachine = exports.State = exports.QuoteBuilder = exports.EASHelper = exports.MessageSigner = exports.ProofGenerator = exports.EventMonitor = exports.EscrowVault = exports.ACTPKernel = exports.ACTPClient = void 0;
33
+ exports.DisputeWindow = exports.StateHelpers = exports.Bytes32 = exports.Address = exports.Deadline = exports.USDC = exports.createUsedAttestationTracker = exports.FileBasedUsedAttestationTracker = exports.InMemoryUsedAttestationTracker = exports.RateLimiter = exports.Semaphore = exports.generateSecureNonces = exports.isValidNonce = exports.generateSecureNonce = exports.InMemoryReceivedNonceTracker = exports.InMemoryNonceManager = exports.getNetwork = exports.DeliveryProofBuilder = exports.QuoteBuilder = exports.DIDResolver = exports.DIDManager = exports.AgentRegistry = exports.EASHelper = exports.ProofGenerator = exports.MessageSigner = exports.EventMonitor = exports.EscrowVault = exports.ACTPKernel = exports.MOCK_STATE_DEFAULTS = exports.TransactionStateValue = exports.BlockchainRuntime = exports.MockStateLockError = exports.MockStateVersionError = exports.MockStateCorruptedError = exports.MockStateManager = exports.DisputeWindowActiveError = exports.ContractPausedError = exports.DeadlinePassedError = exports.EscrowNotFoundError = exports.InsufficientBalanceError = exports.MockRuntime = exports.IntermediateAdapter = exports.BeginnerAdapter = exports.MAX_DEADLINE_DAYS = exports.MAX_DEADLINE_HOURS = exports.MIN_AMOUNT_WEI = exports.DEFAULT_DEADLINE_SECONDS = exports.DEFAULT_DISPUTE_WINDOW_SECONDS = exports.BaseAdapter = exports.ACTPClient = void 0;
34
+ exports.AgentLifecycleError = exports.ServiceConfigError = exports.DisputeRaisedError = exports.DeliveryFailedError = exports.ProviderRejectedError = exports.TimeoutError = exports.NoProviderFoundError = exports.InvalidAmountError = exports.InvalidAddressError = exports.ValidationError = exports.NetworkError = exports.TransactionRevertedError = exports.SignatureVerificationError = exports.InvalidStateTransitionError = exports.DeadlineExpiredError = exports.TransactionNotFoundError = exports.InsufficientFundsError = exports.ACTPError = exports.DEFAULT_PRICING_STRATEGY = exports.calculatePrice = exports.Agent = exports.serviceDirectory = exports.request = exports.provide = exports.hashServiceMetadata = exports.ServiceHash = exports.shortenAddress = exports.formatUSDC = exports.parseUSDC = void 0;
35
+ // =============================================================================
36
+ // Primary API - ACTPClient
37
+ // =============================================================================
4
38
  var ACTPClient_1 = require("./ACTPClient");
5
39
  Object.defineProperty(exports, "ACTPClient", { enumerable: true, get: function () { return ACTPClient_1.ACTPClient; } });
40
+ // =============================================================================
41
+ // Adapter Layer - Three-Level API
42
+ // =============================================================================
43
+ var BaseAdapter_1 = require("./adapters/BaseAdapter");
44
+ Object.defineProperty(exports, "BaseAdapter", { enumerable: true, get: function () { return BaseAdapter_1.BaseAdapter; } });
45
+ Object.defineProperty(exports, "DEFAULT_DISPUTE_WINDOW_SECONDS", { enumerable: true, get: function () { return BaseAdapter_1.DEFAULT_DISPUTE_WINDOW_SECONDS; } });
46
+ Object.defineProperty(exports, "DEFAULT_DEADLINE_SECONDS", { enumerable: true, get: function () { return BaseAdapter_1.DEFAULT_DEADLINE_SECONDS; } });
47
+ Object.defineProperty(exports, "MIN_AMOUNT_WEI", { enumerable: true, get: function () { return BaseAdapter_1.MIN_AMOUNT_WEI; } });
48
+ Object.defineProperty(exports, "MAX_DEADLINE_HOURS", { enumerable: true, get: function () { return BaseAdapter_1.MAX_DEADLINE_HOURS; } });
49
+ Object.defineProperty(exports, "MAX_DEADLINE_DAYS", { enumerable: true, get: function () { return BaseAdapter_1.MAX_DEADLINE_DAYS; } });
50
+ var BeginnerAdapter_1 = require("./adapters/BeginnerAdapter");
51
+ Object.defineProperty(exports, "BeginnerAdapter", { enumerable: true, get: function () { return BeginnerAdapter_1.BeginnerAdapter; } });
52
+ var IntermediateAdapter_1 = require("./adapters/IntermediateAdapter");
53
+ Object.defineProperty(exports, "IntermediateAdapter", { enumerable: true, get: function () { return IntermediateAdapter_1.IntermediateAdapter; } });
54
+ // MockRuntime (for local development)
55
+ var MockRuntime_1 = require("./runtime/MockRuntime");
56
+ Object.defineProperty(exports, "MockRuntime", { enumerable: true, get: function () { return MockRuntime_1.MockRuntime; } });
57
+ Object.defineProperty(exports, "InsufficientBalanceError", { enumerable: true, get: function () { return MockRuntime_1.InsufficientBalanceError; } });
58
+ Object.defineProperty(exports, "EscrowNotFoundError", { enumerable: true, get: function () { return MockRuntime_1.EscrowNotFoundError; } });
59
+ Object.defineProperty(exports, "DeadlinePassedError", { enumerable: true, get: function () { return MockRuntime_1.DeadlinePassedError; } });
60
+ Object.defineProperty(exports, "ContractPausedError", { enumerable: true, get: function () { return MockRuntime_1.ContractPausedError; } });
61
+ Object.defineProperty(exports, "DisputeWindowActiveError", { enumerable: true, get: function () { return MockRuntime_1.DisputeWindowActiveError; } });
62
+ // MockStateManager (for custom state management)
63
+ var MockStateManager_1 = require("./runtime/MockStateManager");
64
+ Object.defineProperty(exports, "MockStateManager", { enumerable: true, get: function () { return MockStateManager_1.MockStateManager; } });
65
+ Object.defineProperty(exports, "MockStateCorruptedError", { enumerable: true, get: function () { return MockStateManager_1.MockStateCorruptedError; } });
66
+ Object.defineProperty(exports, "MockStateVersionError", { enumerable: true, get: function () { return MockStateManager_1.MockStateVersionError; } });
67
+ Object.defineProperty(exports, "MockStateLockError", { enumerable: true, get: function () { return MockStateManager_1.MockStateLockError; } });
68
+ // BlockchainRuntime (for testnet/mainnet)
69
+ var BlockchainRuntime_1 = require("./runtime/BlockchainRuntime");
70
+ Object.defineProperty(exports, "BlockchainRuntime", { enumerable: true, get: function () { return BlockchainRuntime_1.BlockchainRuntime; } });
71
+ // =============================================================================
72
+ // Type Exports
73
+ // =============================================================================
74
+ var MockState_1 = require("./runtime/types/MockState");
75
+ Object.defineProperty(exports, "TransactionStateValue", { enumerable: true, get: function () { return MockState_1.TransactionStateValue; } });
76
+ Object.defineProperty(exports, "MOCK_STATE_DEFAULTS", { enumerable: true, get: function () { return MockState_1.MOCK_STATE_DEFAULTS; } });
77
+ // =============================================================================
78
+ // Protocol Layer (from sdk-js merge)
79
+ // =============================================================================
80
+ // Protocol modules
6
81
  var ACTPKernel_1 = require("./protocol/ACTPKernel");
7
82
  Object.defineProperty(exports, "ACTPKernel", { enumerable: true, get: function () { return ACTPKernel_1.ACTPKernel; } });
8
83
  var EscrowVault_1 = require("./protocol/EscrowVault");
9
84
  Object.defineProperty(exports, "EscrowVault", { enumerable: true, get: function () { return EscrowVault_1.EscrowVault; } });
10
85
  var EventMonitor_1 = require("./protocol/EventMonitor");
11
86
  Object.defineProperty(exports, "EventMonitor", { enumerable: true, get: function () { return EventMonitor_1.EventMonitor; } });
12
- var ProofGenerator_1 = require("./protocol/ProofGenerator");
13
- Object.defineProperty(exports, "ProofGenerator", { enumerable: true, get: function () { return ProofGenerator_1.ProofGenerator; } });
14
87
  var MessageSigner_1 = require("./protocol/MessageSigner");
15
88
  Object.defineProperty(exports, "MessageSigner", { enumerable: true, get: function () { return MessageSigner_1.MessageSigner; } });
89
+ var ProofGenerator_1 = require("./protocol/ProofGenerator");
90
+ Object.defineProperty(exports, "ProofGenerator", { enumerable: true, get: function () { return ProofGenerator_1.ProofGenerator; } });
16
91
  var EASHelper_1 = require("./protocol/EASHelper");
17
92
  Object.defineProperty(exports, "EASHelper", { enumerable: true, get: function () { return EASHelper_1.EASHelper; } });
18
- var QuoteBuilder_1 = require("./protocol/QuoteBuilder");
93
+ var AgentRegistry_1 = require("./protocol/AgentRegistry");
94
+ Object.defineProperty(exports, "AgentRegistry", { enumerable: true, get: function () { return AgentRegistry_1.AgentRegistry; } });
95
+ var DIDManager_1 = require("./protocol/DIDManager");
96
+ Object.defineProperty(exports, "DIDManager", { enumerable: true, get: function () { return DIDManager_1.DIDManager; } });
97
+ var DIDResolver_1 = require("./protocol/DIDResolver");
98
+ Object.defineProperty(exports, "DIDResolver", { enumerable: true, get: function () { return DIDResolver_1.DIDResolver; } });
99
+ // Builders
100
+ var QuoteBuilder_1 = require("./builders/QuoteBuilder");
19
101
  Object.defineProperty(exports, "QuoteBuilder", { enumerable: true, get: function () { return QuoteBuilder_1.QuoteBuilder; } });
20
- var types_1 = require("./types");
21
- Object.defineProperty(exports, "State", { enumerable: true, get: function () { return types_1.State; } });
22
- Object.defineProperty(exports, "StateMachine", { enumerable: true, get: function () { return types_1.StateMachine; } });
23
- var eip712_1 = require("./types/eip712");
24
- Object.defineProperty(exports, "AIP4DeliveryProofTypes", { enumerable: true, get: function () { return eip712_1.AIP4DeliveryProofTypes; } });
25
- Object.defineProperty(exports, "DeliveryProofTypes", { enumerable: true, get: function () { return eip712_1.DeliveryProofTypes; } });
26
- Object.defineProperty(exports, "deliveryProofDataFromProof", { enumerable: true, get: function () { return eip712_1.deliveryProofDataFromProof; } });
27
- var builders_1 = require("./builders");
28
- Object.defineProperty(exports, "DeliveryProofBuilder", { enumerable: true, get: function () { return builders_1.DeliveryProofBuilder; } });
29
- Object.defineProperty(exports, "AGIRAILS_DELIVERY_SCHEMA_UID", { enumerable: true, get: function () { return builders_1.AGIRAILS_DELIVERY_SCHEMA_UID; } });
30
- var canonicalJson_1 = require("./utils/canonicalJson");
31
- Object.defineProperty(exports, "canonicalJsonStringify", { enumerable: true, get: function () { return canonicalJson_1.canonicalJsonStringify; } });
32
- Object.defineProperty(exports, "computeCanonicalHash", { enumerable: true, get: function () { return canonicalJson_1.computeCanonicalHash; } });
33
- Object.defineProperty(exports, "computeResultHash", { enumerable: true, get: function () { return canonicalJson_1.computeResultHash; } });
34
- var IPFSClient_1 = require("./utils/IPFSClient");
35
- Object.defineProperty(exports, "IPFSHTTPClientImpl", { enumerable: true, get: function () { return IPFSClient_1.IPFSHTTPClientImpl; } });
36
- Object.defineProperty(exports, "createIPFSClient", { enumerable: true, get: function () { return IPFSClient_1.createIPFSClient; } });
37
- Object.defineProperty(exports, "IPFS_CONFIGS", { enumerable: true, get: function () { return IPFSClient_1.IPFS_CONFIGS; } });
102
+ var DeliveryProofBuilder_1 = require("./builders/DeliveryProofBuilder");
103
+ Object.defineProperty(exports, "DeliveryProofBuilder", { enumerable: true, get: function () { return DeliveryProofBuilder_1.DeliveryProofBuilder; } });
104
+ // Config
105
+ var networks_1 = require("./config/networks");
106
+ Object.defineProperty(exports, "getNetwork", { enumerable: true, get: function () { return networks_1.getNetwork; } });
107
+ // Utils
38
108
  var NonceManager_1 = require("./utils/NonceManager");
39
109
  Object.defineProperty(exports, "InMemoryNonceManager", { enumerable: true, get: function () { return NonceManager_1.InMemoryNonceManager; } });
40
- Object.defineProperty(exports, "DIDScopedNonceManager", { enumerable: true, get: function () { return NonceManager_1.DIDScopedNonceManager; } });
41
- Object.defineProperty(exports, "createNonceManager", { enumerable: true, get: function () { return NonceManager_1.createNonceManager; } });
42
110
  var ReceivedNonceTracker_1 = require("./utils/ReceivedNonceTracker");
43
111
  Object.defineProperty(exports, "InMemoryReceivedNonceTracker", { enumerable: true, get: function () { return ReceivedNonceTracker_1.InMemoryReceivedNonceTracker; } });
44
- Object.defineProperty(exports, "SetBasedReceivedNonceTracker", { enumerable: true, get: function () { return ReceivedNonceTracker_1.SetBasedReceivedNonceTracker; } });
45
- Object.defineProperty(exports, "createReceivedNonceTracker", { enumerable: true, get: function () { return ReceivedNonceTracker_1.createReceivedNonceTracker; } });
46
- var validation_1 = require("./utils/validation");
47
- Object.defineProperty(exports, "validateAddress", { enumerable: true, get: function () { return validation_1.validateAddress; } });
48
- Object.defineProperty(exports, "validateAmount", { enumerable: true, get: function () { return validation_1.validateAmount; } });
49
- Object.defineProperty(exports, "validateDeadline", { enumerable: true, get: function () { return validation_1.validateDeadline; } });
50
- Object.defineProperty(exports, "validateDisputeWindow", { enumerable: true, get: function () { return validation_1.validateDisputeWindow; } });
51
- Object.defineProperty(exports, "validateTxId", { enumerable: true, get: function () { return validation_1.validateTxId; } });
112
+ var SecureNonce_1 = require("./utils/SecureNonce");
113
+ Object.defineProperty(exports, "generateSecureNonce", { enumerable: true, get: function () { return SecureNonce_1.generateSecureNonce; } });
114
+ Object.defineProperty(exports, "isValidNonce", { enumerable: true, get: function () { return SecureNonce_1.isValidNonce; } });
115
+ Object.defineProperty(exports, "generateSecureNonces", { enumerable: true, get: function () { return SecureNonce_1.generateSecureNonces; } });
116
+ var Semaphore_1 = require("./utils/Semaphore");
117
+ Object.defineProperty(exports, "Semaphore", { enumerable: true, get: function () { return Semaphore_1.Semaphore; } });
118
+ Object.defineProperty(exports, "RateLimiter", { enumerable: true, get: function () { return Semaphore_1.RateLimiter; } });
119
+ var UsedAttestationTracker_1 = require("./utils/UsedAttestationTracker");
120
+ Object.defineProperty(exports, "InMemoryUsedAttestationTracker", { enumerable: true, get: function () { return UsedAttestationTracker_1.InMemoryUsedAttestationTracker; } });
121
+ Object.defineProperty(exports, "FileBasedUsedAttestationTracker", { enumerable: true, get: function () { return UsedAttestationTracker_1.FileBasedUsedAttestationTracker; } });
122
+ Object.defineProperty(exports, "createUsedAttestationTracker", { enumerable: true, get: function () { return UsedAttestationTracker_1.createUsedAttestationTracker; } });
123
+ // Helper utilities
124
+ var Helpers_1 = require("./utils/Helpers");
125
+ Object.defineProperty(exports, "USDC", { enumerable: true, get: function () { return Helpers_1.USDC; } });
126
+ Object.defineProperty(exports, "Deadline", { enumerable: true, get: function () { return Helpers_1.Deadline; } });
127
+ Object.defineProperty(exports, "Address", { enumerable: true, get: function () { return Helpers_1.Address; } });
128
+ Object.defineProperty(exports, "Bytes32", { enumerable: true, get: function () { return Helpers_1.Bytes32; } });
129
+ Object.defineProperty(exports, "StateHelpers", { enumerable: true, get: function () { return Helpers_1.State; } });
130
+ Object.defineProperty(exports, "DisputeWindow", { enumerable: true, get: function () { return Helpers_1.DisputeWindow; } });
131
+ Object.defineProperty(exports, "parseUSDC", { enumerable: true, get: function () { return Helpers_1.parseUSDC; } });
132
+ Object.defineProperty(exports, "formatUSDC", { enumerable: true, get: function () { return Helpers_1.formatUSDC; } });
133
+ Object.defineProperty(exports, "shortenAddress", { enumerable: true, get: function () { return Helpers_1.shortenAddress; } });
134
+ Object.defineProperty(exports, "ServiceHash", { enumerable: true, get: function () { return Helpers_1.ServiceHash; } });
135
+ Object.defineProperty(exports, "hashServiceMetadata", { enumerable: true, get: function () { return Helpers_1.hashServiceMetadata; } });
136
+ // =============================================================================
137
+ // Basic API - Simple provide/request interface
138
+ // =============================================================================
139
+ var level0_1 = require("./level0");
140
+ Object.defineProperty(exports, "provide", { enumerable: true, get: function () { return level0_1.provide; } });
141
+ Object.defineProperty(exports, "request", { enumerable: true, get: function () { return level0_1.request; } });
142
+ Object.defineProperty(exports, "serviceDirectory", { enumerable: true, get: function () { return level0_1.serviceDirectory; } });
143
+ // =============================================================================
144
+ // Standard API - Agent-based interface
145
+ // =============================================================================
146
+ var level1_1 = require("./level1");
147
+ Object.defineProperty(exports, "Agent", { enumerable: true, get: function () { return level1_1.Agent; } });
148
+ Object.defineProperty(exports, "calculatePrice", { enumerable: true, get: function () { return level1_1.calculatePrice; } });
149
+ Object.defineProperty(exports, "DEFAULT_PRICING_STRATEGY", { enumerable: true, get: function () { return level1_1.DEFAULT_PRICING_STRATEGY; } });
150
+ // =============================================================================
151
+ // Enhanced Error Exports
152
+ // =============================================================================
52
153
  var errors_1 = require("./errors");
53
154
  Object.defineProperty(exports, "ACTPError", { enumerable: true, get: function () { return errors_1.ACTPError; } });
54
155
  Object.defineProperty(exports, "InsufficientFundsError", { enumerable: true, get: function () { return errors_1.InsufficientFundsError; } });
@@ -61,8 +162,12 @@ Object.defineProperty(exports, "NetworkError", { enumerable: true, get: function
61
162
  Object.defineProperty(exports, "ValidationError", { enumerable: true, get: function () { return errors_1.ValidationError; } });
62
163
  Object.defineProperty(exports, "InvalidAddressError", { enumerable: true, get: function () { return errors_1.InvalidAddressError; } });
63
164
  Object.defineProperty(exports, "InvalidAmountError", { enumerable: true, get: function () { return errors_1.InvalidAmountError; } });
64
- var networks_1 = require("./config/networks");
65
- Object.defineProperty(exports, "NETWORKS", { enumerable: true, get: function () { return networks_1.NETWORKS; } });
66
- Object.defineProperty(exports, "getNetwork", { enumerable: true, get: function () { return networks_1.getNetwork; } });
67
- Object.defineProperty(exports, "isValidNetwork", { enumerable: true, get: function () { return networks_1.isValidNetwork; } });
165
+ // Basic/Standard API errors
166
+ Object.defineProperty(exports, "NoProviderFoundError", { enumerable: true, get: function () { return errors_1.NoProviderFoundError; } });
167
+ Object.defineProperty(exports, "TimeoutError", { enumerable: true, get: function () { return errors_1.TimeoutError; } });
168
+ Object.defineProperty(exports, "ProviderRejectedError", { enumerable: true, get: function () { return errors_1.ProviderRejectedError; } });
169
+ Object.defineProperty(exports, "DeliveryFailedError", { enumerable: true, get: function () { return errors_1.DeliveryFailedError; } });
170
+ Object.defineProperty(exports, "DisputeRaisedError", { enumerable: true, get: function () { return errors_1.DisputeRaisedError; } });
171
+ Object.defineProperty(exports, "ServiceConfigError", { enumerable: true, get: function () { return errors_1.ServiceConfigError; } });
172
+ Object.defineProperty(exports, "AgentLifecycleError", { enumerable: true, get: function () { return errors_1.AgentLifecycleError; } });
68
173
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAMA,2CAA4D;AAAnD,wGAAA,UAAU,OAAA;AAGnB,oDAAmD;AAA1C,wGAAA,UAAU,OAAA;AACnB,sDAAqD;AAA5C,0GAAA,WAAW,OAAA;AACpB,wDAAuD;AAA9C,4GAAA,YAAY,OAAA;AACrB,4DAA2D;AAAlD,gHAAA,cAAc,OAAA;AACvB,0DAAyD;AAAhD,8GAAA,aAAa,OAAA;AACtB,kDAA4D;AAAnD,sGAAA,SAAS,OAAA;AAClB,wDAAkF;AAAzE,4GAAA,YAAY,OAAA;AAGrB,iCAciB;AAbf,8FAAA,KAAK,OAAA;AACL,qGAAA,YAAY,OAAA;AAed,yCAOwB;AALtB,gHAAA,sBAAsB,OAAA;AAEtB,4GAAA,kBAAkB,OAAA;AAElB,oHAAA,0BAA0B,OAAA;AAI5B,uCAIoB;AAHlB,gHAAA,oBAAoB,OAAA;AAEpB,wHAAA,4BAA4B,OAAA;AAI9B,uDAI+B;AAH7B,uHAAA,sBAAsB,OAAA;AACtB,qHAAA,oBAAoB,OAAA;AACpB,kHAAA,iBAAiB,OAAA;AAGnB,iDAM4B;AAJ1B,gHAAA,kBAAkB,OAAA;AAElB,8GAAA,gBAAgB,OAAA;AAChB,0GAAA,YAAY,OAAA;AAGd,qDAK8B;AAH5B,oHAAA,oBAAoB,OAAA;AACpB,qHAAA,qBAAqB,OAAA;AACrB,kHAAA,kBAAkB,OAAA;AAIpB,qEAMsC;AAJpC,oIAAA,4BAA4B,OAAA;AAC5B,oIAAA,4BAA4B,OAAA;AAC5B,kIAAA,0BAA0B,OAAA;AAK5B,iDAM4B;AAL1B,6GAAA,eAAe,OAAA;AACf,4GAAA,cAAc,OAAA;AACd,8GAAA,gBAAgB,OAAA;AAChB,mHAAA,qBAAqB,OAAA;AACrB,0GAAA,YAAY,OAAA;AAId,mCAYkB;AAXhB,mGAAA,SAAS,OAAA;AACT,gHAAA,sBAAsB,OAAA;AACtB,kHAAA,wBAAwB,OAAA;AACxB,8GAAA,oBAAoB,OAAA;AACpB,qHAAA,2BAA2B,OAAA;AAC3B,oHAAA,0BAA0B,OAAA;AAC1B,kHAAA,wBAAwB,OAAA;AACxB,sGAAA,YAAY,OAAA;AACZ,yGAAA,eAAe,OAAA;AACf,6GAAA,mBAAmB,OAAA;AACnB,4GAAA,kBAAkB,OAAA;AAIpB,8CAAwF;AAAhE,oGAAA,QAAQ,OAAA;AAAE,sGAAA,UAAU,OAAA;AAAE,0GAAA,cAAc,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;;;;AAEH,gFAAgF;AAChF,2BAA2B;AAC3B,gFAAgF;AAEhF,2CAKsB;AAJpB,wGAAA,UAAU,OAAA;AAMZ,gFAAgF;AAChF,kCAAkC;AAClC,gFAAgF;AAEhF,sDAOgC;AAN9B,0GAAA,WAAW,OAAA;AACX,6HAAA,8BAA8B,OAAA;AAC9B,uHAAA,wBAAwB,OAAA;AACxB,6GAAA,cAAc,OAAA;AACd,iHAAA,kBAAkB,OAAA;AAClB,gHAAA,iBAAiB,OAAA;AAGnB,8DAIoC;AAHlC,kHAAA,eAAe,OAAA;AAKjB,sEAGwC;AAFtC,0HAAA,mBAAmB,OAAA;AAerB,sCAAsC;AACtC,qDAO+B;AAN7B,0GAAA,WAAW,OAAA;AACX,uHAAA,wBAAwB,OAAA;AACxB,kHAAA,mBAAmB,OAAA;AACnB,kHAAA,mBAAmB,OAAA;AACnB,kHAAA,mBAAmB,OAAA;AACnB,uHAAA,wBAAwB,OAAA;AAG1B,iDAAiD;AACjD,+DAKoC;AAJlC,oHAAA,gBAAgB,OAAA;AAChB,2HAAA,uBAAuB,OAAA;AACvB,yHAAA,qBAAqB,OAAA;AACrB,sHAAA,kBAAkB,OAAA;AAGpB,0CAA0C;AAC1C,iEAGqC;AAFnC,sHAAA,iBAAiB,OAAA;AAInB,gFAAgF;AAChF,eAAe;AACf,gFAAgF;AAEhF,uDAUmC;AAFjC,kHAAA,qBAAqB,OAAA;AACrB,gHAAA,mBAAmB,OAAA;AAGrB,gFAAgF;AAChF,qCAAqC;AACrC,gFAAgF;AAEhF,mBAAmB;AACnB,oDAAmD;AAA1C,wGAAA,UAAU,OAAA;AACnB,sDAAqD;AAA5C,0GAAA,WAAW,OAAA;AACpB,wDAAuD;AAA9C,4GAAA,YAAY,OAAA;AACrB,0DAAyD;AAAhD,8GAAA,aAAa,OAAA;AACtB,4DAAgF;AAAvE,gHAAA,cAAc,OAAA;AACvB,kDAA4D;AAAnD,sGAAA,SAAS,OAAA;AAClB,0DAAyD;AAAhD,8GAAA,aAAa,OAAA;AACtB,oDAAmD;AAA1C,wGAAA,UAAU,OAAA;AACnB,sDAAqD;AAA5C,0GAAA,WAAW,OAAA;AAEpB,WAAW;AACX,wDAAuD;AAA9C,4GAAA,YAAY,OAAA;AACrB,wEAAuE;AAA9D,4HAAA,oBAAoB,OAAA;AAE7B,SAAS;AACT,8CAA+C;AAAtC,sGAAA,UAAU,OAAA;AAYnB,QAAQ;AACR,qDAA0E;AAAnD,oHAAA,oBAAoB,OAAA;AAC3C,qEAAmG;AAAnE,oIAAA,4BAA4B,OAAA;AAI5D,mDAA8F;AAArF,kHAAA,mBAAmB,OAAA;AAAE,2GAAA,YAAY,OAAA;AAAE,mHAAA,oBAAoB,OAAA;AAChE,+CAA2D;AAAlD,sGAAA,SAAS,OAAA;AAAE,wGAAA,WAAW,OAAA;AAC/B,yEAKwC;AAHtC,wIAAA,8BAA8B,OAAA;AAC9B,yIAAA,+BAA+B,OAAA;AAC/B,sIAAA,4BAA4B,OAAA;AAG9B,mBAAmB;AACnB,2CAYyB;AAXvB,+FAAA,IAAI,OAAA;AACJ,mGAAA,QAAQ,OAAA;AACR,kGAAA,OAAO,OAAA;AACP,kGAAA,OAAO,OAAA;AACP,uGAAA,KAAK,OAAgB;AACrB,wGAAA,aAAa,OAAA;AACb,oGAAA,SAAS,OAAA;AACT,qGAAA,UAAU,OAAA;AACV,yGAAA,cAAc,OAAA;AACd,sGAAA,WAAW,OAAA;AACX,8GAAA,mBAAmB,OAAA;AAIrB,gFAAgF;AAChF,+CAA+C;AAC/C,gFAAgF;AAEhF,mCAA8D;AAArD,iGAAA,OAAO,OAAA;AAAE,iGAAA,OAAO,OAAA;AAAE,0GAAA,gBAAgB,OAAA;AAQ3C,gFAAgF;AAChF,uCAAuC;AACvC,gFAAgF;AAEhF,mCAA2E;AAAlE,+FAAA,KAAK,OAAA;AAAE,wGAAA,cAAc,OAAA;AAAE,kHAAA,wBAAwB,OAAA;AAuBxD,gFAAgF;AAChF,yBAAyB;AACzB,gFAAgF;AAEhF,mCAoBkB;AAnBhB,mGAAA,SAAS,OAAA;AACT,gHAAA,sBAAsB,OAAA;AACtB,kHAAA,wBAAwB,OAAA;AACxB,8GAAA,oBAAoB,OAAA;AACpB,qHAAA,2BAA2B,OAAA;AAC3B,oHAAA,0BAA0B,OAAA;AAC1B,kHAAA,wBAAwB,OAAA;AACxB,sGAAA,YAAY,OAAA;AACZ,yGAAA,eAAe,OAAA;AACf,6GAAA,mBAAmB,OAAA;AACnB,4GAAA,kBAAkB,OAAA;AAClB,4BAA4B;AAC5B,8GAAA,oBAAoB,OAAA;AACpB,sGAAA,YAAY,OAAA;AACZ,+GAAA,qBAAqB,OAAA;AACrB,6GAAA,mBAAmB,OAAA;AACnB,4GAAA,kBAAkB,OAAA;AAClB,4GAAA,kBAAkB,OAAA;AAClB,6GAAA,mBAAmB,OAAA"}
@@ -0,0 +1,106 @@
1
+ /**
2
+ * Provider - Return type of provide() function
3
+ *
4
+ * Provides control and observability for a running service provider.
5
+ *
6
+ * @packageDocumentation
7
+ */
8
+ import { Job } from '../level1/types/Job';
9
+ /**
10
+ * Provider status
11
+ */
12
+ export type ProviderStatus = 'starting' | 'running' | 'paused' | 'stopped';
13
+ /**
14
+ * Provider statistics
15
+ */
16
+ export interface ProviderStats {
17
+ jobsCompleted: number;
18
+ jobsFailed: number;
19
+ totalEarned: number;
20
+ averageJobTime: number;
21
+ }
22
+ /**
23
+ * Provider balance
24
+ */
25
+ export interface ProviderBalance {
26
+ eth: string;
27
+ usdc: string;
28
+ }
29
+ /**
30
+ * Provider interface
31
+ *
32
+ * Returned by provide() to control the provider lifecycle.
33
+ *
34
+ * @example
35
+ * ```typescript
36
+ * const provider = provide('echo', async (job) => job.input);
37
+ *
38
+ * // Monitor events
39
+ * provider.on('job:received', (job) => {
40
+ * console.log(`Received job: ${job.id}`);
41
+ * });
42
+ *
43
+ * provider.on('payment:received', (amount) => {
44
+ * console.log(`Earned ${amount} USDC`);
45
+ * });
46
+ *
47
+ * // Control lifecycle
48
+ * provider.pause(); // Stop accepting new jobs
49
+ * provider.resume(); // Resume
50
+ * await provider.stop(); // Graceful shutdown
51
+ *
52
+ * // Check statistics
53
+ * console.log(`Completed: ${provider.stats.jobsCompleted}`);
54
+ * console.log(`Earned: $${provider.stats.totalEarned}`);
55
+ * ```
56
+ */
57
+ export interface Provider {
58
+ /**
59
+ * Current status
60
+ */
61
+ status: ProviderStatus;
62
+ /**
63
+ * Provider's Ethereum address
64
+ */
65
+ address: string;
66
+ /**
67
+ * Balance information
68
+ */
69
+ balance: ProviderBalance;
70
+ /**
71
+ * Pause the provider
72
+ *
73
+ * Stops accepting new jobs but keeps running jobs active.
74
+ */
75
+ pause(): void;
76
+ /**
77
+ * Resume the provider
78
+ *
79
+ * Resumes accepting new jobs after pause.
80
+ */
81
+ resume(): void;
82
+ /**
83
+ * Stop the provider
84
+ *
85
+ * Gracefully shuts down, waiting for active jobs to complete.
86
+ */
87
+ stop(): Promise<void>;
88
+ /**
89
+ * Register event listener
90
+ *
91
+ * Supported events:
92
+ * - 'job:received': (job: Job) => void
93
+ * - 'job:completed': (job: Job, result: any) => void
94
+ * - 'job:failed': (job: Job, error: Error) => void
95
+ * - 'payment:received': (amount: number) => void
96
+ */
97
+ on(event: 'job:received', handler: (job: Job) => void): void;
98
+ on(event: 'job:completed', handler: (job: Job, result: any) => void): void;
99
+ on(event: 'job:failed', handler: (job: Job, error: Error) => void): void;
100
+ on(event: 'payment:received', handler: (amount: number) => void): void;
101
+ /**
102
+ * Statistics
103
+ */
104
+ stats: ProviderStats;
105
+ }
106
+ //# sourceMappingURL=Provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Provider.d.ts","sourceRoot":"","sources":["../../src/level0/Provider.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAE1C;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE3E;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,WAAW,QAAQ;IACvB;;OAEG;IACH,MAAM,EAAE,cAAc,CAAC;IAEvB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,OAAO,EAAE,eAAe,CAAC;IAEzB;;;;OAIG;IACH,KAAK,IAAI,IAAI,CAAC;IAEd;;;;OAIG;IACH,MAAM,IAAI,IAAI,CAAC;IAEf;;;;OAIG;IACH,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtB;;;;;;;;OAQG;IACH,EAAE,CAAC,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAC;IAC7D,EAAE,CAAC,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAC;IAC3E,EAAE,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI,CAAC;IACzE,EAAE,CAAC,KAAK,EAAE,kBAAkB,EAAE,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAC;IAEvE;;OAEG;IACH,KAAK,EAAE,aAAa,CAAC;CACtB"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ /**
3
+ * Provider - Return type of provide() function
4
+ *
5
+ * Provides control and observability for a running service provider.
6
+ *
7
+ * @packageDocumentation
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ //# sourceMappingURL=Provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Provider.js","sourceRoot":"","sources":["../../src/level0/Provider.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG"}
@@ -0,0 +1,74 @@
1
+ /**
2
+ * ServiceDirectory - Hardcoded provider mapping for MVP
3
+ *
4
+ * In MVP, we use hardcoded service-to-provider mapping.
5
+ * In V2+, this will be replaced by on-chain AgentRegistry queries.
6
+ *
7
+ * @packageDocumentation
8
+ */
9
+ /**
10
+ * In-memory service directory
11
+ *
12
+ * Maps service names to provider addresses.
13
+ * This is a singleton that can be updated by provide() calls.
14
+ *
15
+ * SECURITY FIXES:
16
+ * - H-5: Address validation to prevent poisoning
17
+ * - H-2: Service name validation
18
+ */
19
+ declare class ServiceDirectory {
20
+ /**
21
+ * Service -> Provider address mapping
22
+ */
23
+ private directory;
24
+ /**
25
+ * Register a provider for a service
26
+ *
27
+ * SECURITY FIX (H-5): Validate address format before registration
28
+ * SECURITY FIX (H-2): Validate service name
29
+ *
30
+ * @param service - Service name
31
+ * @param provider - Provider address
32
+ * @throws Error if service name or provider address is invalid
33
+ */
34
+ register(service: string, provider: string): void;
35
+ /**
36
+ * Unregister a provider from a service
37
+ *
38
+ * SECURITY FIX (H-5): Validate address format
39
+ * SECURITY FIX (H-2): Validate service name
40
+ *
41
+ * @param service - Service name
42
+ * @param provider - Provider address
43
+ */
44
+ unregister(service: string, provider: string): void;
45
+ /**
46
+ * Find providers for a service
47
+ *
48
+ * SECURITY FIX (H-2): Validate service name
49
+ *
50
+ * @param service - Service name
51
+ * @returns Array of provider addresses
52
+ */
53
+ findProviders(service: string): string[];
54
+ /**
55
+ * Get all registered services
56
+ *
57
+ * @returns Array of service names
58
+ */
59
+ getServices(): string[];
60
+ /**
61
+ * Clear all registrations
62
+ */
63
+ clear(): void;
64
+ /**
65
+ * Get directory size (for debugging)
66
+ */
67
+ get size(): number;
68
+ }
69
+ /**
70
+ * Singleton instance
71
+ */
72
+ export declare const serviceDirectory: ServiceDirectory;
73
+ export {};
74
+ //# sourceMappingURL=ServiceDirectory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ServiceDirectory.d.ts","sourceRoot":"","sources":["../../src/level0/ServiceDirectory.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH;;;;;;;;;GASG;AACH,cAAM,gBAAgB;IACpB;;OAEG;IACH,OAAO,CAAC,SAAS,CAAkC;IAEnD;;;;;;;;;OASG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAkBjD;;;;;;;;OAQG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAkBnD;;;;;;;OAOG;IACH,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE;IAaxC;;;;OAIG;IACH,WAAW,IAAI,MAAM,EAAE;IAIvB;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;OAEG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;CACF;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB,kBAAyB,CAAC"}
@@ -0,0 +1,122 @@
1
+ "use strict";
2
+ /**
3
+ * ServiceDirectory - Hardcoded provider mapping for MVP
4
+ *
5
+ * In MVP, we use hardcoded service-to-provider mapping.
6
+ * In V2+, this will be replaced by on-chain AgentRegistry queries.
7
+ *
8
+ * @packageDocumentation
9
+ */
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.serviceDirectory = void 0;
12
+ const security_1 = require("../utils/security");
13
+ /**
14
+ * In-memory service directory
15
+ *
16
+ * Maps service names to provider addresses.
17
+ * This is a singleton that can be updated by provide() calls.
18
+ *
19
+ * SECURITY FIXES:
20
+ * - H-5: Address validation to prevent poisoning
21
+ * - H-2: Service name validation
22
+ */
23
+ class ServiceDirectory {
24
+ constructor() {
25
+ /**
26
+ * Service -> Provider address mapping
27
+ */
28
+ this.directory = new Map();
29
+ }
30
+ /**
31
+ * Register a provider for a service
32
+ *
33
+ * SECURITY FIX (H-5): Validate address format before registration
34
+ * SECURITY FIX (H-2): Validate service name
35
+ *
36
+ * @param service - Service name
37
+ * @param provider - Provider address
38
+ * @throws Error if service name or provider address is invalid
39
+ */
40
+ register(service, provider) {
41
+ // SECURITY FIX (H-2): Validate service name
42
+ const validatedService = (0, security_1.validateServiceName)(service);
43
+ // SECURITY FIX (H-5): Validate Ethereum address format
44
+ if (!(0, security_1.isValidAddress)(provider)) {
45
+ throw new Error(`Invalid provider address: "${provider}". Must be a valid Ethereum address (0x followed by 40 hex characters).`);
46
+ }
47
+ if (!this.directory.has(validatedService)) {
48
+ this.directory.set(validatedService, new Set());
49
+ }
50
+ this.directory.get(validatedService).add(provider);
51
+ }
52
+ /**
53
+ * Unregister a provider from a service
54
+ *
55
+ * SECURITY FIX (H-5): Validate address format
56
+ * SECURITY FIX (H-2): Validate service name
57
+ *
58
+ * @param service - Service name
59
+ * @param provider - Provider address
60
+ */
61
+ unregister(service, provider) {
62
+ // SECURITY FIX (H-2): Validate service name
63
+ const validatedService = (0, security_1.validateServiceName)(service);
64
+ // SECURITY FIX (H-5): Validate address format
65
+ if (!(0, security_1.isValidAddress)(provider)) {
66
+ throw new Error(`Invalid provider address: "${provider}"`);
67
+ }
68
+ const providers = this.directory.get(validatedService);
69
+ if (providers) {
70
+ providers.delete(provider);
71
+ if (providers.size === 0) {
72
+ this.directory.delete(validatedService);
73
+ }
74
+ }
75
+ }
76
+ /**
77
+ * Find providers for a service
78
+ *
79
+ * SECURITY FIX (H-2): Validate service name
80
+ *
81
+ * @param service - Service name
82
+ * @returns Array of provider addresses
83
+ */
84
+ findProviders(service) {
85
+ // SECURITY FIX (H-2): Validate service name
86
+ try {
87
+ const validatedService = (0, security_1.validateServiceName)(service);
88
+ const providers = this.directory.get(validatedService);
89
+ return providers ? Array.from(providers) : [];
90
+ }
91
+ catch (error) {
92
+ // If service name is invalid, return empty array instead of throwing
93
+ // This allows graceful degradation in search scenarios
94
+ return [];
95
+ }
96
+ }
97
+ /**
98
+ * Get all registered services
99
+ *
100
+ * @returns Array of service names
101
+ */
102
+ getServices() {
103
+ return Array.from(this.directory.keys());
104
+ }
105
+ /**
106
+ * Clear all registrations
107
+ */
108
+ clear() {
109
+ this.directory.clear();
110
+ }
111
+ /**
112
+ * Get directory size (for debugging)
113
+ */
114
+ get size() {
115
+ return this.directory.size;
116
+ }
117
+ }
118
+ /**
119
+ * Singleton instance
120
+ */
121
+ exports.serviceDirectory = new ServiceDirectory();
122
+ //# sourceMappingURL=ServiceDirectory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ServiceDirectory.js","sourceRoot":"","sources":["../../src/level0/ServiceDirectory.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAEH,gDAAwE;AAExE;;;;;;;;;GASG;AACH,MAAM,gBAAgB;IAAtB;QACE;;WAEG;QACK,cAAS,GAAG,IAAI,GAAG,EAAuB,CAAC;IAoGrD,CAAC;IAlGC;;;;;;;;;OASG;IACH,QAAQ,CAAC,OAAe,EAAE,QAAgB;QACxC,4CAA4C;QAC5C,MAAM,gBAAgB,GAAG,IAAA,8BAAmB,EAAC,OAAO,CAAC,CAAC;QAEtD,uDAAuD;QACvD,IAAI,CAAC,IAAA,yBAAc,EAAC,QAAQ,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CACb,8BAA8B,QAAQ,yEAAyE,CAChH,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC1C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,gBAAgB,CAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACtD,CAAC;IAED;;;;;;;;OAQG;IACH,UAAU,CAAC,OAAe,EAAE,QAAgB;QAC1C,4CAA4C;QAC5C,MAAM,gBAAgB,GAAG,IAAA,8BAAmB,EAAC,OAAO,CAAC,CAAC;QAEtD,8CAA8C;QAC9C,IAAI,CAAC,IAAA,yBAAc,EAAC,QAAQ,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,8BAA8B,QAAQ,GAAG,CAAC,CAAC;QAC7D,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QACvD,IAAI,SAAS,EAAE,CAAC;YACd,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC3B,IAAI,SAAS,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBACzB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACH,aAAa,CAAC,OAAe;QAC3B,4CAA4C;QAC5C,IAAI,CAAC;YACH,MAAM,gBAAgB,GAAG,IAAA,8BAAmB,EAAC,OAAO,CAAC,CAAC;YACtD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;YACvD,OAAO,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAChD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,qEAAqE;YACrE,uDAAuD;YACvD,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,WAAW;QACT,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;IAC7B,CAAC;CACF;AAED;;GAEG;AACU,QAAA,gBAAgB,GAAG,IAAI,gBAAgB,EAAE,CAAC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Basic API - Simple service provision and requests
3
+ *
4
+ * @packageDocumentation
5
+ */
6
+ export { provide } from './provide';
7
+ export { request } from './request';
8
+ export { Provider, ProviderStatus, ProviderStats, ProviderBalance } from './Provider';
9
+ export { serviceDirectory } from './ServiceDirectory';
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/level0/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACtF,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ /**
3
+ * Basic API - Simple service provision and requests
4
+ *
5
+ * @packageDocumentation
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.serviceDirectory = exports.request = exports.provide = void 0;
9
+ var provide_1 = require("./provide");
10
+ Object.defineProperty(exports, "provide", { enumerable: true, get: function () { return provide_1.provide; } });
11
+ var request_1 = require("./request");
12
+ Object.defineProperty(exports, "request", { enumerable: true, get: function () { return request_1.request; } });
13
+ var ServiceDirectory_1 = require("./ServiceDirectory");
14
+ Object.defineProperty(exports, "serviceDirectory", { enumerable: true, get: function () { return ServiceDirectory_1.serviceDirectory; } });
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/level0/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,qCAAoC;AAA3B,kGAAA,OAAO,OAAA;AAChB,qCAAoC;AAA3B,kGAAA,OAAO,OAAA;AAEhB,uDAAsD;AAA7C,oHAAA,gBAAgB,OAAA"}