@paraswap/dex-lib 4.1.19-pools.0 → 4.1.19-pools.2

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 (1323) hide show
  1. package/build/abi/aave-gsm/Pool.json +1459 -0
  2. package/build/abi/uniswap-v4/pool-manager.abi.json +1367 -0
  3. package/build/abi/uniswap-v4/state-view.abi.json +365 -0
  4. package/build/dex/aave-gsm/aave-gsm-pool.d.ts +7 -1
  5. package/build/dex/aave-gsm/aave-gsm-pool.js +46 -4
  6. package/build/dex/aave-gsm/aave-gsm-pool.js.map +1 -1
  7. package/build/dex/aave-gsm/aave-gsm.js +37 -30
  8. package/build/dex/aave-gsm/aave-gsm.js.map +1 -1
  9. package/build/dex/aave-gsm/config.js +6 -5
  10. package/build/dex/aave-gsm/config.js.map +1 -1
  11. package/build/dex/aave-gsm/types.d.ts +5 -2
  12. package/build/dex/balancer-v3/balancer-test-helpers.d.ts +5 -0
  13. package/build/dex/balancer-v3/balancer-test-helpers.js +25 -1
  14. package/build/dex/balancer-v3/balancer-test-helpers.js.map +1 -1
  15. package/build/dex/balancer-v3/balancer-v3-pool.js +35 -7
  16. package/build/dex/balancer-v3/balancer-v3-pool.js.map +1 -1
  17. package/build/dex/balancer-v3/balancer-v3.js +9 -2
  18. package/build/dex/balancer-v3/balancer-v3.js.map +1 -1
  19. package/build/dex/balancer-v3/config.d.ts +2 -1
  20. package/build/dex/balancer-v3/config.js +7 -0
  21. package/build/dex/balancer-v3/config.js.map +1 -1
  22. package/build/dex/balancer-v3/getGasCost.js +3 -0
  23. package/build/dex/balancer-v3/getGasCost.js.map +1 -1
  24. package/build/dex/balancer-v3/getOnChainState.d.ts +5 -1
  25. package/build/dex/balancer-v3/getOnChainState.js +69 -9
  26. package/build/dex/balancer-v3/getOnChainState.js.map +1 -1
  27. package/build/dex/balancer-v3/getPoolsApi.js +45 -7
  28. package/build/dex/balancer-v3/getPoolsApi.js.map +1 -1
  29. package/build/dex/balancer-v3/getTopPoolsApi.d.ts +4 -3
  30. package/build/dex/balancer-v3/getTopPoolsApi.js +17 -6
  31. package/build/dex/balancer-v3/getTopPoolsApi.js.map +1 -1
  32. package/build/dex/balancer-v3/hooks/directionalFeeHook.d.ts +2 -0
  33. package/build/dex/balancer-v3/hooks/directionalFeeHook.js +1 -0
  34. package/build/dex/balancer-v3/hooks/directionalFeeHook.js.map +1 -1
  35. package/build/dex/balancer-v3/hooks/stableSurgeHook.d.ts +2 -0
  36. package/build/dex/balancer-v3/hooks/stableSurgeHook.js +1 -0
  37. package/build/dex/balancer-v3/hooks/stableSurgeHook.js.map +1 -1
  38. package/build/dex/balancer-v3/types.d.ts +6 -2
  39. package/build/dex/bebop/bebop.js +9 -13
  40. package/build/dex/bebop/bebop.js.map +1 -1
  41. package/build/dex/curve-v1/config.js +5 -0
  42. package/build/dex/curve-v1/config.js.map +1 -1
  43. package/build/dex/pancakeswap-v3/config.js +1 -1
  44. package/build/dex/pancakeswap-v3/config.js.map +1 -1
  45. package/build/dex/solidly/solidly.js +2 -2
  46. package/build/dex/solidly/solidly.js.map +1 -1
  47. package/build/dex/uniswap-v2/config.js +1 -0
  48. package/build/dex/uniswap-v2/config.js.map +1 -1
  49. package/build/dex/uniswap-v2/uniswap-v2.js +2 -2
  50. package/build/dex/uniswap-v3/config.js +3 -2
  51. package/build/dex/uniswap-v3/config.js.map +1 -1
  52. package/build/dex/uniswap-v3/uniswap-v3.d.ts +1 -1
  53. package/build/dex/uniswap-v3/uniswap-v3.js +53 -65
  54. package/build/dex/uniswap-v3/uniswap-v3.js.map +1 -1
  55. package/build/dex/uniswap-v4/config.js +43 -0
  56. package/build/dex/uniswap-v4/config.js.map +1 -1
  57. package/build/dex/uniswap-v4/constants.d.ts +7 -0
  58. package/build/dex/uniswap-v4/constants.js +18 -0
  59. package/build/dex/uniswap-v4/constants.js.map +1 -0
  60. package/build/dex/uniswap-v4/contract-math/BalanceDelta.d.ts +6 -0
  61. package/build/dex/uniswap-v4/contract-math/BalanceDelta.js +22 -0
  62. package/build/dex/uniswap-v4/contract-math/BalanceDelta.js.map +1 -0
  63. package/build/dex/uniswap-v4/contract-math/BitMath.d.ts +4 -0
  64. package/build/dex/uniswap-v4/contract-math/BitMath.js +53 -0
  65. package/build/dex/uniswap-v4/contract-math/BitMath.js.map +1 -0
  66. package/build/dex/uniswap-v4/contract-math/FixedPoint128.d.ts +3 -0
  67. package/build/dex/uniswap-v4/contract-math/FixedPoint128.js +8 -0
  68. package/build/dex/uniswap-v4/contract-math/FixedPoint128.js.map +1 -0
  69. package/build/dex/uniswap-v4/contract-math/FixedPoint96.d.ts +4 -0
  70. package/build/dex/uniswap-v4/contract-math/FixedPoint96.js +9 -0
  71. package/build/dex/uniswap-v4/contract-math/FixedPoint96.js.map +1 -0
  72. package/build/dex/uniswap-v4/contract-math/FullMath.d.ts +4 -0
  73. package/build/dex/uniswap-v4/contract-math/FullMath.js +19 -0
  74. package/build/dex/uniswap-v4/contract-math/FullMath.js.map +1 -0
  75. package/build/dex/uniswap-v4/contract-math/LPFeeLibrary.d.ts +13 -0
  76. package/build/dex/uniswap-v4/contract-math/LPFeeLibrary.js +36 -0
  77. package/build/dex/uniswap-v4/contract-math/LPFeeLibrary.js.map +1 -0
  78. package/build/dex/uniswap-v4/contract-math/LiquidityMath.d.ts +3 -0
  79. package/build/dex/uniswap-v4/contract-math/LiquidityMath.js +21 -0
  80. package/build/dex/uniswap-v4/contract-math/LiquidityMath.js.map +1 -0
  81. package/build/dex/uniswap-v4/contract-math/Position.d.ts +9 -0
  82. package/build/dex/uniswap-v4/contract-math/Position.js +39 -0
  83. package/build/dex/uniswap-v4/contract-math/Position.js.map +1 -0
  84. package/build/dex/uniswap-v4/contract-math/ProtocolFeeLibrary.d.ts +10 -0
  85. package/build/dex/uniswap-v4/contract-math/ProtocolFeeLibrary.js +30 -0
  86. package/build/dex/uniswap-v4/contract-math/ProtocolFeeLibrary.js.map +1 -0
  87. package/build/dex/uniswap-v4/contract-math/SqrtPriceMath.d.ts +11 -0
  88. package/build/dex/uniswap-v4/contract-math/SqrtPriceMath.js +80 -0
  89. package/build/dex/uniswap-v4/contract-math/SqrtPriceMath.js.map +1 -0
  90. package/build/dex/uniswap-v4/contract-math/SwapMath.d.ts +10 -0
  91. package/build/dex/uniswap-v4/contract-math/SwapMath.js +65 -0
  92. package/build/dex/uniswap-v4/contract-math/SwapMath.js.map +1 -0
  93. package/build/dex/uniswap-v4/contract-math/Tick.d.ts +10 -0
  94. package/build/dex/uniswap-v4/contract-math/Tick.js +64 -0
  95. package/build/dex/uniswap-v4/contract-math/Tick.js.map +1 -0
  96. package/build/dex/uniswap-v4/contract-math/TickBitmap.d.ts +11 -0
  97. package/build/dex/uniswap-v4/contract-math/TickBitmap.js +72 -0
  98. package/build/dex/uniswap-v4/contract-math/TickBitmap.js.map +1 -0
  99. package/build/dex/uniswap-v4/contract-math/TickMath.d.ts +9 -0
  100. package/build/dex/uniswap-v4/contract-math/TickMath.js +164 -0
  101. package/build/dex/uniswap-v4/contract-math/TickMath.js.map +1 -0
  102. package/build/dex/uniswap-v4/contract-math/UnsafeMath.d.ts +4 -0
  103. package/build/dex/uniswap-v4/contract-math/UnsafeMath.js +16 -0
  104. package/build/dex/uniswap-v4/contract-math/UnsafeMath.js.map +1 -0
  105. package/build/dex/uniswap-v4/contract-math/uniswap-v4-pool-math.d.ts +18 -0
  106. package/build/dex/uniswap-v4/contract-math/uniswap-v4-pool-math.js +236 -0
  107. package/build/dex/uniswap-v4/contract-math/uniswap-v4-pool-math.js.map +1 -0
  108. package/build/dex/uniswap-v4/contract-math/utils.d.ts +3 -0
  109. package/build/dex/uniswap-v4/contract-math/utils.js +15 -0
  110. package/build/dex/uniswap-v4/contract-math/utils.js.map +1 -0
  111. package/build/dex/uniswap-v4/encoder.js +12 -2
  112. package/build/dex/uniswap-v4/encoder.js.map +1 -1
  113. package/build/dex/uniswap-v4/subgraph.d.ts +5 -0
  114. package/build/dex/uniswap-v4/subgraph.js +69 -0
  115. package/build/dex/uniswap-v4/subgraph.js.map +1 -0
  116. package/build/dex/uniswap-v4/types.d.ts +62 -4
  117. package/build/dex/uniswap-v4/uniswap-v4-pool-manager.d.ts +31 -0
  118. package/build/dex/uniswap-v4/uniswap-v4-pool-manager.js +129 -0
  119. package/build/dex/uniswap-v4/uniswap-v4-pool-manager.js.map +1 -0
  120. package/build/dex/uniswap-v4/uniswap-v4-pool.d.ts +39 -0
  121. package/build/dex/uniswap-v4/uniswap-v4-pool.js +324 -0
  122. package/build/dex/uniswap-v4/uniswap-v4-pool.js.map +1 -0
  123. package/build/dex/uniswap-v4/uniswap-v4.d.ts +6 -6
  124. package/build/dex/uniswap-v4/uniswap-v4.js +28 -47
  125. package/build/dex/uniswap-v4/uniswap-v4.js.map +1 -1
  126. package/build/dex/uniswap-v4/utils.d.ts +2 -0
  127. package/build/dex/uniswap-v4/utils.js +15 -0
  128. package/build/dex/uniswap-v4/utils.js.map +1 -0
  129. package/build/dex/wombat/wombat.d.ts +0 -1
  130. package/build/dex/wombat/wombat.js +2 -44
  131. package/build/dex/wombat/wombat.js.map +1 -1
  132. package/build/dex/woo-fi-v2/config.js +16 -15
  133. package/build/dex/woo-fi-v2/config.js.map +1 -1
  134. package/package.json +2 -2
  135. package/.env.example +0 -15
  136. package/.eslintrc.js +0 -65
  137. package/.github/workflows/ci.yaml +0 -22
  138. package/.husky/pre-commit +0 -4
  139. package/.prettierrc +0 -10
  140. package/.vscode/launch.json +0 -53
  141. package/.vscode/settings.json +0 -2
  142. package/.vscode/tasks.json +0 -15
  143. package/dex-template/__DexName__-e2e.test.ts.template +0 -155
  144. package/dex-template/__DexName__-events.test.ts.template +0 -110
  145. package/dex-template/__DexName__-integration.test.ts.template +0 -251
  146. package/dex-template/__DexName__-pool.ts.template +0 -91
  147. package/dex-template/__DexName__.ts.template +0 -156
  148. package/dex-template/config.ts.template +0 -9
  149. package/dex-template/types.ts.template +0 -22
  150. package/funding.json +0 -5
  151. package/jest.config.js +0 -10
  152. package/scripts/dex-integration.ts +0 -164
  153. package/scripts/fetch-event-blocknumber.ts +0 -51
  154. package/scripts/generate-bytecode.ts +0 -11
  155. package/scripts/run-dex-integration-v3.ts +0 -78
  156. package/scripts/run-dex-integration.ts +0 -95
  157. package/src/abi/AaveV2_lending_pool.json +0 -53
  158. package/src/abi/AaveV3_lending_pool.json +0 -1715
  159. package/src/abi/Balancer.json +0 -257
  160. package/src/abi/BalancerCustomMulticall.json +0 -26
  161. package/src/abi/BalancerV1ExchangeProxy.json +0 -377
  162. package/src/abi/BalancerV1Pool.json +0 -1630
  163. package/src/abi/BalancerV2.json +0 -1179
  164. package/src/abi/Bancor.json +0 -392
  165. package/src/abi/Compound_CETH.json +0 -12
  166. package/src/abi/Curve.json +0 -54
  167. package/src/abi/CurveV2.json +0 -700
  168. package/src/abi/DirectSwap.json +0 -1018
  169. package/src/abi/ERC1155.abi.json +0 -459
  170. package/src/abi/ERC1271.abi.json +0 -25
  171. package/src/abi/ERC20.abi.json +0 -288
  172. package/src/abi/ERC4626.json +0 -791
  173. package/src/abi/ERC721.abi.json +0 -165
  174. package/src/abi/IParaswap.json +0 -3059
  175. package/src/abi/RamsesV2Pool.abi.json +0 -1554
  176. package/src/abi/RamsesV2Quoter.abi.json +0 -274
  177. package/src/abi/RamsesV2StateMulticall.abi.json +0 -891
  178. package/src/abi/Redstone.json +0 -739
  179. package/src/abi/SSPM.json +0 -829
  180. package/src/abi/SimpleSwapHelperRouter.json +0 -38
  181. package/src/abi/Smoothy.json +0 -1049
  182. package/src/abi/StablePool.json +0 -1035
  183. package/src/abi/StaderOracle.json +0 -2170
  184. package/src/abi/TraderJoeV21Router.json +0 -1489
  185. package/src/abi/USDM.json +0 -807
  186. package/src/abi/UniswapV2ExchangeRouter.json +0 -84
  187. package/src/abi/UniswapV2Router.json +0 -397
  188. package/src/abi/UniswapV3Router.json +0 -274
  189. package/src/abi/aave-gsm/Aave_GSM.json +0 -751
  190. package/src/abi/aave-gsm/IFeeStrategy.json +0 -78
  191. package/src/abi/aave-v3-weth-gateway.json +0 -290
  192. package/src/abi/aave-weth-gateway-avalanche.json +0 -242
  193. package/src/abi/aave-weth-gateway-polygon.json +0 -242
  194. package/src/abi/aave-weth-gateway.json +0 -38
  195. package/src/abi/aavev3stata/Factory.json +0 -128
  196. package/src/abi/aavev3stata/Token.json +0 -735
  197. package/src/abi/aavev3statav2/Factory.json +0 -131
  198. package/src/abi/aavev3statav2/Pool.json +0 -1459
  199. package/src/abi/aavev3statav2/Token.json +0 -997
  200. package/src/abi/aerodrome/aerodrome-pool-factory.json +0 -586
  201. package/src/abi/algebra/AlgebraFactory-v1_1.abi.json +0 -250
  202. package/src/abi/algebra/AlgebraPool-v1_1.abi.json +0 -727
  203. package/src/abi/algebra/AlgebraPool-v1_9.abi.json +0 -756
  204. package/src/abi/algebra/AlgebraQuoter.abi.json +0 -138
  205. package/src/abi/algebra/AlgebraStateMulticall.abi.json +0 -801
  206. package/src/abi/algebra/SwapRouter.json +0 -281
  207. package/src/abi/angle/stagToken.json +0 -963
  208. package/src/abi/angle-transmuter/ChainlinkAccessControlledOffchainAggregator.json +0 -1246
  209. package/src/abi/angle-transmuter/ChainlinkEACAggregatorProxy.json +0 -509
  210. package/src/abi/angle-transmuter/MorphoOracle.json +0 -193
  211. package/src/abi/angle-transmuter/MorphoVault.json +0 -2506
  212. package/src/abi/angle-transmuter/Pyth.json +0 -1534
  213. package/src/abi/angle-transmuter/Transmuter.json +0 -1711
  214. package/src/abi/angle-transmuter/TransmuterSidechain.json +0 -1798
  215. package/src/abi/api3-proxy.json +0 -53
  216. package/src/abi/api3-server-v1.json +0 -463
  217. package/src/abi/augustus-v6/ABI.json +0 -1572
  218. package/src/abi/augustus.json +0 -375
  219. package/src/abi/balancer-v2/ComposableStable.json +0 -1391
  220. package/src/abi/balancer-v2/gyro-e.abi.json +0 -1595
  221. package/src/abi/balancer-v2/linearPoolAbi.json +0 -1062
  222. package/src/abi/balancer-v2/meta-stable-pool.json +0 -1437
  223. package/src/abi/balancer-v2/stable-pool.json +0 -1053
  224. package/src/abi/balancer-v2/vault.json +0 -918
  225. package/src/abi/balancer-v2/weighted-pool.json +0 -1142
  226. package/src/abi/balancer-v3/batch-router.json +0 -989
  227. package/src/abi/balancer-v3/directionalFeeHook.json +0 -684
  228. package/src/abi/balancer-v3/router.json +0 -1792
  229. package/src/abi/balancer-v3/stableSurgeHook.json +0 -976
  230. package/src/abi/balancer-v3/vault-extension.json +0 -2834
  231. package/src/abi/bebop/BebopSettlement.abi.json +0 -2137
  232. package/src/abi/benqi/staked-avax.json +0 -954
  233. package/src/abi/cables/CablesMainnetRFQ.json +0 -1083
  234. package/src/abi/camelot/CamelotFactory.json +0 -494
  235. package/src/abi/camelot/CamelotPair.json +0 -1027
  236. package/src/abi/chainlink.json +0 -323
  237. package/src/abi/concentrator/arUSD.json +0 -568
  238. package/src/abi/concentrator/arUSD5115.json +0 -1746
  239. package/src/abi/curve-v1/CurveBUSDv2.abi.json +0 -1356
  240. package/src/abi/curve-v1/CurveTokenV1.json +0 -305
  241. package/src/abi/curve-v1/CurveTokenV2.json +0 -318
  242. package/src/abi/curve-v1/CurveV1StableNg.json +0 -1452
  243. package/src/abi/curve-v1/CurveV2Swap.json +0 -700
  244. package/src/abi/curve-v1/FactoryCryptoRegistry.json +0 -316
  245. package/src/abi/curve-v1/FactoryRegistry.json +0 -508
  246. package/src/abi/curve-v1/StableSwap3Pool.json +0 -838
  247. package/src/abi/curve-v1/StableSwapAave.json +0 -1152
  248. package/src/abi/curve-v1/StableSwapBBTC.json +0 -1017
  249. package/src/abi/curve-v1/StableSwapBUSD.json +0 -814
  250. package/src/abi/curve-v1/StableSwapCompound.json +0 -814
  251. package/src/abi/curve-v1/StableSwapDUSD.json +0 -1004
  252. package/src/abi/curve-v1/StableSwapEURS.json +0 -868
  253. package/src/abi/curve-v1/StableSwapGUSD.json +0 -1004
  254. package/src/abi/curve-v1/StableSwapHBTC.json +0 -838
  255. package/src/abi/curve-v1/StableSwapHUSD.json +0 -1004
  256. package/src/abi/curve-v1/StableSwapIDLE.json +0 -1253
  257. package/src/abi/curve-v1/StableSwapLinkUSD.json +0 -1004
  258. package/src/abi/curve-v1/StableSwapMUSD.json +0 -1004
  259. package/src/abi/curve-v1/StableSwapOBTC.json +0 -1017
  260. package/src/abi/curve-v1/StableSwapPBTC.json +0 -1017
  261. package/src/abi/curve-v1/StableSwapPax.json +0 -865
  262. package/src/abi/curve-v1/StableSwapRSV.json +0 -1004
  263. package/src/abi/curve-v1/StableSwapRen.json +0 -851
  264. package/src/abi/curve-v1/StableSwapSBTC.json +0 -851
  265. package/src/abi/curve-v1/StableSwapSETH.json +0 -850
  266. package/src/abi/curve-v1/StableSwapSLINK.json +0 -899
  267. package/src/abi/curve-v1/StableSwapSTETH.json +0 -895
  268. package/src/abi/curve-v1/StableSwapSUSD.json +0 -760
  269. package/src/abi/curve-v1/StableSwapSnow.json +0 -900
  270. package/src/abi/curve-v1/StableSwapTBTC.json +0 -1017
  271. package/src/abi/curve-v1/StableSwapUSDK.json +0 -1004
  272. package/src/abi/curve-v1/StableSwapUSDN.json +0 -1004
  273. package/src/abi/curve-v1/StableSwapUSDT.json +0 -814
  274. package/src/abi/curve-v1/StableSwapUST.json +0 -1017
  275. package/src/abi/curve-v1/StableSwapY.json +0 -814
  276. package/src/abi/curve-v1-factory/CurveV1Router.abi.json +0 -331
  277. package/src/abi/curve-v1-factory/FactoryCurveV1.json +0 -508
  278. package/src/abi/curve-v1-factory/ThreePool.json +0 -468
  279. package/src/abi/curve-v2/GenericFactoryZap.json +0 -233
  280. package/src/abi/dexalot/DexalotMainnetRFQ.json +0 -952
  281. package/src/abi/dodo-v2-proxy.json +0 -565
  282. package/src/abi/ekubo/core.json +0 -1266
  283. package/src/abi/ekubo/data-fetcher.json +0 -161
  284. package/src/abi/ekubo/router.json +0 -803
  285. package/src/abi/erc20.json +0 -308
  286. package/src/abi/etherfi/eETHPool.json +0 -9
  287. package/src/abi/etherfi/weETH.json +0 -20
  288. package/src/abi/fluid-dex/dexFactory.abi.json +0 -506
  289. package/src/abi/fluid-dex/fluid-dex.abi.json +0 -1476
  290. package/src/abi/fluid-dex/liquidityUserModule.abi.json +0 -145
  291. package/src/abi/fluid-dex/resolver.abi.json +0 -2030
  292. package/src/abi/fx-protocol/FxMarket.json +0 -1284
  293. package/src/abi/fx-protocol/FxUSD.json +0 -1227
  294. package/src/abi/fx-protocol/weETHOralce.json +0 -676
  295. package/src/abi/gmx/fast-price-events.json +0 -70
  296. package/src/abi/gmx/fast-price-feed.json +0 -748
  297. package/src/abi/gmx/reader.json +0 -337
  298. package/src/abi/gmx/vault-price-feed.json +0 -477
  299. package/src/abi/gmx/vault.json +0 -2002
  300. package/src/abi/hashflow/HashflowRouter.abi.json +0 -1539
  301. package/src/abi/idle-dao/idle-cdo-factory.json +0 -38
  302. package/src/abi/idle-dao/idle-cdo.json +0 -1245
  303. package/src/abi/infusion/InfusionFactory.json +0 -147
  304. package/src/abi/infusion/InfusionPair.json +0 -658
  305. package/src/abi/infusion/InfusionRouter.json +0 -442
  306. package/src/abi/jarvis/ChainlinkAccessControlledOffchainAggregator.json +0 -1009
  307. package/src/abi/jarvis/SynthereumPriceFeed.json +0 -381
  308. package/src/abi/jarvis/jarvis-v6-pool.json +0 -1041
  309. package/src/abi/kyberdmm/kyber-dmm-exchange-router.abi.json +0 -1148
  310. package/src/abi/kyberdmm/kyber-dmm-factory.abi.json +0 -335
  311. package/src/abi/kyberdmm/kyber-dmm-pool.abi.json +0 -803
  312. package/src/abi/kyberdmm/kyber-storage.abi.json +0 -824
  313. package/src/abi/kyberdmm.abi.json +0 -1148
  314. package/src/abi/lite-psm/dai.json +0 -333
  315. package/src/abi/lite-psm/psm.json +0 -468
  316. package/src/abi/lite-psm/usdc.json +0 -814
  317. package/src/abi/lite-psm/usdsPsm.json +0 -163
  318. package/src/abi/m-token/WrappedM.abi.json +0 -1708
  319. package/src/abi/maker-psm/pot.json +0 -322
  320. package/src/abi/maker-psm/psm.json +0 -243
  321. package/src/abi/maker-psm/vat.json +0 -363
  322. package/src/abi/maverick-v1/pool-inspector.json +0 -216
  323. package/src/abi/maverick-v1/pool.json +0 -1111
  324. package/src/abi/maverick-v1/router.json +0 -389
  325. package/src/abi/maverick-v2/MaverickV2Pool.json +0 -1234
  326. package/src/abi/maverick-v2/MaverickV2PoolLens.json +0 -1232
  327. package/src/abi/maverick-v2/MaverickV2Quoter.json +0 -278
  328. package/src/abi/maverick-v2/MaverickV2Router.json +0 -778
  329. package/src/abi/multi-v2.json +0 -313
  330. package/src/abi/nerve/axial-pool.json +0 -693
  331. package/src/abi/nerve/iron-v2-pool.json +0 -785
  332. package/src/abi/nerve/nerve-metapool.json +0 -790
  333. package/src/abi/nerve/nerve-pool.json +0 -1035
  334. package/src/abi/nomiswap-v2/nomiswap-v2-pool.json +0 -773
  335. package/src/abi/oswap/oswap.abi.json +0 -452
  336. package/src/abi/pancakeswap-v3/PancakeV3StateMulticall.abi.json +0 -781
  337. package/src/abi/pancakeswap-v3/PancakeswapV3Factory.abi.json +0 -300
  338. package/src/abi/pancakeswap-v3/PancakeswapV3Pool.abi.json +0 -1039
  339. package/src/abi/pancakeswap-v3/PancakeswapV3Quoter.abi.json +0 -285
  340. package/src/abi/pancakeswap-v3/PancakeswapV3Router.abi.json +0 -583
  341. package/src/abi/paraswap-limit-orders/AugustusRFQ.abi.json +0 -1081
  342. package/src/abi/permit/IERC20Permit.json +0 -45
  343. package/src/abi/permit/IERC20PermitLegacy.json +0 -50
  344. package/src/abi/permit2.json +0 -581
  345. package/src/abi/polygon-migration/PolygonMigration.abi.json +0 -364
  346. package/src/abi/quick-perps/fast-price-events.json +0 -70
  347. package/src/abi/quick-perps/fast-price-feed.json +0 -741
  348. package/src/abi/quick-perps/reader.json +0 -313
  349. package/src/abi/quick-perps/vault-price-feed.json +0 -323
  350. package/src/abi/quick-perps/vault.json +0 -1953
  351. package/src/abi/ramses-v2/RamsesV2Pool.abi.json +0 -1599
  352. package/src/abi/rswETH.json +0 -1142
  353. package/src/abi/sdai/PSM3.abi.json +0 -721
  354. package/src/abi/sdai/SSRAuthOracle.abi.json +0 -522
  355. package/src/abi/sdai/SavingsDai.abi.json +0 -877
  356. package/src/abi/sdai/SavingsUSDS.abi.json +0 -720
  357. package/src/abi/sky-converter/DaiUsdsConverter.json +0 -116
  358. package/src/abi/sky-converter/MkrSkyConverter.json +0 -118
  359. package/src/abi/solidly/SolidlyFactory.json +0 -147
  360. package/src/abi/solidly/SolidlyPair.json +0 -658
  361. package/src/abi/solidly-v3/SolidlyV3Pool.abi.json +0 -738
  362. package/src/abi/solidly-v3/SolidlyV3StateMulticall.abi.json +0 -375
  363. package/src/abi/stETH.json +0 -735
  364. package/src/abi/stkGHO.json +0 -1131
  365. package/src/abi/swETH.json +0 -1086
  366. package/src/abi/swaap-v2/vault.json +0 -918
  367. package/src/abi/synthetix/CombinedSynthetix.abi.json +0 -422
  368. package/src/abi/uniswap-v2/biswap-pool.json +0 -501
  369. package/src/abi/uniswap-v2/excalibur-pool.json +0 -881
  370. package/src/abi/uniswap-v2/mdex-factory.json +0 -759
  371. package/src/abi/uniswap-v2/uniswap-v2-factory.json +0 -125
  372. package/src/abi/uniswap-v2/uniswap-v2-pool.json +0 -461
  373. package/src/abi/uniswap-v3/UniswapMulti.abi.json +0 -52
  374. package/src/abi/uniswap-v3/UniswapV3Factory.abi.json +0 -148
  375. package/src/abi/uniswap-v3/UniswapV3Pool.abi.json +0 -988
  376. package/src/abi/uniswap-v3/UniswapV3Quoter.abi.json +0 -193
  377. package/src/abi/uniswap-v3/UniswapV3QuoterV2.abi.json +0 -155
  378. package/src/abi/uniswap-v3/UniswapV3Router.abi.json +0 -274
  379. package/src/abi/uniswap-v3/UniswapV3StateMulticall.abi.json +0 -781
  380. package/src/abi/usual-bond/usd0pp.abi.json +0 -867
  381. package/src/abi/usual-m-usd0/usualCollateralDao.abi.json +0 -681
  382. package/src/abi/usual-m-wrapped-m/usualM.abi.json +0 -509
  383. package/src/abi/usual-pp/abi.json +0 -750
  384. package/src/abi/velodrome-slipstream/VelodromeSlipstreamFactory.abi.json +0 -579
  385. package/src/abi/velodrome-slipstream/VelodromeSlipstreamPool.abi.json +0 -1275
  386. package/src/abi/velodrome-slipstream/VelodromeSlipstreamQuoterV2.abi.json +0 -267
  387. package/src/abi/velodrome-slipstream/VelodromeSlipstreamStateMulticall.abi.json +0 -766
  388. package/src/abi/weth.abi.json +0 -153
  389. package/src/abi/wombat/asset.json +0 -743
  390. package/src/abi/wombat/bmw.json +0 -1247
  391. package/src/abi/wombat/pool-v2.json +0 -1289
  392. package/src/abi/wombat/pool-v3.json +0 -2013
  393. package/src/abi/woo-fi-v2/IntegrationHelper.abi.json +0 -116
  394. package/src/abi/woo-fi-v2/WooOracleV2.abi.json +0 -358
  395. package/src/abi/woo-fi-v2/WooPPV2.abi.json +0 -580
  396. package/src/abi/wstETH.json +0 -252
  397. package/src/bigint-constants.ts +0 -21
  398. package/src/bignumber-constants.ts +0 -20
  399. package/src/calldata-gas-cost.ts +0 -26
  400. package/src/composed-event-subscriber.ts +0 -131
  401. package/src/config.ts +0 -580
  402. package/src/constants.ts +0 -74
  403. package/src/dex/aave-gsm/aave-gsm-e2e.test.ts +0 -110
  404. package/src/dex/aave-gsm/aave-gsm-events.test.ts +0 -82
  405. package/src/dex/aave-gsm/aave-gsm-gas-estimation.test.ts +0 -32
  406. package/src/dex/aave-gsm/aave-gsm-integration.test.ts +0 -522
  407. package/src/dex/aave-gsm/aave-gsm-pool.ts +0 -225
  408. package/src/dex/aave-gsm/aave-gsm.ts +0 -431
  409. package/src/dex/aave-gsm/config.ts +0 -16
  410. package/src/dex/aave-gsm/types.ts +0 -24
  411. package/src/dex/aave-v2/aave-v2-e2e.test.ts +0 -287
  412. package/src/dex/aave-v2/aave-v2-gas-estimation.test.ts +0 -28
  413. package/src/dex/aave-v2/aave-v2-integration.test.ts +0 -100
  414. package/src/dex/aave-v2/aave-v2.ts +0 -409
  415. package/src/dex/aave-v2/config.ts +0 -56
  416. package/src/dex/aave-v2/tokenlist.json +0 -904
  417. package/src/dex/aave-v2/tokens.ts +0 -76
  418. package/src/dex/aave-v2/types.ts +0 -43
  419. package/src/dex/aave-v3/aave-v3-e2e.test.ts +0 -578
  420. package/src/dex/aave-v3/aave-v3-gas-estimation.test.ts +0 -66
  421. package/src/dex/aave-v3/aave-v3-integration.test.ts +0 -148
  422. package/src/dex/aave-v3/aave-v3.ts +0 -331
  423. package/src/dex/aave-v3/config.ts +0 -157
  424. package/src/dex/aave-v3/tokens.ts +0 -68
  425. package/src/dex/aave-v3/types.ts +0 -46
  426. package/src/dex/aave-v3/utils.ts +0 -153
  427. package/src/dex/aave-v3-stata/aave-v3-stata-e2e.test.ts +0 -355
  428. package/src/dex/aave-v3-stata/aave-v3-stata-gas-estimation.test.ts +0 -41
  429. package/src/dex/aave-v3-stata/aave-v3-stata-integration.test.ts +0 -282
  430. package/src/dex/aave-v3-stata/aave-v3-stata.ts +0 -530
  431. package/src/dex/aave-v3-stata/config.ts +0 -61
  432. package/src/dex/aave-v3-stata/tokens.ts +0 -48
  433. package/src/dex/aave-v3-stata/types.ts +0 -69
  434. package/src/dex/aave-v3-stata/utils.ts +0 -84
  435. package/src/dex/aave-v3-stata-v2/aave-v3-stata-v2-e2e.test.ts +0 -376
  436. package/src/dex/aave-v3-stata-v2/aave-v3-stata-v2-gas-estimation.test.ts +0 -41
  437. package/src/dex/aave-v3-stata-v2/aave-v3-stata-v2-integration.test.ts +0 -600
  438. package/src/dex/aave-v3-stata-v2/aave-v3-stata-v2.ts +0 -477
  439. package/src/dex/aave-v3-stata-v2/config.ts +0 -47
  440. package/src/dex/aave-v3-stata-v2/tokens.ts +0 -48
  441. package/src/dex/aave-v3-stata-v2/types.ts +0 -42
  442. package/src/dex/aave-v3-stata-v2/utils.ts +0 -96
  443. package/src/dex/algebra/algebra-e2e.test.ts +0 -313
  444. package/src/dex/algebra/algebra-events.test.ts +0 -186
  445. package/src/dex/algebra/algebra-factory.ts +0 -77
  446. package/src/dex/algebra/algebra-integration.test.ts +0 -558
  447. package/src/dex/algebra/algebra-pool-v1_1.ts +0 -853
  448. package/src/dex/algebra/algebra-pool-v1_9.ts +0 -614
  449. package/src/dex/algebra/algebra-pool-v1_9_bidirectional_fee.ts +0 -55
  450. package/src/dex/algebra/algebra.ts +0 -1141
  451. package/src/dex/algebra/config.ts +0 -128
  452. package/src/dex/algebra/constants.ts +0 -17
  453. package/src/dex/algebra/lib/AlgebraMath.ts +0 -706
  454. package/src/dex/algebra/lib/Constants.ts +0 -5
  455. package/src/dex/algebra/lib/TickManager.ts +0 -91
  456. package/src/dex/algebra/lib/TickTable.ts +0 -227
  457. package/src/dex/algebra/lib/yul-helper.ts +0 -29
  458. package/src/dex/algebra/scripts/validate-state.ts +0 -292
  459. package/src/dex/algebra/types.ts +0 -146
  460. package/src/dex/algebra/utils.ts +0 -217
  461. package/src/dex/angle-staked-stable/angle-staked-stable-e2e.test.ts +0 -146
  462. package/src/dex/angle-staked-stable/angle-staked-stable-events.test.ts +0 -95
  463. package/src/dex/angle-staked-stable/angle-staked-stable-gas-estimation.test.ts +0 -29
  464. package/src/dex/angle-staked-stable/angle-staked-stable-integration.test.ts +0 -476
  465. package/src/dex/angle-staked-stable/angle-staked-stable-pool.ts +0 -325
  466. package/src/dex/angle-staked-stable/angle-staked-stable.ts +0 -356
  467. package/src/dex/angle-staked-stable/config.ts +0 -139
  468. package/src/dex/angle-staked-stable/types.ts +0 -16
  469. package/src/dex/angle-transmuter/angle-transmuter-e2e.test.ts +0 -156
  470. package/src/dex/angle-transmuter/angle-transmuter-events.test.ts +0 -365
  471. package/src/dex/angle-transmuter/angle-transmuter-gas-estimation.test.ts +0 -41
  472. package/src/dex/angle-transmuter/angle-transmuter-integration.test.ts +0 -390
  473. package/src/dex/angle-transmuter/angle-transmuter-pool.ts +0 -895
  474. package/src/dex/angle-transmuter/angle-transmuter.ts +0 -407
  475. package/src/dex/angle-transmuter/backedOracle.ts +0 -91
  476. package/src/dex/angle-transmuter/config.ts +0 -50
  477. package/src/dex/angle-transmuter/constants.ts +0 -138
  478. package/src/dex/angle-transmuter/morphoOracle.ts +0 -335
  479. package/src/dex/angle-transmuter/morphoVault.ts +0 -134
  480. package/src/dex/angle-transmuter/pyth.ts +0 -105
  481. package/src/dex/angle-transmuter/redstone.ts +0 -105
  482. package/src/dex/angle-transmuter/transmuter.ts +0 -619
  483. package/src/dex/angle-transmuter/types.ts +0 -203
  484. package/src/dex/angle-transmuter/utils.ts +0 -358
  485. package/src/dex/augustus-approvals.ts +0 -208
  486. package/src/dex/augustus-rfq.ts +0 -180
  487. package/src/dex/balancer-v1/balancer-pools.json +0 -33333
  488. package/src/dex/balancer-v1/balancer-v1-e2e.test.ts +0 -119
  489. package/src/dex/balancer-v1/balancer-v1-events.test.ts +0 -83
  490. package/src/dex/balancer-v1/balancer-v1-gas-estimation.test.ts +0 -29
  491. package/src/dex/balancer-v1/balancer-v1-integration.test.ts +0 -307
  492. package/src/dex/balancer-v1/balancer-v1-math.ts +0 -154
  493. package/src/dex/balancer-v1/balancer-v1-pool.ts +0 -232
  494. package/src/dex/balancer-v1/balancer-v1.ts +0 -578
  495. package/src/dex/balancer-v1/config.ts +0 -29
  496. package/src/dex/balancer-v1/optimizer.ts +0 -76
  497. package/src/dex/balancer-v1/types.ts +0 -100
  498. package/src/dex/balancer-v1/utils.ts +0 -57
  499. package/src/dex/balancer-v2/balancer-v2-e2e.test.ts +0 -1612
  500. package/src/dex/balancer-v2/balancer-v2-events.test.ts +0 -132
  501. package/src/dex/balancer-v2/balancer-v2-gas-estimation.test.ts +0 -98
  502. package/src/dex/balancer-v2/balancer-v2-gyro3.test.ts +0 -268
  503. package/src/dex/balancer-v2/balancer-v2-gyroE.test.ts +0 -401
  504. package/src/dex/balancer-v2/balancer-v2-integration.test.ts +0 -931
  505. package/src/dex/balancer-v2/balancer-v2-math.ts +0 -592
  506. package/src/dex/balancer-v2/balancer-v2.ts +0 -1724
  507. package/src/dex/balancer-v2/config.ts +0 -81
  508. package/src/dex/balancer-v2/constants.ts +0 -20
  509. package/src/dex/balancer-v2/optimizer.ts +0 -70
  510. package/src/dex/balancer-v2/pools/balancer-v2-pool.ts +0 -274
  511. package/src/dex/balancer-v2/pools/gyro/Gyro3Pool.ts +0 -255
  512. package/src/dex/balancer-v2/pools/gyro/GyroEPool.ts +0 -402
  513. package/src/dex/balancer-v2/pools/gyro/gyro-helpers.ts +0 -15
  514. package/src/dex/balancer-v2/pools/linear/LinearMath.ts +0 -286
  515. package/src/dex/balancer-v2/pools/linear/LinearPool.ts +0 -639
  516. package/src/dex/balancer-v2/pools/phantom-stable/PhantomStableMath.ts +0 -494
  517. package/src/dex/balancer-v2/pools/phantom-stable/PhantomStablePool.ts +0 -581
  518. package/src/dex/balancer-v2/pools/stable/StableMath.ts +0 -203
  519. package/src/dex/balancer-v2/pools/stable/StablePool.ts +0 -223
  520. package/src/dex/balancer-v2/pools/weighted/WeightedMath.ts +0 -84
  521. package/src/dex/balancer-v2/pools/weighted/WeightedPool.ts +0 -188
  522. package/src/dex/balancer-v2/queryOnChain.ts +0 -48
  523. package/src/dex/balancer-v2/types.ts +0 -215
  524. package/src/dex/balancer-v2/utils.ts +0 -212
  525. package/src/dex/balancer-v3/balancer-hooks-events.test.ts +0 -166
  526. package/src/dex/balancer-v3/balancer-stableSurge.test.ts +0 -110
  527. package/src/dex/balancer-v3/balancer-test-helpers.ts +0 -199
  528. package/src/dex/balancer-v3/balancer-v3-e2e.test.ts +0 -429
  529. package/src/dex/balancer-v3/balancer-v3-events.test.ts +0 -296
  530. package/src/dex/balancer-v3/balancer-v3-gas-estimation.test.ts +0 -30
  531. package/src/dex/balancer-v3/balancer-v3-integration.test.ts +0 -1008
  532. package/src/dex/balancer-v3/balancer-v3-pool.ts +0 -761
  533. package/src/dex/balancer-v3/balancer-v3.ts +0 -655
  534. package/src/dex/balancer-v3/config.ts +0 -93
  535. package/src/dex/balancer-v3/getGasCost.ts +0 -37
  536. package/src/dex/balancer-v3/getOnChainState.ts +0 -397
  537. package/src/dex/balancer-v3/getPoolsApi.ts +0 -148
  538. package/src/dex/balancer-v3/getTopPoolsApi.ts +0 -112
  539. package/src/dex/balancer-v3/hooks/balancer-hook-event-subscriber.ts +0 -212
  540. package/src/dex/balancer-v3/hooks/directionalFeeHook.ts +0 -51
  541. package/src/dex/balancer-v3/hooks/loadHooksConfig.ts +0 -12
  542. package/src/dex/balancer-v3/hooks/stableSurgeHook.ts +0 -198
  543. package/src/dex/balancer-v3/optimizer.ts +0 -66
  544. package/src/dex/balancer-v3/stablePool.ts +0 -78
  545. package/src/dex/balancer-v3/types.ts +0 -89
  546. package/src/dex/balancer-v3/weightedPool.ts +0 -2
  547. package/src/dex/bancor/bancor-e2e.test.ts +0 -91
  548. package/src/dex/bancor/bancor-gas-estimation.test.ts +0 -30
  549. package/src/dex/bancor/bancor.ts +0 -128
  550. package/src/dex/bancor/config.ts +0 -9
  551. package/src/dex/bancor/types.ts +0 -19
  552. package/src/dex/bebop/bebop-e2e.test.ts +0 -228
  553. package/src/dex/bebop/bebop-gas-estimation.test.ts +0 -30
  554. package/src/dex/bebop/bebop-integration.test.ts +0 -182
  555. package/src/dex/bebop/bebop.json +0 -72
  556. package/src/dex/bebop/bebop.proto +0 -15
  557. package/src/dex/bebop/bebop.ts +0 -930
  558. package/src/dex/bebop/config.ts +0 -42
  559. package/src/dex/bebop/constants.ts +0 -20
  560. package/src/dex/bebop/rate-fetcher.ts +0 -168
  561. package/src/dex/bebop/types.ts +0 -95
  562. package/src/dex/bebop/validators.ts +0 -39
  563. package/src/dex/cables/cables-e2e.test.ts +0 -207
  564. package/src/dex/cables/cables-integration.test.ts +0 -391
  565. package/src/dex/cables/cables.ts +0 -857
  566. package/src/dex/cables/config.ts +0 -13
  567. package/src/dex/cables/constants.ts +0 -33
  568. package/src/dex/cables/rate-fetcher.ts +0 -212
  569. package/src/dex/cables/types.ts +0 -113
  570. package/src/dex/cables/validators.test.ts +0 -151
  571. package/src/dex/cables/validators.ts +0 -61
  572. package/src/dex/camelot/camelot-e2e.test.ts +0 -161
  573. package/src/dex/camelot/camelot-integration.test.ts +0 -215
  574. package/src/dex/camelot/camelot-pool-discovery.test.ts +0 -149
  575. package/src/dex/camelot/camelot.ts +0 -882
  576. package/src/dex/camelot/config.ts +0 -23
  577. package/src/dex/camelot/types.ts +0 -15
  578. package/src/dex/compound/compound-e2e.test.ts +0 -91
  579. package/src/dex/compound/compound.ts +0 -112
  580. package/src/dex/compound/types.ts +0 -10
  581. package/src/dex/concentrator-arusd/concentrator-arusd-e2e.test.ts +0 -92
  582. package/src/dex/concentrator-arusd/concentrator-arusd-event.ts +0 -100
  583. package/src/dex/concentrator-arusd/concentrator-arusd-gas-estimation.test.ts +0 -29
  584. package/src/dex/concentrator-arusd/concentrator-arusd-integration.test.ts +0 -104
  585. package/src/dex/concentrator-arusd/concentrator-arusd.ts +0 -269
  586. package/src/dex/concentrator-arusd/concetrator-arusd-events.test.ts +0 -97
  587. package/src/dex/concentrator-arusd/config.ts +0 -13
  588. package/src/dex/concentrator-arusd/types.ts +0 -16
  589. package/src/dex/concentrator-arusd/utils.ts +0 -36
  590. package/src/dex/curve-v1/config.ts +0 -1181
  591. package/src/dex/curve-v1/constants.ts +0 -12
  592. package/src/dex/curve-v1/curve-v1-e2e.test.ts +0 -587
  593. package/src/dex/curve-v1/curve-v1-events.test.ts +0 -335
  594. package/src/dex/curve-v1/curve-v1-gas-estimation.test.ts +0 -29
  595. package/src/dex/curve-v1/curve-v1-integration.test.ts +0 -143
  596. package/src/dex/curve-v1/curve-v1.ts +0 -1315
  597. package/src/dex/curve-v1/forks/curve-forks/config.ts +0 -177
  598. package/src/dex/curve-v1/forks/curve-forks/curve-forks.ts +0 -73
  599. package/src/dex/curve-v1/forks/swerve/config.ts +0 -47
  600. package/src/dex/curve-v1/forks/swerve/swerve.ts +0 -68
  601. package/src/dex/curve-v1/packer.ts +0 -17
  602. package/src/dex/curve-v1/pools/3pool.ts +0 -313
  603. package/src/dex/curve-v1/pools/DUSDpool.ts +0 -52
  604. package/src/dex/curve-v1/pools/EURSpool.ts +0 -37
  605. package/src/dex/curve-v1/pools/GUSDpool.ts +0 -52
  606. package/src/dex/curve-v1/pools/HUSDpool.ts +0 -52
  607. package/src/dex/curve-v1/pools/LinkUSDpool.ts +0 -52
  608. package/src/dex/curve-v1/pools/MUSDpool.ts +0 -52
  609. package/src/dex/curve-v1/pools/bBTCpool.ts +0 -52
  610. package/src/dex/curve-v1/pools/curve-metapool.ts +0 -1113
  611. package/src/dex/curve-v1/pools/curve-pool.ts +0 -489
  612. package/src/dex/curve-v1/pools/getstate-multicall.ts +0 -156
  613. package/src/dex/curve-v1/pools/hBTCpool.ts +0 -37
  614. package/src/dex/curve-v1/pools/oBTCpool.ts +0 -52
  615. package/src/dex/curve-v1/pools/pBTCpool.ts +0 -52
  616. package/src/dex/curve-v1/pools/renpool.ts +0 -38
  617. package/src/dex/curve-v1/pools/rsvpool.ts +0 -52
  618. package/src/dex/curve-v1/pools/sBTCpool.ts +0 -38
  619. package/src/dex/curve-v1/pools/sETHpool.ts +0 -69
  620. package/src/dex/curve-v1/pools/sLinkpool.ts +0 -37
  621. package/src/dex/curve-v1/pools/sUSDpool.ts +0 -133
  622. package/src/dex/curve-v1/pools/stETHpool.ts +0 -52
  623. package/src/dex/curve-v1/pools/tBTCpool.ts +0 -52
  624. package/src/dex/curve-v1/pools/usdkpool.ts +0 -52
  625. package/src/dex/curve-v1/pools/usdnpool.ts +0 -59
  626. package/src/dex/curve-v1/pools/ustpool.ts +0 -52
  627. package/src/dex/curve-v1/types.ts +0 -88
  628. package/src/dex/curve-v1-factory/config.ts +0 -1004
  629. package/src/dex/curve-v1-factory/constants.ts +0 -41
  630. package/src/dex/curve-v1-factory/curve-v1-factory-e2e.test.ts +0 -441
  631. package/src/dex/curve-v1-factory/curve-v1-factory-integration.test.ts +0 -827
  632. package/src/dex/curve-v1-factory/curve-v1-factory-node-cache.ts +0 -10
  633. package/src/dex/curve-v1-factory/curve-v1-factory.ts +0 -1567
  634. package/src/dex/curve-v1-factory/curve-v1-pool-manager.ts +0 -449
  635. package/src/dex/curve-v1-factory/optimizer.ts +0 -57
  636. package/src/dex/curve-v1-factory/price-handlers/functions/_calc_withdraw_one_coin.ts +0 -292
  637. package/src/dex/curve-v1-factory/price-handlers/functions/_dynamic_fee.ts +0 -103
  638. package/src/dex/curve-v1-factory/price-handlers/functions/_rates.ts +0 -116
  639. package/src/dex/curve-v1-factory/price-handlers/functions/_xp.ts +0 -114
  640. package/src/dex/curve-v1-factory/price-handlers/functions/_xp_mem.ts +0 -103
  641. package/src/dex/curve-v1-factory/price-handlers/functions/calc_token_amount.ts +0 -230
  642. package/src/dex/curve-v1-factory/price-handlers/functions/calc_withdraw_one_coin.ts +0 -90
  643. package/src/dex/curve-v1-factory/price-handlers/functions/constants.ts +0 -604
  644. package/src/dex/curve-v1-factory/price-handlers/functions/get_D.ts +0 -386
  645. package/src/dex/curve-v1-factory/price-handlers/functions/get_D_mem.ts +0 -148
  646. package/src/dex/curve-v1-factory/price-handlers/functions/get_D_precisions.ts +0 -120
  647. package/src/dex/curve-v1-factory/price-handlers/functions/get_dx.ts +0 -145
  648. package/src/dex/curve-v1-factory/price-handlers/functions/get_dy.ts +0 -327
  649. package/src/dex/curve-v1-factory/price-handlers/functions/get_dy_underlying.ts +0 -293
  650. package/src/dex/curve-v1-factory/price-handlers/functions/get_y.ts +0 -262
  651. package/src/dex/curve-v1-factory/price-handlers/functions/get_y_D.ts +0 -183
  652. package/src/dex/curve-v1-factory/price-handlers/functions/utils.ts +0 -76
  653. package/src/dex/curve-v1-factory/price-handlers/price-handler.ts +0 -130
  654. package/src/dex/curve-v1-factory/price-handlers/types.ts +0 -142
  655. package/src/dex/curve-v1-factory/state-polling-pools/custom-pool-polling.ts +0 -301
  656. package/src/dex/curve-v1-factory/state-polling-pools/factory-pool-polling.ts +0 -227
  657. package/src/dex/curve-v1-factory/state-polling-pools/polling-manager.ts +0 -266
  658. package/src/dex/curve-v1-factory/state-polling-pools/pool-polling-base.ts +0 -181
  659. package/src/dex/curve-v1-factory/types.ts +0 -286
  660. package/src/dex/curve-v1-stable-ng/config.ts +0 -315
  661. package/src/dex/curve-v1-stable-ng/curve-v1-stable-ng-e2e.test.ts +0 -219
  662. package/src/dex/curve-v1-stable-ng/curve-v1-stable-ng-integration.test.ts +0 -567
  663. package/src/dex/curve-v1-stable-ng/curve-v1-stable-ng.ts +0 -33
  664. package/src/dex/curve-v2/constants.ts +0 -1
  665. package/src/dex/curve-v2/curve-v2-e2e.test.ts +0 -104
  666. package/src/dex/curve-v2/curve-v2-gas-estimation.test.ts +0 -29
  667. package/src/dex/curve-v2/curve-v2.ts +0 -440
  668. package/src/dex/curve-v2/types.ts +0 -27
  669. package/src/dex/dexalot/config.ts +0 -28
  670. package/src/dex/dexalot/constants.ts +0 -32
  671. package/src/dex/dexalot/dexalot-e2e.test.ts +0 -260
  672. package/src/dex/dexalot/dexalot-integration.test.ts +0 -431
  673. package/src/dex/dexalot/dexalot.ts +0 -1114
  674. package/src/dex/dexalot/rate-fetcher.ts +0 -197
  675. package/src/dex/dexalot/types.ts +0 -131
  676. package/src/dex/dexalot/validators.ts +0 -46
  677. package/src/dex/dodo-v1/config.ts +0 -15
  678. package/src/dex/dodo-v1/dodo-v1-e2e.test.ts +0 -101
  679. package/src/dex/dodo-v1/dodo-v1.ts +0 -132
  680. package/src/dex/dodo-v1/types.ts +0 -25
  681. package/src/dex/dodo-v2.ts +0 -266
  682. package/src/dex/ekubo/config.ts +0 -15
  683. package/src/dex/ekubo/ekubo-e2e.test.ts +0 -124
  684. package/src/dex/ekubo/ekubo-events.test.ts +0 -209
  685. package/src/dex/ekubo/ekubo-integration.test.ts +0 -243
  686. package/src/dex/ekubo/ekubo.ts +0 -628
  687. package/src/dex/ekubo/pools/base-pool.ts +0 -267
  688. package/src/dex/ekubo/pools/math/constants.ts +0 -5
  689. package/src/dex/ekubo/pools/math/delta.test.ts +0 -131
  690. package/src/dex/ekubo/pools/math/delta.ts +0 -68
  691. package/src/dex/ekubo/pools/math/price.test.ts +0 -54
  692. package/src/dex/ekubo/pools/math/price.ts +0 -129
  693. package/src/dex/ekubo/pools/math/swap.test.ts +0 -215
  694. package/src/dex/ekubo/pools/math/swap.ts +0 -161
  695. package/src/dex/ekubo/pools/math/tick.test.ts +0 -72
  696. package/src/dex/ekubo/pools/math/tick.ts +0 -120
  697. package/src/dex/ekubo/pools/oracle-pool.ts +0 -46
  698. package/src/dex/ekubo/pools/pool-utils.ts +0 -348
  699. package/src/dex/ekubo/types.test.ts +0 -552
  700. package/src/dex/ekubo/types.ts +0 -55
  701. package/src/dex/ekubo/utils.ts +0 -34
  702. package/src/dex/erc4626/config.ts +0 -41
  703. package/src/dex/erc4626/constants.ts +0 -6
  704. package/src/dex/erc4626/erc-4626-pool.ts +0 -132
  705. package/src/dex/erc4626/erc4626-e2e.test.ts +0 -224
  706. package/src/dex/erc4626/erc4626-event.test.ts +0 -128
  707. package/src/dex/erc4626/erc4626-gas-estimation.test.ts +0 -41
  708. package/src/dex/erc4626/erc4626-integration.test.ts +0 -164
  709. package/src/dex/erc4626/erc4626.ts +0 -333
  710. package/src/dex/erc4626/types.ts +0 -26
  711. package/src/dex/etherfi.ts +0 -244
  712. package/src/dex/fluid-dex/config.ts +0 -27
  713. package/src/dex/fluid-dex/constants.ts +0 -2
  714. package/src/dex/fluid-dex/fluid-dex-e2e.test.ts +0 -311
  715. package/src/dex/fluid-dex/fluid-dex-events.test.ts +0 -179
  716. package/src/dex/fluid-dex/fluid-dex-factory.ts +0 -151
  717. package/src/dex/fluid-dex/fluid-dex-gas-estimation.test.ts +0 -29
  718. package/src/dex/fluid-dex/fluid-dex-integration.test.ts +0 -355
  719. package/src/dex/fluid-dex/fluid-dex-liquidity-proxy.ts +0 -210
  720. package/src/dex/fluid-dex/fluid-dex-pool.ts +0 -138
  721. package/src/dex/fluid-dex/fluid-dex.ts +0 -1169
  722. package/src/dex/fluid-dex/types.ts +0 -104
  723. package/src/dex/fluid-dex/utils.ts +0 -15
  724. package/src/dex/fx-protocol-rusd/config.ts +0 -14
  725. package/src/dex/fx-protocol-rusd/fx-protocol-e2e.test.ts +0 -96
  726. package/src/dex/fx-protocol-rusd/fx-protocol-events.test.ts +0 -101
  727. package/src/dex/fx-protocol-rusd/fx-protocol-integration.test.ts +0 -104
  728. package/src/dex/fx-protocol-rusd/fx-protocol-rusd-event.ts +0 -112
  729. package/src/dex/fx-protocol-rusd/fx-protocol-rusd-gas-estimation.test.ts +0 -29
  730. package/src/dex/fx-protocol-rusd/fx-protocol-rusd.ts +0 -282
  731. package/src/dex/fx-protocol-rusd/types.ts +0 -16
  732. package/src/dex/fx-protocol-rusd/utils.ts +0 -47
  733. package/src/dex/generic-rfq/e2e-test-config.ts +0 -25
  734. package/src/dex/generic-rfq/example-api.test.ts +0 -233
  735. package/src/dex/generic-rfq/fetch-mm-api.ts +0 -284
  736. package/src/dex/generic-rfq/generic-rfq-e2e.test.ts +0 -118
  737. package/src/dex/generic-rfq/generic-rfq-integration.test.ts +0 -235
  738. package/src/dex/generic-rfq/generic-rfq-local-e2e.test.ts +0 -107
  739. package/src/dex/generic-rfq/generic-rfq.ts +0 -463
  740. package/src/dex/generic-rfq/rate-fetcher.ts +0 -491
  741. package/src/dex/generic-rfq/security.ts +0 -55
  742. package/src/dex/generic-rfq/types.ts +0 -120
  743. package/src/dex/generic-rfq/utils.ts +0 -74
  744. package/src/dex/generic-rfq/validators.test.ts +0 -245
  745. package/src/dex/generic-rfq/validators.ts +0 -189
  746. package/src/dex/gmx/config.ts +0 -81
  747. package/src/dex/gmx/fast-price-feed.ts +0 -279
  748. package/src/dex/gmx/gmx-e2e.test.ts +0 -322
  749. package/src/dex/gmx/gmx-events.test.ts +0 -114
  750. package/src/dex/gmx/gmx-integration.test.ts +0 -211
  751. package/src/dex/gmx/gmx.ts +0 -321
  752. package/src/dex/gmx/pool.ts +0 -360
  753. package/src/dex/gmx/types.ts +0 -94
  754. package/src/dex/gmx/usdg.ts +0 -83
  755. package/src/dex/gmx/vault-price-feed.ts +0 -384
  756. package/src/dex/gmx/vault-utils.ts +0 -53
  757. package/src/dex/gmx/vault.ts +0 -290
  758. package/src/dex/hashflow/config.ts +0 -56
  759. package/src/dex/hashflow/constants.ts +0 -54
  760. package/src/dex/hashflow/hashflow-e2e.test.ts +0 -351
  761. package/src/dex/hashflow/hashflow-gas-estimation.test.ts +0 -30
  762. package/src/dex/hashflow/hashflow-integration.test.ts +0 -157
  763. package/src/dex/hashflow/hashflow.ts +0 -1119
  764. package/src/dex/hashflow/rate-fetcher.ts +0 -118
  765. package/src/dex/hashflow/types.ts +0 -83
  766. package/src/dex/hashflow/validators.ts +0 -38
  767. package/src/dex/idex.ts +0 -268
  768. package/src/dex/idle-dao/config.ts +0 -26
  769. package/src/dex/idle-dao/idle-dao--gas-estimation.test.ts +0 -30
  770. package/src/dex/idle-dao/idle-dao-e2e.test.ts +0 -112
  771. package/src/dex/idle-dao/idle-dao-integration.test.ts +0 -155
  772. package/src/dex/idle-dao/idle-dao.ts +0 -402
  773. package/src/dex/idle-dao/token_list.ts +0 -287
  774. package/src/dex/idle-dao/tokens.ts +0 -99
  775. package/src/dex/idle-dao/types.ts +0 -43
  776. package/src/dex/idle-dao/utils.ts +0 -216
  777. package/src/dex/index.ts +0 -402
  778. package/src/dex/infusion/config.ts +0 -21
  779. package/src/dex/infusion/infusion-e2e.test.ts +0 -110
  780. package/src/dex/infusion/infusion-integration.test.ts +0 -232
  781. package/src/dex/infusion/infusion-stable-pool.ts +0 -91
  782. package/src/dex/infusion/infusion.ts +0 -652
  783. package/src/dex/infusion/types.ts +0 -60
  784. package/src/dex/infusion/utils/isStablePair.ts +0 -18
  785. package/src/dex/jarvis-v6/chainLinkpriceFeed-event.ts +0 -76
  786. package/src/dex/jarvis-v6/config.ts +0 -261
  787. package/src/dex/jarvis-v6/jarvis-v6-e2e.test.ts +0 -113
  788. package/src/dex/jarvis-v6/jarvis-v6-events.test.ts +0 -67
  789. package/src/dex/jarvis-v6/jarvis-v6-events.ts +0 -67
  790. package/src/dex/jarvis-v6/jarvis-v6-integration.test.ts +0 -111
  791. package/src/dex/jarvis-v6/jarvis-v6.ts +0 -509
  792. package/src/dex/jarvis-v6/syntheteumPool-event.ts +0 -68
  793. package/src/dex/jarvis-v6/types.ts +0 -59
  794. package/src/dex/jarvis-v6/utils.ts +0 -127
  795. package/src/dex/kyberdmm/config.ts +0 -61
  796. package/src/dex/kyberdmm/fee-formula.ts +0 -113
  797. package/src/dex/kyberdmm/kyberdmm-e2e.test.ts +0 -325
  798. package/src/dex/kyberdmm/kyberdmm-events.test.ts +0 -123
  799. package/src/dex/kyberdmm/kyberdmm-integration.test.ts +0 -93
  800. package/src/dex/kyberdmm/kyberdmm.ts +0 -649
  801. package/src/dex/kyberdmm/math-ext.ts +0 -29
  802. package/src/dex/kyberdmm/pool.ts +0 -226
  803. package/src/dex/kyberdmm/types.ts +0 -85
  804. package/src/dex/lido/config.ts +0 -5
  805. package/src/dex/lido/lido-e2e.test.ts +0 -81
  806. package/src/dex/lido/lido-gas-estimation.test.ts +0 -29
  807. package/src/dex/lido/lido.ts +0 -110
  808. package/src/dex/lido/types.ts +0 -5
  809. package/src/dex/limit-order-exchange.ts +0 -40
  810. package/src/dex/lite-psm/config.ts +0 -33
  811. package/src/dex/lite-psm/lite-psm-e2e.test.ts +0 -146
  812. package/src/dex/lite-psm/lite-psm-event-pool.ts +0 -216
  813. package/src/dex/lite-psm/lite-psm-events.test.ts +0 -61
  814. package/src/dex/lite-psm/lite-psm-gas-estimation.test.ts +0 -34
  815. package/src/dex/lite-psm/lite-psm-integration.test.ts +0 -99
  816. package/src/dex/lite-psm/lite-psm.ts +0 -540
  817. package/src/dex/lite-psm/types.ts +0 -47
  818. package/src/dex/maker-psm/config.ts +0 -59
  819. package/src/dex/maker-psm/maker-psm-e2e.test.ts +0 -83
  820. package/src/dex/maker-psm/maker-psm-events.test.ts +0 -63
  821. package/src/dex/maker-psm/maker-psm-gas-estimation.test.ts +0 -34
  822. package/src/dex/maker-psm/maker-psm-integration.test.ts +0 -99
  823. package/src/dex/maker-psm/maker-psm.ts +0 -722
  824. package/src/dex/maker-psm/types.ts +0 -45
  825. package/src/dex/maverick-v1/config.ts +0 -33
  826. package/src/dex/maverick-v1/constants.ts +0 -1
  827. package/src/dex/maverick-v1/maverick-math/maverick-basic-math.ts +0 -187
  828. package/src/dex/maverick-v1/maverick-math/maverick-bin-map.ts +0 -182
  829. package/src/dex/maverick-v1/maverick-math/maverick-pool-math.test.ts +0 -680
  830. package/src/dex/maverick-v1/maverick-math/maverick-pool-math.ts +0 -562
  831. package/src/dex/maverick-v1/maverick-v1-e2e.test.ts +0 -346
  832. package/src/dex/maverick-v1/maverick-v1-events.test.ts +0 -112
  833. package/src/dex/maverick-v1/maverick-v1-gas-estimation.test.ts +0 -29
  834. package/src/dex/maverick-v1/maverick-v1-integration.test.ts +0 -170
  835. package/src/dex/maverick-v1/maverick-v1-pool.ts +0 -394
  836. package/src/dex/maverick-v1/maverick-v1.ts +0 -536
  837. package/src/dex/maverick-v1/subgraph-queries.ts +0 -60
  838. package/src/dex/maverick-v1/types.ts +0 -83
  839. package/src/dex/maverick-v2/config.ts +0 -32
  840. package/src/dex/maverick-v2/maverick-math/maverick-basic-math.ts +0 -152
  841. package/src/dex/maverick-v2/maverick-math/maverick-bin-math.ts +0 -288
  842. package/src/dex/maverick-v2/maverick-math/maverick-delta-math.ts +0 -32
  843. package/src/dex/maverick-v2/maverick-math/maverick-math.ts +0 -30
  844. package/src/dex/maverick-v2/maverick-math/maverick-pool-lib.ts +0 -42
  845. package/src/dex/maverick-v2/maverick-math/maverick-pool-math.ts +0 -714
  846. package/src/dex/maverick-v2/maverick-math/maverick-swap-math.ts +0 -199
  847. package/src/dex/maverick-v2/maverick-math/maverick-tick-math.ts +0 -171
  848. package/src/dex/maverick-v2/maverick-math/maverick-twa-math.ts +0 -54
  849. package/src/dex/maverick-v2/maverick-v2-e2e.test.ts +0 -171
  850. package/src/dex/maverick-v2/maverick-v2-events.test.ts +0 -112
  851. package/src/dex/maverick-v2/maverick-v2-gas-estimation.test.ts +0 -29
  852. package/src/dex/maverick-v2/maverick-v2-integration.test.ts +0 -287
  853. package/src/dex/maverick-v2/maverick-v2-pool.ts +0 -369
  854. package/src/dex/maverick-v2/maverick-v2.ts +0 -409
  855. package/src/dex/maverick-v2/types.ts +0 -155
  856. package/src/dex/nerve/config.ts +0 -635
  857. package/src/dex/nerve/nerve-e2e.test.ts +0 -731
  858. package/src/dex/nerve/nerve-events.test.ts +0 -911
  859. package/src/dex/nerve/nerve-integration.test.ts +0 -73
  860. package/src/dex/nerve/nerve-math.ts +0 -304
  861. package/src/dex/nerve/nerve-metapool.ts +0 -203
  862. package/src/dex/nerve/nerve-pool.ts +0 -425
  863. package/src/dex/nerve/nerve.ts +0 -467
  864. package/src/dex/nerve/types.ts +0 -65
  865. package/src/dex/nerve/utils.ts +0 -39
  866. package/src/dex/oswap/config.ts +0 -32
  867. package/src/dex/oswap/oswap-e2e.test.ts +0 -91
  868. package/src/dex/oswap/oswap-events.test.ts +0 -88
  869. package/src/dex/oswap/oswap-integration.test.ts +0 -291
  870. package/src/dex/oswap/oswap-pool.ts +0 -190
  871. package/src/dex/oswap/oswap.ts +0 -414
  872. package/src/dex/oswap/types.ts +0 -29
  873. package/src/dex/pancakeswap-v3/config.ts +0 -119
  874. package/src/dex/pancakeswap-v3/constants.ts +0 -36
  875. package/src/dex/pancakeswap-v3/contract-math/BitMath.ts +0 -90
  876. package/src/dex/pancakeswap-v3/contract-math/FixedPoint128.ts +0 -3
  877. package/src/dex/pancakeswap-v3/contract-math/FixedPoint96.ts +0 -4
  878. package/src/dex/pancakeswap-v3/contract-math/FullMath.ts +0 -30
  879. package/src/dex/pancakeswap-v3/contract-math/LiquidityMath.ts +0 -17
  880. package/src/dex/pancakeswap-v3/contract-math/Oracle.ts +0 -226
  881. package/src/dex/pancakeswap-v3/contract-math/SqrtPriceMath.ts +0 -226
  882. package/src/dex/pancakeswap-v3/contract-math/SwapMath.ts +0 -139
  883. package/src/dex/pancakeswap-v3/contract-math/Tick.ts +0 -82
  884. package/src/dex/pancakeswap-v3/contract-math/TickBitMap.ts +0 -128
  885. package/src/dex/pancakeswap-v3/contract-math/TickMath.ts +0 -211
  886. package/src/dex/pancakeswap-v3/contract-math/UnsafeMath.ts +0 -5
  887. package/src/dex/pancakeswap-v3/contract-math/pancakeswap-v3-math.ts +0 -687
  888. package/src/dex/pancakeswap-v3/contract-math/utils.ts +0 -11
  889. package/src/dex/pancakeswap-v3/pancakeswap-v3-e2e.test.ts +0 -459
  890. package/src/dex/pancakeswap-v3/pancakeswap-v3-events.test.ts +0 -124
  891. package/src/dex/pancakeswap-v3/pancakeswap-v3-factory.ts +0 -80
  892. package/src/dex/pancakeswap-v3/pancakeswap-v3-gas-estimation.test.ts +0 -29
  893. package/src/dex/pancakeswap-v3/pancakeswap-v3-integration.test.ts +0 -529
  894. package/src/dex/pancakeswap-v3/pancakeswap-v3-pool.ts +0 -555
  895. package/src/dex/pancakeswap-v3/pancakeswap-v3.ts +0 -1161
  896. package/src/dex/pancakeswap-v3/utils.ts +0 -65
  897. package/src/dex/paraswap-limit-orders/config.ts +0 -60
  898. package/src/dex/paraswap-limit-orders/constant.ts +0 -32
  899. package/src/dex/paraswap-limit-orders/paraswap-limit-orders-e2e.test.ts +0 -221
  900. package/src/dex/paraswap-limit-orders/paraswap-limit-orders-integration.test.ts +0 -328
  901. package/src/dex/paraswap-limit-orders/paraswap-limit-orders.ts +0 -634
  902. package/src/dex/paraswap-limit-orders/types.ts +0 -84
  903. package/src/dex/paraswap-limit-orders/utils.ts +0 -52
  904. package/src/dex/polygon-migrator/config.ts +0 -25
  905. package/src/dex/polygon-migrator/constants.ts +0 -1
  906. package/src/dex/polygon-migrator/polygon-migrator-e2e.test.ts +0 -98
  907. package/src/dex/polygon-migrator/polygon-migrator-gas-estimation.test.ts +0 -41
  908. package/src/dex/polygon-migrator/polygon-migrator-integration.test.ts +0 -139
  909. package/src/dex/polygon-migrator/polygon-migrator.ts +0 -194
  910. package/src/dex/polygon-migrator/types.ts +0 -14
  911. package/src/dex/quick-perps/config.ts +0 -31
  912. package/src/dex/quick-perps/fast-price-feed.ts +0 -279
  913. package/src/dex/quick-perps/pool.ts +0 -407
  914. package/src/dex/quick-perps/quick-perps-e2e.test.ts +0 -66
  915. package/src/dex/quick-perps/quick-perps-events.test.ts +0 -100
  916. package/src/dex/quick-perps/quick-perps-integration.test.ts +0 -153
  917. package/src/dex/quick-perps/quick-perps.ts +0 -337
  918. package/src/dex/quick-perps/types.ts +0 -97
  919. package/src/dex/quick-perps/usdq.ts +0 -83
  920. package/src/dex/quick-perps/vault-price-feed.ts +0 -322
  921. package/src/dex/quick-perps/vault-utils.ts +0 -53
  922. package/src/dex/quick-perps/vault.ts +0 -290
  923. package/src/dex/quickswap/config.ts +0 -16
  924. package/src/dex/quickswap/quickswap-e2e.test.ts +0 -384
  925. package/src/dex/quickswap/quickswap-v3.ts +0 -74
  926. package/src/dex/quickswap/thena-fusion.ts +0 -19
  927. package/src/dex/quickswap/types.ts +0 -5
  928. package/src/dex/simple-exchange.ts +0 -146
  929. package/src/dex/sky-converter/config.ts +0 -31
  930. package/src/dex/sky-converter/sky-converter-e2e.test.ts +0 -113
  931. package/src/dex/sky-converter/sky-converter-gas-estimation.test.ts +0 -78
  932. package/src/dex/sky-converter/sky-converter-integration.test.ts +0 -135
  933. package/src/dex/sky-converter/sky-converter.ts +0 -221
  934. package/src/dex/sky-converter/types.ts +0 -14
  935. package/src/dex/smoothy/smoothy-e2e.test.ts +0 -81
  936. package/src/dex/smoothy/smoothy.ts +0 -110
  937. package/src/dex/smoothy/types.ts +0 -18
  938. package/src/dex/solidly/config.ts +0 -218
  939. package/src/dex/solidly/forks-override/aerodrome.ts +0 -53
  940. package/src/dex/solidly/forks-override/chronos.ts +0 -231
  941. package/src/dex/solidly/forks-override/equalizer.ts +0 -58
  942. package/src/dex/solidly/forks-override/pharaohV1.ts +0 -10
  943. package/src/dex/solidly/forks-override/ramses.ts +0 -253
  944. package/src/dex/solidly/forks-override/spiritSwapV2.ts +0 -61
  945. package/src/dex/solidly/forks-override/thena.ts +0 -58
  946. package/src/dex/solidly/forks-override/usdfi.ts +0 -10
  947. package/src/dex/solidly/forks-override/velocimeter.ts +0 -58
  948. package/src/dex/solidly/forks-override/velodrome.ts +0 -58
  949. package/src/dex/solidly/forks-override/velodromeV2.ts +0 -63
  950. package/src/dex/solidly/solidly-e2e.test.ts +0 -1421
  951. package/src/dex/solidly/solidly-ethereum.ts +0 -61
  952. package/src/dex/solidly/solidly-gas-estimation.test.ts +0 -29
  953. package/src/dex/solidly/solidly-integration.test.ts +0 -1753
  954. package/src/dex/solidly/solidly-stable-pool.ts +0 -91
  955. package/src/dex/solidly/solidly.ts +0 -708
  956. package/src/dex/solidly/types.ts +0 -38
  957. package/src/dex/solidly-v3/config.ts +0 -118
  958. package/src/dex/solidly-v3/constants.ts +0 -42
  959. package/src/dex/solidly-v3/contract-math/BitMath.ts +0 -90
  960. package/src/dex/solidly-v3/contract-math/FixedPoint128.ts +0 -3
  961. package/src/dex/solidly-v3/contract-math/FixedPoint96.ts +0 -4
  962. package/src/dex/solidly-v3/contract-math/FullMath.ts +0 -30
  963. package/src/dex/solidly-v3/contract-math/LiquidityMath.ts +0 -17
  964. package/src/dex/solidly-v3/contract-math/SqrtPriceMath.ts +0 -226
  965. package/src/dex/solidly-v3/contract-math/SwapMath.ts +0 -139
  966. package/src/dex/solidly-v3/contract-math/Tick.ts +0 -63
  967. package/src/dex/solidly-v3/contract-math/TickBitMap.ts +0 -123
  968. package/src/dex/solidly-v3/contract-math/TickMath.ts +0 -211
  969. package/src/dex/solidly-v3/contract-math/UnsafeMath.ts +0 -5
  970. package/src/dex/solidly-v3/contract-math/uniswap-v3-math.ts +0 -562
  971. package/src/dex/solidly-v3/contract-math/utils.ts +0 -50
  972. package/src/dex/solidly-v3/solidly-v3-e2e.test.ts +0 -270
  973. package/src/dex/solidly-v3/solidly-v3-events.test.ts +0 -146
  974. package/src/dex/solidly-v3/solidly-v3-factory.ts +0 -80
  975. package/src/dex/solidly-v3/solidly-v3-gas-estimation.test.ts +0 -29
  976. package/src/dex/solidly-v3/solidly-v3-integration.test.ts +0 -358
  977. package/src/dex/solidly-v3/solidly-v3-pool.ts +0 -502
  978. package/src/dex/solidly-v3/solidly-v3.ts +0 -976
  979. package/src/dex/solidly-v3/types.ts +0 -157
  980. package/src/dex/solidly-v3/utils.ts +0 -71
  981. package/src/dex/spark/config.ts +0 -69
  982. package/src/dex/spark/constants.ts +0 -2
  983. package/src/dex/spark/scripts/validate-state.ts +0 -145
  984. package/src/dex/spark/spark-e2e.test.ts +0 -225
  985. package/src/dex/spark/spark-events.test.ts +0 -214
  986. package/src/dex/spark/spark-gas-estimation.test.ts +0 -29
  987. package/src/dex/spark/spark-integration.test.ts +0 -690
  988. package/src/dex/spark/spark-psm.ts +0 -361
  989. package/src/dex/spark/spark-sdai-pool.ts +0 -116
  990. package/src/dex/spark/spark.ts +0 -323
  991. package/src/dex/spark/types.ts +0 -54
  992. package/src/dex/spark/utils.ts +0 -151
  993. package/src/dex/stable-pool/stable-pool.ts +0 -129
  994. package/src/dex/stable-pool/stablepool-e2e.test.ts +0 -73
  995. package/src/dex/stable-pool/types.ts +0 -20
  996. package/src/dex/stader/config.ts +0 -13
  997. package/src/dex/stader/stader-e2e.test.ts +0 -74
  998. package/src/dex/stader/stader-events.test.ts +0 -64
  999. package/src/dex/stader/stader-gas-estimation.test.ts +0 -29
  1000. package/src/dex/stader/stader-integration.test.ts +0 -240
  1001. package/src/dex/stader/stader-pool.ts +0 -77
  1002. package/src/dex/stader/stader.ts +0 -240
  1003. package/src/dex/stader/types.ts +0 -16
  1004. package/src/dex/stader/utils.ts +0 -34
  1005. package/src/dex/stkgho/config.ts +0 -14
  1006. package/src/dex/stkgho/stkgho-e2e.test.ts +0 -77
  1007. package/src/dex/stkgho/stkgho-events.test.ts +0 -79
  1008. package/src/dex/stkgho/stkgho-gas-estimation.test.ts +0 -29
  1009. package/src/dex/stkgho/stkgho-integration.test.ts +0 -226
  1010. package/src/dex/stkgho/stkgho-pool.ts +0 -111
  1011. package/src/dex/stkgho/stkgho.ts +0 -223
  1012. package/src/dex/stkgho/types.ts +0 -14
  1013. package/src/dex/swaap-v2/config.ts +0 -42
  1014. package/src/dex/swaap-v2/constants.ts +0 -52
  1015. package/src/dex/swaap-v2/rate-fetcher.ts +0 -267
  1016. package/src/dex/swaap-v2/stable-coins.ts +0 -25
  1017. package/src/dex/swaap-v2/swaap-v2-e2e.test.ts +0 -584
  1018. package/src/dex/swaap-v2/swaap-v2-estimation.test.ts +0 -29
  1019. package/src/dex/swaap-v2/swaap-v2-integration.test.ts +0 -219
  1020. package/src/dex/swaap-v2/swaap-v2.ts +0 -1067
  1021. package/src/dex/swaap-v2/types.ts +0 -105
  1022. package/src/dex/swaap-v2/utils.ts +0 -46
  1023. package/src/dex/swaap-v2/validators.ts +0 -131
  1024. package/src/dex/swell/config.ts +0 -29
  1025. package/src/dex/swell/rsweth-pool.ts +0 -58
  1026. package/src/dex/swell/swell-e2e.test.ts +0 -56
  1027. package/src/dex/swell/swell-estimation.test.ts +0 -29
  1028. package/src/dex/swell/swell.ts +0 -312
  1029. package/src/dex/swell/sweth-pool.ts +0 -58
  1030. package/src/dex/swell/type.ts +0 -7
  1031. package/src/dex/swell/utils.ts +0 -53
  1032. package/src/dex/synthetix/config.ts +0 -55
  1033. package/src/dex/synthetix/constants.ts +0 -36
  1034. package/src/dex/synthetix/contract-math/DexPriceAggregatorUniswapV3.ts +0 -276
  1035. package/src/dex/synthetix/contract-math/ExchangeRates.ts +0 -117
  1036. package/src/dex/synthetix/contract-math/ExchangeRatesWithDexPricing.ts +0 -278
  1037. package/src/dex/synthetix/contract-math/FullMath.ts +0 -17
  1038. package/src/dex/synthetix/contract-math/OracleLibrary.ts +0 -109
  1039. package/src/dex/synthetix/contract-math/SafeDecimalMath.ts +0 -49
  1040. package/src/dex/synthetix/contract-math/TickMath.ts +0 -72
  1041. package/src/dex/synthetix/contract-math/synthetix-math.ts +0 -266
  1042. package/src/dex/synthetix/synthetix-e2e.test.ts +0 -174
  1043. package/src/dex/synthetix/synthetix-integration.test.ts +0 -293
  1044. package/src/dex/synthetix/synthetix-state.ts +0 -970
  1045. package/src/dex/synthetix/synthetix.ts +0 -420
  1046. package/src/dex/synthetix/types.ts +0 -121
  1047. package/src/dex/synthetix/utils.ts +0 -125
  1048. package/src/dex/trader-joe-v2.1/base.ts +0 -167
  1049. package/src/dex/trader-joe-v2.1/config.ts +0 -14
  1050. package/src/dex/trader-joe-v2.1/trader-joe-v2.1-e2e.test.ts +0 -101
  1051. package/src/dex/trader-joe-v2.1/trader-joe-v2.1-gas-estimation.test.ts +0 -29
  1052. package/src/dex/trader-joe-v2.1/trader-joe-v2.1.ts +0 -23
  1053. package/src/dex/trader-joe-v2.1/trader-joe-v2.2.ts +0 -23
  1054. package/src/dex/trader-joe-v2.1/types.ts +0 -38
  1055. package/src/dex/uniswap-v2/biswap.ts +0 -61
  1056. package/src/dex/uniswap-v2/config.ts +0 -626
  1057. package/src/dex/uniswap-v2/constants.ts +0 -58
  1058. package/src/dex/uniswap-v2/dfyn.ts +0 -128
  1059. package/src/dex/uniswap-v2/excalibur.ts +0 -63
  1060. package/src/dex/uniswap-v2/mdex.ts +0 -66
  1061. package/src/dex/uniswap-v2/nomiswap-v2.ts +0 -73
  1062. package/src/dex/uniswap-v2/optimizer.ts +0 -66
  1063. package/src/dex/uniswap-v2/types.ts +0 -164
  1064. package/src/dex/uniswap-v2/uniswap-v2-constant-product-pool.ts +0 -40
  1065. package/src/dex/uniswap-v2/uniswap-v2-e2e-arbitrum.test.ts +0 -438
  1066. package/src/dex/uniswap-v2/uniswap-v2-e2e-avalanche.test.ts +0 -1361
  1067. package/src/dex/uniswap-v2/uniswap-v2-e2e-base.test.ts +0 -42
  1068. package/src/dex/uniswap-v2/uniswap-v2-e2e-bsc.test.ts +0 -1295
  1069. package/src/dex/uniswap-v2/uniswap-v2-e2e-fantom.test.ts +0 -1428
  1070. package/src/dex/uniswap-v2/uniswap-v2-e2e-gnosis.test.ts +0 -283
  1071. package/src/dex/uniswap-v2/uniswap-v2-e2e-mainnet.test.ts +0 -1834
  1072. package/src/dex/uniswap-v2/uniswap-v2-e2e-optimism.test.ts +0 -282
  1073. package/src/dex/uniswap-v2/uniswap-v2-e2e-polygon.test.ts +0 -871
  1074. package/src/dex/uniswap-v2/uniswap-v2-factory.ts +0 -70
  1075. package/src/dex/uniswap-v2/uniswap-v2-gas-estimation.test.ts +0 -98
  1076. package/src/dex/uniswap-v2/uniswap-v2-integration.test.ts +0 -63
  1077. package/src/dex/uniswap-v2/uniswap-v2.ts +0 -1120
  1078. package/src/dex/uniswap-v3/config.ts +0 -453
  1079. package/src/dex/uniswap-v3/constants.ts +0 -56
  1080. package/src/dex/uniswap-v3/contract-math/BitMath.ts +0 -90
  1081. package/src/dex/uniswap-v3/contract-math/FixedPoint128.ts +0 -3
  1082. package/src/dex/uniswap-v3/contract-math/FixedPoint96.ts +0 -4
  1083. package/src/dex/uniswap-v3/contract-math/FullMath.ts +0 -30
  1084. package/src/dex/uniswap-v3/contract-math/LiquidityMath.ts +0 -17
  1085. package/src/dex/uniswap-v3/contract-math/Oracle.ts +0 -226
  1086. package/src/dex/uniswap-v3/contract-math/SqrtPriceMath.ts +0 -226
  1087. package/src/dex/uniswap-v3/contract-math/SwapMath.ts +0 -139
  1088. package/src/dex/uniswap-v3/contract-math/Tick.ts +0 -82
  1089. package/src/dex/uniswap-v3/contract-math/TickBitMap.ts +0 -143
  1090. package/src/dex/uniswap-v3/contract-math/TickMath.ts +0 -211
  1091. package/src/dex/uniswap-v3/contract-math/UnsafeMath.ts +0 -5
  1092. package/src/dex/uniswap-v3/contract-math/uniswap-v3-math.ts +0 -668
  1093. package/src/dex/uniswap-v3/contract-math/utils.ts +0 -55
  1094. package/src/dex/uniswap-v3/forks/ramses-v2/ramses-v2-pool.ts +0 -157
  1095. package/src/dex/uniswap-v3/forks/ramses-v2/utils.ts +0 -72
  1096. package/src/dex/uniswap-v3/forks/velodrome-slipstream/utils.ts +0 -65
  1097. package/src/dex/uniswap-v3/forks/velodrome-slipstream/velodrome-slipstream-factory.ts +0 -16
  1098. package/src/dex/uniswap-v3/forks/velodrome-slipstream/velodrome-slipstream-pool.ts +0 -198
  1099. package/src/dex/uniswap-v3/forks/velodrome-slipstream/velodrome-slipstream.ts +0 -243
  1100. package/src/dex/uniswap-v3/scripts/check-pool-bitmap-ranges.ts +0 -238
  1101. package/src/dex/uniswap-v3/scripts/measure-calc-time.ts +0 -172
  1102. package/src/dex/uniswap-v3/types.ts +0 -213
  1103. package/src/dex/uniswap-v3/uniswap-v3-e2e.test.ts +0 -1391
  1104. package/src/dex/uniswap-v3/uniswap-v3-events.test.ts +0 -185
  1105. package/src/dex/uniswap-v3/uniswap-v3-factory.ts +0 -80
  1106. package/src/dex/uniswap-v3/uniswap-v3-gas-estimation.test.ts +0 -98
  1107. package/src/dex/uniswap-v3/uniswap-v3-integration.test.ts +0 -2652
  1108. package/src/dex/uniswap-v3/uniswap-v3-pool.ts +0 -564
  1109. package/src/dex/uniswap-v3/uniswap-v3.ts +0 -1528
  1110. package/src/dex/uniswap-v3/utils.ts +0 -83
  1111. package/src/dex/uniswap-v3.ts +0 -242
  1112. package/src/dex/usual/m-wrapped-m.ts +0 -76
  1113. package/src/dex/usual/types.ts +0 -10
  1114. package/src/dex/usual/usual-bond.ts +0 -69
  1115. package/src/dex/usual/usual-e2e.test.ts +0 -169
  1116. package/src/dex/usual/usual-gas-estimation.test.ts +0 -54
  1117. package/src/dex/usual/usual-integration.test.ts +0 -515
  1118. package/src/dex/usual/usual-m-usd0.ts +0 -76
  1119. package/src/dex/usual/usual-m-wrapped-m.ts +0 -71
  1120. package/src/dex/usual/usual.ts +0 -156
  1121. package/src/dex/usual/wrapped-m-m.ts +0 -76
  1122. package/src/dex/usual-pp/config.ts +0 -18
  1123. package/src/dex/usual-pp/pool.ts +0 -77
  1124. package/src/dex/usual-pp/types.ts +0 -12
  1125. package/src/dex/usual-pp/usual-events.test.ts +0 -70
  1126. package/src/dex/usual-pp/usual-integration.test.ts +0 -143
  1127. package/src/dex/usual-pp/usual-pp-gas-estimation.test.ts +0 -29
  1128. package/src/dex/usual-pp/usual-pp.e2e.test.ts +0 -76
  1129. package/src/dex/usual-pp/usual-pp.ts +0 -207
  1130. package/src/dex/usual-pp/utils.ts +0 -27
  1131. package/src/dex/weth/config.ts +0 -87
  1132. package/src/dex/weth/types.ts +0 -34
  1133. package/src/dex/weth/weth-e2e-v6.test.ts +0 -117
  1134. package/src/dex/weth/weth-e2e.test.ts +0 -1032
  1135. package/src/dex/weth/weth-gas-estimation.test.ts +0 -42
  1136. package/src/dex/weth/weth-integration.test.ts +0 -80
  1137. package/src/dex/weth/weth.ts +0 -232
  1138. package/src/dex/wombat/config.ts +0 -77
  1139. package/src/dex/wombat/types.ts +0 -55
  1140. package/src/dex/wombat/utils.ts +0 -82
  1141. package/src/dex/wombat/wombat-bmw.ts +0 -186
  1142. package/src/dex/wombat/wombat-e2e.test.ts +0 -272
  1143. package/src/dex/wombat/wombat-events.test.ts +0 -147
  1144. package/src/dex/wombat/wombat-gas-estimation.test.ts +0 -29
  1145. package/src/dex/wombat/wombat-integration.test.ts +0 -217
  1146. package/src/dex/wombat/wombat-pool.ts +0 -688
  1147. package/src/dex/wombat/wombat-quoter.ts +0 -269
  1148. package/src/dex/wombat/wombat.ts +0 -467
  1149. package/src/dex/woo-fi-v2/config.ts +0 -100
  1150. package/src/dex/woo-fi-v2/constants.ts +0 -22
  1151. package/src/dex/woo-fi-v2/decoders.ts +0 -45
  1152. package/src/dex/woo-fi-v2/types.ts +0 -64
  1153. package/src/dex/woo-fi-v2/utils.ts +0 -19
  1154. package/src/dex/woo-fi-v2/woo-fi-v2-e2e.test.ts +0 -282
  1155. package/src/dex/woo-fi-v2/woo-fi-v2-integration.test.ts +0 -495
  1156. package/src/dex/woo-fi-v2/woo-fi-v2-math.ts +0 -228
  1157. package/src/dex/woo-fi-v2/woo-fi-v2-pool.ts +0 -143
  1158. package/src/dex/woo-fi-v2/woo-fi-v2.ts +0 -528
  1159. package/src/dex/wsteth/config.ts +0 -16
  1160. package/src/dex/wsteth/types.ts +0 -13
  1161. package/src/dex/wsteth/wsteth-e2e.test.ts +0 -96
  1162. package/src/dex/wsteth/wsteth-gas-estimation.test.ts +0 -41
  1163. package/src/dex/wsteth/wsteth-integration.test.ts +0 -200
  1164. package/src/dex/wsteth/wsteth.ts +0 -304
  1165. package/src/dex-helper/dummy-dex-helper.ts +0 -379
  1166. package/src/dex-helper/dummy-limit-order-provider.ts +0 -74
  1167. package/src/dex-helper/iblock-manager.ts +0 -60
  1168. package/src/dex-helper/icache.ts +0 -85
  1169. package/src/dex-helper/idex-helper.ts +0 -27
  1170. package/src/dex-helper/ilimit-order-provider.ts +0 -27
  1171. package/src/dex-helper/index.ts +0 -16
  1172. package/src/dex-helper/irequest-wrapper.ts +0 -67
  1173. package/src/executor/Executor01BytecodeBuilder.ts +0 -479
  1174. package/src/executor/Executor02BytecodeBuilder.ts +0 -1419
  1175. package/src/executor/Executor03BytecodeBuilder.ts +0 -473
  1176. package/src/executor/ExecutorBytecodeBuilder.ts +0 -453
  1177. package/src/executor/ExecutorDetector.ts +0 -131
  1178. package/src/executor/WETHBytecodeBuilder.ts +0 -58
  1179. package/src/executor/__snapshots__/executor01-bytecode-builder-snapshot.test.ts.snap +0 -35
  1180. package/src/executor/__snapshots__/executor02-bytecode-builder-snapshot.test.ts.snap +0 -23
  1181. package/src/executor/constants.ts +0 -66
  1182. package/src/executor/executor01-bytecode-builder-e2e.test.ts +0 -1503
  1183. package/src/executor/executor01-bytecode-builder-snapshot.test.ts +0 -271
  1184. package/src/executor/executor02-bytecode-builder-e2e.test.ts +0 -1578
  1185. package/src/executor/executor02-bytecode-builder-snapshot.test.ts +0 -188
  1186. package/src/executor/fixtures/executor01/exchange-params/price-route-multiswap-balancerv1-curvev1-eth-usdc-gusd.json +0 -16
  1187. package/src/executor/fixtures/executor01/exchange-params/price-route-multiswap-balancerv1-sushiv3-wbtc-eth-sushi.json +0 -16
  1188. package/src/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-curvev1-eth-usdc-gusd.json +0 -16
  1189. package/src/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-curvev1-gusd-usdc-eth.json +0 -16
  1190. package/src/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-dai-usdc-eth.json +0 -16
  1191. package/src/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-eth-usdc-dai.json +0 -16
  1192. package/src/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-usdc-eth-wbtc.json +0 -16
  1193. package/src/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-usdt-usdc-dai.json +0 -16
  1194. package/src/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-balancerv1-eth-usdc.json +0 -9
  1195. package/src/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-balancerv1-usdc-eth.json +0 -9
  1196. package/src/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-balancerv1-usdc-wbtc.json +0 -9
  1197. package/src/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-curvev1-eth-steth.json +0 -9
  1198. package/src/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-curvev1-steth-eth.json +0 -9
  1199. package/src/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-curvev1-usdc-usdt.json +0 -9
  1200. package/src/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-univ3-eth-usdc.json +0 -9
  1201. package/src/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-univ3-usdc-eth.json +0 -9
  1202. package/src/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-univ3-usdc-usdt.json +0 -9
  1203. package/src/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-balancerv1-sushiv3-wbtc-eth-sushi.json +0 -12
  1204. package/src/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-sushiv3-curvev1-eth-usdc-gusd.json +0 -7
  1205. package/src/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-sushiv3-curvev1-gusd-usdc-eth.json +0 -7
  1206. package/src/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-sushiv3-dai-usdc-eth.json +0 -7
  1207. package/src/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-sushiv3-eth-usdc-dai.json +0 -7
  1208. package/src/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-sushiv3-usdc-eth-wbtc.json +0 -12
  1209. package/src/executor/fixtures/executor01/maybe-weth-calldata/price-route-simpleSwap-univ3-eth-usdc.json +0 -7
  1210. package/src/executor/fixtures/executor01/maybe-weth-calldata/price-route-simpleSwap-univ3-usdc-eth.json +0 -7
  1211. package/src/executor/fixtures/executor01/routes/price-route-multiswap-balancerv1-curvev1-eth-usdc-gusd.json +0 -78
  1212. package/src/executor/fixtures/executor01/routes/price-route-multiswap-balancerv1-sushiv3-wbtc-eth-sushi.json +0 -81
  1213. package/src/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-curvev1-eth-usdc-gusd.json +0 -78
  1214. package/src/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-curvev1-gusd-usdc-eth.json +0 -78
  1215. package/src/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-dai-usdc-eth.json +0 -81
  1216. package/src/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-eth-usdc-dai.json +0 -81
  1217. package/src/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-usdc-eth-wbtc.json +0 -81
  1218. package/src/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-usdt-usdc-dai.json +0 -81
  1219. package/src/executor/fixtures/executor01/routes/price-route-simpleSwap-balancerv1-eth-usdc.json +0 -64
  1220. package/src/executor/fixtures/executor01/routes/price-route-simpleSwap-balancerv1-usdc-eth.json +0 -85
  1221. package/src/executor/fixtures/executor01/routes/price-route-simpleSwap-balancerv1-usdc-wbtc.json +0 -64
  1222. package/src/executor/fixtures/executor01/routes/price-route-simpleSwap-curvev1-eth-steth.json +0 -52
  1223. package/src/executor/fixtures/executor01/routes/price-route-simpleSwap-curvev1-steth-eth.json +0 -52
  1224. package/src/executor/fixtures/executor01/routes/price-route-simpleSwap-curvev1-usdc-usdt.json +0 -52
  1225. package/src/executor/fixtures/executor01/routes/price-route-simpleSwap-univ3-eth-usdc.json +0 -55
  1226. package/src/executor/fixtures/executor01/routes/price-route-simpleSwap-univ3-usdc-eth.json +0 -55
  1227. package/src/executor/fixtures/executor01/routes/price-route-simpleSwap-univ3-usdc-usdt.json +0 -55
  1228. package/src/executor/fixtures/executor02/exchange-params/price-route-multiSwap-balancerv1-sushiv3-univ3-bal-eth-sushi.json +0 -23
  1229. package/src/executor/fixtures/executor02/exchange-params/price-route-multiSwap-maverickv1-sushiv3-univ3-eth-usdc-mav.json +0 -37
  1230. package/src/executor/fixtures/executor02/exchange-params/price-route-multiSwap-univ3-sushiv3-sushi-eth-wbtc.json +0 -23
  1231. package/src/executor/fixtures/executor02/exchange-params/price-route-multiSwap-univ3-sushiv3-wbtc-eth-sushi.json +0 -23
  1232. package/src/executor/fixtures/executor02/exchange-params/price-route-multiswap-curvev1-univ3-dai-usdc-eth.json +0 -51
  1233. package/src/executor/fixtures/executor02/exchange-params/price-route-multiswap-univ3-usdt-dai-eth.json +0 -58
  1234. package/src/executor/fixtures/executor02/exchange-params/price-route-simpleSwap-sushiv3-balancerv1-eth-usdc.json +0 -23
  1235. package/src/executor/fixtures/executor02/exchange-params/price-route-simpleSwap-sushiv3-balancerv1-usdc-eth.json +0 -23
  1236. package/src/executor/fixtures/executor02/exchange-params/price-route-simpleSwap-sushiv3-univ3-eth-sushi.json +0 -9
  1237. package/src/executor/fixtures/executor02/exchange-params/price-route-simpleSwap-sushiv3-univ3-sushi-eth.json +0 -16
  1238. package/src/executor/fixtures/executor02/exchange-params/price-route-simpleSwap-univ3-curvev1-usdt-dai.json +0 -23
  1239. package/src/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiSwap-balancerv1-sushiv3-univ3-bal-eth-sushi.json +0 -12
  1240. package/src/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiSwap-maverickv1-sushiv3-univ3-eth-usdc-mav.json +0 -7
  1241. package/src/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiSwap-univ3-sushiv3-sushi-eth-wbtc.json +0 -12
  1242. package/src/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiSwap-univ3-sushiv3-wbtc-eth-sushi.json +0 -12
  1243. package/src/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiswap-curvev1-univ3-dai-usdc-eth.json +0 -7
  1244. package/src/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiswap-univ3-usdt-dai-eth.json +0 -7
  1245. package/src/executor/fixtures/executor02/maybe-weth-calldata/price-route-simpleSwap-sushiv3-balancerv1-eth-usdc.json +0 -7
  1246. package/src/executor/fixtures/executor02/maybe-weth-calldata/price-route-simpleSwap-sushiv3-balancerv1-usdc-eth.json +0 -7
  1247. package/src/executor/fixtures/executor02/maybe-weth-calldata/price-route-simpleSwap-sushiv3-univ3-eth-sushi.json +0 -7
  1248. package/src/executor/fixtures/executor02/maybe-weth-calldata/price-route-simpleSwap-sushiv3-univ3-sushi-eth.json +0 -7
  1249. package/src/executor/fixtures/executor02/routes/price-route-multiSwap-balancerv1-sushiv3-univ3-bal-eth-sushi.json +0 -130
  1250. package/src/executor/fixtures/executor02/routes/price-route-multiSwap-maverickv1-sushiv3-univ3-eth-usdc-mav.json +0 -136
  1251. package/src/executor/fixtures/executor02/routes/price-route-multiSwap-univ3-sushiv3-sushi-eth-wbtc.json +0 -100
  1252. package/src/executor/fixtures/executor02/routes/price-route-multiSwap-univ3-sushiv3-wbtc-eth-sushi.json +0 -100
  1253. package/src/executor/fixtures/executor02/routes/price-route-multiswap-curvev1-univ3-dai-usdc-eth.json +0 -166
  1254. package/src/executor/fixtures/executor02/routes/price-route-multiswap-univ3-usdt-dai-eth.json +0 -190
  1255. package/src/executor/fixtures/executor02/routes/price-route-simpleSwap-sushiv3-balancerv1-eth-usdc.json +0 -114
  1256. package/src/executor/fixtures/executor02/routes/price-route-simpleSwap-sushiv3-balancerv1-usdc-eth.json +0 -114
  1257. package/src/executor/fixtures/executor02/routes/price-route-simpleSwap-sushiv3-univ3-eth-sushi.json +0 -55
  1258. package/src/executor/fixtures/executor02/routes/price-route-simpleSwap-sushiv3-univ3-sushi-eth.json +0 -73
  1259. package/src/executor/fixtures/executor02/routes/price-route-simpleSwap-univ3-curvev1-usdt-dai.json +0 -82
  1260. package/src/executor/types.ts +0 -45
  1261. package/src/executor/utils.ts +0 -62
  1262. package/src/generic-swap-transaction-builder.ts +0 -753
  1263. package/src/implementations/local-paraswap-sdk.ts +0 -342
  1264. package/src/index.ts +0 -38
  1265. package/src/lens.ts +0 -8
  1266. package/src/lib/api3-feed.ts +0 -175
  1267. package/src/lib/benqi/staked-avax.ts +0 -123
  1268. package/src/lib/chainlink.ts +0 -113
  1269. package/src/lib/curve/encoder.ts +0 -19
  1270. package/src/lib/decoders.ts +0 -199
  1271. package/src/lib/erc1271-utils.ts +0 -24
  1272. package/src/lib/fetcher/fetcher.ts +0 -183
  1273. package/src/lib/fetcher/wsFetcher.ts +0 -158
  1274. package/src/lib/generics-events-subscribers/erc20-event-subscriber-factory.ts +0 -18
  1275. package/src/lib/generics-events-subscribers/erc20-event-subscriber.test.ts +0 -126
  1276. package/src/lib/generics-events-subscribers/erc20-event-subscriber.ts +0 -261
  1277. package/src/lib/generics-events-subscribers/types.ts +0 -41
  1278. package/src/lib/generics-events-subscribers/utils.ts +0 -37
  1279. package/src/lib/log-messages-suppressor.ts +0 -173
  1280. package/src/lib/log4js.ts +0 -88
  1281. package/src/lib/multi-wrapper.ts +0 -108
  1282. package/src/lib/promise-scheduler.ts +0 -55
  1283. package/src/lib/pub-sub.ts +0 -232
  1284. package/src/lib/stateful-rpc-poller/state-polling-manager.ts +0 -320
  1285. package/src/lib/stateful-rpc-poller/stateful-rpc-poller.ts +0 -604
  1286. package/src/lib/stateful-rpc-poller/types.ts +0 -66
  1287. package/src/lib/stateful-rpc-poller/utils.ts +0 -23
  1288. package/src/lib/task-scheduler.ts +0 -64
  1289. package/src/lib/token-transfer-fee.ts +0 -42
  1290. package/src/lib/tokens/balancer-fetcher.ts +0 -283
  1291. package/src/lib/tokens/types.ts +0 -102
  1292. package/src/lib/tokens/utils.ts +0 -179
  1293. package/src/lib/utils-interfaces.ts +0 -4
  1294. package/src/lib/validators.ts +0 -34
  1295. package/src/pools-helper.ts +0 -58
  1296. package/src/pricing-helper.ts +0 -328
  1297. package/src/rebase-tokens.json +0 -17
  1298. package/src/router/buy.ts +0 -101
  1299. package/src/router/directswap.ts +0 -101
  1300. package/src/router/index.ts +0 -48
  1301. package/src/router/irouter.ts +0 -20
  1302. package/src/router/megaswap.ts +0 -88
  1303. package/src/router/multiswap.ts +0 -96
  1304. package/src/router/payload-encoder.ts +0 -293
  1305. package/src/router/simpleswap.ts +0 -369
  1306. package/src/router/simpleswapnft.ts +0 -138
  1307. package/src/stateful-event-subscriber.ts +0 -512
  1308. package/src/transaction-builder.ts +0 -129
  1309. package/src/types.ts +0 -358
  1310. package/src/utils.ts +0 -410
  1311. package/tests/constants-e2e.ts +0 -2221
  1312. package/tests/debug-price-route.test.ts +0 -55
  1313. package/tests/generate-new-limit-order.ts +0 -107
  1314. package/tests/payload-encoder.test.ts +0 -49
  1315. package/tests/tenderly-simulation.test.ts +0 -151
  1316. package/tests/tenderly-simulation.ts +0 -698
  1317. package/tests/token-storage-slots.json +0 -698
  1318. package/tests/transaction-builder.test.ts +0 -234
  1319. package/tests/utils-e2e.ts +0 -651
  1320. package/tests/utils-events.ts +0 -186
  1321. package/tests/utils.ts +0 -127
  1322. package/tests/v6/utils-e2e-v6.ts +0 -103
  1323. package/tsconfig.json +0 -23
