@paraswap/dex-lib 4.1.10 → 4.1.11-erc-4626.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 (260) 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/ERC4626.json +757 -0
  5. package/build/abi/{integral/pool.json → inception/inception-ineth-pool.json} +558 -537
  6. package/build/abi/inception/inception-ratio-feed.json +329 -0
  7. package/build/abi/inception/inception-vault.json +991 -0
  8. package/build/abi/uniswap-v3/AlienBaseV3Router.abi.json +52 -0
  9. package/build/abi/usual-m-smart-m/usualM.abi.json +483 -0
  10. package/build/abi/{integral/relayer.json → wombat/pool.json} +474 -721
  11. package/build/dex/aave-v1/aave-v1.d.ts +2 -1
  12. package/build/dex/aave-v1/aave-v1.js +23 -0
  13. package/build/dex/aave-v1/aave-v1.js.map +1 -1
  14. package/build/dex/aave-v2/tokens-avalanche.json +44 -0
  15. package/build/dex/aave-v2/tokens-mainnet.json +188 -0
  16. package/build/dex/aave-v2/tokens-polygon.json +44 -0
  17. package/build/dex/balancer-v3/abi/balancerBatchRouter.d.ts +729 -0
  18. package/build/dex/balancer-v3/abi/balancerBatchRouter.js +732 -0
  19. package/build/dex/balancer-v3/abi/balancerBatchRouter.js.map +1 -0
  20. package/build/dex/balancer-v3/abi/balancerRouter.d.ts +1406 -0
  21. package/build/dex/balancer-v3/abi/balancerRouter.js +1175 -0
  22. package/build/dex/balancer-v3/abi/balancerRouter.js.map +1 -0
  23. package/build/dex/balancer-v3/abi/vaultExtension.V3.d.ts +2081 -0
  24. package/build/dex/balancer-v3/abi/vaultExtension.V3.js +1851 -0
  25. package/build/dex/balancer-v3/abi/vaultExtension.V3.js.map +1 -0
  26. package/build/dex/balancer-v3/balancer-v3-sepolia-pools.d.ts +34 -0
  27. package/build/dex/balancer-v3/balancer-v3-sepolia-pools.js +406 -0
  28. package/build/dex/balancer-v3/balancer-v3-sepolia-pools.js.map +1 -0
  29. package/build/dex/balancer-v3/gyroECLPPool.d.ts +11 -0
  30. package/build/dex/balancer-v3/gyroECLPPool.js +6 -0
  31. package/build/dex/balancer-v3/gyroECLPPool.js.map +1 -0
  32. package/build/dex/balancer-v3/utils.d.ts +2 -0
  33. package/build/dex/balancer-v3/utils.js +11 -0
  34. package/build/dex/balancer-v3/utils.js.map +1 -0
  35. package/build/dex/erc4626/config.d.ts +3 -0
  36. package/build/dex/erc4626/config.js +42 -0
  37. package/build/dex/erc4626/config.js.map +1 -0
  38. package/build/dex/erc4626/constants.d.ts +3 -0
  39. package/build/dex/erc4626/constants.js +7 -0
  40. package/build/dex/erc4626/constants.js.map +1 -0
  41. package/build/dex/erc4626/erc-4626-pool.d.ts +24 -0
  42. package/build/dex/erc4626/erc-4626-pool.js +92 -0
  43. package/build/dex/erc4626/erc-4626-pool.js.map +1 -0
  44. package/build/dex/erc4626/erc4626.d.ts +46 -0
  45. package/build/dex/erc4626/erc4626.js +247 -0
  46. package/build/dex/erc4626/erc4626.js.map +1 -0
  47. package/build/dex/erc4626/scripts/validate-state.d.ts +0 -0
  48. package/build/dex/erc4626/scripts/validate-state.js +146 -0
  49. package/build/dex/erc4626/scripts/validate-state.js.map +1 -0
  50. package/build/dex/erc4626/types.d.ts +18 -0
  51. package/build/dex/erc4626/types.js +11 -0
  52. package/build/dex/erc4626/types.js.map +1 -0
  53. package/build/dex/inception/config.d.ts +4 -0
  54. package/build/dex/inception/config.js +109 -0
  55. package/build/dex/inception/config.js.map +1 -0
  56. package/build/dex/inception/inception-event-pool.d.ts +16 -0
  57. package/build/dex/inception/inception-event-pool.js +49 -0
  58. package/build/dex/inception/inception-event-pool.js.map +1 -0
  59. package/build/dex/inception/inception.d.ts +43 -0
  60. package/build/dex/inception/inception.js +180 -0
  61. package/build/dex/inception/inception.js.map +1 -0
  62. package/build/dex/inception/tokens.d.ts +9 -0
  63. package/build/dex/inception/tokens.js +28 -0
  64. package/build/dex/inception/tokens.js.map +1 -0
  65. package/build/dex/inception/types.d.ts +22 -0
  66. package/build/dex/{m-token → inception}/types.js.map +1 -1
  67. package/build/dex/inception/utils.d.ts +7 -0
  68. package/build/dex/inception/utils.js +58 -0
  69. package/build/dex/inception/utils.js.map +1 -0
  70. package/build/dex/index.js +2 -2
  71. package/build/dex/index.js.map +1 -1
  72. package/build/dex/jarvis.d.ts +2 -1
  73. package/build/dex/jarvis.js +58 -0
  74. package/build/dex/jarvis.js.map +1 -1
  75. package/build/dex/maker-psm/scripts/gem.abi.json +136 -0
  76. package/build/dex/maker-psm/scripts/validate-state.d.ts +0 -0
  77. package/build/dex/maker-psm/scripts/validate-state.js +185 -0
  78. package/build/dex/maker-psm/scripts/validate-state.js.map +1 -0
  79. package/build/dex/maker-psm/scripts/vat.abi.json +243 -0
  80. package/build/dex/platypus/platypus.d.ts +2 -1
  81. package/build/dex/platypus/platypus.js +45 -0
  82. package/build/dex/platypus/platypus.js.map +1 -1
  83. package/build/dex/solidly-v3/scripts/check-event-pool-event.d.ts +1 -0
  84. package/build/dex/solidly-v3/scripts/check-event-pool-event.js +53 -0
  85. package/build/dex/solidly-v3/scripts/check-event-pool-event.js.map +1 -0
  86. package/build/dex/stable-pool.js +1 -8
  87. package/build/dex/stable-pool.js.map +1 -1
  88. package/build/dex/swaap-v1/swaap-v1.d.ts +2 -1
  89. package/build/dex/swaap-v1/swaap-v1.js +14 -0
  90. package/build/dex/swaap-v1/swaap-v1.js.map +1 -1
  91. package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.d.ts +17 -0
  92. package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.js +64 -0
  93. package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.js.map +1 -0
  94. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.d.ts +17 -0
  95. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.js +79 -0
  96. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.js.map +1 -0
  97. package/build/dex/uniswap-v3/uniswap-v3-pricing.d.ts +4 -0
  98. package/build/dex/uniswap-v3/uniswap-v3-pricing.js +43 -0
  99. package/build/dex/uniswap-v3/uniswap-v3-pricing.js.map +1 -0
  100. package/build/dex/uniswap-v3/uniswap-v3-worker.d.ts +1 -0
  101. package/build/dex/uniswap-v3/uniswap-v3-worker.js +10 -0
  102. package/build/dex/uniswap-v3/uniswap-v3-worker.js.map +1 -0
  103. package/build/dex/uniswap-v4/config.js +0 -43
  104. package/build/dex/uniswap-v4/config.js.map +1 -1
  105. package/build/dex/uniswap-v4/encoder.js +2 -12
  106. package/build/dex/uniswap-v4/encoder.js.map +1 -1
  107. package/build/dex/uniswap-v4/types.d.ts +2 -36
  108. package/build/dex/uniswap-v4/uniswap-v4.d.ts +6 -6
  109. package/build/dex/uniswap-v4/uniswap-v4.js +47 -29
  110. package/build/dex/uniswap-v4/uniswap-v4.js.map +1 -1
  111. package/build/dex/usual/usual-m-smart-m.d.ts +17 -0
  112. package/build/dex/usual/usual-m-smart-m.js +50 -0
  113. package/build/dex/usual/usual-m-smart-m.js.map +1 -0
  114. package/build/dex/usual-m-smart-m/config.d.ts +3 -0
  115. package/build/dex/usual-m-smart-m/config.js +13 -0
  116. package/build/dex/usual-m-smart-m/config.js.map +1 -0
  117. package/build/dex/usual-m-smart-m/types.d.ts +7 -0
  118. package/build/dex/usual-m-smart-m/types.js +3 -0
  119. package/build/dex/usual-m-smart-m/types.js.map +1 -0
  120. package/build/dex/usual-m-smart-m/usual-m-smart-m.d.ts +35 -0
  121. package/build/dex/usual-m-smart-m/usual-m-smart-m.js +161 -0
  122. package/build/dex/usual-m-smart-m/usual-m-smart-m.js.map +1 -0
  123. package/build/dex/{m-token → usual-m-usd0}/config.d.ts +2 -2
  124. package/build/dex/usual-m-usd0/config.js +14 -0
  125. package/build/dex/usual-m-usd0/config.js.map +1 -0
  126. package/build/dex/usual-m-usd0/types.d.ts +8 -0
  127. package/build/dex/usual-m-usd0/types.js +3 -0
  128. package/build/dex/usual-m-usd0/types.js.map +1 -0
  129. package/build/dex/usual-m-usd0/usual-m-usd0.d.ts +35 -0
  130. package/build/dex/usual-m-usd0/usual-m-usd0.js +159 -0
  131. package/build/dex/usual-m-usd0/usual-m-usd0.js.map +1 -0
  132. package/build/dex/zerox/index.d.ts +4 -26
  133. package/build/dex/zerox/index.js +50 -42
  134. package/build/dex/zerox/index.js.map +1 -1
  135. package/build/dex/zerox/types.d.ts +29 -0
  136. package/build/dex/zerox/types.js +8 -1
  137. package/build/dex/zerox/types.js.map +1 -1
  138. package/package.json +1 -1
  139. package/src/dex/erc4626/config.ts +41 -0
  140. package/src/dex/{wusdm → erc4626}/constants.ts +2 -0
  141. package/src/dex/{wusdm/wusdm-pool.ts → erc4626/erc-4626-pool.ts} +38 -15
  142. package/src/dex/erc4626/erc4626-event.test.ts +134 -0
  143. package/src/dex/{wusdm/wusdm-integration.test.ts → erc4626/erc4626-integration.test.ts} +3 -3
  144. package/src/dex/{wusdm/wusdm.ts → erc4626/erc4626.ts} +69 -64
  145. package/src/dex/erc4626/old-events.test.ts +249 -0
  146. package/src/dex/erc4626/scripts/validate-state.ts +168 -0
  147. package/src/dex/{wusdm → erc4626}/types.ts +6 -6
  148. package/src/dex/index.ts +2 -2
  149. package/tests/constants-e2e.ts +1 -1
  150. package/.idea/aws.xml +0 -17
  151. package/.idea/codeStyles/Project.xml +0 -19
  152. package/.idea/codeStyles/codeStyleConfig.xml +0 -5
  153. package/.idea/misc.xml +0 -6
  154. package/.idea/modules.xml +0 -8
  155. package/.idea/paraswap-dex-lib.iml +0 -9
  156. package/.idea/prettier.xml +0 -7
  157. package/.idea/vcs.xml +0 -6
  158. package/build/abi/integral/factory.json +0 -333
  159. package/build/abi/integral/oracle.json +0 -501
  160. package/build/abi/uniswap-v4/pool-manager.abi.json +0 -1366
  161. package/build/abi/uniswap-v4/state-view.abi.json +0 -365
  162. package/build/dex/fluid-dex/fluid-dex-generate-pool.d.ts +0 -49
  163. package/build/dex/fluid-dex/fluid-dex-generate-pool.js +0 -104
  164. package/build/dex/fluid-dex/fluid-dex-generate-pool.js.map +0 -1
  165. package/build/dex/integral/config.d.ts +0 -4
  166. package/build/dex/integral/config.js +0 -20
  167. package/build/dex/integral/config.js.map +0 -1
  168. package/build/dex/integral/context.d.ts +0 -40
  169. package/build/dex/integral/context.js +0 -158
  170. package/build/dex/integral/context.js.map +0 -1
  171. package/build/dex/integral/integral-factory.d.ts +0 -24
  172. package/build/dex/integral/integral-factory.js +0 -95
  173. package/build/dex/integral/integral-factory.js.map +0 -1
  174. package/build/dex/integral/integral-pool.d.ts +0 -50
  175. package/build/dex/integral/integral-pool.js +0 -149
  176. package/build/dex/integral/integral-pool.js.map +0 -1
  177. package/build/dex/integral/integral-pricing.d.ts +0 -18
  178. package/build/dex/integral/integral-pricing.js +0 -114
  179. package/build/dex/integral/integral-pricing.js.map +0 -1
  180. package/build/dex/integral/integral-relayer.d.ts +0 -42
  181. package/build/dex/integral/integral-relayer.js +0 -192
  182. package/build/dex/integral/integral-relayer.js.map +0 -1
  183. package/build/dex/integral/integral-token.d.ts +0 -27
  184. package/build/dex/integral/integral-token.js +0 -59
  185. package/build/dex/integral/integral-token.js.map +0 -1
  186. package/build/dex/integral/integral.d.ts +0 -41
  187. package/build/dex/integral/integral.js +0 -376
  188. package/build/dex/integral/integral.js.map +0 -1
  189. package/build/dex/integral/types.d.ts +0 -85
  190. package/build/dex/integral/types.js +0 -9
  191. package/build/dex/integral/types.js.map +0 -1
  192. package/build/dex/integral/utils-e2e.d.ts +0 -9
  193. package/build/dex/integral/utils-e2e.js +0 -131
  194. package/build/dex/integral/utils-e2e.js.map +0 -1
  195. package/build/dex/integral/utils.d.ts +0 -17
  196. package/build/dex/integral/utils.js +0 -94
  197. package/build/dex/integral/utils.js.map +0 -1
  198. package/build/dex/m-token/config.js +0 -19
  199. package/build/dex/m-token/config.js.map +0 -1
  200. package/build/dex/m-token/m-token.d.ts +0 -29
  201. package/build/dex/m-token/m-token.js +0 -145
  202. package/build/dex/m-token/m-token.js.map +0 -1
  203. package/build/dex/m-token/m-wrapped-m.d.ts +0 -17
  204. package/build/dex/m-token/m-wrapped-m.js +0 -50
  205. package/build/dex/m-token/m-wrapped-m.js.map +0 -1
  206. package/build/dex/m-token/types.d.ts +0 -12
  207. package/build/dex/trader-joe-v2.1/optimizer.d.ts +0 -2
  208. package/build/dex/trader-joe-v2.1/optimizer.js +0 -47
  209. package/build/dex/trader-joe-v2.1/optimizer.js.map +0 -1
  210. package/build/dex/uniswap-v4/constants.d.ts +0 -7
  211. package/build/dex/uniswap-v4/constants.js +0 -18
  212. package/build/dex/uniswap-v4/constants.js.map +0 -1
  213. package/build/dex/uniswap-v4/contract-math/BitMath.d.ts +0 -4
  214. package/build/dex/uniswap-v4/contract-math/BitMath.js +0 -93
  215. package/build/dex/uniswap-v4/contract-math/BitMath.js.map +0 -1
  216. package/build/dex/uniswap-v4/contract-math/FixedPoint128.d.ts +0 -3
  217. package/build/dex/uniswap-v4/contract-math/FixedPoint128.js +0 -8
  218. package/build/dex/uniswap-v4/contract-math/FixedPoint128.js.map +0 -1
  219. package/build/dex/uniswap-v4/contract-math/FixedPoint96.d.ts +0 -4
  220. package/build/dex/uniswap-v4/contract-math/FixedPoint96.js +0 -9
  221. package/build/dex/uniswap-v4/contract-math/FixedPoint96.js.map +0 -1
  222. package/build/dex/uniswap-v4/contract-math/FullMath.d.ts +0 -4
  223. package/build/dex/uniswap-v4/contract-math/FullMath.js +0 -19
  224. package/build/dex/uniswap-v4/contract-math/FullMath.js.map +0 -1
  225. package/build/dex/uniswap-v4/contract-math/LiquidityMath.d.ts +0 -3
  226. package/build/dex/uniswap-v4/contract-math/LiquidityMath.js +0 -22
  227. package/build/dex/uniswap-v4/contract-math/LiquidityMath.js.map +0 -1
  228. package/build/dex/uniswap-v4/contract-math/SqrtPriceMath.d.ts +0 -10
  229. package/build/dex/uniswap-v4/contract-math/SqrtPriceMath.js +0 -91
  230. package/build/dex/uniswap-v4/contract-math/SqrtPriceMath.js.map +0 -1
  231. package/build/dex/uniswap-v4/contract-math/SwapMath.d.ts +0 -8
  232. package/build/dex/uniswap-v4/contract-math/SwapMath.js +0 -70
  233. package/build/dex/uniswap-v4/contract-math/SwapMath.js.map +0 -1
  234. package/build/dex/uniswap-v4/contract-math/TickBitMap.d.ts +0 -7
  235. package/build/dex/uniswap-v4/contract-math/TickBitMap.js +0 -86
  236. package/build/dex/uniswap-v4/contract-math/TickBitMap.js.map +0 -1
  237. package/build/dex/uniswap-v4/contract-math/TickMath.d.ts +0 -8
  238. package/build/dex/uniswap-v4/contract-math/TickMath.js +0 -162
  239. package/build/dex/uniswap-v4/contract-math/TickMath.js.map +0 -1
  240. package/build/dex/uniswap-v4/contract-math/UnsafeMath.d.ts +0 -3
  241. package/build/dex/uniswap-v4/contract-math/UnsafeMath.js +0 -10
  242. package/build/dex/uniswap-v4/contract-math/UnsafeMath.js.map +0 -1
  243. package/build/dex/uniswap-v4/contract-math/uniswap-v4-math.d.ts +0 -8
  244. package/build/dex/uniswap-v4/contract-math/uniswap-v4-math.js +0 -12
  245. package/build/dex/uniswap-v4/contract-math/uniswap-v4-math.js.map +0 -1
  246. package/build/dex/uniswap-v4/subgraph.d.ts +0 -5
  247. package/build/dex/uniswap-v4/subgraph.js +0 -80
  248. package/build/dex/uniswap-v4/subgraph.js.map +0 -1
  249. package/build/dex/uniswap-v4/uniswap-v4-pool-manager.d.ts +0 -30
  250. package/build/dex/uniswap-v4/uniswap-v4-pool-manager.js +0 -139
  251. package/build/dex/uniswap-v4/uniswap-v4-pool-manager.js.map +0 -1
  252. package/build/dex/uniswap-v4/utils.d.ts +0 -2
  253. package/build/dex/uniswap-v4/utils.js +0 -15
  254. package/build/dex/uniswap-v4/utils.js.map +0 -1
  255. package/src/dex/wusdm/config.ts +0 -43
  256. package/src/dex/wusdm/wusdm-event.test.ts +0 -104
  257. /package/build/dex/{m-token → inception}/types.js +0 -0
  258. /package/src/abi/{wUSDM.json → ERC4626.json} +0 -0
  259. /package/src/dex/{wusdm/wusdm-e2e.test.ts → erc4626/erc4626-e2e.test.ts} +0 -0
  260. /package/src/dex/{wusdm/wusdm-gas-estimation.test.ts → erc4626/erc4626-gas-estimation.test.ts} +0 -0
