@gearbox-protocol/sdk 3.0.0-next.14 → 3.0.0-next.140

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 (653) hide show
  1. package/contracts/index.sol +34 -5
  2. package/lib/apy/auraAPY.d.ts +1 -0
  3. package/lib/apy/auraAPY.js +23 -0
  4. package/lib/apy/auraAbi.d.ts +17 -0
  5. package/lib/apy/auraAbi.js +26 -0
  6. package/lib/apy/convexAPY.d.ts +8 -7
  7. package/lib/apy/convexAPY.js +19 -8
  8. package/lib/apy/curveAPY.d.ts +57 -5
  9. package/lib/apy/curveAPY.js +111 -59
  10. package/lib/apy/defiLamaAPY.d.ts +3 -0
  11. package/lib/apy/defiLamaAPY.js +71 -0
  12. package/lib/apy/index.d.ts +5 -4
  13. package/lib/apy/index.js +7 -0
  14. package/lib/apy/lidoAPY.d.ts +4 -1
  15. package/lib/apy/lidoAPY.js +6 -3
  16. package/lib/apy/yearnAPY.d.ts +3 -3
  17. package/lib/apy/yearnAPY.js +15 -12
  18. package/lib/contracts/contractsRegister.d.ts +10 -5
  19. package/lib/contracts/contractsRegister.js +24 -1
  20. package/lib/core/assets.d.ts +2 -2
  21. package/lib/core/assets.js +4 -4
  22. package/lib/core/creditAccount.d.ts +76 -15
  23. package/lib/core/creditAccount.js +204 -61
  24. package/lib/core/creditAccount.spec.js +1090 -17
  25. package/lib/core/creditManager.d.ts +18 -6
  26. package/lib/core/creditManager.js +70 -14
  27. package/lib/core/creditSession.d.ts +11 -1
  28. package/lib/core/creditSession.js +20 -2
  29. package/lib/core/endpoint.d.ts +14 -0
  30. package/lib/core/endpoint.js +35 -0
  31. package/lib/core/eventOrTx.d.ts +2 -3
  32. package/lib/core/events.js +16 -16
  33. package/lib/core/gauge.d.ts +26 -0
  34. package/lib/core/gauge.js +63 -0
  35. package/lib/core/gaugeMath.d.ts +40 -0
  36. package/lib/core/gaugeMath.js +108 -0
  37. package/lib/core/gaugeMath.spec.js +388 -0
  38. package/lib/core/{pool/data.d.ts → pool.d.ts} +14 -8
  39. package/lib/core/{pool/data.js → pool.js} +38 -20
  40. package/lib/core/rewardClaimer.d.ts +4 -2
  41. package/lib/core/rewardConvex.d.ts +26 -9
  42. package/lib/core/rewardConvex.js +183 -56
  43. package/lib/core/rewardConvex.spec.js +32 -68
  44. package/lib/core/strategy.d.ts +18 -21
  45. package/lib/core/strategy.js +16 -36
  46. package/lib/core/trade.d.ts +11 -12
  47. package/lib/core/trade.js +36 -29
  48. package/lib/core/transactions.d.ts +97 -15
  49. package/lib/core/transactions.js +164 -117
  50. package/lib/index.d.ts +6 -2
  51. package/lib/index.js +6 -2
  52. package/lib/parsers/ERC20Parser.js +1 -1
  53. package/lib/parsers/aaveV2LendingPoolAdapterParser.d.ts +7 -0
  54. package/lib/parsers/aaveV2LendingPoolAdapterParser.js +21 -0
  55. package/lib/parsers/aaveV2WrappedATokenAdapterParser.d.ts +7 -0
  56. package/lib/parsers/aaveV2WrappedATokenAdapterParser.js +21 -0
  57. package/lib/parsers/abstractParser.d.ts +7 -5
  58. package/lib/parsers/abstractParser.js +4 -2
  59. package/lib/parsers/addressProviderParser.js +1 -1
  60. package/lib/parsers/balancerV2VaultParser.d.ts +7 -0
  61. package/lib/parsers/balancerV2VaultParser.js +34 -0
  62. package/lib/parsers/compoundV2CTokenAdapterParser.d.ts +7 -0
  63. package/lib/parsers/compoundV2CTokenAdapterParser.js +21 -0
  64. package/lib/parsers/convexBaseRewardPoolAdapterParser.js +13 -9
  65. package/lib/parsers/convexBaseRewardPoolAdapterParser.spec.js +9 -6
  66. package/lib/parsers/convexBoosterAdapterParser.js +7 -7
  67. package/lib/parsers/convexBoosterAdapterParser.spec.js +4 -4
  68. package/lib/parsers/convextRewardPoolParser.js +1 -1
  69. package/lib/parsers/creditFacadeParser.js +33 -6
  70. package/lib/parsers/creditFacadeParser.spec.js +2 -3
  71. package/lib/parsers/creditManagerParser.js +1 -1
  72. package/lib/parsers/curveAdapterParser.js +11 -12
  73. package/lib/parsers/curveAdapterParser.spec.js +6 -2
  74. package/lib/parsers/erc626AdapterParser.d.ts +7 -0
  75. package/lib/parsers/erc626AdapterParser.js +21 -0
  76. package/lib/parsers/lidoAdapterParser.js +4 -3
  77. package/lib/parsers/lidoAdapterParser.spec.js +2 -2
  78. package/lib/parsers/lidoSTETHParser.js +1 -1
  79. package/lib/parsers/poolParser.js +1 -1
  80. package/lib/parsers/priceOracleParser.js +1 -1
  81. package/lib/parsers/txParser.d.ts +17 -11
  82. package/lib/parsers/txParser.js +41 -4
  83. package/lib/parsers/uniV2AdapterParser.js +6 -5
  84. package/lib/parsers/uniV2AdapterParser.spec.js +3 -2
  85. package/lib/parsers/uniV3AdapterParser.js +10 -8
  86. package/lib/parsers/uniV3AdapterParser.spec.js +3 -2
  87. package/lib/parsers/wstETHAdapterParser.js +7 -5
  88. package/lib/parsers/wstETHAdapterParser.spec.js +4 -4
  89. package/lib/parsers/yearnAdapterParser.spec.js +4 -4
  90. package/lib/parsers/yearnV2AdapterParser.js +14 -4
  91. package/lib/pathfinder/balancerVault.d.ts +33 -0
  92. package/lib/pathfinder/balancerVault.js +59 -0
  93. package/lib/pathfinder/core.d.ts +8 -9
  94. package/lib/pathfinder/index.d.ts +4 -0
  95. package/lib/{core/pool → pathfinder}/index.js +4 -1
  96. package/lib/pathfinder/pathOptions.d.ts +2 -1
  97. package/lib/pathfinder/pathOptions.js +33 -11
  98. package/lib/pathfinder/pathOptions.spec.js +2 -2
  99. package/lib/pathfinder/pathfinder.d.ts +46 -19
  100. package/lib/pathfinder/pathfinder.js +67 -55
  101. package/lib/pathfinder/pathfinder.spec.js +22 -9
  102. package/lib/pathfinder/utils.d.ts +36 -0
  103. package/lib/pathfinder/utils.js +181 -0
  104. package/lib/pathfinder/v1/core.d.ts +16 -0
  105. package/lib/pathfinder/v1/pathfinderv1.d.ts +46 -0
  106. package/lib/pathfinder/v1/pathfinderv1.js +155 -0
  107. package/lib/pathfinder/v1/pathfinderv1.spec.d.ts +1 -0
  108. package/lib/pathfinder/v1/pathfinderv1.spec.js +39 -0
  109. package/lib/payload/creditAccount.d.ts +3 -4
  110. package/lib/payload/creditManager.d.ts +4 -1
  111. package/lib/payload/creditSession.d.ts +11 -0
  112. package/lib/payload/gauge.d.ts +12 -0
  113. package/lib/payload/pool.d.ts +6 -2
  114. package/lib/payload/token.d.ts +3 -1
  115. package/lib/tokens/tokenData.d.ts +5 -4
  116. package/lib/tokens/tokenData.js +20 -5
  117. package/lib/types/CalldataExtractor.d.ts +44 -0
  118. package/lib/types/ERC20.d.ts +198 -0
  119. package/lib/types/FarmAccounting.d.ts +27 -0
  120. package/lib/types/IAaveV2_LendingPoolAdapter.d.ts +171 -0
  121. package/lib/types/IAaveV2_WrappedATokenAdapter.d.ts +290 -0
  122. package/lib/types/IBalancerV2Vault.sol/IBalancerV2Vault.d.ts +308 -0
  123. package/lib/types/IBalancerV2Vault.sol/IBalancerV2VaultGetters.d.ts +112 -0
  124. package/lib/types/IBalancerV2Vault.sol/index.d.ts +2 -0
  125. package/lib/types/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapter.d.ts +466 -0
  126. package/lib/types/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterEvents.d.ts +43 -0
  127. package/lib/types/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterExceptions.d.ts +27 -0
  128. package/lib/types/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterExceptions.js +2 -0
  129. package/lib/types/IBalancerV2VaultAdapter.sol/index.d.ts +3 -0
  130. package/lib/types/IBalancerV2VaultAdapter.sol/index.js +2 -0
  131. package/lib/types/IBotListV3.sol/IBotListV3.d.ts +286 -0
  132. package/lib/types/IBotListV3.sol/IBotListV3.js +2 -0
  133. package/lib/types/IBotListV3.sol/IBotListV3Events.d.ts +103 -0
  134. package/lib/types/IBotListV3.sol/IBotListV3Events.js +2 -0
  135. package/lib/types/IBotListV3.sol/index.d.ts +2 -0
  136. package/lib/types/IBotListV3.sol/index.js +2 -0
  137. package/lib/types/ICompoundV2_CTokenAdapter.sol/ICompoundV2_CTokenAdapter.d.ts +216 -0
  138. package/lib/types/ICompoundV2_CTokenAdapter.sol/ICompoundV2_CTokenAdapter.js +2 -0
  139. package/lib/types/ICompoundV2_CTokenAdapter.sol/ICompoundV2_Exceptions.d.ts +27 -0
  140. package/lib/types/ICompoundV2_CTokenAdapter.sol/ICompoundV2_Exceptions.js +2 -0
  141. package/lib/types/ICompoundV2_CTokenAdapter.sol/index.d.ts +2 -0
  142. package/lib/types/ICompoundV2_CTokenAdapter.sol/index.js +2 -0
  143. package/lib/types/IContractsRegister.sol/IContractsRegister.d.ts +128 -0
  144. package/lib/types/IContractsRegister.sol/IContractsRegister.js +2 -0
  145. package/lib/types/IContractsRegister.sol/IContractsRegisterEvents.d.ts +50 -0
  146. package/lib/types/IContractsRegister.sol/IContractsRegisterEvents.js +2 -0
  147. package/lib/types/IContractsRegister.sol/index.d.ts +2 -0
  148. package/lib/types/IContractsRegister.sol/index.js +2 -0
  149. package/lib/types/IControllerTimelockV3.sol/IControllerTimelockV3.d.ts +504 -0
  150. package/lib/types/IControllerTimelockV3.sol/IControllerTimelockV3.js +2 -0
  151. package/lib/types/IControllerTimelockV3.sol/IControllerTimelockV3Events.d.ts +82 -0
  152. package/lib/types/IControllerTimelockV3.sol/IControllerTimelockV3Events.js +2 -0
  153. package/lib/types/IControllerTimelockV3.sol/index.d.ts +2 -0
  154. package/lib/types/IControllerTimelockV3.sol/index.js +2 -0
  155. package/lib/types/IConvexToken.d.ts +9 -1
  156. package/lib/types/IConvexV1BaseRewardPoolAdapter.d.ts +46 -30
  157. package/lib/types/{IConvexV1BoosterAdapter.d.ts → IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter.d.ts} +40 -21
  158. package/lib/types/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter.js +2 -0
  159. package/lib/types/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapterEvents.d.ts +43 -0
  160. package/lib/types/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapterEvents.js +2 -0
  161. package/lib/types/IConvexV1BoosterAdapter.sol/index.d.ts +2 -0
  162. package/lib/types/IConvexV1BoosterAdapter.sol/index.js +2 -0
  163. package/lib/types/ICreditFacadeV2.sol/ICreditFacadeV2Extended.d.ts +7 -11
  164. package/lib/types/ICreditFacadeV3.sol/ICreditFacadeV3.d.ts +52 -100
  165. package/lib/types/ICreditFacadeV3.sol/ICreditFacadeV3Events.d.ts +30 -32
  166. package/lib/types/ICreditFacadeV3Multicall.d.ts +68 -60
  167. package/lib/types/ICreditManagerV3.sol/ICreditManagerV3.d.ts +99 -79
  168. package/lib/types/ICurveV1Adapter.d.ts +41 -105
  169. package/lib/types/ICurveV1_2AssetsAdapter.d.ts +41 -105
  170. package/lib/types/ICurveV1_3AssetsAdapter.d.ts +41 -105
  171. package/lib/types/ICurveV1_4AssetsAdapter.d.ts +41 -105
  172. package/lib/types/IDaiLikePermit.d.ts +59 -0
  173. package/lib/types/IDaiLikePermit.js +2 -0
  174. package/lib/types/{IDataCompressorV2_10.d.ts → IDataCompressorV2_1.d.ts} +14 -43
  175. package/lib/types/IDataCompressorV2_1.js +2 -0
  176. package/lib/types/{IDataCompressorV3_00.d.ts → IDataCompressorV3.d.ts} +111 -44
  177. package/lib/types/IDataCompressorV3.js +2 -0
  178. package/lib/types/IDegenNFTV2.sol/IDegenNFTV2.d.ts +339 -0
  179. package/lib/types/IDegenNFTV2.sol/IDegenNFTV2.js +2 -0
  180. package/lib/types/IDegenNFTV2.sol/IDegenNFTV2Events.d.ts +61 -0
  181. package/lib/types/IDegenNFTV2.sol/IDegenNFTV2Events.js +2 -0
  182. package/lib/types/IDegenNFTV2.sol/IDegenNFTV2Exceptions.d.ts +27 -0
  183. package/lib/types/IDegenNFTV2.sol/IDegenNFTV2Exceptions.js +2 -0
  184. package/lib/types/IDegenNFTV2.sol/index.d.ts +3 -0
  185. package/lib/types/IDegenNFTV2.sol/index.js +2 -0
  186. package/lib/types/IERC165.d.ts +42 -0
  187. package/lib/types/IERC165.js +2 -0
  188. package/lib/types/IERC20ZapperDeposits.d.ts +117 -0
  189. package/lib/types/IERC20ZapperDeposits.js +2 -0
  190. package/lib/types/IERC4626Adapter.d.ts +238 -0
  191. package/lib/types/IERC4626Adapter.js +2 -0
  192. package/lib/types/IERC721.d.ts +220 -0
  193. package/lib/types/IERC721.js +2 -0
  194. package/lib/types/IERC721Metadata.d.ts +244 -0
  195. package/lib/types/IERC721Metadata.js +2 -0
  196. package/lib/types/IETHZapperDeposits.d.ts +66 -0
  197. package/lib/types/IETHZapperDeposits.js +2 -0
  198. package/lib/types/IFarmingPool.d.ts +318 -0
  199. package/lib/types/IFarmingPool.js +2 -0
  200. package/lib/types/IGaugeV3.sol/IGaugeV3.d.ts +366 -0
  201. package/lib/types/IGaugeV3.sol/IGaugeV3.js +2 -0
  202. package/lib/types/IGaugeV3.sol/IGaugeV3Events.d.ts +114 -0
  203. package/lib/types/IGaugeV3.sol/IGaugeV3Events.js +2 -0
  204. package/lib/types/IGaugeV3.sol/index.d.ts +2 -0
  205. package/lib/types/IGaugeV3.sol/index.js +2 -0
  206. package/lib/types/IGearStakingV3.sol/IGearStakingV3.d.ts +408 -0
  207. package/lib/types/IGearStakingV3.sol/IGearStakingV3.js +2 -0
  208. package/lib/types/IGearStakingV3.sol/IGearStakingV3Events.d.ts +117 -0
  209. package/lib/types/IGearStakingV3.sol/IGearStakingV3Events.js +2 -0
  210. package/lib/types/IGearStakingV3.sol/index.d.ts +2 -0
  211. package/lib/types/IGearStakingV3.sol/index.js +2 -0
  212. package/lib/types/ILPPriceFeed.sol/ILPPriceFeed.d.ts +285 -0
  213. package/lib/types/ILPPriceFeed.sol/ILPPriceFeed.js +2 -0
  214. package/lib/types/ILPPriceFeed.sol/ILPPriceFeedEvents.d.ts +54 -0
  215. package/lib/types/ILPPriceFeed.sol/ILPPriceFeedEvents.js +2 -0
  216. package/lib/types/ILPPriceFeed.sol/ILPPriceFeedExceptions.d.ts +27 -0
  217. package/lib/types/ILPPriceFeed.sol/ILPPriceFeedExceptions.js +2 -0
  218. package/lib/types/ILPPriceFeed.sol/index.d.ts +3 -0
  219. package/lib/types/ILPPriceFeed.sol/index.js +2 -0
  220. package/lib/types/{ILidoV1Adapter.sol/ILidoV1Adapter.d.ts → ILidoV1Adapter.d.ts} +13 -48
  221. package/lib/types/ILidoV1Adapter.js +2 -0
  222. package/lib/types/ILinearInterestRateModelV3.d.ts +120 -0
  223. package/lib/types/ILinearInterestRateModelV3.js +2 -0
  224. package/lib/types/IPermit2.d.ts +130 -0
  225. package/lib/types/IPermit2.js +2 -0
  226. package/lib/types/IPoolQuotaKeeperV3.sol/IPoolQuotaKeeperV3.d.ts +473 -0
  227. package/lib/types/IPoolQuotaKeeperV3.sol/IPoolQuotaKeeperV3.js +2 -0
  228. package/lib/types/IPoolQuotaKeeperV3.sol/IPoolQuotaKeeperV3Events.d.ts +113 -0
  229. package/lib/types/IPoolQuotaKeeperV3.sol/IPoolQuotaKeeperV3Events.js +2 -0
  230. package/lib/types/IPoolQuotaKeeperV3.sol/index.d.ts +2 -0
  231. package/lib/types/IPoolQuotaKeeperV3.sol/index.js +2 -0
  232. package/lib/types/IPoolV3.sol/IPoolV3.d.ts +2 -2
  233. package/lib/types/IPriceFeed.sol/IPriceFeed.d.ts +109 -0
  234. package/lib/types/IPriceFeed.sol/IPriceFeed.js +2 -0
  235. package/lib/types/IPriceFeed.sol/IUpdatablePriceFeed.d.ts +133 -0
  236. package/lib/types/IPriceFeed.sol/IUpdatablePriceFeed.js +2 -0
  237. package/lib/types/IPriceFeed.sol/index.d.ts +2 -0
  238. package/lib/types/IPriceFeed.sol/index.js +2 -0
  239. package/lib/types/IPriceOracle.sol/IPriceOracleV2.d.ts +166 -0
  240. package/lib/types/IPriceOracle.sol/IPriceOracleV2.js +2 -0
  241. package/lib/types/IPriceOracle.sol/IPriceOracleV2Events.d.ts +43 -0
  242. package/lib/types/IPriceOracle.sol/IPriceOracleV2Events.js +2 -0
  243. package/lib/types/{ILidoV1Adapter.sol/ILidoV1AdapterExceptions.d.ts → IPriceOracle.sol/IPriceOracleV2Exceptions.d.ts} +3 -3
  244. package/lib/types/IPriceOracle.sol/IPriceOracleV2Exceptions.js +2 -0
  245. package/lib/types/IPriceOracle.sol/IPriceOracleV2Ext.d.ts +182 -0
  246. package/lib/types/IPriceOracle.sol/IPriceOracleV2Ext.js +2 -0
  247. package/lib/types/IPriceOracle.sol/index.d.ts +4 -0
  248. package/lib/types/IPriceOracle.sol/index.js +2 -0
  249. package/lib/types/IPriceOracleV3.sol/IPriceOracleV3.d.ts +272 -0
  250. package/lib/types/IPriceOracleV3.sol/IPriceOracleV3.js +2 -0
  251. package/lib/types/IPriceOracleV3.sol/IPriceOracleV3Events.d.ts +79 -0
  252. package/lib/types/IPriceOracleV3.sol/IPriceOracleV3Events.js +2 -0
  253. package/lib/types/IPriceOracleV3.sol/index.d.ts +2 -0
  254. package/lib/types/IPriceOracleV3.sol/index.js +2 -0
  255. package/lib/types/IRouter.d.ts +11 -1
  256. package/lib/types/IRouterV3.d.ts +283 -0
  257. package/lib/types/IRouterV3.js +2 -0
  258. package/lib/types/IUniswapV2Adapter.sol/IUniswapV2Adapter.d.ts +10 -9
  259. package/lib/types/IUniswapV3Adapter.sol/IUniswapV3Adapter.d.ts +27 -21
  260. package/lib/types/IVotingContractV3.d.ts +74 -0
  261. package/lib/types/IVotingContractV3.js +2 -0
  262. package/lib/types/IWETH.d.ts +197 -0
  263. package/lib/types/IWETH.js +2 -0
  264. package/lib/types/IYearnV2Adapter.d.ts +22 -22
  265. package/lib/types/IZapper.d.ts +42 -47
  266. package/lib/types/IZapperRegister.d.ts +62 -0
  267. package/lib/types/IZapperRegister.js +2 -0
  268. package/lib/types/IwstETHV1Adapter.d.ts +17 -17
  269. package/lib/types/NumericArrayLib.d.ts +27 -0
  270. package/lib/types/NumericArrayLib.js +2 -0
  271. package/lib/types/RedstoneConstants.d.ts +27 -0
  272. package/lib/types/RedstoneConstants.js +2 -0
  273. package/lib/types/RedstoneConsumerBase.d.ts +84 -0
  274. package/lib/types/RedstoneConsumerBase.js +2 -0
  275. package/lib/types/RedstoneConsumerNumericBase.d.ts +84 -0
  276. package/lib/types/RedstoneConsumerNumericBase.js +2 -0
  277. package/lib/types/RedstoneDefaultsLib.d.ts +27 -0
  278. package/lib/types/RedstoneDefaultsLib.js +2 -0
  279. package/lib/types/{ILidoV1Adapter.sol/ILidoV1AdapterEvents.d.ts → RedstonePriceFeed.sol/IRedstonePriceFeedEvents.d.ts} +11 -11
  280. package/lib/types/RedstonePriceFeed.sol/IRedstonePriceFeedEvents.js +2 -0
  281. package/lib/types/RedstonePriceFeed.sol/IRedstonePriceFeedExceptions.d.ts +27 -0
  282. package/lib/types/RedstonePriceFeed.sol/IRedstonePriceFeedExceptions.js +2 -0
  283. package/lib/types/RedstonePriceFeed.sol/RedstonePriceFeed.d.ts +279 -0
  284. package/lib/types/RedstonePriceFeed.sol/RedstonePriceFeed.js +2 -0
  285. package/lib/types/RedstonePriceFeed.sol/index.d.ts +3 -0
  286. package/lib/types/RedstonePriceFeed.sol/index.js +2 -0
  287. package/lib/types/SafeERC20.d.ts +27 -0
  288. package/lib/types/SafeERC20.js +2 -0
  289. package/lib/types/contracts/index.d.ts +2 -0
  290. package/lib/types/contracts/index.js +2 -0
  291. package/lib/types/contracts/interfaces/IGasPricer.d.ts +44 -0
  292. package/lib/types/contracts/interfaces/IGasPricer.js +2 -0
  293. package/lib/types/contracts/interfaces/index.d.ts +1 -0
  294. package/lib/types/contracts/interfaces/index.js +2 -0
  295. package/lib/types/factories/AddressProvider__factory.d.ts +112 -112
  296. package/lib/types/factories/AddressProvider__factory.js +120 -120
  297. package/lib/types/factories/Balances.sol/BalanceOps__factory.d.ts +4 -4
  298. package/lib/types/factories/Balances.sol/BalanceOps__factory.js +4 -4
  299. package/lib/types/factories/CalldataExtractor__factory.d.ts +87 -0
  300. package/lib/types/factories/CalldataExtractor__factory.js +127 -0
  301. package/lib/types/factories/Claimable__factory.d.ts +29 -29
  302. package/lib/types/factories/Claimable__factory.js +33 -33
  303. package/lib/types/factories/ERC20__factory.d.ts +239 -0
  304. package/lib/types/factories/ERC20__factory.js +328 -0
  305. package/lib/types/factories/Errors__factory.d.ts +100 -100
  306. package/lib/types/factories/Errors__factory.js +100 -100
  307. package/lib/types/factories/FarmAccounting__factory.d.ts +33 -0
  308. package/lib/types/factories/FarmAccounting__factory.js +57 -0
  309. package/lib/types/factories/{IWERC20Zapper__factory.d.ts → IAaveV2_LendingPoolAdapter__factory.d.ts} +96 -114
  310. package/lib/types/factories/{IWETHZapper__factory.js → IAaveV2_LendingPoolAdapter__factory.js} +105 -120
  311. package/lib/types/factories/IAaveV2_WrappedATokenAdapter__factory.d.ts +252 -0
  312. package/lib/types/factories/IAaveV2_WrappedATokenAdapter__factory.js +341 -0
  313. package/lib/types/factories/IAdapter__factory.d.ts +15 -15
  314. package/lib/types/factories/IAdapter__factory.js +15 -15
  315. package/lib/types/factories/IAddressProvider.sol/IAddressProviderEvents__factory.d.ts +7 -7
  316. package/lib/types/factories/IAddressProvider.sol/IAddressProviderEvents__factory.js +7 -7
  317. package/lib/types/factories/IAddressProvider.sol/IAddressProvider__factory.d.ts +48 -48
  318. package/lib/types/factories/IAddressProvider.sol/IAddressProvider__factory.js +52 -52
  319. package/lib/types/factories/IAddressProviderV3.sol/IAddressProviderV3Events__factory.d.ts +9 -9
  320. package/lib/types/factories/IAddressProviderV3.sol/IAddressProviderV3Events__factory.js +9 -9
  321. package/lib/types/factories/IAddressProviderV3.sol/IAddressProviderV3__factory.d.ts +37 -37
  322. package/lib/types/factories/IAddressProviderV3.sol/IAddressProviderV3__factory.js +42 -42
  323. package/lib/types/factories/IAirdropDistributor.sol/IAirdropDistributorEvents__factory.d.ts +25 -25
  324. package/lib/types/factories/IAirdropDistributor.sol/IAirdropDistributorEvents__factory.js +25 -25
  325. package/lib/types/factories/IAirdropDistributor.sol/IAirdropDistributor__factory.d.ts +71 -71
  326. package/lib/types/factories/IAirdropDistributor.sol/IAirdropDistributor__factory.js +85 -85
  327. package/lib/types/factories/IBalancerV2Vault.sol/IBalancerV2VaultGetters__factory.d.ts +78 -0
  328. package/lib/types/factories/IBalancerV2Vault.sol/IBalancerV2VaultGetters__factory.js +111 -0
  329. package/lib/types/factories/IBalancerV2Vault.sol/IBalancerV2Vault__factory.d.ts +360 -0
  330. package/lib/types/factories/IBalancerV2Vault.sol/IBalancerV2Vault__factory.js +475 -0
  331. package/lib/types/factories/IBalancerV2Vault.sol/index.d.ts +2 -0
  332. package/lib/types/factories/IBalancerV2Vault.sol/index.js +10 -0
  333. package/lib/types/factories/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterEvents__factory.d.ts +23 -0
  334. package/lib/types/factories/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterEvents__factory.js +38 -0
  335. package/lib/types/factories/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterExceptions__factory.d.ts +12 -0
  336. package/lib/types/factories/{ILidoV1Adapter.sol/ILidoV1AdapterExceptions__factory.js → IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterExceptions__factory.js} +5 -5
  337. package/lib/types/factories/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapter__factory.d.ts +514 -0
  338. package/lib/types/factories/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapter__factory.js +675 -0
  339. package/lib/types/factories/IBalancerV2VaultAdapter.sol/index.d.ts +3 -0
  340. package/lib/types/factories/IBalancerV2VaultAdapter.sol/index.js +12 -0
  341. package/lib/types/factories/IBaseRewardPool__factory.d.ts +114 -114
  342. package/lib/types/factories/IBaseRewardPool__factory.js +114 -114
  343. package/lib/types/factories/IBotListV3.sol/IBotListV3Events__factory.d.ts +103 -0
  344. package/lib/types/factories/IBotListV3.sol/IBotListV3Events__factory.js +138 -0
  345. package/lib/types/factories/IBotListV3.sol/IBotListV3__factory.d.ts +315 -0
  346. package/lib/types/factories/IBotListV3.sol/IBotListV3__factory.js +416 -0
  347. package/lib/types/factories/IBotListV3.sol/index.d.ts +2 -0
  348. package/lib/types/factories/IBotListV3.sol/index.js +10 -0
  349. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/ICompoundV2_CTokenAdapter__factory.d.ts +196 -0
  350. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/ICompoundV2_CTokenAdapter__factory.js +267 -0
  351. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/ICompoundV2_Exceptions__factory.d.ts +16 -0
  352. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/ICompoundV2_Exceptions__factory.js +30 -0
  353. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/index.d.ts +2 -0
  354. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/index.js +10 -0
  355. package/lib/types/factories/IContractsRegister.sol/IContractsRegisterEvents__factory.d.ts +28 -0
  356. package/lib/types/factories/IContractsRegister.sol/IContractsRegisterEvents__factory.js +45 -0
  357. package/lib/types/factories/IContractsRegister.sol/IContractsRegister__factory.d.ts +134 -0
  358. package/lib/types/factories/IContractsRegister.sol/IContractsRegister__factory.js +186 -0
  359. package/lib/types/factories/IContractsRegister.sol/index.d.ts +2 -0
  360. package/lib/types/factories/IContractsRegister.sol/index.js +10 -0
  361. package/lib/types/factories/IControllerTimelockV3.sol/IControllerTimelockV3Events__factory.d.ts +73 -0
  362. package/lib/types/factories/IControllerTimelockV3.sol/IControllerTimelockV3Events__factory.js +101 -0
  363. package/lib/types/factories/IControllerTimelockV3.sol/IControllerTimelockV3__factory.d.ts +427 -0
  364. package/lib/types/factories/IControllerTimelockV3.sol/IControllerTimelockV3__factory.js +556 -0
  365. package/lib/types/factories/IControllerTimelockV3.sol/index.d.ts +2 -0
  366. package/lib/types/factories/IControllerTimelockV3.sol/index.js +10 -0
  367. package/lib/types/factories/IConvexToken__factory.d.ts +89 -79
  368. package/lib/types/factories/IConvexToken__factory.js +99 -86
  369. package/lib/types/factories/IConvexV1BaseRewardPoolAdapter__factory.d.ts +103 -71
  370. package/lib/types/factories/IConvexV1BaseRewardPoolAdapter__factory.js +113 -71
  371. package/lib/types/factories/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapterEvents__factory.d.ts +23 -0
  372. package/lib/types/factories/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapterEvents__factory.js +38 -0
  373. package/lib/types/factories/{IConvexV1BoosterAdapter__factory.d.ts → IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter__factory.d.ts} +67 -44
  374. package/lib/types/factories/{IConvexV1BoosterAdapter__factory.js → IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter__factory.js} +72 -43
  375. package/lib/types/factories/IConvexV1BoosterAdapter.sol/index.d.ts +2 -0
  376. package/lib/types/factories/IConvexV1BoosterAdapter.sol/index.js +10 -0
  377. package/lib/types/factories/ICreditConfiguratorV2.sol/ICreditConfiguratorV2Events__factory.d.ts +121 -121
  378. package/lib/types/factories/ICreditConfiguratorV2.sol/ICreditConfiguratorV2Events__factory.js +127 -127
  379. package/lib/types/factories/ICreditConfiguratorV2.sol/ICreditConfiguratorV2Exceptions__factory.d.ts +18 -18
  380. package/lib/types/factories/ICreditConfiguratorV2.sol/ICreditConfiguratorV2Exceptions__factory.js +18 -18
  381. package/lib/types/factories/ICreditConfiguratorV2.sol/ICreditConfiguratorV2__factory.d.ts +376 -376
  382. package/lib/types/factories/ICreditConfiguratorV2.sol/ICreditConfiguratorV2__factory.js +417 -417
  383. package/lib/types/factories/ICreditConfiguratorV3.sol/ICreditConfiguratorV3Events__factory.d.ts +118 -118
  384. package/lib/types/factories/ICreditConfiguratorV3.sol/ICreditConfiguratorV3Events__factory.js +127 -127
  385. package/lib/types/factories/ICreditConfiguratorV3.sol/ICreditConfiguratorV3__factory.d.ts +395 -395
  386. package/lib/types/factories/ICreditConfiguratorV3.sol/ICreditConfiguratorV3__factory.js +420 -420
  387. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2Events__factory.d.ts +107 -107
  388. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2Events__factory.js +118 -118
  389. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2Exceptions__factory.d.ts +65 -65
  390. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2Exceptions__factory.js +65 -65
  391. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2Extended__factory.d.ts +23 -27
  392. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2Extended__factory.js +23 -28
  393. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2V2__factory.d.ts +5 -5
  394. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2V2__factory.js +5 -5
  395. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2__factory.d.ts +601 -601
  396. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2__factory.js +749 -749
  397. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3Events__factory.d.ts +78 -83
  398. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3Events__factory.js +85 -91
  399. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3__factory.d.ts +281 -348
  400. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3__factory.js +372 -457
  401. package/lib/types/factories/ICreditFacadeV3Multicall__factory.d.ts +85 -81
  402. package/lib/types/factories/ICreditFacadeV3Multicall__factory.js +93 -89
  403. package/lib/types/factories/ICreditManagerV2.sol/ICreditManagerV2Events__factory.d.ts +11 -11
  404. package/lib/types/factories/ICreditManagerV2.sol/ICreditManagerV2Events__factory.js +12 -12
  405. package/lib/types/factories/ICreditManagerV2.sol/ICreditManagerV2Exceptions__factory.d.ts +26 -26
  406. package/lib/types/factories/ICreditManagerV2.sol/ICreditManagerV2Exceptions__factory.js +26 -26
  407. package/lib/types/factories/ICreditManagerV2.sol/ICreditManagerV2__factory.d.ts +252 -252
  408. package/lib/types/factories/ICreditManagerV2.sol/ICreditManagerV2__factory.js +272 -272
  409. package/lib/types/factories/ICreditManagerV3.sol/ICreditManagerV3Events__factory.d.ts +5 -5
  410. package/lib/types/factories/ICreditManagerV3.sol/ICreditManagerV3Events__factory.js +5 -5
  411. package/lib/types/factories/ICreditManagerV3.sol/ICreditManagerV3__factory.d.ts +398 -390
  412. package/lib/types/factories/ICreditManagerV3.sol/ICreditManagerV3__factory.js +436 -426
  413. package/lib/types/factories/ICurvePool_2.sol/ICurvePool2Assets__factory.d.ts +191 -191
  414. package/lib/types/factories/ICurvePool_2.sol/ICurvePool2Assets__factory.js +191 -191
  415. package/lib/types/factories/ICurvePool_3.sol/ICurvePool3Assets__factory.d.ts +191 -191
  416. package/lib/types/factories/ICurvePool_3.sol/ICurvePool3Assets__factory.js +191 -191
  417. package/lib/types/factories/ICurvePool_4.sol/ICurvePool4Assets__factory.d.ts +191 -191
  418. package/lib/types/factories/ICurvePool_4.sol/ICurvePool4Assets__factory.js +191 -191
  419. package/lib/types/factories/ICurvePool__factory.d.ts +159 -159
  420. package/lib/types/factories/ICurvePool__factory.js +159 -159
  421. package/lib/types/factories/ICurveV1Adapter__factory.d.ts +171 -229
  422. package/lib/types/factories/ICurveV1Adapter__factory.js +171 -248
  423. package/lib/types/factories/ICurveV1_2AssetsAdapter__factory.d.ts +189 -247
  424. package/lib/types/factories/ICurveV1_2AssetsAdapter__factory.js +189 -266
  425. package/lib/types/factories/ICurveV1_3AssetsAdapter__factory.d.ts +189 -247
  426. package/lib/types/factories/ICurveV1_3AssetsAdapter__factory.js +189 -266
  427. package/lib/types/factories/ICurveV1_4AssetsAdapter__factory.d.ts +189 -247
  428. package/lib/types/factories/ICurveV1_4AssetsAdapter__factory.js +189 -266
  429. package/lib/types/factories/IDaiLikePermit__factory.d.ts +46 -0
  430. package/lib/types/factories/IDaiLikePermit__factory.js +67 -0
  431. package/lib/types/factories/{IDataCompressorV2_10__factory.d.ts → IDataCompressorV2_1__factory.d.ts} +348 -398
  432. package/lib/types/factories/{IDataCompressorV2_10__factory.js → IDataCompressorV2_1__factory.js} +349 -413
  433. package/lib/types/factories/{IDataCompressorV3_00__factory.d.ts → IDataCompressorV3__factory.d.ts} +654 -472
  434. package/lib/types/factories/{IDataCompressorV3_00__factory.js → IDataCompressorV3__factory.js} +727 -495
  435. package/lib/types/factories/IDegenDistributor.sol/IDegenDistributorEvents__factory.d.ts +14 -14
  436. package/lib/types/factories/IDegenDistributor.sol/IDegenDistributorEvents__factory.js +14 -14
  437. package/lib/types/factories/IDegenDistributor.sol/IDegenDistributor__factory.d.ts +43 -43
  438. package/lib/types/factories/IDegenDistributor.sol/IDegenDistributor__factory.js +51 -51
  439. package/lib/types/factories/IDegenNFTV2.sol/IDegenNFTV2Events__factory.d.ts +38 -0
  440. package/lib/types/factories/IDegenNFTV2.sol/IDegenNFTV2Events__factory.js +58 -0
  441. package/lib/types/factories/IDegenNFTV2.sol/IDegenNFTV2Exceptions__factory.d.ts +24 -0
  442. package/lib/types/factories/IDegenNFTV2.sol/IDegenNFTV2Exceptions__factory.js +39 -0
  443. package/lib/types/factories/{IWithdrawalManagerV3.sol/IWithdrawalManagerV3__factory.d.ts → IDegenNFTV2.sol/IDegenNFTV2__factory.d.ts} +248 -238
  444. package/lib/types/factories/{IWithdrawalManagerV3.sol/IWithdrawalManagerV3__factory.js → IDegenNFTV2.sol/IDegenNFTV2__factory.js} +270 -253
  445. package/lib/types/factories/IDegenNFTV2.sol/index.d.ts +3 -0
  446. package/lib/types/factories/IDegenNFTV2.sol/index.js +12 -0
  447. package/lib/types/factories/IERC165__factory.d.ts +22 -0
  448. package/lib/types/factories/IERC165__factory.js +38 -0
  449. package/lib/types/factories/IERC20Metadata__factory.d.ts +76 -76
  450. package/lib/types/factories/IERC20Metadata__factory.js +86 -86
  451. package/lib/types/factories/IERC20Permit__factory.d.ts +16 -16
  452. package/lib/types/factories/IERC20Permit__factory.js +16 -16
  453. package/lib/types/factories/IERC20ZapperDeposits__factory.d.ts +120 -0
  454. package/lib/types/factories/IERC20ZapperDeposits__factory.js +165 -0
  455. package/lib/types/factories/IERC20__factory.d.ts +67 -67
  456. package/lib/types/factories/IERC20__factory.js +77 -77
  457. package/lib/types/factories/IERC4626Adapter__factory.d.ts +220 -0
  458. package/lib/types/factories/IERC4626Adapter__factory.js +297 -0
  459. package/lib/types/factories/IERC4626__factory.d.ts +198 -198
  460. package/lib/types/factories/IERC4626__factory.js +221 -221
  461. package/lib/types/factories/IERC721Metadata__factory.d.ts +262 -0
  462. package/lib/types/factories/IERC721Metadata__factory.js +349 -0
  463. package/lib/types/factories/IERC721__factory.d.ts +228 -0
  464. package/lib/types/factories/IERC721__factory.js +304 -0
  465. package/lib/types/factories/IETHZapperDeposits__factory.d.ts +40 -0
  466. package/lib/types/factories/IETHZapperDeposits__factory.js +62 -0
  467. package/lib/types/factories/IFarmingPool__factory.d.ts +299 -0
  468. package/lib/types/factories/IFarmingPool__factory.js +396 -0
  469. package/lib/types/factories/IGaugeV3.sol/IGaugeV3Events__factory.d.ts +118 -0
  470. package/lib/types/factories/IGaugeV3.sol/IGaugeV3Events__factory.js +157 -0
  471. package/lib/types/factories/IGaugeV3.sol/IGaugeV3__factory.d.ts +342 -0
  472. package/lib/types/factories/IGaugeV3.sol/IGaugeV3__factory.js +448 -0
  473. package/lib/types/factories/IGaugeV3.sol/index.d.ts +2 -0
  474. package/lib/types/factories/IGaugeV3.sol/index.js +10 -0
  475. package/lib/types/factories/{IWithdrawalManagerV3.sol/IWithdrawalManagerV3Events__factory.d.ts → IGearStakingV3.sol/IGearStakingV3Events__factory.d.ts} +55 -85
  476. package/lib/types/factories/{IWithdrawalManagerV3.sol/IWithdrawalManagerV3Events__factory.js → IGearStakingV3.sol/IGearStakingV3Events__factory.js} +58 -94
  477. package/lib/types/factories/IGearStakingV3.sol/IGearStakingV3__factory.d.ts +504 -0
  478. package/lib/types/factories/IGearStakingV3.sol/IGearStakingV3__factory.js +660 -0
  479. package/lib/types/factories/IGearStakingV3.sol/index.d.ts +2 -0
  480. package/lib/types/factories/IGearStakingV3.sol/index.js +10 -0
  481. package/lib/types/factories/IInterestRateModel__factory.d.ts +8 -8
  482. package/lib/types/factories/IInterestRateModel__factory.js +8 -8
  483. package/lib/types/factories/ILPPriceFeed.sol/ILPPriceFeedEvents__factory.d.ts +33 -0
  484. package/lib/types/factories/ILPPriceFeed.sol/ILPPriceFeedEvents__factory.js +51 -0
  485. package/lib/types/factories/ILPPriceFeed.sol/ILPPriceFeedExceptions__factory.d.ts +28 -0
  486. package/lib/types/factories/ILPPriceFeed.sol/ILPPriceFeedExceptions__factory.js +44 -0
  487. package/lib/types/factories/ILPPriceFeed.sol/ILPPriceFeed__factory.d.ts +261 -0
  488. package/lib/types/factories/ILPPriceFeed.sol/ILPPriceFeed__factory.js +344 -0
  489. package/lib/types/factories/ILPPriceFeed.sol/index.d.ts +3 -0
  490. package/lib/types/factories/ILPPriceFeed.sol/index.js +12 -0
  491. package/lib/types/factories/{ILidoV1Adapter.sol/ILidoV1Adapter__factory.d.ts → ILidoV1Adapter__factory.d.ts} +44 -74
  492. package/lib/types/factories/{ILidoV1Adapter.sol/ILidoV1Adapter__factory.js → ILidoV1Adapter__factory.js} +45 -83
  493. package/lib/types/factories/ILinearInterestRateModelV3__factory.d.ts +98 -0
  494. package/lib/types/factories/ILinearInterestRateModelV3__factory.js +136 -0
  495. package/lib/types/factories/IOffchainOracle__factory.d.ts +11 -11
  496. package/lib/types/factories/IOffchainOracle__factory.js +11 -11
  497. package/lib/types/factories/IPermit2__factory.d.ts +113 -0
  498. package/lib/types/factories/IPermit2__factory.js +155 -0
  499. package/lib/types/factories/IPoolQuotaKeeperV3.sol/IPoolQuotaKeeperV3Events__factory.d.ts +103 -0
  500. package/lib/types/factories/IPoolQuotaKeeperV3.sol/IPoolQuotaKeeperV3Events__factory.js +140 -0
  501. package/lib/types/factories/IPoolQuotaKeeperV3.sol/IPoolQuotaKeeperV3__factory.d.ts +441 -0
  502. package/lib/types/factories/IPoolQuotaKeeperV3.sol/IPoolQuotaKeeperV3__factory.js +580 -0
  503. package/lib/types/factories/IPoolQuotaKeeperV3.sol/index.d.ts +2 -0
  504. package/lib/types/factories/IPoolQuotaKeeperV3.sol/index.js +10 -0
  505. package/lib/types/factories/IPoolService.sol/IPoolServiceEvents__factory.d.ts +66 -66
  506. package/lib/types/factories/IPoolService.sol/IPoolServiceEvents__factory.js +72 -72
  507. package/lib/types/factories/IPoolService.sol/IPoolService__factory.d.ts +235 -235
  508. package/lib/types/factories/IPoolService.sol/IPoolService__factory.js +286 -286
  509. package/lib/types/factories/IPoolV3.sol/IPoolV3Events__factory.d.ts +65 -65
  510. package/lib/types/factories/IPoolV3.sol/IPoolV3Events__factory.js +68 -68
  511. package/lib/types/factories/IPoolV3.sol/IPoolV3__factory.d.ts +574 -574
  512. package/lib/types/factories/IPoolV3.sol/IPoolV3__factory.js +698 -698
  513. package/lib/types/factories/IPriceFeed.sol/IPriceFeed__factory.d.ts +84 -0
  514. package/lib/types/factories/IPriceFeed.sol/IPriceFeed__factory.js +117 -0
  515. package/lib/types/factories/IPriceFeed.sol/IUpdatablePriceFeed__factory.d.ts +104 -0
  516. package/lib/types/factories/IPriceFeed.sol/IUpdatablePriceFeed__factory.js +143 -0
  517. package/lib/types/factories/IPriceFeed.sol/index.d.ts +2 -0
  518. package/lib/types/factories/IPriceFeed.sol/index.js +10 -0
  519. package/lib/types/factories/IPriceOracle.sol/IPriceOracleV2Events__factory.d.ts +23 -0
  520. package/lib/types/factories/IPriceOracle.sol/IPriceOracleV2Events__factory.js +38 -0
  521. package/lib/types/factories/IPriceOracle.sol/IPriceOracleV2Exceptions__factory.d.ts +20 -0
  522. package/lib/types/factories/IPriceOracle.sol/IPriceOracleV2Exceptions__factory.js +34 -0
  523. package/lib/types/factories/IPriceOracle.sol/IPriceOracleV2Ext__factory.d.ts +197 -0
  524. package/lib/types/factories/IPriceOracle.sol/IPriceOracleV2Ext__factory.js +267 -0
  525. package/lib/types/factories/{IWETHZapper__factory.d.ts → IPriceOracle.sol/IPriceOracleV2__factory.d.ts} +114 -99
  526. package/lib/types/factories/{IWERC20Zapper__factory.js → IPriceOracle.sol/IPriceOracleV2__factory.js} +119 -110
  527. package/lib/types/factories/IPriceOracle.sol/index.d.ts +4 -0
  528. package/lib/types/factories/IPriceOracle.sol/index.js +14 -0
  529. package/lib/types/factories/IPriceOracleBase__factory.d.ts +27 -27
  530. package/lib/types/factories/IPriceOracleBase__factory.js +27 -27
  531. package/lib/types/factories/IPriceOracleV3.sol/IPriceOracleV3Events__factory.d.ts +78 -0
  532. package/lib/types/factories/IPriceOracleV3.sol/IPriceOracleV3Events__factory.js +106 -0
  533. package/lib/types/factories/IPriceOracleV3.sol/IPriceOracleV3__factory.d.ts +326 -0
  534. package/lib/types/factories/IPriceOracleV3.sol/IPriceOracleV3__factory.js +433 -0
  535. package/lib/types/factories/IPriceOracleV3.sol/index.d.ts +2 -0
  536. package/lib/types/factories/IPriceOracleV3.sol/index.js +10 -0
  537. package/lib/types/factories/IRouterV3__factory.d.ts +442 -0
  538. package/lib/types/factories/IRouterV3__factory.js +585 -0
  539. package/lib/types/factories/IRouter__factory.d.ts +168 -154
  540. package/lib/types/factories/IRouter__factory.js +186 -167
  541. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2AdapterEvents__factory.d.ts +8 -8
  542. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2AdapterEvents__factory.js +9 -9
  543. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2AdapterExceptions__factory.d.ts +2 -2
  544. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2AdapterExceptions__factory.js +2 -2
  545. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2Adapter__factory.d.ts +80 -76
  546. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2Adapter__factory.js +87 -82
  547. package/lib/types/factories/IUniswapV3.sol/ISwapRouter__factory.d.ts +50 -50
  548. package/lib/types/factories/IUniswapV3.sol/ISwapRouter__factory.js +50 -50
  549. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3AdapterEvents__factory.d.ts +10 -10
  550. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3AdapterEvents__factory.js +11 -11
  551. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3AdapterExceptions__factory.d.ts +2 -2
  552. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3AdapterExceptions__factory.js +2 -2
  553. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3Adapter__factory.d.ts +142 -134
  554. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3Adapter__factory.js +151 -141
  555. package/lib/types/factories/IVersion__factory.d.ts +3 -3
  556. package/lib/types/factories/IVersion__factory.js +3 -3
  557. package/lib/types/factories/IVotingContractV3__factory.d.ts +44 -0
  558. package/lib/types/factories/IVotingContractV3__factory.js +65 -0
  559. package/lib/types/factories/IWETHGateway__factory.d.ts +14 -14
  560. package/lib/types/factories/IWETHGateway__factory.js +14 -14
  561. package/lib/types/factories/IWETH__factory.d.ts +194 -0
  562. package/lib/types/factories/IWETH__factory.js +260 -0
  563. package/lib/types/factories/IYVault__factory.d.ts +112 -112
  564. package/lib/types/factories/IYVault__factory.js +122 -122
  565. package/lib/types/factories/IYearnV2Adapter__factory.d.ts +76 -68
  566. package/lib/types/factories/IYearnV2Adapter__factory.js +82 -70
  567. package/lib/types/factories/IZapperRegister__factory.d.ts +42 -0
  568. package/lib/types/factories/IZapperRegister__factory.js +64 -0
  569. package/lib/types/factories/IZapper__factory.d.ts +40 -48
  570. package/lib/types/factories/IZapper__factory.js +40 -50
  571. package/lib/types/factories/IstETH.sol/IstETHGetters__factory.d.ts +97 -97
  572. package/lib/types/factories/IstETH.sol/IstETHGetters__factory.js +107 -107
  573. package/lib/types/factories/IstETH.sol/IstETH__factory.d.ts +101 -101
  574. package/lib/types/factories/IstETH.sol/IstETH__factory.js +111 -111
  575. package/lib/types/factories/IwstETH.sol/IwstETHGetters__factory.d.ts +93 -93
  576. package/lib/types/factories/IwstETH.sol/IwstETHGetters__factory.js +103 -103
  577. package/lib/types/factories/IwstETH.sol/IwstETH__factory.d.ts +101 -101
  578. package/lib/types/factories/IwstETH.sol/IwstETH__factory.js +111 -111
  579. package/lib/types/factories/IwstETHGateway.sol/IwstETHGateWay__factory.d.ts +14 -14
  580. package/lib/types/factories/IwstETHGateway.sol/IwstETHGateWay__factory.js +15 -15
  581. package/lib/types/factories/IwstETHV1Adapter__factory.d.ts +52 -44
  582. package/lib/types/factories/IwstETHV1Adapter__factory.js +56 -44
  583. package/lib/types/factories/NumericArrayLib__factory.d.ts +25 -0
  584. package/lib/types/factories/NumericArrayLib__factory.js +47 -0
  585. package/lib/types/factories/Ownable__factory.d.ts +23 -23
  586. package/lib/types/factories/Ownable__factory.js +27 -27
  587. package/lib/types/factories/RedstoneConstants__factory.d.ts +65 -0
  588. package/lib/types/factories/RedstoneConstants__factory.js +99 -0
  589. package/lib/types/factories/RedstoneConsumerBase__factory.d.ts +164 -0
  590. package/lib/types/factories/RedstoneConsumerBase__factory.js +223 -0
  591. package/lib/types/factories/RedstoneConsumerNumericBase__factory.d.ts +164 -0
  592. package/lib/types/factories/RedstoneConsumerNumericBase__factory.js +223 -0
  593. package/lib/types/factories/RedstoneDefaultsLib__factory.d.ts +45 -0
  594. package/lib/types/factories/RedstoneDefaultsLib__factory.js +74 -0
  595. package/lib/types/factories/{ILidoV1Adapter.sol/ILidoV1AdapterEvents__factory.d.ts → RedstonePriceFeed.sol/IRedstonePriceFeedEvents__factory.d.ts} +9 -9
  596. package/lib/types/factories/{ILidoV1Adapter.sol/ILidoV1AdapterEvents__factory.js → RedstonePriceFeed.sol/IRedstonePriceFeedEvents__factory.js} +8 -8
  597. package/lib/types/factories/RedstonePriceFeed.sol/IRedstonePriceFeedExceptions__factory.d.ts +28 -0
  598. package/lib/types/factories/RedstonePriceFeed.sol/IRedstonePriceFeedExceptions__factory.js +44 -0
  599. package/lib/types/factories/RedstonePriceFeed.sol/RedstonePriceFeed__factory.d.ts +443 -0
  600. package/lib/types/factories/RedstonePriceFeed.sol/RedstonePriceFeed__factory.js +589 -0
  601. package/lib/types/factories/RedstonePriceFeed.sol/index.d.ts +3 -0
  602. package/lib/types/factories/RedstonePriceFeed.sol/index.js +12 -0
  603. package/lib/types/factories/SafeERC20__factory.d.ts +49 -0
  604. package/lib/types/factories/SafeERC20__factory.js +77 -0
  605. package/lib/types/factories/contracts/index.d.ts +1 -0
  606. package/lib/types/factories/contracts/index.js +30 -0
  607. package/lib/types/factories/contracts/interfaces/IGasPricer__factory.d.ts +22 -0
  608. package/lib/types/factories/contracts/interfaces/IGasPricer__factory.js +38 -0
  609. package/lib/types/factories/contracts/interfaces/index.d.ts +1 -0
  610. package/lib/types/factories/contracts/interfaces/index.js +8 -0
  611. package/lib/types/factories/index.d.ts +45 -7
  612. package/lib/types/factories/index.js +75 -14
  613. package/lib/types/index.d.ts +168 -24
  614. package/lib/types/index.js +135 -20
  615. package/lib/utils/formatter.d.ts +1 -4
  616. package/lib/utils/formatter.js +3 -69
  617. package/lib/utils/math.d.ts +2 -0
  618. package/lib/utils/math.js +2 -0
  619. package/lib/utils/types.d.ts +1 -0
  620. package/lib/watchers/creditAccountWatcher.d.ts +3 -2
  621. package/lib/watchers/creditAccountWatcher.js +20 -14
  622. package/lib/watchers/creditAccountWatcher.spec.js +18 -18
  623. package/lib/watchers/creditManagerWatcher.d.ts +5 -3
  624. package/lib/watchers/creditManagerWatcher.js +32 -10
  625. package/lib/watchers/creditManagerWatcher.spec.js +12 -4
  626. package/package.json +12 -8
  627. package/contracts/IRouter.sol +0 -100
  628. package/lib/core/pool/index.d.ts +0 -1
  629. package/lib/core/strategy.spec.js +0 -62
  630. package/lib/types/ILidoV1Adapter.sol/index.d.ts +0 -3
  631. package/lib/types/IWERC20Zapper.d.ts +0 -166
  632. package/lib/types/IWETHZapper.d.ts +0 -162
  633. package/lib/types/IWithdrawalManagerV3.sol/IWithdrawalManagerV3.d.ts +0 -370
  634. package/lib/types/IWithdrawalManagerV3.sol/IWithdrawalManagerV3Events.d.ts +0 -133
  635. package/lib/types/IWithdrawalManagerV3.sol/index.d.ts +0 -2
  636. package/lib/types/factories/ILidoV1Adapter.sol/ILidoV1AdapterExceptions__factory.d.ts +0 -12
  637. package/lib/types/factories/ILidoV1Adapter.sol/index.d.ts +0 -3
  638. package/lib/types/factories/ILidoV1Adapter.sol/index.js +0 -12
  639. package/lib/types/factories/IWithdrawalManagerV3.sol/index.d.ts +0 -2
  640. package/lib/types/factories/IWithdrawalManagerV3.sol/index.js +0 -10
  641. /package/lib/core/{strategy.spec.d.ts → gaugeMath.spec.d.ts} +0 -0
  642. /package/lib/{types/IConvexV1BoosterAdapter.js → pathfinder/v1/core.js} +0 -0
  643. /package/lib/{types/IDataCompressorV2_10.js → payload/gauge.js} +0 -0
  644. /package/lib/types/{IDataCompressorV3_00.js → CalldataExtractor.js} +0 -0
  645. /package/lib/types/{ILidoV1Adapter.sol/ILidoV1Adapter.js → ERC20.js} +0 -0
  646. /package/lib/types/{ILidoV1Adapter.sol/ILidoV1AdapterEvents.js → FarmAccounting.js} +0 -0
  647. /package/lib/types/{ILidoV1Adapter.sol/ILidoV1AdapterExceptions.js → IAaveV2_LendingPoolAdapter.js} +0 -0
  648. /package/lib/types/{ILidoV1Adapter.sol/index.js → IAaveV2_WrappedATokenAdapter.js} +0 -0
  649. /package/lib/types/{IWERC20Zapper.js → IBalancerV2Vault.sol/IBalancerV2Vault.js} +0 -0
  650. /package/lib/types/{IWETHZapper.js → IBalancerV2Vault.sol/IBalancerV2VaultGetters.js} +0 -0
  651. /package/lib/types/{IWithdrawalManagerV3.sol → IBalancerV2Vault.sol}/index.js +0 -0
  652. /package/lib/types/{IWithdrawalManagerV3.sol/IWithdrawalManagerV3.js → IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapter.js} +0 -0
  653. /package/lib/types/{IWithdrawalManagerV3.sol/IWithdrawalManagerV3Events.js → IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterEvents.js} +0 -0
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.formatDateTime = exports.formatLeverage = exports.formatPercentage = exports.formatDate = exports.shortHash = exports.shortAddress = exports.toBN = exports.toSignificant = exports.toHumanFormat = exports.formatBn4dig = exports.formatBN = exports.formatRAY = exports.rayToNumber = void 0;
3
+ exports.formatDateTime = exports.formatLeverage = exports.formatPercentage = exports.formatDate = exports.shortHash = exports.shortAddress = exports.toBN = exports.toSignificant = exports.formatRAY = exports.rayToNumber = void 0;
4
4
  const sdk_gov_1 = require("@gearbox-protocol/sdk-gov");
