@terkoizmy/intent-sdk 1.0.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 (371) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +258 -0
  3. package/dist/config/chains.d.ts +25 -0
  4. package/dist/config/chains.d.ts.map +1 -0
  5. package/dist/config/chains.js +85 -0
  6. package/dist/config/chains.js.map +1 -0
  7. package/dist/config/default.d.ts +39 -0
  8. package/dist/config/default.d.ts.map +1 -0
  9. package/dist/config/default.js +46 -0
  10. package/dist/config/default.js.map +1 -0
  11. package/dist/config/testnets.d.ts +31 -0
  12. package/dist/config/testnets.d.ts.map +1 -0
  13. package/dist/config/testnets.js +99 -0
  14. package/dist/config/testnets.js.map +1 -0
  15. package/dist/errors/inventory-errors.d.ts +31 -0
  16. package/dist/errors/inventory-errors.d.ts.map +1 -0
  17. package/dist/errors/inventory-errors.js +45 -0
  18. package/dist/errors/inventory-errors.js.map +1 -0
  19. package/dist/errors/settlement-errors.d.ts +27 -0
  20. package/dist/errors/settlement-errors.d.ts.map +1 -0
  21. package/dist/errors/settlement-errors.js +39 -0
  22. package/dist/errors/settlement-errors.js.map +1 -0
  23. package/dist/errors/solver-errors.d.ts +45 -0
  24. package/dist/errors/solver-errors.d.ts.map +1 -0
  25. package/dist/errors/solver-errors.js +66 -0
  26. package/dist/errors/solver-errors.js.map +1 -0
  27. package/dist/index.d.ts +34 -0
  28. package/dist/index.d.ts.map +1 -0
  29. package/dist/index.js +28 -0
  30. package/dist/index.js.map +1 -0
  31. package/dist/parser/classifiers/intent-classifier.d.ts +40 -0
  32. package/dist/parser/classifiers/intent-classifier.d.ts.map +1 -0
  33. package/dist/parser/classifiers/intent-classifier.js +72 -0
  34. package/dist/parser/classifiers/intent-classifier.js.map +1 -0
  35. package/dist/parser/extractors/action.d.ts +32 -0
  36. package/dist/parser/extractors/action.d.ts.map +1 -0
  37. package/dist/parser/extractors/action.js +72 -0
  38. package/dist/parser/extractors/action.js.map +1 -0
  39. package/dist/parser/extractors/amount.d.ts +39 -0
  40. package/dist/parser/extractors/amount.d.ts.map +1 -0
  41. package/dist/parser/extractors/amount.js +113 -0
  42. package/dist/parser/extractors/amount.js.map +1 -0
  43. package/dist/parser/extractors/constraints.d.ts +37 -0
  44. package/dist/parser/extractors/constraints.d.ts.map +1 -0
  45. package/dist/parser/extractors/constraints.js +119 -0
  46. package/dist/parser/extractors/constraints.js.map +1 -0
  47. package/dist/parser/extractors/index.d.ts +5 -0
  48. package/dist/parser/extractors/index.d.ts.map +1 -0
  49. package/dist/parser/extractors/index.js +5 -0
  50. package/dist/parser/extractors/index.js.map +1 -0
  51. package/dist/parser/extractors/token.d.ts +24 -0
  52. package/dist/parser/extractors/token.d.ts.map +1 -0
  53. package/dist/parser/extractors/token.js +124 -0
  54. package/dist/parser/extractors/token.js.map +1 -0
  55. package/dist/parser/index.d.ts +125 -0
  56. package/dist/parser/index.d.ts.map +1 -0
  57. package/dist/parser/index.js +293 -0
  58. package/dist/parser/index.js.map +1 -0
  59. package/dist/parser/template/bridge.d.ts +37 -0
  60. package/dist/parser/template/bridge.d.ts.map +1 -0
  61. package/dist/parser/template/bridge.js +80 -0
  62. package/dist/parser/template/bridge.js.map +1 -0
  63. package/dist/parser/template/claim.d.ts +15 -0
  64. package/dist/parser/template/claim.d.ts.map +1 -0
  65. package/dist/parser/template/claim.js +36 -0
  66. package/dist/parser/template/claim.js.map +1 -0
  67. package/dist/parser/template/index.d.ts +28 -0
  68. package/dist/parser/template/index.d.ts.map +1 -0
  69. package/dist/parser/template/index.js +50 -0
  70. package/dist/parser/template/index.js.map +1 -0
  71. package/dist/parser/template/nft.d.ts +3 -0
  72. package/dist/parser/template/nft.d.ts.map +1 -0
  73. package/dist/parser/template/nft.js +19 -0
  74. package/dist/parser/template/nft.js.map +1 -0
  75. package/dist/parser/template/send.d.ts +24 -0
  76. package/dist/parser/template/send.d.ts.map +1 -0
  77. package/dist/parser/template/send.js +61 -0
  78. package/dist/parser/template/send.js.map +1 -0
  79. package/dist/parser/template/swap.d.ts +3 -0
  80. package/dist/parser/template/swap.d.ts.map +1 -0
  81. package/dist/parser/template/swap.js +21 -0
  82. package/dist/parser/template/swap.js.map +1 -0
  83. package/dist/parser/template/unknown.d.ts +3 -0
  84. package/dist/parser/template/unknown.d.ts.map +1 -0
  85. package/dist/parser/template/unknown.js +11 -0
  86. package/dist/parser/template/unknown.js.map +1 -0
  87. package/dist/parser/template/yield.d.ts +3 -0
  88. package/dist/parser/template/yield.d.ts.map +1 -0
  89. package/dist/parser/template/yield.js +25 -0
  90. package/dist/parser/template/yield.js.map +1 -0
  91. package/dist/parser/utils/normalize.d.ts +41 -0
  92. package/dist/parser/utils/normalize.d.ts.map +1 -0
  93. package/dist/parser/utils/normalize.js +71 -0
  94. package/dist/parser/utils/normalize.js.map +1 -0
  95. package/dist/parser/utils/parser-helpers.d.ts +20 -0
  96. package/dist/parser/utils/parser-helpers.d.ts.map +1 -0
  97. package/dist/parser/utils/parser-helpers.js +282 -0
  98. package/dist/parser/utils/parser-helpers.js.map +1 -0
  99. package/dist/parser/validators/schema.d.ts +14 -0
  100. package/dist/parser/validators/schema.d.ts.map +1 -0
  101. package/dist/parser/validators/schema.js +81 -0
  102. package/dist/parser/validators/schema.js.map +1 -0
  103. package/dist/sdk-factory.d.ts +55 -0
  104. package/dist/sdk-factory.d.ts.map +1 -0
  105. package/dist/sdk-factory.js +49 -0
  106. package/dist/sdk-factory.js.map +1 -0
  107. package/dist/services/token-resolver.d.ts +142 -0
  108. package/dist/services/token-resolver.d.ts.map +1 -0
  109. package/dist/services/token-resolver.js +254 -0
  110. package/dist/services/token-resolver.js.map +1 -0
  111. package/dist/shared/chain-registry/chain-names.d.ts +22 -0
  112. package/dist/shared/chain-registry/chain-names.d.ts.map +1 -0
  113. package/dist/shared/chain-registry/chain-names.js +49 -0
  114. package/dist/shared/chain-registry/chain-names.js.map +1 -0
  115. package/dist/shared/chain-registry/configs/arbitrum-sepolia.d.ts +9 -0
  116. package/dist/shared/chain-registry/configs/arbitrum-sepolia.d.ts.map +1 -0
  117. package/dist/shared/chain-registry/configs/arbitrum-sepolia.js +9 -0
  118. package/dist/shared/chain-registry/configs/arbitrum-sepolia.js.map +1 -0
  119. package/dist/shared/chain-registry/configs/base-sepolia.d.ts +9 -0
  120. package/dist/shared/chain-registry/configs/base-sepolia.d.ts.map +1 -0
  121. package/dist/shared/chain-registry/configs/base-sepolia.js +9 -0
  122. package/dist/shared/chain-registry/configs/base-sepolia.js.map +1 -0
  123. package/dist/shared/chain-registry/configs/ethereum.d.ts +7 -0
  124. package/dist/shared/chain-registry/configs/ethereum.d.ts.map +1 -0
  125. package/dist/shared/chain-registry/configs/ethereum.js +7 -0
  126. package/dist/shared/chain-registry/configs/ethereum.js.map +1 -0
  127. package/dist/shared/chain-registry/configs/polygon.d.ts +7 -0
  128. package/dist/shared/chain-registry/configs/polygon.d.ts.map +1 -0
  129. package/dist/shared/chain-registry/configs/polygon.js +7 -0
  130. package/dist/shared/chain-registry/configs/polygon.js.map +1 -0
  131. package/dist/shared/chain-registry/configs/sepolia.d.ts +9 -0
  132. package/dist/shared/chain-registry/configs/sepolia.d.ts.map +1 -0
  133. package/dist/shared/chain-registry/configs/sepolia.js +9 -0
  134. package/dist/shared/chain-registry/configs/sepolia.js.map +1 -0
  135. package/dist/shared/chain-registry/configs/unichain-sepolia.d.ts +9 -0
  136. package/dist/shared/chain-registry/configs/unichain-sepolia.d.ts.map +1 -0
  137. package/dist/shared/chain-registry/configs/unichain-sepolia.js +9 -0
  138. package/dist/shared/chain-registry/configs/unichain-sepolia.js.map +1 -0
  139. package/dist/shared/chain-registry/registry.d.ts +50 -0
  140. package/dist/shared/chain-registry/registry.d.ts.map +1 -0
  141. package/dist/shared/chain-registry/registry.js +72 -0
  142. package/dist/shared/chain-registry/registry.js.map +1 -0
  143. package/dist/shared/rpc/provider-manager.d.ts +111 -0
  144. package/dist/shared/rpc/provider-manager.d.ts.map +1 -0
  145. package/dist/shared/rpc/provider-manager.js +116 -0
  146. package/dist/shared/rpc/provider-manager.js.map +1 -0
  147. package/dist/shared/rpc/viem-provider.d.ts +78 -0
  148. package/dist/shared/rpc/viem-provider.d.ts.map +1 -0
  149. package/dist/shared/rpc/viem-provider.js +187 -0
  150. package/dist/shared/rpc/viem-provider.js.map +1 -0
  151. package/dist/shared/token-registry/enrichment.d.ts +48 -0
  152. package/dist/shared/token-registry/enrichment.d.ts.map +1 -0
  153. package/dist/shared/token-registry/enrichment.js +69 -0
  154. package/dist/shared/token-registry/enrichment.js.map +1 -0
  155. package/dist/shared/token-registry/registry.d.ts +119 -0
  156. package/dist/shared/token-registry/registry.d.ts.map +1 -0
  157. package/dist/shared/token-registry/registry.js +200 -0
  158. package/dist/shared/token-registry/registry.js.map +1 -0
  159. package/dist/shared/utils/erc20-utils.d.ts +24 -0
  160. package/dist/shared/utils/erc20-utils.d.ts.map +1 -0
  161. package/dist/shared/utils/erc20-utils.js +31 -0
  162. package/dist/shared/utils/erc20-utils.js.map +1 -0
  163. package/dist/shared/utils/retry.d.ts +57 -0
  164. package/dist/shared/utils/retry.d.ts.map +1 -0
  165. package/dist/shared/utils/retry.js +104 -0
  166. package/dist/shared/utils/retry.js.map +1 -0
  167. package/dist/shared/wallet-manager/viem-signer.d.ts +68 -0
  168. package/dist/shared/wallet-manager/viem-signer.d.ts.map +1 -0
  169. package/dist/shared/wallet-manager/viem-signer.js +116 -0
  170. package/dist/shared/wallet-manager/viem-signer.js.map +1 -0
  171. package/dist/shared/wallet-manager/wallet-manager.d.ts +96 -0
  172. package/dist/shared/wallet-manager/wallet-manager.d.ts.map +1 -0
  173. package/dist/shared/wallet-manager/wallet-manager.js +104 -0
  174. package/dist/shared/wallet-manager/wallet-manager.js.map +1 -0
  175. package/dist/solver/agent/agent-config.d.ts +62 -0
  176. package/dist/solver/agent/agent-config.d.ts.map +1 -0
  177. package/dist/solver/agent/agent-config.js +59 -0
  178. package/dist/solver/agent/agent-config.js.map +1 -0
  179. package/dist/solver/agent/index.d.ts +6 -0
  180. package/dist/solver/agent/index.d.ts.map +1 -0
  181. package/dist/solver/agent/index.js +6 -0
  182. package/dist/solver/agent/index.js.map +1 -0
  183. package/dist/solver/agent/liquidity-agent.d.ts +118 -0
  184. package/dist/solver/agent/liquidity-agent.d.ts.map +1 -0
  185. package/dist/solver/agent/liquidity-agent.js +285 -0
  186. package/dist/solver/agent/liquidity-agent.js.map +1 -0
  187. package/dist/solver/contracts/intent-settlement/index.d.ts +2 -0
  188. package/dist/solver/contracts/intent-settlement/index.d.ts.map +1 -0
  189. package/dist/solver/contracts/intent-settlement/index.js +2 -0
  190. package/dist/solver/contracts/intent-settlement/index.js.map +1 -0
  191. package/dist/solver/contracts/intent-settlement/intent-settlement.d.ts +22 -0
  192. package/dist/solver/contracts/intent-settlement/intent-settlement.d.ts.map +1 -0
  193. package/dist/solver/contracts/intent-settlement/intent-settlement.js +58 -0
  194. package/dist/solver/contracts/intent-settlement/intent-settlement.js.map +1 -0
  195. package/dist/solver/contracts/intent-settlement/viem-settlement-contract.d.ts +226 -0
  196. package/dist/solver/contracts/intent-settlement/viem-settlement-contract.d.ts.map +1 -0
  197. package/dist/solver/contracts/intent-settlement/viem-settlement-contract.js +204 -0
  198. package/dist/solver/contracts/intent-settlement/viem-settlement-contract.js.map +1 -0
  199. package/dist/solver/index.d.ts +87 -0
  200. package/dist/solver/index.d.ts.map +1 -0
  201. package/dist/solver/index.js +167 -0
  202. package/dist/solver/index.js.map +1 -0
  203. package/dist/solver/inventory/index.d.ts +7 -0
  204. package/dist/solver/inventory/index.d.ts.map +1 -0
  205. package/dist/solver/inventory/index.js +7 -0
  206. package/dist/solver/inventory/index.js.map +1 -0
  207. package/dist/solver/inventory/inventory-manager.d.ts +135 -0
  208. package/dist/solver/inventory/inventory-manager.d.ts.map +1 -0
  209. package/dist/solver/inventory/inventory-manager.js +323 -0
  210. package/dist/solver/inventory/inventory-manager.js.map +1 -0
  211. package/dist/solver/inventory/inventory-monitor.d.ts +72 -0
  212. package/dist/solver/inventory/inventory-monitor.d.ts.map +1 -0
  213. package/dist/solver/inventory/inventory-monitor.js +123 -0
  214. package/dist/solver/inventory/inventory-monitor.js.map +1 -0
  215. package/dist/solver/inventory/rebalancer.d.ts +78 -0
  216. package/dist/solver/inventory/rebalancer.d.ts.map +1 -0
  217. package/dist/solver/inventory/rebalancer.js +210 -0
  218. package/dist/solver/inventory/rebalancer.js.map +1 -0
  219. package/dist/solver/mempool/index.d.ts +8 -0
  220. package/dist/solver/mempool/index.d.ts.map +1 -0
  221. package/dist/solver/mempool/index.js +8 -0
  222. package/dist/solver/mempool/index.js.map +1 -0
  223. package/dist/solver/mempool/intent-filter.d.ts +49 -0
  224. package/dist/solver/mempool/intent-filter.d.ts.map +1 -0
  225. package/dist/solver/mempool/intent-filter.js +75 -0
  226. package/dist/solver/mempool/intent-filter.js.map +1 -0
  227. package/dist/solver/mempool/mempool-client.d.ts +105 -0
  228. package/dist/solver/mempool/mempool-client.d.ts.map +1 -0
  229. package/dist/solver/mempool/mempool-client.js +161 -0
  230. package/dist/solver/mempool/mempool-client.js.map +1 -0
  231. package/dist/solver/mempool/mempool-monitor.d.ts +71 -0
  232. package/dist/solver/mempool/mempool-monitor.d.ts.map +1 -0
  233. package/dist/solver/mempool/mempool-monitor.js +127 -0
  234. package/dist/solver/mempool/mempool-monitor.js.map +1 -0
  235. package/dist/solver/mempool/solution-submitter.d.ts +41 -0
  236. package/dist/solver/mempool/solution-submitter.d.ts.map +1 -0
  237. package/dist/solver/mempool/solution-submitter.js +71 -0
  238. package/dist/solver/mempool/solution-submitter.js.map +1 -0
  239. package/dist/solver/monitoring/alert-manager.d.ts +43 -0
  240. package/dist/solver/monitoring/alert-manager.d.ts.map +1 -0
  241. package/dist/solver/monitoring/alert-manager.js +69 -0
  242. package/dist/solver/monitoring/alert-manager.js.map +1 -0
  243. package/dist/solver/monitoring/health-checker.d.ts +53 -0
  244. package/dist/solver/monitoring/health-checker.d.ts.map +1 -0
  245. package/dist/solver/monitoring/health-checker.js +94 -0
  246. package/dist/solver/monitoring/health-checker.js.map +1 -0
  247. package/dist/solver/monitoring/index.d.ts +7 -0
  248. package/dist/solver/monitoring/index.d.ts.map +1 -0
  249. package/dist/solver/monitoring/index.js +7 -0
  250. package/dist/solver/monitoring/index.js.map +1 -0
  251. package/dist/solver/monitoring/profit-tracker.d.ts +47 -0
  252. package/dist/solver/monitoring/profit-tracker.d.ts.map +1 -0
  253. package/dist/solver/monitoring/profit-tracker.js +112 -0
  254. package/dist/solver/monitoring/profit-tracker.js.map +1 -0
  255. package/dist/solver/pricing/dynamic-pricing.d.ts +86 -0
  256. package/dist/solver/pricing/dynamic-pricing.d.ts.map +1 -0
  257. package/dist/solver/pricing/dynamic-pricing.js +189 -0
  258. package/dist/solver/pricing/dynamic-pricing.js.map +1 -0
  259. package/dist/solver/pricing/fee-calculator.d.ts +101 -0
  260. package/dist/solver/pricing/fee-calculator.d.ts.map +1 -0
  261. package/dist/solver/pricing/fee-calculator.js +149 -0
  262. package/dist/solver/pricing/fee-calculator.js.map +1 -0
  263. package/dist/solver/pricing/index.d.ts +7 -0
  264. package/dist/solver/pricing/index.d.ts.map +1 -0
  265. package/dist/solver/pricing/index.js +7 -0
  266. package/dist/solver/pricing/index.js.map +1 -0
  267. package/dist/solver/pricing/slippage-capture.d.ts +47 -0
  268. package/dist/solver/pricing/slippage-capture.d.ts.map +1 -0
  269. package/dist/solver/pricing/slippage-capture.js +63 -0
  270. package/dist/solver/pricing/slippage-capture.js.map +1 -0
  271. package/dist/solver/protocols/aggregators/lifi.d.ts +109 -0
  272. package/dist/solver/protocols/aggregators/lifi.d.ts.map +1 -0
  273. package/dist/solver/protocols/aggregators/lifi.js +110 -0
  274. package/dist/solver/protocols/aggregators/lifi.js.map +1 -0
  275. package/dist/solver/protocols/aggregators/swing.d.ts +67 -0
  276. package/dist/solver/protocols/aggregators/swing.d.ts.map +1 -0
  277. package/dist/solver/protocols/aggregators/swing.js +212 -0
  278. package/dist/solver/protocols/aggregators/swing.js.map +1 -0
  279. package/dist/solver/protocols/base-protocol.d.ts +42 -0
  280. package/dist/solver/protocols/base-protocol.d.ts.map +1 -0
  281. package/dist/solver/protocols/base-protocol.js +16 -0
  282. package/dist/solver/protocols/base-protocol.js.map +1 -0
  283. package/dist/solver/protocols/index.d.ts +10 -0
  284. package/dist/solver/protocols/index.d.ts.map +1 -0
  285. package/dist/solver/protocols/index.js +10 -0
  286. package/dist/solver/protocols/index.js.map +1 -0
  287. package/dist/solver/protocols/lending/aave.d.ts +51 -0
  288. package/dist/solver/protocols/lending/aave.d.ts.map +1 -0
  289. package/dist/solver/protocols/lending/aave.js +172 -0
  290. package/dist/solver/protocols/lending/aave.js.map +1 -0
  291. package/dist/solver/protocols/protocol-registry.d.ts +28 -0
  292. package/dist/solver/protocols/protocol-registry.d.ts.map +1 -0
  293. package/dist/solver/protocols/protocol-registry.js +40 -0
  294. package/dist/solver/protocols/protocol-registry.js.map +1 -0
  295. package/dist/solver/settlement/index.d.ts +7 -0
  296. package/dist/solver/settlement/index.d.ts.map +1 -0
  297. package/dist/solver/settlement/index.js +7 -0
  298. package/dist/solver/settlement/index.js.map +1 -0
  299. package/dist/solver/settlement/live-settlement-manager.d.ts +62 -0
  300. package/dist/solver/settlement/live-settlement-manager.d.ts.map +1 -0
  301. package/dist/solver/settlement/live-settlement-manager.js +68 -0
  302. package/dist/solver/settlement/live-settlement-manager.js.map +1 -0
  303. package/dist/solver/settlement/proof-generator.d.ts +48 -0
  304. package/dist/solver/settlement/proof-generator.d.ts.map +1 -0
  305. package/dist/solver/settlement/proof-generator.js +100 -0
  306. package/dist/solver/settlement/proof-generator.js.map +1 -0
  307. package/dist/solver/settlement/proof-verifier.d.ts +31 -0
  308. package/dist/solver/settlement/proof-verifier.d.ts.map +1 -0
  309. package/dist/solver/settlement/proof-verifier.js +46 -0
  310. package/dist/solver/settlement/proof-verifier.js.map +1 -0
  311. package/dist/solver/settlement/settlement-manager.d.ts +97 -0
  312. package/dist/solver/settlement/settlement-manager.d.ts.map +1 -0
  313. package/dist/solver/settlement/settlement-manager.js +220 -0
  314. package/dist/solver/settlement/settlement-manager.js.map +1 -0
  315. package/dist/solver/types/agent.d.ts +92 -0
  316. package/dist/solver/types/agent.d.ts.map +1 -0
  317. package/dist/solver/types/agent.js +8 -0
  318. package/dist/solver/types/agent.js.map +1 -0
  319. package/dist/solver/types/execution.d.ts +70 -0
  320. package/dist/solver/types/execution.d.ts.map +1 -0
  321. package/dist/solver/types/execution.js +7 -0
  322. package/dist/solver/types/execution.js.map +1 -0
  323. package/dist/solver/types/index.d.ts +13 -0
  324. package/dist/solver/types/index.d.ts.map +1 -0
  325. package/dist/solver/types/index.js +13 -0
  326. package/dist/solver/types/index.js.map +1 -0
  327. package/dist/solver/types/intent.d.ts +82 -0
  328. package/dist/solver/types/intent.d.ts.map +1 -0
  329. package/dist/solver/types/intent.js +33 -0
  330. package/dist/solver/types/intent.js.map +1 -0
  331. package/dist/solver/types/inventory.d.ts +83 -0
  332. package/dist/solver/types/inventory.d.ts.map +1 -0
  333. package/dist/solver/types/inventory.js +8 -0
  334. package/dist/solver/types/inventory.js.map +1 -0
  335. package/dist/solver/types/pricing.d.ts +59 -0
  336. package/dist/solver/types/pricing.d.ts.map +1 -0
  337. package/dist/solver/types/pricing.js +8 -0
  338. package/dist/solver/types/pricing.js.map +1 -0
  339. package/dist/solver/types/settlement.d.ts +98 -0
  340. package/dist/solver/types/settlement.d.ts.map +1 -0
  341. package/dist/solver/types/settlement.js +9 -0
  342. package/dist/solver/types/settlement.js.map +1 -0
  343. package/dist/types/chain.d.ts +66 -0
  344. package/dist/types/chain.d.ts.map +1 -0
  345. package/dist/types/chain.js +7 -0
  346. package/dist/types/chain.js.map +1 -0
  347. package/dist/types/common.d.ts +44 -0
  348. package/dist/types/common.d.ts.map +1 -0
  349. package/dist/types/common.js +8 -0
  350. package/dist/types/common.js.map +1 -0
  351. package/dist/types/entities.d.ts +61 -0
  352. package/dist/types/entities.d.ts.map +1 -0
  353. package/dist/types/entities.js +2 -0
  354. package/dist/types/entities.js.map +1 -0
  355. package/dist/types/index.d.ts +44 -0
  356. package/dist/types/index.d.ts.map +1 -0
  357. package/dist/types/index.js +8 -0
  358. package/dist/types/index.js.map +1 -0
  359. package/dist/types/intent.d.ts +70 -0
  360. package/dist/types/intent.d.ts.map +1 -0
  361. package/dist/types/intent.js +2 -0
  362. package/dist/types/intent.js.map +1 -0
  363. package/dist/types/templates.d.ts +18 -0
  364. package/dist/types/templates.d.ts.map +1 -0
  365. package/dist/types/templates.js +2 -0
  366. package/dist/types/templates.js.map +1 -0
  367. package/dist/types/token.d.ts +132 -0
  368. package/dist/types/token.d.ts.map +1 -0
  369. package/dist/types/token.js +8 -0
  370. package/dist/types/token.js.map +1 -0
  371. package/package.json +62 -0
