@paraswap/dex-lib 3.11.12-cables.1 → 4.0.1-cables.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 (555) hide show
  1. package/.github/workflows/ci.yaml +1 -1
  2. package/build/abi/balancer-v3/batch-router.json +989 -0
  3. package/build/abi/balancer-v3/router.json +1792 -0
  4. package/build/abi/balancer-v3/vault-extension.json +2834 -0
  5. package/build/abi/permit2.json +581 -0
  6. package/build/composed-event-subscriber.js +10 -2
  7. package/build/composed-event-subscriber.js.map +1 -1
  8. package/build/config.js +3 -0
  9. package/build/config.js.map +1 -1
  10. package/build/dex/aave-gsm/aave-gsm-pool.js +10 -1
  11. package/build/dex/aave-gsm/aave-gsm-pool.js.map +1 -1
  12. package/build/dex/aave-gsm/aave-gsm.js +15 -9
  13. package/build/dex/aave-gsm/aave-gsm.js.map +1 -1
  14. package/build/dex/aave-v2/aave-v2.js +8 -3
  15. package/build/dex/aave-v2/aave-v2.js.map +1 -1
  16. package/build/dex/aave-v3/aave-v3.js +10 -3
  17. package/build/dex/aave-v3/aave-v3.js.map +1 -1
  18. package/build/dex/aave-v3-stata/aave-v3-stata.js +12 -6
  19. package/build/dex/aave-v3-stata/aave-v3-stata.js.map +1 -1
  20. package/build/dex/algebra/algebra-factory.js +6 -2
  21. package/build/dex/algebra/algebra-factory.js.map +1 -1
  22. package/build/dex/algebra/algebra-pool-v1_1.js +20 -5
  23. package/build/dex/algebra/algebra-pool-v1_1.js.map +1 -1
  24. package/build/dex/algebra/algebra-pool-v1_9.js +15 -4
  25. package/build/dex/algebra/algebra-pool-v1_9.js.map +1 -1
  26. package/build/dex/algebra/algebra-pool-v1_9_bidirectional_fee.js +6 -0
  27. package/build/dex/algebra/algebra-pool-v1_9_bidirectional_fee.js.map +1 -1
  28. package/build/dex/algebra/algebra.js +47 -34
  29. package/build/dex/algebra/algebra.js.map +1 -1
  30. package/build/dex/algebra/lib/AlgebraMath.js.map +1 -1
  31. package/build/dex/algebra/lib/Constants.js +3 -3
  32. package/build/dex/algebra/lib/Constants.js.map +1 -1
  33. package/build/dex/angle-staked-stable/angle-staked-stable-pool.js +13 -6
  34. package/build/dex/angle-staked-stable/angle-staked-stable-pool.js.map +1 -1
  35. package/build/dex/angle-staked-stable/angle-staked-stable.js +12 -6
  36. package/build/dex/angle-staked-stable/angle-staked-stable.js.map +1 -1
  37. package/build/dex/angle-transmuter/angle-transmuter-pool.d.ts +1 -1
  38. package/build/dex/angle-transmuter/angle-transmuter-pool.js +7 -0
  39. package/build/dex/angle-transmuter/angle-transmuter-pool.js.map +1 -1
  40. package/build/dex/angle-transmuter/angle-transmuter.js +16 -9
  41. package/build/dex/angle-transmuter/angle-transmuter.js.map +1 -1
  42. package/build/dex/angle-transmuter/backedOracle.js +4 -2
  43. package/build/dex/angle-transmuter/backedOracle.js.map +1 -1
  44. package/build/dex/angle-transmuter/morphoOracle.js +9 -3
  45. package/build/dex/angle-transmuter/morphoOracle.js.map +1 -1
  46. package/build/dex/angle-transmuter/morphoVault.js +2 -1
  47. package/build/dex/angle-transmuter/morphoVault.js.map +1 -1
  48. package/build/dex/angle-transmuter/pyth.js +4 -2
  49. package/build/dex/angle-transmuter/pyth.js.map +1 -1
  50. package/build/dex/angle-transmuter/redstone.js +3 -1
  51. package/build/dex/angle-transmuter/redstone.js.map +1 -1
  52. package/build/dex/angle-transmuter/transmuter.js +6 -1
  53. package/build/dex/angle-transmuter/transmuter.js.map +1 -1
  54. package/build/dex/augustus-approvals.js +7 -0
  55. package/build/dex/augustus-approvals.js.map +1 -1
  56. package/build/dex/augustus-rfq.js +3 -2
  57. package/build/dex/augustus-rfq.js.map +1 -1
  58. package/build/dex/balancer-v1/balancer-v1-pool.js +9 -2
  59. package/build/dex/balancer-v1/balancer-v1-pool.js.map +1 -1
  60. package/build/dex/balancer-v1/balancer-v1.js +15 -7
  61. package/build/dex/balancer-v1/balancer-v1.js.map +1 -1
  62. package/build/dex/balancer-v2/balancer-v2-math.js +46 -46
  63. package/build/dex/balancer-v2/balancer-v2-math.js.map +1 -1
  64. package/build/dex/balancer-v2/balancer-v2.d.ts +1 -1
  65. package/build/dex/balancer-v2/balancer-v2.js +51 -34
  66. package/build/dex/balancer-v2/balancer-v2.js.map +1 -1
  67. package/build/dex/balancer-v2/constants.js +2 -2
  68. package/build/dex/balancer-v2/constants.js.map +1 -1
  69. package/build/dex/balancer-v2/pools/gyro/Gyro3Pool.js +5 -3
  70. package/build/dex/balancer-v2/pools/gyro/Gyro3Pool.js.map +1 -1
  71. package/build/dex/balancer-v2/pools/gyro/GyroEPool.js +3 -1
  72. package/build/dex/balancer-v2/pools/gyro/GyroEPool.js.map +1 -1
  73. package/build/dex/balancer-v2/pools/linear/LinearPool.js +8 -5
  74. package/build/dex/balancer-v2/pools/linear/LinearPool.js.map +1 -1
  75. package/build/dex/balancer-v2/pools/phantom-stable/PhantomStablePool.js +9 -5
  76. package/build/dex/balancer-v2/pools/phantom-stable/PhantomStablePool.js.map +1 -1
  77. package/build/dex/balancer-v2/pools/stable/StableMath.js +1 -1
  78. package/build/dex/balancer-v2/pools/stable/StableMath.js.map +1 -1
  79. package/build/dex/balancer-v2/pools/stable/StablePool.js +4 -0
  80. package/build/dex/balancer-v2/pools/stable/StablePool.js.map +1 -1
  81. package/build/dex/balancer-v2/pools/weighted/WeightedMath.js +2 -2
  82. package/build/dex/balancer-v2/pools/weighted/WeightedMath.js.map +1 -1
  83. package/build/dex/balancer-v2/pools/weighted/WeightedPool.js +3 -0
  84. package/build/dex/balancer-v2/pools/weighted/WeightedPool.js.map +1 -1
  85. package/build/dex/balancer-v3/balancer-v3-pool.d.ts +80 -0
  86. package/build/dex/balancer-v3/balancer-v3-pool.js +461 -0
  87. package/build/dex/balancer-v3/balancer-v3-pool.js.map +1 -0
  88. package/build/dex/balancer-v3/balancer-v3.d.ts +57 -0
  89. package/build/dex/balancer-v3/balancer-v3.js +394 -0
  90. package/build/dex/balancer-v3/balancer-v3.js.map +1 -0
  91. package/build/dex/balancer-v3/config.d.ts +9 -0
  92. package/build/dex/balancer-v3/config.js +41 -0
  93. package/build/dex/balancer-v3/config.js.map +1 -0
  94. package/build/dex/balancer-v3/getGasCost.d.ts +2 -0
  95. package/build/dex/balancer-v3/getGasCost.js +41 -0
  96. package/build/dex/balancer-v3/getGasCost.js.map +1 -0
  97. package/build/dex/balancer-v3/getOnChainState.d.ts +10 -0
  98. package/build/dex/balancer-v3/getOnChainState.js +164 -0
  99. package/build/dex/balancer-v3/getOnChainState.js.map +1 -0
  100. package/build/dex/balancer-v3/getPoolsApi.d.ts +2 -0
  101. package/build/dex/balancer-v3/getPoolsApi.js +85 -0
  102. package/build/dex/balancer-v3/getPoolsApi.js.map +1 -0
  103. package/build/dex/balancer-v3/getTopPoolsApi.d.ts +17 -0
  104. package/build/dex/balancer-v3/getTopPoolsApi.js +66 -0
  105. package/build/dex/balancer-v3/getTopPoolsApi.js.map +1 -0
  106. package/build/dex/balancer-v3/optimizer.d.ts +2 -0
  107. package/build/dex/balancer-v3/optimizer.js +48 -0
  108. package/build/dex/balancer-v3/optimizer.js.map +1 -0
  109. package/build/dex/balancer-v3/stablePool.d.ts +7 -0
  110. package/build/dex/balancer-v3/stablePool.js +73 -0
  111. package/build/dex/balancer-v3/stablePool.js.map +1 -0
  112. package/build/dex/balancer-v3/types.d.ts +62 -0
  113. package/build/dex/balancer-v3/types.js +3 -0
  114. package/build/dex/balancer-v3/types.js.map +1 -0
  115. package/build/dex/balancer-v3/weightedPool.d.ts +1 -0
  116. package/build/dex/balancer-v3/weightedPool.js +6 -0
  117. package/build/dex/balancer-v3/weightedPool.js.map +1 -0
  118. package/build/dex/bancor/bancor.js +2 -1
  119. package/build/dex/bancor/bancor.js.map +1 -1
  120. package/build/dex/bebop/bebop.js +17 -6
  121. package/build/dex/bebop/bebop.js.map +1 -1
  122. package/build/dex/bebop/constants.js +1 -1
  123. package/build/dex/bebop/constants.js.map +1 -1
  124. package/build/dex/bebop/rate-fetcher.js +11 -0
  125. package/build/dex/bebop/rate-fetcher.js.map +1 -1
  126. package/build/dex/bebop/types.js +1 -4
  127. package/build/dex/bebop/types.js.map +1 -1
  128. package/build/dex/cables/cables.js +22 -67
  129. package/build/dex/cables/cables.js.map +1 -1
  130. package/build/dex/cables/constants.js +1 -1
  131. package/build/dex/cables/constants.js.map +1 -1
  132. package/build/dex/cables/rate-fetcher.js +24 -7
  133. package/build/dex/cables/rate-fetcher.js.map +1 -1
  134. package/build/dex/cables/types.js +1 -4
  135. package/build/dex/cables/types.js.map +1 -1
  136. package/build/dex/camelot/camelot.js +47 -26
  137. package/build/dex/camelot/camelot.js.map +1 -1
  138. package/build/dex/compound/compound.js +2 -1
  139. package/build/dex/compound/compound.js.map +1 -1
  140. package/build/dex/concentrator-arusd/concentrator-arusd-event.js +4 -1
  141. package/build/dex/concentrator-arusd/concentrator-arusd-event.js.map +1 -1
  142. package/build/dex/concentrator-arusd/concentrator-arusd.js +13 -5
  143. package/build/dex/concentrator-arusd/concentrator-arusd.js.map +1 -1
  144. package/build/dex/curve-v1/curve-v1.js +19 -9
  145. package/build/dex/curve-v1/curve-v1.js.map +1 -1
  146. package/build/dex/curve-v1/forks/curve-forks/curve-forks.js +2 -1
  147. package/build/dex/curve-v1/forks/curve-forks/curve-forks.js.map +1 -1
  148. package/build/dex/curve-v1/forks/swerve/swerve.js +1 -1
  149. package/build/dex/curve-v1/forks/swerve/swerve.js.map +1 -1
  150. package/build/dex/curve-v1/pools/3pool.js +5 -0
  151. package/build/dex/curve-v1/pools/3pool.js.map +1 -1
  152. package/build/dex/curve-v1/pools/curve-metapool.js +33 -8
  153. package/build/dex/curve-v1/pools/curve-metapool.js.map +1 -1
  154. package/build/dex/curve-v1/pools/curve-pool.js +18 -5
  155. package/build/dex/curve-v1/pools/curve-pool.js.map +1 -1
  156. package/build/dex/curve-v1/pools/sETHpool.js +1 -0
  157. package/build/dex/curve-v1/pools/sETHpool.js.map +1 -1
  158. package/build/dex/curve-v1-factory/config.js +8 -8
  159. package/build/dex/curve-v1-factory/config.js.map +1 -1
  160. package/build/dex/curve-v1-factory/constants.js +1 -1
  161. package/build/dex/curve-v1-factory/constants.js.map +1 -1
  162. package/build/dex/curve-v1-factory/curve-v1-factory.js +29 -19
  163. package/build/dex/curve-v1-factory/curve-v1-factory.js.map +1 -1
  164. package/build/dex/curve-v1-factory/curve-v1-pool-manager.js +28 -21
  165. package/build/dex/curve-v1-factory/curve-v1-pool-manager.js.map +1 -1
  166. package/build/dex/curve-v1-factory/price-handlers/price-handler.js +10 -6
  167. package/build/dex/curve-v1-factory/price-handlers/price-handler.js.map +1 -1
  168. package/build/dex/curve-v1-factory/state-polling-pools/custom-pool-polling.js +16 -0
  169. package/build/dex/curve-v1-factory/state-polling-pools/custom-pool-polling.js.map +1 -1
  170. package/build/dex/curve-v1-factory/state-polling-pools/factory-pool-polling.js +13 -0
  171. package/build/dex/curve-v1-factory/state-polling-pools/factory-pool-polling.js.map +1 -1
  172. package/build/dex/curve-v1-factory/state-polling-pools/pool-polling-base.js +31 -9
  173. package/build/dex/curve-v1-factory/state-polling-pools/pool-polling-base.js.map +1 -1
  174. package/build/dex/curve-v1-stable-ng/curve-v1-stable-ng.js +12 -6
  175. package/build/dex/curve-v1-stable-ng/curve-v1-stable-ng.js.map +1 -1
  176. package/build/dex/curve-v2/curve-v2.js +9 -5
  177. package/build/dex/curve-v2/curve-v2.js.map +1 -1
  178. package/build/dex/dexalot/constants.js +1 -1
  179. package/build/dex/dexalot/constants.js.map +1 -1
  180. package/build/dex/dexalot/dexalot.js +20 -6
  181. package/build/dex/dexalot/dexalot.js.map +1 -1
  182. package/build/dex/dexalot/rate-fetcher.js +16 -0
  183. package/build/dex/dexalot/rate-fetcher.js.map +1 -1
  184. package/build/dex/dodo-v1/dodo-v1.js +2 -1
  185. package/build/dex/dodo-v1/dodo-v1.js.map +1 -1
  186. package/build/dex/dodo-v2.js +3 -2
  187. package/build/dex/dodo-v2.js.map +1 -1
  188. package/build/dex/etherfi.js +9 -4
  189. package/build/dex/etherfi.js.map +1 -1
  190. package/build/dex/fluid-dex/config.js +1 -1
  191. package/build/dex/fluid-dex/config.js.map +1 -1
  192. package/build/dex/fluid-dex/fluid-dex-factory.js +19 -12
  193. package/build/dex/fluid-dex/fluid-dex-factory.js.map +1 -1
  194. package/build/dex/fluid-dex/fluid-dex-liquidity-proxy.js +10 -3
  195. package/build/dex/fluid-dex/fluid-dex-liquidity-proxy.js.map +1 -1
  196. package/build/dex/fluid-dex/fluid-dex.js +22 -15
  197. package/build/dex/fluid-dex/fluid-dex.js.map +1 -1
  198. package/build/dex/fx-protocol-rusd/fx-protocol-rusd-event.js +5 -0
  199. package/build/dex/fx-protocol-rusd/fx-protocol-rusd-event.js.map +1 -1
  200. package/build/dex/fx-protocol-rusd/fx-protocol-rusd.js +13 -4
  201. package/build/dex/fx-protocol-rusd/fx-protocol-rusd.js.map +1 -1
  202. package/build/dex/generic-rfq/generic-rfq.js +12 -8
  203. package/build/dex/generic-rfq/generic-rfq.js.map +1 -1
  204. package/build/dex/generic-rfq/rate-fetcher.js +15 -3
  205. package/build/dex/generic-rfq/rate-fetcher.js.map +1 -1
  206. package/build/dex/gmx/fast-price-feed.js +11 -3
  207. package/build/dex/gmx/fast-price-feed.js.map +1 -1
  208. package/build/dex/gmx/gmx.js +15 -10
  209. package/build/dex/gmx/gmx.js.map +1 -1
  210. package/build/dex/gmx/pool.js +7 -3
  211. package/build/dex/gmx/pool.js.map +1 -1
  212. package/build/dex/gmx/usdg.js +2 -1
  213. package/build/dex/gmx/usdg.js.map +1 -1
  214. package/build/dex/gmx/vault-price-feed.js +16 -4
  215. package/build/dex/gmx/vault-price-feed.js.map +1 -1
  216. package/build/dex/gmx/vault-utils.js +1 -0
  217. package/build/dex/gmx/vault-utils.js.map +1 -1
  218. package/build/dex/gmx/vault.js +17 -1
  219. package/build/dex/gmx/vault.js.map +1 -1
  220. package/build/dex/hashflow/constants.js +1 -1
  221. package/build/dex/hashflow/constants.js.map +1 -1
  222. package/build/dex/hashflow/hashflow.js +35 -20
  223. package/build/dex/hashflow/hashflow.js.map +1 -1
  224. package/build/dex/hashflow/rate-fetcher.js +10 -0
  225. package/build/dex/hashflow/rate-fetcher.js.map +1 -1
  226. package/build/dex/hashflow/types.js +2 -4
  227. package/build/dex/hashflow/types.js.map +1 -1
  228. package/build/dex/idle-dao/idle-dao.js +14 -5
  229. package/build/dex/idle-dao/idle-dao.js.map +1 -1
  230. package/build/dex/index.js +19 -12
  231. package/build/dex/index.js.map +1 -1
  232. package/build/dex/infusion/infusion.js +9 -5
  233. package/build/dex/infusion/infusion.js.map +1 -1
  234. package/build/dex/jarvis-v6/chainLinkpriceFeed-event.js +2 -1
  235. package/build/dex/jarvis-v6/chainLinkpriceFeed-event.js.map +1 -1
  236. package/build/dex/jarvis-v6/jarvis-v6-events.js +6 -0
  237. package/build/dex/jarvis-v6/jarvis-v6-events.js.map +1 -1
  238. package/build/dex/jarvis-v6/jarvis-v6.js +13 -5
  239. package/build/dex/jarvis-v6/jarvis-v6.js.map +1 -1
  240. package/build/dex/jarvis-v6/syntheteumPool-event.js +2 -0
  241. package/build/dex/jarvis-v6/syntheteumPool-event.js.map +1 -1
  242. package/build/dex/kyberdmm/kyberdmm.js +12 -5
  243. package/build/dex/kyberdmm/kyberdmm.js.map +1 -1
  244. package/build/dex/kyberdmm/pool.js +4 -1
  245. package/build/dex/kyberdmm/pool.js.map +1 -1
  246. package/build/dex/lido/lido.js +6 -3
  247. package/build/dex/lido/lido.js.map +1 -1
  248. package/build/dex/limit-order-exchange.js +1 -0
  249. package/build/dex/limit-order-exchange.js.map +1 -1
  250. package/build/dex/lite-psm/lite-psm-event-pool.js +10 -3
  251. package/build/dex/lite-psm/lite-psm-event-pool.js.map +1 -1
  252. package/build/dex/lite-psm/lite-psm.js +13 -4
  253. package/build/dex/lite-psm/lite-psm.js.map +1 -1
  254. package/build/dex/maker-psm/maker-psm.js +21 -7
  255. package/build/dex/maker-psm/maker-psm.js.map +1 -1
  256. package/build/dex/maverick-v1/config.js +3 -3
  257. package/build/dex/maverick-v1/config.js.map +1 -1
  258. package/build/dex/maverick-v1/maverick-math/maverick-basic-math.js +2 -2
  259. package/build/dex/maverick-v1/maverick-math/maverick-basic-math.js.map +1 -1
  260. package/build/dex/maverick-v1/maverick-math/maverick-pool-math.js +5 -0
  261. package/build/dex/maverick-v1/maverick-math/maverick-pool-math.js.map +1 -1
  262. package/build/dex/maverick-v1/maverick-v1-pool.js +17 -1
  263. package/build/dex/maverick-v1/maverick-v1-pool.js.map +1 -1
  264. package/build/dex/maverick-v1/maverick-v1.js +13 -5
  265. package/build/dex/maverick-v1/maverick-v1.js.map +1 -1
  266. package/build/dex/maverick-v2/config.js +2 -2
  267. package/build/dex/maverick-v2/config.js.map +1 -1
  268. package/build/dex/maverick-v2/maverick-math/maverick-basic-math.js +1 -1
  269. package/build/dex/maverick-v2/maverick-math/maverick-basic-math.js.map +1 -1
  270. package/build/dex/maverick-v2/maverick-math/maverick-pool-math.js +12 -0
  271. package/build/dex/maverick-v2/maverick-math/maverick-pool-math.js.map +1 -1
  272. package/build/dex/maverick-v2/maverick-v2-pool.js +20 -1
  273. package/build/dex/maverick-v2/maverick-v2-pool.js.map +1 -1
  274. package/build/dex/maverick-v2/maverick-v2.js +14 -6
  275. package/build/dex/maverick-v2/maverick-v2.js.map +1 -1
  276. package/build/dex/nerve/nerve-math.js +6 -4
  277. package/build/dex/nerve/nerve-math.js.map +1 -1
  278. package/build/dex/nerve/nerve-pool.js +11 -1
  279. package/build/dex/nerve/nerve-pool.js.map +1 -1
  280. package/build/dex/nerve/nerve.js +14 -8
  281. package/build/dex/nerve/nerve.js.map +1 -1
  282. package/build/dex/oswap/config.js +1 -1
  283. package/build/dex/oswap/config.js.map +1 -1
  284. package/build/dex/oswap/oswap-pool.js +9 -1
  285. package/build/dex/oswap/oswap-pool.js.map +1 -1
  286. package/build/dex/oswap/oswap.js +13 -6
  287. package/build/dex/oswap/oswap.js.map +1 -1
  288. package/build/dex/pancakeswap-v3/constants.js +3 -3
  289. package/build/dex/pancakeswap-v3/constants.js.map +1 -1
  290. package/build/dex/pancakeswap-v3/contract-math/FixedPoint128.js +1 -1
  291. package/build/dex/pancakeswap-v3/contract-math/FixedPoint128.js.map +1 -1
  292. package/build/dex/pancakeswap-v3/contract-math/FixedPoint96.js +2 -2
  293. package/build/dex/pancakeswap-v3/contract-math/FixedPoint96.js.map +1 -1
  294. package/build/dex/pancakeswap-v3/contract-math/TickMath.js +4 -4
  295. package/build/dex/pancakeswap-v3/contract-math/TickMath.js.map +1 -1
  296. package/build/dex/pancakeswap-v3/pancakeswap-v3-factory.js +6 -2
  297. package/build/dex/pancakeswap-v3/pancakeswap-v3-factory.js.map +1 -1
  298. package/build/dex/pancakeswap-v3/pancakeswap-v3-pool.js +17 -4
  299. package/build/dex/pancakeswap-v3/pancakeswap-v3-pool.js.map +1 -1
  300. package/build/dex/pancakeswap-v3/pancakeswap-v3.js +43 -31
  301. package/build/dex/pancakeswap-v3/pancakeswap-v3.js.map +1 -1
  302. package/build/dex/paraswap-limit-orders/paraswap-limit-orders.js +10 -4
  303. package/build/dex/paraswap-limit-orders/paraswap-limit-orders.js.map +1 -1
  304. package/build/dex/polygon-migrator/constants.js +1 -1
  305. package/build/dex/polygon-migrator/constants.js.map +1 -1
  306. package/build/dex/polygon-migrator/polygon-migrator.js +12 -3
  307. package/build/dex/polygon-migrator/polygon-migrator.js.map +1 -1
  308. package/build/dex/quick-perps/fast-price-feed.js +11 -3
  309. package/build/dex/quick-perps/fast-price-feed.js.map +1 -1
  310. package/build/dex/quick-perps/pool.js +7 -3
  311. package/build/dex/quick-perps/pool.js.map +1 -1
  312. package/build/dex/quick-perps/quick-perps.js +15 -10
  313. package/build/dex/quick-perps/quick-perps.js.map +1 -1
  314. package/build/dex/quick-perps/usdq.js +2 -1
  315. package/build/dex/quick-perps/usdq.js.map +1 -1
  316. package/build/dex/quick-perps/vault-price-feed.js +13 -4
  317. package/build/dex/quick-perps/vault-price-feed.js.map +1 -1
  318. package/build/dex/quick-perps/vault-utils.js +1 -0
  319. package/build/dex/quick-perps/vault-utils.js.map +1 -1
  320. package/build/dex/quick-perps/vault.js +17 -1
  321. package/build/dex/quick-perps/vault.js.map +1 -1
  322. package/build/dex/quickswap/quickswap-v3.js +1 -1
  323. package/build/dex/quickswap/quickswap-v3.js.map +1 -1
  324. package/build/dex/quickswap/thena-fusion.js +1 -1
  325. package/build/dex/quickswap/thena-fusion.js.map +1 -1
  326. package/build/dex/simple-exchange.js +14 -2
  327. package/build/dex/simple-exchange.js.map +1 -1
  328. package/build/dex/sky-converter/sky-converter.js +11 -4
  329. package/build/dex/sky-converter/sky-converter.js.map +1 -1
  330. package/build/dex/smoothy/smoothy.js +3 -2
  331. package/build/dex/smoothy/smoothy.js.map +1 -1
  332. package/build/dex/solidly/forks-override/aerodrome.js +3 -1
  333. package/build/dex/solidly/forks-override/aerodrome.js.map +1 -1
  334. package/build/dex/solidly/forks-override/chronos.js +3 -1
  335. package/build/dex/solidly/forks-override/chronos.js.map +1 -1
  336. package/build/dex/solidly/forks-override/equalizer.js +3 -1
  337. package/build/dex/solidly/forks-override/equalizer.js.map +1 -1
  338. package/build/dex/solidly/forks-override/pharaohV1.js +1 -1
  339. package/build/dex/solidly/forks-override/pharaohV1.js.map +1 -1
  340. package/build/dex/solidly/forks-override/ramses.js +3 -1
  341. package/build/dex/solidly/forks-override/ramses.js.map +1 -1
  342. package/build/dex/solidly/forks-override/spiritSwapV2.js +4 -2
  343. package/build/dex/solidly/forks-override/spiritSwapV2.js.map +1 -1
  344. package/build/dex/solidly/forks-override/thena.js +3 -1
  345. package/build/dex/solidly/forks-override/thena.js.map +1 -1
  346. package/build/dex/solidly/forks-override/usdfi.js +1 -1
  347. package/build/dex/solidly/forks-override/usdfi.js.map +1 -1
  348. package/build/dex/solidly/forks-override/velocimeter.js +3 -1
  349. package/build/dex/solidly/forks-override/velocimeter.js.map +1 -1
  350. package/build/dex/solidly/forks-override/velodrome.js +3 -1
  351. package/build/dex/solidly/forks-override/velodrome.js.map +1 -1
  352. package/build/dex/solidly/forks-override/velodromeV2.js +3 -1
  353. package/build/dex/solidly/forks-override/velodromeV2.js.map +1 -1
  354. package/build/dex/solidly/solidly-ethereum.js +4 -2
  355. package/build/dex/solidly/solidly-ethereum.js.map +1 -1
  356. package/build/dex/solidly/solidly.js +22 -18
  357. package/build/dex/solidly/solidly.js.map +1 -1
  358. package/build/dex/solidly-v3/constants.js +2 -2
  359. package/build/dex/solidly-v3/constants.js.map +1 -1
  360. package/build/dex/solidly-v3/contract-math/FixedPoint128.js +1 -1
  361. package/build/dex/solidly-v3/contract-math/FixedPoint128.js.map +1 -1
  362. package/build/dex/solidly-v3/contract-math/FixedPoint96.js +2 -2
  363. package/build/dex/solidly-v3/contract-math/FixedPoint96.js.map +1 -1
  364. package/build/dex/solidly-v3/contract-math/TickMath.js +4 -4
  365. package/build/dex/solidly-v3/contract-math/TickMath.js.map +1 -1
  366. package/build/dex/solidly-v3/solidly-v3-factory.js +6 -2
  367. package/build/dex/solidly-v3/solidly-v3-factory.js.map +1 -1
  368. package/build/dex/solidly-v3/solidly-v3-pool.js +18 -4
  369. package/build/dex/solidly-v3/solidly-v3-pool.js.map +1 -1
  370. package/build/dex/solidly-v3/solidly-v3.js +38 -27
  371. package/build/dex/solidly-v3/solidly-v3.js.map +1 -1
  372. package/build/dex/spark/constants.js +2 -2
  373. package/build/dex/spark/constants.js.map +1 -1
  374. package/build/dex/spark/spark-sdai-pool.js +6 -1
  375. package/build/dex/spark/spark-sdai-pool.js.map +1 -1
  376. package/build/dex/spark/spark.js +15 -3
  377. package/build/dex/spark/spark.js.map +1 -1
  378. package/build/dex/stable-pool/stable-pool.js +3 -2
  379. package/build/dex/stable-pool/stable-pool.js.map +1 -1
  380. package/build/dex/stader/stader-pool.js +6 -2
  381. package/build/dex/stader/stader-pool.js.map +1 -1
  382. package/build/dex/stader/stader.js +15 -5
  383. package/build/dex/stader/stader.js.map +1 -1
  384. package/build/dex/stkgho/stkgho-pool.js +8 -1
  385. package/build/dex/stkgho/stkgho-pool.js.map +1 -1
  386. package/build/dex/stkgho/stkgho.js +14 -8
  387. package/build/dex/stkgho/stkgho.js.map +1 -1
  388. package/build/dex/swaap-v2/constants.js +2 -2
  389. package/build/dex/swaap-v2/constants.js.map +1 -1
  390. package/build/dex/swaap-v2/rate-fetcher.js +9 -0
  391. package/build/dex/swaap-v2/rate-fetcher.js.map +1 -1
  392. package/build/dex/swaap-v2/swaap-v2.js +22 -13
  393. package/build/dex/swaap-v2/swaap-v2.js.map +1 -1
  394. package/build/dex/swell/rsweth-pool.js +4 -1
  395. package/build/dex/swell/rsweth-pool.js.map +1 -1
  396. package/build/dex/swell/swell.js +16 -5
  397. package/build/dex/swell/swell.js.map +1 -1
  398. package/build/dex/swell/sweth-pool.js +4 -1
  399. package/build/dex/swell/sweth-pool.js.map +1 -1
  400. package/build/dex/synthetix/constants.js +2 -2
  401. package/build/dex/synthetix/constants.js.map +1 -1
  402. package/build/dex/synthetix/contract-math/TickMath.js +4 -4
  403. package/build/dex/synthetix/contract-math/TickMath.js.map +1 -1
  404. package/build/dex/synthetix/synthetix-state.js +10 -2
  405. package/build/dex/synthetix/synthetix-state.js.map +1 -1
  406. package/build/dex/synthetix/synthetix.d.ts +1 -1
  407. package/build/dex/synthetix/synthetix.js +13 -4
  408. package/build/dex/synthetix/synthetix.js.map +1 -1
  409. package/build/dex/trader-joe-v2.1/base.js +3 -0
  410. package/build/dex/trader-joe-v2.1/base.js.map +1 -1
  411. package/build/dex/trader-joe-v2.1/trader-joe-v2.1.js +2 -2
  412. package/build/dex/trader-joe-v2.1/trader-joe-v2.1.js.map +1 -1
  413. package/build/dex/trader-joe-v2.1/trader-joe-v2.2.js +2 -2
  414. package/build/dex/trader-joe-v2.1/trader-joe-v2.2.js.map +1 -1
  415. package/build/dex/uniswap-v2/biswap.js +4 -1
  416. package/build/dex/uniswap-v2/biswap.js.map +1 -1
  417. package/build/dex/uniswap-v2/dfyn.js +3 -1
  418. package/build/dex/uniswap-v2/dfyn.js.map +1 -1
  419. package/build/dex/uniswap-v2/excalibur.js +4 -1
  420. package/build/dex/uniswap-v2/excalibur.js.map +1 -1
  421. package/build/dex/uniswap-v2/mdex.js +4 -1
  422. package/build/dex/uniswap-v2/mdex.js.map +1 -1
  423. package/build/dex/uniswap-v2/nomiswap-v2.js +4 -1
  424. package/build/dex/uniswap-v2/nomiswap-v2.js.map +1 -1
  425. package/build/dex/uniswap-v2/uniswap-v2-factory.js +6 -2
  426. package/build/dex/uniswap-v2/uniswap-v2-factory.js.map +1 -1
  427. package/build/dex/uniswap-v2/uniswap-v2.js +36 -11
  428. package/build/dex/uniswap-v2/uniswap-v2.js.map +1 -1
  429. package/build/dex/uniswap-v3/constants.js +3 -3
  430. package/build/dex/uniswap-v3/constants.js.map +1 -1
  431. package/build/dex/uniswap-v3/contract-math/FixedPoint128.js +1 -1
  432. package/build/dex/uniswap-v3/contract-math/FixedPoint128.js.map +1 -1
  433. package/build/dex/uniswap-v3/contract-math/FixedPoint96.js +2 -2
  434. package/build/dex/uniswap-v3/contract-math/FixedPoint96.js.map +1 -1
  435. package/build/dex/uniswap-v3/contract-math/TickMath.js +4 -4
  436. package/build/dex/uniswap-v3/contract-math/TickMath.js.map +1 -1
  437. package/build/dex/uniswap-v3/forks/ramses-v2/ramses-v2-pool.js +8 -1
  438. package/build/dex/uniswap-v3/forks/ramses-v2/ramses-v2-pool.js.map +1 -1
  439. package/build/dex/uniswap-v3/forks/velodrome-slipstream/velodrome-slipstream-factory.js +1 -4
  440. package/build/dex/uniswap-v3/forks/velodrome-slipstream/velodrome-slipstream-factory.js.map +1 -1
  441. package/build/dex/uniswap-v3/forks/velodrome-slipstream/velodrome-slipstream-pool.js +2 -5
  442. package/build/dex/uniswap-v3/forks/velodrome-slipstream/velodrome-slipstream-pool.js.map +1 -1
  443. package/build/dex/uniswap-v3/forks/velodrome-slipstream/velodrome-slipstream.js +13 -6
  444. package/build/dex/uniswap-v3/forks/velodrome-slipstream/velodrome-slipstream.js.map +1 -1
  445. package/build/dex/uniswap-v3/uniswap-v3-factory.js +6 -2
  446. package/build/dex/uniswap-v3/uniswap-v3-factory.js.map +1 -1
  447. package/build/dex/uniswap-v3/uniswap-v3-pool.js +18 -4
  448. package/build/dex/uniswap-v3/uniswap-v3-pool.js.map +1 -1
  449. package/build/dex/uniswap-v3/uniswap-v3.js +32 -19
  450. package/build/dex/uniswap-v3/uniswap-v3.js.map +1 -1
  451. package/build/dex/uniswap-v3.js +4 -2
  452. package/build/dex/uniswap-v3.js.map +1 -1
  453. package/build/dex/usual-bond/usual-bond.js +10 -4
  454. package/build/dex/usual-bond/usual-bond.js.map +1 -1
  455. package/build/dex/weth/weth.js +10 -3
  456. package/build/dex/weth/weth.js.map +1 -1
  457. package/build/dex/wombat/wombat-bmw.js +10 -4
  458. package/build/dex/wombat/wombat-bmw.js.map +1 -1
  459. package/build/dex/wombat/wombat-pool.js +21 -17
  460. package/build/dex/wombat/wombat-pool.js.map +1 -1
  461. package/build/dex/wombat/wombat-quoter.js +4 -0
  462. package/build/dex/wombat/wombat-quoter.js.map +1 -1
  463. package/build/dex/wombat/wombat.js +25 -16
  464. package/build/dex/wombat/wombat.js.map +1 -1
  465. package/build/dex/woo-fi-v2/constants.js +3 -3
  466. package/build/dex/woo-fi-v2/constants.js.map +1 -1
  467. package/build/dex/woo-fi-v2/woo-fi-v2-math.js +3 -1
  468. package/build/dex/woo-fi-v2/woo-fi-v2-math.js.map +1 -1
  469. package/build/dex/woo-fi-v2/woo-fi-v2-pool.js +2 -0
  470. package/build/dex/woo-fi-v2/woo-fi-v2-pool.js.map +1 -1
  471. package/build/dex/woo-fi-v2/woo-fi-v2.js +20 -6
  472. package/build/dex/woo-fi-v2/woo-fi-v2.js.map +1 -1
  473. package/build/dex/wsteth/wsteth.js +20 -14
  474. package/build/dex/wsteth/wsteth.js.map +1 -1
  475. package/build/dex/wusdm/wusdm-pool.js +6 -0
  476. package/build/dex/wusdm/wusdm-pool.js.map +1 -1
  477. package/build/dex/wusdm/wusdm.js +12 -4
  478. package/build/dex/wusdm/wusdm.js.map +1 -1
  479. package/build/dex-helper/dummy-dex-helper.js +17 -5
  480. package/build/dex-helper/dummy-dex-helper.js.map +1 -1
  481. package/build/dex-helper/dummy-limit-order-provider.js +3 -5
  482. package/build/dex-helper/dummy-limit-order-provider.js.map +1 -1
  483. package/build/executor/Executor01BytecodeBuilder.js +1 -4
  484. package/build/executor/Executor01BytecodeBuilder.js.map +1 -1
  485. package/build/executor/Executor02BytecodeBuilder.js +1 -4
  486. package/build/executor/Executor02BytecodeBuilder.js.map +1 -1
  487. package/build/executor/Executor03BytecodeBuilder.js +1 -4
  488. package/build/executor/Executor03BytecodeBuilder.js.map +1 -1
  489. package/build/executor/ExecutorBytecodeBuilder.js +3 -0
  490. package/build/executor/ExecutorBytecodeBuilder.js.map +1 -1
  491. package/build/executor/ExecutorDetector.js +19 -14
  492. package/build/executor/ExecutorDetector.js.map +1 -1
  493. package/build/executor/WETHBytecodeBuilder.js +1 -4
  494. package/build/executor/WETHBytecodeBuilder.js.map +1 -1
  495. package/build/generic-swap-transaction-builder.js +7 -0
  496. package/build/generic-swap-transaction-builder.js.map +1 -1
  497. package/build/implementations/local-paraswap-sdk.js +7 -0
  498. package/build/implementations/local-paraswap-sdk.js.map +1 -1
  499. package/build/lib/api3-feed.js +6 -4
  500. package/build/lib/api3-feed.js.map +1 -1
  501. package/build/lib/benqi/staked-avax.js +2 -1
  502. package/build/lib/benqi/staked-avax.js.map +1 -1
  503. package/build/lib/chainlink.js +4 -2
  504. package/build/lib/chainlink.js.map +1 -1
  505. package/build/lib/fetcher/fetcher.js +8 -3
  506. package/build/lib/fetcher/fetcher.js.map +1 -1
  507. package/build/lib/fetcher/wsFetcher.js +11 -4
  508. package/build/lib/fetcher/wsFetcher.js.map +1 -1
  509. package/build/lib/generics-events-subscribers/erc20-event-subscriber.js +4 -2
  510. package/build/lib/generics-events-subscribers/erc20-event-subscriber.js.map +1 -1
  511. package/build/lib/log-messages-suppressor.js +8 -5
  512. package/build/lib/log-messages-suppressor.js.map +1 -1
  513. package/build/lib/multi-wrapper.js +3 -0
  514. package/build/lib/multi-wrapper.js.map +1 -1
  515. package/build/lib/promise-scheduler.js +4 -1
  516. package/build/lib/promise-scheduler.js.map +1 -1
  517. package/build/lib/stateful-rpc-poller/state-polling-manager.js +19 -17
  518. package/build/lib/stateful-rpc-poller/state-polling-manager.js.map +1 -1
  519. package/build/lib/stateful-rpc-poller/stateful-rpc-poller.js +64 -43
  520. package/build/lib/stateful-rpc-poller/stateful-rpc-poller.js.map +1 -1
  521. package/build/lib/task-scheduler.js +7 -1
  522. package/build/lib/task-scheduler.js.map +1 -1
  523. package/build/lib/validators.js +2 -0
  524. package/build/lib/validators.js.map +1 -1
  525. package/build/pools-helper.js +2 -0
  526. package/build/pools-helper.js.map +1 -1
  527. package/build/pricing-helper.js +3 -0
  528. package/build/pricing-helper.js.map +1 -1
  529. package/build/router/buy.js +3 -1
  530. package/build/router/buy.js.map +1 -1
  531. package/build/router/directswap.js +5 -4
  532. package/build/router/directswap.js.map +1 -1
  533. package/build/router/index.js +11 -8
  534. package/build/router/index.js.map +1 -1
  535. package/build/router/megaswap.js +3 -1
  536. package/build/router/megaswap.js.map +1 -1
  537. package/build/router/multiswap.js +3 -1
  538. package/build/router/multiswap.js.map +1 -1
  539. package/build/router/payload-encoder.js +1 -0
  540. package/build/router/payload-encoder.js.map +1 -1
  541. package/build/router/simpleswap.js +7 -2
  542. package/build/router/simpleswap.js.map +1 -1
  543. package/build/router/simpleswapnft.js +1 -1
  544. package/build/router/simpleswapnft.js.map +1 -1
  545. package/build/stateful-event-subscriber.js +20 -13
  546. package/build/stateful-event-subscriber.js.map +1 -1
  547. package/build/transaction-builder.js +3 -0
  548. package/build/transaction-builder.js.map +1 -1
  549. package/package.json +7 -7
  550. package/src/dex/algebra/lib/AlgebraMath.ts +3 -3
  551. package/src/dex/angle-transmuter/angle-transmuter-pool.ts +1 -1
  552. package/src/dex/balancer-v2/balancer-v2.ts +1 -1
  553. package/src/dex/cables/cables.ts +7 -57
  554. package/src/dex/synthetix/synthetix.ts +1 -1
  555. package/tsconfig.json +2 -2
