@paraswap/dex-lib 4.1.7-pub-sub → 4.1.8

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 (360) hide show
  1. package/.idea/codeStyles/Project.xml +59 -0
  2. package/.idea/codeStyles/codeStyleConfig.xml +5 -0
  3. package/.idea/inspectionProfiles/Project_Default.xml +6 -0
  4. package/.idea/modules.xml +8 -0
  5. package/.idea/paraswap-dex-lib.iml +12 -0
  6. package/.idea/vcs.xml +6 -0
  7. package/build/dex/angle-staked-stable/angle-staked-stable.js +2 -1
  8. package/build/dex/angle-staked-stable/angle-staked-stable.js.map +1 -1
  9. package/build/dex/angle-transmuter/angle-transmuter.js.map +1 -1
  10. package/build/dex/balancer-v1/config.js +2 -1
  11. package/build/dex/balancer-v1/config.js.map +1 -1
  12. package/build/dex/generic-rfq/generic-rfq.js +2 -1
  13. package/build/dex/generic-rfq/generic-rfq.js.map +1 -1
  14. package/build/dex/generic-rfq/rate-fetcher.d.ts +1 -4
  15. package/build/dex/generic-rfq/rate-fetcher.js +20 -65
  16. package/build/dex/generic-rfq/rate-fetcher.js.map +1 -1
  17. package/build/dex/weth/weth.js +2 -1
  18. package/build/dex/weth/weth.js.map +1 -1
  19. package/build/dex/zerox/index.d.ts +1 -1
  20. package/build/dex/zerox/index.js.map +1 -1
  21. package/build/lib/pub-sub.d.ts +0 -17
  22. package/build/lib/pub-sub.js +4 -84
  23. package/build/lib/pub-sub.js.map +1 -1
  24. package/package.json +1 -1
  25. package/scripts/get-uniswap-v3-dexes.ts +64 -0
  26. package/src/abi/balancer-v3/directionalFeeHook.json +677 -677
  27. package/src/abi/balancer-v3/stableSurgeHook.json +975 -975
  28. package/src/dex/aave-gsm/aave-gsm-gas-estimation.test.ts +32 -0
  29. package/src/dex/aave-v2/aave-v2-gas-estimation.test.ts +28 -0
  30. package/src/dex/aave-v3/aave-v3-gas-estimation.test.ts +66 -0
  31. package/src/dex/aave-v3-stata/aave-v3-stata-gas-estimation.test.ts +41 -0
  32. package/src/dex/aave-v3-stata-v2/aave-v3-stata-v2-gas-estimation.test.ts +41 -0
  33. package/src/dex/angle-staked-stable/angle-staked-stable-gas-estimation.test.ts +29 -0
  34. package/src/dex/angle-staked-stable/angle-staked-stable.ts +2 -1
  35. package/src/dex/angle-transmuter/angle-transmuter-gas-estimation.test.ts +41 -0
  36. package/src/dex/angle-transmuter/angle-transmuter.ts +0 -1
  37. package/src/dex/balancer-v1/balancer-v1-gas-estimation.test.ts +29 -0
  38. package/src/dex/balancer-v1/config.ts +2 -1
  39. package/src/dex/balancer-v2/balancer-v2-gas-estimation.test.ts +98 -0
  40. package/src/dex/balancer-v3/balancer-v3-gas-estimation.test.ts +30 -0
  41. package/src/dex/bancor/bancor-gas-estimation.test.ts +30 -0
  42. package/src/dex/bebop/bebop-gas-estimation.test.ts +30 -0
  43. package/src/dex/concentrator-arusd/concentrator-arusd-gas-estimation.test.ts +29 -0
  44. package/src/dex/curve-v1/curve-v1-gas-estimation.test.ts +29 -0
  45. package/src/dex/curve-v2/curve-v2-gas-estimation.test.ts +29 -0
  46. package/src/dex/fluid-dex/fluid-dex-gas-estimation.test.ts +29 -0
  47. package/src/dex/fx-protocol-rusd/fx-protocol-rusd-gas-estimation.test.ts +29 -0
  48. package/src/dex/generic-rfq/generic-rfq.ts +6 -1
  49. package/src/dex/generic-rfq/rate-fetcher.ts +47 -112
  50. package/src/dex/hashflow/hashflow-gas-estimation.test.ts +30 -0
  51. package/src/dex/idle-dao/idle-dao--gas-estimation.test.ts +30 -0
  52. package/src/dex/lido/lido-gas-estimation.test.ts +29 -0
  53. package/src/dex/lite-psm/lite-psm-gas-estimation.test.ts +34 -0
  54. package/src/dex/maker-psm/maker-psm-gas-estimation.test.ts +34 -0
  55. package/src/dex/maverick-v1/maverick-v1-gas-estimation.test.ts +29 -0
  56. package/src/dex/maverick-v2/maverick-v2-gas-estimation.test.ts +29 -0
  57. package/src/dex/pancakeswap-v3/pancakeswap-v3-gas-estimation.test.ts +29 -0
  58. package/src/dex/polygon-migrator/polygon-migrator-gas-estimation.test.ts +41 -0
  59. package/src/dex/sky-converter/sky-converter-gas-estimation.test.ts +78 -0
  60. package/src/dex/solidly/solidly-gas-estimation.test.ts +29 -0
  61. package/src/dex/solidly-v3/solidly-v3-gas-estimation.test.ts +29 -0
  62. package/src/dex/spark/spark-gas-estimation.test.ts +29 -0
  63. package/src/dex/stader/stader-gas-estimation.test.ts +29 -0
  64. package/src/dex/stkgho/stkgho-gas-estimation.test.ts +29 -0
  65. package/src/dex/swaap-v2/swaap-v2-estimation.test.ts +29 -0
  66. package/src/dex/swell/swell-estimation.test.ts +29 -0
  67. package/src/dex/trader-joe-v2.1/trader-joe-v2.1-gas-estimation.test.ts +29 -0
  68. package/src/dex/uniswap-v2/uniswap-v2-gas-estimation.test.ts +98 -0
  69. package/src/dex/uniswap-v3/uniswap-v3-gas-estimation.test.ts +98 -0
  70. package/src/dex/usual/usual-gas-estimation.test.ts +54 -0
  71. package/src/dex/usual-pp/usual-pp-gas-estimation.test.ts +29 -0
  72. package/src/dex/weth/weth-gas-estimation.test.ts +42 -0
  73. package/src/dex/weth/weth.ts +3 -1
  74. package/src/dex/wombat/wombat-gas-estimation.test.ts +29 -0
  75. package/src/dex/wsteth/wsteth-gas-estimation.test.ts +41 -0
  76. package/src/dex/wusdm/wusdm-gas-estimation.test.ts +41 -0
  77. package/src/lib/pub-sub.ts +3 -107
  78. package/tests/constants-e2e.ts +8 -0
  79. package/tests/tenderly-simulation-new.test.ts +151 -0
  80. package/tests/tenderly-simulation-new.ts +698 -0
  81. package/tests/token-storage-slots.json +532 -0
  82. package/tests/utils-e2e.ts +137 -1
  83. package/build/abi/AaveV1_lending_pool.json +0 -27
  84. package/build/abi/Aave_GSM.json +0 -751
  85. package/build/abi/Balancer.json +0 -257
  86. package/build/abi/BalancerV2.json +0 -1179
  87. package/build/abi/RamsesV2Pool.abi.json +0 -1554
  88. package/build/abi/RamsesV2Quoter.abi.json +0 -274
  89. package/build/abi/USDM.json +0 -807
  90. package/build/abi/UniswapV2Router.json +0 -397
  91. package/build/abi/angle-transmuter/ChainlinkAccessControlledOffchainAggregator.json +0 -1246
  92. package/build/abi/angle-transmuter/ChainlinkEACAggregatorProxy.json +0 -509
  93. package/build/abi/curve-v1/CurveBUSDv2.abi.json +0 -1356
  94. package/build/abi/curve-v1/CurveTokenV1.json +0 -305
  95. package/build/abi/curve-v1/CurveTokenV2.json +0 -318
  96. package/build/abi/curve-v1/CurveV1StableNg.json +0 -1452
  97. package/build/abi/curve-v1/CurveV2Swap.json +0 -700
  98. package/build/abi/curve-v1/FactoryCryptoRegistry.json +0 -316
  99. package/build/abi/curve-v1/FactoryRegistry.json +0 -508
  100. package/build/abi/curve-v1/StableSwapAave.json +0 -1152
  101. package/build/abi/curve-v1/StableSwapBUSD.json +0 -814
  102. package/build/abi/curve-v1/StableSwapCompound.json +0 -814
  103. package/build/abi/curve-v1/StableSwapIDLE.json +0 -1253
  104. package/build/abi/curve-v1/StableSwapPax.json +0 -865
  105. package/build/abi/curve-v1/StableSwapSnow.json +0 -900
  106. package/build/abi/curve-v1/StableSwapUSDN.json +0 -1004
  107. package/build/abi/curve-v1/StableSwapUSDT.json +0 -814
  108. package/build/abi/curve-v1/StableSwapY.json +0 -814
  109. package/build/abi/inception/inception-ineth-pool.json +0 -1062
  110. package/build/abi/inception/inception-ineth.json +0 -609
  111. package/build/abi/inception/inception-ratio-feed.json +0 -329
  112. package/build/abi/inception/inception-vault.json +0 -991
  113. package/build/abi/kyberdmm/kyber-storage.abi.json +0 -824
  114. package/build/abi/kyberdmm.abi.json +0 -1148
  115. package/build/abi/maverick-v2/MaverickV2Quoter.json +0 -278
  116. package/build/abi/nerve/nerve-metapool.json +0 -790
  117. package/build/abi/platypus/asset.json +0 -490
  118. package/build/abi/platypus/avax-pool.json +0 -820
  119. package/build/abi/platypus/oracle.json +0 -119
  120. package/build/abi/platypus/pool.json +0 -677
  121. package/build/abi/smardex/all/smardex-router.json +0 -648
  122. package/build/abi/smardex/layer-1/smardex-factory.json +0 -242
  123. package/build/abi/smardex/layer-1/smardex-pool.json +0 -506
  124. package/build/abi/smardex/layer-2/smardex-factory.json +0 -185
  125. package/build/abi/smardex/layer-2/smardex-pool.json +0 -578
  126. package/build/abi/swaap-v1/pool.json +0 -1346
  127. package/build/abi/uniswap-v3/UniswapV3Quoter.abi.json +0 -193
  128. package/build/abi/velodrome-slipstream/VelodromeSlipstreamQuoterV2.abi.json +0 -267
  129. package/build/dex/aave-v1/aave-v1.d.ts +0 -34
  130. package/build/dex/aave-v1/aave-v1.js +0 -180
  131. package/build/dex/aave-v1/aave-v1.js.map +0 -1
  132. package/build/dex/aave-v1/config.d.ts +0 -11
  133. package/build/dex/aave-v1/config.js +0 -20
  134. package/build/dex/aave-v1/config.js.map +0 -1
  135. package/build/dex/aave-v1/tokens-mainnet.json +0 -134
  136. package/build/dex/aave-v1/tokens.d.ts +0 -3
  137. package/build/dex/aave-v1/tokens.js +0 -50
  138. package/build/dex/aave-v1/tokens.js.map +0 -1
  139. package/build/dex/aave-v1/types.d.ts +0 -12
  140. package/build/dex/aave-v1/types.js +0 -3
  141. package/build/dex/aave-v1/types.js.map +0 -1
  142. package/build/dex/balancer-v1/balancer-pools.json +0 -33333
  143. package/build/dex/bebop/websocket-fetcher.d.ts +0 -35
  144. package/build/dex/bebop/websocket-fetcher.js +0 -87
  145. package/build/dex/bebop/websocket-fetcher.js.map +0 -1
  146. package/build/dex/idle-dao/idle-dao-pool.d.ts +0 -56
  147. package/build/dex/idle-dao/idle-dao-pool.js +0 -176
  148. package/build/dex/idle-dao/idle-dao-pool.js.map +0 -1
  149. package/build/dex/idle-dao/idle-dao-pooling-pool.d.ts +0 -16
  150. package/build/dex/idle-dao/idle-dao-pooling-pool.js +0 -57
  151. package/build/dex/idle-dao/idle-dao-pooling-pool.js.map +0 -1
  152. package/build/dex/idle-dao/scripts.d.ts +0 -9
  153. package/build/dex/idle-dao/scripts.js +0 -552
  154. package/build/dex/idle-dao/scripts.js.map +0 -1
  155. package/build/dex/inception/config.d.ts +0 -4
  156. package/build/dex/inception/config.js +0 -109
  157. package/build/dex/inception/config.js.map +0 -1
  158. package/build/dex/inception/inception-event-pool.d.ts +0 -16
  159. package/build/dex/inception/inception-event-pool.js +0 -51
  160. package/build/dex/inception/inception-event-pool.js.map +0 -1
  161. package/build/dex/inception/inception-native.d.ts +0 -43
  162. package/build/dex/inception/inception-native.js +0 -131
  163. package/build/dex/inception/inception-native.js.map +0 -1
  164. package/build/dex/inception/inception-pool.d.ts +0 -18
  165. package/build/dex/inception/inception-pool.js +0 -32
  166. package/build/dex/inception/inception-pool.js.map +0 -1
  167. package/build/dex/inception/inception-price-feed.d.ts +0 -19
  168. package/build/dex/inception/inception-price-feed.js +0 -51
  169. package/build/dex/inception/inception-price-feed.js.map +0 -1
  170. package/build/dex/inception/inception.d.ts +0 -43
  171. package/build/dex/inception/inception.js +0 -204
  172. package/build/dex/inception/inception.js.map +0 -1
  173. package/build/dex/inception/tokens.d.ts +0 -9
  174. package/build/dex/inception/tokens.js +0 -28
  175. package/build/dex/inception/tokens.js.map +0 -1
  176. package/build/dex/inception/types.d.ts +0 -22
  177. package/build/dex/inception/types.js +0 -3
  178. package/build/dex/inception/types.js.map +0 -1
  179. package/build/dex/inception/utils.d.ts +0 -6
  180. package/build/dex/inception/utils.js +0 -37
  181. package/build/dex/inception/utils.js.map +0 -1
  182. package/build/dex/platypus/asset.d.ts +0 -14
  183. package/build/dex/platypus/asset.js +0 -97
  184. package/build/dex/platypus/asset.js.map +0 -1
  185. package/build/dex/platypus/config.d.ts +0 -11
  186. package/build/dex/platypus/config.js +0 -69
  187. package/build/dex/platypus/config.js.map +0 -1
  188. package/build/dex/platypus/platypus.d.ts +0 -63
  189. package/build/dex/platypus/platypus.js +0 -473
  190. package/build/dex/platypus/platypus.js.map +0 -1
  191. package/build/dex/platypus/pool-avax.d.ts +0 -8
  192. package/build/dex/platypus/pool-avax.js +0 -54
  193. package/build/dex/platypus/pool-avax.js.map +0 -1
  194. package/build/dex/platypus/pool-base.d.ts +0 -19
  195. package/build/dex/platypus/pool-base.js +0 -86
  196. package/build/dex/platypus/pool-base.js.map +0 -1
  197. package/build/dex/platypus/pool-pure.d.ts +0 -8
  198. package/build/dex/platypus/pool-pure.js +0 -37
  199. package/build/dex/platypus/pool-pure.js.map +0 -1
  200. package/build/dex/platypus/pool-subscriber.d.ts +0 -14
  201. package/build/dex/platypus/pool-subscriber.js +0 -167
  202. package/build/dex/platypus/pool-subscriber.js.map +0 -1
  203. package/build/dex/platypus/pool.d.ts +0 -8
  204. package/build/dex/platypus/pool.js +0 -58
  205. package/build/dex/platypus/pool.js.map +0 -1
  206. package/build/dex/platypus/types.d.ts +0 -92
  207. package/build/dex/platypus/types.js +0 -10
  208. package/build/dex/platypus/types.js.map +0 -1
  209. package/build/dex/quickswap/spiritswap-v3.d.ts +0 -6
  210. package/build/dex/quickswap/spiritswap-v3.js +0 -19
  211. package/build/dex/quickswap/spiritswap-v3.js.map +0 -1
  212. package/build/dex/smardex/config.d.ts +0 -4
  213. package/build/dex/smardex/config.js +0 -64
  214. package/build/dex/smardex/config.js.map +0 -1
  215. package/build/dex/smardex/constants.d.ts +0 -18
  216. package/build/dex/smardex/constants.js +0 -33
  217. package/build/dex/smardex/constants.js.map +0 -1
  218. package/build/dex/smardex/sdk/constants.d.ts +0 -6
  219. package/build/dex/smardex/sdk/constants.js +0 -13
  220. package/build/dex/smardex/sdk/constants.js.map +0 -1
  221. package/build/dex/smardex/sdk/core.d.ts +0 -113
  222. package/build/dex/smardex/sdk/core.js +0 -499
  223. package/build/dex/smardex/sdk/core.js.map +0 -1
  224. package/build/dex/smardex/sdk/errors.d.ts +0 -15
  225. package/build/dex/smardex/sdk/errors.js +0 -22
  226. package/build/dex/smardex/sdk/errors.js.map +0 -1
  227. package/build/dex/smardex/sdk/types.d.ts +0 -62
  228. package/build/dex/smardex/sdk/types.js +0 -3
  229. package/build/dex/smardex/sdk/types.js.map +0 -1
  230. package/build/dex/smardex/sdk/utils.d.ts +0 -44
  231. package/build/dex/smardex/sdk/utils.js +0 -133
  232. package/build/dex/smardex/sdk/utils.js.map +0 -1
  233. package/build/dex/smardex/smardex-event-pool.d.ts +0 -28
  234. package/build/dex/smardex/smardex-event-pool.js +0 -119
  235. package/build/dex/smardex/smardex-event-pool.js.map +0 -1
  236. package/build/dex/smardex/smardex.d.ts +0 -65
  237. package/build/dex/smardex/smardex.js +0 -519
  238. package/build/dex/smardex/smardex.js.map +0 -1
  239. package/build/dex/smardex/types.d.ts +0 -55
  240. package/build/dex/smardex/types.js +0 -3
  241. package/build/dex/smardex/types.js.map +0 -1
  242. package/build/dex/solidly/forks-override/cone.d.ts +0 -22
  243. package/build/dex/solidly/forks-override/cone.js +0 -53
  244. package/build/dex/solidly/forks-override/cone.js.map +0 -1
  245. package/build/dex/solidly/forks-override/solisnek.d.ts +0 -8
  246. package/build/dex/solidly/forks-override/solisnek.js +0 -15
  247. package/build/dex/solidly/forks-override/solisnek.js.map +0 -1
  248. package/build/dex/swaap-v1/config.d.ts +0 -17
  249. package/build/dex/swaap-v1/config.js +0 -56
  250. package/build/dex/swaap-v1/config.js.map +0 -1
  251. package/build/dex/swaap-v1/constants.d.ts +0 -6
  252. package/build/dex/swaap-v1/constants.js +0 -17
  253. package/build/dex/swaap-v1/constants.js.map +0 -1
  254. package/build/dex/swaap-v1/libraries/ChainlinkUtils.d.ts +0 -25
  255. package/build/dex/swaap-v1/libraries/ChainlinkUtils.js +0 -62
  256. package/build/dex/swaap-v1/libraries/ChainlinkUtils.js.map +0 -1
  257. package/build/dex/swaap-v1/libraries/Const.d.ts +0 -18
  258. package/build/dex/swaap-v1/libraries/Const.js +0 -26
  259. package/build/dex/swaap-v1/libraries/Const.js.map +0 -1
  260. package/build/dex/swaap-v1/libraries/GeometricBrownianMotion.d.ts +0 -77
  261. package/build/dex/swaap-v1/libraries/GeometricBrownianMotion.js +0 -316
  262. package/build/dex/swaap-v1/libraries/GeometricBrownianMotion.js.map +0 -1
  263. package/build/dex/swaap-v1/libraries/LogExpMath.d.ts +0 -75
  264. package/build/dex/swaap-v1/libraries/LogExpMath.js +0 -418
  265. package/build/dex/swaap-v1/libraries/LogExpMath.js.map +0 -1
  266. package/build/dex/swaap-v1/libraries/MathMMM.d.ts +0 -185
  267. package/build/dex/swaap-v1/libraries/MathMMM.js +0 -453
  268. package/build/dex/swaap-v1/libraries/MathMMM.js.map +0 -1
  269. package/build/dex/swaap-v1/libraries/Num.d.ts +0 -31
  270. package/build/dex/swaap-v1/libraries/Num.js +0 -167
  271. package/build/dex/swaap-v1/libraries/Num.js.map +0 -1
  272. package/build/dex/swaap-v1/libraries/PoolQuotations.d.ts +0 -23
  273. package/build/dex/swaap-v1/libraries/PoolQuotations.js +0 -131
  274. package/build/dex/swaap-v1/libraries/PoolQuotations.js.map +0 -1
  275. package/build/dex/swaap-v1/libraries/Struct.d.ts +0 -56
  276. package/build/dex/swaap-v1/libraries/Struct.js +0 -3
  277. package/build/dex/swaap-v1/libraries/Struct.js.map +0 -1
  278. package/build/dex/swaap-v1/swaap-v1-pool.d.ts +0 -45
  279. package/build/dex/swaap-v1/swaap-v1-pool.js +0 -656
  280. package/build/dex/swaap-v1/swaap-v1-pool.js.map +0 -1
  281. package/build/dex/swaap-v1/swaap-v1.d.ts +0 -62
  282. package/build/dex/swaap-v1/swaap-v1.js +0 -379
  283. package/build/dex/swaap-v1/swaap-v1.js.map +0 -1
  284. package/build/dex/swaap-v1/types.d.ts +0 -106
  285. package/build/dex/swaap-v1/types.js +0 -9
  286. package/build/dex/swaap-v1/types.js.map +0 -1
  287. package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-balancerv1-curvev1-eth-usdc-gusd.json +0 -16
  288. package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-balancerv1-sushiv3-wbtc-eth-sushi.json +0 -16
  289. package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-curvev1-eth-usdc-gusd.json +0 -16
  290. package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-curvev1-gusd-usdc-eth.json +0 -16
  291. package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-dai-usdc-eth.json +0 -16
  292. package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-eth-usdc-dai.json +0 -16
  293. package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-usdc-eth-wbtc.json +0 -16
  294. package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-usdt-usdc-dai.json +0 -16
  295. package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-balancerv1-eth-usdc.json +0 -9
  296. package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-balancerv1-usdc-eth.json +0 -9
  297. package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-balancerv1-usdc-wbtc.json +0 -9
  298. package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-curvev1-eth-steth.json +0 -9
  299. package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-curvev1-steth-eth.json +0 -9
  300. package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-curvev1-usdc-usdt.json +0 -9
  301. package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-univ3-eth-usdc.json +0 -9
  302. package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-univ3-usdc-eth.json +0 -9
  303. package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-univ3-usdc-usdt.json +0 -9
  304. package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-balancerv1-sushiv3-wbtc-eth-sushi.json +0 -12
  305. package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-sushiv3-curvev1-eth-usdc-gusd.json +0 -7
  306. package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-sushiv3-curvev1-gusd-usdc-eth.json +0 -7
  307. package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-sushiv3-dai-usdc-eth.json +0 -7
  308. package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-sushiv3-eth-usdc-dai.json +0 -7
  309. package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-sushiv3-usdc-eth-wbtc.json +0 -12
  310. package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-simpleSwap-univ3-eth-usdc.json +0 -7
  311. package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-simpleSwap-univ3-usdc-eth.json +0 -7
  312. package/build/executor/fixtures/executor01/routes/price-route-multiswap-balancerv1-curvev1-eth-usdc-gusd.json +0 -78
  313. package/build/executor/fixtures/executor01/routes/price-route-multiswap-balancerv1-sushiv3-wbtc-eth-sushi.json +0 -81
  314. package/build/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-curvev1-eth-usdc-gusd.json +0 -78
  315. package/build/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-curvev1-gusd-usdc-eth.json +0 -78
  316. package/build/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-dai-usdc-eth.json +0 -81
  317. package/build/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-eth-usdc-dai.json +0 -81
  318. package/build/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-usdc-eth-wbtc.json +0 -81
  319. package/build/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-usdt-usdc-dai.json +0 -81
  320. package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-balancerv1-eth-usdc.json +0 -64
  321. package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-balancerv1-usdc-eth.json +0 -85
  322. package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-balancerv1-usdc-wbtc.json +0 -64
  323. package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-curvev1-eth-steth.json +0 -52
  324. package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-curvev1-steth-eth.json +0 -52
  325. package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-curvev1-usdc-usdt.json +0 -52
  326. package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-univ3-eth-usdc.json +0 -55
  327. package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-univ3-usdc-eth.json +0 -55
  328. package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-univ3-usdc-usdt.json +0 -55
  329. package/build/executor/fixtures/executor02/exchange-params/price-route-multiSwap-balancerv1-sushiv3-univ3-bal-eth-sushi.json +0 -23
  330. package/build/executor/fixtures/executor02/exchange-params/price-route-multiSwap-maverickv1-sushiv3-univ3-eth-usdc-mav.json +0 -37
  331. package/build/executor/fixtures/executor02/exchange-params/price-route-multiSwap-univ3-sushiv3-sushi-eth-wbtc.json +0 -23
  332. package/build/executor/fixtures/executor02/exchange-params/price-route-multiSwap-univ3-sushiv3-wbtc-eth-sushi.json +0 -23
  333. package/build/executor/fixtures/executor02/exchange-params/price-route-multiswap-curvev1-univ3-dai-usdc-eth.json +0 -51
  334. package/build/executor/fixtures/executor02/exchange-params/price-route-multiswap-univ3-usdt-dai-eth.json +0 -58
  335. package/build/executor/fixtures/executor02/exchange-params/price-route-simpleSwap-sushiv3-balancerv1-eth-usdc.json +0 -23
  336. package/build/executor/fixtures/executor02/exchange-params/price-route-simpleSwap-sushiv3-balancerv1-usdc-eth.json +0 -23
  337. package/build/executor/fixtures/executor02/exchange-params/price-route-simpleSwap-sushiv3-univ3-eth-sushi.json +0 -9
  338. package/build/executor/fixtures/executor02/exchange-params/price-route-simpleSwap-sushiv3-univ3-sushi-eth.json +0 -16
  339. package/build/executor/fixtures/executor02/exchange-params/price-route-simpleSwap-univ3-curvev1-usdt-dai.json +0 -23
  340. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiSwap-balancerv1-sushiv3-univ3-bal-eth-sushi.json +0 -12
  341. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiSwap-maverickv1-sushiv3-univ3-eth-usdc-mav.json +0 -7
  342. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiSwap-univ3-sushiv3-sushi-eth-wbtc.json +0 -12
  343. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiSwap-univ3-sushiv3-wbtc-eth-sushi.json +0 -12
  344. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiswap-curvev1-univ3-dai-usdc-eth.json +0 -7
  345. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiswap-univ3-usdt-dai-eth.json +0 -7
  346. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-simpleSwap-sushiv3-balancerv1-eth-usdc.json +0 -7
  347. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-simpleSwap-sushiv3-balancerv1-usdc-eth.json +0 -7
  348. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-simpleSwap-sushiv3-univ3-eth-sushi.json +0 -7
  349. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-simpleSwap-sushiv3-univ3-sushi-eth.json +0 -7
  350. package/build/executor/fixtures/executor02/routes/price-route-multiSwap-balancerv1-sushiv3-univ3-bal-eth-sushi.json +0 -130
  351. package/build/executor/fixtures/executor02/routes/price-route-multiSwap-maverickv1-sushiv3-univ3-eth-usdc-mav.json +0 -136
  352. package/build/executor/fixtures/executor02/routes/price-route-multiSwap-univ3-sushiv3-sushi-eth-wbtc.json +0 -100
  353. package/build/executor/fixtures/executor02/routes/price-route-multiSwap-univ3-sushiv3-wbtc-eth-sushi.json +0 -100
  354. package/build/executor/fixtures/executor02/routes/price-route-multiswap-curvev1-univ3-dai-usdc-eth.json +0 -166
  355. package/build/executor/fixtures/executor02/routes/price-route-multiswap-univ3-usdt-dai-eth.json +0 -190
  356. package/build/executor/fixtures/executor02/routes/price-route-simpleSwap-sushiv3-balancerv1-eth-usdc.json +0 -114
  357. package/build/executor/fixtures/executor02/routes/price-route-simpleSwap-sushiv3-balancerv1-usdc-eth.json +0 -114
  358. package/build/executor/fixtures/executor02/routes/price-route-simpleSwap-sushiv3-univ3-eth-sushi.json +0 -55
  359. package/build/executor/fixtures/executor02/routes/price-route-simpleSwap-sushiv3-univ3-sushi-eth.json +0 -73
  360. package/build/executor/fixtures/executor02/routes/price-route-simpleSwap-univ3-curvev1-usdt-dai.json +0 -82
