@paraswap/dex-lib 2.50.5 → 2.50.6-sdai

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 (263) hide show
  1. package/build/abi/maker-psm/pot.json +322 -0
  2. package/build/abi/{angle/stagToken.json → sdai/SavingsDai.abi.json} +177 -263
  3. package/build/config.js +2 -1
  4. package/build/config.js.map +1 -1
  5. package/build/dex/curve-v1-factory/config.js +11 -128
  6. package/build/dex/curve-v1-factory/config.js.map +1 -1
  7. package/build/dex/curve-v1-factory/curve-v1-factory.d.ts +0 -1
  8. package/build/dex/curve-v1-factory/curve-v1-factory.js +17 -29
  9. package/build/dex/curve-v1-factory/curve-v1-factory.js.map +1 -1
  10. package/build/dex/curve-v1-factory/curve-v1-pool-manager.js +0 -1
  11. package/build/dex/curve-v1-factory/curve-v1-pool-manager.js.map +1 -1
  12. package/build/dex/curve-v1-factory/price-handlers/functions/_calc_withdraw_one_coin.js +0 -1
  13. package/build/dex/curve-v1-factory/price-handlers/functions/_calc_withdraw_one_coin.js.map +1 -1
  14. package/build/dex/curve-v1-factory/price-handlers/functions/_dynamic_fee.js +1 -4
  15. package/build/dex/curve-v1-factory/price-handlers/functions/_dynamic_fee.js.map +1 -1
  16. package/build/dex/curve-v1-factory/price-handlers/functions/_rates.js +0 -1
  17. package/build/dex/curve-v1-factory/price-handlers/functions/_rates.js.map +1 -1
  18. package/build/dex/curve-v1-factory/price-handlers/functions/_xp.js +0 -1
  19. package/build/dex/curve-v1-factory/price-handlers/functions/_xp.js.map +1 -1
  20. package/build/dex/curve-v1-factory/price-handlers/functions/_xp_mem.js +0 -1
  21. package/build/dex/curve-v1-factory/price-handlers/functions/_xp_mem.js.map +1 -1
  22. package/build/dex/curve-v1-factory/price-handlers/functions/calc_token_amount.js +0 -1
  23. package/build/dex/curve-v1-factory/price-handlers/functions/calc_token_amount.js.map +1 -1
  24. package/build/dex/curve-v1-factory/price-handlers/functions/calc_withdraw_one_coin.js +0 -1
  25. package/build/dex/curve-v1-factory/price-handlers/functions/calc_withdraw_one_coin.js.map +1 -1
  26. package/build/dex/curve-v1-factory/price-handlers/functions/constants.js +0 -10
  27. package/build/dex/curve-v1-factory/price-handlers/functions/constants.js.map +1 -1
  28. package/build/dex/curve-v1-factory/price-handlers/functions/get_D.js +0 -40
  29. package/build/dex/curve-v1-factory/price-handlers/functions/get_D.js.map +1 -1
  30. package/build/dex/curve-v1-factory/price-handlers/functions/get_D_mem.js +0 -1
  31. package/build/dex/curve-v1-factory/price-handlers/functions/get_D_mem.js.map +1 -1
  32. package/build/dex/curve-v1-factory/price-handlers/functions/get_D_precisions.js +0 -1
  33. package/build/dex/curve-v1-factory/price-handlers/functions/get_D_precisions.js.map +1 -1
  34. package/build/dex/curve-v1-factory/price-handlers/functions/get_dy.js +0 -24
  35. package/build/dex/curve-v1-factory/price-handlers/functions/get_dy.js.map +1 -1
  36. package/build/dex/curve-v1-factory/price-handlers/functions/get_dy_underlying.js +0 -1
  37. package/build/dex/curve-v1-factory/price-handlers/functions/get_dy_underlying.js.map +1 -1
  38. package/build/dex/curve-v1-factory/price-handlers/functions/get_y.js +0 -53
  39. package/build/dex/curve-v1-factory/price-handlers/functions/get_y.js.map +1 -1
  40. package/build/dex/curve-v1-factory/price-handlers/functions/get_y_D.js +0 -1
  41. package/build/dex/curve-v1-factory/price-handlers/functions/get_y_D.js.map +1 -1
  42. package/build/dex/curve-v1-factory/price-handlers/functions/utils.d.ts +0 -1
  43. package/build/dex/curve-v1-factory/price-handlers/functions/utils.js +1 -5
  44. package/build/dex/curve-v1-factory/price-handlers/functions/utils.js.map +1 -1
  45. package/build/dex/curve-v1-factory/price-handlers/types.d.ts +2 -2
  46. package/build/dex/curve-v1-factory/state-polling-pools/factory-pool-polling.d.ts +2 -3
  47. package/build/dex/curve-v1-factory/state-polling-pools/factory-pool-polling.js +6 -38
  48. package/build/dex/curve-v1-factory/state-polling-pools/factory-pool-polling.js.map +1 -1
  49. package/build/dex/curve-v1-factory/state-polling-pools/pool-polling-base.js.map +1 -1
  50. package/build/dex/curve-v1-factory/types.d.ts +2 -11
  51. package/build/dex/curve-v1-factory/types.js +0 -3
  52. package/build/dex/curve-v1-factory/types.js.map +1 -1
  53. package/build/dex/hashflow/constants.d.ts +0 -27
  54. package/build/dex/hashflow/constants.js +1 -29
  55. package/build/dex/hashflow/constants.js.map +1 -1
  56. package/build/dex/hashflow/hashflow.d.ts +2 -3
  57. package/build/dex/hashflow/hashflow.js +12 -69
  58. package/build/dex/hashflow/hashflow.js.map +1 -1
  59. package/build/dex/hashflow/types.d.ts +0 -11
  60. package/build/dex/hashflow/types.js +0 -9
  61. package/build/dex/hashflow/types.js.map +1 -1
  62. package/build/dex/idex.d.ts +1 -1
  63. package/build/dex/index.d.ts +2 -2
  64. package/build/dex/index.js +2 -0
  65. package/build/dex/index.js.map +1 -1
  66. package/build/dex/pancakeswap-v3/config.js +0 -15
  67. package/build/dex/pancakeswap-v3/config.js.map +1 -1
  68. package/build/dex/pancakeswap-v3/pancakeswap-v3.js +1 -1
  69. package/build/dex/pancakeswap-v3/pancakeswap-v3.js.map +1 -1
  70. package/build/dex/sdai/config.d.ts +11 -0
  71. package/build/dex/sdai/config.js +24 -0
  72. package/build/dex/sdai/config.js.map +1 -0
  73. package/build/dex/sdai/constants.d.ts +2 -0
  74. package/build/dex/sdai/constants.js +6 -0
  75. package/build/dex/sdai/constants.js.map +1 -0
  76. package/build/dex/sdai/scripts/validate-state.d.ts +1 -0
  77. package/build/dex/sdai/scripts/validate-state.js +102 -0
  78. package/build/dex/sdai/scripts/validate-state.js.map +1 -0
  79. package/build/dex/sdai/sdai-pool.d.ts +16 -0
  80. package/build/dex/sdai/sdai-pool.js +85 -0
  81. package/build/dex/sdai/sdai-pool.js.map +1 -0
  82. package/build/dex/sdai/sdai.d.ts +51 -0
  83. package/build/dex/sdai/sdai.js +172 -0
  84. package/build/dex/sdai/sdai.js.map +1 -0
  85. package/build/dex/sdai/types.d.ts +21 -0
  86. package/build/dex/sdai/types.js +11 -0
  87. package/build/dex/sdai/types.js.map +1 -0
  88. package/build/dex/sdai/utils.d.ts +4 -0
  89. package/build/dex/sdai/utils.js +39 -0
  90. package/build/dex/sdai/utils.js.map +1 -0
  91. package/build/dex/woo-fi-v2/config.js +4 -4
  92. package/package.json +1 -1
  93. package/src/abi/maker-psm/pot.json +322 -0
  94. package/src/abi/sdai/SavingsDai.abi.json +877 -0
  95. package/src/abi/uniswap-v3/AlienBaseV3Router.abi.json +52 -0
  96. package/src/config.ts +2 -1
  97. package/src/dex/curve-v1-factory/config.ts +11 -128
  98. package/src/dex/curve-v1-factory/curve-v1-factory-e2e.test.ts +1 -123
  99. package/src/dex/curve-v1-factory/curve-v1-factory-integration.test.ts +0 -392
  100. package/src/dex/curve-v1-factory/curve-v1-factory.ts +39 -61
  101. package/src/dex/curve-v1-factory/curve-v1-pool-manager.ts +0 -1
  102. package/src/dex/curve-v1-factory/price-handlers/functions/_calc_withdraw_one_coin.ts +0 -2
  103. package/src/dex/curve-v1-factory/price-handlers/functions/_dynamic_fee.ts +2 -6
  104. package/src/dex/curve-v1-factory/price-handlers/functions/_rates.ts +0 -2
  105. package/src/dex/curve-v1-factory/price-handlers/functions/_xp.ts +0 -2
  106. package/src/dex/curve-v1-factory/price-handlers/functions/_xp_mem.ts +0 -2
  107. package/src/dex/curve-v1-factory/price-handlers/functions/calc_token_amount.ts +0 -2
  108. package/src/dex/curve-v1-factory/price-handlers/functions/calc_withdraw_one_coin.ts +0 -2
  109. package/src/dex/curve-v1-factory/price-handlers/functions/constants.ts +0 -11
  110. package/src/dex/curve-v1-factory/price-handlers/functions/get_D.ts +1 -59
  111. package/src/dex/curve-v1-factory/price-handlers/functions/get_D_mem.ts +0 -2
  112. package/src/dex/curve-v1-factory/price-handlers/functions/get_D_precisions.ts +0 -2
  113. package/src/dex/curve-v1-factory/price-handlers/functions/get_dy.ts +0 -51
  114. package/src/dex/curve-v1-factory/price-handlers/functions/get_dy_underlying.ts +0 -2
  115. package/src/dex/curve-v1-factory/price-handlers/functions/get_y.ts +1 -68
  116. package/src/dex/curve-v1-factory/price-handlers/functions/get_y_D.ts +0 -2
  117. package/src/dex/curve-v1-factory/price-handlers/functions/utils.ts +0 -4
  118. package/src/dex/curve-v1-factory/price-handlers/types.ts +1 -8
  119. package/src/dex/curve-v1-factory/state-polling-pools/factory-pool-polling.ts +18 -71
  120. package/src/dex/curve-v1-factory/state-polling-pools/pool-polling-base.ts +0 -1
  121. package/src/dex/curve-v1-factory/types.ts +1 -12
  122. package/src/dex/hashflow/constants.ts +0 -32
  123. package/src/dex/hashflow/hashflow.ts +19 -121
  124. package/src/dex/hashflow/types.ts +2 -20
  125. package/src/dex/idex.ts +1 -1
  126. package/src/dex/index.ts +4 -2
  127. package/src/dex/pancakeswap-v3/config.ts +0 -16
  128. package/src/dex/pancakeswap-v3/pancakeswap-v3.ts +1 -3
  129. package/src/dex/sdai/config.ts +28 -0
  130. package/src/dex/sdai/constants.ts +2 -0
  131. package/src/dex/sdai/scripts/validate-state.ts +144 -0
  132. package/src/dex/sdai/sdai-e2e.test.ts +96 -0
  133. package/src/dex/sdai/sdai-events.test.ts +105 -0
  134. package/src/dex/sdai/sdai-integration.test.ts +148 -0
  135. package/src/dex/sdai/sdai-pool.ts +113 -0
  136. package/src/dex/sdai/sdai.ts +233 -0
  137. package/src/dex/sdai/types.ts +23 -0
  138. package/src/dex/sdai/utils.ts +48 -0
  139. package/src/dex/woo-fi-v2/config.ts +4 -4
  140. package/tests/constants-e2e.ts +3 -38
  141. package/tests/utils-e2e.ts +0 -1
  142. package/build/abi/Redstone.json +0 -739
  143. package/build/abi/angle-transmuter/MorphoOracle.json +0 -193
  144. package/build/abi/angle-transmuter/MorphoVault.json +0 -2506
  145. package/build/abi/angle-transmuter/Pyth.json +0 -1534
  146. package/build/abi/angle-transmuter/Transmuter.json +0 -1711
  147. package/build/abi/pharaoh/PharaohPool.abi.json +0 -1582
  148. package/build/abi/smardex/smardex-factory.json +0 -185
  149. package/build/abi/smardex/smardex-pool.json +0 -578
  150. package/build/abi/smardex/smardex-router.json +0 -648
  151. package/build/abi/trader-joe-v2_1/FactoryABI.json +0 -1208
  152. package/build/abi/trader-joe-v2_1/PairABI.json +0 -1493
  153. package/build/abi/trader-joe-v2_1/RouterABI.json +0 -1489
  154. package/build/abi/trader-joe-v2_1/StateMulticall.json +0 -193
  155. package/build/abi/wombat/pool.json +0 -1289
  156. package/build/dex/aave-v2/tokens-avalanche.json +0 -44
  157. package/build/dex/aave-v2/tokens-mainnet.json +0 -188
  158. package/build/dex/aave-v2/tokens-polygon.json +0 -44
  159. package/build/dex/angle-staked-stable/angle-staked-stable-pool.d.ts +0 -55
  160. package/build/dex/angle-staked-stable/angle-staked-stable-pool.js +0 -183
  161. package/build/dex/angle-staked-stable/angle-staked-stable-pool.js.map +0 -1
  162. package/build/dex/angle-staked-stable/angle-staked-stable.d.ts +0 -50
  163. package/build/dex/angle-staked-stable/angle-staked-stable.js +0 -228
  164. package/build/dex/angle-staked-stable/angle-staked-stable.js.map +0 -1
  165. package/build/dex/angle-staked-stable/config.d.ts +0 -4
  166. package/build/dex/angle-staked-stable/config.js +0 -139
  167. package/build/dex/angle-staked-stable/config.js.map +0 -1
  168. package/build/dex/angle-staked-stable/types.d.ts +0 -15
  169. package/build/dex/angle-staked-stable/types.js +0 -3
  170. package/build/dex/angle-staked-stable/types.js.map +0 -1
  171. package/build/dex/angle-transmuter/angle-transmuter-pool.d.ts +0 -61
  172. package/build/dex/angle-transmuter/angle-transmuter-pool.js +0 -415
  173. package/build/dex/angle-transmuter/angle-transmuter-pool.js.map +0 -1
  174. package/build/dex/angle-transmuter/angle-transmuter.d.ts +0 -59
  175. package/build/dex/angle-transmuter/angle-transmuter.js +0 -262
  176. package/build/dex/angle-transmuter/angle-transmuter.js.map +0 -1
  177. package/build/dex/angle-transmuter/backedOracle.d.ts +0 -19
  178. package/build/dex/angle-transmuter/backedOracle.js +0 -56
  179. package/build/dex/angle-transmuter/backedOracle.js.map +0 -1
  180. package/build/dex/angle-transmuter/config.d.ts +0 -4
  181. package/build/dex/angle-transmuter/config.js +0 -30
  182. package/build/dex/angle-transmuter/config.js.map +0 -1
  183. package/build/dex/angle-transmuter/constants.d.ts +0 -77
  184. package/build/dex/angle-transmuter/constants.js +0 -94
  185. package/build/dex/angle-transmuter/constants.js.map +0 -1
  186. package/build/dex/angle-transmuter/morphoOracle.d.ts +0 -42
  187. package/build/dex/angle-transmuter/morphoOracle.js +0 -179
  188. package/build/dex/angle-transmuter/morphoOracle.js.map +0 -1
  189. package/build/dex/angle-transmuter/morphoVault.d.ts +0 -19
  190. package/build/dex/angle-transmuter/morphoVault.js +0 -78
  191. package/build/dex/angle-transmuter/morphoVault.js.map +0 -1
  192. package/build/dex/angle-transmuter/pyth.d.ts +0 -19
  193. package/build/dex/angle-transmuter/pyth.js +0 -70
  194. package/build/dex/angle-transmuter/pyth.js.map +0 -1
  195. package/build/dex/angle-transmuter/redstone.d.ts +0 -20
  196. package/build/dex/angle-transmuter/redstone.js +0 -73
  197. package/build/dex/angle-transmuter/redstone.js.map +0 -1
  198. package/build/dex/angle-transmuter/transmuter.d.ts +0 -52
  199. package/build/dex/angle-transmuter/transmuter.js +0 -374
  200. package/build/dex/angle-transmuter/transmuter.js.map +0 -1
  201. package/build/dex/angle-transmuter/types.d.ts +0 -188
  202. package/build/dex/angle-transmuter/types.js +0 -33
  203. package/build/dex/angle-transmuter/types.js.map +0 -1
  204. package/build/dex/angle-transmuter/utils.d.ts +0 -9
  205. package/build/dex/angle-transmuter/utils.js +0 -252
  206. package/build/dex/angle-transmuter/utils.js.map +0 -1
  207. package/build/dex/smardex/subgraph-queries.d.ts +0 -1
  208. package/build/dex/smardex/subgraph-queries.js +0 -17
  209. package/build/dex/smardex/subgraph-queries.js.map +0 -1
  210. package/build/dex/smardex/usd-reserves.d.ts +0 -23
  211. package/build/dex/smardex/usd-reserves.js +0 -86
  212. package/build/dex/smardex/usd-reserves.js.map +0 -1
  213. package/build/dex/trader-joe-v2-1-2/config.d.ts +0 -4
  214. package/build/dex/trader-joe-v2-1-2/config.js +0 -47
  215. package/build/dex/trader-joe-v2-1-2/config.js.map +0 -1
  216. package/build/dex/trader-joe-v2-1-2/constants.d.ts +0 -20
  217. package/build/dex/trader-joe-v2-1-2/constants.js +0 -22
  218. package/build/dex/trader-joe-v2-1-2/constants.js.map +0 -1
  219. package/build/dex/trader-joe-v2-1-2/math/index.d.ts +0 -37
  220. package/build/dex/trader-joe-v2-1-2/math/index.js +0 -291
  221. package/build/dex/trader-joe-v2-1-2/math/index.js.map +0 -1
  222. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2-pool.d.ts +0 -60
  223. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2-pool.js +0 -248
  224. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2-pool.js.map +0 -1
  225. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2.d.ts +0 -53
  226. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2.js +0 -307
  227. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2.js.map +0 -1
  228. package/build/dex/trader-joe-v2-1-2/types.d.ts +0 -82
  229. package/build/dex/trader-joe-v2-1-2/types.js +0 -9
  230. package/build/dex/trader-joe-v2-1-2/types.js.map +0 -1
  231. package/build/dex/trader-joe-v2_1/config.d.ts +0 -4
  232. package/build/dex/trader-joe-v2_1/config.js +0 -47
  233. package/build/dex/trader-joe-v2_1/config.js.map +0 -1
  234. package/build/dex/trader-joe-v2_1/constants.d.ts +0 -20
  235. package/build/dex/trader-joe-v2_1/constants.js +0 -22
  236. package/build/dex/trader-joe-v2_1/constants.js.map +0 -1
  237. package/build/dex/trader-joe-v2_1/math/index.d.ts +0 -37
  238. package/build/dex/trader-joe-v2_1/math/index.js +0 -291
  239. package/build/dex/trader-joe-v2_1/math/index.js.map +0 -1
  240. package/build/dex/trader-joe-v2_1/trader-joe-v2.1.d.ts +0 -0
  241. package/build/dex/trader-joe-v2_1/trader-joe-v2.1.js +0 -384
  242. package/build/dex/trader-joe-v2_1/trader-joe-v2.1.js.map +0 -1
  243. package/build/dex/trader-joe-v2_1/trader-joe-v2_1-pool.d.ts +0 -60
  244. package/build/dex/trader-joe-v2_1/trader-joe-v2_1-pool.js +0 -247
  245. package/build/dex/trader-joe-v2_1/trader-joe-v2_1-pool.js.map +0 -1
  246. package/build/dex/trader-joe-v2_1/trader-joe-v2_1.d.ts +0 -53
  247. package/build/dex/trader-joe-v2_1/trader-joe-v2_1.js +0 -307
  248. package/build/dex/trader-joe-v2_1/trader-joe-v2_1.js.map +0 -1
  249. package/build/dex/trader-joe-v2_1/types.d.ts +0 -82
  250. package/build/dex/trader-joe-v2_1/types.js +0 -9
  251. package/build/dex/trader-joe-v2_1/types.js.map +0 -1
  252. package/build/dex/wombat/wombat-pool-poller.d.ts +0 -22
  253. package/build/dex/wombat/wombat-pool-poller.js +0 -164
  254. package/build/dex/wombat/wombat-pool-poller.js.map +0 -1
  255. package/build/dex-helper/Cache.d.ts +0 -31
  256. package/build/dex-helper/Cache.js +0 -106
  257. package/build/dex-helper/Cache.js.map +0 -1
  258. package/build/dex-helper/RedisBatcher.d.ts +0 -20
  259. package/build/dex-helper/RedisBatcher.js +0 -75
  260. package/build/dex-helper/RedisBatcher.js.map +0 -1
  261. package/build/dex-helper/RedisWrapper.d.ts +0 -37
  262. package/build/dex-helper/RedisWrapper.js +0 -165
  263. package/build/dex-helper/RedisWrapper.js.map +0 -1