@@ -0,0 +1,1406 @@
1
+ export declare const balancerRouterAbi: readonly [{
2
+ readonly inputs: readonly [{
3
+ readonly internalType: "contract IVault";
4
+ readonly name: "vault";
5
+ readonly type: "address";
6
+ }, {
7
+ readonly internalType: "contract IWETH";
8
+ readonly name: "weth";
9
+ readonly type: "address";
10
+ }, {
11
+ readonly internalType: "contract IPermit2";
12
+ readonly name: "permit2";
13
+ readonly type: "address";
14
+ }];
15
+ readonly stateMutability: "nonpayable";
16
+ readonly type: "constructor";
17
+ }, {
18
+ readonly inputs: readonly [{
19
+ readonly internalType: "address";
20
+ readonly name: "target";
21
+ readonly type: "address";
22
+ }];
23
+ readonly name: "AddressEmptyCode";
24
+ readonly type: "error";
25
+ }, {
26
+ readonly inputs: readonly [{
27
+ readonly internalType: "address";
28
+ readonly name: "account";
29
+ readonly type: "address";
30
+ }];
31
+ readonly name: "AddressInsufficientBalance";
32
+ readonly type: "error";
33
+ }, {
34
+ readonly inputs: readonly [];
35
+ readonly name: "EthTransfer";
36
+ readonly type: "error";
37
+ }, {
38
+ readonly inputs: readonly [];
39
+ readonly name: "FailedInnerCall";
40
+ readonly type: "error";
41
+ }, {
42
+ readonly inputs: readonly [];
43
+ readonly name: "InsufficientEth";
44
+ readonly type: "error";
45
+ }, {
46
+ readonly inputs: readonly [];
47
+ readonly name: "ReentrancyGuardReentrantCall";
48
+ readonly type: "error";
49
+ }, {
50
+ readonly inputs: readonly [{
51
+ readonly internalType: "uint8";
52
+ readonly name: "bits";
53
+ readonly type: "uint8";
54
+ }, {
55
+ readonly internalType: "uint256";
56
+ readonly name: "value";
57
+ readonly type: "uint256";
58
+ }];
59
+ readonly name: "SafeCastOverflowedUintDowncast";
60
+ readonly type: "error";
61
+ }, {
62
+ readonly inputs: readonly [{
63
+ readonly internalType: "address";
64
+ readonly name: "token";
65
+ readonly type: "address";
66
+ }];
67
+ readonly name: "SafeERC20FailedOperation";
68
+ readonly type: "error";
69
+ }, {
70
+ readonly inputs: readonly [{
71
+ readonly internalType: "address";
72
+ readonly name: "sender";
73
+ readonly type: "address";
74
+ }];
75
+ readonly name: "SenderIsNotVault";
76
+ readonly type: "error";
77
+ }, {
78
+ readonly inputs: readonly [];
79
+ readonly name: "SwapDeadline";
80
+ readonly type: "error";
81
+ }, {
82
+ readonly inputs: readonly [{
83
+ readonly internalType: "address";
84
+ readonly name: "pool";
85
+ readonly type: "address";
86
+ }, {
87
+ readonly internalType: "uint256[]";
88
+ readonly name: "maxAmountsIn";
89
+ readonly type: "uint256[]";
90
+ }, {
91
+ readonly internalType: "uint256";
92
+ readonly name: "minBptAmountOut";
93
+ readonly type: "uint256";
94
+ }, {
95
+ readonly internalType: "bool";
96
+ readonly name: "wethIsEth";
97
+ readonly type: "bool";
98
+ }, {
99
+ readonly internalType: "bytes";
100
+ readonly name: "userData";
101
+ readonly type: "bytes";
102
+ }];
103
+ readonly name: "addLiquidityCustom";
104
+ readonly outputs: readonly [{
105
+ readonly internalType: "uint256[]";
106
+ readonly name: "amountsIn";
107
+ readonly type: "uint256[]";
108
+ }, {
109
+ readonly internalType: "uint256";
110
+ readonly name: "bptAmountOut";
111
+ readonly type: "uint256";
112
+ }, {
113
+ readonly internalType: "bytes";
114
+ readonly name: "returnData";
115
+ readonly type: "bytes";
116
+ }];
117
+ readonly stateMutability: "payable";
118
+ readonly type: "function";
119
+ }, {
120
+ readonly inputs: readonly [{
121
+ readonly components: readonly [{
122
+ readonly internalType: "address";
123
+ readonly name: "sender";
124
+ readonly type: "address";
125
+ }, {
126
+ readonly internalType: "address";
127
+ readonly name: "pool";
128
+ readonly type: "address";
129
+ }, {
130
+ readonly internalType: "uint256[]";
131
+ readonly name: "maxAmountsIn";
132
+ readonly type: "uint256[]";
133
+ }, {
134
+ readonly internalType: "uint256";
135
+ readonly name: "minBptAmountOut";
136
+ readonly type: "uint256";
137
+ }, {
138
+ readonly internalType: "enum AddLiquidityKind";
139
+ readonly name: "kind";
140
+ readonly type: "uint8";
141
+ }, {
142
+ readonly internalType: "bool";
143
+ readonly name: "wethIsEth";
144
+ readonly type: "bool";
145
+ }, {
146
+ readonly internalType: "bytes";
147
+ readonly name: "userData";
148
+ readonly type: "bytes";
149
+ }];
150
+ readonly internalType: "struct IRouterCommon.AddLiquidityHookParams";
151
+ readonly name: "params";
152
+ readonly type: "tuple";
153
+ }];
154
+ readonly name: "addLiquidityHook";
155
+ readonly outputs: readonly [{
156
+ readonly internalType: "uint256[]";
157
+ readonly name: "amountsIn";
158
+ readonly type: "uint256[]";
159
+ }, {
160
+ readonly internalType: "uint256";
161
+ readonly name: "bptAmountOut";
162
+ readonly type: "uint256";
163
+ }, {
164
+ readonly internalType: "bytes";
165
+ readonly name: "returnData";
166
+ readonly type: "bytes";
167
+ }];
168
+ readonly stateMutability: "nonpayable";
169
+ readonly type: "function";
170
+ }, {
171
+ readonly inputs: readonly [{
172
+ readonly internalType: "address";
173
+ readonly name: "pool";
174
+ readonly type: "address";
175
+ }, {
176
+ readonly internalType: "uint256[]";
177
+ readonly name: "maxAmountsIn";
178
+ readonly type: "uint256[]";
179
+ }, {
180
+ readonly internalType: "uint256";
181
+ readonly name: "exactBptAmountOut";
182
+ readonly type: "uint256";
183
+ }, {
184
+ readonly internalType: "bool";
185
+ readonly name: "wethIsEth";
186
+ readonly type: "bool";
187
+ }, {
188
+ readonly internalType: "bytes";
189
+ readonly name: "userData";
190
+ readonly type: "bytes";
191
+ }];
192
+ readonly name: "addLiquidityProportional";
193
+ readonly outputs: readonly [{
194
+ readonly internalType: "uint256[]";
195
+ readonly name: "amountsIn";
196
+ readonly type: "uint256[]";
197
+ }];
198
+ readonly stateMutability: "payable";
199
+ readonly type: "function";
200
+ }, {
201
+ readonly inputs: readonly [{
202
+ readonly internalType: "address";
203
+ readonly name: "pool";
204
+ readonly type: "address";
205
+ }, {
206
+ readonly internalType: "contract IERC20";
207
+ readonly name: "tokenIn";
208
+ readonly type: "address";
209
+ }, {
210
+ readonly internalType: "uint256";
211
+ readonly name: "maxAmountIn";
212
+ readonly type: "uint256";
213
+ }, {
214
+ readonly internalType: "uint256";
215
+ readonly name: "exactBptAmountOut";
216
+ readonly type: "uint256";
217
+ }, {
218
+ readonly internalType: "bool";
219
+ readonly name: "wethIsEth";
220
+ readonly type: "bool";
221
+ }, {
222
+ readonly internalType: "bytes";
223
+ readonly name: "userData";
224
+ readonly type: "bytes";
225
+ }];
226
+ readonly name: "addLiquiditySingleTokenExactOut";
227
+ readonly outputs: readonly [{
228
+ readonly internalType: "uint256";
229
+ readonly name: "amountIn";
230
+ readonly type: "uint256";
231
+ }];
232
+ readonly stateMutability: "payable";
233
+ readonly type: "function";
234
+ }, {
235
+ readonly inputs: readonly [{
236
+ readonly internalType: "contract IERC4626";
237
+ readonly name: "wrappedToken";
238
+ readonly type: "address";
239
+ }, {
240
+ readonly internalType: "uint256";
241
+ readonly name: "exactSharesToIssue";
242
+ readonly type: "uint256";
243
+ }];
244
+ readonly name: "addLiquidityToBuffer";
245
+ readonly outputs: readonly [{
246
+ readonly internalType: "uint256";
247
+ readonly name: "amountUnderlyingRaw";
248
+ readonly type: "uint256";
249
+ }, {
250
+ readonly internalType: "uint256";
251
+ readonly name: "amountWrappedRaw";
252
+ readonly type: "uint256";
253
+ }];
254
+ readonly stateMutability: "nonpayable";
255
+ readonly type: "function";
256
+ }, {
257
+ readonly inputs: readonly [{
258
+ readonly internalType: "contract IERC4626";
259
+ readonly name: "wrappedToken";
260
+ readonly type: "address";
261
+ }, {
262
+ readonly internalType: "uint256";
263
+ readonly name: "exactSharesToIssue";
264
+ readonly type: "uint256";
265
+ }, {
266
+ readonly internalType: "address";
267
+ readonly name: "sharesOwner";
268
+ readonly type: "address";
269
+ }];
270
+ readonly name: "addLiquidityToBufferHook";
271
+ readonly outputs: readonly [{
272
+ readonly internalType: "uint256";
273
+ readonly name: "amountUnderlyingRaw";
274
+ readonly type: "uint256";
275
+ }, {
276
+ readonly internalType: "uint256";
277
+ readonly name: "amountWrappedRaw";
278
+ readonly type: "uint256";
279
+ }];
280
+ readonly stateMutability: "nonpayable";
281
+ readonly type: "function";
282
+ }, {
283
+ readonly inputs: readonly [{
284
+ readonly internalType: "address";
285
+ readonly name: "pool";
286
+ readonly type: "address";
287
+ }, {
288
+ readonly internalType: "uint256[]";
289
+ readonly name: "exactAmountsIn";
290
+ readonly type: "uint256[]";
291
+ }, {
292
+ readonly internalType: "uint256";
293
+ readonly name: "minBptAmountOut";
294
+ readonly type: "uint256";
295
+ }, {
296
+ readonly internalType: "bool";
297
+ readonly name: "wethIsEth";
298
+ readonly type: "bool";
299
+ }, {
300
+ readonly internalType: "bytes";
301
+ readonly name: "userData";
302
+ readonly type: "bytes";
303
+ }];
304
+ readonly name: "addLiquidityUnbalanced";
305
+ readonly outputs: readonly [{
306
+ readonly internalType: "uint256";
307
+ readonly name: "bptAmountOut";
308
+ readonly type: "uint256";
309
+ }];
310
+ readonly stateMutability: "payable";
311
+ readonly type: "function";
312
+ }, {
313
+ readonly inputs: readonly [{
314
+ readonly internalType: "address";
315
+ readonly name: "pool";
316
+ readonly type: "address";
317
+ }, {
318
+ readonly internalType: "uint256[]";
319
+ readonly name: "amountsIn";
320
+ readonly type: "uint256[]";
321
+ }, {
322
+ readonly internalType: "bool";
323
+ readonly name: "wethIsEth";
324
+ readonly type: "bool";
325
+ }, {
326
+ readonly internalType: "bytes";
327
+ readonly name: "userData";
328
+ readonly type: "bytes";
329
+ }];
330
+ readonly name: "donate";
331
+ readonly outputs: readonly [];
332
+ readonly stateMutability: "payable";
333
+ readonly type: "function";
334
+ }, {
335
+ readonly inputs: readonly [];
336
+ readonly name: "getSender";
337
+ readonly outputs: readonly [{
338
+ readonly internalType: "address";
339
+ readonly name: "";
340
+ readonly type: "address";
341
+ }];
342
+ readonly stateMutability: "view";
343
+ readonly type: "function";
344
+ }, {
345
+ readonly inputs: readonly [{
346
+ readonly internalType: "address";
347
+ readonly name: "pool";
348
+ readonly type: "address";
349
+ }, {
350
+ readonly internalType: "contract IERC20[]";
351
+ readonly name: "tokens";
352
+ readonly type: "address[]";
353
+ }, {
354
+ readonly internalType: "uint256[]";
355
+ readonly name: "exactAmountsIn";
356
+ readonly type: "uint256[]";
357
+ }, {
358
+ readonly internalType: "uint256";
359
+ readonly name: "minBptAmountOut";
360
+ readonly type: "uint256";
361
+ }, {
362
+ readonly internalType: "bool";
363
+ readonly name: "wethIsEth";
364
+ readonly type: "bool";
365
+ }, {
366
+ readonly internalType: "bytes";
367
+ readonly name: "userData";
368
+ readonly type: "bytes";
369
+ }];
370
+ readonly name: "initialize";
371
+ readonly outputs: readonly [{
372
+ readonly internalType: "uint256";
373
+ readonly name: "bptAmountOut";
374
+ readonly type: "uint256";
375
+ }];
376
+ readonly stateMutability: "payable";
377
+ readonly type: "function";
378
+ }, {
379
+ readonly inputs: readonly [{
380
+ readonly internalType: "contract IERC4626";
381
+ readonly name: "wrappedToken";
382
+ readonly type: "address";
383
+ }, {
384
+ readonly internalType: "uint256";
385
+ readonly name: "amountUnderlyingRaw";
386
+ readonly type: "uint256";
387
+ }, {
388
+ readonly internalType: "uint256";
389
+ readonly name: "amountWrappedRaw";
390
+ readonly type: "uint256";
391
+ }];
392
+ readonly name: "initializeBuffer";
393
+ readonly outputs: readonly [{
394
+ readonly internalType: "uint256";
395
+ readonly name: "issuedShares";
396
+ readonly type: "uint256";
397
+ }];
398
+ readonly stateMutability: "nonpayable";
399
+ readonly type: "function";
400
+ }, {
401
+ readonly inputs: readonly [{
402
+ readonly internalType: "contract IERC4626";
403
+ readonly name: "wrappedToken";
404
+ readonly type: "address";
405
+ }, {
406
+ readonly internalType: "uint256";
407
+ readonly name: "amountUnderlyingRaw";
408
+ readonly type: "uint256";
409
+ }, {
410
+ readonly internalType: "uint256";
411
+ readonly name: "amountWrappedRaw";
412
+ readonly type: "uint256";
413
+ }, {
414
+ readonly internalType: "address";
415
+ readonly name: "sharesOwner";
416
+ readonly type: "address";
417
+ }];
418
+ readonly name: "initializeBufferHook";
419
+ readonly outputs: readonly [{
420
+ readonly internalType: "uint256";
421
+ readonly name: "issuedShares";
422
+ readonly type: "uint256";
423
+ }];
424
+ readonly stateMutability: "nonpayable";
425
+ readonly type: "function";
426
+ }, {
427
+ readonly inputs: readonly [{
428
+ readonly components: readonly [{
429
+ readonly internalType: "address";
430
+ readonly name: "sender";
431
+ readonly type: "address";
432
+ }, {
433
+ readonly internalType: "address";
434
+ readonly name: "pool";
435
+ readonly type: "address";
436
+ }, {
437
+ readonly internalType: "contract IERC20[]";
438
+ readonly name: "tokens";
439
+ readonly type: "address[]";
440
+ }, {
441
+ readonly internalType: "uint256[]";
442
+ readonly name: "exactAmountsIn";
443
+ readonly type: "uint256[]";
444
+ }, {
445
+ readonly internalType: "uint256";
446
+ readonly name: "minBptAmountOut";
447
+ readonly type: "uint256";
448
+ }, {
449
+ readonly internalType: "bool";
450
+ readonly name: "wethIsEth";
451
+ readonly type: "bool";
452
+ }, {
453
+ readonly internalType: "bytes";
454
+ readonly name: "userData";
455
+ readonly type: "bytes";
456
+ }];
457
+ readonly internalType: "struct IRouter.InitializeHookParams";
458
+ readonly name: "params";
459
+ readonly type: "tuple";
460
+ }];
461
+ readonly name: "initializeHook";
462
+ readonly outputs: readonly [{
463
+ readonly internalType: "uint256";
464
+ readonly name: "bptAmountOut";
465
+ readonly type: "uint256";
466
+ }];
467
+ readonly stateMutability: "nonpayable";
468
+ readonly type: "function";
469
+ }, {
470
+ readonly inputs: readonly [{
471
+ readonly internalType: "bytes[]";
472
+ readonly name: "data";
473
+ readonly type: "bytes[]";
474
+ }];
475
+ readonly name: "multicall";
476
+ readonly outputs: readonly [{
477
+ readonly internalType: "bytes[]";
478
+ readonly name: "results";
479
+ readonly type: "bytes[]";
480
+ }];
481
+ readonly stateMutability: "payable";
482
+ readonly type: "function";
483
+ }, {
484
+ readonly inputs: readonly [{
485
+ readonly components: readonly [{
486
+ readonly internalType: "address";
487
+ readonly name: "token";
488
+ readonly type: "address";
489
+ }, {
490
+ readonly internalType: "address";
491
+ readonly name: "owner";
492
+ readonly type: "address";
493
+ }, {
494
+ readonly internalType: "address";
495
+ readonly name: "spender";
496
+ readonly type: "address";
497
+ }, {
498
+ readonly internalType: "uint256";
499
+ readonly name: "amount";
500
+ readonly type: "uint256";
501
+ }, {
502
+ readonly internalType: "uint256";
503
+ readonly name: "nonce";
504
+ readonly type: "uint256";
505
+ }, {
506
+ readonly internalType: "uint256";
507
+ readonly name: "deadline";
508
+ readonly type: "uint256";
509
+ }];
510
+ readonly internalType: "struct IRouterCommon.PermitApproval[]";
511
+ readonly name: "permitBatch";
512
+ readonly type: "tuple[]";
513
+ }, {
514
+ readonly internalType: "bytes[]";
515
+ readonly name: "permitSignatures";
516
+ readonly type: "bytes[]";
517
+ }, {
518
+ readonly components: readonly [{
519
+ readonly components: readonly [{
520
+ readonly internalType: "address";
521
+ readonly name: "token";
522
+ readonly type: "address";
523
+ }, {
524
+ readonly internalType: "uint160";
525
+ readonly name: "amount";
526
+ readonly type: "uint160";
527
+ }, {
528
+ readonly internalType: "uint48";
529
+ readonly name: "expiration";
530
+ readonly type: "uint48";
531
+ }, {
532
+ readonly internalType: "uint48";
533
+ readonly name: "nonce";
534
+ readonly type: "uint48";
535
+ }];
536
+ readonly internalType: "struct IAllowanceTransfer.PermitDetails[]";
537
+ readonly name: "details";
538
+ readonly type: "tuple[]";
539
+ }, {
540
+ readonly internalType: "address";
541
+ readonly name: "spender";
542
+ readonly type: "address";
543
+ }, {
544
+ readonly internalType: "uint256";
545
+ readonly name: "sigDeadline";
546
+ readonly type: "uint256";
547
+ }];
548
+ readonly internalType: "struct IAllowanceTransfer.PermitBatch";
549
+ readonly name: "permit2Batch";
550
+ readonly type: "tuple";
551
+ }, {
552
+ readonly internalType: "bytes";
553
+ readonly name: "permit2Signature";
554
+ readonly type: "bytes";
555
+ }, {
556
+ readonly internalType: "bytes[]";
557
+ readonly name: "multicallData";
558
+ readonly type: "bytes[]";
559
+ }];
560
+ readonly name: "permitBatchAndCall";
561
+ readonly outputs: readonly [{
562
+ readonly internalType: "bytes[]";
563
+ readonly name: "results";
564
+ readonly type: "bytes[]";
565
+ }];
566
+ readonly stateMutability: "payable";
567
+ readonly type: "function";
568
+ }, {
569
+ readonly inputs: readonly [{
570
+ readonly internalType: "address";
571
+ readonly name: "pool";
572
+ readonly type: "address";
573
+ }, {
574
+ readonly internalType: "uint256[]";
575
+ readonly name: "maxAmountsIn";
576
+ readonly type: "uint256[]";
577
+ }, {
578
+ readonly internalType: "uint256";
579
+ readonly name: "minBptAmountOut";
580
+ readonly type: "uint256";
581
+ }, {
582
+ readonly internalType: "bytes";
583
+ readonly name: "userData";
584
+ readonly type: "bytes";
585
+ }];
586
+ readonly name: "queryAddLiquidityCustom";
587
+ readonly outputs: readonly [{
588
+ readonly internalType: "uint256[]";
589
+ readonly name: "amountsIn";
590
+ readonly type: "uint256[]";
591
+ }, {
592
+ readonly internalType: "uint256";
593
+ readonly name: "bptAmountOut";
594
+ readonly type: "uint256";
595
+ }, {
596
+ readonly internalType: "bytes";
597
+ readonly name: "returnData";
598
+ readonly type: "bytes";
599
+ }];
600
+ readonly stateMutability: "nonpayable";
601
+ readonly type: "function";
602
+ }, {
603
+ readonly inputs: readonly [{
604
+ readonly components: readonly [{
605
+ readonly internalType: "address";
606
+ readonly name: "sender";
607
+ readonly type: "address";
608
+ }, {
609
+ readonly internalType: "address";
610
+ readonly name: "pool";
611
+ readonly type: "address";
612
+ }, {
613
+ readonly internalType: "uint256[]";
614
+ readonly name: "maxAmountsIn";
615
+ readonly type: "uint256[]";
616
+ }, {
617
+ readonly internalType: "uint256";
618
+ readonly name: "minBptAmountOut";
619
+ readonly type: "uint256";
620
+ }, {
621
+ readonly internalType: "enum AddLiquidityKind";
622
+ readonly name: "kind";
623
+ readonly type: "uint8";
624
+ }, {
625
+ readonly internalType: "bool";
626
+ readonly name: "wethIsEth";
627
+ readonly type: "bool";
628
+ }, {
629
+ readonly internalType: "bytes";
630
+ readonly name: "userData";
631
+ readonly type: "bytes";
632
+ }];
633
+ readonly internalType: "struct IRouterCommon.AddLiquidityHookParams";
634
+ readonly name: "params";
635
+ readonly type: "tuple";
636
+ }];
637
+ readonly name: "queryAddLiquidityHook";
638
+ readonly outputs: readonly [{
639
+ readonly internalType: "uint256[]";
640
+ readonly name: "amountsIn";
641
+ readonly type: "uint256[]";
642
+ }, {
643
+ readonly internalType: "uint256";
644
+ readonly name: "bptAmountOut";
645
+ readonly type: "uint256";
646
+ }, {
647
+ readonly internalType: "bytes";
648
+ readonly name: "returnData";
649
+ readonly type: "bytes";
650
+ }];
651
+ readonly stateMutability: "nonpayable";
652
+ readonly type: "function";
653
+ }, {
654
+ readonly inputs: readonly [{
655
+ readonly internalType: "address";
656
+ readonly name: "pool";
657
+ readonly type: "address";
658
+ }, {
659
+ readonly internalType: "uint256";
660
+ readonly name: "exactBptAmountOut";
661
+ readonly type: "uint256";
662
+ }, {
663
+ readonly internalType: "bytes";
664
+ readonly name: "userData";
665
+ readonly type: "bytes";
666
+ }];
667
+ readonly name: "queryAddLiquidityProportional";
668
+ readonly outputs: readonly [{
669
+ readonly internalType: "uint256[]";
670
+ readonly name: "amountsIn";
671
+ readonly type: "uint256[]";
672
+ }];
673
+ readonly stateMutability: "nonpayable";
674
+ readonly type: "function";
675
+ }, {
676
+ readonly inputs: readonly [{
677
+ readonly internalType: "address";
678
+ readonly name: "pool";
679
+ readonly type: "address";
680
+ }, {
681
+ readonly internalType: "contract IERC20";
682
+ readonly name: "tokenIn";
683
+ readonly type: "address";
684
+ }, {
685
+ readonly internalType: "uint256";
686
+ readonly name: "exactBptAmountOut";
687
+ readonly type: "uint256";
688
+ }, {
689
+ readonly internalType: "bytes";
690
+ readonly name: "userData";
691
+ readonly type: "bytes";
692
+ }];
693
+ readonly name: "queryAddLiquiditySingleTokenExactOut";
694
+ readonly outputs: readonly [{
695
+ readonly internalType: "uint256";
696
+ readonly name: "amountIn";
697
+ readonly type: "uint256";
698
+ }];
699
+ readonly stateMutability: "nonpayable";
700
+ readonly type: "function";
701
+ }, {
702
+ readonly inputs: readonly [{
703
+ readonly internalType: "address";
704
+ readonly name: "pool";
705
+ readonly type: "address";
706
+ }, {
707
+ readonly internalType: "uint256[]";
708
+ readonly name: "exactAmountsIn";
709
+ readonly type: "uint256[]";
710
+ }, {
711
+ readonly internalType: "bytes";
712
+ readonly name: "userData";
713
+ readonly type: "bytes";
714
+ }];
715
+ readonly name: "queryAddLiquidityUnbalanced";
716
+ readonly outputs: readonly [{
717
+ readonly internalType: "uint256";
718
+ readonly name: "bptAmountOut";
719
+ readonly type: "uint256";
720
+ }];
721
+ readonly stateMutability: "nonpayable";
722
+ readonly type: "function";
723
+ }, {
724
+ readonly inputs: readonly [{
725
+ readonly internalType: "address";
726
+ readonly name: "pool";
727
+ readonly type: "address";
728
+ }, {
729
+ readonly internalType: "uint256";
730
+ readonly name: "maxBptAmountIn";
731
+ readonly type: "uint256";
732
+ }, {
733
+ readonly internalType: "uint256[]";
734
+ readonly name: "minAmountsOut";
735
+ readonly type: "uint256[]";
736
+ }, {
737
+ readonly internalType: "bytes";
738
+ readonly name: "userData";
739
+ readonly type: "bytes";
740
+ }];
741
+ readonly name: "queryRemoveLiquidityCustom";
742
+ readonly outputs: readonly [{
743
+ readonly internalType: "uint256";
744
+ readonly name: "bptAmountIn";
745
+ readonly type: "uint256";
746
+ }, {
747
+ readonly internalType: "uint256[]";
748
+ readonly name: "amountsOut";
749
+ readonly type: "uint256[]";
750
+ }, {
751
+ readonly internalType: "bytes";
752
+ readonly name: "returnData";
753
+ readonly type: "bytes";
754
+ }];
755
+ readonly stateMutability: "nonpayable";
756
+ readonly type: "function";
757
+ }, {
758
+ readonly inputs: readonly [{
759
+ readonly components: readonly [{
760
+ readonly internalType: "address";
761
+ readonly name: "sender";
762
+ readonly type: "address";
763
+ }, {
764
+ readonly internalType: "address";
765
+ readonly name: "pool";
766
+ readonly type: "address";
767
+ }, {
768
+ readonly internalType: "uint256[]";
769
+ readonly name: "minAmountsOut";
770
+ readonly type: "uint256[]";
771
+ }, {
772
+ readonly internalType: "uint256";
773
+ readonly name: "maxBptAmountIn";
774
+ readonly type: "uint256";
775
+ }, {
776
+ readonly internalType: "enum RemoveLiquidityKind";
777
+ readonly name: "kind";
778
+ readonly type: "uint8";
779
+ }, {
780
+ readonly internalType: "bool";
781
+ readonly name: "wethIsEth";
782
+ readonly type: "bool";
783
+ }, {
784
+ readonly internalType: "bytes";
785
+ readonly name: "userData";
786
+ readonly type: "bytes";
787
+ }];
788
+ readonly internalType: "struct IRouterCommon.RemoveLiquidityHookParams";
789
+ readonly name: "params";
790
+ readonly type: "tuple";
791
+ }];
792
+ readonly name: "queryRemoveLiquidityHook";
793
+ readonly outputs: readonly [{
794
+ readonly internalType: "uint256";
795
+ readonly name: "bptAmountIn";
796
+ readonly type: "uint256";
797
+ }, {
798
+ readonly internalType: "uint256[]";
799
+ readonly name: "amountsOut";
800
+ readonly type: "uint256[]";
801
+ }, {
802
+ readonly internalType: "bytes";
803
+ readonly name: "returnData";
804
+ readonly type: "bytes";
805
+ }];
806
+ readonly stateMutability: "nonpayable";
807
+ readonly type: "function";
808
+ }, {
809
+ readonly inputs: readonly [{
810
+ readonly internalType: "address";
811
+ readonly name: "pool";
812
+ readonly type: "address";
813
+ }, {
814
+ readonly internalType: "uint256";
815
+ readonly name: "exactBptAmountIn";
816
+ readonly type: "uint256";
817
+ }, {
818
+ readonly internalType: "bytes";
819
+ readonly name: "userData";
820
+ readonly type: "bytes";
821
+ }];
822
+ readonly name: "queryRemoveLiquidityProportional";
823
+ readonly outputs: readonly [{
824
+ readonly internalType: "uint256[]";
825
+ readonly name: "amountsOut";
826
+ readonly type: "uint256[]";
827
+ }];
828
+ readonly stateMutability: "nonpayable";
829
+ readonly type: "function";
830
+ }, {
831
+ readonly inputs: readonly [{
832
+ readonly internalType: "address";
833
+ readonly name: "pool";
834
+ readonly type: "address";
835
+ }, {
836
+ readonly internalType: "uint256";
837
+ readonly name: "exactBptAmountIn";
838
+ readonly type: "uint256";
839
+ }];
840
+ readonly name: "queryRemoveLiquidityRecovery";
841
+ readonly outputs: readonly [{
842
+ readonly internalType: "uint256[]";
843
+ readonly name: "amountsOut";
844
+ readonly type: "uint256[]";
845
+ }];
846
+ readonly stateMutability: "nonpayable";
847
+ readonly type: "function";
848
+ }, {
849
+ readonly inputs: readonly [{
850
+ readonly internalType: "address";
851
+ readonly name: "pool";
852
+ readonly type: "address";
853
+ }, {
854
+ readonly internalType: "address";
855
+ readonly name: "sender";
856
+ readonly type: "address";
857
+ }, {
858
+ readonly internalType: "uint256";
859
+ readonly name: "exactBptAmountIn";
860
+ readonly type: "uint256";
861
+ }];
862
+ readonly name: "queryRemoveLiquidityRecoveryHook";
863
+ readonly outputs: readonly [{
864
+ readonly internalType: "uint256[]";
865
+ readonly name: "amountsOut";
866
+ readonly type: "uint256[]";
867
+ }];
868
+ readonly stateMutability: "nonpayable";
869
+ readonly type: "function";
870
+ }, {
871
+ readonly inputs: readonly [{
872
+ readonly internalType: "address";
873
+ readonly name: "pool";
874
+ readonly type: "address";
875
+ }, {
876
+ readonly internalType: "uint256";
877
+ readonly name: "exactBptAmountIn";
878
+ readonly type: "uint256";
879
+ }, {
880
+ readonly internalType: "contract IERC20";
881
+ readonly name: "tokenOut";
882
+ readonly type: "address";
883
+ }, {
884
+ readonly internalType: "bytes";
885
+ readonly name: "userData";
886
+ readonly type: "bytes";
887
+ }];
888
+ readonly name: "queryRemoveLiquiditySingleTokenExactIn";
889
+ readonly outputs: readonly [{
890
+ readonly internalType: "uint256";
891
+ readonly name: "amountOut";
892
+ readonly type: "uint256";
893
+ }];
894
+ readonly stateMutability: "nonpayable";
895
+ readonly type: "function";
896
+ }, {
897
+ readonly inputs: readonly [{
898
+ readonly internalType: "address";
899
+ readonly name: "pool";
900
+ readonly type: "address";
901
+ }, {
902
+ readonly internalType: "contract IERC20";
903
+ readonly name: "tokenOut";
904
+ readonly type: "address";
905
+ }, {
906
+ readonly internalType: "uint256";
907
+ readonly name: "exactAmountOut";
908
+ readonly type: "uint256";
909
+ }, {
910
+ readonly internalType: "bytes";
911
+ readonly name: "userData";
912
+ readonly type: "bytes";
913
+ }];
914
+ readonly name: "queryRemoveLiquiditySingleTokenExactOut";
915
+ readonly outputs: readonly [{
916
+ readonly internalType: "uint256";
917
+ readonly name: "bptAmountIn";
918
+ readonly type: "uint256";
919
+ }];
920
+ readonly stateMutability: "nonpayable";
921
+ readonly type: "function";
922
+ }, {
923
+ readonly inputs: readonly [{
924
+ readonly components: readonly [{
925
+ readonly internalType: "address";
926
+ readonly name: "sender";
927
+ readonly type: "address";
928
+ }, {
929
+ readonly internalType: "enum SwapKind";
930
+ readonly name: "kind";
931
+ readonly type: "uint8";
932
+ }, {
933
+ readonly internalType: "address";
934
+ readonly name: "pool";
935
+ readonly type: "address";
936
+ }, {
937
+ readonly internalType: "contract IERC20";
938
+ readonly name: "tokenIn";
939
+ readonly type: "address";
940
+ }, {
941
+ readonly internalType: "contract IERC20";
942
+ readonly name: "tokenOut";
943
+ readonly type: "address";
944
+ }, {
945
+ readonly internalType: "uint256";
946
+ readonly name: "amountGiven";
947
+ readonly type: "uint256";
948
+ }, {
949
+ readonly internalType: "uint256";
950
+ readonly name: "limit";
951
+ readonly type: "uint256";
952
+ }, {
953
+ readonly internalType: "uint256";
954
+ readonly name: "deadline";
955
+ readonly type: "uint256";
956
+ }, {
957
+ readonly internalType: "bool";
958
+ readonly name: "wethIsEth";
959
+ readonly type: "bool";
960
+ }, {
961
+ readonly internalType: "bytes";
962
+ readonly name: "userData";
963
+ readonly type: "bytes";
964
+ }];
965
+ readonly internalType: "struct IRouter.SwapSingleTokenHookParams";
966
+ readonly name: "params";
967
+ readonly type: "tuple";
968
+ }];
969
+ readonly name: "querySwapHook";
970
+ readonly outputs: readonly [{
971
+ readonly internalType: "uint256";
972
+ readonly name: "";
973
+ readonly type: "uint256";
974
+ }];
975
+ readonly stateMutability: "nonpayable";
976
+ readonly type: "function";
977
+ }, {
978
+ readonly inputs: readonly [{
979
+ readonly internalType: "address";
980
+ readonly name: "pool";
981
+ readonly type: "address";
982
+ }, {
983
+ readonly internalType: "contract IERC20";
984
+ readonly name: "tokenIn";
985
+ readonly type: "address";
986
+ }, {
987
+ readonly internalType: "contract IERC20";
988
+ readonly name: "tokenOut";
989
+ readonly type: "address";
990
+ }, {
991
+ readonly internalType: "uint256";
992
+ readonly name: "exactAmountIn";
993
+ readonly type: "uint256";
994
+ }, {
995
+ readonly internalType: "bytes";
996
+ readonly name: "userData";
997
+ readonly type: "bytes";
998
+ }];
999
+ readonly name: "querySwapSingleTokenExactIn";
1000
+ readonly outputs: readonly [{
1001
+ readonly internalType: "uint256";
1002
+ readonly name: "amountCalculated";
1003
+ readonly type: "uint256";
1004
+ }];
1005
+ readonly stateMutability: "nonpayable";
1006
+ readonly type: "function";
1007
+ }, {
1008
+ readonly inputs: readonly [{
1009
+ readonly internalType: "address";
1010
+ readonly name: "pool";
1011
+ readonly type: "address";
1012
+ }, {
1013
+ readonly internalType: "contract IERC20";
1014
+ readonly name: "tokenIn";
1015
+ readonly type: "address";
1016
+ }, {
1017
+ readonly internalType: "contract IERC20";
1018
+ readonly name: "tokenOut";
1019
+ readonly type: "address";
1020
+ }, {
1021
+ readonly internalType: "uint256";
1022
+ readonly name: "exactAmountOut";
1023
+ readonly type: "uint256";
1024
+ }, {
1025
+ readonly internalType: "bytes";
1026
+ readonly name: "userData";
1027
+ readonly type: "bytes";
1028
+ }];
1029
+ readonly name: "querySwapSingleTokenExactOut";
1030
+ readonly outputs: readonly [{
1031
+ readonly internalType: "uint256";
1032
+ readonly name: "amountCalculated";
1033
+ readonly type: "uint256";
1034
+ }];
1035
+ readonly stateMutability: "nonpayable";
1036
+ readonly type: "function";
1037
+ }, {
1038
+ readonly inputs: readonly [{
1039
+ readonly internalType: "address";
1040
+ readonly name: "pool";
1041
+ readonly type: "address";
1042
+ }, {
1043
+ readonly internalType: "uint256";
1044
+ readonly name: "maxBptAmountIn";
1045
+ readonly type: "uint256";
1046
+ }, {
1047
+ readonly internalType: "uint256[]";
1048
+ readonly name: "minAmountsOut";
1049
+ readonly type: "uint256[]";
1050
+ }, {
1051
+ readonly internalType: "bool";
1052
+ readonly name: "wethIsEth";
1053
+ readonly type: "bool";
1054
+ }, {
1055
+ readonly internalType: "bytes";
1056
+ readonly name: "userData";
1057
+ readonly type: "bytes";
1058
+ }];
1059
+ readonly name: "removeLiquidityCustom";
1060
+ readonly outputs: readonly [{
1061
+ readonly internalType: "uint256";
1062
+ readonly name: "bptAmountIn";
1063
+ readonly type: "uint256";
1064
+ }, {
1065
+ readonly internalType: "uint256[]";
1066
+ readonly name: "amountsOut";
1067
+ readonly type: "uint256[]";
1068
+ }, {
1069
+ readonly internalType: "bytes";
1070
+ readonly name: "returnData";
1071
+ readonly type: "bytes";
1072
+ }];
1073
+ readonly stateMutability: "nonpayable";
1074
+ readonly type: "function";
1075
+ }, {
1076
+ readonly inputs: readonly [{
1077
+ readonly components: readonly [{
1078
+ readonly internalType: "address";
1079
+ readonly name: "sender";
1080
+ readonly type: "address";
1081
+ }, {
1082
+ readonly internalType: "address";
1083
+ readonly name: "pool";
1084
+ readonly type: "address";
1085
+ }, {
1086
+ readonly internalType: "uint256[]";
1087
+ readonly name: "minAmountsOut";
1088
+ readonly type: "uint256[]";
1089
+ }, {
1090
+ readonly internalType: "uint256";
1091
+ readonly name: "maxBptAmountIn";
1092
+ readonly type: "uint256";
1093
+ }, {
1094
+ readonly internalType: "enum RemoveLiquidityKind";
1095
+ readonly name: "kind";
1096
+ readonly type: "uint8";
1097
+ }, {
1098
+ readonly internalType: "bool";
1099
+ readonly name: "wethIsEth";
1100
+ readonly type: "bool";
1101
+ }, {
1102
+ readonly internalType: "bytes";
1103
+ readonly name: "userData";
1104
+ readonly type: "bytes";
1105
+ }];
1106
+ readonly internalType: "struct IRouterCommon.RemoveLiquidityHookParams";
1107
+ readonly name: "params";
1108
+ readonly type: "tuple";
1109
+ }];
1110
+ readonly name: "removeLiquidityHook";
1111
+ readonly outputs: readonly [{
1112
+ readonly internalType: "uint256";
1113
+ readonly name: "bptAmountIn";
1114
+ readonly type: "uint256";
1115
+ }, {
1116
+ readonly internalType: "uint256[]";
1117
+ readonly name: "amountsOut";
1118
+ readonly type: "uint256[]";
1119
+ }, {
1120
+ readonly internalType: "bytes";
1121
+ readonly name: "returnData";
1122
+ readonly type: "bytes";
1123
+ }];
1124
+ readonly stateMutability: "nonpayable";
1125
+ readonly type: "function";
1126
+ }, {
1127
+ readonly inputs: readonly [{
1128
+ readonly internalType: "address";
1129
+ readonly name: "pool";
1130
+ readonly type: "address";
1131
+ }, {
1132
+ readonly internalType: "uint256";
1133
+ readonly name: "exactBptAmountIn";
1134
+ readonly type: "uint256";
1135
+ }, {
1136
+ readonly internalType: "uint256[]";
1137
+ readonly name: "minAmountsOut";
1138
+ readonly type: "uint256[]";
1139
+ }, {
1140
+ readonly internalType: "bool";
1141
+ readonly name: "wethIsEth";
1142
+ readonly type: "bool";
1143
+ }, {
1144
+ readonly internalType: "bytes";
1145
+ readonly name: "userData";
1146
+ readonly type: "bytes";
1147
+ }];
1148
+ readonly name: "removeLiquidityProportional";
1149
+ readonly outputs: readonly [{
1150
+ readonly internalType: "uint256[]";
1151
+ readonly name: "amountsOut";
1152
+ readonly type: "uint256[]";
1153
+ }];
1154
+ readonly stateMutability: "payable";
1155
+ readonly type: "function";
1156
+ }, {
1157
+ readonly inputs: readonly [{
1158
+ readonly internalType: "address";
1159
+ readonly name: "pool";
1160
+ readonly type: "address";
1161
+ }, {
1162
+ readonly internalType: "uint256";
1163
+ readonly name: "exactBptAmountIn";
1164
+ readonly type: "uint256";
1165
+ }];
1166
+ readonly name: "removeLiquidityRecovery";
1167
+ readonly outputs: readonly [{
1168
+ readonly internalType: "uint256[]";
1169
+ readonly name: "amountsOut";
1170
+ readonly type: "uint256[]";
1171
+ }];
1172
+ readonly stateMutability: "nonpayable";
1173
+ readonly type: "function";
1174
+ }, {
1175
+ readonly inputs: readonly [{
1176
+ readonly internalType: "address";
1177
+ readonly name: "pool";
1178
+ readonly type: "address";
1179
+ }, {
1180
+ readonly internalType: "address";
1181
+ readonly name: "sender";
1182
+ readonly type: "address";
1183
+ }, {
1184
+ readonly internalType: "uint256";
1185
+ readonly name: "exactBptAmountIn";
1186
+ readonly type: "uint256";
1187
+ }];
1188
+ readonly name: "removeLiquidityRecoveryHook";
1189
+ readonly outputs: readonly [{
1190
+ readonly internalType: "uint256[]";
1191
+ readonly name: "amountsOut";
1192
+ readonly type: "uint256[]";
1193
+ }];
1194
+ readonly stateMutability: "nonpayable";
1195
+ readonly type: "function";
1196
+ }, {
1197
+ readonly inputs: readonly [{
1198
+ readonly internalType: "address";
1199
+ readonly name: "pool";
1200
+ readonly type: "address";
1201
+ }, {
1202
+ readonly internalType: "uint256";
1203
+ readonly name: "exactBptAmountIn";
1204
+ readonly type: "uint256";
1205
+ }, {
1206
+ readonly internalType: "contract IERC20";
1207
+ readonly name: "tokenOut";
1208
+ readonly type: "address";
1209
+ }, {
1210
+ readonly internalType: "uint256";
1211
+ readonly name: "minAmountOut";
1212
+ readonly type: "uint256";
1213
+ }, {
1214
+ readonly internalType: "bool";
1215
+ readonly name: "wethIsEth";
1216
+ readonly type: "bool";
1217
+ }, {
1218
+ readonly internalType: "bytes";
1219
+ readonly name: "userData";
1220
+ readonly type: "bytes";
1221
+ }];
1222
+ readonly name: "removeLiquiditySingleTokenExactIn";
1223
+ readonly outputs: readonly [{
1224
+ readonly internalType: "uint256";
1225
+ readonly name: "amountOut";
1226
+ readonly type: "uint256";
1227
+ }];
1228
+ readonly stateMutability: "payable";
1229
+ readonly type: "function";
1230
+ }, {
1231
+ readonly inputs: readonly [{
1232
+ readonly internalType: "address";
1233
+ readonly name: "pool";
1234
+ readonly type: "address";
1235
+ }, {
1236
+ readonly internalType: "uint256";
1237
+ readonly name: "maxBptAmountIn";
1238
+ readonly type: "uint256";
1239
+ }, {
1240
+ readonly internalType: "contract IERC20";
1241
+ readonly name: "tokenOut";
1242
+ readonly type: "address";
1243
+ }, {
1244
+ readonly internalType: "uint256";
1245
+ readonly name: "exactAmountOut";
1246
+ readonly type: "uint256";
1247
+ }, {
1248
+ readonly internalType: "bool";
1249
+ readonly name: "wethIsEth";
1250
+ readonly type: "bool";
1251
+ }, {
1252
+ readonly internalType: "bytes";
1253
+ readonly name: "userData";
1254
+ readonly type: "bytes";
1255
+ }];
1256
+ readonly name: "removeLiquiditySingleTokenExactOut";
1257
+ readonly outputs: readonly [{
1258
+ readonly internalType: "uint256";
1259
+ readonly name: "bptAmountIn";
1260
+ readonly type: "uint256";
1261
+ }];
1262
+ readonly stateMutability: "payable";
1263
+ readonly type: "function";
1264
+ }, {
1265
+ readonly inputs: readonly [{
1266
+ readonly internalType: "address";
1267
+ readonly name: "pool";
1268
+ readonly type: "address";
1269
+ }, {
1270
+ readonly internalType: "contract IERC20";
1271
+ readonly name: "tokenIn";
1272
+ readonly type: "address";
1273
+ }, {
1274
+ readonly internalType: "contract IERC20";
1275
+ readonly name: "tokenOut";
1276
+ readonly type: "address";
1277
+ }, {
1278
+ readonly internalType: "uint256";
1279
+ readonly name: "exactAmountIn";
1280
+ readonly type: "uint256";
1281
+ }, {
1282
+ readonly internalType: "uint256";
1283
+ readonly name: "minAmountOut";
1284
+ readonly type: "uint256";
1285
+ }, {
1286
+ readonly internalType: "uint256";
1287
+ readonly name: "deadline";
1288
+ readonly type: "uint256";
1289
+ }, {
1290
+ readonly internalType: "bool";
1291
+ readonly name: "wethIsEth";
1292
+ readonly type: "bool";
1293
+ }, {
1294
+ readonly internalType: "bytes";
1295
+ readonly name: "userData";
1296
+ readonly type: "bytes";
1297
+ }];
1298
+ readonly name: "swapSingleTokenExactIn";
1299
+ readonly outputs: readonly [{
1300
+ readonly internalType: "uint256";
1301
+ readonly name: "";
1302
+ readonly type: "uint256";
1303
+ }];
1304
+ readonly stateMutability: "payable";
1305
+ readonly type: "function";
1306
+ }, {
1307
+ readonly inputs: readonly [{
1308
+ readonly internalType: "address";
1309
+ readonly name: "pool";
1310
+ readonly type: "address";
1311
+ }, {
1312
+ readonly internalType: "contract IERC20";
1313
+ readonly name: "tokenIn";
1314
+ readonly type: "address";
1315
+ }, {
1316
+ readonly internalType: "contract IERC20";
1317
+ readonly name: "tokenOut";
1318
+ readonly type: "address";
1319
+ }, {
1320
+ readonly internalType: "uint256";
1321
+ readonly name: "exactAmountOut";
1322
+ readonly type: "uint256";
1323
+ }, {
1324
+ readonly internalType: "uint256";
1325
+ readonly name: "maxAmountIn";
1326
+ readonly type: "uint256";
1327
+ }, {
1328
+ readonly internalType: "uint256";
1329
+ readonly name: "deadline";
1330
+ readonly type: "uint256";
1331
+ }, {
1332
+ readonly internalType: "bool";
1333
+ readonly name: "wethIsEth";
1334
+ readonly type: "bool";
1335
+ }, {
1336
+ readonly internalType: "bytes";
1337
+ readonly name: "userData";
1338
+ readonly type: "bytes";
1339
+ }];
1340
+ readonly name: "swapSingleTokenExactOut";
1341
+ readonly outputs: readonly [{
1342
+ readonly internalType: "uint256";
1343
+ readonly name: "";
1344
+ readonly type: "uint256";
1345
+ }];
1346
+ readonly stateMutability: "payable";
1347
+ readonly type: "function";
1348
+ }, {
1349
+ readonly inputs: readonly [{
1350
+ readonly components: readonly [{
1351
+ readonly internalType: "address";
1352
+ readonly name: "sender";
1353
+ readonly type: "address";
1354
+ }, {
1355
+ readonly internalType: "enum SwapKind";
1356
+ readonly name: "kind";
1357
+ readonly type: "uint8";
1358
+ }, {
1359
+ readonly internalType: "address";
1360
+ readonly name: "pool";
1361
+ readonly type: "address";
1362
+ }, {
1363
+ readonly internalType: "contract IERC20";
1364
+ readonly name: "tokenIn";
1365
+ readonly type: "address";
1366
+ }, {
1367
+ readonly internalType: "contract IERC20";
1368
+ readonly name: "tokenOut";
1369
+ readonly type: "address";
1370
+ }, {
1371
+ readonly internalType: "uint256";
1372
+ readonly name: "amountGiven";
1373
+ readonly type: "uint256";
1374
+ }, {
1375
+ readonly internalType: "uint256";
1376
+ readonly name: "limit";
1377
+ readonly type: "uint256";
1378
+ }, {
1379
+ readonly internalType: "uint256";
1380
+ readonly name: "deadline";
1381
+ readonly type: "uint256";
1382
+ }, {
1383
+ readonly internalType: "bool";
1384
+ readonly name: "wethIsEth";
1385
+ readonly type: "bool";
1386
+ }, {
1387
+ readonly internalType: "bytes";
1388
+ readonly name: "userData";
1389
+ readonly type: "bytes";
1390
+ }];
1391
+ readonly internalType: "struct IRouter.SwapSingleTokenHookParams";
1392
+ readonly name: "params";
1393
+ readonly type: "tuple";
1394
+ }];
1395
+ readonly name: "swapSingleTokenHook";
1396
+ readonly outputs: readonly [{
1397
+ readonly internalType: "uint256";
1398
+ readonly name: "";
1399
+ readonly type: "uint256";
1400
+ }];
1401
+ readonly stateMutability: "nonpayable";
1402
+ readonly type: "function";
1403
+ }, {
1404
+ readonly stateMutability: "payable";
1405
+ readonly type: "receive";
1406
+ }];