@@ -1,976 +1,976 @@
1
1
  [
2
- {
3
- "inputs": [
4
- {
5
- "internalType": "contract IVault",
6
- "name": "vault",
7
- "type": "address"
8
- },
9
- {
10
- "internalType": "uint256",
11
- "name": "defaultMaxSurgeFeePercentage",
12
- "type": "uint256"
13
- },
14
- {
15
- "internalType": "uint256",
16
- "name": "defaultSurgeThresholdPercentage",
17
- "type": "uint256"
18
- }
19
- ],
20
- "stateMutability": "nonpayable",
21
- "type": "constructor"
22
- },
23
- {
24
- "inputs": [],
25
- "name": "InputLengthMismatch",
26
- "type": "error"
27
- },
28
- {
29
- "inputs": [],
30
- "name": "InvalidPercentage",
31
- "type": "error"
32
- },
33
- {
34
- "inputs": [
35
- {
36
- "internalType": "uint8",
37
- "name": "bits",
38
- "type": "uint8"
39
- },
40
- {
41
- "internalType": "uint256",
42
- "name": "value",
43
- "type": "uint256"
44
- }
45
- ],
46
- "name": "SafeCastOverflowedUintDowncast",
47
- "type": "error"
48
- },
49
- {
50
- "inputs": [
51
- {
52
- "internalType": "address",
53
- "name": "sender",
54
- "type": "address"
55
- }
56
- ],
57
- "name": "SenderIsNotVault",
58
- "type": "error"
59
- },
60
- {
61
- "inputs": [],
62
- "name": "SenderNotAllowed",
63
- "type": "error"
64
- },
65
- {
66
- "anonymous": false,
67
- "inputs": [
68
- {
69
- "indexed": true,
70
- "internalType": "address",
71
- "name": "pool",
72
- "type": "address"
73
- },
74
- {
75
- "indexed": false,
76
- "internalType": "uint256",
77
- "name": "newMaxSurgeFeePercentage",
78
- "type": "uint256"
79
- }
80
- ],
81
- "name": "MaxSurgeFeePercentageChanged",
82
- "type": "event"
83
- },
84
- {
85
- "anonymous": false,
86
- "inputs": [
87
- {
88
- "indexed": true,
89
- "internalType": "address",
90
- "name": "pool",
91
- "type": "address"
92
- },
93
- {
94
- "indexed": true,
95
- "internalType": "address",
96
- "name": "factory",
97
- "type": "address"
98
- }
99
- ],
100
- "name": "StableSurgeHookRegistered",
101
- "type": "event"
102
- },
103
- {
104
- "anonymous": false,
105
- "inputs": [
106
- {
107
- "indexed": true,
108
- "internalType": "address",
109
- "name": "pool",
110
- "type": "address"
111
- },
112
- {
113
- "indexed": false,
114
- "internalType": "uint256",
115
- "name": "newSurgeThresholdPercentage",
116
- "type": "uint256"
117
- }
118
- ],
119
- "name": "ThresholdSurgePercentageChanged",
120
- "type": "event"
121
- },
122
- {
123
- "inputs": [
124
- {
125
- "internalType": "bytes4",
126
- "name": "selector",
127
- "type": "bytes4"
128
- }
129
- ],
130
- "name": "getActionId",
131
- "outputs": [
132
- {
133
- "internalType": "bytes32",
134
- "name": "",
135
- "type": "bytes32"
136
- }
137
- ],
138
- "stateMutability": "view",
139
- "type": "function"
140
- },
141
- {
142
- "inputs": [],
143
- "name": "getAllowedPoolFactory",
144
- "outputs": [
145
- {
146
- "internalType": "address",
147
- "name": "",
148
- "type": "address"
149
- }
150
- ],
151
- "stateMutability": "view",
152
- "type": "function"
153
- },
154
- {
155
- "inputs": [],
156
- "name": "getAuthorizer",
157
- "outputs": [
158
- {
159
- "internalType": "contract IAuthorizer",
160
- "name": "",
161
- "type": "address"
162
- }
163
- ],
164
- "stateMutability": "view",
165
- "type": "function"
166
- },
167
- {
168
- "inputs": [],
169
- "name": "getDefaultMaxSurgeFeePercentage",
170
- "outputs": [
171
- {
172
- "internalType": "uint256",
173
- "name": "",
174
- "type": "uint256"
175
- }
176
- ],
177
- "stateMutability": "view",
178
- "type": "function"
179
- },
180
- {
181
- "inputs": [],
182
- "name": "getDefaultSurgeThresholdPercentage",
183
- "outputs": [
184
- {
185
- "internalType": "uint256",
186
- "name": "",
187
- "type": "uint256"
188
- }
189
- ],
190
- "stateMutability": "view",
191
- "type": "function"
192
- },
193
- {
194
- "inputs": [],
195
- "name": "getHookFlags",
196
- "outputs": [
197
- {
198
- "components": [
199
- {
200
- "internalType": "bool",
201
- "name": "enableHookAdjustedAmounts",
202
- "type": "bool"
203
- },
204
- {
205
- "internalType": "bool",
206
- "name": "shouldCallBeforeInitialize",
207
- "type": "bool"
208
- },
209
- {
210
- "internalType": "bool",
211
- "name": "shouldCallAfterInitialize",
212
- "type": "bool"
213
- },
214
- {
215
- "internalType": "bool",
216
- "name": "shouldCallComputeDynamicSwapFee",
217
- "type": "bool"
218
- },
219
- {
220
- "internalType": "bool",
221
- "name": "shouldCallBeforeSwap",
222
- "type": "bool"
223
- },
224
- {
225
- "internalType": "bool",
226
- "name": "shouldCallAfterSwap",
227
- "type": "bool"
228
- },
229
- {
230
- "internalType": "bool",
231
- "name": "shouldCallBeforeAddLiquidity",
232
- "type": "bool"
233
- },
234
- {
235
- "internalType": "bool",
236
- "name": "shouldCallAfterAddLiquidity",
237
- "type": "bool"
238
- },
239
- {
240
- "internalType": "bool",
241
- "name": "shouldCallBeforeRemoveLiquidity",
242
- "type": "bool"
243
- },
244
- {
245
- "internalType": "bool",
246
- "name": "shouldCallAfterRemoveLiquidity",
247
- "type": "bool"
248
- }
249
- ],
250
- "internalType": "struct HookFlags",
251
- "name": "hookFlags",
252
- "type": "tuple"
253
- }
254
- ],
255
- "stateMutability": "pure",
256
- "type": "function"
257
- },
258
- {
259
- "inputs": [
260
- {
261
- "internalType": "address",
262
- "name": "pool",
263
- "type": "address"
264
- }
265
- ],
266
- "name": "getMaxSurgeFeePercentage",
267
- "outputs": [
268
- {
269
- "internalType": "uint256",
270
- "name": "",
271
- "type": "uint256"
272
- }
273
- ],
274
- "stateMutability": "view",
275
- "type": "function"
276
- },
277
- {
278
- "inputs": [
279
- {
280
- "components": [
281
- {
282
- "internalType": "enum SwapKind",
283
- "name": "kind",
284
- "type": "uint8"
285
- },
286
- {
287
- "internalType": "uint256",
288
- "name": "amountGivenScaled18",
289
- "type": "uint256"
290
- },
291
- {
292
- "internalType": "uint256[]",
293
- "name": "balancesScaled18",
294
- "type": "uint256[]"
295
- },
296
- {
297
- "internalType": "uint256",
298
- "name": "indexIn",
299
- "type": "uint256"
300
- },
301
- {
302
- "internalType": "uint256",
303
- "name": "indexOut",
304
- "type": "uint256"
305
- },
306
- {
307
- "internalType": "address",
308
- "name": "router",
309
- "type": "address"
310
- },
311
- {
312
- "internalType": "bytes",
313
- "name": "userData",
314
- "type": "bytes"
315
- }
316
- ],
317
- "internalType": "struct PoolSwapParams",
318
- "name": "params",
319
- "type": "tuple"
320
- },
321
- {
322
- "internalType": "address",
323
- "name": "pool",
324
- "type": "address"
325
- },
326
- {
327
- "internalType": "uint256",
328
- "name": "staticFeePercentage",
329
- "type": "uint256"
330
- }
331
- ],
332
- "name": "getSurgeFeePercentage",
333
- "outputs": [
334
- {
335
- "internalType": "uint256",
336
- "name": "",
337
- "type": "uint256"
338
- }
339
- ],
340
- "stateMutability": "view",
341
- "type": "function"
342
- },
343
- {
344
- "inputs": [
345
- {
346
- "internalType": "address",
347
- "name": "pool",
348
- "type": "address"
349
- }
350
- ],
351
- "name": "getSurgeThresholdPercentage",
352
- "outputs": [
353
- {
354
- "internalType": "uint256",
355
- "name": "",
356
- "type": "uint256"
357
- }
358
- ],
359
- "stateMutability": "view",
360
- "type": "function"
361
- },
362
- {
363
- "inputs": [],
364
- "name": "getVault",
365
- "outputs": [
366
- {
367
- "internalType": "contract IVault",
368
- "name": "",
369
- "type": "address"
370
- }
371
- ],
372
- "stateMutability": "view",
373
- "type": "function"
374
- },
375
- {
376
- "inputs": [
377
- {
378
- "internalType": "address",
379
- "name": "",
380
- "type": "address"
381
- },
382
- {
383
- "internalType": "address",
384
- "name": "",
385
- "type": "address"
386
- },
387
- {
388
- "internalType": "enum AddLiquidityKind",
389
- "name": "",
390
- "type": "uint8"
391
- },
392
- {
393
- "internalType": "uint256[]",
394
- "name": "",
395
- "type": "uint256[]"
396
- },
397
- {
398
- "internalType": "uint256[]",
399
- "name": "amountsInRaw",
400
- "type": "uint256[]"
401
- },
402
- {
403
- "internalType": "uint256",
404
- "name": "",
405
- "type": "uint256"
406
- },
407
- {
408
- "internalType": "uint256[]",
409
- "name": "",
410
- "type": "uint256[]"
411
- },
412
- {
413
- "internalType": "bytes",
414
- "name": "",
415
- "type": "bytes"
416
- }
417
- ],
418
- "name": "onAfterAddLiquidity",
419
- "outputs": [
420
- {
421
- "internalType": "bool",
422
- "name": "",
423
- "type": "bool"
424
- },
425
- {
426
- "internalType": "uint256[]",
427
- "name": "",
428
- "type": "uint256[]"
429
- }
430
- ],
431
- "stateMutability": "nonpayable",
432
- "type": "function"
433
- },
434
- {
435
- "inputs": [
436
- {
437
- "internalType": "uint256[]",
438
- "name": "",
439
- "type": "uint256[]"
440
- },
441
- {
442
- "internalType": "uint256",
443
- "name": "",
444
- "type": "uint256"
445
- },
446
- {
447
- "internalType": "bytes",
448
- "name": "",
449
- "type": "bytes"
450
- }
451
- ],
452
- "name": "onAfterInitialize",
453
- "outputs": [
454
- {
455
- "internalType": "bool",
456
- "name": "",
457
- "type": "bool"
458
- }
459
- ],
460
- "stateMutability": "nonpayable",
461
- "type": "function"
462
- },
463
- {
464
- "inputs": [
465
- {
466
- "internalType": "address",
467
- "name": "",
468
- "type": "address"
469
- },
470
- {
471
- "internalType": "address",
472
- "name": "",
473
- "type": "address"
474
- },
475
- {
476
- "internalType": "enum RemoveLiquidityKind",
477
- "name": "",
478
- "type": "uint8"
479
- },
480
- {
481
- "internalType": "uint256",
482
- "name": "",
483
- "type": "uint256"
484
- },
485
- {
486
- "internalType": "uint256[]",
487
- "name": "",
488
- "type": "uint256[]"
489
- },
490
- {
491
- "internalType": "uint256[]",
492
- "name": "amountsOutRaw",
493
- "type": "uint256[]"
494
- },
495
- {
496
- "internalType": "uint256[]",
497
- "name": "",
498
- "type": "uint256[]"
499
- },
500
- {
501
- "internalType": "bytes",
502
- "name": "",
503
- "type": "bytes"
504
- }
505
- ],
506
- "name": "onAfterRemoveLiquidity",
507
- "outputs": [
508
- {
509
- "internalType": "bool",
510
- "name": "",
511
- "type": "bool"
512
- },
513
- {
514
- "internalType": "uint256[]",
515
- "name": "",
516
- "type": "uint256[]"
517
- }
518
- ],
519
- "stateMutability": "nonpayable",
520
- "type": "function"
521
- },
522
- {
523
- "inputs": [
524
- {
525
- "components": [
526
- {
527
- "internalType": "enum SwapKind",
528
- "name": "kind",
529
- "type": "uint8"
530
- },
531
- {
532
- "internalType": "contract IERC20",
533
- "name": "tokenIn",
534
- "type": "address"
535
- },
536
- {
537
- "internalType": "contract IERC20",
538
- "name": "tokenOut",
539
- "type": "address"
540
- },
541
- {
542
- "internalType": "uint256",
543
- "name": "amountInScaled18",
544
- "type": "uint256"
545
- },
546
- {
547
- "internalType": "uint256",
548
- "name": "amountOutScaled18",
549
- "type": "uint256"
550
- },
551
- {
552
- "internalType": "uint256",
553
- "name": "tokenInBalanceScaled18",
554
- "type": "uint256"
555
- },
556
- {
557
- "internalType": "uint256",
558
- "name": "tokenOutBalanceScaled18",
559
- "type": "uint256"
560
- },
561
- {
562
- "internalType": "uint256",
563
- "name": "amountCalculatedScaled18",
564
- "type": "uint256"
565
- },
566
- {
567
- "internalType": "uint256",
568
- "name": "amountCalculatedRaw",
569
- "type": "uint256"
570
- },
571
- {
572
- "internalType": "address",
573
- "name": "router",
574
- "type": "address"
575
- },
576
- {
577
- "internalType": "address",
578
- "name": "pool",
579
- "type": "address"
580
- },
581
- {
582
- "internalType": "bytes",
583
- "name": "userData",
584
- "type": "bytes"
585
- }
586
- ],
587
- "internalType": "struct AfterSwapParams",
588
- "name": "",
589
- "type": "tuple"
590
- }
591
- ],
592
- "name": "onAfterSwap",
593
- "outputs": [
594
- {
595
- "internalType": "bool",
596
- "name": "",
597
- "type": "bool"
598
- },
599
- {
600
- "internalType": "uint256",
601
- "name": "",
602
- "type": "uint256"
603
- }
604
- ],
605
- "stateMutability": "nonpayable",
606
- "type": "function"
607
- },
608
- {
609
- "inputs": [
610
- {
611
- "internalType": "address",
612
- "name": "",
613
- "type": "address"
614
- },
615
- {
616
- "internalType": "address",
617
- "name": "",
618
- "type": "address"
619
- },
620
- {
621
- "internalType": "enum AddLiquidityKind",
622
- "name": "",
623
- "type": "uint8"
624
- },
625
- {
626
- "internalType": "uint256[]",
627
- "name": "",
628
- "type": "uint256[]"
629
- },
630
- {
631
- "internalType": "uint256",
632
- "name": "",
633
- "type": "uint256"
634
- },
635
- {
636
- "internalType": "uint256[]",
637
- "name": "",
638
- "type": "uint256[]"
639
- },
640
- {
641
- "internalType": "bytes",
642
- "name": "",
643
- "type": "bytes"
644
- }
645
- ],
646
- "name": "onBeforeAddLiquidity",
647
- "outputs": [
648
- {
649
- "internalType": "bool",
650
- "name": "",
651
- "type": "bool"
652
- }
653
- ],
654
- "stateMutability": "nonpayable",
655
- "type": "function"
656
- },
657
- {
658
- "inputs": [
659
- {
660
- "internalType": "uint256[]",
661
- "name": "",
662
- "type": "uint256[]"
663
- },
664
- {
665
- "internalType": "bytes",
666
- "name": "",
667
- "type": "bytes"
668
- }
669
- ],
670
- "name": "onBeforeInitialize",
671
- "outputs": [
672
- {
673
- "internalType": "bool",
674
- "name": "",
675
- "type": "bool"
676
- }
677
- ],
678
- "stateMutability": "nonpayable",
679
- "type": "function"
680
- },
681
- {
682
- "inputs": [
683
- {
684
- "internalType": "address",
685
- "name": "",
686
- "type": "address"
687
- },
688
- {
689
- "internalType": "address",
690
- "name": "",
691
- "type": "address"
692
- },
693
- {
694
- "internalType": "enum RemoveLiquidityKind",
695
- "name": "",
696
- "type": "uint8"
697
- },
698
- {
699
- "internalType": "uint256",
700
- "name": "",
701
- "type": "uint256"
702
- },
703
- {
704
- "internalType": "uint256[]",
705
- "name": "",
706
- "type": "uint256[]"
707
- },
708
- {
709
- "internalType": "uint256[]",
710
- "name": "",
711
- "type": "uint256[]"
712
- },
713
- {
714
- "internalType": "bytes",
715
- "name": "",
716
- "type": "bytes"
717
- }
718
- ],
719
- "name": "onBeforeRemoveLiquidity",
720
- "outputs": [
721
- {
722
- "internalType": "bool",
723
- "name": "",
724
- "type": "bool"
725
- }
726
- ],
727
- "stateMutability": "nonpayable",
728
- "type": "function"
729
- },
730
- {
731
- "inputs": [
732
- {
733
- "components": [
734
- {
735
- "internalType": "enum SwapKind",
736
- "name": "kind",
737
- "type": "uint8"
738
- },
739
- {
740
- "internalType": "uint256",
741
- "name": "amountGivenScaled18",
742
- "type": "uint256"
743
- },
744
- {
745
- "internalType": "uint256[]",
746
- "name": "balancesScaled18",
747
- "type": "uint256[]"
748
- },
749
- {
750
- "internalType": "uint256",
751
- "name": "indexIn",
752
- "type": "uint256"
753
- },
754
- {
755
- "internalType": "uint256",
756
- "name": "indexOut",
757
- "type": "uint256"
758
- },
759
- {
760
- "internalType": "address",
761
- "name": "router",
762
- "type": "address"
763
- },
764
- {
765
- "internalType": "bytes",
766
- "name": "userData",
767
- "type": "bytes"
768
- }
769
- ],
770
- "internalType": "struct PoolSwapParams",
771
- "name": "",
772
- "type": "tuple"
773
- },
774
- {
775
- "internalType": "address",
776
- "name": "",
777
- "type": "address"
778
- }
779
- ],
780
- "name": "onBeforeSwap",
781
- "outputs": [
782
- {
783
- "internalType": "bool",
784
- "name": "",
785
- "type": "bool"
786
- }
787
- ],
788
- "stateMutability": "nonpayable",
789
- "type": "function"
790
- },
791
- {
792
- "inputs": [
793
- {
794
- "components": [
795
- {
796
- "internalType": "enum SwapKind",
797
- "name": "kind",
798
- "type": "uint8"
799
- },
800
- {
801
- "internalType": "uint256",
802
- "name": "amountGivenScaled18",
803
- "type": "uint256"
804
- },
805
- {
806
- "internalType": "uint256[]",
807
- "name": "balancesScaled18",
808
- "type": "uint256[]"
809
- },
810
- {
811
- "internalType": "uint256",
812
- "name": "indexIn",
813
- "type": "uint256"
814
- },
815
- {
816
- "internalType": "uint256",
817
- "name": "indexOut",
818
- "type": "uint256"
819
- },
820
- {
821
- "internalType": "address",
822
- "name": "router",
823
- "type": "address"
824
- },
825
- {
826
- "internalType": "bytes",
827
- "name": "userData",
828
- "type": "bytes"
829
- }
830
- ],
831
- "internalType": "struct PoolSwapParams",
832
- "name": "params",
833
- "type": "tuple"
834
- },
835
- {
836
- "internalType": "address",
837
- "name": "pool",
838
- "type": "address"
839
- },
840
- {
841
- "internalType": "uint256",
842
- "name": "staticSwapFeePercentage",
843
- "type": "uint256"
844
- }
845
- ],
846
- "name": "onComputeDynamicSwapFeePercentage",
847
- "outputs": [
848
- {
849
- "internalType": "bool",
850
- "name": "",
851
- "type": "bool"
852
- },
853
- {
854
- "internalType": "uint256",
855
- "name": "",
856
- "type": "uint256"
857
- }
858
- ],
859
- "stateMutability": "view",
860
- "type": "function"
861
- },
862
- {
863
- "inputs": [
864
- {
865
- "internalType": "address",
866
- "name": "factory",
867
- "type": "address"
868
- },
869
- {
870
- "internalType": "address",
871
- "name": "pool",
872
- "type": "address"
873
- },
874
- {
875
- "components": [
876
- {
877
- "internalType": "contract IERC20",
878
- "name": "token",
879
- "type": "address"
880
- },
881
- {
882
- "internalType": "enum TokenType",
883
- "name": "tokenType",
884
- "type": "uint8"
885
- },
886
- {
887
- "internalType": "contract IRateProvider",
888
- "name": "rateProvider",
889
- "type": "address"
890
- },
891
- {
892
- "internalType": "bool",
893
- "name": "paysYieldFees",
894
- "type": "bool"
895
- }
896
- ],
897
- "internalType": "struct TokenConfig[]",
898
- "name": "",
899
- "type": "tuple[]"
900
- },
901
- {
902
- "components": [
903
- {
904
- "internalType": "bool",
905
- "name": "disableUnbalancedLiquidity",
906
- "type": "bool"
907
- },
908
- {
909
- "internalType": "bool",
910
- "name": "enableAddLiquidityCustom",
911
- "type": "bool"
912
- },
913
- {
914
- "internalType": "bool",
915
- "name": "enableRemoveLiquidityCustom",
916
- "type": "bool"
917
- },
918
- {
919
- "internalType": "bool",
920
- "name": "enableDonation",
921
- "type": "bool"
922
- }
923
- ],
924
- "internalType": "struct LiquidityManagement",
925
- "name": "",
926
- "type": "tuple"
927
- }
928
- ],
929
- "name": "onRegister",
930
- "outputs": [
931
- {
932
- "internalType": "bool",
933
- "name": "",
934
- "type": "bool"
935
- }
936
- ],
937
- "stateMutability": "nonpayable",
938
- "type": "function"
939
- },
940
- {
941
- "inputs": [
942
- {
943
- "internalType": "address",
944
- "name": "pool",
945
- "type": "address"
946
- },
947
- {
948
- "internalType": "uint256",
949
- "name": "newMaxSurgeSurgeFeePercentage",
950
- "type": "uint256"
951
- }
952
- ],
953
- "name": "setMaxSurgeFeePercentage",
954
- "outputs": [],
955
- "stateMutability": "nonpayable",
956
- "type": "function"
957
- },
958
- {
959
- "inputs": [
960
- {
961
- "internalType": "address",
962
- "name": "pool",
963
- "type": "address"
964
- },
965
- {
966
- "internalType": "uint256",
967
- "name": "newSurgeThresholdPercentage",
968
- "type": "uint256"
969
- }
970
- ],
971
- "name": "setSurgeThresholdPercentage",
972
- "outputs": [],
973
- "stateMutability": "nonpayable",
974
- "type": "function"
975
- }
976
- ]
2
+ {
3
+ "inputs": [
4
+ {
5
+ "internalType": "contract IVault",
6
+ "name": "vault",
7
+ "type": "address"
8
+ },
9
+ {
10
+ "internalType": "uint256",
11
+ "name": "defaultMaxSurgeFeePercentage",
12
+ "type": "uint256"
13
+ },
14
+ {
15
+ "internalType": "uint256",
16
+ "name": "defaultSurgeThresholdPercentage",
17
+ "type": "uint256"
18
+ }
19
+ ],
20
+ "stateMutability": "nonpayable",
21
+ "type": "constructor"
22
+ },
23
+ {
24
+ "inputs": [],
25
+ "name": "InputLengthMismatch",
26
+ "type": "error"
27
+ },
28
+ {
29
+ "inputs": [],
30
+ "name": "InvalidPercentage",
31
+ "type": "error"
32
+ },
33
+ {
34
+ "inputs": [
35
+ {
36
+ "internalType": "uint8",
37
+ "name": "bits",
38
+ "type": "uint8"
39
+ },
40
+ {
41
+ "internalType": "uint256",
42
+ "name": "value",
43
+ "type": "uint256"
44
+ }
45
+ ],
46
+ "name": "SafeCastOverflowedUintDowncast",
47
+ "type": "error"
48
+ },
49
+ {
50
+ "inputs": [
51
+ {
52
+ "internalType": "address",
53
+ "name": "sender",
54
+ "type": "address"
55
+ }
56
+ ],
57
+ "name": "SenderIsNotVault",
58
+ "type": "error"
59
+ },
60
+ {
61
+ "inputs": [],
62
+ "name": "SenderNotAllowed",
63
+ "type": "error"
64
+ },
65
+ {
66
+ "anonymous": false,
67
+ "inputs": [
68
+ {
69
+ "indexed": true,
70
+ "internalType": "address",
71
+ "name": "pool",
72
+ "type": "address"
73
+ },
74
+ {
75
+ "indexed": false,
76
+ "internalType": "uint256",
77
+ "name": "newMaxSurgeFeePercentage",
78
+ "type": "uint256"
79
+ }
80
+ ],
81
+ "name": "MaxSurgeFeePercentageChanged",
82
+ "type": "event"
83
+ },
84
+ {
85
+ "anonymous": false,
86
+ "inputs": [
87
+ {
88
+ "indexed": true,
89
+ "internalType": "address",
90
+ "name": "pool",
91
+ "type": "address"
92
+ },
93
+ {
94
+ "indexed": true,
95
+ "internalType": "address",
96
+ "name": "factory",
97
+ "type": "address"
98
+ }
99
+ ],
100
+ "name": "StableSurgeHookRegistered",
101
+ "type": "event"
102
+ },
103
+ {
104
+ "anonymous": false,
105
+ "inputs": [
106
+ {
107
+ "indexed": true,
108
+ "internalType": "address",
109
+ "name": "pool",
110
+ "type": "address"
111
+ },
112
+ {
113
+ "indexed": false,
114
+ "internalType": "uint256",
115
+ "name": "newSurgeThresholdPercentage",
116
+ "type": "uint256"
117
+ }
118
+ ],
119
+ "name": "ThresholdSurgePercentageChanged",
120
+ "type": "event"
121
+ },
122
+ {
123
+ "inputs": [
124
+ {
125
+ "internalType": "bytes4",
126
+ "name": "selector",
127
+ "type": "bytes4"
128
+ }
129
+ ],
130
+ "name": "getActionId",
131
+ "outputs": [
132
+ {
133
+ "internalType": "bytes32",
134
+ "name": "",
135
+ "type": "bytes32"
136
+ }
137
+ ],
138
+ "stateMutability": "view",
139
+ "type": "function"
140
+ },
141
+ {
142
+ "inputs": [],
143
+ "name": "getAllowedPoolFactory",
144
+ "outputs": [
145
+ {
146
+ "internalType": "address",
147
+ "name": "",
148
+ "type": "address"
149
+ }
150
+ ],
151
+ "stateMutability": "view",
152
+ "type": "function"
153
+ },
154
+ {
155
+ "inputs": [],
156
+ "name": "getAuthorizer",
157
+ "outputs": [
158
+ {
159
+ "internalType": "contract IAuthorizer",
160
+ "name": "",
161
+ "type": "address"
162
+ }
163
+ ],
164
+ "stateMutability": "view",
165
+ "type": "function"
166
+ },
167
+ {
168
+ "inputs": [],
169
+ "name": "getDefaultMaxSurgeFeePercentage",
170
+ "outputs": [
171
+ {
172
+ "internalType": "uint256",
173
+ "name": "",
174
+ "type": "uint256"
175
+ }
176
+ ],
177
+ "stateMutability": "view",
178
+ "type": "function"
179
+ },
180
+ {
181
+ "inputs": [],
182
+ "name": "getDefaultSurgeThresholdPercentage",
183
+ "outputs": [
184
+ {
185
+ "internalType": "uint256",
186
+ "name": "",
187
+ "type": "uint256"
188
+ }
189
+ ],
190
+ "stateMutability": "view",
191
+ "type": "function"
192
+ },
193
+ {
194
+ "inputs": [],
195
+ "name": "getHookFlags",
196
+ "outputs": [
197
+ {
198
+ "components": [
199
+ {
200
+ "internalType": "bool",
201
+ "name": "enableHookAdjustedAmounts",
202
+ "type": "bool"
203
+ },
204
+ {
205
+ "internalType": "bool",
206
+ "name": "shouldCallBeforeInitialize",
207
+ "type": "bool"
208
+ },
209
+ {
210
+ "internalType": "bool",
211
+ "name": "shouldCallAfterInitialize",
212
+ "type": "bool"
213
+ },
214
+ {
215
+ "internalType": "bool",
216
+ "name": "shouldCallComputeDynamicSwapFee",
217
+ "type": "bool"
218
+ },
219
+ {
220
+ "internalType": "bool",
221
+ "name": "shouldCallBeforeSwap",
222
+ "type": "bool"
223
+ },
224
+ {
225
+ "internalType": "bool",
226
+ "name": "shouldCallAfterSwap",
227
+ "type": "bool"
228
+ },
229
+ {
230
+ "internalType": "bool",
231
+ "name": "shouldCallBeforeAddLiquidity",
232
+ "type": "bool"
233
+ },
234
+ {
235
+ "internalType": "bool",
236
+ "name": "shouldCallAfterAddLiquidity",
237
+ "type": "bool"
238
+ },
239
+ {
240
+ "internalType": "bool",
241
+ "name": "shouldCallBeforeRemoveLiquidity",
242
+ "type": "bool"
243
+ },
244
+ {
245
+ "internalType": "bool",
246
+ "name": "shouldCallAfterRemoveLiquidity",
247
+ "type": "bool"
248
+ }
249
+ ],
250
+ "internalType": "struct HookFlags",
251
+ "name": "hookFlags",
252
+ "type": "tuple"
253
+ }
254
+ ],
255
+ "stateMutability": "pure",
256
+ "type": "function"
257
+ },
258
+ {
259
+ "inputs": [
260
+ {
261
+ "internalType": "address",
262
+ "name": "pool",
263
+ "type": "address"
264
+ }
265
+ ],
266
+ "name": "getMaxSurgeFeePercentage",
267
+ "outputs": [
268
+ {
269
+ "internalType": "uint256",
270
+ "name": "",
271
+ "type": "uint256"
272
+ }
273
+ ],
274
+ "stateMutability": "view",
275
+ "type": "function"
276
+ },
277
+ {
278
+ "inputs": [
279
+ {
280
+ "components": [
281
+ {
282
+ "internalType": "enum SwapKind",
283
+ "name": "kind",
284
+ "type": "uint8"
285
+ },
286
+ {
287
+ "internalType": "uint256",
288
+ "name": "amountGivenScaled18",
289
+ "type": "uint256"
290
+ },
291
+ {
292
+ "internalType": "uint256[]",
293
+ "name": "balancesScaled18",
294
+ "type": "uint256[]"
295
+ },
296
+ {
297
+ "internalType": "uint256",
298
+ "name": "indexIn",
299
+ "type": "uint256"
300
+ },
301
+ {
302
+ "internalType": "uint256",
303
+ "name": "indexOut",
304
+ "type": "uint256"
305
+ },
306
+ {
307
+ "internalType": "address",
308
+ "name": "router",
309
+ "type": "address"
310
+ },
311
+ {
312
+ "internalType": "bytes",
313
+ "name": "userData",
314
+ "type": "bytes"
315
+ }
316
+ ],
317
+ "internalType": "struct PoolSwapParams",
318
+ "name": "params",
319
+ "type": "tuple"
320
+ },
321
+ {
322
+ "internalType": "address",
323
+ "name": "pool",
324
+ "type": "address"
325
+ },
326
+ {
327
+ "internalType": "uint256",
328
+ "name": "staticFeePercentage",
329
+ "type": "uint256"
330
+ }
331
+ ],
332
+ "name": "getSurgeFeePercentage",
333
+ "outputs": [
334
+ {
335
+ "internalType": "uint256",
336
+ "name": "",
337
+ "type": "uint256"
338
+ }
339
+ ],
340
+ "stateMutability": "view",
341
+ "type": "function"
342
+ },
343
+ {
344
+ "inputs": [
345
+ {
346
+ "internalType": "address",
347
+ "name": "pool",
348
+ "type": "address"
349
+ }
350
+ ],
351
+ "name": "getSurgeThresholdPercentage",
352
+ "outputs": [
353
+ {
354
+ "internalType": "uint256",
355
+ "name": "",
356
+ "type": "uint256"
357
+ }
358
+ ],
359
+ "stateMutability": "view",
360
+ "type": "function"
361
+ },
362
+ {
363
+ "inputs": [],
364
+ "name": "getVault",
365
+ "outputs": [
366
+ {
367
+ "internalType": "contract IVault",
368
+ "name": "",
369
+ "type": "address"
370
+ }
371
+ ],
372
+ "stateMutability": "view",
373
+ "type": "function"
374
+ },
375
+ {
376
+ "inputs": [
377
+ {
378
+ "internalType": "address",
379
+ "name": "",
380
+ "type": "address"
381
+ },
382
+ {
383
+ "internalType": "address",
384
+ "name": "",
385
+ "type": "address"
386
+ },
387
+ {
388
+ "internalType": "enum AddLiquidityKind",
389
+ "name": "",
390
+ "type": "uint8"
391
+ },
392
+ {
393
+ "internalType": "uint256[]",
394
+ "name": "",
395
+ "type": "uint256[]"
396
+ },
397
+ {
398
+ "internalType": "uint256[]",
399
+ "name": "amountsInRaw",
400
+ "type": "uint256[]"
401
+ },
402
+ {
403
+ "internalType": "uint256",
404
+ "name": "",
405
+ "type": "uint256"
406
+ },
407
+ {
408
+ "internalType": "uint256[]",
409
+ "name": "",
410
+ "type": "uint256[]"
411
+ },
412
+ {
413
+ "internalType": "bytes",
414
+ "name": "",
415
+ "type": "bytes"
416
+ }
417
+ ],
418
+ "name": "onAfterAddLiquidity",
419
+ "outputs": [
420
+ {
421
+ "internalType": "bool",
422
+ "name": "",
423
+ "type": "bool"
424
+ },
425
+ {
426
+ "internalType": "uint256[]",
427
+ "name": "",
428
+ "type": "uint256[]"
429
+ }
430
+ ],
431
+ "stateMutability": "nonpayable",
432
+ "type": "function"
433
+ },
434
+ {
435
+ "inputs": [
436
+ {
437
+ "internalType": "uint256[]",
438
+ "name": "",
439
+ "type": "uint256[]"
440
+ },
441
+ {
442
+ "internalType": "uint256",
443
+ "name": "",
444
+ "type": "uint256"
445
+ },
446
+ {
447
+ "internalType": "bytes",
448
+ "name": "",
449
+ "type": "bytes"
450
+ }
451
+ ],
452
+ "name": "onAfterInitialize",
453
+ "outputs": [
454
+ {
455
+ "internalType": "bool",
456
+ "name": "",
457
+ "type": "bool"
458
+ }
459
+ ],
460
+ "stateMutability": "nonpayable",
461
+ "type": "function"
462
+ },
463
+ {
464
+ "inputs": [
465
+ {
466
+ "internalType": "address",
467
+ "name": "",
468
+ "type": "address"
469
+ },
470
+ {
471
+ "internalType": "address",
472
+ "name": "",
473
+ "type": "address"
474
+ },
475
+ {
476
+ "internalType": "enum RemoveLiquidityKind",
477
+ "name": "",
478
+ "type": "uint8"
479
+ },
480
+ {
481
+ "internalType": "uint256",
482
+ "name": "",
483
+ "type": "uint256"
484
+ },
485
+ {
486
+ "internalType": "uint256[]",
487
+ "name": "",
488
+ "type": "uint256[]"
489
+ },
490
+ {
491
+ "internalType": "uint256[]",
492
+ "name": "amountsOutRaw",
493
+ "type": "uint256[]"
494
+ },
495
+ {
496
+ "internalType": "uint256[]",
497
+ "name": "",
498
+ "type": "uint256[]"
499
+ },
500
+ {
501
+ "internalType": "bytes",
502
+ "name": "",
503
+ "type": "bytes"
504
+ }
505
+ ],
506
+ "name": "onAfterRemoveLiquidity",
507
+ "outputs": [
508
+ {
509
+ "internalType": "bool",
510
+ "name": "",
511
+ "type": "bool"
512
+ },
513
+ {
514
+ "internalType": "uint256[]",
515
+ "name": "",
516
+ "type": "uint256[]"
517
+ }
518
+ ],
519
+ "stateMutability": "nonpayable",
520
+ "type": "function"
521
+ },
522
+ {
523
+ "inputs": [
524
+ {
525
+ "components": [
526
+ {
527
+ "internalType": "enum SwapKind",
528
+ "name": "kind",
529
+ "type": "uint8"
530
+ },
531
+ {
532
+ "internalType": "contract IERC20",
533
+ "name": "tokenIn",
534
+ "type": "address"
535
+ },
536
+ {
537
+ "internalType": "contract IERC20",
538
+ "name": "tokenOut",
539
+ "type": "address"
540
+ },
541
+ {
542
+ "internalType": "uint256",
543
+ "name": "amountInScaled18",
544
+ "type": "uint256"
545
+ },
546
+ {
547
+ "internalType": "uint256",
548
+ "name": "amountOutScaled18",
549
+ "type": "uint256"
550
+ },
551
+ {
552
+ "internalType": "uint256",
553
+ "name": "tokenInBalanceScaled18",
554
+ "type": "uint256"
555
+ },
556
+ {
557
+ "internalType": "uint256",
558
+ "name": "tokenOutBalanceScaled18",
559
+ "type": "uint256"
560
+ },
561
+ {
562
+ "internalType": "uint256",
563
+ "name": "amountCalculatedScaled18",
564
+ "type": "uint256"
565
+ },
566
+ {
567
+ "internalType": "uint256",
568
+ "name": "amountCalculatedRaw",
569
+ "type": "uint256"
570
+ },
571
+ {
572
+ "internalType": "address",
573
+ "name": "router",
574
+ "type": "address"
575
+ },
576
+ {
577
+ "internalType": "address",
578
+ "name": "pool",
579
+ "type": "address"
580
+ },
581
+ {
582
+ "internalType": "bytes",
583
+ "name": "userData",
584
+ "type": "bytes"
585
+ }
586
+ ],
587
+ "internalType": "struct AfterSwapParams",
588
+ "name": "",
589
+ "type": "tuple"
590
+ }
591
+ ],
592
+ "name": "onAfterSwap",
593
+ "outputs": [
594
+ {
595
+ "internalType": "bool",
596
+ "name": "",
597
+ "type": "bool"
598
+ },
599
+ {
600
+ "internalType": "uint256",
601
+ "name": "",
602
+ "type": "uint256"
603
+ }
604
+ ],
605
+ "stateMutability": "nonpayable",
606
+ "type": "function"
607
+ },
608
+ {
609
+ "inputs": [
610
+ {
611
+ "internalType": "address",
612
+ "name": "",
613
+ "type": "address"
614
+ },
615
+ {
616
+ "internalType": "address",
617
+ "name": "",
618
+ "type": "address"
619
+ },
620
+ {
621
+ "internalType": "enum AddLiquidityKind",
622
+ "name": "",
623
+ "type": "uint8"
624
+ },
625
+ {
626
+ "internalType": "uint256[]",
627
+ "name": "",
628
+ "type": "uint256[]"
629
+ },
630
+ {
631
+ "internalType": "uint256",
632
+ "name": "",
633
+ "type": "uint256"
634
+ },
635
+ {
636
+ "internalType": "uint256[]",
637
+ "name": "",
638
+ "type": "uint256[]"
639
+ },
640
+ {
641
+ "internalType": "bytes",
642
+ "name": "",
643
+ "type": "bytes"
644
+ }
645
+ ],
646
+ "name": "onBeforeAddLiquidity",
647
+ "outputs": [
648
+ {
649
+ "internalType": "bool",
650
+ "name": "",
651
+ "type": "bool"
652
+ }
653
+ ],
654
+ "stateMutability": "nonpayable",
655
+ "type": "function"
656
+ },
657
+ {
658
+ "inputs": [
659
+ {
660
+ "internalType": "uint256[]",
661
+ "name": "",
662
+ "type": "uint256[]"
663
+ },
664
+ {
665
+ "internalType": "bytes",
666
+ "name": "",
667
+ "type": "bytes"
668
+ }
669
+ ],
670
+ "name": "onBeforeInitialize",
671
+ "outputs": [
672
+ {
673
+ "internalType": "bool",
674
+ "name": "",
675
+ "type": "bool"
676
+ }
677
+ ],
678
+ "stateMutability": "nonpayable",
679
+ "type": "function"
680
+ },
681
+ {
682
+ "inputs": [
683
+ {
684
+ "internalType": "address",
685
+ "name": "",
686
+ "type": "address"
687
+ },
688
+ {
689
+ "internalType": "address",
690
+ "name": "",
691
+ "type": "address"
692
+ },
693
+ {
694
+ "internalType": "enum RemoveLiquidityKind",
695
+ "name": "",
696
+ "type": "uint8"
697
+ },
698
+ {
699
+ "internalType": "uint256",
700
+ "name": "",
701
+ "type": "uint256"
702
+ },
703
+ {
704
+ "internalType": "uint256[]",
705
+ "name": "",
706
+ "type": "uint256[]"
707
+ },
708
+ {
709
+ "internalType": "uint256[]",
710
+ "name": "",
711
+ "type": "uint256[]"
712
+ },
713
+ {
714
+ "internalType": "bytes",
715
+ "name": "",
716
+ "type": "bytes"
717
+ }
718
+ ],
719
+ "name": "onBeforeRemoveLiquidity",
720
+ "outputs": [
721
+ {
722
+ "internalType": "bool",
723
+ "name": "",
724
+ "type": "bool"
725
+ }
726
+ ],
727
+ "stateMutability": "nonpayable",
728
+ "type": "function"
729
+ },
730
+ {
731
+ "inputs": [
732
+ {
733
+ "components": [
734
+ {
735
+ "internalType": "enum SwapKind",
736
+ "name": "kind",
737
+ "type": "uint8"
738
+ },
739
+ {
740
+ "internalType": "uint256",
741
+ "name": "amountGivenScaled18",
742
+ "type": "uint256"
743
+ },
744
+ {
745
+ "internalType": "uint256[]",
746
+ "name": "balancesScaled18",
747
+ "type": "uint256[]"
748
+ },
749
+ {
750
+ "internalType": "uint256",
751
+ "name": "indexIn",
752
+ "type": "uint256"
753
+ },
754
+ {
755
+ "internalType": "uint256",
756
+ "name": "indexOut",
757
+ "type": "uint256"
758
+ },
759
+ {
760
+ "internalType": "address",
761
+ "name": "router",
762
+ "type": "address"
763
+ },
764
+ {
765
+ "internalType": "bytes",
766
+ "name": "userData",
767
+ "type": "bytes"
768
+ }
769
+ ],
770
+ "internalType": "struct PoolSwapParams",
771
+ "name": "",
772
+ "type": "tuple"
773
+ },
774
+ {
775
+ "internalType": "address",
776
+ "name": "",
777
+ "type": "address"
778
+ }
779
+ ],
780
+ "name": "onBeforeSwap",
781
+ "outputs": [
782
+ {
783
+ "internalType": "bool",
784
+ "name": "",
785
+ "type": "bool"
786
+ }
787
+ ],
788
+ "stateMutability": "nonpayable",
789
+ "type": "function"
790
+ },
791
+ {
792
+ "inputs": [
793
+ {
794
+ "components": [
795
+ {
796
+ "internalType": "enum SwapKind",
797
+ "name": "kind",
798
+ "type": "uint8"
799
+ },
800
+ {
801
+ "internalType": "uint256",
802
+ "name": "amountGivenScaled18",
803
+ "type": "uint256"
804
+ },
805
+ {
806
+ "internalType": "uint256[]",
807
+ "name": "balancesScaled18",
808
+ "type": "uint256[]"
809
+ },
810
+ {
811
+ "internalType": "uint256",
812
+ "name": "indexIn",
813
+ "type": "uint256"
814
+ },
815
+ {
816
+ "internalType": "uint256",
817
+ "name": "indexOut",
818
+ "type": "uint256"
819
+ },
820
+ {
821
+ "internalType": "address",
822
+ "name": "router",
823
+ "type": "address"
824
+ },
825
+ {
826
+ "internalType": "bytes",
827
+ "name": "userData",
828
+ "type": "bytes"
829
+ }
830
+ ],
831
+ "internalType": "struct PoolSwapParams",
832
+ "name": "params",
833
+ "type": "tuple"
834
+ },
835
+ {
836
+ "internalType": "address",
837
+ "name": "pool",
838
+ "type": "address"
839
+ },
840
+ {
841
+ "internalType": "uint256",
842
+ "name": "staticSwapFeePercentage",
843
+ "type": "uint256"
844
+ }
845
+ ],
846
+ "name": "onComputeDynamicSwapFeePercentage",
847
+ "outputs": [
848
+ {
849
+ "internalType": "bool",
850
+ "name": "",
851
+ "type": "bool"
852
+ },
853
+ {
854
+ "internalType": "uint256",
855
+ "name": "",
856
+ "type": "uint256"
857
+ }
858
+ ],
859
+ "stateMutability": "view",
860
+ "type": "function"
861
+ },
862
+ {
863
+ "inputs": [
864
+ {
865
+ "internalType": "address",
866
+ "name": "factory",
867
+ "type": "address"
868
+ },
869
+ {
870
+ "internalType": "address",
871
+ "name": "pool",
872
+ "type": "address"
873
+ },
874
+ {
875
+ "components": [
876
+ {
877
+ "internalType": "contract IERC20",
878
+ "name": "token",
879
+ "type": "address"
880
+ },
881
+ {
882
+ "internalType": "enum TokenType",
883
+ "name": "tokenType",
884
+ "type": "uint8"
885
+ },
886
+ {
887
+ "internalType": "contract IRateProvider",
888
+ "name": "rateProvider",
889
+ "type": "address"
890
+ },
891
+ {
892
+ "internalType": "bool",
893
+ "name": "paysYieldFees",
894
+ "type": "bool"
895
+ }
896
+ ],
897
+ "internalType": "struct TokenConfig[]",
898
+ "name": "",
899
+ "type": "tuple[]"
900
+ },
901
+ {
902
+ "components": [
903
+ {
904
+ "internalType": "bool",
905
+ "name": "disableUnbalancedLiquidity",
906
+ "type": "bool"
907
+ },
908
+ {
909
+ "internalType": "bool",
910
+ "name": "enableAddLiquidityCustom",
911
+ "type": "bool"
912
+ },
913
+ {
914
+ "internalType": "bool",
915
+ "name": "enableRemoveLiquidityCustom",
916
+ "type": "bool"
917
+ },
918
+ {
919
+ "internalType": "bool",
920
+ "name": "enableDonation",
921
+ "type": "bool"
922
+ }
923
+ ],
924
+ "internalType": "struct LiquidityManagement",
925
+ "name": "",
926
+ "type": "tuple"
927
+ }
928
+ ],
929
+ "name": "onRegister",
930
+ "outputs": [
931
+ {
932
+ "internalType": "bool",
933
+ "name": "",
934
+ "type": "bool"
935
+ }
936
+ ],
937
+ "stateMutability": "nonpayable",
938
+ "type": "function"
939
+ },
940
+ {
941
+ "inputs": [
942
+ {
943
+ "internalType": "address",
944
+ "name": "pool",
945
+ "type": "address"
946
+ },
947
+ {
948
+ "internalType": "uint256",
949
+ "name": "newMaxSurgeSurgeFeePercentage",
950
+ "type": "uint256"
951
+ }
952
+ ],
953
+ "name": "setMaxSurgeFeePercentage",
954
+ "outputs": [],
955
+ "stateMutability": "nonpayable",
956
+ "type": "function"
957
+ },
958
+ {
959
+ "inputs": [
960
+ {
961
+ "internalType": "address",
962
+ "name": "pool",
963
+ "type": "address"
964
+ },
965
+ {
966
+ "internalType": "uint256",
967
+ "name": "newSurgeThresholdPercentage",
968
+ "type": "uint256"
969
+ }
970
+ ],
971
+ "name": "setSurgeThresholdPercentage",
972
+ "outputs": [],
973
+ "stateMutability": "nonpayable",
974
+ "type": "function"
975
+ }
976
+ ]