@paraswap/dex-lib 4.0.20 → 4.0.21

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 (241) hide show
  1. package/.vscode/launch.json +53 -0
  2. package/.vscode/settings.json +2 -0
  3. package/.vscode/tasks.json +15 -0
  4. package/build/abi/uniswap-v3/AlienBaseV3Router.abi.json +52 -0
  5. package/build/abi/usual-m-smart-m/usualM.abi.json +483 -0
  6. package/build/abi/{angle-transmuter/ChainlinkAccessControlledOffchainAggregator.json → wombat/pool.json} +637 -594
  7. package/build/dex/aave-v1/aave-v1.js +1 -0
  8. package/build/dex/aave-v1/aave-v1.js.map +1 -1
  9. package/build/dex/aave-v2/tokens-avalanche.json +44 -0
  10. package/build/dex/aave-v2/tokens-mainnet.json +188 -0
  11. package/build/dex/aave-v2/tokens-polygon.json +44 -0
  12. package/build/dex/bProtocol.d.ts +18 -0
  13. package/build/dex/bProtocol.js +39 -0
  14. package/build/dex/bProtocol.js.map +1 -0
  15. package/build/dex/balancer-v3/abi/balancerBatchRouter.d.ts +729 -0
  16. package/build/dex/balancer-v3/abi/balancerBatchRouter.js +732 -0
  17. package/build/dex/balancer-v3/abi/balancerBatchRouter.js.map +1 -0
  18. package/build/dex/balancer-v3/abi/balancerRouter.d.ts +1406 -0
  19. package/build/dex/balancer-v3/abi/balancerRouter.js +1175 -0
  20. package/build/dex/balancer-v3/abi/balancerRouter.js.map +1 -0
  21. package/build/dex/balancer-v3/abi/vaultExtension.V3.d.ts +2081 -0
  22. package/build/dex/balancer-v3/abi/vaultExtension.V3.js +1851 -0
  23. package/build/dex/balancer-v3/abi/vaultExtension.V3.js.map +1 -0
  24. package/build/dex/balancer-v3/balancer-v3-sepolia-pools.d.ts +34 -0
  25. package/build/dex/balancer-v3/balancer-v3-sepolia-pools.js +406 -0
  26. package/build/dex/balancer-v3/balancer-v3-sepolia-pools.js.map +1 -0
  27. package/build/dex/bancor.d.ts +26 -0
  28. package/build/dex/bancor.js +58 -0
  29. package/build/dex/bancor.js.map +1 -0
  30. package/build/dex/compound.d.ts +18 -0
  31. package/build/dex/compound.js +46 -0
  32. package/build/dex/compound.js.map +1 -0
  33. package/build/dex/curve-v2.d.ts +58 -0
  34. package/build/dex/curve-v2.js +180 -0
  35. package/build/dex/curve-v2.js.map +1 -0
  36. package/build/dex/dodo-v1.d.ts +33 -0
  37. package/build/dex/dodo-v1.js +63 -0
  38. package/build/dex/dodo-v1.js.map +1 -0
  39. package/build/dex/inception/inception-event-pool.d.ts +4 -4
  40. package/build/dex/inception/inception-event-pool.js +7 -9
  41. package/build/dex/inception/inception-event-pool.js.map +1 -1
  42. package/build/dex/inception/inception.d.ts +6 -6
  43. package/build/dex/inception/inception.js +16 -40
  44. package/build/dex/inception/inception.js.map +1 -1
  45. package/build/dex/inception/utils.d.ts +1 -0
  46. package/build/dex/inception/utils.js +22 -1
  47. package/build/dex/inception/utils.js.map +1 -1
  48. package/build/dex/lido.d.ts +19 -0
  49. package/build/dex/lido.js +42 -0
  50. package/build/dex/lido.js.map +1 -0
  51. package/build/dex/maker-psm/scripts/gem.abi.json +136 -0
  52. package/build/dex/maker-psm/scripts/validate-state.d.ts +0 -0
  53. package/build/dex/maker-psm/scripts/validate-state.js +185 -0
  54. package/build/dex/maker-psm/scripts/validate-state.js.map +1 -0
  55. package/build/dex/maker-psm/scripts/vat.abi.json +243 -0
  56. package/build/dex/onebit.d.ts +25 -0
  57. package/build/dex/onebit.js +42 -0
  58. package/build/dex/onebit.js.map +1 -0
  59. package/build/dex/platypus/platypus.js +17 -3
  60. package/build/dex/platypus/platypus.js.map +1 -1
  61. package/build/dex/smoothy.d.ts +26 -0
  62. package/build/dex/smoothy.js +48 -0
  63. package/build/dex/smoothy.js.map +1 -0
  64. package/build/dex/solidly-v3/scripts/check-event-pool-event.d.ts +1 -0
  65. package/build/dex/solidly-v3/scripts/check-event-pool-event.js +53 -0
  66. package/build/dex/solidly-v3/scripts/check-event-pool-event.js.map +1 -0
  67. package/build/dex/stable-pool.d.ts +28 -0
  68. package/build/dex/stable-pool.js +55 -0
  69. package/build/dex/stable-pool.js.map +1 -0
  70. package/build/dex/stkgho/stkgho.js +4 -2
  71. package/build/dex/stkgho/stkgho.js.map +1 -1
  72. package/build/dex/swaap-v1/swaap-v1.js +4 -0
  73. package/build/dex/swaap-v1/swaap-v1.js.map +1 -1
  74. package/build/dex/trader-joe-v2.1/trader-joe-v2.1-new.d.ts +7 -0
  75. package/build/dex/trader-joe-v2.1/trader-joe-v2.1-new.js +20 -0
  76. package/build/dex/trader-joe-v2.1/trader-joe-v2.1-new.js.map +1 -0
  77. package/build/dex/trader-joe-v2.1.d.ts +43 -0
  78. package/build/dex/trader-joe-v2.1.js +79 -0
  79. package/build/dex/trader-joe-v2.1.js.map +1 -0
  80. package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.d.ts +17 -0
  81. package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.js +64 -0
  82. package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.js.map +1 -0
  83. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.d.ts +17 -0
  84. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.js +79 -0
  85. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.js.map +1 -0
  86. package/build/dex/uniswap-v3/uniswap-v3-pricing.d.ts +4 -0
  87. package/build/dex/uniswap-v3/uniswap-v3-pricing.js +43 -0
  88. package/build/dex/uniswap-v3/uniswap-v3-pricing.js.map +1 -0
  89. package/build/dex/uniswap-v3/uniswap-v3-worker.d.ts +1 -0
  90. package/build/dex/uniswap-v3/uniswap-v3-worker.js +10 -0
  91. package/build/dex/uniswap-v3/uniswap-v3-worker.js.map +1 -0
  92. package/build/dex/usual/usual-m-smart-m.d.ts +17 -0
  93. package/build/dex/usual/usual-m-smart-m.js +50 -0
  94. package/build/dex/usual/usual-m-smart-m.js.map +1 -0
  95. package/build/dex/usual-m-smart-m/config.d.ts +3 -0
  96. package/build/dex/usual-m-smart-m/config.js +13 -0
  97. package/build/dex/usual-m-smart-m/config.js.map +1 -0
  98. package/build/dex/usual-m-smart-m/types.d.ts +7 -0
  99. package/build/dex/usual-m-smart-m/types.js +3 -0
  100. package/build/dex/usual-m-smart-m/types.js.map +1 -0
  101. package/build/dex/usual-m-smart-m/usual-m-smart-m.d.ts +35 -0
  102. package/build/dex/usual-m-smart-m/usual-m-smart-m.js +161 -0
  103. package/build/dex/usual-m-smart-m/usual-m-smart-m.js.map +1 -0
  104. package/build/dex/usual-m-usd0/config.d.ts +3 -0
  105. package/build/dex/usual-m-usd0/config.js +14 -0
  106. package/build/dex/usual-m-usd0/config.js.map +1 -0
  107. package/build/dex/usual-m-usd0/types.d.ts +8 -0
  108. package/build/dex/usual-m-usd0/types.js +3 -0
  109. package/build/dex/usual-m-usd0/types.js.map +1 -0
  110. package/build/dex/usual-m-usd0/usual-m-usd0.d.ts +35 -0
  111. package/build/dex/usual-m-usd0/usual-m-usd0.js +159 -0
  112. package/build/dex/usual-m-usd0/usual-m-usd0.js.map +1 -0
  113. package/package.json +1 -1
  114. package/src/dex/stkgho/stkgho.ts +4 -2
  115. package/build/abi/Aave_GSM.json +0 -751
  116. package/build/abi/Balancer.json +0 -257
  117. package/build/abi/BalancerV2.json +0 -1179
  118. package/build/abi/RamsesV2Pool.abi.json +0 -1554
  119. package/build/abi/RamsesV2Quoter.abi.json +0 -274
  120. package/build/abi/USDM.json +0 -807
  121. package/build/abi/UniswapV2Router.json +0 -397
  122. package/build/abi/angle-transmuter/ChainlinkEACAggregatorProxy.json +0 -509
  123. package/build/abi/curve-v1/CurveBUSDv2.abi.json +0 -1356
  124. package/build/abi/curve-v1/CurveTokenV1.json +0 -305
  125. package/build/abi/curve-v1/CurveTokenV2.json +0 -318
  126. package/build/abi/curve-v1/CurveV1StableNg.json +0 -1452
  127. package/build/abi/curve-v1/CurveV2Swap.json +0 -700
  128. package/build/abi/curve-v1/FactoryCryptoRegistry.json +0 -316
  129. package/build/abi/curve-v1/FactoryRegistry.json +0 -508
  130. package/build/abi/curve-v1/StableSwapAave.json +0 -1152
  131. package/build/abi/curve-v1/StableSwapBUSD.json +0 -814
  132. package/build/abi/curve-v1/StableSwapCompound.json +0 -814
  133. package/build/abi/curve-v1/StableSwapIDLE.json +0 -1253
  134. package/build/abi/curve-v1/StableSwapPax.json +0 -865
  135. package/build/abi/curve-v1/StableSwapSnow.json +0 -900
  136. package/build/abi/curve-v1/StableSwapUSDN.json +0 -1004
  137. package/build/abi/curve-v1/StableSwapUSDT.json +0 -814
  138. package/build/abi/curve-v1/StableSwapY.json +0 -814
  139. package/build/abi/inception/inception-ineth.json +0 -609
  140. package/build/abi/kyberdmm/kyber-storage.abi.json +0 -824
  141. package/build/abi/kyberdmm.abi.json +0 -1148
  142. package/build/abi/maverick-v2/MaverickV2Quoter.json +0 -278
  143. package/build/abi/nerve/nerve-metapool.json +0 -790
  144. package/build/abi/uniswap-v3/UniswapV3Quoter.abi.json +0 -193
  145. package/build/abi/velodrome-slipstream/VelodromeSlipstreamQuoterV2.abi.json +0 -267
  146. package/build/dex/balancer-v1/balancer-pools.json +0 -33333
  147. package/build/dex/bebop/websocket-fetcher.d.ts +0 -35
  148. package/build/dex/bebop/websocket-fetcher.js +0 -87
  149. package/build/dex/bebop/websocket-fetcher.js.map +0 -1
  150. package/build/dex/idle-dao/idle-dao-pool.d.ts +0 -56
  151. package/build/dex/idle-dao/idle-dao-pool.js +0 -176
  152. package/build/dex/idle-dao/idle-dao-pool.js.map +0 -1
  153. package/build/dex/idle-dao/idle-dao-pooling-pool.d.ts +0 -16
  154. package/build/dex/idle-dao/idle-dao-pooling-pool.js +0 -57
  155. package/build/dex/idle-dao/idle-dao-pooling-pool.js.map +0 -1
  156. package/build/dex/idle-dao/scripts.d.ts +0 -9
  157. package/build/dex/idle-dao/scripts.js +0 -552
  158. package/build/dex/idle-dao/scripts.js.map +0 -1
  159. package/build/dex/inception/inception-native.d.ts +0 -43
  160. package/build/dex/inception/inception-native.js +0 -131
  161. package/build/dex/inception/inception-native.js.map +0 -1
  162. package/build/dex/inception/inception-pool.d.ts +0 -18
  163. package/build/dex/inception/inception-pool.js +0 -32
  164. package/build/dex/inception/inception-pool.js.map +0 -1
  165. package/build/dex/inception/inception-price-feed.d.ts +0 -19
  166. package/build/dex/inception/inception-price-feed.js +0 -51
  167. package/build/dex/inception/inception-price-feed.js.map +0 -1
  168. package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-balancerv1-curvev1-eth-usdc-gusd.json +0 -16
  169. package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-balancerv1-sushiv3-wbtc-eth-sushi.json +0 -16
  170. package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-curvev1-eth-usdc-gusd.json +0 -16
  171. package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-curvev1-gusd-usdc-eth.json +0 -16
  172. package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-dai-usdc-eth.json +0 -16
  173. package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-eth-usdc-dai.json +0 -16
  174. package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-usdc-eth-wbtc.json +0 -16
  175. package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-usdt-usdc-dai.json +0 -16
  176. package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-balancerv1-eth-usdc.json +0 -9
  177. package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-balancerv1-usdc-eth.json +0 -9
  178. package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-balancerv1-usdc-wbtc.json +0 -9
  179. package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-curvev1-eth-steth.json +0 -9
  180. package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-curvev1-steth-eth.json +0 -9
  181. package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-curvev1-usdc-usdt.json +0 -9
  182. package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-univ3-eth-usdc.json +0 -9
  183. package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-univ3-usdc-eth.json +0 -9
  184. package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-univ3-usdc-usdt.json +0 -9
  185. package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-balancerv1-sushiv3-wbtc-eth-sushi.json +0 -12
  186. package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-sushiv3-curvev1-eth-usdc-gusd.json +0 -7
  187. package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-sushiv3-curvev1-gusd-usdc-eth.json +0 -7
  188. package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-sushiv3-dai-usdc-eth.json +0 -7
  189. package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-sushiv3-eth-usdc-dai.json +0 -7
  190. package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-sushiv3-usdc-eth-wbtc.json +0 -12
  191. package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-simpleSwap-univ3-eth-usdc.json +0 -7
  192. package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-simpleSwap-univ3-usdc-eth.json +0 -7
  193. package/build/executor/fixtures/executor01/routes/price-route-multiswap-balancerv1-curvev1-eth-usdc-gusd.json +0 -78
  194. package/build/executor/fixtures/executor01/routes/price-route-multiswap-balancerv1-sushiv3-wbtc-eth-sushi.json +0 -81
  195. package/build/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-curvev1-eth-usdc-gusd.json +0 -78
  196. package/build/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-curvev1-gusd-usdc-eth.json +0 -78
  197. package/build/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-dai-usdc-eth.json +0 -81
  198. package/build/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-eth-usdc-dai.json +0 -81
  199. package/build/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-usdc-eth-wbtc.json +0 -81
  200. package/build/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-usdt-usdc-dai.json +0 -81
  201. package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-balancerv1-eth-usdc.json +0 -64
  202. package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-balancerv1-usdc-eth.json +0 -85
  203. package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-balancerv1-usdc-wbtc.json +0 -64
  204. package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-curvev1-eth-steth.json +0 -52
  205. package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-curvev1-steth-eth.json +0 -52
  206. package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-curvev1-usdc-usdt.json +0 -52
  207. package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-univ3-eth-usdc.json +0 -55
  208. package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-univ3-usdc-eth.json +0 -55
  209. package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-univ3-usdc-usdt.json +0 -55
  210. package/build/executor/fixtures/executor02/exchange-params/price-route-multiSwap-balancerv1-sushiv3-univ3-bal-eth-sushi.json +0 -23
  211. package/build/executor/fixtures/executor02/exchange-params/price-route-multiSwap-maverickv1-sushiv3-univ3-eth-usdc-mav.json +0 -37
  212. package/build/executor/fixtures/executor02/exchange-params/price-route-multiSwap-univ3-sushiv3-sushi-eth-wbtc.json +0 -23
  213. package/build/executor/fixtures/executor02/exchange-params/price-route-multiSwap-univ3-sushiv3-wbtc-eth-sushi.json +0 -23
  214. package/build/executor/fixtures/executor02/exchange-params/price-route-multiswap-curvev1-univ3-dai-usdc-eth.json +0 -51
  215. package/build/executor/fixtures/executor02/exchange-params/price-route-multiswap-univ3-usdt-dai-eth.json +0 -58
  216. package/build/executor/fixtures/executor02/exchange-params/price-route-simpleSwap-sushiv3-balancerv1-eth-usdc.json +0 -23
  217. package/build/executor/fixtures/executor02/exchange-params/price-route-simpleSwap-sushiv3-balancerv1-usdc-eth.json +0 -23
  218. package/build/executor/fixtures/executor02/exchange-params/price-route-simpleSwap-sushiv3-univ3-eth-sushi.json +0 -9
  219. package/build/executor/fixtures/executor02/exchange-params/price-route-simpleSwap-sushiv3-univ3-sushi-eth.json +0 -16
  220. package/build/executor/fixtures/executor02/exchange-params/price-route-simpleSwap-univ3-curvev1-usdt-dai.json +0 -23
  221. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiSwap-balancerv1-sushiv3-univ3-bal-eth-sushi.json +0 -12
  222. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiSwap-maverickv1-sushiv3-univ3-eth-usdc-mav.json +0 -7
  223. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiSwap-univ3-sushiv3-sushi-eth-wbtc.json +0 -12
  224. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiSwap-univ3-sushiv3-wbtc-eth-sushi.json +0 -12
  225. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiswap-curvev1-univ3-dai-usdc-eth.json +0 -7
  226. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiswap-univ3-usdt-dai-eth.json +0 -7
  227. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-simpleSwap-sushiv3-balancerv1-eth-usdc.json +0 -7
  228. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-simpleSwap-sushiv3-balancerv1-usdc-eth.json +0 -7
  229. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-simpleSwap-sushiv3-univ3-eth-sushi.json +0 -7
  230. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-simpleSwap-sushiv3-univ3-sushi-eth.json +0 -7
  231. package/build/executor/fixtures/executor02/routes/price-route-multiSwap-balancerv1-sushiv3-univ3-bal-eth-sushi.json +0 -130
  232. package/build/executor/fixtures/executor02/routes/price-route-multiSwap-maverickv1-sushiv3-univ3-eth-usdc-mav.json +0 -136
  233. package/build/executor/fixtures/executor02/routes/price-route-multiSwap-univ3-sushiv3-sushi-eth-wbtc.json +0 -100
  234. package/build/executor/fixtures/executor02/routes/price-route-multiSwap-univ3-sushiv3-wbtc-eth-sushi.json +0 -100
  235. package/build/executor/fixtures/executor02/routes/price-route-multiswap-curvev1-univ3-dai-usdc-eth.json +0 -166
  236. package/build/executor/fixtures/executor02/routes/price-route-multiswap-univ3-usdt-dai-eth.json +0 -190
  237. package/build/executor/fixtures/executor02/routes/price-route-simpleSwap-sushiv3-balancerv1-eth-usdc.json +0 -114
  238. package/build/executor/fixtures/executor02/routes/price-route-simpleSwap-sushiv3-balancerv1-usdc-eth.json +0 -114
  239. package/build/executor/fixtures/executor02/routes/price-route-simpleSwap-sushiv3-univ3-eth-sushi.json +0 -55
  240. package/build/executor/fixtures/executor02/routes/price-route-simpleSwap-sushiv3-univ3-sushi-eth.json +0 -73
  241. package/build/executor/fixtures/executor02/routes/price-route-simpleSwap-univ3-curvev1-usdt-dai.json +0 -82