@@ -58,7 +58,7 @@ export declare class UniswapV3 extends SimpleExchange implements IDex<UniswapV3D
58
58
  addMasterPool(poolKey: string, blockNumber: number): Promise<boolean>;
59
59
  getPoolIdentifiers(srcToken: Token, destToken: Token, side: SwapSide, blockNumber: number): Promise<string[]>;
60
60
  protected getPoolsForIdentifiers(srcAddress: string, destAddress: string, blockNumber: number): Promise<(UniswapV3EventPool | null)[]>;
61
- getPricingFromRpc(from: Token, to: Token, amounts: bigint[], side: SwapSide, pools: UniswapV3EventPool[], states: PoolState[]): Promise<ExchangePrices<UniswapV3Data> | null>;
61
+ getPricingFromRpc(from: Token, to: Token, amounts: bigint[], side: SwapSide, pools: UniswapV3EventPool[], blockNumber?: number): Promise<ExchangePrices<UniswapV3Data> | null>;
62
62
  protected getSelectedPools(srcAddress: string, destAddress: string, blockNumber: number): Promise<(UniswapV3EventPool | null)[]>;
63
63
  getPricesVolume(srcToken: Token, destToken: Token, amounts: bigint[], side: SwapSide, blockNumber: number, limitPools?: string[]): Promise<null | ExchangePrices<UniswapV3Data>>;