@@ -1,44 +0,0 @@
1
- [
2
- {
3
- "aSymbol": "avWETH",
4
- "aAddress": "0x53f7c5869a859f0aec3d334ee8b4cf01e3492f21",
5
- "address": "0x49d5c2bdffac6ce2bfdb6640f4f80f226bc10bab",
6
- "decimals": 18
7
- },
8
- {
9
- "aSymbol": "avDAI",
10
- "aAddress": "0x47afa96cdc9fab46904a55a6ad4bf6660b53c38a",
11
- "address": "0xd586e7f844cea2f87f50152665bcbc2c279d8d70",
12
- "decimals": 18
13
- },
14
- {
15
- "aSymbol": "avUSDT",
16
- "aAddress": "0x532e6537fea298397212f09a61e03311686f548e",
17
- "address": "0xc7198437980c041c805a1edcba50c1ce5db95118",
18
- "decimals": 6
19
- },
20
- {
21
- "aSymbol": "avUSDC",
22
- "aAddress": "0x46a51127c3ce23fb7ab1de06226147f446e4a857",
23
- "address": "0xa7d7079b0fead91f3e65f86e8915cb59c1a4c664",
24
- "decimals": 6
25
- },
26
- {
27
- "aSymbol": "avAAVE",
28
- "aAddress": "0xd45b7c061016102f9fa220502908f2c0f1add1d7",
29
- "address": "0x63a72806098bd3d9520cc43356dd78afe5d386d9",
30
- "decimals": 18
31
- },
32
- {
33
- "aSymbol": "avWBTC",
34
- "aAddress": "0x686bef2417b6dc32c50a3cbfbcc3bb60e1e9a15d",
35
- "address": "0x50b7545627a5162f82a992c33b87adc75187b218",
36
- "decimals": 8
37
- },
38
- {
39
- "aSymbol": "avWAVAX",
40
- "aAddress": "0xdfe521292ece2a4f44242efbcd66bc594ca9714b",
41
- "address": "0xb31f66aa3c1e785363f0875a1b74e27b85fd66c7",
42
- "decimals": 18
43
- }
44
- ]
@@ -1,188 +0,0 @@
1
- [
2
- {
3
- "aSymbol": "aUSDT",
4
- "aAddress": "0x3ed3b47dd13ec9a98b44e6204a523e766b225811",
5
- "address": "0xdac17f958d2ee523a2206206994597c13d831ec7",
6
- "decimals": 6
7
- },
8
- {
9
- "aSymbol": "aWBTC",
10
- "aAddress": "0x9ff58f4ffb29fa2266ab25e75e2a8b3503311656",
11
- "address": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
12
- "decimals": 8
13
- },
14
- {
15
- "aSymbol": "aWETH",
16
- "aAddress": "0x030ba81f1c18d280636f32af80b9aad02cf0854e",
17
- "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
18
- "decimals": 18
19
- },
20
- {
21
- "aSymbol": "aYFI",
22
- "aAddress": "0x5165d24277cd063f5ac44efd447b27025e888f37",
23
- "address": "0x0bc529c00c6401aef6d220be8c6ea1667f6ad93e",
24
- "decimals": 18
25
- },
26
- {
27
- "aSymbol": "aZRX",
28
- "aAddress": "0xdf7ff54aacacbff42dfe29dd6144a69b629f8c9e",
29
- "address": "0xe41d2489571d322189246dafa5ebde1f4699f498",
30
- "decimals": 18
31
- },
32
- {
33
- "aSymbol": "aUNI",
34
- "aAddress": "0xb9d7cb55f463405cdfbe4e90a6d2df01c2b92bf1",
35
- "address": "0x1f9840a85d5af5bf1d1762f925bdaddc4201f984",
36
- "decimals": 18
37
- },
38
- {
39
- "aSymbol": "aAAVE",
40
- "aAddress": "0xffc97d72e13e01096502cb8eb52dee56f74dad7b",
41
- "address": "0x7fc66500c84a76ad7e9c93437bfc5ac33e2ddae9",
42
- "decimals": 18
43
- },
44
- {
45
- "aSymbol": "aBAT",
46
- "aAddress": "0x05ec93c0365baaeabf7aeffb0972ea7ecdd39cf1",
47
- "address": "0x0d8775f648430679a709e98d2b0cb6250d2887ef",
48
- "decimals": 18
49
- },
50
- {
51
- "aSymbol": "aBUSD",
52
- "aAddress": "0xa361718326c15715591c299427c62086f69923d9",
53
- "address": "0x4fabb145d64652a948d72533023f6e7a623c7c53",
54
- "decimals": 18
55
- },
56
- {
57
- "aSymbol": "aDAI",
58
- "aAddress": "0x028171bca77440897b824ca71d1c56cac55b68a3",
59
- "address": "0x6b175474e89094c44da98b954eedeac495271d0f",
60
- "decimals": 18
61
- },
62
- {
63
- "aSymbol": "aENJ",
64
- "aAddress": "0xac6df26a590f08dcc95d5a4705ae8abbc88509ef",
65
- "address": "0xf629cbd94d3791c9250152bd8dfbdf380e2a3b9c",
66
- "decimals": 18
67
- },
68
- {
69
- "aSymbol": "aKNC",
70
- "aAddress": "0x39c6b3e42d6a679d7d776778fe880bc9487c2eda",
71
- "address": "0xdd974d5c2e2928dea5f71b9825b8b646686bd200",
72
- "decimals": 18
73
- },
74
- {
75
- "aSymbol": "aLINK",
76
- "aAddress": "0xa06bc25b5805d5f8d82847d191cb4af5a3e873e0",
77
- "address": "0x514910771af9ca656af840dff83e8264ecf986ca",
78
- "decimals": 18
79
- },
80
- {
81
- "aSymbol": "aMANA",
82
- "aAddress": "0xa685a61171bb30d4072b338c80cb7b2c865c873e",
83
- "address": "0x0f5d2fb29fb7d3cfee444a200298f468908cc942",
84
- "decimals": 18
85
- },
86
- {
87
- "aSymbol": "aMKR",
88
- "aAddress": "0xc713e5e149d5d0715dcd1c156a020976e7e56b88",
89
- "address": "0x9f8f72aa9304c8b593d555f12ef6589cc3a579a2",
90
- "decimals": 18
91
- },
92
- {
93
- "aSymbol": "aREN",
94
- "aAddress": "0xcc12abe4ff81c9378d670de1b57f8e0dd228d77a",
95
- "address": "0x408e41876cccdc0f92210600ef50372656052a38",
96
- "decimals": 18
97
- },
98
- {
99
- "aSymbol": "aSNX",
100
- "aAddress": "0x35f6b052c598d933d69a4eec4d04c73a191fe6c2",
101
- "address": "0xc011a73ee8576fb46f5e1c5751ca3b9fe0af2a6f",
102
- "decimals": 18
103
- },
104
- {
105
- "aSymbol": "aSUSD",
106
- "aAddress": "0x6c5024cd4f8a59110119c56f8933403a539555eb",
107
- "address": "0x57ab1ec28d129707052df4df418d58a2d46d5f51",
108
- "decimals": 18
109
- },
110
- {
111
- "aSymbol": "aTUSD",
112
- "aAddress": "0x101cc05f4a51c0319f570d5e146a8c625198e636",
113
- "address": "0x0000000000085d4780b73119b644ae5ecd22b376",
114
- "decimals": 18
115
- },
116
- {
117
- "aSymbol": "aUSDC",
118
- "aAddress": "0xbcca60bb61934080951369a648fb03df4f96263c",
119
- "address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
120
- "decimals": 6
121
- },
122
- {
123
- "aSymbol": "aCRV",
124
- "aAddress": "0x8dae6cb04688c62d939ed9b68d32bc62e49970b1",
125
- "address": "0xd533a949740bb3306d119cc777fa900ba034cd52",
126
- "decimals": 18
127
- },
128
- {
129
- "aSymbol": "aGUSD",
130
- "aAddress": "0xd37ee7e4f452c6638c96536e68090de8cbcdb583",
131
- "address": "0x056fd409e1d7a124bd7017459dfea2f387b6d5cd",
132
- "decimals": 2
133
- },
134
- {
135
- "aSymbol": "aBAL",
136
- "aAddress": "0x272f97b7a56a387ae942350bbc7df5700f8a4576",
137
- "address": "0xba100000625a3754423978a60c9317c58a424e3d",
138
- "decimals": 18
139
- },
140
- {
141
- "aSymbol": "aXSUSHI",
142
- "aAddress": "0xf256cc7847e919fac9b808cc216cac87ccf2f47a",
143
- "address": "0x8798249c2e607446efb7ad49ec89dd1865ff4272",
144
- "decimals": 18
145
- },
146
- {
147
- "aSymbol": "aRENFIL",
148
- "aAddress": "0x514cd6756ccbe28772d4cb81bc3156ba9d1744aa",
149
- "address": "0xd5147bc8e386d91cc5dbe72099dac6c9b99276f5",
150
- "decimals": 18
151
- },
152
- {
153
- "aSymbol": "aRAI",
154
- "aAddress": "0xc9bc48c72154ef3e5425641a3c747242112a46af",
155
- "address": "0x03ab458634910aad20ef5f1c8ee96f1d6ac54919",
156
- "decimals": 18
157
- },
158
- {
159
- "aSymbol": "aAMPL",
160
- "aAddress": "0x1e6bb68acec8fefbd87d192be09bb274170a0548",
161
- "address": "0xd46ba6d942050d489dbd938a2c909a5d5039a161",
162
- "decimals": 9
163
- },
164
- {
165
- "aSymbol": "aUSDP",
166
- "aAddress": "0x2e8f4bdbe3d47d7d7de490437aea9915d930f1a3",
167
- "address": "0x8e870d67f660d95d5be530380d0ec0bd388289e1",
168
- "decimals": 18
169
- },
170
- {
171
- "aSymbol": "aDPI",
172
- "aAddress": "0x6f634c6135d2ebd550000ac92f494f9cb8183dae",
173
- "address": "0x1494ca1f11d487c2bbe4543e90080aeba4ba3c2b",
174
- "decimals": 18
175
- },
176
- {
177
- "aSymbol": "aFRAX",
178
- "aAddress": "0xd4937682df3c8aef4fe912a96a74121c0829e664",
179
- "address": "0x853d955acef822db058eb8505911ed77f175b99e",
180
- "decimals": 18
181
- },
182
- {
183
- "aSymbol": "aFEI",
184
- "aAddress": "0x683923db55fead99a79fa01a27eec3cb19679cc3",
185
- "address": "0x956f47f50a910163d8bf957cf5846d573e7f87ca",
186
- "decimals": 18
187
- }
188
- ]
@@ -1,44 +0,0 @@
1
- [
2
- {
3
- "aSymbol": "amAAVE",
4
- "aAddress": "0x1d2a0E5EC8E5bBDCA5CB219e649B565d8e5c3360",
5
- "address": "0xd6df932a45c0f255f85145f286ea0b292b21c90b",
6
- "decimals": 18
7
- },
8
- {
9
- "aSymbol": "amDAI",
10
- "aAddress": "0x27f8d03b3a2196956ed754badc28d73be8830a6e",
11
- "address": "0x8f3cf7ad23cd3cadbd9735aff958023239c6a063",
12
- "decimals": 18
13
- },
14
- {
15
- "aSymbol": "amUSDC",
16
- "aAddress": "0x1a13f4ca1d028320a707d99520abfefca3998b7f",
17
- "address": "0x2791bca1f2de4661ed88a30c99a7a9449aa84174",
18
- "decimals": 6
19
- },
20
- {
21
- "aSymbol": "amUSDT",
22
- "aAddress": "0x60d55f02a771d515e077c9c2403a1ef324885cec",
23
- "address": "0xc2132d05d31c914a87c6611c10748aeb04b58e8f",
24
- "decimals": 6
25
- },
26
- {
27
- "aSymbol": "amWBTC",
28
- "aAddress": "0x5c2ed810328349100a66b82b78a1791b101c9d61",
29
- "address": "0x1bfd67037b42cf73acf2047067bd4f2c47d9bfd6",
30
- "decimals": 8
31
- },
32
- {
33
- "aSymbol": "amWETH",
34
- "aAddress": "0x28424507fefb6f7f8e9d3860f56504e4e5f5f390",
35
- "address": "0x7ceb23fd6bc0add59e62ac25578270cff1b9f619",
36
- "decimals": 18
37
- },
38
- {
39
- "aSymbol": "amWMATIC",
40
- "aAddress": "0x8df3aad3a84da6b69a4da8aec3ea40d9091b2ac4",
41
- "address": "0x0d500b1d8e8ef31e21c99d1db9a6444d3adf1270",
42
- "decimals": 18
43
- }
44
- ]
@@ -1,55 +0,0 @@
1
- import { Interface } from '@ethersproject/abi';
2
- import type { DeepReadonly } from 'ts-essentials';
3
- import type { BlockHeader, Log, Logger } from '../../types';
4
- import { StatefulEventSubscriber } from '../../stateful-event-subscriber';
5
- import type { IDexHelper } from '../../dex-helper/idex-helper';
6
- import type { PoolState } from './types';
7
- export declare class AngleStakedStableEventPool extends StatefulEventSubscriber<PoolState> {
8
- readonly parentName: string;
9
- protected network: number;
10
- protected dexHelper: IDexHelper;
11
- stakeToken: string;
12
- agToken: string;
13
- handlers: {
14
- [event: string]: (event: any, state: DeepReadonly<PoolState>, log: Readonly<Log>, blockHeader: Readonly<BlockHeader>) => DeepReadonly<PoolState> | null;
15
- };
16
- static angleStakedStableIface: Interface;
17
- static erc20Iface: Interface;
18
- logDecoder: (log: Log) => any;
19
- addressesSubscribed: string[];
20
- BASE_27: bigint;
21
- HALF_BASE_27: bigint;
22
- ZERO: bigint;
23
- constructor(parentName: string, network: number, dexHelper: IDexHelper, stakeToken: string, agToken: string, logger: Logger);
24
- /**
25
- * The function is called every time any of the subscribed
26
- * addresses release log. The function accepts the current
27
- * state, updates the state according to the log, and returns
28
- * the updated state.
29
- * @param state - Current state of event subscriber
30
- * @param log - Log released by one of the subscribed addresses
31
- * @returns Updates state of the event subscriber after the log
32
- */
33
- protected processLog(state: DeepReadonly<PoolState>, log: Readonly<Log>, blockHeader: Readonly<BlockHeader>): DeepReadonly<PoolState> | null;
34
- /**
35
- * The function generates state using on-chain calls. This
36
- * function is called to regenerate state if the event based
37
- * system fails to fetch events and the local state is no
38
- * more correct.
39
- * @param blockNumber - Blocknumber for which the state should
40
- * should be generated
41
- * @returns state of the event subscriber at blocknumber
42
- */
43
- generateState(blockNumber: number): Promise<DeepReadonly<PoolState>>;
44
- getRateDeposit(amount: bigint, state: PoolState): bigint;
45
- getRateMint(shares: bigint, state: PoolState): bigint;
46
- getRateRedeem(shares: bigint, state: PoolState): bigint;
47
- getRateWithdraw(amount: bigint, state: PoolState): bigint;
48
- _accrue(state: PoolState): bigint;
49
- _computeUpdatedAssets(amount: bigint, rate: bigint, exp: bigint): bigint;
50
- handleAccrued(event: any, state: PoolState, log: Readonly<Log>, blockHeader: BlockHeader): DeepReadonly<PoolState> | null;
51
- handleRateUpdated(event: any, state: PoolState, log: Readonly<Log>, blockHeader: BlockHeader): DeepReadonly<PoolState> | null;
52
- handleDeposit(event: any, state: PoolState, log: Readonly<Log>, blockHeader: BlockHeader): DeepReadonly<PoolState> | null;
53
- handleWithdraw(event: any, state: PoolState, log: Readonly<Log>, blockHeader: BlockHeader): DeepReadonly<PoolState> | null;
54
- handleToggledPause(event: any, state: PoolState, log: Readonly<Log>): DeepReadonly<PoolState> | null;
55
- }
@@ -1,183 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.AngleStakedStableEventPool = void 0;
7
- const abi_1 = require("@ethersproject/abi");
8
- const utils_1 = require("../../utils");
9
- const stateful_event_subscriber_1 = require("../../stateful-event-subscriber");
10
- const stagToken_json_1 = __importDefault(require("../../abi/angle/stagToken.json"));
11
- const erc20_json_1 = __importDefault(require("../../abi/erc20.json"));
12
- class AngleStakedStableEventPool extends stateful_event_subscriber_1.StatefulEventSubscriber {
13
- constructor(parentName, network, dexHelper, stakeToken, agToken, logger) {
14
- super(parentName, 'Staked_Stable', dexHelper, logger);
15
- this.parentName = parentName;
16
- this.network = network;
17
- this.dexHelper = dexHelper;
18
- this.stakeToken = stakeToken;
19
- this.agToken = agToken;
20
- this.handlers = {};
21
- this.BASE_27 = BigInt(1e27);
22
- this.HALF_BASE_27 = BigInt(1e27 / 2);
23
- this.ZERO = BigInt(0);
24
- this.logDecoder = (log) => AngleStakedStableEventPool.angleStakedStableIface.parseLog(log);
25
- this.addressesSubscribed = [stakeToken];
26
- // Add handlers
27
- this.handlers.Accrued = this.handleAccrued.bind(this);
28
- this.handlers.Deposit = this.handleDeposit.bind(this);
29
- this.handlers.Withdraw = this.handleWithdraw.bind(this);
30
- this.handlers.ToggledPause = this.handleToggledPause.bind(this);
31
- this.handlers.RateUpdated = this.handleRateUpdated.bind(this);
32
- }
33
- /**
34
- * The function is called every time any of the subscribed
35
- * addresses release log. The function accepts the current
36
- * state, updates the state according to the log, and returns
37
- * the updated state.
38
- * @param state - Current state of event subscriber
39
- * @param log - Log released by one of the subscribed addresses
40
- * @returns Updates state of the event subscriber after the log
41
- */
42
- processLog(state, log, blockHeader) {
43
- try {
44
- const event = this.logDecoder(log);
45
- if (event.name in this.handlers) {
46
- return this.handlers[event.name](event, state, log, blockHeader);
47
- }
48
- }
49
- catch (e) {
50
- (0, utils_1.catchParseLogError)(e, this.logger);
51
- }
52
- return null;
53
- }
54
- /**
55
- * The function generates state using on-chain calls. This
56
- * function is called to regenerate state if the event based
57
- * system fails to fetch events and the local state is no
58
- * more correct.
59
- * @param blockNumber - Blocknumber for which the state should
60
- * should be generated
61
- * @returns state of the event subscriber at blocknumber
62
- */
63
- async generateState(blockNumber) {
64
- const poolState = {
65
- totalAssets: 0n,
66
- totalSupply: 0n,
67
- lastUpdate: 0n,
68
- paused: false,
69
- rate: 0n,
70
- };
71
- const multicall = [
72
- {
73
- target: this.agToken,
74
- callData: AngleStakedStableEventPool.erc20Iface.encodeFunctionData('balanceOf', [this.stakeToken]),
75
- },
76
- {
77
- target: this.stakeToken,
78
- callData: AngleStakedStableEventPool.angleStakedStableIface.encodeFunctionData('totalSupply'),
79
- },
80
- {
81
- target: this.stakeToken,
82
- callData: AngleStakedStableEventPool.angleStakedStableIface.encodeFunctionData('lastUpdate'),
83
- },
84
- {
85
- target: this.stakeToken,
86
- callData: AngleStakedStableEventPool.angleStakedStableIface.encodeFunctionData('paused'),
87
- },
88
- {
89
- target: this.stakeToken,
90
- callData: AngleStakedStableEventPool.angleStakedStableIface.encodeFunctionData('rate'),
91
- },
92
- ];
93
- // on chain call
94
- const returnData = (await this.dexHelper.multiContract.methods
95
- .aggregate(multicall)
96
- .call({}, blockNumber)).returnData;
97
- // Decode
98
- poolState.totalAssets = (0, utils_1.bigIntify)(AngleStakedStableEventPool.erc20Iface.decodeFunctionResult('balanceOf', returnData[0])[0]);
99
- poolState.totalSupply = (0, utils_1.bigIntify)(AngleStakedStableEventPool.angleStakedStableIface.decodeFunctionResult('totalSupply', returnData[1])[0]);
100
- poolState.lastUpdate = (0, utils_1.bigIntify)(AngleStakedStableEventPool.angleStakedStableIface.decodeFunctionResult('lastUpdate', returnData[2])[0]);
101
- poolState.paused =
102
- AngleStakedStableEventPool.angleStakedStableIface.decodeFunctionResult('paused', returnData[3])[0];
103
- poolState.rate = (0, utils_1.bigIntify)(AngleStakedStableEventPool.angleStakedStableIface.decodeFunctionResult('rate', returnData[4])[0]);
104
- return poolState;
105
- }
106
- getRateDeposit(amount, state) {
107
- const newTotalAssets = this._accrue(state);
108
- return amount === 0n || state.totalSupply === 0n
109
- ? amount
110
- : (amount * state.totalSupply) / newTotalAssets;
111
- }
112
- getRateMint(shares, state) {
113
- const newTotalAssets = this._accrue(state);
114
- const roundUp = (shares * newTotalAssets) % state.totalSupply > 0n ? 1n : 0n;
115
- return state.totalSupply === 0n
116
- ? shares
117
- : (shares * newTotalAssets) / state.totalSupply + roundUp;
118
- }
119
- getRateRedeem(shares, state) {
120
- const newTotalAssets = this._accrue(state);
121
- return state.totalSupply === 0n
122
- ? shares
123
- : (shares * newTotalAssets) / state.totalSupply;
124
- }
125
- getRateWithdraw(amount, state) {
126
- const newTotalAssets = this._accrue(state);
127
- const roundUp = (amount * state.totalSupply) % newTotalAssets > 0n ? 1n : 0n;
128
- return amount === 0n || state.totalSupply === 0n
129
- ? amount
130
- : (amount * state.totalSupply) / newTotalAssets + roundUp;
131
- }
132
- _accrue(state) {
133
- const newTotalAssets = this._computeUpdatedAssets(state.totalAssets, state.rate, (0, utils_1.currentBigIntTimestampInS)() - state.lastUpdate);
134
- return newTotalAssets;
135
- }
136
- _computeUpdatedAssets(amount, rate, exp) {
137
- if (exp === 0n || rate === 0n)
138
- return amount;
139
- const expMinusOne = exp - 1n;
140
- const expMinusTwo = exp > 2n ? exp - 2n : 0n;
141
- const basePowerTwo = (rate * rate + this.HALF_BASE_27) / this.BASE_27;
142
- const basePowerThree = (basePowerTwo * rate + this.HALF_BASE_27) / this.BASE_27;
143
- const secondTerm = (exp * expMinusOne * basePowerTwo) / 2n;
144
- const thirdTerm = (exp * expMinusOne * expMinusTwo * basePowerThree) / 6n;
145
- return ((amount * (this.BASE_27 + rate * exp + secondTerm + thirdTerm)) /
146
- this.BASE_27);
147
- }
148
- handleAccrued(event, state, log, blockHeader) {
149
- const interest = (0, utils_1.bigIntify)(event.args.interest);
150
- state.totalAssets += interest;
151
- state.lastUpdate = (0, utils_1.bigIntify)(blockHeader.timestamp);
152
- return state;
153
- }
154
- handleRateUpdated(event, state, log, blockHeader) {
155
- state.rate = (0, utils_1.bigIntify)(event.args.newRate);
156
- return state;
157
- }
158
- handleDeposit(event, state, log, blockHeader) {
159
- const assets = (0, utils_1.bigIntify)(event.args.assets);
160
- const shares = (0, utils_1.bigIntify)(event.args.shares);
161
- state.totalAssets += assets;
162
- state.totalSupply += shares;
163
- state.lastUpdate = (0, utils_1.bigIntify)(blockHeader.timestamp);
164
- return state;
165
- }
166
- handleWithdraw(event, state, log, blockHeader) {
167
- const assets = (0, utils_1.bigIntify)(event.args.assets);
168
- const shares = (0, utils_1.bigIntify)(event.args.shares);
169
- state.totalAssets -= assets;
170
- state.totalSupply -= shares;
171
- state.lastUpdate = (0, utils_1.bigIntify)(blockHeader.timestamp);
172
- return state;
173
- }
174
- handleToggledPause(event, state, log) {
175
- const pauseStatus = event.args.pauseStatus;
176
- state.paused = pauseStatus;
177
- return state;
178
- }
179
- }
180
- exports.AngleStakedStableEventPool = AngleStakedStableEventPool;
181
- AngleStakedStableEventPool.angleStakedStableIface = new abi_1.Interface(stagToken_json_1.default);
182
- AngleStakedStableEventPool.erc20Iface = new abi_1.Interface(erc20_json_1.default);
183
- //# sourceMappingURL=angle-staked-stable-pool.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"angle-staked-stable-pool.js","sourceRoot":"","sources":["../../../src/dex/angle-staked-stable/angle-staked-stable-pool.ts"],"names":[],"mappings":"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"}
@@ -1,50 +0,0 @@
1
- import { Interface } from '@ethersproject/abi';
2
- import type { AsyncOrSync } from 'ts-essentials';
3
- import type { Token, Address, ExchangePrices, PoolPrices, AdapterExchangeParam, SimpleExchangeParam, PoolLiquidity, Logger } from '../../types';
4
- import { SwapSide, type Network } from '../../constants';
5
- import type { IDex } from '../../dex/idex';
6
- import type { IDexHelper } from '../../dex-helper/idex-helper';
7
- import type { AngleStakedStableData, DexParams } from './types';
8
- import { SimpleExchange } from '../simple-exchange';
9
- import { AngleStakedStableEventPool } from './angle-staked-stable-pool';
10
- export declare class AngleStakedStable extends SimpleExchange implements IDex<AngleStakedStableData> {
11
- readonly network: Network;
12
- readonly dexKey: string;
13
- readonly dexHelper: IDexHelper;
14
- protected adapters: import("../../types").AdapterMappings;
15
- static readonly wstETHIface: Interface;
16
- protected config: DexParams;
17
- readonly hasConstantPriceLargeAmounts = false;
18
- readonly needWrapNative = true;
19
- readonly isFeeOnTransferSupported = false;
20
- static dexKeysWithNetwork: {
21
- key: string;
22
- networks: Network[];
23
- }[];
24
- logger: Logger;
25
- protected eventPools: {
26
- [key: string]: AngleStakedStableEventPool;
27
- };
28
- protected isPaused: {
29
- [key: string]: boolean;
30
- };
31
- constructor(network: Network, dexKey: string, dexHelper: IDexHelper, adapters?: import("../../types").AdapterMappings);
32
- initializePricing(blockNumber: number): Promise<void>;
33
- getAdapters(side: SwapSide): {
34
- name: string;
35
- index: number;
36
- }[] | null;
37
- getPoolIdentifiers(srcToken: Token, destToken: Token, side: SwapSide, blockNumber: number): Promise<string[]>;
38
- getPricesVolume(srcToken: Token, destToken: Token, amounts: bigint[], side: SwapSide, blockNumber: number, limitPools?: string[]): Promise<null | ExchangePrices<AngleStakedStableData>>;
39
- getCalldataGasCost(poolPrices: PoolPrices<AngleStakedStableData>): number | number[];
40
- getAdapterParam(srcToken: string, destToken: string, srcAmount: string, destAmount: string, data: AngleStakedStableData, side: SwapSide): AdapterExchangeParam;
41
- getSimpleParam(srcToken: string, destToken: string, srcAmount: string, destAmount: string, data: AngleStakedStableData, side: SwapSide): Promise<SimpleExchangeParam>;
42
- updatePoolState(): Promise<void>;
43
- getTopPoolsForToken(tokenAddress: Address, limit: number): Promise<PoolLiquidity[]>;
44
- releaseResources(): AsyncOrSync<void>;
45
- _knownAddress(srcToken: Token, destToken: Token): {
46
- known: boolean;
47
- agToken: string | null;
48
- stakeToken: string | null;
49
- };
50
- }