5
5
  const decimal_js_light_1 = require("decimal.js-light");
6
6
  const moment_1 = require("moment");
@@ -12,78 +12,12 @@ function formatRAY(num = 0n) {
12
12
  return toSignificant(num, 27);
13
13
  }
14
14
  exports.formatRAY = formatRAY;
15
- const limitPrecision = (n, p) => {
16
- const notZero = n !== 0n;
17
- if (n <= 10n && notZero) {
18
- return 6;
19
- }
20
- if (n <= 100n && notZero) {
21
- return 5;
22
- }
23
- if (n <= 1000n && notZero) {
24
- return 4;
25
- }
26
- if (n <= 10000n && notZero) {
27
- return 3;
28
- }
29
- if (p === undefined && n > 10n ** 21n) {
30
- return 2;
31
- }
32
- if (p === undefined && n > 10n ** 24n) {
33
- return 0;
34
- }
35
- return p;
36
- };
37
- const limitNum = (n, d = 18) => {
38
- let limited = n <= 2n ? 0n : n;
39
- if (d <= 6) {
40
- return limited * 10n ** BigInt(6 - d);
41
- }
42
- else {
43
- return limited / 10n ** BigInt(d - 6);
44
- }
45
- };
46
- function formatBN(num, decimals, precision) {
47
- if (num === undefined)
48
- return "-";
49
- const numBInt = (0, sdk_gov_1.toBigInt)(num);
50
- // GUSD: 2 decimals
51
- const limitedNum = limitNum(numBInt, decimals);
52
- const limitedPrecision = limitPrecision(limitedNum, precision);
53
- return toHumanFormat(limitedNum, limitedPrecision);
54
- }
55
- exports.formatBN = formatBN;
56
- function formatBn4dig(num, precision = 2) {
57
- if (precision > 6) {
58
- throw new Error("Precision is too high, try <= 6");
59
- }
60
- const numStr = num.toString();
61
- if (numStr.length <= 6) {
62
- const completed = "0".repeat(6 - numStr.length) + numStr;
63
- return `0.${completed.slice(0, precision)}`;
64
- }
65
- return `${numStr.slice(0, numStr.length - 6)}.${numStr.slice(numStr.length - 6, numStr.length - 6 + precision)}`;
66
- }
67
- exports.formatBn4dig = formatBn4dig;
68
- function toHumanFormat(num, precision = 2) {
69
- if (num >= BigInt(1e15)) {
70
- return `${formatBn4dig(num / BigInt(1e9), precision)}Bn`;
71
- }
72
- if (num >= BigInt(1e12)) {
73
- return `${formatBn4dig(num / BigInt(1e6), precision)}M`;
74
- }
75
- if (num >= BigInt(1e9)) {
76
- return `${formatBn4dig(num / BigInt(1e3), precision)}K`;
77
- }
78
- return formatBn4dig(num, precision);
79
- }
80
- exports.toHumanFormat = toHumanFormat;
81
- function toSignificant(num, decimals) {
15
+ function toSignificant(num, decimals, precision = 6) {
82
16
  if (num === 1n)
83
17
  return "0";
84
18
  const divider = new decimal_js_light_1.Decimal(10).toPower(decimals);
85
19
  const number = new decimal_js_light_1.Decimal(num.toString()).div(divider);
86
- return number.toSignificantDigits(6, 4).toString();
20
+ return number.toSignificantDigits(precision, 4).toString();
87
21
  }
88
22
  exports.toSignificant = toSignificant;
89
23
  function toBN(num, decimals) {
@@ -7,4 +7,6 @@ export declare const nonNegativeBn: (v: bigint) => bigint;
7
7
  export declare class BigIntMath {
8
8
  static abs: (x: bigint) => bigint;
9
9
  static toHexString: (x: bigint) => string;
10
+ static max: (a: bigint, b: bigint) => bigint;
11
+ static min: (a: bigint, b: bigint) => bigint;
10
12
  }
package/lib/utils/math.js CHANGED
@@ -41,5 +41,7 @@ exports.nonNegativeBn = nonNegativeBn;
41
41
  class BigIntMath {
42
42
  static abs = (x) => (x < 0n ? -x : x);
43
43
  static toHexString = (x) => ethers_1.BigNumber.from(x).toHexString();
44
+ static max = (a, b) => (a > b ? a : b);
45
+ static min = (a, b) => (a < b ? a : b);
44
46
  }
45
47
  exports.BigIntMath = BigIntMath;
@@ -2,3 +2,4 @@ import { BigNumber } from "ethers";
2
2
  export type BigintifyProps<T extends {}> = {
3
3
  [K in keyof T]: T[K] extends BigNumber ? bigint : T[K];
4
4
  };
5
+ export type PartialKeys<T, K extends keyof T> = Partial<Pick<T, K>> & Omit<T, K>;
@@ -10,7 +10,7 @@ interface BatchCreditAccountLoadOptions {
10
10
  atBlock?: number;
11
11
  chunkSize?: number;
12
12
  }
13
- export declare class CreditAccountWatcher {
13
+ export declare class CreditAccountWatcherV2 {
14
14
  static IERC20: import("../types/IERC20").IERC20Interface;
15
15
  static creditManagerInterface: import("../types/ICreditManagerV2.sol/ICreditManagerV2").ICreditManagerV2Interface;
16
16
  static creditConfiguratorInterface: import("../types/ICreditConfiguratorV2.sol/ICreditConfiguratorV2").ICreditConfiguratorV2Interface;
@@ -23,7 +23,7 @@ export declare class CreditAccountWatcher {
23
23
  * @returns Arrays of hashes for opened accounts
24
24
  */
25
25
  static getOpenAccounts(creditManager: CreditManagerData, provider: providers.Provider, toBlock?: number): Promise<Array<CreditAccountHash>>;
26
- static batchCreditAccountLoad(accs: Array<CreditAccountHash>, dataCompressor: string, signer: Signer | providers.Provider, options?: BatchCreditAccountLoadOptions | number): Promise<Array<CreditAccountData>>;
26
+ static batchCreditAccountLoad(accs: Array<CreditAccountHash>, dataCompressor210: string, signer: Signer | providers.Provider, options?: BatchCreditAccountLoadOptions | number): Promise<Array<CreditAccountData>>;
27
27
  /**
28
28
  * Tracks block logs and detects whichj acccounts were changed (created / modified) and which were deleted
29
29
  * @param logs Logs from last N blocks
@@ -32,5 +32,6 @@ export declare class CreditAccountWatcher {
32
32
  */
33
33
  static detectChanges(logs: Array<providers.Log>, creditManagers: Array<CreditManagerData>): CreditManagerUpdate;
34
34
  static trackDirectTransfers(freshLogs: Array<providers.Log>, tokensToTrack: Array<string>, accounts: Array<CreditAccountData>): Array<CreditAccountHash>;
35
+ private static assertCMSupported;
35
36
  }
36
37
  export {};
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CreditAccountWatcher = void 0;
3
+ exports.CreditAccountWatcherV2 = void 0;
4
4
  const sdk_gov_1 = require("@gearbox-protocol/sdk-gov");
5
5
  const creditAccount_1 = require("../core/creditAccount");
6
6
  const types_1 = require("../types");
7
- class CreditAccountWatcher {
7
+ class CreditAccountWatcherV2 {
8
8
  static IERC20 = types_1.IERC20__factory.createInterface();
9
9
  static creditManagerInterface = types_1.ICreditManagerV2__factory.createInterface();
10
10
  static creditConfiguratorInterface = types_1.ICreditConfiguratorV2__factory.createInterface();
@@ -17,9 +17,7 @@ class CreditAccountWatcher {
17
17
  * @returns Arrays of hashes for opened accounts
18
18
  */
19
19
  static async getOpenAccounts(creditManager, provider, toBlock) {
20
- if (!(creditManager.version === 2 || creditManager.version === 210)) {
21
- throw new Error("Works for V2 only");
22
- }
20
+ CreditAccountWatcherV2.assertCMSupported(creditManager);
23
21
  const eventsByDate = [];
24
22
  const addToEvents = (e, address, operation) => {
25
23
  eventsByDate.push({
@@ -83,7 +81,7 @@ class CreditAccountWatcher {
83
81
  });
84
82
  return Array.from(accounts.values()).map(borrower => creditAccount_1.CreditAccountData.hash(creditManager.address, borrower));
85
83
  }
86
- static async batchCreditAccountLoad(accs, dataCompressor, signer, options) {
84
+ static async batchCreditAccountLoad(accs, dataCompressor210, signer, options) {
87
85
  let chunkSize = 1000;
88
86
  let atBlock;
89
87
  if (typeof options === "object") {
@@ -93,8 +91,8 @@ class CreditAccountWatcher {
93
91
  else {
94
92
  atBlock = options;
95
93
  }
96
- const dcInterface = types_1.IDataCompressorV2_10__factory.createInterface();
97
- const dcmc = new sdk_gov_1.MultiCallContract(dataCompressor, dcInterface, signer);
94
+ const dcInterface = types_1.IDataCompressorV2_1__factory.createInterface();
95
+ const dcmc = new sdk_gov_1.MultiCallContract(dataCompressor210, dcInterface, signer);
98
96
  const calls = [];
99
97
  for (let i = 0; i < accs.length; i++) {
100
98
  const chunk = accs.slice(i * chunkSize, (i + 1) * chunkSize);
@@ -119,7 +117,10 @@ class CreditAccountWatcher {
119
117
  * @returns CreditManagerUpdate which contains updated (created / modified) and deleted accounts
120
118
  */
121
119
  static detectChanges(logs, creditManagers) {
122
- const cms = creditManagers.map(c => c.address.toLowerCase());
120
+ const cms = creditManagers.map(cm => {
121
+ CreditAccountWatcherV2.assertCMSupported(cm);
122
+ return cm.address.toLowerCase();
123
+ });
123
124
  const cfToCm = {};
124
125
  const ccToCm = {};
125
126
  // maps credit manager addr to credit configurator addresses
@@ -135,7 +136,7 @@ class CreditAccountWatcher {
135
136
  for (let log of logs) {
136
137
  const logAddr = log.address.toLowerCase();
137
138
  if (cms.includes(logAddr)) {
138
- const { name, args } = CreditAccountWatcher.creditManagerInterface.parseLog(log);
139
+ const { name, args } = CreditAccountWatcherV2.creditManagerInterface.parseLog(log);
139
140
  if (name === "ExecuteOrder") {
140
141
  const { borrower } = args;
141
142
  if (!borrower)
@@ -151,14 +152,14 @@ class CreditAccountWatcher {
151
152
  }
152
153
  }
153
154
  else if (logAddr in ccToCm) {
154
- const { name, args } = CreditAccountWatcher.creditConfiguratorInterface.parseLog(log);
155
+ const { name, args } = CreditAccountWatcherV2.creditConfiguratorInterface.parseLog(log);
155
156
  if (name === "CreditFacadeUpgraded") {
156
157
  const newCreditFacade = args.newCreditFacade.toLowerCase();
157
158
  cfToCm[newCreditFacade] = ccToCm[logAddr];
158
159
  }
159
160
  }
160
161
  else if (logAddr in cfToCm) {
161
- const { name, args } = CreditAccountWatcher.creditFacadeInterface.parseLog(log);
162
+ const { name, args } = CreditAccountWatcherV2.creditFacadeInterface.parseLog(log);
162
163
  switch (name) {
163
164
  case "OpenCreditAccount":
164
165
  case "AddCollateral": {
@@ -225,7 +226,7 @@ class CreditAccountWatcher {
225
226
  });
226
227
  for (let log of freshLogs) {
227
228
  if (tkns.includes(log.address.toLocaleLowerCase())) {
228
- const { name, args } = CreditAccountWatcher.IERC20.parseLog(log);
229
+ const { name, args } = CreditAccountWatcherV2.IERC20.parseLog(log);
229
230
  if (name === "Transfer" &&
230
231
  accAddresses.includes(args.to.toLowerCase())) {
231
232
  modified.add(accToCa[args.to.toLowerCase()].hash());
@@ -234,5 +235,10 @@ class CreditAccountWatcher {
234
235
  }
235
236
  return Array.from(modified);
236
237
  }
238
+ static assertCMSupported(cm) {
239
+ if (cm.version < 2 || cm.version > 299) {
240
+ throw new Error(`CreditAccountWatcherV2 does not support credit manager version ${cm.version}`);
241
+ }
242
+ }
237
243
  }
238
- exports.CreditAccountWatcher = CreditAccountWatcher;
244
+ exports.CreditAccountWatcherV2 = CreditAccountWatcherV2;
@@ -55,7 +55,7 @@ const newConfiguratorLog = (managerAddr = CREDIT_MANAGER_ADDRESS, configuratorAd
55
55
  ]);
56
56
  describe("CreditAccountTracker test", () => {
57
57
  it("detects update events correctly", () => {
58
- (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcher.detectChanges([openLog()], [cmDumb])).to.be.eql({
58
+ (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcherV2.detectChanges([openLog()], [cmDumb])).to.be.eql({
59
59
  updated: [expectedHash],
60
60
  deleted: [],
61
61
  });
@@ -63,7 +63,7 @@ describe("CreditAccountTracker test", () => {
63
63
  creditFacadeInterface.getEventTopic("IncreaseBorrowedAmount"),
64
64
  encode("address", BORROWER),
65
65
  ], ethers_1.utils.defaultAbiCoder.encode(["uint256"], [10]));
66
- (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcher.detectChanges([log], [cmDumb])).to.be.eql({
66
+ (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcherV2.detectChanges([log], [cmDumb])).to.be.eql({
67
67
  updated: [expectedHash],
68
68
  deleted: [],
69
69
  });
@@ -71,7 +71,7 @@ describe("CreditAccountTracker test", () => {
71
71
  creditFacadeInterface.getEventTopic("DecreaseBorrowedAmount"),
72
72
  encode("address", BORROWER),
73
73
  ], ethers_1.utils.defaultAbiCoder.encode(["uint256"], [10]));
74
- (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcher.detectChanges([log], [cmDumb])).to.be.eql({
74
+ (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcherV2.detectChanges([log], [cmDumb])).to.be.eql({
75
75
  updated: [expectedHash],
76
76
  deleted: [],
77
77
  });
@@ -80,7 +80,7 @@ describe("CreditAccountTracker test", () => {
80
80
  encode("address", BORROWER),
81
81
  encode("address", sdk_gov_1.DUMB_ADDRESS),
82
82
  ], ethers_1.utils.defaultAbiCoder.encode(["uint256"], [10]));
83
- (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcher.detectChanges([log], [cmDumb])).to.be.eql({
83
+ (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcherV2.detectChanges([log], [cmDumb])).to.be.eql({
84
84
  updated: [expectedHash],
85
85
  deleted: [],
86
86
  });
@@ -88,7 +88,7 @@ describe("CreditAccountTracker test", () => {
88
88
  creditFacadeInterface.getEventTopic("MultiCallStarted"),
89
89
  encode("address", BORROWER),
90
90
  ]);
91
- (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcher.detectChanges([log], [cmDumb])).to.be.eql({
91
+ (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcherV2.detectChanges([log], [cmDumb])).to.be.eql({
92
92
  updated: [expectedHash],
93
93
  deleted: [],
94
94
  });
@@ -97,7 +97,7 @@ describe("CreditAccountTracker test", () => {
97
97
  encode("address", BORROWER),
98
98
  encode("address", sdk_gov_1.DUMB_ADDRESS),
99
99
  ]);
100
- (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcher.detectChanges([log], [cmDumb])).to.be.eql({
100
+ (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcherV2.detectChanges([log], [cmDumb])).to.be.eql({
101
101
  updated: [expectedHash],
102
102
  deleted: [],
103
103
  });
@@ -106,7 +106,7 @@ describe("CreditAccountTracker test", () => {
106
106
  encode("address", BORROWER),
107
107
  encode("address", sdk_gov_1.DUMB_ADDRESS),
108
108
  ]);
109
- (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcher.detectChanges([log], [cmDumb])).to.be.eql({
109
+ (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcherV2.detectChanges([log], [cmDumb])).to.be.eql({
110
110
  updated: [expectedHash],
111
111
  deleted: [],
112
112
  });
@@ -115,7 +115,7 @@ describe("CreditAccountTracker test", () => {
115
115
  encode("address", BORROWER),
116
116
  encode("address", sdk_gov_1.DUMB_ADDRESS),
117
117
  ]);
118
- (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcher.detectChanges([log], [cmDumb])).to.be.eql({
118
+ (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcherV2.detectChanges([log], [cmDumb])).to.be.eql({
119
119
  updated: [expectedHash],
120
120
  deleted: [],
121
121
  });
@@ -124,7 +124,7 @@ describe("CreditAccountTracker test", () => {
124
124
  // DELETED
125
125
  //
126
126
  it("detects delete events correctly", () => {
127
- (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcher.detectChanges([closeLog()], [cmDumb])).to.be.eql({
127
+ (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcherV2.detectChanges([closeLog()], [cmDumb])).to.be.eql({
128
128
  updated: [],
129
129
  deleted: [expectedHash],
130
130
  });
@@ -135,7 +135,7 @@ describe("CreditAccountTracker test", () => {
135
135
  encode("address", sdk_gov_1.DUMB_ADDRESS),
136
136
  encode("address", sdk_gov_1.DUMB_ADDRESS),
137
137
  ], ethers_1.utils.defaultAbiCoder.encode(["uint256"], [10]));
138
- (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcher.detectChanges([log], [cmDumb])).to.be.eql({
138
+ (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcherV2.detectChanges([log], [cmDumb])).to.be.eql({
139
139
  updated: [],
140
140
  deleted: [expectedHash],
141
141
  });
@@ -146,27 +146,27 @@ describe("CreditAccountTracker test", () => {
146
146
  encode("address", sdk_gov_1.DUMB_ADDRESS),
147
147
  encode("address", sdk_gov_1.DUMB_ADDRESS),
148
148
  ], ethers_1.utils.defaultAbiCoder.encode(["uint256"], [10]));
149
- (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcher.detectChanges([log], [cmDumb])).to.be.eql({
149
+ (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcherV2.detectChanges([log], [cmDumb])).to.be.eql({
150
150
  updated: [],
151
151
  deleted: [expectedHash],
152
152
  });
153
153
  });
154
154
  it("doesn't make duplicated", () => {
155
- (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcher.detectChanges([openLog(), openLog(), openLog()], [cmDumb])).to.be.eql({
155
+ (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcherV2.detectChanges([openLog(), openLog(), openLog()], [cmDumb])).to.be.eql({
156
156
  updated: [expectedHash],
157
157
  deleted: [],
158
158
  });
159
- (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcher.detectChanges([closeLog(), closeLog(), closeLog()], [cmDumb])).to.be.eql({
159
+ (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcherV2.detectChanges([closeLog(), closeLog(), closeLog()], [cmDumb])).to.be.eql({
160
160
  updated: [],
161
161
  deleted: [expectedHash],
162
162
  });
163
163
  });
164
164
  it("updates accounts were created and deleted in the batch", () => {
165
- (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcher.detectChanges([openLog(), closeLog()], [cmDumb])).to.be.eql({
165
+ (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcherV2.detectChanges([openLog(), closeLog()], [cmDumb])).to.be.eql({
166
166
  updated: [],
167
167
  deleted: [expectedHash],
168
168
  });
169
- (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcher.detectChanges([openLog(), closeLog(), openLog()], [cmDumb])).to.be.eql({
169
+ (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcherV2.detectChanges([openLog(), closeLog(), openLog()], [cmDumb])).to.be.eql({
170
170
  updated: [expectedHash],
171
171
  deleted: [expectedHash],
172
172
  });
@@ -177,7 +177,7 @@ describe("CreditAccountTracker test", () => {
177
177
  encode("address", BORROWER),
178
178
  encode("address", sdk_gov_1.DUMB_ADDRESS),
179
179
  ]);
180
- (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcher.detectChanges([openLog(), transferLog], [cmDumb])).to.be.eql({
180
+ (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcherV2.detectChanges([openLog(), transferLog], [cmDumb])).to.be.eql({
181
181
  updated: [
182
182
  `${CREDIT_MANAGER_ADDRESS.toLowerCase()}:${sdk_gov_1.DUMB_ADDRESS.toLowerCase()}`,
183
183
  ],
@@ -185,7 +185,7 @@ describe("CreditAccountTracker test", () => {
185
185
  });
186
186
  });
187
187
  it("correctly handles credit configurator change", () => {
188
- (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcher.detectChanges([
188
+ (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcherV2.detectChanges([
189
189
  openLog(),
190
190
  newConfiguratorLog(),
191
191
  upgradeFacadeLog(),
@@ -194,7 +194,7 @@ describe("CreditAccountTracker test", () => {
194
194
  updated: [],
195
195
  deleted: [expectedHash],
196
196
  });
197
- (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcher.detectChanges([
197
+ (0, chai_1.expect)(creditAccountWatcher_1.CreditAccountWatcherV2.detectChanges([
198
198
  openLog(),
199
199
  closeLog(),
200
200
  newConfiguratorLog(),
@@ -1,8 +1,10 @@
1
1
  import { providers, Signer } from "ethers";
2
2
  import { CreditManagerData } from "../core/creditManager";
3
3
  export declare class CreditManagerWatcher {
4
- static creditManagerInterface: import("../types/ICreditManagerV2.sol/ICreditManagerV2").ICreditManagerV2Interface;
5
- static creditConfiguratorInterface: import("../types/ICreditConfiguratorV2.sol/ICreditConfiguratorV2").ICreditConfiguratorV2Interface;
6
- static getV2CreditManagers(dataCompressor: string, signer: Signer | providers.Provider, atBlock?: number): Promise<Record<string, CreditManagerData>>;
4
+ private static newConfiguratorV2Topic;
5
+ private static newConfiguratorV3Topic;
6
+ static getAllCreditManagers(addressProvider: string, signer: Signer | providers.Provider, atBlock?: number): Promise<Record<string, CreditManagerData>>;
7
+ static getV2CreditManagers(dataCompressorV210: string, signer: Signer | providers.Provider, atBlock?: number): Promise<Record<string, CreditManagerData>>;
8
+ static getV3CreditManagers(dataCompressorV300: string, signer: Signer | providers.Provider, atBlock?: number): Promise<Record<string, CreditManagerData>>;
7
9
  static detectConfigChanges(freshLogs: Array<providers.Log>, creditManagers: Array<CreditManagerData>): boolean;
8
10
  }
@@ -1,18 +1,40 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CreditManagerWatcher = void 0;
4
- const sdk_gov_1 = require("@gearbox-protocol/sdk-gov");
4
+ const utils_1 = require("ethers/lib/utils");
5
5
  const creditManager_1 = require("../core/creditManager");
6
6
  const types_1 = require("../types");
7
7
  class CreditManagerWatcher {
8
- static creditManagerInterface = types_1.ICreditManagerV2__factory.createInterface();
9
- static creditConfiguratorInterface = types_1.ICreditConfiguratorV2__factory.createInterface();
10
- static async getV2CreditManagers(dataCompressor, signer, atBlock) {
8
+ static newConfiguratorV2Topic = types_1.ICreditManagerV2__factory.createInterface().getEventTopic("NewConfigurator");
9
+ static newConfiguratorV3Topic = types_1.ICreditManagerV3__factory.createInterface().getEventTopic("SetCreditConfigurator");
10
+ static async getAllCreditManagers(addressProvider, signer, atBlock) {
11
+ const ap = types_1.IAddressProviderV3__factory.connect(addressProvider, signer);
12
+ const [dc210, dc300] = await Promise.all([
13
+ ap.getAddressOrRevert((0, utils_1.formatBytes32String)("DATA_COMPRESSOR"), 210, {
14
+ blockTag: atBlock,
15
+ }),
16
+ ap.getAddressOrRevert((0, utils_1.formatBytes32String)("DATA_COMPRESSOR"), 300, {
17
+ blockTag: atBlock,
18
+ }),
19
+ ]);
20
+ const [cms2, cms3] = await Promise.all([
21
+ CreditManagerWatcher.getV2CreditManagers(dc210, signer, atBlock),
22
+ CreditManagerWatcher.getV3CreditManagers(dc300, signer, atBlock),
23
+ ]);
24
+ return { ...cms2, ...cms3 };
25
+ }
26
+ static async getV2CreditManagers(dataCompressorV210, signer, atBlock) {
27
+ const creditManagers = {};
28
+ const creditManagersPayload = await types_1.IDataCompressorV2_1__factory.connect(dataCompressorV210, signer).getCreditManagersV2List({ blockTag: atBlock });
29
+ creditManagersPayload.forEach(c => {
30
+ creditManagers[c.addr.toLowerCase()] = new creditManager_1.CreditManagerData(c);
31
+ });
32
+ return creditManagers;
33
+ }
34
+ static async getV3CreditManagers(dataCompressorV300, signer, atBlock) {
11
35
  const creditManagers = {};
12
- const creditManagersPayload = await types_1.IDataCompressorV2_10__factory.connect(dataCompressor, signer).getCreditManagersV2List({ blockTag: atBlock });
13
- creditManagersPayload
14
- .filter(c => (0, sdk_gov_1.toBigInt)(c.cfVersion) === 2n || (0, sdk_gov_1.toBigInt)(c.cfVersion) === 210n)
15
- .forEach(c => {
36
+ const creditManagersPayload = await types_1.IDataCompressorV3__factory.connect(dataCompressorV300, signer).getCreditManagersV3List({ blockTag: atBlock });
37
+ creditManagersPayload.forEach(c => {
16
38
  creditManagers[c.addr.toLowerCase()] = new creditManager_1.CreditManagerData(c);
17
39
  });
18
40
  return creditManagers;
@@ -22,8 +44,8 @@ class CreditManagerWatcher {
22
44
  const ccs = creditManagers.map(c => c.creditConfigurator);
23
45
  for (let log of freshLogs) {
24
46
  if (cms.includes(log.address.toLowerCase())) {
25
- const { name } = CreditManagerWatcher.creditManagerInterface.parseLog(log);
26
- if (name === "NewConfigurator") {
47
+ if (log.topics[0] === CreditManagerWatcher.newConfiguratorV2Topic ||
48
+ log.topics[0] === CreditManagerWatcher.newConfiguratorV3Topic) {
27
49
  return true;
28
50
  }
29
51
  }
@@ -26,20 +26,28 @@ const makeLog = (address, topics, data = sdk_gov_1.ADDRESS_0X0) => {
26
26
  };
27
27
  };
28
28
  describe("CreditManagerTracker test", () => {
29
- it("detects CreditManager events correctly", () => {
30
- const creditManagerInterface = types_1.ICreditManagerV2__factory.createInterface();
29
+ it("detects CreditManagerV2 events correctly", () => {
30
+ const cmV2Interface = types_1.ICreditManagerV2__factory.createInterface();
31
31
  let log = makeLog(CREDIT_MANAGER_ADDRESS, [
32
- creditManagerInterface.getEventTopic("NewConfigurator"),
32
+ cmV2Interface.getEventTopic("NewConfigurator"),
33
33
  encode("address", sdk_gov_1.DUMB_ADDRESS),
34
34
  ]);
35
35
  (0, chai_1.expect)(creditManagerWatcher_1.CreditManagerWatcher.detectConfigChanges([log], [cmDumb])).to.be.eq(true);
36
36
  log = makeLog(CREDIT_MANAGER_ADDRESS, [
37
- creditManagerInterface.getEventTopic("ExecuteOrder"),
37
+ cmV2Interface.getEventTopic("ExecuteOrder"),
38
38
  encode("address", sdk_gov_1.DUMB_ADDRESS),
39
39
  encode("address", sdk_gov_1.DUMB_ADDRESS),
40
40
  ]);
41
41
  (0, chai_1.expect)(creditManagerWatcher_1.CreditManagerWatcher.detectConfigChanges([log], [cmDumb])).to.be.eq(false);
42
42
  });
43
+ it("detects CreditManagerV3 events correctly", () => {
44
+ const cmV3Interface = types_1.ICreditManagerV3__factory.createInterface();
45
+ let log = makeLog(CREDIT_MANAGER_ADDRESS, [
46
+ cmV3Interface.getEventTopic("SetCreditConfigurator"),
47
+ encode("address", sdk_gov_1.DUMB_ADDRESS),
48
+ ]);
49
+ (0, chai_1.expect)(creditManagerWatcher_1.CreditManagerWatcher.detectConfigChanges([log], [cmDumb])).to.be.eq(true);
50
+ });
43
51
  it("detects CreditConfigurator events correctly", () => {
44
52
  const ccInterface = types_1.ICreditConfiguratorV2__factory.createInterface();
45
53
  let log = makeLog(CREDIT_CONFIGIURATOR_ADDRESS, [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gearbox-protocol/sdk",
3
- "version": "3.0.0-next.14",
3
+ "version": "3.0.0-next.140",
4
4
  "description": "Gearbox SDK",
5
5
  "main": "./lib/index.js",
6
6
  "types": "./lib/index.d.ts",
@@ -27,27 +27,31 @@
27
27
  "lint": "eslint \"**/*.ts\" --fix",
28
28
  "lint:ci": "eslint \"**/*.ts\"",
29
29
  "typecheck:ci": "tsc --noEmit",
30
- "test": "npx mocha -r ts-node/register -r dotenv/config src/**/*.spec.ts"
30
+ "test": "npx mocha -r ts-node/register -r dotenv/config 'src/**/*.spec.ts'"
31
31
  },
32
32
  "dependencies": {
33
- "@gearbox-protocol/sdk-gov": "^1.5.27",
33
+ "@gearbox-protocol/sdk-gov": "^1.41.1",
34
34
  "axios": "^1.2.6",
35
35
  "decimal.js-light": "^2.5.1",
36
36
  "deep-eql": "^4.1.0",
37
37
  "moment": "^2.29.4"
38
38
  },
39
39
  "devDependencies": {
40
+ "@1inch/farming": "^3.1.0",
40
41
  "@1inch/solidity-utils": "^2.2.27",
41
42
  "@commitlint/cli": "^17.6.3",
42
43
  "@commitlint/config-conventional": "^17.0.3",
43
- "@gearbox-protocol/core-v2": "1.19.0-base.15",
44
- "@gearbox-protocol/core-v3": "^1.40.2",
44
+ "@gearbox-protocol/core-v2": "1.19.0-base.17",
45
+ "@gearbox-protocol/core-v3": "^1.47.3",
45
46
  "@gearbox-protocol/eslint-config": "^1.4.1",
46
- "@gearbox-protocol/integrations-v3": "^1.17.0",
47
- "@gearbox-protocol/oracles-v3": "^1.7.6",
48
- "@gearbox-protocol/periphery-v3": "^1.2.11",
47
+ "@gearbox-protocol/integrations-v3": "^1.36.0",
48
+ "@gearbox-protocol/oracles-v3": "^1.10.1",
49
+ "@gearbox-protocol/periphery-v3": "^1.5.3",
49
50
  "@gearbox-protocol/prettier-config": "^1.4.1",
51
+ "@gearbox-protocol/router": "^1.5.5",
52
+ "@gearbox-protocol/router-v3": "^1.16.5",
50
53
  "@openzeppelin/contracts": "^4.9.3",
54
+ "@redstone-finance/evm-connector": "^0.3.6",
51
55
  "@typechain/ethers-v5": "^10.1.0",
52
56
  "@types/chai": "^4.3.3",
53
57
  "@types/deep-eql": "^4.0.0",
@@ -1,100 +0,0 @@
1
- // SPDX-License-Identifier: GPL-2.0-or-later
2
- // Gearbox Protocol. Generalized leverage for DeFi protocols
3
- // (c) Gearbox Holdings, 2021
4
- pragma solidity ^0.8.10;
5
-
6
- import {Balance} from "@gearbox-protocol/core-v2/contracts/libraries/Balances.sol";
7
- import {IVersion} from "@gearbox-protocol/core-v2/contracts/interfaces/IVersion.sol";
8
- import {MultiCall} from "@gearbox-protocol/core-v2/contracts/libraries/MultiCall.sol";
9
-
10
- struct PathOption {
11
- address target;
12
- uint8 option;
13
- uint8 totalOptions;
14
- }
15
-
16
- enum SwapOperation {
17
- EXACT_INPUT,
18
- EXACT_INPUT_ALL,
19
- EXACT_OUTPUT
20
- }
21
-
22
- struct SwapTask {
23
- SwapOperation swapOperation;
24
- address creditAccount;
25
- address tokenIn;
26
- address tokenOut;
27
- address[] connectors;
28
- uint256 amount;
29
- uint256 slippage;
30
- bool externalSlippage;
31
- }
32
-
33
- struct RouterResult {
34
- uint256 amount;
35
- uint256 gasUsage;
36
- MultiCall[] calls;
37
- }
38
-
39
- interface IRouter is IVersion {
40
- /// @dev Emits each time when routerComponent is set / updated
41
- event RouterComponentUpdate(uint8 indexed, address indexed);
42
-
43
- /// @dev Emits each time when resolver is set / updated
44
- event ResolverUpdate(uint8 indexed ttIn, uint8 indexed ttOut, uint8 indexed rc);
45
-
46
- event TokenTypeUpdate(address indexed tokenAddress, uint8 indexed tt);
47
-
48
- /// @dev Finds all available swaps for NORMAL tokens
49
- function findAllSwaps(SwapTask memory swapTask) external returns (RouterResult[] memory);
50
-
51
- /// @dev Finds best path to swap all Normal tokens and tokens "on the way" to target one and vice versa
52
- function findOneTokenPath(
53
- address tokenIn,
54
- uint256 amount,
55
- address tokenOut,
56
- address creditAccount,
57
- address[] calldata connectors,
58
- uint256 slippage
59
- ) external returns (RouterResult memory);
60
-
61
- /// @dev Finds the best swap to deposit (or swap) all provided tokens into target one
62
- /// Currently it takes ALL Normal tokens and all LP "on the way" tokens into target one.
63
- /// It some token is not "on the way" it would be skipped.
64
- /// @param creditManager Address of creditManager
65
- /// @param balances Expected balances on credit account
66
- /// @param target Address of target token
67
- /// @param connectors Addresses of "connectors" - internidiatery tokens which're used for swap operations
68
- /// @param slippage Slippage in PERCENTAGE_FORMAT
69
- function findOpenStrategyPath(
70
- address creditManager,
71
- Balance[] calldata balances,
72
- address target,
73
- address[] calldata connectors,
74
- uint256 slippage
75
- ) external returns (Balance[] memory, RouterResult memory);
76
-
77
- /// @dev Finds the best close path - withdraw all tokens and swap them into underlying one
78
- /// @param creditAccount Address of closing creditAccount
79
- /// @param connectors Addresses of "connectors" - internidiatery tokens which're used for swap operations
80
- /// @param slippage Slippage in PERCENTAGE_FORMAT
81
- /// @param pathOptions Starting point for iterating routes. More info in PathOption file
82
- /// @param iterations How many iterations algo should compute starting from PathOptions
83
- function findBestClosePath(
84
- address creditAccount,
85
- address[] memory connectors,
86
- uint256 slippage,
87
- PathOption[] memory pathOptions,
88
- uint256 iterations,
89
- bool force
90
- ) external returns (RouterResult memory result, uint256 gasPriceTargetRAY);
91
-
92
- /// @dev Returns TokenType for provided token
93
- function tokenTypes(address) external view returns (uint8);
94
-
95
- /// @dev Returns current address for RouterComponent. Used for self-discovery
96
- function componentAddressById(uint8) external view returns (address);
97
-
98
- /// @dev @return True if address is router configurator, otherwise false
99
- function isRouterConfigurator(address account) external view returns (bool);
100
- }
@@ -1 +0,0 @@
1
- export * from "./data";