@@ -0,0 +1,1175 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.balancerRouterAbi = void 0;
4
+ exports.balancerRouterAbi = [
5
+ {
6
+ inputs: [
7
+ { internalType: 'contract IVault', name: 'vault', type: 'address' },
8
+ { internalType: 'contract IWETH', name: 'weth', type: 'address' },
9
+ {
10
+ internalType: 'contract IPermit2',
11
+ name: 'permit2',
12
+ type: 'address',
13
+ },
14
+ ],
15
+ stateMutability: 'nonpayable',
16
+ type: 'constructor',
17
+ },
18
+ {
19
+ inputs: [{ internalType: 'address', name: 'target', type: 'address' }],
20
+ name: 'AddressEmptyCode',
21
+ type: 'error',
22
+ },
23
+ {
24
+ inputs: [{ internalType: 'address', name: 'account', type: 'address' }],
25
+ name: 'AddressInsufficientBalance',
26
+ type: 'error',
27
+ },
28
+ { inputs: [], name: 'EthTransfer', type: 'error' },
29
+ { inputs: [], name: 'FailedInnerCall', type: 'error' },
30
+ { inputs: [], name: 'InsufficientEth', type: 'error' },
31
+ { inputs: [], name: 'ReentrancyGuardReentrantCall', type: 'error' },
32
+ {
33
+ inputs: [
34
+ { internalType: 'uint8', name: 'bits', type: 'uint8' },
35
+ { internalType: 'uint256', name: 'value', type: 'uint256' },
36
+ ],
37
+ name: 'SafeCastOverflowedUintDowncast',
38
+ type: 'error',
39
+ },
40
+ {
41
+ inputs: [{ internalType: 'address', name: 'token', type: 'address' }],
42
+ name: 'SafeERC20FailedOperation',
43
+ type: 'error',
44
+ },
45
+ {
46
+ inputs: [{ internalType: 'address', name: 'sender', type: 'address' }],
47
+ name: 'SenderIsNotVault',
48
+ type: 'error',
49
+ },
50
+ { inputs: [], name: 'SwapDeadline', type: 'error' },
51
+ {
52
+ inputs: [
53
+ { internalType: 'address', name: 'pool', type: 'address' },
54
+ {
55
+ internalType: 'uint256[]',
56
+ name: 'maxAmountsIn',
57
+ type: 'uint256[]',
58
+ },
59
+ {
60
+ internalType: 'uint256',
61
+ name: 'minBptAmountOut',
62
+ type: 'uint256',
63
+ },
64
+ { internalType: 'bool', name: 'wethIsEth', type: 'bool' },
65
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
66
+ ],
67
+ name: 'addLiquidityCustom',
68
+ outputs: [
69
+ { internalType: 'uint256[]', name: 'amountsIn', type: 'uint256[]' },
70
+ { internalType: 'uint256', name: 'bptAmountOut', type: 'uint256' },
71
+ { internalType: 'bytes', name: 'returnData', type: 'bytes' },
72
+ ],
73
+ stateMutability: 'payable',
74
+ type: 'function',
75
+ },
76
+ {
77
+ inputs: [
78
+ {
79
+ components: [
80
+ {
81
+ internalType: 'address',
82
+ name: 'sender',
83
+ type: 'address',
84
+ },
85
+ { internalType: 'address', name: 'pool', type: 'address' },
86
+ {
87
+ internalType: 'uint256[]',
88
+ name: 'maxAmountsIn',
89
+ type: 'uint256[]',
90
+ },
91
+ {
92
+ internalType: 'uint256',
93
+ name: 'minBptAmountOut',
94
+ type: 'uint256',
95
+ },
96
+ {
97
+ internalType: 'enum AddLiquidityKind',
98
+ name: 'kind',
99
+ type: 'uint8',
100
+ },
101
+ { internalType: 'bool', name: 'wethIsEth', type: 'bool' },
102
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
103
+ ],
104
+ internalType: 'struct IRouterCommon.AddLiquidityHookParams',
105
+ name: 'params',
106
+ type: 'tuple',
107
+ },
108
+ ],
109
+ name: 'addLiquidityHook',
110
+ outputs: [
111
+ { internalType: 'uint256[]', name: 'amountsIn', type: 'uint256[]' },
112
+ { internalType: 'uint256', name: 'bptAmountOut', type: 'uint256' },
113
+ { internalType: 'bytes', name: 'returnData', type: 'bytes' },
114
+ ],
115
+ stateMutability: 'nonpayable',
116
+ type: 'function',
117
+ },
118
+ {
119
+ inputs: [
120
+ { internalType: 'address', name: 'pool', type: 'address' },
121
+ {
122
+ internalType: 'uint256[]',
123
+ name: 'maxAmountsIn',
124
+ type: 'uint256[]',
125
+ },
126
+ {
127
+ internalType: 'uint256',
128
+ name: 'exactBptAmountOut',
129
+ type: 'uint256',
130
+ },
131
+ { internalType: 'bool', name: 'wethIsEth', type: 'bool' },
132
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
133
+ ],
134
+ name: 'addLiquidityProportional',
135
+ outputs: [
136
+ { internalType: 'uint256[]', name: 'amountsIn', type: 'uint256[]' },
137
+ ],
138
+ stateMutability: 'payable',
139
+ type: 'function',
140
+ },
141
+ {
142
+ inputs: [
143
+ { internalType: 'address', name: 'pool', type: 'address' },
144
+ {
145
+ internalType: 'contract IERC20',
146
+ name: 'tokenIn',
147
+ type: 'address',
148
+ },
149
+ { internalType: 'uint256', name: 'maxAmountIn', type: 'uint256' },
150
+ {
151
+ internalType: 'uint256',
152
+ name: 'exactBptAmountOut',
153
+ type: 'uint256',
154
+ },
155
+ { internalType: 'bool', name: 'wethIsEth', type: 'bool' },
156
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
157
+ ],
158
+ name: 'addLiquiditySingleTokenExactOut',
159
+ outputs: [{ internalType: 'uint256', name: 'amountIn', type: 'uint256' }],
160
+ stateMutability: 'payable',
161
+ type: 'function',
162
+ },
163
+ {
164
+ inputs: [
165
+ {
166
+ internalType: 'contract IERC4626',
167
+ name: 'wrappedToken',
168
+ type: 'address',
169
+ },
170
+ {
171
+ internalType: 'uint256',
172
+ name: 'exactSharesToIssue',
173
+ type: 'uint256',
174
+ },
175
+ ],
176
+ name: 'addLiquidityToBuffer',
177
+ outputs: [
178
+ {
179
+ internalType: 'uint256',
180
+ name: 'amountUnderlyingRaw',
181
+ type: 'uint256',
182
+ },
183
+ {
184
+ internalType: 'uint256',
185
+ name: 'amountWrappedRaw',
186
+ type: 'uint256',
187
+ },
188
+ ],
189
+ stateMutability: 'nonpayable',
190
+ type: 'function',
191
+ },
192
+ {
193
+ inputs: [
194
+ {
195
+ internalType: 'contract IERC4626',
196
+ name: 'wrappedToken',
197
+ type: 'address',
198
+ },
199
+ {
200
+ internalType: 'uint256',
201
+ name: 'exactSharesToIssue',
202
+ type: 'uint256',
203
+ },
204
+ { internalType: 'address', name: 'sharesOwner', type: 'address' },
205
+ ],
206
+ name: 'addLiquidityToBufferHook',
207
+ outputs: [
208
+ {
209
+ internalType: 'uint256',
210
+ name: 'amountUnderlyingRaw',
211
+ type: 'uint256',
212
+ },
213
+ {
214
+ internalType: 'uint256',
215
+ name: 'amountWrappedRaw',
216
+ type: 'uint256',
217
+ },
218
+ ],
219
+ stateMutability: 'nonpayable',
220
+ type: 'function',
221
+ },
222
+ {
223
+ inputs: [
224
+ { internalType: 'address', name: 'pool', type: 'address' },
225
+ {
226
+ internalType: 'uint256[]',
227
+ name: 'exactAmountsIn',
228
+ type: 'uint256[]',
229
+ },
230
+ {
231
+ internalType: 'uint256',
232
+ name: 'minBptAmountOut',
233
+ type: 'uint256',
234
+ },
235
+ { internalType: 'bool', name: 'wethIsEth', type: 'bool' },
236
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
237
+ ],
238
+ name: 'addLiquidityUnbalanced',
239
+ outputs: [
240
+ { internalType: 'uint256', name: 'bptAmountOut', type: 'uint256' },
241
+ ],
242
+ stateMutability: 'payable',
243
+ type: 'function',
244
+ },
245
+ {
246
+ inputs: [
247
+ { internalType: 'address', name: 'pool', type: 'address' },
248
+ { internalType: 'uint256[]', name: 'amountsIn', type: 'uint256[]' },
249
+ { internalType: 'bool', name: 'wethIsEth', type: 'bool' },
250
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
251
+ ],
252
+ name: 'donate',
253
+ outputs: [],
254
+ stateMutability: 'payable',
255
+ type: 'function',
256
+ },
257
+ {
258
+ inputs: [],
259
+ name: 'getSender',
260
+ outputs: [{ internalType: 'address', name: '', type: 'address' }],
261
+ stateMutability: 'view',
262
+ type: 'function',
263
+ },
264
+ {
265
+ inputs: [
266
+ { internalType: 'address', name: 'pool', type: 'address' },
267
+ {
268
+ internalType: 'contract IERC20[]',
269
+ name: 'tokens',
270
+ type: 'address[]',
271
+ },
272
+ {
273
+ internalType: 'uint256[]',
274
+ name: 'exactAmountsIn',
275
+ type: 'uint256[]',
276
+ },
277
+ {
278
+ internalType: 'uint256',
279
+ name: 'minBptAmountOut',
280
+ type: 'uint256',
281
+ },
282
+ { internalType: 'bool', name: 'wethIsEth', type: 'bool' },
283
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
284
+ ],
285
+ name: 'initialize',
286
+ outputs: [
287
+ { internalType: 'uint256', name: 'bptAmountOut', type: 'uint256' },
288
+ ],
289
+ stateMutability: 'payable',
290
+ type: 'function',
291
+ },
292
+ {
293
+ inputs: [
294
+ {
295
+ internalType: 'contract IERC4626',
296
+ name: 'wrappedToken',
297
+ type: 'address',
298
+ },
299
+ {
300
+ internalType: 'uint256',
301
+ name: 'amountUnderlyingRaw',
302
+ type: 'uint256',
303
+ },
304
+ {
305
+ internalType: 'uint256',
306
+ name: 'amountWrappedRaw',
307
+ type: 'uint256',
308
+ },
309
+ ],
310
+ name: 'initializeBuffer',
311
+ outputs: [
312
+ { internalType: 'uint256', name: 'issuedShares', type: 'uint256' },
313
+ ],
314
+ stateMutability: 'nonpayable',
315
+ type: 'function',
316
+ },
317
+ {
318
+ inputs: [
319
+ {
320
+ internalType: 'contract IERC4626',
321
+ name: 'wrappedToken',
322
+ type: 'address',
323
+ },
324
+ {
325
+ internalType: 'uint256',
326
+ name: 'amountUnderlyingRaw',
327
+ type: 'uint256',
328
+ },
329
+ {
330
+ internalType: 'uint256',
331
+ name: 'amountWrappedRaw',
332
+ type: 'uint256',
333
+ },
334
+ { internalType: 'address', name: 'sharesOwner', type: 'address' },
335
+ ],
336
+ name: 'initializeBufferHook',
337
+ outputs: [
338
+ { internalType: 'uint256', name: 'issuedShares', type: 'uint256' },
339
+ ],
340
+ stateMutability: 'nonpayable',
341
+ type: 'function',
342
+ },
343
+ {
344
+ inputs: [
345
+ {
346
+ components: [
347
+ {
348
+ internalType: 'address',
349
+ name: 'sender',
350
+ type: 'address',
351
+ },
352
+ { internalType: 'address', name: 'pool', type: 'address' },
353
+ {
354
+ internalType: 'contract IERC20[]',
355
+ name: 'tokens',
356
+ type: 'address[]',
357
+ },
358
+ {
359
+ internalType: 'uint256[]',
360
+ name: 'exactAmountsIn',
361
+ type: 'uint256[]',
362
+ },
363
+ {
364
+ internalType: 'uint256',
365
+ name: 'minBptAmountOut',
366
+ type: 'uint256',
367
+ },
368
+ { internalType: 'bool', name: 'wethIsEth', type: 'bool' },
369
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
370
+ ],
371
+ internalType: 'struct IRouter.InitializeHookParams',
372
+ name: 'params',
373
+ type: 'tuple',
374
+ },
375
+ ],
376
+ name: 'initializeHook',
377
+ outputs: [
378
+ { internalType: 'uint256', name: 'bptAmountOut', type: 'uint256' },
379
+ ],
380
+ stateMutability: 'nonpayable',
381
+ type: 'function',
382
+ },
383
+ {
384
+ inputs: [{ internalType: 'bytes[]', name: 'data', type: 'bytes[]' }],
385
+ name: 'multicall',
386
+ outputs: [{ internalType: 'bytes[]', name: 'results', type: 'bytes[]' }],
387
+ stateMutability: 'payable',
388
+ type: 'function',
389
+ },
390
+ {
391
+ inputs: [
392
+ {
393
+ components: [
394
+ { internalType: 'address', name: 'token', type: 'address' },
395
+ { internalType: 'address', name: 'owner', type: 'address' },
396
+ {
397
+ internalType: 'address',
398
+ name: 'spender',
399
+ type: 'address',
400
+ },
401
+ {
402
+ internalType: 'uint256',
403
+ name: 'amount',
404
+ type: 'uint256',
405
+ },
406
+ { internalType: 'uint256', name: 'nonce', type: 'uint256' },
407
+ {
408
+ internalType: 'uint256',
409
+ name: 'deadline',
410
+ type: 'uint256',
411
+ },
412
+ ],
413
+ internalType: 'struct IRouterCommon.PermitApproval[]',
414
+ name: 'permitBatch',
415
+ type: 'tuple[]',
416
+ },
417
+ {
418
+ internalType: 'bytes[]',
419
+ name: 'permitSignatures',
420
+ type: 'bytes[]',
421
+ },
422
+ {
423
+ components: [
424
+ {
425
+ components: [
426
+ {
427
+ internalType: 'address',
428
+ name: 'token',
429
+ type: 'address',
430
+ },
431
+ {
432
+ internalType: 'uint160',
433
+ name: 'amount',
434
+ type: 'uint160',
435
+ },
436
+ {
437
+ internalType: 'uint48',
438
+ name: 'expiration',
439
+ type: 'uint48',
440
+ },
441
+ {
442
+ internalType: 'uint48',
443
+ name: 'nonce',
444
+ type: 'uint48',
445
+ },
446
+ ],
447
+ internalType: 'struct IAllowanceTransfer.PermitDetails[]',
448
+ name: 'details',
449
+ type: 'tuple[]',
450
+ },
451
+ {
452
+ internalType: 'address',
453
+ name: 'spender',
454
+ type: 'address',
455
+ },
456
+ {
457
+ internalType: 'uint256',
458
+ name: 'sigDeadline',
459
+ type: 'uint256',
460
+ },
461
+ ],
462
+ internalType: 'struct IAllowanceTransfer.PermitBatch',
463
+ name: 'permit2Batch',
464
+ type: 'tuple',
465
+ },
466
+ { internalType: 'bytes', name: 'permit2Signature', type: 'bytes' },
467
+ { internalType: 'bytes[]', name: 'multicallData', type: 'bytes[]' },
468
+ ],
469
+ name: 'permitBatchAndCall',
470
+ outputs: [{ internalType: 'bytes[]', name: 'results', type: 'bytes[]' }],
471
+ stateMutability: 'payable',
472
+ type: 'function',
473
+ },
474
+ {
475
+ inputs: [
476
+ { internalType: 'address', name: 'pool', type: 'address' },
477
+ {
478
+ internalType: 'uint256[]',
479
+ name: 'maxAmountsIn',
480
+ type: 'uint256[]',
481
+ },
482
+ {
483
+ internalType: 'uint256',
484
+ name: 'minBptAmountOut',
485
+ type: 'uint256',
486
+ },
487
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
488
+ ],
489
+ name: 'queryAddLiquidityCustom',
490
+ outputs: [
491
+ { internalType: 'uint256[]', name: 'amountsIn', type: 'uint256[]' },
492
+ { internalType: 'uint256', name: 'bptAmountOut', type: 'uint256' },
493
+ { internalType: 'bytes', name: 'returnData', type: 'bytes' },
494
+ ],
495
+ stateMutability: 'nonpayable',
496
+ type: 'function',
497
+ },
498
+ {
499
+ inputs: [
500
+ {
501
+ components: [
502
+ {
503
+ internalType: 'address',
504
+ name: 'sender',
505
+ type: 'address',
506
+ },
507
+ { internalType: 'address', name: 'pool', type: 'address' },
508
+ {
509
+ internalType: 'uint256[]',
510
+ name: 'maxAmountsIn',
511
+ type: 'uint256[]',
512
+ },
513
+ {
514
+ internalType: 'uint256',
515
+ name: 'minBptAmountOut',
516
+ type: 'uint256',
517
+ },
518
+ {
519
+ internalType: 'enum AddLiquidityKind',
520
+ name: 'kind',
521
+ type: 'uint8',
522
+ },
523
+ { internalType: 'bool', name: 'wethIsEth', type: 'bool' },
524
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
525
+ ],
526
+ internalType: 'struct IRouterCommon.AddLiquidityHookParams',
527
+ name: 'params',
528
+ type: 'tuple',
529
+ },
530
+ ],
531
+ name: 'queryAddLiquidityHook',
532
+ outputs: [
533
+ { internalType: 'uint256[]', name: 'amountsIn', type: 'uint256[]' },
534
+ { internalType: 'uint256', name: 'bptAmountOut', type: 'uint256' },
535
+ { internalType: 'bytes', name: 'returnData', type: 'bytes' },
536
+ ],
537
+ stateMutability: 'nonpayable',
538
+ type: 'function',
539
+ },
540
+ {
541
+ inputs: [
542
+ { internalType: 'address', name: 'pool', type: 'address' },
543
+ {
544
+ internalType: 'uint256',
545
+ name: 'exactBptAmountOut',
546
+ type: 'uint256',
547
+ },
548
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
549
+ ],
550
+ name: 'queryAddLiquidityProportional',
551
+ outputs: [
552
+ { internalType: 'uint256[]', name: 'amountsIn', type: 'uint256[]' },
553
+ ],
554
+ stateMutability: 'nonpayable',
555
+ type: 'function',
556
+ },
557
+ {
558
+ inputs: [
559
+ { internalType: 'address', name: 'pool', type: 'address' },
560
+ {
561
+ internalType: 'contract IERC20',
562
+ name: 'tokenIn',
563
+ type: 'address',
564
+ },
565
+ {
566
+ internalType: 'uint256',
567
+ name: 'exactBptAmountOut',
568
+ type: 'uint256',
569
+ },
570
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
571
+ ],
572
+ name: 'queryAddLiquiditySingleTokenExactOut',
573
+ outputs: [{ internalType: 'uint256', name: 'amountIn', type: 'uint256' }],
574
+ stateMutability: 'nonpayable',
575
+ type: 'function',
576
+ },
577
+ {
578
+ inputs: [
579
+ { internalType: 'address', name: 'pool', type: 'address' },
580
+ {
581
+ internalType: 'uint256[]',
582
+ name: 'exactAmountsIn',
583
+ type: 'uint256[]',
584
+ },
585
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
586
+ ],
587
+ name: 'queryAddLiquidityUnbalanced',
588
+ outputs: [
589
+ { internalType: 'uint256', name: 'bptAmountOut', type: 'uint256' },
590
+ ],
591
+ stateMutability: 'nonpayable',
592
+ type: 'function',
593
+ },
594
+ {
595
+ inputs: [
596
+ { internalType: 'address', name: 'pool', type: 'address' },
597
+ {
598
+ internalType: 'uint256',
599
+ name: 'maxBptAmountIn',
600
+ type: 'uint256',
601
+ },
602
+ {
603
+ internalType: 'uint256[]',
604
+ name: 'minAmountsOut',
605
+ type: 'uint256[]',
606
+ },
607
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
608
+ ],
609
+ name: 'queryRemoveLiquidityCustom',
610
+ outputs: [
611
+ { internalType: 'uint256', name: 'bptAmountIn', type: 'uint256' },
612
+ {
613
+ internalType: 'uint256[]',
614
+ name: 'amountsOut',
615
+ type: 'uint256[]',
616
+ },
617
+ { internalType: 'bytes', name: 'returnData', type: 'bytes' },
618
+ ],
619
+ stateMutability: 'nonpayable',
620
+ type: 'function',
621
+ },
622
+ {
623
+ inputs: [
624
+ {
625
+ components: [
626
+ {
627
+ internalType: 'address',
628
+ name: 'sender',
629
+ type: 'address',
630
+ },
631
+ { internalType: 'address', name: 'pool', type: 'address' },
632
+ {
633
+ internalType: 'uint256[]',
634
+ name: 'minAmountsOut',
635
+ type: 'uint256[]',
636
+ },
637
+ {
638
+ internalType: 'uint256',
639
+ name: 'maxBptAmountIn',
640
+ type: 'uint256',
641
+ },
642
+ {
643
+ internalType: 'enum RemoveLiquidityKind',
644
+ name: 'kind',
645
+ type: 'uint8',
646
+ },
647
+ { internalType: 'bool', name: 'wethIsEth', type: 'bool' },
648
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
649
+ ],
650
+ internalType: 'struct IRouterCommon.RemoveLiquidityHookParams',
651
+ name: 'params',
652
+ type: 'tuple',
653
+ },
654
+ ],
655
+ name: 'queryRemoveLiquidityHook',
656
+ outputs: [
657
+ { internalType: 'uint256', name: 'bptAmountIn', type: 'uint256' },
658
+ {
659
+ internalType: 'uint256[]',
660
+ name: 'amountsOut',
661
+ type: 'uint256[]',
662
+ },
663
+ { internalType: 'bytes', name: 'returnData', type: 'bytes' },
664
+ ],
665
+ stateMutability: 'nonpayable',
666
+ type: 'function',
667
+ },
668
+ {
669
+ inputs: [
670
+ { internalType: 'address', name: 'pool', type: 'address' },
671
+ {
672
+ internalType: 'uint256',
673
+ name: 'exactBptAmountIn',
674
+ type: 'uint256',
675
+ },
676
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
677
+ ],
678
+ name: 'queryRemoveLiquidityProportional',
679
+ outputs: [
680
+ {
681
+ internalType: 'uint256[]',
682
+ name: 'amountsOut',
683
+ type: 'uint256[]',
684
+ },
685
+ ],
686
+ stateMutability: 'nonpayable',
687
+ type: 'function',
688
+ },
689
+ {
690
+ inputs: [
691
+ { internalType: 'address', name: 'pool', type: 'address' },
692
+ {
693
+ internalType: 'uint256',
694
+ name: 'exactBptAmountIn',
695
+ type: 'uint256',
696
+ },
697
+ ],
698
+ name: 'queryRemoveLiquidityRecovery',
699
+ outputs: [
700
+ {
701
+ internalType: 'uint256[]',
702
+ name: 'amountsOut',
703
+ type: 'uint256[]',
704
+ },
705
+ ],
706
+ stateMutability: 'nonpayable',
707
+ type: 'function',
708
+ },
709
+ {
710
+ inputs: [
711
+ { internalType: 'address', name: 'pool', type: 'address' },
712
+ { internalType: 'address', name: 'sender', type: 'address' },
713
+ {
714
+ internalType: 'uint256',
715
+ name: 'exactBptAmountIn',
716
+ type: 'uint256',
717
+ },
718
+ ],
719
+ name: 'queryRemoveLiquidityRecoveryHook',
720
+ outputs: [
721
+ {
722
+ internalType: 'uint256[]',
723
+ name: 'amountsOut',
724
+ type: 'uint256[]',
725
+ },
726
+ ],
727
+ stateMutability: 'nonpayable',
728
+ type: 'function',
729
+ },
730
+ {
731
+ inputs: [
732
+ { internalType: 'address', name: 'pool', type: 'address' },
733
+ {
734
+ internalType: 'uint256',
735
+ name: 'exactBptAmountIn',
736
+ type: 'uint256',
737
+ },
738
+ {
739
+ internalType: 'contract IERC20',
740
+ name: 'tokenOut',
741
+ type: 'address',
742
+ },
743
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
744
+ ],
745
+ name: 'queryRemoveLiquiditySingleTokenExactIn',
746
+ outputs: [{ internalType: 'uint256', name: 'amountOut', type: 'uint256' }],
747
+ stateMutability: 'nonpayable',
748
+ type: 'function',
749
+ },
750
+ {
751
+ inputs: [
752
+ { internalType: 'address', name: 'pool', type: 'address' },
753
+ {
754
+ internalType: 'contract IERC20',
755
+ name: 'tokenOut',
756
+ type: 'address',
757
+ },
758
+ {
759
+ internalType: 'uint256',
760
+ name: 'exactAmountOut',
761
+ type: 'uint256',
762
+ },
763
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
764
+ ],
765
+ name: 'queryRemoveLiquiditySingleTokenExactOut',
766
+ outputs: [
767
+ { internalType: 'uint256', name: 'bptAmountIn', type: 'uint256' },
768
+ ],
769
+ stateMutability: 'nonpayable',
770
+ type: 'function',
771
+ },
772
+ {
773
+ inputs: [
774
+ {
775
+ components: [
776
+ {
777
+ internalType: 'address',
778
+ name: 'sender',
779
+ type: 'address',
780
+ },
781
+ {
782
+ internalType: 'enum SwapKind',
783
+ name: 'kind',
784
+ type: 'uint8',
785
+ },
786
+ { internalType: 'address', name: 'pool', type: 'address' },
787
+ {
788
+ internalType: 'contract IERC20',
789
+ name: 'tokenIn',
790
+ type: 'address',
791
+ },
792
+ {
793
+ internalType: 'contract IERC20',
794
+ name: 'tokenOut',
795
+ type: 'address',
796
+ },
797
+ {
798
+ internalType: 'uint256',
799
+ name: 'amountGiven',
800
+ type: 'uint256',
801
+ },
802
+ { internalType: 'uint256', name: 'limit', type: 'uint256' },
803
+ {
804
+ internalType: 'uint256',
805
+ name: 'deadline',
806
+ type: 'uint256',
807
+ },
808
+ { internalType: 'bool', name: 'wethIsEth', type: 'bool' },
809
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
810
+ ],
811
+ internalType: 'struct IRouter.SwapSingleTokenHookParams',
812
+ name: 'params',
813
+ type: 'tuple',
814
+ },
815
+ ],
816
+ name: 'querySwapHook',
817
+ outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
818
+ stateMutability: 'nonpayable',
819
+ type: 'function',
820
+ },
821
+ {
822
+ inputs: [
823
+ { internalType: 'address', name: 'pool', type: 'address' },
824
+ {
825
+ internalType: 'contract IERC20',
826
+ name: 'tokenIn',
827
+ type: 'address',
828
+ },
829
+ {
830
+ internalType: 'contract IERC20',
831
+ name: 'tokenOut',
832
+ type: 'address',
833
+ },
834
+ { internalType: 'uint256', name: 'exactAmountIn', type: 'uint256' },
835
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
836
+ ],
837
+ name: 'querySwapSingleTokenExactIn',
838
+ outputs: [
839
+ {
840
+ internalType: 'uint256',
841
+ name: 'amountCalculated',
842
+ type: 'uint256',
843
+ },
844
+ ],
845
+ stateMutability: 'nonpayable',
846
+ type: 'function',
847
+ },
848
+ {
849
+ inputs: [
850
+ { internalType: 'address', name: 'pool', type: 'address' },
851
+ {
852
+ internalType: 'contract IERC20',
853
+ name: 'tokenIn',
854
+ type: 'address',
855
+ },
856
+ {
857
+ internalType: 'contract IERC20',
858
+ name: 'tokenOut',
859
+ type: 'address',
860
+ },
861
+ {
862
+ internalType: 'uint256',
863
+ name: 'exactAmountOut',
864
+ type: 'uint256',
865
+ },
866
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
867
+ ],
868
+ name: 'querySwapSingleTokenExactOut',
869
+ outputs: [
870
+ {
871
+ internalType: 'uint256',
872
+ name: 'amountCalculated',
873
+ type: 'uint256',
874
+ },
875
+ ],
876
+ stateMutability: 'nonpayable',
877
+ type: 'function',
878
+ },
879
+ {
880
+ inputs: [
881
+ { internalType: 'address', name: 'pool', type: 'address' },
882
+ {
883
+ internalType: 'uint256',
884
+ name: 'maxBptAmountIn',
885
+ type: 'uint256',
886
+ },
887
+ {
888
+ internalType: 'uint256[]',
889
+ name: 'minAmountsOut',
890
+ type: 'uint256[]',
891
+ },
892
+ { internalType: 'bool', name: 'wethIsEth', type: 'bool' },
893
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
894
+ ],
895
+ name: 'removeLiquidityCustom',
896
+ outputs: [
897
+ { internalType: 'uint256', name: 'bptAmountIn', type: 'uint256' },
898
+ {
899
+ internalType: 'uint256[]',
900
+ name: 'amountsOut',
901
+ type: 'uint256[]',
902
+ },
903
+ { internalType: 'bytes', name: 'returnData', type: 'bytes' },
904
+ ],
905
+ stateMutability: 'nonpayable',
906
+ type: 'function',
907
+ },
908
+ {
909
+ inputs: [
910
+ {
911
+ components: [
912
+ {
913
+ internalType: 'address',
914
+ name: 'sender',
915
+ type: 'address',
916
+ },
917
+ { internalType: 'address', name: 'pool', type: 'address' },
918
+ {
919
+ internalType: 'uint256[]',
920
+ name: 'minAmountsOut',
921
+ type: 'uint256[]',
922
+ },
923
+ {
924
+ internalType: 'uint256',
925
+ name: 'maxBptAmountIn',
926
+ type: 'uint256',
927
+ },
928
+ {
929
+ internalType: 'enum RemoveLiquidityKind',
930
+ name: 'kind',
931
+ type: 'uint8',
932
+ },
933
+ { internalType: 'bool', name: 'wethIsEth', type: 'bool' },
934
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
935
+ ],
936
+ internalType: 'struct IRouterCommon.RemoveLiquidityHookParams',
937
+ name: 'params',
938
+ type: 'tuple',
939
+ },
940
+ ],
941
+ name: 'removeLiquidityHook',
942
+ outputs: [
943
+ { internalType: 'uint256', name: 'bptAmountIn', type: 'uint256' },
944
+ {
945
+ internalType: 'uint256[]',
946
+ name: 'amountsOut',
947
+ type: 'uint256[]',
948
+ },
949
+ { internalType: 'bytes', name: 'returnData', type: 'bytes' },
950
+ ],
951
+ stateMutability: 'nonpayable',
952
+ type: 'function',
953
+ },
954
+ {
955
+ inputs: [
956
+ { internalType: 'address', name: 'pool', type: 'address' },
957
+ {
958
+ internalType: 'uint256',
959
+ name: 'exactBptAmountIn',
960
+ type: 'uint256',
961
+ },
962
+ {
963
+ internalType: 'uint256[]',
964
+ name: 'minAmountsOut',
965
+ type: 'uint256[]',
966
+ },
967
+ { internalType: 'bool', name: 'wethIsEth', type: 'bool' },
968
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
969
+ ],
970
+ name: 'removeLiquidityProportional',
971
+ outputs: [
972
+ {
973
+ internalType: 'uint256[]',
974
+ name: 'amountsOut',
975
+ type: 'uint256[]',
976
+ },
977
+ ],
978
+ stateMutability: 'payable',
979
+ type: 'function',
980
+ },
981
+ {
982
+ inputs: [
983
+ { internalType: 'address', name: 'pool', type: 'address' },
984
+ {
985
+ internalType: 'uint256',
986
+ name: 'exactBptAmountIn',
987
+ type: 'uint256',
988
+ },
989
+ ],
990
+ name: 'removeLiquidityRecovery',
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
+ { internalType: 'address', name: 'pool', type: 'address' },
1004
+ { internalType: 'address', name: 'sender', type: 'address' },
1005
+ {
1006
+ internalType: 'uint256',
1007
+ name: 'exactBptAmountIn',
1008
+ type: 'uint256',
1009
+ },
1010
+ ],
1011
+ name: 'removeLiquidityRecoveryHook',
1012
+ outputs: [
1013
+ {
1014
+ internalType: 'uint256[]',
1015
+ name: 'amountsOut',
1016
+ type: 'uint256[]',
1017
+ },
1018
+ ],
1019
+ stateMutability: 'nonpayable',
1020
+ type: 'function',
1021
+ },
1022
+ {
1023
+ inputs: [
1024
+ { internalType: 'address', name: 'pool', type: 'address' },
1025
+ {
1026
+ internalType: 'uint256',
1027
+ name: 'exactBptAmountIn',
1028
+ type: 'uint256',
1029
+ },
1030
+ {
1031
+ internalType: 'contract IERC20',
1032
+ name: 'tokenOut',
1033
+ type: 'address',
1034
+ },
1035
+ { internalType: 'uint256', name: 'minAmountOut', type: 'uint256' },
1036
+ { internalType: 'bool', name: 'wethIsEth', type: 'bool' },
1037
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
1038
+ ],
1039
+ name: 'removeLiquiditySingleTokenExactIn',
1040
+ outputs: [{ internalType: 'uint256', name: 'amountOut', type: 'uint256' }],
1041
+ stateMutability: 'payable',
1042
+ type: 'function',
1043
+ },
1044
+ {
1045
+ inputs: [
1046
+ { internalType: 'address', name: 'pool', type: 'address' },
1047
+ {
1048
+ internalType: 'uint256',
1049
+ name: 'maxBptAmountIn',
1050
+ type: 'uint256',
1051
+ },
1052
+ {
1053
+ internalType: 'contract IERC20',
1054
+ name: 'tokenOut',
1055
+ type: 'address',
1056
+ },
1057
+ {
1058
+ internalType: 'uint256',
1059
+ name: 'exactAmountOut',
1060
+ type: 'uint256',
1061
+ },
1062
+ { internalType: 'bool', name: 'wethIsEth', type: 'bool' },
1063
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
1064
+ ],
1065
+ name: 'removeLiquiditySingleTokenExactOut',
1066
+ outputs: [
1067
+ { internalType: 'uint256', name: 'bptAmountIn', type: 'uint256' },
1068
+ ],
1069
+ stateMutability: 'payable',
1070
+ type: 'function',
1071
+ },
1072
+ {
1073
+ inputs: [
1074
+ { internalType: 'address', name: 'pool', type: 'address' },
1075
+ {
1076
+ internalType: 'contract IERC20',
1077
+ name: 'tokenIn',
1078
+ type: 'address',
1079
+ },
1080
+ {
1081
+ internalType: 'contract IERC20',
1082
+ name: 'tokenOut',
1083
+ type: 'address',
1084
+ },
1085
+ { internalType: 'uint256', name: 'exactAmountIn', type: 'uint256' },
1086
+ { internalType: 'uint256', name: 'minAmountOut', type: 'uint256' },
1087
+ { internalType: 'uint256', name: 'deadline', type: 'uint256' },
1088
+ { internalType: 'bool', name: 'wethIsEth', type: 'bool' },
1089
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
1090
+ ],
1091
+ name: 'swapSingleTokenExactIn',
1092
+ outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
1093
+ stateMutability: 'payable',
1094
+ type: 'function',
1095
+ },
1096
+ {
1097
+ inputs: [
1098
+ { internalType: 'address', name: 'pool', type: 'address' },
1099
+ {
1100
+ internalType: 'contract IERC20',
1101
+ name: 'tokenIn',
1102
+ type: 'address',
1103
+ },
1104
+ {
1105
+ internalType: 'contract IERC20',
1106
+ name: 'tokenOut',
1107
+ type: 'address',
1108
+ },
1109
+ {
1110
+ internalType: 'uint256',
1111
+ name: 'exactAmountOut',
1112
+ type: 'uint256',
1113
+ },
1114
+ { internalType: 'uint256', name: 'maxAmountIn', type: 'uint256' },
1115
+ { internalType: 'uint256', name: 'deadline', type: 'uint256' },
1116
+ { internalType: 'bool', name: 'wethIsEth', type: 'bool' },
1117
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
1118
+ ],
1119
+ name: 'swapSingleTokenExactOut',
1120
+ outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
1121
+ stateMutability: 'payable',
1122
+ type: 'function',
1123
+ },
1124
+ {
1125
+ inputs: [
1126
+ {
1127
+ components: [
1128
+ {
1129
+ internalType: 'address',
1130
+ name: 'sender',
1131
+ type: 'address',
1132
+ },
1133
+ {
1134
+ internalType: 'enum SwapKind',
1135
+ name: 'kind',
1136
+ type: 'uint8',
1137
+ },
1138
+ { internalType: 'address', name: 'pool', type: 'address' },
1139
+ {
1140
+ internalType: 'contract IERC20',
1141
+ name: 'tokenIn',
1142
+ type: 'address',
1143
+ },
1144
+ {
1145
+ internalType: 'contract IERC20',
1146
+ name: 'tokenOut',
1147
+ type: 'address',
1148
+ },
1149
+ {
1150
+ internalType: 'uint256',
1151
+ name: 'amountGiven',
1152
+ type: 'uint256',
1153
+ },
1154
+ { internalType: 'uint256', name: 'limit', type: 'uint256' },
1155
+ {
1156
+ internalType: 'uint256',
1157
+ name: 'deadline',
1158
+ type: 'uint256',
1159
+ },
1160
+ { internalType: 'bool', name: 'wethIsEth', type: 'bool' },
1161
+ { internalType: 'bytes', name: 'userData', type: 'bytes' },
1162
+ ],
1163
+ internalType: 'struct IRouter.SwapSingleTokenHookParams',
1164
+ name: 'params',
1165
+ type: 'tuple',
1166
+ },
1167
+ ],
1168
+ name: 'swapSingleTokenHook',
1169
+ outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
1170
+ stateMutability: 'nonpayable',
1171
+ type: 'function',
1172
+ },
1173
+ { stateMutability: 'payable', type: 'receive' },
1174
+ ];
1175
+ //# sourceMappingURL=balancerRouter.js.map