@@ -0,0 +1,1792 @@
1
+ [
2
+ {
3
+ "inputs": [
4
+ {
5
+ "internalType": "contract IVault",
6
+ "name": "vault",
7
+ "type": "address"
8
+ },
9
+ {
10
+ "internalType": "contract IWETH",
11
+ "name": "weth",
12
+ "type": "address"
13
+ },
14
+ {
15
+ "internalType": "contract IPermit2",
16
+ "name": "permit2",
17
+ "type": "address"
18
+ },
19
+ {
20
+ "internalType": "string",
21
+ "name": "version",
22
+ "type": "string"
23
+ }
24
+ ],
25
+ "stateMutability": "nonpayable",
26
+ "type": "constructor"
27
+ },
28
+ {
29
+ "inputs": [
30
+ {
31
+ "internalType": "address",
32
+ "name": "target",
33
+ "type": "address"
34
+ }
35
+ ],
36
+ "name": "AddressEmptyCode",
37
+ "type": "error"
38
+ },
39
+ {
40
+ "inputs": [
41
+ {
42
+ "internalType": "address",
43
+ "name": "account",
44
+ "type": "address"
45
+ }
46
+ ],
47
+ "name": "AddressInsufficientBalance",
48
+ "type": "error"
49
+ },
50
+ {
51
+ "inputs": [],
52
+ "name": "ErrorSelectorNotFound",
53
+ "type": "error"
54
+ },
55
+ {
56
+ "inputs": [],
57
+ "name": "EthTransfer",
58
+ "type": "error"
59
+ },
60
+ {
61
+ "inputs": [],
62
+ "name": "FailedInnerCall",
63
+ "type": "error"
64
+ },
65
+ {
66
+ "inputs": [],
67
+ "name": "InputLengthMismatch",
68
+ "type": "error"
69
+ },
70
+ {
71
+ "inputs": [],
72
+ "name": "InsufficientEth",
73
+ "type": "error"
74
+ },
75
+ {
76
+ "inputs": [],
77
+ "name": "ReentrancyGuardReentrantCall",
78
+ "type": "error"
79
+ },
80
+ {
81
+ "inputs": [
82
+ {
83
+ "internalType": "uint8",
84
+ "name": "bits",
85
+ "type": "uint8"
86
+ },
87
+ {
88
+ "internalType": "uint256",
89
+ "name": "value",
90
+ "type": "uint256"
91
+ }
92
+ ],
93
+ "name": "SafeCastOverflowedUintDowncast",
94
+ "type": "error"
95
+ },
96
+ {
97
+ "inputs": [
98
+ {
99
+ "internalType": "address",
100
+ "name": "token",
101
+ "type": "address"
102
+ }
103
+ ],
104
+ "name": "SafeERC20FailedOperation",
105
+ "type": "error"
106
+ },
107
+ {
108
+ "inputs": [
109
+ {
110
+ "internalType": "address",
111
+ "name": "sender",
112
+ "type": "address"
113
+ }
114
+ ],
115
+ "name": "SenderIsNotVault",
116
+ "type": "error"
117
+ },
118
+ {
119
+ "inputs": [],
120
+ "name": "SwapDeadline",
121
+ "type": "error"
122
+ },
123
+ {
124
+ "inputs": [
125
+ {
126
+ "internalType": "address",
127
+ "name": "pool",
128
+ "type": "address"
129
+ },
130
+ {
131
+ "internalType": "uint256[]",
132
+ "name": "maxAmountsIn",
133
+ "type": "uint256[]"
134
+ },
135
+ {
136
+ "internalType": "uint256",
137
+ "name": "minBptAmountOut",
138
+ "type": "uint256"
139
+ },
140
+ {
141
+ "internalType": "bool",
142
+ "name": "wethIsEth",
143
+ "type": "bool"
144
+ },
145
+ {
146
+ "internalType": "bytes",
147
+ "name": "userData",
148
+ "type": "bytes"
149
+ }
150
+ ],
151
+ "name": "addLiquidityCustom",
152
+ "outputs": [
153
+ {
154
+ "internalType": "uint256[]",
155
+ "name": "amountsIn",
156
+ "type": "uint256[]"
157
+ },
158
+ {
159
+ "internalType": "uint256",
160
+ "name": "bptAmountOut",
161
+ "type": "uint256"
162
+ },
163
+ {
164
+ "internalType": "bytes",
165
+ "name": "returnData",
166
+ "type": "bytes"
167
+ }
168
+ ],
169
+ "stateMutability": "payable",
170
+ "type": "function"
171
+ },
172
+ {
173
+ "inputs": [
174
+ {
175
+ "components": [
176
+ {
177
+ "internalType": "address",
178
+ "name": "sender",
179
+ "type": "address"
180
+ },
181
+ {
182
+ "internalType": "address",
183
+ "name": "pool",
184
+ "type": "address"
185
+ },
186
+ {
187
+ "internalType": "uint256[]",
188
+ "name": "maxAmountsIn",
189
+ "type": "uint256[]"
190
+ },
191
+ {
192
+ "internalType": "uint256",
193
+ "name": "minBptAmountOut",
194
+ "type": "uint256"
195
+ },
196
+ {
197
+ "internalType": "enum AddLiquidityKind",
198
+ "name": "kind",
199
+ "type": "uint8"
200
+ },
201
+ {
202
+ "internalType": "bool",
203
+ "name": "wethIsEth",
204
+ "type": "bool"
205
+ },
206
+ {
207
+ "internalType": "bytes",
208
+ "name": "userData",
209
+ "type": "bytes"
210
+ }
211
+ ],
212
+ "internalType": "struct IRouterCommon.AddLiquidityHookParams",
213
+ "name": "params",
214
+ "type": "tuple"
215
+ }
216
+ ],
217
+ "name": "addLiquidityHook",
218
+ "outputs": [
219
+ {
220
+ "internalType": "uint256[]",
221
+ "name": "amountsIn",
222
+ "type": "uint256[]"
223
+ },
224
+ {
225
+ "internalType": "uint256",
226
+ "name": "bptAmountOut",
227
+ "type": "uint256"
228
+ },
229
+ {
230
+ "internalType": "bytes",
231
+ "name": "returnData",
232
+ "type": "bytes"
233
+ }
234
+ ],
235
+ "stateMutability": "nonpayable",
236
+ "type": "function"
237
+ },
238
+ {
239
+ "inputs": [
240
+ {
241
+ "internalType": "address",
242
+ "name": "pool",
243
+ "type": "address"
244
+ },
245
+ {
246
+ "internalType": "uint256[]",
247
+ "name": "maxAmountsIn",
248
+ "type": "uint256[]"
249
+ },
250
+ {
251
+ "internalType": "uint256",
252
+ "name": "exactBptAmountOut",
253
+ "type": "uint256"
254
+ },
255
+ {
256
+ "internalType": "bool",
257
+ "name": "wethIsEth",
258
+ "type": "bool"
259
+ },
260
+ {
261
+ "internalType": "bytes",
262
+ "name": "userData",
263
+ "type": "bytes"
264
+ }
265
+ ],
266
+ "name": "addLiquidityProportional",
267
+ "outputs": [
268
+ {
269
+ "internalType": "uint256[]",
270
+ "name": "amountsIn",
271
+ "type": "uint256[]"
272
+ }
273
+ ],
274
+ "stateMutability": "payable",
275
+ "type": "function"
276
+ },
277
+ {
278
+ "inputs": [
279
+ {
280
+ "internalType": "address",
281
+ "name": "pool",
282
+ "type": "address"
283
+ },
284
+ {
285
+ "internalType": "contract IERC20",
286
+ "name": "tokenIn",
287
+ "type": "address"
288
+ },
289
+ {
290
+ "internalType": "uint256",
291
+ "name": "maxAmountIn",
292
+ "type": "uint256"
293
+ },
294
+ {
295
+ "internalType": "uint256",
296
+ "name": "exactBptAmountOut",
297
+ "type": "uint256"
298
+ },
299
+ {
300
+ "internalType": "bool",
301
+ "name": "wethIsEth",
302
+ "type": "bool"
303
+ },
304
+ {
305
+ "internalType": "bytes",
306
+ "name": "userData",
307
+ "type": "bytes"
308
+ }
309
+ ],
310
+ "name": "addLiquiditySingleTokenExactOut",
311
+ "outputs": [
312
+ {
313
+ "internalType": "uint256",
314
+ "name": "amountIn",
315
+ "type": "uint256"
316
+ }
317
+ ],
318
+ "stateMutability": "payable",
319
+ "type": "function"
320
+ },
321
+ {
322
+ "inputs": [
323
+ {
324
+ "internalType": "address",
325
+ "name": "pool",
326
+ "type": "address"
327
+ },
328
+ {
329
+ "internalType": "uint256[]",
330
+ "name": "exactAmountsIn",
331
+ "type": "uint256[]"
332
+ },
333
+ {
334
+ "internalType": "uint256",
335
+ "name": "minBptAmountOut",
336
+ "type": "uint256"
337
+ },
338
+ {
339
+ "internalType": "bool",
340
+ "name": "wethIsEth",
341
+ "type": "bool"
342
+ },
343
+ {
344
+ "internalType": "bytes",
345
+ "name": "userData",
346
+ "type": "bytes"
347
+ }
348
+ ],
349
+ "name": "addLiquidityUnbalanced",
350
+ "outputs": [
351
+ {
352
+ "internalType": "uint256",
353
+ "name": "bptAmountOut",
354
+ "type": "uint256"
355
+ }
356
+ ],
357
+ "stateMutability": "payable",
358
+ "type": "function"
359
+ },
360
+ {
361
+ "inputs": [
362
+ {
363
+ "internalType": "address",
364
+ "name": "pool",
365
+ "type": "address"
366
+ },
367
+ {
368
+ "internalType": "uint256[]",
369
+ "name": "amountsIn",
370
+ "type": "uint256[]"
371
+ },
372
+ {
373
+ "internalType": "bool",
374
+ "name": "wethIsEth",
375
+ "type": "bool"
376
+ },
377
+ {
378
+ "internalType": "bytes",
379
+ "name": "userData",
380
+ "type": "bytes"
381
+ }
382
+ ],
383
+ "name": "donate",
384
+ "outputs": [],
385
+ "stateMutability": "payable",
386
+ "type": "function"
387
+ },
388
+ {
389
+ "inputs": [],
390
+ "name": "getSender",
391
+ "outputs": [
392
+ {
393
+ "internalType": "address",
394
+ "name": "",
395
+ "type": "address"
396
+ }
397
+ ],
398
+ "stateMutability": "view",
399
+ "type": "function"
400
+ },
401
+ {
402
+ "inputs": [
403
+ {
404
+ "internalType": "address",
405
+ "name": "pool",
406
+ "type": "address"
407
+ },
408
+ {
409
+ "internalType": "contract IERC20[]",
410
+ "name": "tokens",
411
+ "type": "address[]"
412
+ },
413
+ {
414
+ "internalType": "uint256[]",
415
+ "name": "exactAmountsIn",
416
+ "type": "uint256[]"
417
+ },
418
+ {
419
+ "internalType": "uint256",
420
+ "name": "minBptAmountOut",
421
+ "type": "uint256"
422
+ },
423
+ {
424
+ "internalType": "bool",
425
+ "name": "wethIsEth",
426
+ "type": "bool"
427
+ },
428
+ {
429
+ "internalType": "bytes",
430
+ "name": "userData",
431
+ "type": "bytes"
432
+ }
433
+ ],
434
+ "name": "initialize",
435
+ "outputs": [
436
+ {
437
+ "internalType": "uint256",
438
+ "name": "bptAmountOut",
439
+ "type": "uint256"
440
+ }
441
+ ],
442
+ "stateMutability": "payable",
443
+ "type": "function"
444
+ },
445
+ {
446
+ "inputs": [
447
+ {
448
+ "components": [
449
+ {
450
+ "internalType": "address",
451
+ "name": "sender",
452
+ "type": "address"
453
+ },
454
+ {
455
+ "internalType": "address",
456
+ "name": "pool",
457
+ "type": "address"
458
+ },
459
+ {
460
+ "internalType": "contract IERC20[]",
461
+ "name": "tokens",
462
+ "type": "address[]"
463
+ },
464
+ {
465
+ "internalType": "uint256[]",
466
+ "name": "exactAmountsIn",
467
+ "type": "uint256[]"
468
+ },
469
+ {
470
+ "internalType": "uint256",
471
+ "name": "minBptAmountOut",
472
+ "type": "uint256"
473
+ },
474
+ {
475
+ "internalType": "bool",
476
+ "name": "wethIsEth",
477
+ "type": "bool"
478
+ },
479
+ {
480
+ "internalType": "bytes",
481
+ "name": "userData",
482
+ "type": "bytes"
483
+ }
484
+ ],
485
+ "internalType": "struct IRouter.InitializeHookParams",
486
+ "name": "params",
487
+ "type": "tuple"
488
+ }
489
+ ],
490
+ "name": "initializeHook",
491
+ "outputs": [
492
+ {
493
+ "internalType": "uint256",
494
+ "name": "bptAmountOut",
495
+ "type": "uint256"
496
+ }
497
+ ],
498
+ "stateMutability": "nonpayable",
499
+ "type": "function"
500
+ },
501
+ {
502
+ "inputs": [
503
+ {
504
+ "internalType": "bytes[]",
505
+ "name": "data",
506
+ "type": "bytes[]"
507
+ }
508
+ ],
509
+ "name": "multicall",
510
+ "outputs": [
511
+ {
512
+ "internalType": "bytes[]",
513
+ "name": "results",
514
+ "type": "bytes[]"
515
+ }
516
+ ],
517
+ "stateMutability": "payable",
518
+ "type": "function"
519
+ },
520
+ {
521
+ "inputs": [
522
+ {
523
+ "components": [
524
+ {
525
+ "internalType": "address",
526
+ "name": "token",
527
+ "type": "address"
528
+ },
529
+ {
530
+ "internalType": "address",
531
+ "name": "owner",
532
+ "type": "address"
533
+ },
534
+ {
535
+ "internalType": "address",
536
+ "name": "spender",
537
+ "type": "address"
538
+ },
539
+ {
540
+ "internalType": "uint256",
541
+ "name": "amount",
542
+ "type": "uint256"
543
+ },
544
+ {
545
+ "internalType": "uint256",
546
+ "name": "nonce",
547
+ "type": "uint256"
548
+ },
549
+ {
550
+ "internalType": "uint256",
551
+ "name": "deadline",
552
+ "type": "uint256"
553
+ }
554
+ ],
555
+ "internalType": "struct IRouterCommon.PermitApproval[]",
556
+ "name": "permitBatch",
557
+ "type": "tuple[]"
558
+ },
559
+ {
560
+ "internalType": "bytes[]",
561
+ "name": "permitSignatures",
562
+ "type": "bytes[]"
563
+ },
564
+ {
565
+ "components": [
566
+ {
567
+ "components": [
568
+ {
569
+ "internalType": "address",
570
+ "name": "token",
571
+ "type": "address"
572
+ },
573
+ {
574
+ "internalType": "uint160",
575
+ "name": "amount",
576
+ "type": "uint160"
577
+ },
578
+ {
579
+ "internalType": "uint48",
580
+ "name": "expiration",
581
+ "type": "uint48"
582
+ },
583
+ {
584
+ "internalType": "uint48",
585
+ "name": "nonce",
586
+ "type": "uint48"
587
+ }
588
+ ],
589
+ "internalType": "struct IAllowanceTransfer.PermitDetails[]",
590
+ "name": "details",
591
+ "type": "tuple[]"
592
+ },
593
+ {
594
+ "internalType": "address",
595
+ "name": "spender",
596
+ "type": "address"
597
+ },
598
+ {
599
+ "internalType": "uint256",
600
+ "name": "sigDeadline",
601
+ "type": "uint256"
602
+ }
603
+ ],
604
+ "internalType": "struct IAllowanceTransfer.PermitBatch",
605
+ "name": "permit2Batch",
606
+ "type": "tuple"
607
+ },
608
+ {
609
+ "internalType": "bytes",
610
+ "name": "permit2Signature",
611
+ "type": "bytes"
612
+ },
613
+ {
614
+ "internalType": "bytes[]",
615
+ "name": "multicallData",
616
+ "type": "bytes[]"
617
+ }
618
+ ],
619
+ "name": "permitBatchAndCall",
620
+ "outputs": [
621
+ {
622
+ "internalType": "bytes[]",
623
+ "name": "results",
624
+ "type": "bytes[]"
625
+ }
626
+ ],
627
+ "stateMutability": "payable",
628
+ "type": "function"
629
+ },
630
+ {
631
+ "inputs": [
632
+ {
633
+ "internalType": "address",
634
+ "name": "pool",
635
+ "type": "address"
636
+ },
637
+ {
638
+ "internalType": "uint256[]",
639
+ "name": "maxAmountsIn",
640
+ "type": "uint256[]"
641
+ },
642
+ {
643
+ "internalType": "uint256",
644
+ "name": "minBptAmountOut",
645
+ "type": "uint256"
646
+ },
647
+ {
648
+ "internalType": "address",
649
+ "name": "sender",
650
+ "type": "address"
651
+ },
652
+ {
653
+ "internalType": "bytes",
654
+ "name": "userData",
655
+ "type": "bytes"
656
+ }
657
+ ],
658
+ "name": "queryAddLiquidityCustom",
659
+ "outputs": [
660
+ {
661
+ "internalType": "uint256[]",
662
+ "name": "amountsIn",
663
+ "type": "uint256[]"
664
+ },
665
+ {
666
+ "internalType": "uint256",
667
+ "name": "bptAmountOut",
668
+ "type": "uint256"
669
+ },
670
+ {
671
+ "internalType": "bytes",
672
+ "name": "returnData",
673
+ "type": "bytes"
674
+ }
675
+ ],
676
+ "stateMutability": "nonpayable",
677
+ "type": "function"
678
+ },
679
+ {
680
+ "inputs": [
681
+ {
682
+ "components": [
683
+ {
684
+ "internalType": "address",
685
+ "name": "sender",
686
+ "type": "address"
687
+ },
688
+ {
689
+ "internalType": "address",
690
+ "name": "pool",
691
+ "type": "address"
692
+ },
693
+ {
694
+ "internalType": "uint256[]",
695
+ "name": "maxAmountsIn",
696
+ "type": "uint256[]"
697
+ },
698
+ {
699
+ "internalType": "uint256",
700
+ "name": "minBptAmountOut",
701
+ "type": "uint256"
702
+ },
703
+ {
704
+ "internalType": "enum AddLiquidityKind",
705
+ "name": "kind",
706
+ "type": "uint8"
707
+ },
708
+ {
709
+ "internalType": "bool",
710
+ "name": "wethIsEth",
711
+ "type": "bool"
712
+ },
713
+ {
714
+ "internalType": "bytes",
715
+ "name": "userData",
716
+ "type": "bytes"
717
+ }
718
+ ],
719
+ "internalType": "struct IRouterCommon.AddLiquidityHookParams",
720
+ "name": "params",
721
+ "type": "tuple"
722
+ }
723
+ ],
724
+ "name": "queryAddLiquidityHook",
725
+ "outputs": [
726
+ {
727
+ "internalType": "uint256[]",
728
+ "name": "amountsIn",
729
+ "type": "uint256[]"
730
+ },
731
+ {
732
+ "internalType": "uint256",
733
+ "name": "bptAmountOut",
734
+ "type": "uint256"
735
+ },
736
+ {
737
+ "internalType": "bytes",
738
+ "name": "returnData",
739
+ "type": "bytes"
740
+ }
741
+ ],
742
+ "stateMutability": "nonpayable",
743
+ "type": "function"
744
+ },
745
+ {
746
+ "inputs": [
747
+ {
748
+ "internalType": "address",
749
+ "name": "pool",
750
+ "type": "address"
751
+ },
752
+ {
753
+ "internalType": "uint256",
754
+ "name": "exactBptAmountOut",
755
+ "type": "uint256"
756
+ },
757
+ {
758
+ "internalType": "address",
759
+ "name": "sender",
760
+ "type": "address"
761
+ },
762
+ {
763
+ "internalType": "bytes",
764
+ "name": "userData",
765
+ "type": "bytes"
766
+ }
767
+ ],
768
+ "name": "queryAddLiquidityProportional",
769
+ "outputs": [
770
+ {
771
+ "internalType": "uint256[]",
772
+ "name": "amountsIn",
773
+ "type": "uint256[]"
774
+ }
775
+ ],
776
+ "stateMutability": "nonpayable",
777
+ "type": "function"
778
+ },
779
+ {
780
+ "inputs": [
781
+ {
782
+ "internalType": "address",
783
+ "name": "pool",
784
+ "type": "address"
785
+ },
786
+ {
787
+ "internalType": "contract IERC20",
788
+ "name": "tokenIn",
789
+ "type": "address"
790
+ },
791
+ {
792
+ "internalType": "uint256",
793
+ "name": "exactBptAmountOut",
794
+ "type": "uint256"
795
+ },
796
+ {
797
+ "internalType": "address",
798
+ "name": "sender",
799
+ "type": "address"
800
+ },
801
+ {
802
+ "internalType": "bytes",
803
+ "name": "userData",
804
+ "type": "bytes"
805
+ }
806
+ ],
807
+ "name": "queryAddLiquiditySingleTokenExactOut",
808
+ "outputs": [
809
+ {
810
+ "internalType": "uint256",
811
+ "name": "amountIn",
812
+ "type": "uint256"
813
+ }
814
+ ],
815
+ "stateMutability": "nonpayable",
816
+ "type": "function"
817
+ },
818
+ {
819
+ "inputs": [
820
+ {
821
+ "internalType": "address",
822
+ "name": "pool",
823
+ "type": "address"
824
+ },
825
+ {
826
+ "internalType": "uint256[]",
827
+ "name": "exactAmountsIn",
828
+ "type": "uint256[]"
829
+ },
830
+ {
831
+ "internalType": "address",
832
+ "name": "sender",
833
+ "type": "address"
834
+ },
835
+ {
836
+ "internalType": "bytes",
837
+ "name": "userData",
838
+ "type": "bytes"
839
+ }
840
+ ],
841
+ "name": "queryAddLiquidityUnbalanced",
842
+ "outputs": [
843
+ {
844
+ "internalType": "uint256",
845
+ "name": "bptAmountOut",
846
+ "type": "uint256"
847
+ }
848
+ ],
849
+ "stateMutability": "nonpayable",
850
+ "type": "function"
851
+ },
852
+ {
853
+ "inputs": [
854
+ {
855
+ "internalType": "address",
856
+ "name": "pool",
857
+ "type": "address"
858
+ },
859
+ {
860
+ "internalType": "uint256",
861
+ "name": "maxBptAmountIn",
862
+ "type": "uint256"
863
+ },
864
+ {
865
+ "internalType": "uint256[]",
866
+ "name": "minAmountsOut",
867
+ "type": "uint256[]"
868
+ },
869
+ {
870
+ "internalType": "address",
871
+ "name": "sender",
872
+ "type": "address"
873
+ },
874
+ {
875
+ "internalType": "bytes",
876
+ "name": "userData",
877
+ "type": "bytes"
878
+ }
879
+ ],
880
+ "name": "queryRemoveLiquidityCustom",
881
+ "outputs": [
882
+ {
883
+ "internalType": "uint256",
884
+ "name": "bptAmountIn",
885
+ "type": "uint256"
886
+ },
887
+ {
888
+ "internalType": "uint256[]",
889
+ "name": "amountsOut",
890
+ "type": "uint256[]"
891
+ },
892
+ {
893
+ "internalType": "bytes",
894
+ "name": "returnData",
895
+ "type": "bytes"
896
+ }
897
+ ],
898
+ "stateMutability": "nonpayable",
899
+ "type": "function"
900
+ },
901
+ {
902
+ "inputs": [
903
+ {
904
+ "components": [
905
+ {
906
+ "internalType": "address",
907
+ "name": "sender",
908
+ "type": "address"
909
+ },
910
+ {
911
+ "internalType": "address",
912
+ "name": "pool",
913
+ "type": "address"
914
+ },
915
+ {
916
+ "internalType": "uint256[]",
917
+ "name": "minAmountsOut",
918
+ "type": "uint256[]"
919
+ },
920
+ {
921
+ "internalType": "uint256",
922
+ "name": "maxBptAmountIn",
923
+ "type": "uint256"
924
+ },
925
+ {
926
+ "internalType": "enum RemoveLiquidityKind",
927
+ "name": "kind",
928
+ "type": "uint8"
929
+ },
930
+ {
931
+ "internalType": "bool",
932
+ "name": "wethIsEth",
933
+ "type": "bool"
934
+ },
935
+ {
936
+ "internalType": "bytes",
937
+ "name": "userData",
938
+ "type": "bytes"
939
+ }
940
+ ],
941
+ "internalType": "struct IRouterCommon.RemoveLiquidityHookParams",
942
+ "name": "params",
943
+ "type": "tuple"
944
+ }
945
+ ],
946
+ "name": "queryRemoveLiquidityHook",
947
+ "outputs": [
948
+ {
949
+ "internalType": "uint256",
950
+ "name": "bptAmountIn",
951
+ "type": "uint256"
952
+ },
953
+ {
954
+ "internalType": "uint256[]",
955
+ "name": "amountsOut",
956
+ "type": "uint256[]"
957
+ },
958
+ {
959
+ "internalType": "bytes",
960
+ "name": "returnData",
961
+ "type": "bytes"
962
+ }
963
+ ],
964
+ "stateMutability": "nonpayable",
965
+ "type": "function"
966
+ },
967
+ {
968
+ "inputs": [
969
+ {
970
+ "internalType": "address",
971
+ "name": "pool",
972
+ "type": "address"
973
+ },
974
+ {
975
+ "internalType": "uint256",
976
+ "name": "exactBptAmountIn",
977
+ "type": "uint256"
978
+ },
979
+ {
980
+ "internalType": "address",
981
+ "name": "sender",
982
+ "type": "address"
983
+ },
984
+ {
985
+ "internalType": "bytes",
986
+ "name": "userData",
987
+ "type": "bytes"
988
+ }
989
+ ],
990
+ "name": "queryRemoveLiquidityProportional",
991
+ "outputs": [
992
+ {
993
+ "internalType": "uint256[]",
994
+ "name": "amountsOut",
995
+ "type": "uint256[]"
996
+ }
997
+ ],
998
+ "stateMutability": "nonpayable",
999
+ "type": "function"
1000
+ },
1001
+ {
1002
+ "inputs": [
1003
+ {
1004
+ "internalType": "address",
1005
+ "name": "pool",
1006
+ "type": "address"
1007
+ },
1008
+ {
1009
+ "internalType": "uint256",
1010
+ "name": "exactBptAmountIn",
1011
+ "type": "uint256"
1012
+ }
1013
+ ],
1014
+ "name": "queryRemoveLiquidityRecovery",
1015
+ "outputs": [
1016
+ {
1017
+ "internalType": "uint256[]",
1018
+ "name": "amountsOut",
1019
+ "type": "uint256[]"
1020
+ }
1021
+ ],
1022
+ "stateMutability": "nonpayable",
1023
+ "type": "function"
1024
+ },
1025
+ {
1026
+ "inputs": [
1027
+ {
1028
+ "internalType": "address",
1029
+ "name": "pool",
1030
+ "type": "address"
1031
+ },
1032
+ {
1033
+ "internalType": "address",
1034
+ "name": "sender",
1035
+ "type": "address"
1036
+ },
1037
+ {
1038
+ "internalType": "uint256",
1039
+ "name": "exactBptAmountIn",
1040
+ "type": "uint256"
1041
+ }
1042
+ ],
1043
+ "name": "queryRemoveLiquidityRecoveryHook",
1044
+ "outputs": [
1045
+ {
1046
+ "internalType": "uint256[]",
1047
+ "name": "amountsOut",
1048
+ "type": "uint256[]"
1049
+ }
1050
+ ],
1051
+ "stateMutability": "nonpayable",
1052
+ "type": "function"
1053
+ },
1054
+ {
1055
+ "inputs": [
1056
+ {
1057
+ "internalType": "address",
1058
+ "name": "pool",
1059
+ "type": "address"
1060
+ },
1061
+ {
1062
+ "internalType": "uint256",
1063
+ "name": "exactBptAmountIn",
1064
+ "type": "uint256"
1065
+ },
1066
+ {
1067
+ "internalType": "contract IERC20",
1068
+ "name": "tokenOut",
1069
+ "type": "address"
1070
+ },
1071
+ {
1072
+ "internalType": "address",
1073
+ "name": "sender",
1074
+ "type": "address"
1075
+ },
1076
+ {
1077
+ "internalType": "bytes",
1078
+ "name": "userData",
1079
+ "type": "bytes"
1080
+ }
1081
+ ],
1082
+ "name": "queryRemoveLiquiditySingleTokenExactIn",
1083
+ "outputs": [
1084
+ {
1085
+ "internalType": "uint256",
1086
+ "name": "amountOut",
1087
+ "type": "uint256"
1088
+ }
1089
+ ],
1090
+ "stateMutability": "nonpayable",
1091
+ "type": "function"
1092
+ },
1093
+ {
1094
+ "inputs": [
1095
+ {
1096
+ "internalType": "address",
1097
+ "name": "pool",
1098
+ "type": "address"
1099
+ },
1100
+ {
1101
+ "internalType": "contract IERC20",
1102
+ "name": "tokenOut",
1103
+ "type": "address"
1104
+ },
1105
+ {
1106
+ "internalType": "uint256",
1107
+ "name": "exactAmountOut",
1108
+ "type": "uint256"
1109
+ },
1110
+ {
1111
+ "internalType": "address",
1112
+ "name": "sender",
1113
+ "type": "address"
1114
+ },
1115
+ {
1116
+ "internalType": "bytes",
1117
+ "name": "userData",
1118
+ "type": "bytes"
1119
+ }
1120
+ ],
1121
+ "name": "queryRemoveLiquiditySingleTokenExactOut",
1122
+ "outputs": [
1123
+ {
1124
+ "internalType": "uint256",
1125
+ "name": "bptAmountIn",
1126
+ "type": "uint256"
1127
+ }
1128
+ ],
1129
+ "stateMutability": "nonpayable",
1130
+ "type": "function"
1131
+ },
1132
+ {
1133
+ "inputs": [
1134
+ {
1135
+ "components": [
1136
+ {
1137
+ "internalType": "address",
1138
+ "name": "sender",
1139
+ "type": "address"
1140
+ },
1141
+ {
1142
+ "internalType": "enum SwapKind",
1143
+ "name": "kind",
1144
+ "type": "uint8"
1145
+ },
1146
+ {
1147
+ "internalType": "address",
1148
+ "name": "pool",
1149
+ "type": "address"
1150
+ },
1151
+ {
1152
+ "internalType": "contract IERC20",
1153
+ "name": "tokenIn",
1154
+ "type": "address"
1155
+ },
1156
+ {
1157
+ "internalType": "contract IERC20",
1158
+ "name": "tokenOut",
1159
+ "type": "address"
1160
+ },
1161
+ {
1162
+ "internalType": "uint256",
1163
+ "name": "amountGiven",
1164
+ "type": "uint256"
1165
+ },
1166
+ {
1167
+ "internalType": "uint256",
1168
+ "name": "limit",
1169
+ "type": "uint256"
1170
+ },
1171
+ {
1172
+ "internalType": "uint256",
1173
+ "name": "deadline",
1174
+ "type": "uint256"
1175
+ },
1176
+ {
1177
+ "internalType": "bool",
1178
+ "name": "wethIsEth",
1179
+ "type": "bool"
1180
+ },
1181
+ {
1182
+ "internalType": "bytes",
1183
+ "name": "userData",
1184
+ "type": "bytes"
1185
+ }
1186
+ ],
1187
+ "internalType": "struct IRouter.SwapSingleTokenHookParams",
1188
+ "name": "params",
1189
+ "type": "tuple"
1190
+ }
1191
+ ],
1192
+ "name": "querySwapHook",
1193
+ "outputs": [
1194
+ {
1195
+ "internalType": "uint256",
1196
+ "name": "",
1197
+ "type": "uint256"
1198
+ }
1199
+ ],
1200
+ "stateMutability": "nonpayable",
1201
+ "type": "function"
1202
+ },
1203
+ {
1204
+ "inputs": [
1205
+ {
1206
+ "internalType": "address",
1207
+ "name": "pool",
1208
+ "type": "address"
1209
+ },
1210
+ {
1211
+ "internalType": "contract IERC20",
1212
+ "name": "tokenIn",
1213
+ "type": "address"
1214
+ },
1215
+ {
1216
+ "internalType": "contract IERC20",
1217
+ "name": "tokenOut",
1218
+ "type": "address"
1219
+ },
1220
+ {
1221
+ "internalType": "uint256",
1222
+ "name": "exactAmountIn",
1223
+ "type": "uint256"
1224
+ },
1225
+ {
1226
+ "internalType": "address",
1227
+ "name": "sender",
1228
+ "type": "address"
1229
+ },
1230
+ {
1231
+ "internalType": "bytes",
1232
+ "name": "userData",
1233
+ "type": "bytes"
1234
+ }
1235
+ ],
1236
+ "name": "querySwapSingleTokenExactIn",
1237
+ "outputs": [
1238
+ {
1239
+ "internalType": "uint256",
1240
+ "name": "amountCalculated",
1241
+ "type": "uint256"
1242
+ }
1243
+ ],
1244
+ "stateMutability": "nonpayable",
1245
+ "type": "function"
1246
+ },
1247
+ {
1248
+ "inputs": [
1249
+ {
1250
+ "internalType": "address",
1251
+ "name": "pool",
1252
+ "type": "address"
1253
+ },
1254
+ {
1255
+ "internalType": "contract IERC20",
1256
+ "name": "tokenIn",
1257
+ "type": "address"
1258
+ },
1259
+ {
1260
+ "internalType": "contract IERC20",
1261
+ "name": "tokenOut",
1262
+ "type": "address"
1263
+ },
1264
+ {
1265
+ "internalType": "uint256",
1266
+ "name": "exactAmountOut",
1267
+ "type": "uint256"
1268
+ },
1269
+ {
1270
+ "internalType": "address",
1271
+ "name": "sender",
1272
+ "type": "address"
1273
+ },
1274
+ {
1275
+ "internalType": "bytes",
1276
+ "name": "userData",
1277
+ "type": "bytes"
1278
+ }
1279
+ ],
1280
+ "name": "querySwapSingleTokenExactOut",
1281
+ "outputs": [
1282
+ {
1283
+ "internalType": "uint256",
1284
+ "name": "amountCalculated",
1285
+ "type": "uint256"
1286
+ }
1287
+ ],
1288
+ "stateMutability": "nonpayable",
1289
+ "type": "function"
1290
+ },
1291
+ {
1292
+ "inputs": [
1293
+ {
1294
+ "internalType": "address",
1295
+ "name": "pool",
1296
+ "type": "address"
1297
+ },
1298
+ {
1299
+ "internalType": "uint256",
1300
+ "name": "maxBptAmountIn",
1301
+ "type": "uint256"
1302
+ },
1303
+ {
1304
+ "internalType": "uint256[]",
1305
+ "name": "minAmountsOut",
1306
+ "type": "uint256[]"
1307
+ },
1308
+ {
1309
+ "internalType": "bool",
1310
+ "name": "wethIsEth",
1311
+ "type": "bool"
1312
+ },
1313
+ {
1314
+ "internalType": "bytes",
1315
+ "name": "userData",
1316
+ "type": "bytes"
1317
+ }
1318
+ ],
1319
+ "name": "removeLiquidityCustom",
1320
+ "outputs": [
1321
+ {
1322
+ "internalType": "uint256",
1323
+ "name": "bptAmountIn",
1324
+ "type": "uint256"
1325
+ },
1326
+ {
1327
+ "internalType": "uint256[]",
1328
+ "name": "amountsOut",
1329
+ "type": "uint256[]"
1330
+ },
1331
+ {
1332
+ "internalType": "bytes",
1333
+ "name": "returnData",
1334
+ "type": "bytes"
1335
+ }
1336
+ ],
1337
+ "stateMutability": "payable",
1338
+ "type": "function"
1339
+ },
1340
+ {
1341
+ "inputs": [
1342
+ {
1343
+ "components": [
1344
+ {
1345
+ "internalType": "address",
1346
+ "name": "sender",
1347
+ "type": "address"
1348
+ },
1349
+ {
1350
+ "internalType": "address",
1351
+ "name": "pool",
1352
+ "type": "address"
1353
+ },
1354
+ {
1355
+ "internalType": "uint256[]",
1356
+ "name": "minAmountsOut",
1357
+ "type": "uint256[]"
1358
+ },
1359
+ {
1360
+ "internalType": "uint256",
1361
+ "name": "maxBptAmountIn",
1362
+ "type": "uint256"
1363
+ },
1364
+ {
1365
+ "internalType": "enum RemoveLiquidityKind",
1366
+ "name": "kind",
1367
+ "type": "uint8"
1368
+ },
1369
+ {
1370
+ "internalType": "bool",
1371
+ "name": "wethIsEth",
1372
+ "type": "bool"
1373
+ },
1374
+ {
1375
+ "internalType": "bytes",
1376
+ "name": "userData",
1377
+ "type": "bytes"
1378
+ }
1379
+ ],
1380
+ "internalType": "struct IRouterCommon.RemoveLiquidityHookParams",
1381
+ "name": "params",
1382
+ "type": "tuple"
1383
+ }
1384
+ ],
1385
+ "name": "removeLiquidityHook",
1386
+ "outputs": [
1387
+ {
1388
+ "internalType": "uint256",
1389
+ "name": "bptAmountIn",
1390
+ "type": "uint256"
1391
+ },
1392
+ {
1393
+ "internalType": "uint256[]",
1394
+ "name": "amountsOut",
1395
+ "type": "uint256[]"
1396
+ },
1397
+ {
1398
+ "internalType": "bytes",
1399
+ "name": "returnData",
1400
+ "type": "bytes"
1401
+ }
1402
+ ],
1403
+ "stateMutability": "nonpayable",
1404
+ "type": "function"
1405
+ },
1406
+ {
1407
+ "inputs": [
1408
+ {
1409
+ "internalType": "address",
1410
+ "name": "pool",
1411
+ "type": "address"
1412
+ },
1413
+ {
1414
+ "internalType": "uint256",
1415
+ "name": "exactBptAmountIn",
1416
+ "type": "uint256"
1417
+ },
1418
+ {
1419
+ "internalType": "uint256[]",
1420
+ "name": "minAmountsOut",
1421
+ "type": "uint256[]"
1422
+ },
1423
+ {
1424
+ "internalType": "bool",
1425
+ "name": "wethIsEth",
1426
+ "type": "bool"
1427
+ },
1428
+ {
1429
+ "internalType": "bytes",
1430
+ "name": "userData",
1431
+ "type": "bytes"
1432
+ }
1433
+ ],
1434
+ "name": "removeLiquidityProportional",
1435
+ "outputs": [
1436
+ {
1437
+ "internalType": "uint256[]",
1438
+ "name": "amountsOut",
1439
+ "type": "uint256[]"
1440
+ }
1441
+ ],
1442
+ "stateMutability": "payable",
1443
+ "type": "function"
1444
+ },
1445
+ {
1446
+ "inputs": [
1447
+ {
1448
+ "internalType": "address",
1449
+ "name": "pool",
1450
+ "type": "address"
1451
+ },
1452
+ {
1453
+ "internalType": "uint256",
1454
+ "name": "exactBptAmountIn",
1455
+ "type": "uint256"
1456
+ },
1457
+ {
1458
+ "internalType": "uint256[]",
1459
+ "name": "minAmountsOut",
1460
+ "type": "uint256[]"
1461
+ }
1462
+ ],
1463
+ "name": "removeLiquidityRecovery",
1464
+ "outputs": [
1465
+ {
1466
+ "internalType": "uint256[]",
1467
+ "name": "amountsOut",
1468
+ "type": "uint256[]"
1469
+ }
1470
+ ],
1471
+ "stateMutability": "payable",
1472
+ "type": "function"
1473
+ },
1474
+ {
1475
+ "inputs": [
1476
+ {
1477
+ "internalType": "address",
1478
+ "name": "pool",
1479
+ "type": "address"
1480
+ },
1481
+ {
1482
+ "internalType": "address",
1483
+ "name": "sender",
1484
+ "type": "address"
1485
+ },
1486
+ {
1487
+ "internalType": "uint256",
1488
+ "name": "exactBptAmountIn",
1489
+ "type": "uint256"
1490
+ },
1491
+ {
1492
+ "internalType": "uint256[]",
1493
+ "name": "minAmountsOut",
1494
+ "type": "uint256[]"
1495
+ }
1496
+ ],
1497
+ "name": "removeLiquidityRecoveryHook",
1498
+ "outputs": [
1499
+ {
1500
+ "internalType": "uint256[]",
1501
+ "name": "amountsOut",
1502
+ "type": "uint256[]"
1503
+ }
1504
+ ],
1505
+ "stateMutability": "nonpayable",
1506
+ "type": "function"
1507
+ },
1508
+ {
1509
+ "inputs": [
1510
+ {
1511
+ "internalType": "address",
1512
+ "name": "pool",
1513
+ "type": "address"
1514
+ },
1515
+ {
1516
+ "internalType": "uint256",
1517
+ "name": "exactBptAmountIn",
1518
+ "type": "uint256"
1519
+ },
1520
+ {
1521
+ "internalType": "contract IERC20",
1522
+ "name": "tokenOut",
1523
+ "type": "address"
1524
+ },
1525
+ {
1526
+ "internalType": "uint256",
1527
+ "name": "minAmountOut",
1528
+ "type": "uint256"
1529
+ },
1530
+ {
1531
+ "internalType": "bool",
1532
+ "name": "wethIsEth",
1533
+ "type": "bool"
1534
+ },
1535
+ {
1536
+ "internalType": "bytes",
1537
+ "name": "userData",
1538
+ "type": "bytes"
1539
+ }
1540
+ ],
1541
+ "name": "removeLiquiditySingleTokenExactIn",
1542
+ "outputs": [
1543
+ {
1544
+ "internalType": "uint256",
1545
+ "name": "amountOut",
1546
+ "type": "uint256"
1547
+ }
1548
+ ],
1549
+ "stateMutability": "payable",
1550
+ "type": "function"
1551
+ },
1552
+ {
1553
+ "inputs": [
1554
+ {
1555
+ "internalType": "address",
1556
+ "name": "pool",
1557
+ "type": "address"
1558
+ },
1559
+ {
1560
+ "internalType": "uint256",
1561
+ "name": "maxBptAmountIn",
1562
+ "type": "uint256"
1563
+ },
1564
+ {
1565
+ "internalType": "contract IERC20",
1566
+ "name": "tokenOut",
1567
+ "type": "address"
1568
+ },
1569
+ {
1570
+ "internalType": "uint256",
1571
+ "name": "exactAmountOut",
1572
+ "type": "uint256"
1573
+ },
1574
+ {
1575
+ "internalType": "bool",
1576
+ "name": "wethIsEth",
1577
+ "type": "bool"
1578
+ },
1579
+ {
1580
+ "internalType": "bytes",
1581
+ "name": "userData",
1582
+ "type": "bytes"
1583
+ }
1584
+ ],
1585
+ "name": "removeLiquiditySingleTokenExactOut",
1586
+ "outputs": [
1587
+ {
1588
+ "internalType": "uint256",
1589
+ "name": "bptAmountIn",
1590
+ "type": "uint256"
1591
+ }
1592
+ ],
1593
+ "stateMutability": "payable",
1594
+ "type": "function"
1595
+ },
1596
+ {
1597
+ "inputs": [
1598
+ {
1599
+ "internalType": "address",
1600
+ "name": "pool",
1601
+ "type": "address"
1602
+ },
1603
+ {
1604
+ "internalType": "contract IERC20",
1605
+ "name": "tokenIn",
1606
+ "type": "address"
1607
+ },
1608
+ {
1609
+ "internalType": "contract IERC20",
1610
+ "name": "tokenOut",
1611
+ "type": "address"
1612
+ },
1613
+ {
1614
+ "internalType": "uint256",
1615
+ "name": "exactAmountIn",
1616
+ "type": "uint256"
1617
+ },
1618
+ {
1619
+ "internalType": "uint256",
1620
+ "name": "minAmountOut",
1621
+ "type": "uint256"
1622
+ },
1623
+ {
1624
+ "internalType": "uint256",
1625
+ "name": "deadline",
1626
+ "type": "uint256"
1627
+ },
1628
+ {
1629
+ "internalType": "bool",
1630
+ "name": "wethIsEth",
1631
+ "type": "bool"
1632
+ },
1633
+ {
1634
+ "internalType": "bytes",
1635
+ "name": "userData",
1636
+ "type": "bytes"
1637
+ }
1638
+ ],
1639
+ "name": "swapSingleTokenExactIn",
1640
+ "outputs": [
1641
+ {
1642
+ "internalType": "uint256",
1643
+ "name": "",
1644
+ "type": "uint256"
1645
+ }
1646
+ ],
1647
+ "stateMutability": "payable",
1648
+ "type": "function"
1649
+ },
1650
+ {
1651
+ "inputs": [
1652
+ {
1653
+ "internalType": "address",
1654
+ "name": "pool",
1655
+ "type": "address"
1656
+ },
1657
+ {
1658
+ "internalType": "contract IERC20",
1659
+ "name": "tokenIn",
1660
+ "type": "address"
1661
+ },
1662
+ {
1663
+ "internalType": "contract IERC20",
1664
+ "name": "tokenOut",
1665
+ "type": "address"
1666
+ },
1667
+ {
1668
+ "internalType": "uint256",
1669
+ "name": "exactAmountOut",
1670
+ "type": "uint256"
1671
+ },
1672
+ {
1673
+ "internalType": "uint256",
1674
+ "name": "maxAmountIn",
1675
+ "type": "uint256"
1676
+ },
1677
+ {
1678
+ "internalType": "uint256",
1679
+ "name": "deadline",
1680
+ "type": "uint256"
1681
+ },
1682
+ {
1683
+ "internalType": "bool",
1684
+ "name": "wethIsEth",
1685
+ "type": "bool"
1686
+ },
1687
+ {
1688
+ "internalType": "bytes",
1689
+ "name": "userData",
1690
+ "type": "bytes"
1691
+ }
1692
+ ],
1693
+ "name": "swapSingleTokenExactOut",
1694
+ "outputs": [
1695
+ {
1696
+ "internalType": "uint256",
1697
+ "name": "",
1698
+ "type": "uint256"
1699
+ }
1700
+ ],
1701
+ "stateMutability": "payable",
1702
+ "type": "function"
1703
+ },
1704
+ {
1705
+ "inputs": [
1706
+ {
1707
+ "components": [
1708
+ {
1709
+ "internalType": "address",
1710
+ "name": "sender",
1711
+ "type": "address"
1712
+ },
1713
+ {
1714
+ "internalType": "enum SwapKind",
1715
+ "name": "kind",
1716
+ "type": "uint8"
1717
+ },
1718
+ {
1719
+ "internalType": "address",
1720
+ "name": "pool",
1721
+ "type": "address"
1722
+ },
1723
+ {
1724
+ "internalType": "contract IERC20",
1725
+ "name": "tokenIn",
1726
+ "type": "address"
1727
+ },
1728
+ {
1729
+ "internalType": "contract IERC20",
1730
+ "name": "tokenOut",
1731
+ "type": "address"
1732
+ },
1733
+ {
1734
+ "internalType": "uint256",
1735
+ "name": "amountGiven",
1736
+ "type": "uint256"
1737
+ },
1738
+ {
1739
+ "internalType": "uint256",
1740
+ "name": "limit",
1741
+ "type": "uint256"
1742
+ },
1743
+ {
1744
+ "internalType": "uint256",
1745
+ "name": "deadline",
1746
+ "type": "uint256"
1747
+ },
1748
+ {
1749
+ "internalType": "bool",
1750
+ "name": "wethIsEth",
1751
+ "type": "bool"
1752
+ },
1753
+ {
1754
+ "internalType": "bytes",
1755
+ "name": "userData",
1756
+ "type": "bytes"
1757
+ }
1758
+ ],
1759
+ "internalType": "struct IRouter.SwapSingleTokenHookParams",
1760
+ "name": "params",
1761
+ "type": "tuple"
1762
+ }
1763
+ ],
1764
+ "name": "swapSingleTokenHook",
1765
+ "outputs": [
1766
+ {
1767
+ "internalType": "uint256",
1768
+ "name": "",
1769
+ "type": "uint256"
1770
+ }
1771
+ ],
1772
+ "stateMutability": "nonpayable",
1773
+ "type": "function"
1774
+ },
1775
+ {
1776
+ "inputs": [],
1777
+ "name": "version",
1778
+ "outputs": [
1779
+ {
1780
+ "internalType": "string",
1781
+ "name": "",
1782
+ "type": "string"
1783
+ }
1784
+ ],
1785
+ "stateMutability": "view",
1786
+ "type": "function"
1787
+ },
1788
+ {
1789
+ "stateMutability": "payable",
1790
+ "type": "receive"
1791
+ }
1792
+ ]