@@ -0,0 +1,96 @@
1
+ /**
2
+ * Wallet Manager
3
+ *
4
+ * Manages solver's wallet across multiple EVM chains.
5
+ * Single private key → multiple chain connections.
6
+ *
7
+ * NOTE: Ini adalah lightweight abstraction tanpa dependency ethers.js.
8
+ * Di Phase B+ akan di-extend dengan actual ethers.Wallet integration.
9
+ * Untuk sekarang, menyediakan interface dan basic key management.
10
+ *
11
+ * USAGE:
12
+ * const wallet = new WalletManager("0xprivatekey...", chainRegistry, providerManager);
13
+ * const address = wallet.getAddress();
14
+ * const sig = await wallet.signMessage("hello");
15
+ */
16
+ import type { Address, ChainId, Hash } from "../../types/common";
17
+ /**
18
+ * Wallet signer interface
19
+ *
20
+ * Abstraction atas signing — bisa di-implement dengan ethers.js, viem, atau mock.
21
+ */
22
+ export interface WalletSigner {
23
+ /** Get the wallet address */
24
+ getAddress(): Address;
25
+ /** Sign arbitrary message */
26
+ signMessage(message: string): Promise<string>;
27
+ /** Sign typed data (EIP-712) */
28
+ signTypedData?(domain: object, types: object, value: object): Promise<string>;
29
+ /**
30
+ * Send a transaction (sign and broadcast).
31
+ *
32
+ * @param tx - Transaction payload
33
+ * @returns Transaction hash
34
+ */
35
+ sendTransaction?(tx: {
36
+ to: Address;
37
+ data?: `0x${string}`;
38
+ value?: bigint;
39
+ gas?: bigint;
40
+ }): Promise<Hash | string>;
41
+ }
42
+ /**
43
+ * WalletManager
44
+ *
45
+ * Mengelola private key solver dan menyediakan signing capabilities.
46
+ * Address sama di semua EVM chains (derived dari private key).
47
+ */
48
+ export declare class WalletManager {
49
+ private readonly privateKey;
50
+ private cachedAddress;
51
+ /**
52
+ * Custom signer factory — inject ethers.js or viem signer externally.
53
+ * Jika tidak disediakan, WalletManager hanya mengelola key storage.
54
+ */
55
+ private signerFactory?;
56
+ constructor(privateKey: string, signerFactory?: (privateKey: string, chainId: ChainId) => WalletSigner);
57
+ /**
58
+ * Set or update the signer factory after instantiation.
59
+ */
60
+ setSignerFactory(factory: (privateKey: string, chainId: ChainId) => WalletSigner): void;
61
+ /**
62
+ * Get solver's address (same across all EVM chains).
63
+ *
64
+ * Jika signer factory tersedia, derive dari signer.
65
+ * Otherwise, compute from private key secara manual.
66
+ */
67
+ getAddress(): Address;
68
+ /**
69
+ * Sign an arbitrary message with the solver's private key.
70
+ *
71
+ * Requires signerFactory to be configured.
72
+ */
73
+ signMessage(message: string): Promise<string>;
74
+ /**
75
+ * Send a transaction using the solver's configured signer for the chain.
76
+ */
77
+ sendTransaction(chainId: ChainId, tx: {
78
+ to: Address;
79
+ data?: `0x${string}`;
80
+ value?: bigint;
81
+ gas?: bigint;
82
+ }): Promise<Hash | string>;
83
+ /**
84
+ * Get a signer for a specific chain.
85
+
86
+ *
87
+ * The returned signer has the same address but is connected
88
+ * to the provider for the specified chain.
89
+ */
90
+ getSigner(chainId: ChainId): WalletSigner;
91
+ /**
92
+ * Get private key (careful — only use internally).
93
+ */
94
+ getPrivateKey(): string;
95
+ }
96
+ //# sourceMappingURL=wallet-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wallet-manager.d.ts","sourceRoot":"","sources":["../../../src/shared/wallet-manager/wallet-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAEjE;;;;GAIG;AACH,MAAM,WAAW,YAAY;IACzB,6BAA6B;IAC7B,UAAU,IAAI,OAAO,CAAC;IAEtB,6BAA6B;IAC7B,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE9C,gCAAgC;IAChC,aAAa,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE9E;;;;;OAKG;IACH,eAAe,CAAC,CAAC,EAAE,EAAE;QACjB,EAAE,EAAE,OAAO,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;QACrB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,GAAG,CAAC,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC;CAC9B;AAED;;;;;GAKG;AACH,qBAAa,aAAa;IACtB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,aAAa,CAAwB;IAE7C;;;OAGG;IACH,OAAO,CAAC,aAAa,CAAC,CAAyD;gBAG3E,UAAU,EAAE,MAAM,EAClB,aAAa,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,YAAY;IAU1E;;OAEG;IACH,gBAAgB,CAAC,OAAO,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,YAAY,GAAG,IAAI;IAKvF;;;;;OAKG;IACH,UAAU,IAAI,OAAO;IAkBrB;;;;OAIG;IACG,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAKnD;;OAEG;IACG,eAAe,CACjB,OAAO,EAAE,OAAO,EAChB,EAAE,EAAE;QAAE,EAAE,EAAE,OAAO,CAAC;QAAC,IAAI,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,GACxE,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC;IAQzB;;;;;;OAMG;IACH,SAAS,CAAC,OAAO,EAAE,OAAO,GAAG,YAAY;IAUzC;;OAEG;IACH,aAAa,IAAI,MAAM;CAG1B"}
@@ -0,0 +1,104 @@
1
+ /**
2
+ * Wallet Manager
3
+ *
4
+ * Manages solver's wallet across multiple EVM chains.
5
+ * Single private key → multiple chain connections.
6
+ *
7
+ * NOTE: Ini adalah lightweight abstraction tanpa dependency ethers.js.
8
+ * Di Phase B+ akan di-extend dengan actual ethers.Wallet integration.
9
+ * Untuk sekarang, menyediakan interface dan basic key management.
10
+ *
11
+ * USAGE:
12
+ * const wallet = new WalletManager("0xprivatekey...", chainRegistry, providerManager);
13
+ * const address = wallet.getAddress();
14
+ * const sig = await wallet.signMessage("hello");
15
+ */
16
+ /**
17
+ * WalletManager
18
+ *
19
+ * Mengelola private key solver dan menyediakan signing capabilities.
20
+ * Address sama di semua EVM chains (derived dari private key).
21
+ */
22
+ export class WalletManager {
23
+ privateKey;
24
+ cachedAddress = null;
25
+ /**
26
+ * Custom signer factory — inject ethers.js or viem signer externally.
27
+ * Jika tidak disediakan, WalletManager hanya mengelola key storage.
28
+ */
29
+ signerFactory;
30
+ constructor(privateKey, signerFactory) {
31
+ if (!privateKey || !privateKey.startsWith("0x")) {
32
+ throw new Error("Private key must be a hex string starting with 0x");
33
+ }
34
+ this.privateKey = privateKey;
35
+ this.signerFactory = signerFactory;
36
+ }
37
+ /**
38
+ * Set or update the signer factory after instantiation.
39
+ */
40
+ setSignerFactory(factory) {
41
+ this.signerFactory = factory;
42
+ this.cachedAddress = null; // Invalidate cached address
43
+ }
44
+ /**
45
+ * Get solver's address (same across all EVM chains).
46
+ *
47
+ * Jika signer factory tersedia, derive dari signer.
48
+ * Otherwise, compute from private key secara manual.
49
+ */
50
+ getAddress() {
51
+ if (this.cachedAddress)
52
+ return this.cachedAddress;
53
+ if (this.signerFactory) {
54
+ // Use signer factory to get address (any chain works, address is same)
55
+ const signer = this.signerFactory(this.privateKey, 1);
56
+ this.cachedAddress = signer.getAddress();
57
+ return this.cachedAddress;
58
+ }
59
+ // Placeholder: In production, derive from private key using elliptic curve
60
+ // For now, store as-is (actual derivation requires crypto library)
61
+ throw new Error("WalletManager requires a signerFactory to derive address. " +
62
+ "Provide one via constructor or use ethers.js integration.");
63
+ }
64
+ /**
65
+ * Sign an arbitrary message with the solver's private key.
66
+ *
67
+ * Requires signerFactory to be configured.
68
+ */
69
+ async signMessage(message) {
70
+ const signer = this.getSigner(1); // Chain doesn't matter for signing
71
+ return signer.signMessage(message);
72
+ }
73
+ /**
74
+ * Send a transaction using the solver's configured signer for the chain.
75
+ */
76
+ async sendTransaction(chainId, tx) {
77
+ const signer = this.getSigner(chainId);
78
+ if (!signer.sendTransaction) {
79
+ throw new Error(`Configured signer for chain ${chainId} does not support sendTransaction`);
80
+ }
81
+ return signer.sendTransaction(tx);
82
+ }
83
+ /**
84
+ * Get a signer for a specific chain.
85
+
86
+ *
87
+ * The returned signer has the same address but is connected
88
+ * to the provider for the specified chain.
89
+ */
90
+ getSigner(chainId) {
91
+ if (!this.signerFactory) {
92
+ throw new Error("WalletManager requires a signerFactory. " +
93
+ "Provide one via constructor.");
94
+ }
95
+ return this.signerFactory(this.privateKey, chainId);
96
+ }
97
+ /**
98
+ * Get private key (careful — only use internally).
99
+ */
100
+ getPrivateKey() {
101
+ return this.privateKey;
102
+ }
103
+ }
104
+ //# sourceMappingURL=wallet-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wallet-manager.js","sourceRoot":"","sources":["../../../src/shared/wallet-manager/wallet-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAiCH;;;;;GAKG;AACH,MAAM,OAAO,aAAa;IACL,UAAU,CAAS;IAC5B,aAAa,GAAmB,IAAI,CAAC;IAE7C;;;OAGG;IACK,aAAa,CAA0D;IAE/E,YACI,UAAkB,EAClB,aAAsE;QAEtE,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9C,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;QACzE,CAAC;QAED,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,gBAAgB,CAAC,OAA+D;QAC5E,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;QAC7B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC,4BAA4B;IAC3D,CAAC;IAED;;;;;OAKG;IACH,UAAU;QACN,IAAI,IAAI,CAAC,aAAa;YAAE,OAAO,IAAI,CAAC,aAAa,CAAC;QAElD,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,uEAAuE;YACvE,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;YACtD,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;YACzC,OAAO,IAAI,CAAC,aAAa,CAAC;QAC9B,CAAC;QAED,2EAA2E;QAC3E,mEAAmE;QACnE,MAAM,IAAI,KAAK,CACX,4DAA4D;YAC5D,2DAA2D,CAC9D,CAAC;IACN,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,WAAW,CAAC,OAAe;QAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,mCAAmC;QACrE,OAAO,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CACjB,OAAgB,EAChB,EAAuE;QAEvE,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACvC,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,+BAA+B,OAAO,mCAAmC,CAAC,CAAC;QAC/F,CAAC;QACD,OAAO,MAAM,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;IACtC,CAAC;IAED;;;;;;OAMG;IACH,SAAS,CAAC,OAAgB;QACtB,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CACX,0CAA0C;gBAC1C,8BAA8B,CACjC,CAAC;QACN,CAAC;QACD,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACxD,CAAC;IAED;;OAEG;IACH,aAAa;QACT,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;CACJ"}
@@ -0,0 +1,62 @@
1
+ /**
2
+ * Agent Config — Phase F
3
+ *
4
+ * Aggregates all sub-module configurations into a single
5
+ * LiquidityAgentConfig struct. Provides `buildAgentConfig()`
6
+ * that applies SDK defaults so callers only need to specify overrides.
7
+ *
8
+ * Used by: LiquidityAgent constructor
9
+ */
10
+ import type { AgentConfig } from "../types/agent";
11
+ import type { PricingConfig } from "../types/pricing";
12
+ import type { InventoryManagerConfig } from "../inventory/inventory-manager";
13
+ import type { SettlementConfig } from "../settlement/settlement-manager";
14
+ /**
15
+ * Full configuration for a LiquidityAgent instance.
16
+ *
17
+ * Combines agent identity, pricing engine config, inventory
18
+ * management config, and settlement config into a single object.
19
+ *
20
+ * EXAMPLE:
21
+ * const config = buildAgentConfig({
22
+ * agent: {
23
+ * name: "LiquidityBot-01",
24
+ * privateKey: "0xabc...",
25
+ * supportedChains: [1, 137],
26
+ * supportedTokens: ["USDC"],
27
+ * mode: "simulate",
28
+ * },
29
+ * contractAddress: "0xSettlementContractAddress",
30
+ * });
31
+ */
32
+ export interface LiquidityAgentConfig {
33
+ /** Core agent identity and behavior */
34
+ agent: AgentConfig;
35
+ /** Fee calculation parameters */
36
+ pricing: PricingConfig;
37
+ /** Inventory reserve and management parameters */
38
+ inventory: InventoryManagerConfig;
39
+ /** Settlement confirmation and retry parameters */
40
+ settlement: SettlementConfig;
41
+ /** Deployed IntentSettlement contract address */
42
+ contractAddress: string;
43
+ /** Map of chainId → RPC URL for connecting to chains */
44
+ rpcUrls: Record<number, string>;
45
+ }
46
+ /**
47
+ * Build a complete LiquidityAgentConfig by merging partial overrides
48
+ * with SDK defaults.
49
+ *
50
+ * Only `agent.privateKey` and `contractAddress` are truly required
51
+ * for a real deployment; everything else has sensible defaults.
52
+ *
53
+ * @param partial - Partial config object. Nested objects are shallow-merged.
54
+ * @returns Fully populated LiquidityAgentConfig
55
+ */
56
+ export declare function buildAgentConfig(partial: Partial<LiquidityAgentConfig> & {
57
+ agent?: Partial<AgentConfig>;
58
+ pricing?: Partial<PricingConfig>;
59
+ inventory?: Partial<InventoryManagerConfig>;
60
+ settlement?: Partial<SettlementConfig>;
61
+ }): LiquidityAgentConfig;
62
+ //# sourceMappingURL=agent-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-config.d.ts","sourceRoot":"","sources":["../../../src/solver/agent/agent-config.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAa,MAAM,gBAAgB,CAAC;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAC7E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAOzE;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,WAAW,oBAAoB;IACjC,uCAAuC;IACvC,KAAK,EAAE,WAAW,CAAC;IAEnB,iCAAiC;IACjC,OAAO,EAAE,aAAa,CAAC;IAEvB,kDAAkD;IAClD,SAAS,EAAE,sBAAsB,CAAC;IAElC,mDAAmD;IACnD,UAAU,EAAE,gBAAgB,CAAC;IAE7B,iDAAiD;IACjD,eAAe,EAAE,MAAM,CAAC;IAExB,wDAAwD;IACxD,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACnC;AAqCD;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAC5B,OAAO,EAAE,OAAO,CAAC,oBAAoB,CAAC,GAAG;IACrC,KAAK,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IACjC,SAAS,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAC5C,UAAU,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAC1C,GACF,oBAAoB,CAStB"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * Agent Config — Phase F
3
+ *
4
+ * Aggregates all sub-module configurations into a single
5
+ * LiquidityAgentConfig struct. Provides `buildAgentConfig()`
6
+ * that applies SDK defaults so callers only need to specify overrides.
7
+ *
8
+ * Used by: LiquidityAgent constructor
9
+ */
10
+ // ─────────────────────────────────────────────
11
+ // Defaults
12
+ // ─────────────────────────────────────────────
13
+ const DEFAULT_AGENT = {
14
+ name: "LiquidityAgent",
15
+ privateKey: "0x0000000000000000000000000000000000000000000000000000000000000001",
16
+ supportedChains: [1, 137],
17
+ supportedTokens: ["USDC"],
18
+ mode: "simulate",
19
+ maxConcurrentIntents: 5,
20
+ intentTimeout: 3600,
21
+ };
22
+ const DEFAULT_PRICING = {
23
+ baseFeePercent: 0.005,
24
+ minFeeUSD: 1,
25
+ maxFeePercent: 0.03,
26
+ slippageSharePercent: 0.5,
27
+ };
28
+ const DEFAULT_INVENTORY = {
29
+ minReservePercent: 0.1,
30
+ };
31
+ const DEFAULT_SETTLEMENT = {
32
+ requiredConfirmations: 3,
33
+ maxClaimRetries: 3,
34
+ watchIntervalMs: 30_000,
35
+ };
36
+ // ─────────────────────────────────────────────
37
+ // Builder
38
+ // ─────────────────────────────────────────────
39
+ /**
40
+ * Build a complete LiquidityAgentConfig by merging partial overrides
41
+ * with SDK defaults.
42
+ *
43
+ * Only `agent.privateKey` and `contractAddress` are truly required
44
+ * for a real deployment; everything else has sensible defaults.
45
+ *
46
+ * @param partial - Partial config object. Nested objects are shallow-merged.
47
+ * @returns Fully populated LiquidityAgentConfig
48
+ */
49
+ export function buildAgentConfig(partial) {
50
+ return {
51
+ agent: { ...DEFAULT_AGENT, ...(partial.agent ?? {}) },
52
+ pricing: { ...DEFAULT_PRICING, ...(partial.pricing ?? {}) },
53
+ inventory: { ...DEFAULT_INVENTORY, ...(partial.inventory ?? {}) },
54
+ settlement: { ...DEFAULT_SETTLEMENT, ...(partial.settlement ?? {}) },
55
+ contractAddress: partial.contractAddress ?? "0x0000000000000000000000000000000000000000",
56
+ rpcUrls: partial.rpcUrls ?? {},
57
+ };
58
+ }
59
+ //# sourceMappingURL=agent-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-config.js","sourceRoot":"","sources":["../../../src/solver/agent/agent-config.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAkDH,gDAAgD;AAChD,WAAW;AACX,gDAAgD;AAEhD,MAAM,aAAa,GAAgB;IAC/B,IAAI,EAAE,gBAAgB;IACtB,UAAU,EAAE,oEAAoE;IAChF,eAAe,EAAE,CAAC,CAAC,EAAE,GAAG,CAAc;IACtC,eAAe,EAAE,CAAC,MAAM,CAAC;IACzB,IAAI,EAAE,UAAuB;IAC7B,oBAAoB,EAAE,CAAC;IACvB,aAAa,EAAE,IAAI;CACtB,CAAC;AAEF,MAAM,eAAe,GAAkB;IACnC,cAAc,EAAE,KAAK;IACrB,SAAS,EAAE,CAAC;IACZ,aAAa,EAAE,IAAI;IACnB,oBAAoB,EAAE,GAAG;CAC5B,CAAC;AAEF,MAAM,iBAAiB,GAA2B;IAC9C,iBAAiB,EAAE,GAAG;CACzB,CAAC;AAEF,MAAM,kBAAkB,GAAqB;IACzC,qBAAqB,EAAE,CAAC;IACxB,eAAe,EAAE,CAAC;IAClB,eAAe,EAAE,MAAM;CAC1B,CAAC;AAEF,gDAAgD;AAChD,UAAU;AACV,gDAAgD;AAEhD;;;;;;;;;GASG;AACH,MAAM,UAAU,gBAAgB,CAC5B,OAKC;IAED,OAAO;QACH,KAAK,EAAE,EAAE,GAAG,aAAa,EAAE,GAAG,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE;QACrD,OAAO,EAAE,EAAE,GAAG,eAAe,EAAE,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE;QAC3D,SAAS,EAAE,EAAE,GAAG,iBAAiB,EAAE,GAAG,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC,EAAE;QACjE,UAAU,EAAE,EAAE,GAAG,kBAAkB,EAAE,GAAG,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC,EAAE;QACpE,eAAe,EAAE,OAAO,CAAC,eAAe,IAAI,4CAA4C;QACxF,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,EAAE;KACjC,CAAC;AACN,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Agent Module — Barrel Export
3
+ */
4
+ export * from "./agent-config";
5
+ export * from "./liquidity-agent";
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/solver/agent/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Agent Module — Barrel Export
3
+ */
4
+ export * from "./agent-config";
5
+ export * from "./liquidity-agent";
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/solver/agent/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC"}
@@ -0,0 +1,118 @@
1
+ /**
2
+ * Liquidity Agent — Phase F
3
+ *
4
+ * Core orchestrator that ties together all solver subsystems
5
+ * (Inventory, Pricing, Settlement) into a single agent that can
6
+ * evaluate, price, and solve cross-chain bridge intents.
7
+ *
8
+ * Lifecycle:
9
+ * 1. new LiquidityAgent(deps, config)
10
+ * 2. await agent.initialize() → loads balances, derives address
11
+ * 3. agent.start() → begins watching settlements
12
+ * 4. await agent.solve(intent) → full solve cycle
13
+ * 5. agent.stop() → cleanup
14
+ *
15
+ * Used by: SDK consumer (examples/autonomous-agent.ts, Phase K)
16
+ */
17
+ import type { Address } from "../../types/common";
18
+ import type { AgentStatus, SolutionResult } from "../types/agent";
19
+ import type { SolverIntent } from "../types/intent";
20
+ import type { PricingResult } from "../types/pricing";
21
+ import type { InventoryManager } from "../inventory/inventory-manager";
22
+ import type { DynamicPricing } from "../pricing/dynamic-pricing";
23
+ import type { SettlementManager } from "../settlement/settlement-manager";
24
+ import type { WalletManager } from "../../shared/wallet-manager/wallet-manager";
25
+ import type { LiquidityAgentConfig } from "./agent-config";
26
+ export declare class LiquidityAgent {
27
+ private readonly inventoryManager;
28
+ private readonly dynamicPricing;
29
+ private readonly settlementManager;
30
+ private readonly walletManager;
31
+ private readonly config;
32
+ private status;
33
+ private agentAddress;
34
+ constructor(inventoryManager: InventoryManager, dynamicPricing: DynamicPricing, settlementManager: SettlementManager, walletManager: WalletManager, config: LiquidityAgentConfig);
35
+ /**
36
+ * Initialize the agent: load on-chain balances and derive the agent address.
37
+ *
38
+ * Must be called before solve() / canSolve() / getQuote().
39
+ */
40
+ initialize(): Promise<void>;
41
+ /**
42
+ * Check whether this agent can solve a given intent.
43
+ *
44
+ * Validation order:
45
+ * 1. Intent type must be "bridge"
46
+ * 2. Source and target chains must be in supportedChains
47
+ * 3. Token must be in supportedTokens
48
+ * 4. Intent must not be expired (deadline > now)
49
+ * 5. Inventory must have enough to fulfill (canFulfill)
50
+ *
51
+ * @param intent - SolverIntent to evaluate
52
+ * @returns true if solvable, false otherwise
53
+ */
54
+ canSolve(intent: SolverIntent): boolean;
55
+ /**
56
+ * Get a price quote for a given intent via the DynamicPricing engine.
57
+ *
58
+ * Does NOT lock inventory or execute anything.
59
+ *
60
+ * @param intent - SolverIntent to price
61
+ * @returns PricingResult with full fee breakdown
62
+ */
63
+ getQuote(intent: SolverIntent): PricingResult;
64
+ /**
65
+ * Full solve cycle for a single intent.
66
+ *
67
+ * Steps:
68
+ * 1. Validate via canSolve()
69
+ * 2. Price via getQuote()
70
+ * 3. Check profitability (shouldReject)
71
+ * 4. Lock inventory on target chain
72
+ * 5. Send funds on target chain (simulate or live)
73
+ * 6. Confirm deduction from inventory
74
+ * 7. Trigger settlement (proof + claim)
75
+ * 8. Return SolutionResult
76
+ *
77
+ * On any failure after lock, inventory is unlocked automatically.
78
+ *
79
+ * @param intent - SolverIntent to solve
80
+ * @returns SolutionResult with success/error details
81
+ */
82
+ solve(intent: SolverIntent): Promise<SolutionResult>;
83
+ /**
84
+ * Start the agent: begin watching for pending settlements.
85
+ *
86
+ * @param _mempoolUrl - Reserved for Phase G mempool integration
87
+ */
88
+ start(_mempoolUrl?: string): void;
89
+ /**
90
+ * Stop the agent: stop settlement watcher.
91
+ */
92
+ stop(): void;
93
+ /**
94
+ * Get the current agent status.
95
+ */
96
+ getStatus(): AgentStatus;
97
+ /**
98
+ * Get the agent's on-chain address.
99
+ */
100
+ getAgentAddress(): Address | null;
101
+ /**
102
+ * Send funds to the intent recipient on the target chain.
103
+ *
104
+ * In **simulate** mode: generates a fake txHash from the intentId.
105
+ * In **live** mode: executes a real ERC-20 transfer via WalletManager.
106
+ *
107
+ * @param intent - The intent being solved
108
+ * @param bridgeIntent - Extracted bridge parameters
109
+ * @param _pricing - Pricing result (reserved for future gas limit calc)
110
+ * @returns Target chain transaction hash
111
+ */
112
+ private sendOnTargetChain;
113
+ /**
114
+ * Build an error SolutionResult.
115
+ */
116
+ private errorResult;
117
+ }
118
+ //# sourceMappingURL=liquidity-agent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"liquidity-agent.d.ts","sourceRoot":"","sources":["../../../src/solver/agent/liquidity-agent.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAiB,MAAM,oBAAoB,CAAC;AACjE,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAoB,MAAM,gBAAgB,CAAC;AACpF,OAAO,KAAK,EAAE,YAAY,EAAgB,MAAM,iBAAiB,CAAC;AAElE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAEhF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAO3D,qBAAa,cAAc;IAKnB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,MAAM;IAR3B,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,YAAY,CAAwB;gBAGvB,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,EAC9B,iBAAiB,EAAE,iBAAiB,EACpC,aAAa,EAAE,aAAa,EAC5B,MAAM,EAAE,oBAAoB;IAOjD;;;;OAIG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAMjC;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO;IA6BvC;;;;;;;OAOG;IACH,QAAQ,CAAC,MAAM,EAAE,YAAY,GAAG,aAAa;IAI7C;;;;;;;;;;;;;;;;;OAiBG;IACG,KAAK,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC;IAgH1D;;;;OAIG;IACH,KAAK,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI;IAKjC;;OAEG;IACH,IAAI,IAAI,IAAI;IAKZ;;OAEG;IACH,SAAS,IAAI,WAAW;IAIxB;;OAEG;IACH,eAAe,IAAI,OAAO,GAAG,IAAI;IAQjC;;;;;;;;;;OAUG;YACW,iBAAiB;IAqC/B;;OAEG;IACH,OAAO,CAAC,WAAW;CAqBtB"}