64
64
  protected prepareData(srcAddress: string, destAddress: string, pool: UniswapV3EventPool, state: PoolState): UniswapV3Data;
@@ -55,11 +55,11 @@ const UniswapV3StateMulticall_abi_json_1 = __importDefault(require("../../abi/un
55
55
  const constants_2 = require("./constants");
56
56
  const ts_essentials_1 = require("ts-essentials");
57
57
  const uniswap_v3_math_1 = require("./contract-math/uniswap-v3-math");
58
- const balancer_fetcher_1 = require("../../lib/tokens/balancer-fetcher");
59
- const types_2 = require("../../lib/tokens/types");
60
58
  const uniswap_v3_factory_1 = require("./uniswap-v3-factory");
61
59
  const utils_2 = require("ethers/lib/utils");
62
60
  const utils_3 = require("../../executor/utils");
61
+ const utils_4 = require("../../lib/tokens/utils");
62
+ const decoders_1 = require("../../lib/decoders");
63
63
  exports.PoolsRegistryHashKey = `${constants_1.CACHE_PREFIX}_poolsRegistry`;
64
64
  exports.UNISWAPV3_CLEAN_NOT_EXISTING_POOL_TTL_MS = 3 * 24 * 60 * 60 * 1000; // 3 days
65
65
  exports.UNISWAPV3_CLEAN_NOT_EXISTING_POOL_INTERVAL_MS = 24 * 60 * 60 * 1000; // Once in a day
@@ -282,74 +282,63 @@ class UniswapV3 extends simple_exchange_1.SimpleExchange {
282
282
  async getPoolsForIdentifiers(srcAddress, destAddress, blockNumber) {
283
283
  return Promise.all(this.supportedFees.map(async (fee) => this.getPool(srcAddress, destAddress, fee, blockNumber)));
284
284
  }
285
- async getPricingFromRpc(from, to, amounts, side, pools, states) {
285
+ async getPricingFromRpc(from, to, amounts, side, pools, blockNumber) {
286
286
  if (pools.length === 0) {
287
287
  return null;
288
288
  }
289
289
  this.logger.warn(`fallback to rpc for ${pools.length} pool(s)`);
290
- const requests = pools.map(pool => ({
291
- owner: pool.poolAddress,
292
- asset: side == constants_1.SwapSide.SELL ? from.address : to.address,
293
- assetType: types_2.AssetType.ERC20,
294
- ids: [
295
- {
296
- id: types_2.DEFAULT_ID_ERC20,
297
- spenders: [],
298
- },
299
- ],
300
- }), []);
301
- const balances = await (0, balancer_fetcher_1.getBalances)(this.dexHelper.multiWrapper, requests);
302
- pools = pools.filter((pool, index) => {
303
- const balance = balances[index].amounts[types_2.DEFAULT_ID_ERC20_AS_STRING];
304
- if (balance >= amounts[amounts.length - 1]) {
305
- return true;
306
- }
307
- this.logger.warn(`[${this.network}][${pool.parentName}] have no balance ${pool.poolAddress} ${from.address} ${to.address}. (Balance: ${balance})`);
308
- return false;
309
- });
310
- pools.forEach(pool => {
311
- this.logger.warn(`[${this.network}][${pool.parentName}] fallback to rpc for ${pool.name}`);
312
- });
313
290
  const unitVolume = (0, utils_1.getBigIntPow)((side === constants_1.SwapSide.SELL ? from : to).decimals);
314
291
  const chunks = amounts.length - 1;
315
292
  const _width = Math.floor(chunks / this.config.chunksCount);
316
293
  const _amounts = [unitVolume].concat(Array.from(Array(this.config.chunksCount).keys()).map(i => amounts[(i + 1) * _width]));
317
- const calldata = pools.map(pool => _amounts.map(_amount => ({
318
- target: this.config.quoter,
319
- gasLimit: exports.UNISWAPV3_QUOTE_GASLIMIT,
320
- callData: side === constants_1.SwapSide.SELL
321
- ? this.quoterIface.encodeFunctionData('quoteExactInputSingle', [
322
- [
323
- from.address,
324
- to.address,
325
- _amount.toString(),
326
- pool.feeCodeAsString,
327
- 0, //sqrtPriceLimitX96
328
- ],
329
- ])
330
- : this.quoterIface.encodeFunctionData('quoteExactOutputSingle', [
331
- [
332
- from.address,
333
- to.address,
334
- _amount.toString(),
335
- pool.feeCodeAsString,
336
- 0, //sqrtPriceLimitX96
337
- ],
338
- ]),
339
- })));
340
- const data = await this.uniswapMulti.methods
341
- .multicall(calldata.flat())
342
- .call();
343
- const decode = (j) => {
344
- if (!data.returnData[j].success) {
345
- return 0n;
346
- }
347
- const decoded = abi_1.defaultAbiCoder.decode(['uint256'], data.returnData[j].returnData);
348
- return BigInt(decoded[0].toString());
349
- };
294
+ // for each pool:
295
+ // 1 balanceOf call
296
+ // {amounts.length quote calls
297
+ const calldata = pools
298
+ .map(pool => {
299
+ const balanceCall = {
300
+ target: side == constants_1.SwapSide.SELL ? from.address : to.address,
301
+ decodeFunction: decoders_1.uint256ToBigInt,
302
+ callData: (0, utils_4.getBalanceERC20)(pool.poolAddress),
303
+ };
304
+ const quoteCalls = _amounts.map(_amount => ({
305
+ target: this.config.quoter,
306
+ callData: side === constants_1.SwapSide.SELL
307
+ ? this.quoterIface.encodeFunctionData('quoteExactInputSingle', [
308
+ [
309
+ from.address,
310
+ to.address,
311
+ _amount.toString(),
312
+ pool.feeCodeAsString,
313
+ 0, //sqrtPriceLimitX96
314
+ ],
315
+ ])
316
+ : this.quoterIface.encodeFunctionData('quoteExactOutputSingle', [
317
+ [
318
+ from.address,
319
+ to.address,
320
+ _amount.toString(),
321
+ pool.feeCodeAsString,
322
+ 0, //sqrtPriceLimitX96
323
+ ],
324
+ ]),
325
+ decodeFunction: decoders_1.uint256ToBigInt,
326
+ }));
327
+ return [balanceCall, ...quoteCalls];
328
+ })
329
+ .flat();
330
+ const data = await this.dexHelper.multiWrapper.aggregate(calldata, blockNumber);
350
331
  let i = 0;
351
- const result = pools.map((pool, index) => {
352
- const _rates = _amounts.map(() => decode(i++));
332
+ return pools
333
+ .map((pool, index) => {
334
+ const balance = data[i++];
335
+ if (balance < amounts[amounts.length - 1]) {
336
+ this.logger.warn(`[${this.network}][${pool.parentName}] have no balance ${pool.poolAddress} ${from.address} ${to.address}. (Balance: ${balance})`);
337
+ // move index to the next pool
338
+ i += _amounts.length;
339
+ return null;
340
+ }
341
+ const _rates = _amounts.map(() => data[i++]);
353
342
  const unit = _rates[0];
354
343
  const prices = (0, utils_1.interpolate)(_amounts.slice(1), _rates.slice(1), amounts, side);
355
344
  return {
@@ -361,7 +350,6 @@ class UniswapV3 extends simple_exchange_1.SimpleExchange {
361
350
  tokenIn: from.address,
362
351
  tokenOut: to.address,
363
352
  fee: pool.feeCodeAsString,
364
- currentFee: states[index]?.fee.toString(),
365
353
  },
366
354
  ],
367
355
  exchange: pool.poolAddress,
@@ -371,8 +359,8 @@ class UniswapV3 extends simple_exchange_1.SimpleExchange {
371
359
  gasCost: prices.map(p => (p === 0n ? 0 : exports.UNISWAPV3_QUOTE_GASLIMIT)),
372
360
  poolAddresses: [pool.poolAddress],
373
361
  };
374
- });
375
- return result;
362
+ })
363
+ .filter(prices => prices !== null);
376
364
  }
377
365
  async getSelectedPools(srcAddress, destAddress, blockNumber) {
378
366
  return Promise.all(this.supportedFees.map(async (fee) => {
@@ -428,7 +416,7 @@ class UniswapV3 extends simple_exchange_1.SimpleExchange {
428
416
  this.logger.warn(`UniV3: Pool ${pool.name} on ${this.dexKey} has no state. Fallback to rpc`);
429
417
  });
430
418
  const states = poolsToUse.poolWithState.map(p => p.getState(blockNumber));
431
- const rpcResultsPromise = this.getPricingFromRpc(_srcToken, _destToken, amounts, side, this.network === constants_1.Network.ZKEVM ? [] : poolsToUse.poolWithoutState, this.network === constants_1.Network.ZKEVM ? [] : states);
419
+ const rpcResultsPromise = this.getPricingFromRpc(_srcToken, _destToken, amounts, side, this.network === constants_1.Network.ZKEVM ? [] : poolsToUse.poolWithoutState, blockNumber);
432
420
  const unitAmount = (0, utils_1.getBigIntPow)(side == constants_1.SwapSide.SELL ? _srcToken.decimals : _destToken.decimals);
433
421
  const _amounts = [...amounts.slice(1)];
434
422
  const [token0] = this._sortTokens(_srcAddress, _destAddress);
@@ -1 +1 @@
1
- {"version":3,"file":"uniswap-v3.js","sourceRoot":"","sources":["../../../src/dex/uniswap-v3/uniswap-v3.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"uniswap-v3.js","sourceRoot":"","sources":["../../../src/dex/uniswap-v3/uniswap-v3.ts"],"names":[],"mappings":"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"}
@@ -4,11 +4,54 @@ exports.UniswapV4Config = void 0;
4
4
  const constants_1 = require("../../constants");
5
5
  exports.UniswapV4Config = {
6
6
  UniswapV4: {
7
+ [constants_1.Network.MAINNET]: {
8
+ poolManager: '0x000000000004444c5dc75cB358380D2e3dE08A90',
9
+ subgraphURL: 'DiYPVdygkfjDWhbxGSqAQxwBKmfKnkWQojqeM2rkLb3G',
10
+ quoter: '0x52f0e24d1c21c8a0cb1e5a5dd6198556bd9e1203',
11
+ router: '0x66a9893cc07d91d95644aedd05d03f95e1dba8af',
12
+ stateView: '0x7ffe42c4a5deea5b0fec41c94c136cf115597227',
13
+ },
7
14
  [constants_1.Network.BASE]: {
8
15
  poolManager: '0x498581ff718922c3f8e6a244956af099b2652b2b',
9
16
  subgraphURL: 'HNCFA9TyBqpo5qpe6QreQABAA1kV8g46mhkCcicu6v2R',
10
17
  quoter: '0x0d5e0f971ed27fbff6c2837bf31316121532048d',
11
18
  router: '0x6ff5693b99212da76ad316178a184ab56d299b43',
19
+ stateView: '0xa3c0c9b65bad0b08107aa264b0f3db444b867a71',
20
+ },
21
+ [constants_1.Network.OPTIMISM]: {
22
+ poolManager: '0x9a13f98cb987694c9f086b1f5eb990eea8264ec3',
23
+ subgraphURL: '6RBtsmGUYfeLeZsYyxyKSUiaA6WpuC69shMEQ1Cfuj9u',
24
+ quoter: '0x1f3131a13296fb91c90870043742c3cdbff1a8d7',
25
+ router: '0x851116d9223fabed8e56c0e6b8ad0c31d98b3507',
26
+ stateView: '0xc18a3169788f4f75a170290584eca6395c75ecdb',
27
+ },
28
+ [constants_1.Network.ARBITRUM]: {
29
+ poolManager: '0x360e68faccca8ca495c1b759fd9eee466db9fb32',
30
+ subgraphURL: 'G5TsTKNi8yhPSV7kycaE23oWbqv9zzNqR49FoEQjzq1r',
31
+ quoter: '0x3972c00f7ed4885e145823eb7c655375d275a1c5',
32
+ router: '0xa51afafe0263b40edaef0df8781ea9aa03e381a3',
33
+ stateView: '0x76fd297e2d437cd7f76d50f01afe6160f86e9990',
34
+ },
35
+ [constants_1.Network.POLYGON]: {
36
+ poolManager: '0x67366782805870060151383f4bbff9dab53e5cd6',
37
+ subgraphURL: 'CwpebM66AH5uqS5sreKij8yEkkPcHvmyEs7EwFtdM5ND',
38
+ quoter: '0xb3d5c3dfc3a7aebff71895a7191796bffc2c81b9',
39
+ router: '0x1095692a6237d83c6a72f3f5efedb9a670c49223',
40
+ stateView: '0x5ea1bd7974c8a611cbab0bdcafcb1d9cc9b3ba5a',
41
+ },
42
+ [constants_1.Network.AVALANCHE]: {
43
+ poolManager: '0x06380c0e0912312b5150364b9dc4542ba0dbbc85',
44
+ subgraphURL: '49JxRo9FGxWpSf5Y5GKQPj5NUpX2HhpoZHpGzNEWQZjq',
45
+ quoter: '0xbe40675bb704506a3c2ccfb762dcfd1e979845c2',
46
+ router: '0x94b75331ae8d42c1b61065089b7d48fe14aa73b7',
47
+ stateView: '0xc3c9e198c735a4b97e3e683f391ccbdd60b69286',
48
+ },
49
+ [constants_1.Network.BSC]: {
50
+ poolManager: '0x28e2ea090877bf75740558f6bfb36a5ffee9e9df',
51
+ subgraphURL: '2qQpC8inZPZL4tYfRQPFGZhsE8mYzE67n5z3Yf5uuKMu',
52
+ quoter: '0x9f75dd27d6664c475b90e105573e550ff69437b0',
53
+ router: '0x1906c1d672b88cd1b9ac7593301ca990f94eae07',
54
+ stateView: '0xd13dd3d6e93f276fafc9db9e6bb47c1180aee0c4',
12
55
  },
13
56
  },
14
57
  };
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/dex/uniswap-v4/config.ts"],"names":[],"mappings":";;;AACA,+CAA0C;AAG7B,QAAA,eAAe,GAA4B;IACtD,SAAS,EAAE;QACT,CAAC,mBAAO,CAAC,IAAI,CAAC,EAAE;YACd,WAAW,EAAE,4CAA4C;YACzD,WAAW,EAAE,8CAA8C;YAC3D,MAAM,EAAE,4CAA4C;YACpD,MAAM,EAAE,4CAA4C;SACrD;KACF;CACF,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/dex/uniswap-v4/config.ts"],"names":[],"mappings":";;;AACA,+CAA0C;AAG7B,QAAA,eAAe,GAA4B;IACtD,SAAS,EAAE;QACT,CAAC,mBAAO,CAAC,OAAO,CAAC,EAAE;YACjB,WAAW,EAAE,4CAA4C;YACzD,WAAW,EAAE,8CAA8C;YAC3D,MAAM,EAAE,4CAA4C;YACpD,MAAM,EAAE,4CAA4C;YACpD,SAAS,EAAE,4CAA4C;SACxD;QACD,CAAC,mBAAO,CAAC,IAAI,CAAC,EAAE;YACd,WAAW,EAAE,4CAA4C;YACzD,WAAW,EAAE,8CAA8C;YAC3D,MAAM,EAAE,4CAA4C;YACpD,MAAM,EAAE,4CAA4C;YACpD,SAAS,EAAE,4CAA4C;SACxD;QACD,CAAC,mBAAO,CAAC,QAAQ,CAAC,EAAE;YAClB,WAAW,EAAE,4CAA4C;YACzD,WAAW,EAAE,8CAA8C;YAC3D,MAAM,EAAE,4CAA4C;YACpD,MAAM,EAAE,4CAA4C;YACpD,SAAS,EAAE,4CAA4C;SACxD;QACD,CAAC,mBAAO,CAAC,QAAQ,CAAC,EAAE;YAClB,WAAW,EAAE,4CAA4C;YACzD,WAAW,EAAE,8CAA8C;YAC3D,MAAM,EAAE,4CAA4C;YACpD,MAAM,EAAE,4CAA4C;YACpD,SAAS,EAAE,4CAA4C;SACxD;QACD,CAAC,mBAAO,CAAC,OAAO,CAAC,EAAE;YACjB,WAAW,EAAE,4CAA4C;YACzD,WAAW,EAAE,8CAA8C;YAC3D,MAAM,EAAE,4CAA4C;YACpD,MAAM,EAAE,4CAA4C;YACpD,SAAS,EAAE,4CAA4C;SACxD;QACD,CAAC,mBAAO,CAAC,SAAS,CAAC,EAAE;YACnB,WAAW,EAAE,4CAA4C;YACzD,WAAW,EAAE,8CAA8C;YAC3D,MAAM,EAAE,4CAA4C;YACpD,MAAM,EAAE,4CAA4C;YACpD,SAAS,EAAE,4CAA4C;SACxD;QACD,CAAC,mBAAO,CAAC,GAAG,CAAC,EAAE;YACb,WAAW,EAAE,4CAA4C;YACzD,WAAW,EAAE,8CAA8C;YAC3D,MAAM,EAAE,4CAA4C;YACpD,MAAM,EAAE,4CAA4C;YACpD,SAAS,EAAE,4CAA4C;SACxD;KACF;CACF,CAAC"}
@@ -0,0 +1,7 @@
1
+ export declare const TICK_BITMAP_TO_USE = 4n;
2
+ export declare const TICK_BITMAP_BUFFER = 8n;
3
+ export declare const TICK_BITMAP_TO_USE_BY_CHAIN: Record<number, bigint>;
4
+ export declare const TICK_BITMAP_BUFFER_BY_CHAIN: Record<number, bigint>;
5
+ export declare const OUT_OF_RANGE_ERROR_POSTFIX = "INVALID_TICK_BIT_MAP_RANGES";
6
+ export declare const SUBGRAPH_TIMEOUT: number;
7
+ export declare const POOL_CACHE_REFRESH_INTERVAL: number;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.POOL_CACHE_REFRESH_INTERVAL = exports.SUBGRAPH_TIMEOUT = exports.OUT_OF_RANGE_ERROR_POSTFIX = exports.TICK_BITMAP_BUFFER_BY_CHAIN = exports.TICK_BITMAP_TO_USE_BY_CHAIN = exports.TICK_BITMAP_BUFFER = exports.TICK_BITMAP_TO_USE = void 0;
4
+ // This is used for price calculation. If out of scope, return 0n
5
+ const constants_1 = require("../../constants");
6
+ exports.TICK_BITMAP_TO_USE = 4n;
7
+ // This is used to check if the state is still valid.
8
+ exports.TICK_BITMAP_BUFFER = 8n;
9
+ exports.TICK_BITMAP_TO_USE_BY_CHAIN = {
10
+ [constants_1.Network.MAINNET]: 8n,
11
+ };
12
+ exports.TICK_BITMAP_BUFFER_BY_CHAIN = {
13
+ [constants_1.Network.MAINNET]: 16n,
14
+ };
15
+ exports.OUT_OF_RANGE_ERROR_POSTFIX = `INVALID_TICK_BIT_MAP_RANGES`;
16
+ exports.SUBGRAPH_TIMEOUT = 30 * 1000;
17
+ exports.POOL_CACHE_REFRESH_INTERVAL = 60 * 5; // 5 minutes
18
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/dex/uniswap-v4/constants.ts"],"names":[],"mappings":";;;AAAA,iEAAiE;AACjE,+CAA0C;AAE7B,QAAA,kBAAkB,GAAG,EAAE,CAAC;AAErC,qDAAqD;AACxC,QAAA,kBAAkB,GAAG,EAAE,CAAC;AAExB,QAAA,2BAA2B,GAA2B;IACjE,CAAC,mBAAO,CAAC,OAAO,CAAC,EAAE,EAAE;CACtB,CAAC;AAEW,QAAA,2BAA2B,GAA2B;IACjE,CAAC,mBAAO,CAAC,OAAO,CAAC,EAAE,GAAG;CACvB,CAAC;AAEW,QAAA,0BAA0B,GAAG,6BAA6B,CAAC;AAE3D,QAAA,gBAAgB,GAAG,EAAE,GAAG,IAAI,CAAC;AAE7B,QAAA,2BAA2B,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,YAAY"}
@@ -0,0 +1,6 @@
1
+ export declare function toBalanceDelta(amount0: bigint, amount1: bigint): bigint;
2
+ export declare class BalanceDelta {
3
+ static readonly ZERO_DELTA = 0n;
4
+ static amount0(balanceDelta: bigint): bigint;
5
+ static amount1(balanceDelta: bigint): bigint;
6
+ }
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BalanceDelta = void 0;
4
+ exports.toBalanceDelta = toBalanceDelta;
5
+ function toBalanceDelta(amount0, amount1) {
6
+ const shiftedAmount0 = amount0 << 128n;
7
+ const mask = (1n << 128n) - 1n;
8
+ const maskedAmount1 = amount1 & mask;
9
+ const balanceDelta = shiftedAmount0 | maskedAmount1;
10
+ return balanceDelta;
11
+ }
12
+ class BalanceDelta {
13
+ static ZERO_DELTA = 0n;
14
+ static amount0(balanceDelta) {
15
+ return balanceDelta >> BigInt(128);
16
+ }
17
+ static amount1(balanceDelta) {
18
+ return BigInt.asIntN(128, balanceDelta);
19
+ }
20
+ }
21
+ exports.BalanceDelta = BalanceDelta;
22
+ //# sourceMappingURL=BalanceDelta.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BalanceDelta.js","sourceRoot":"","sources":["../../../../src/dex/uniswap-v4/contract-math/BalanceDelta.ts"],"names":[],"mappings":";;;AAAA,wCAUC;AAVD,SAAgB,cAAc,CAAC,OAAe,EAAE,OAAe;IAC7D,MAAM,cAAc,GAAG,OAAO,IAAI,IAAI,CAAC;IAEvC,MAAM,IAAI,GAAG,CAAC,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;IAE/B,MAAM,aAAa,GAAG,OAAO,GAAG,IAAI,CAAC;IAErC,MAAM,YAAY,GAAG,cAAc,GAAG,aAAa,CAAC;IAEpD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,MAAa,YAAY;IACvB,MAAM,CAAU,UAAU,GAAG,EAAE,CAAC;IAEhC,MAAM,CAAC,OAAO,CAAC,YAAoB;QACjC,OAAO,YAAY,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,YAAoB;QACjC,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;IAC1C,CAAC;;AATH,oCAUC"}
@@ -0,0 +1,4 @@
1
+ export declare class BitMath {
2
+ static mostSignificantBit(x: bigint): bigint;
3
+ static leastSignificantBit(x: bigint): bigint;
4
+ }
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BitMath = void 0;
4
+ const utils_1 = require("../../../utils");
5
+ class BitMath {
6
+ static mostSignificantBit(x) {
7
+ (0, utils_1._require)(x > 0, '', { x }, 'x > 0');
8
+ let r = 0n;
9
+ if (x > 0xffffffffffffffffffffffffffffffffn) {
10
+ x >>= 128n;
11
+ r += 128n;
12
+ }
13
+ if (x > 0xffffffffffffffffn) {
14
+ x >>= 64n;
15
+ r += 64n;
16
+ }
17
+ if (x > 0xffffffffn) {
18
+ x >>= 32n;
19
+ r += 32n;
20
+ }
21
+ if (x > 0xffffn) {
22
+ x >>= 16n;
23
+ r += 16n;
24
+ }
25
+ if (x > 0xffn) {
26
+ x >>= 8n;
27
+ r += 8n;
28
+ }
29
+ if (x > 0xfn) {
30
+ x >>= 4n;
31
+ r += 4n;
32
+ }
33
+ if (x > 0x3n) {
34
+ x >>= 2n;
35
+ r += 2n;
36
+ }
37
+ if (x > 0x1n) {
38
+ r += 1n;
39
+ }
40
+ return r;
41
+ }
42
+ static leastSignificantBit(x) {
43
+ (0, utils_1._require)(x > 0, '', { x }, 'x > 0');
44
+ let r = 0n;
45
+ while ((x & 1n) === 0n) {
46
+ x >>= 1n;
47
+ r++;
48
+ }
49
+ return r;
50
+ }
51
+ }
52
+ exports.BitMath = BitMath;
53
+ //# sourceMappingURL=BitMath.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BitMath.js","sourceRoot":"","sources":["../../../../src/dex/uniswap-v4/contract-math/BitMath.ts"],"names":[],"mappings":";;;AAAA,0CAA0C;AAE1C,MAAa,OAAO;IAClB,MAAM,CAAC,kBAAkB,CAAC,CAAS;QACjC,IAAA,gBAAQ,EAAC,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QAEpC,IAAI,CAAC,GAAG,EAAE,CAAC;QACX,IAAI,CAAC,GAAG,mCAAmC,EAAE,CAAC;YAC5C,CAAC,KAAK,IAAI,CAAC;YACX,CAAC,IAAI,IAAI,CAAC;QACZ,CAAC;QACD,IAAI,CAAC,GAAG,mBAAmB,EAAE,CAAC;YAC5B,CAAC,KAAK,GAAG,CAAC;YACV,CAAC,IAAI,GAAG,CAAC;QACX,CAAC;QACD,IAAI,CAAC,GAAG,WAAW,EAAE,CAAC;YACpB,CAAC,KAAK,GAAG,CAAC;YACV,CAAC,IAAI,GAAG,CAAC;QACX,CAAC;QACD,IAAI,CAAC,GAAG,OAAO,EAAE,CAAC;YAChB,CAAC,KAAK,GAAG,CAAC;YACV,CAAC,IAAI,GAAG,CAAC;QACX,CAAC;QACD,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC;YACd,CAAC,KAAK,EAAE,CAAC;YACT,CAAC,IAAI,EAAE,CAAC;QACV,CAAC;QACD,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC;YACb,CAAC,KAAK,EAAE,CAAC;YACT,CAAC,IAAI,EAAE,CAAC;QACV,CAAC;QACD,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC;YACb,CAAC,KAAK,EAAE,CAAC;YACT,CAAC,IAAI,EAAE,CAAC;QACV,CAAC;QACD,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC;YACb,CAAC,IAAI,EAAE,CAAC;QACV,CAAC;QAED,OAAO,CAAC,CAAC;IACX,CAAC;IAED,MAAM,CAAC,mBAAmB,CAAC,CAAS;QAClC,IAAA,gBAAQ,EAAC,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QAEpC,IAAI,CAAC,GAAG,EAAE,CAAC;QACX,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC;YACvB,CAAC,KAAK,EAAE,CAAC;YACT,CAAC,EAAE,CAAC;QACN,CAAC;QAED,OAAO,CAAC,CAAC;IACX,CAAC;CACF;AAnDD,0BAmDC"}
@@ -0,0 +1,3 @@
1
+ export declare class FixedPoint128 {
2
+ static readonly Q128 = 340282366920938463463374607431768211456n;
3
+ }
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FixedPoint128 = void 0;
4
+ class FixedPoint128 {
5
+ static Q128 = 0x100000000000000000000000000000000n;
6
+ }
7
+ exports.FixedPoint128 = FixedPoint128;
8
+ //# sourceMappingURL=FixedPoint128.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FixedPoint128.js","sourceRoot":"","sources":["../../../../src/dex/uniswap-v4/contract-math/FixedPoint128.ts"],"names":[],"mappings":";;;AAAA,MAAa,aAAa;IACxB,MAAM,CAAU,IAAI,GAAG,oCAAoC,CAAC;;AAD9D,sCAEC"}
@@ -0,0 +1,4 @@
1
+ export declare class FixedPoint96 {
2
+ static readonly RESOLUTION = 96n;
3
+ static readonly Q96 = 79228162514264337593543950336n;
4
+ }
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FixedPoint96 = void 0;
4
+ class FixedPoint96 {
5
+ static RESOLUTION = 96n;
6
+ static Q96 = 0x1000000000000000000000000n;
7
+ }
8
+ exports.FixedPoint96 = FixedPoint96;
9
+ //# sourceMappingURL=FixedPoint96.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FixedPoint96.js","sourceRoot":"","sources":["../../../../src/dex/uniswap-v4/contract-math/FixedPoint96.ts"],"names":[],"mappings":";;;AAAA,MAAa,YAAY;IACvB,MAAM,CAAU,UAAU,GAAG,GAAG,CAAC;IACjC,MAAM,CAAU,GAAG,GAAG,4BAA4B,CAAC;;AAFrD,oCAGC"}
@@ -0,0 +1,4 @@
1
+ export declare class FullMath {
2
+ static mulDiv(a: bigint, b: bigint, denominator: bigint): bigint;
3
+ static mulDivRoundingUp(a: bigint, b: bigint, denominator: bigint): bigint;
4
+ }
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FullMath = void 0;
4
+ const bigint_constants_1 = require("../../../bigint-constants");
5
+ const utils_1 = require("../../../utils");
6
+ class FullMath {
7
+ static mulDiv(a, b, denominator) {
8
+ const result = (a * b) / denominator;
9
+ (0, utils_1._require)(result <= bigint_constants_1.BI_MAX_UINT256, '', { result, BI_MAX_UINT: bigint_constants_1.BI_MAX_UINT256 }, 'result <= BI_MAX_UINT');
10
+ return result;
11
+ }
12
+ static mulDivRoundingUp(a, b, denominator) {
13
+ const result = (a * b + denominator - 1n) / denominator;
14
+ (0, utils_1._require)(result <= bigint_constants_1.BI_MAX_UINT256, '', { result, BI_MAX_UINT: bigint_constants_1.BI_MAX_UINT256 }, 'result <= BI_MAX_UINT');
15
+ return result;
16
+ }
17
+ }
18
+ exports.FullMath = FullMath;
19
+ //# sourceMappingURL=FullMath.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FullMath.js","sourceRoot":"","sources":["../../../../src/dex/uniswap-v4/contract-math/FullMath.ts"],"names":[],"mappings":";;;AAAA,gEAA2D;AAC3D,0CAA0C;AAE1C,MAAa,QAAQ;IACnB,MAAM,CAAC,MAAM,CAAC,CAAS,EAAE,CAAS,EAAE,WAAmB;QACrD,MAAM,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC;QAErC,IAAA,gBAAQ,EACN,MAAM,IAAI,iCAAc,EACxB,EAAE,EACF,EAAE,MAAM,EAAE,WAAW,EAAE,iCAAc,EAAE,EACvC,uBAAuB,CACxB,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,CAAS,EAAE,CAAS,EAAE,WAAmB;QAC/D,MAAM,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,WAAW,GAAG,EAAE,CAAC,GAAG,WAAW,CAAC;QAExD,IAAA,gBAAQ,EACN,MAAM,IAAI,iCAAc,EACxB,EAAE,EACF,EAAE,MAAM,EAAE,WAAW,EAAE,iCAAc,EAAE,EACvC,uBAAuB,CACxB,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AA1BD,4BA0BC"}
@@ -0,0 +1,13 @@
1
+ export declare class LPFeeLibrary {
2
+ static readonly DYNAMIC_FEE_FLAG: number;
3
+ static readonly OVERRIDE_FEE_FLAG: number;
4
+ static readonly REMOVE_OVERRIDE_MASK: number;
5
+ static readonly MAX_LP_FEE: number;
6
+ static isDynamicFee(fee: number): boolean;
7
+ static isValid(fee: number): boolean;
8
+ static validate(fee: number): void;
9
+ static getInitialLPFee(fee: number): number;
10
+ static isOverride(fee: number): boolean;
11
+ static removeOverrideFlag(fee: number): number;
12
+ static removeOverrideFlagAndValidate(fee: number): number;
13
+ }