@gearbox-protocol/sdk 3.0.0-next.21 → 3.0.0-next.211

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 (689) hide show
  1. package/contracts/SignUpRepository.sol +85 -0
  2. package/contracts/index.sol +39 -5
  3. package/lib/apy/auraAPY.d.ts +1 -0
  4. package/lib/apy/auraAPY.js +23 -0
  5. package/lib/apy/auraAbi.d.ts +15 -0
  6. package/lib/apy/auraAbi.js +24 -0
  7. package/lib/apy/convexAPY.d.ts +1194 -15
  8. package/lib/apy/convexAPY.js +57 -43
  9. package/lib/apy/curveAPY.d.ts +55 -5
  10. package/lib/apy/curveAPY.js +128 -72
  11. package/lib/apy/defiLamaAPY.d.ts +3 -0
  12. package/lib/apy/defiLamaAPY.js +69 -0
  13. package/lib/apy/index.d.ts +13 -4
  14. package/lib/apy/index.js +59 -5
  15. package/lib/apy/lidoAPY.d.ts +4 -1
  16. package/lib/apy/lidoAPY.js +7 -10
  17. package/lib/apy/yearnAPY.d.ts +3 -3
  18. package/lib/apy/yearnAPY.js +15 -12
  19. package/lib/contracts/contractsRegister.d.ts +17 -9
  20. package/lib/contracts/contractsRegister.js +53 -3
  21. package/lib/core/assets.d.ts +10 -9
  22. package/lib/core/assets.js +2 -2
  23. package/lib/core/bot.d.ts +12 -0
  24. package/lib/core/bot.js +23 -0
  25. package/lib/core/creditAccount.d.ts +110 -51
  26. package/lib/core/creditAccount.js +257 -107
  27. package/lib/core/creditAccount.spec.js +973 -135
  28. package/lib/core/creditManager.d.ts +38 -29
  29. package/lib/core/creditManager.js +157 -86
  30. package/lib/core/creditSession.d.ts +35 -13
  31. package/lib/core/creditSession.js +32 -7
  32. package/lib/core/endpoint.d.ts +11 -0
  33. package/lib/core/endpoint.js +37 -0
  34. package/lib/core/eventOrTx.d.ts +5 -5
  35. package/lib/core/events.d.ts +163 -162
  36. package/lib/core/events.js +7 -7
  37. package/lib/core/gauge.d.ts +40 -0
  38. package/lib/core/gauge.js +64 -0
  39. package/lib/core/gaugeMath.d.ts +41 -0
  40. package/lib/core/gaugeMath.js +105 -0
  41. package/lib/core/gaugeMath.spec.js +388 -0
  42. package/lib/core/{pool/data.d.ts → pool.d.ts} +62 -30
  43. package/lib/core/{pool/data.js → pool.js} +115 -81
  44. package/lib/core/priceOracle.d.ts +1 -1
  45. package/lib/core/rewardClaimer.d.ts +8 -6
  46. package/lib/core/rewardConvex.d.ts +32 -14
  47. package/lib/core/rewardConvex.js +215 -64
  48. package/lib/core/rewardConvex.spec.js +39 -70
  49. package/lib/core/strategy.d.ts +20 -24
  50. package/lib/core/strategy.js +14 -36
  51. package/lib/core/trade.d.ts +13 -13
  52. package/lib/core/trade.js +36 -28
  53. package/lib/core/transactions.d.ts +214 -73
  54. package/lib/core/transactions.js +298 -119
  55. package/lib/gearboxRewards/api.d.ts +89 -0
  56. package/lib/gearboxRewards/api.js +313 -0
  57. package/lib/gearboxRewards/apy.d.ts +38 -0
  58. package/lib/gearboxRewards/apy.js +65 -0
  59. package/lib/gearboxRewards/extraAPY.d.ts +33 -0
  60. package/lib/gearboxRewards/extraAPY.js +133 -0
  61. package/lib/gearboxRewards/index.d.ts +3 -0
  62. package/lib/gearboxRewards/index.js +19 -0
  63. package/lib/gearboxRewards/merklAPI.d.ts +43 -0
  64. package/lib/gearboxRewards/merklAPI.js +11 -0
  65. package/lib/index.d.ts +10 -6
  66. package/lib/index.js +10 -8
  67. package/lib/parsers/ERC20Parser.d.ts +2 -1
  68. package/lib/parsers/ERC20Parser.js +7 -7
  69. package/lib/parsers/aaveV2LendingPoolAdapterParser.d.ts +8 -0
  70. package/lib/parsers/aaveV2LendingPoolAdapterParser.js +21 -0
  71. package/lib/parsers/aaveV2WrappedATokenAdapterParser.d.ts +8 -0
  72. package/lib/parsers/aaveV2WrappedATokenAdapterParser.js +21 -0
  73. package/lib/parsers/abstractParser.d.ts +22 -16
  74. package/lib/parsers/abstractParser.js +31 -14
  75. package/lib/parsers/balancerV2VaultParser.d.ts +8 -0
  76. package/lib/parsers/balancerV2VaultParser.js +32 -0
  77. package/lib/parsers/compoundV2CTokenAdapterParser.d.ts +8 -0
  78. package/lib/parsers/compoundV2CTokenAdapterParser.js +21 -0
  79. package/lib/parsers/convexBaseRewardPoolAdapterParser.d.ts +3 -2
  80. package/lib/parsers/convexBaseRewardPoolAdapterParser.js +18 -14
  81. package/lib/parsers/convexBoosterAdapterParser.d.ts +3 -3
  82. package/lib/parsers/convexBoosterAdapterParser.js +12 -12
  83. package/lib/parsers/convextRewardPoolParser.d.ts +2 -1
  84. package/lib/parsers/convextRewardPoolParser.js +4 -4
  85. package/lib/parsers/creditFacadeParser.d.ts +3 -2
  86. package/lib/parsers/creditFacadeParser.js +40 -14
  87. package/lib/parsers/creditManagerParser.d.ts +2 -1
  88. package/lib/parsers/creditManagerParser.js +4 -7
  89. package/lib/parsers/curveAdapterParser.d.ts +3 -2
  90. package/lib/parsers/curveAdapterParser.js +27 -27
  91. package/lib/parsers/erc626AdapterParser.d.ts +8 -0
  92. package/lib/parsers/erc626AdapterParser.js +21 -0
  93. package/lib/parsers/iParser.d.ts +4 -7
  94. package/lib/parsers/lidoAdapterParser.d.ts +2 -1
  95. package/lib/parsers/lidoAdapterParser.js +8 -7
  96. package/lib/parsers/lidoSTETHParser.d.ts +2 -1
  97. package/lib/parsers/lidoSTETHParser.js +7 -7
  98. package/lib/parsers/priceOracleParser.d.ts +2 -1
  99. package/lib/parsers/priceOracleParser.js +5 -5
  100. package/lib/parsers/txParser.d.ts +21 -24
  101. package/lib/parsers/txParser.js +43 -14
  102. package/lib/parsers/uniV2AdapterParser.d.ts +2 -2
  103. package/lib/parsers/uniV2AdapterParser.js +10 -12
  104. package/lib/parsers/uniV2AdapterParser.spec.js +43 -30
  105. package/lib/parsers/uniV3AdapterParser.d.ts +4 -3
  106. package/lib/parsers/uniV3AdapterParser.js +22 -14
  107. package/lib/parsers/uniV3AdapterParser.spec.js +53 -76
  108. package/lib/parsers/wstETHAdapterParser.d.ts +2 -1
  109. package/lib/parsers/wstETHAdapterParser.js +15 -15
  110. package/lib/parsers/wstETHAdapterParser.spec.js +23 -7
  111. package/lib/parsers/yearnAdapterParser.spec.js +39 -21
  112. package/lib/parsers/yearnV2AdapterParser.d.ts +2 -1
  113. package/lib/parsers/yearnV2AdapterParser.js +19 -9
  114. package/lib/pathfinder/balancerVault.d.ts +33 -0
  115. package/lib/pathfinder/balancerVault.js +59 -0
  116. package/lib/pathfinder/core.d.ts +20 -10
  117. package/lib/pathfinder/index.d.ts +4 -0
  118. package/lib/pathfinder/index.js +20 -0
  119. package/lib/pathfinder/pathOptions.d.ts +6 -5
  120. package/lib/pathfinder/pathOptions.js +34 -18
  121. package/lib/pathfinder/pathOptions.spec.js +3 -6
  122. package/lib/pathfinder/pathfinder.d.ts +49 -22
  123. package/lib/pathfinder/pathfinder.js +101 -80
  124. package/lib/pathfinder/pathfinder.spec.js +24 -11
  125. package/lib/pathfinder/utils.d.ts +34 -0
  126. package/lib/pathfinder/utils.js +186 -0
  127. package/lib/payload/bot.d.ts +13 -0
  128. package/lib/payload/creditAccount.d.ts +48 -6
  129. package/lib/payload/creditManager.d.ts +57 -16
  130. package/lib/payload/creditSession.d.ts +31 -16
  131. package/lib/payload/gauge.d.ts +40 -0
  132. package/lib/payload/graphPayload.d.ts +3 -2
  133. package/lib/payload/pool.d.ts +110 -33
  134. package/lib/payload/token.d.ts +5 -2
  135. package/lib/redstone/api.d.ts +45 -0
  136. package/lib/redstone/api.js +365 -0
  137. package/lib/redstone/index.d.ts +1 -0
  138. package/lib/{core/pool → redstone}/index.js +1 -1
  139. package/lib/tokens/tokenData.d.ts +7 -5
  140. package/lib/tokens/tokenData.js +24 -5
  141. package/lib/types/CompositePriceFeed.d.ts +182 -0
  142. package/lib/types/CompositePriceFeed.js +123 -0
  143. package/lib/types/IAaveV2_LendingPoolAdapter.d.ts +151 -0
  144. package/lib/types/IAaveV2_LendingPoolAdapter.js +98 -0
  145. package/lib/types/IAaveV2_WrappedATokenAdapter.d.ts +245 -0
  146. package/lib/types/IAaveV2_WrappedATokenAdapter.js +166 -0
  147. package/lib/types/IAddressProviderV3.d.ts +85 -0
  148. package/lib/types/IAddressProviderV3.js +66 -0
  149. package/lib/types/IAirdropDistributor.d.ts +112 -0
  150. package/lib/types/{factories/IAirdropDistributor.sol/IAirdropDistributor__factory.js → IAirdropDistributor.js} +56 -112
  151. package/lib/types/IBalancerV2VaultAdapter.d.ts +507 -0
  152. package/lib/types/IBalancerV2VaultAdapter.js +322 -0
  153. package/lib/types/IBaseRewardPool.d.ts +391 -378
  154. package/lib/types/IBaseRewardPool.js +249 -0
  155. package/lib/types/ICompoundV2_CTokenAdapter.d.ts +189 -0
  156. package/lib/types/ICompoundV2_CTokenAdapter.js +130 -0
  157. package/lib/types/IConvexToken.d.ts +201 -182
  158. package/lib/types/IConvexToken.js +143 -0
  159. package/lib/types/IConvexV1BaseRewardPoolAdapter.d.ts +299 -284
  160. package/lib/types/IConvexV1BaseRewardPoolAdapter.js +202 -0
  161. package/lib/types/IConvexV1BoosterAdapter.d.ts +182 -0
  162. package/lib/types/IConvexV1BoosterAdapter.js +125 -0
  163. package/lib/types/ICreditConfiguratorV3.d.ts +598 -0
  164. package/lib/types/{factories/ICreditConfiguratorV3.sol/ICreditConfiguratorV3__factory.js → ICreditConfiguratorV3.js} +348 -532
  165. package/lib/types/ICreditFacadeV2Extended.d.ts +74 -0
  166. package/lib/types/ICreditFacadeV2Extended.js +63 -0
  167. package/lib/types/ICreditFacadeV3.d.ts +543 -0
  168. package/lib/types/{factories/ICreditFacadeV3.sol/ICreditFacadeV3__factory.js → ICreditFacadeV3.js} +281 -590
  169. package/lib/types/ICreditFacadeV3Multicall.d.ts +197 -269
  170. package/lib/types/ICreditFacadeV3Multicall.js +142 -0
  171. package/lib/types/ICreditManagerV2.d.ts +700 -0
  172. package/lib/types/ICreditManagerV2.js +443 -0
  173. package/lib/types/ICreditManagerV3.d.ts +1016 -0
  174. package/lib/types/ICreditManagerV3.js +672 -0
  175. package/lib/types/ICurvePool.d.ts +559 -438
  176. package/lib/types/ICurvePool.js +332 -0
  177. package/lib/types/ICurveV1_2AssetsAdapter.d.ts +665 -698
  178. package/lib/types/ICurveV1_2AssetsAdapter.js +404 -0
  179. package/lib/types/ICurveV1_3AssetsAdapter.d.ts +665 -761
  180. package/lib/types/ICurveV1_3AssetsAdapter.js +404 -0
  181. package/lib/types/ICurveV1_4AssetsAdapter.d.ts +665 -779
  182. package/lib/types/ICurveV1_4AssetsAdapter.js +404 -0
  183. package/lib/types/IDataCompressorV2_1.d.ts +1165 -0
  184. package/lib/types/IDataCompressorV2_1.js +720 -0
  185. package/lib/types/IDataCompressorV3.d.ts +1573 -0
  186. package/lib/types/IDataCompressorV3.js +959 -0
  187. package/lib/types/IDegenDistributor.d.ts +77 -0
  188. package/lib/types/IDegenDistributor.js +72 -0
  189. package/lib/types/IERC20.d.ts +141 -142
  190. package/lib/types/IERC20.js +101 -0
  191. package/lib/types/IERC20Permit.d.ts +59 -74
  192. package/lib/types/IERC20Permit.js +35 -0
  193. package/lib/types/IERC20ZapperDeposits.d.ts +113 -0
  194. package/lib/types/IERC20ZapperDeposits.js +66 -0
  195. package/lib/types/IERC4626Adapter.d.ts +213 -0
  196. package/lib/types/IERC4626Adapter.js +142 -0
  197. package/lib/types/IETHZapperDeposits.d.ts +33 -0
  198. package/lib/types/IETHZapperDeposits.js +29 -0
  199. package/lib/types/IFarmingPool.d.ts +292 -0
  200. package/lib/types/IFarmingPool.js +231 -0
  201. package/lib/types/IGearStakingV3.d.ts +497 -0
  202. package/lib/types/IGearStakingV3.js +368 -0
  203. package/lib/types/IInterestRateModel.d.ts +29 -50
  204. package/lib/types/IInterestRateModel.js +23 -0
  205. package/lib/types/ILidoV1Adapter.d.ts +137 -158
  206. package/lib/types/ILidoV1Adapter.js +98 -0
  207. package/lib/types/IMulticall3.d.ts +332 -0
  208. package/lib/types/IMulticall3.js +244 -0
  209. package/lib/types/IOffchainOracle.d.ts +41 -58
  210. package/lib/types/IOffchainOracle.js +31 -0
  211. package/lib/types/IPartialLiquidationBotV3.d.ts +210 -0
  212. package/lib/types/IPartialLiquidationBotV3.js +143 -0
  213. package/lib/types/IPoolV3.d.ts +1061 -0
  214. package/lib/types/IPoolV3.js +806 -0
  215. package/lib/types/IPriceFeed.d.ts +77 -0
  216. package/lib/types/IPriceFeed.js +56 -0
  217. package/lib/types/IPriceOracleBase.d.ts +97 -88
  218. package/lib/types/IPriceOracleBase.js +58 -0
  219. package/lib/types/IPriceOracleV3.d.ts +319 -0
  220. package/lib/types/IPriceOracleV3.js +210 -0
  221. package/lib/types/IRouterV3.d.ts +505 -0
  222. package/lib/types/IRouterV3.js +328 -0
  223. package/lib/types/IUniswapV2Adapter.d.ts +214 -0
  224. package/lib/types/IUniswapV2Adapter.js +139 -0
  225. package/lib/types/IUniswapV3Adapter.d.ts +391 -0
  226. package/lib/types/IUniswapV3Adapter.js +260 -0
  227. package/lib/types/IUpdatablePriceFeed.d.ts +97 -0
  228. package/lib/types/IUpdatablePriceFeed.js +70 -0
  229. package/lib/types/IYearnV2Adapter.d.ts +223 -256
  230. package/lib/types/IYearnV2Adapter.js +146 -0
  231. package/lib/types/IZapper.d.ts +121 -130
  232. package/lib/types/IZapper.js +84 -0
  233. package/lib/types/IstETH.d.ts +257 -0
  234. package/lib/types/IstETH.js +175 -0
  235. package/lib/types/IwstETH.d.ts +257 -0
  236. package/lib/types/IwstETH.js +181 -0
  237. package/lib/types/IwstETHV1Adapter.d.ts +153 -186
  238. package/lib/types/IwstETHV1Adapter.js +106 -0
  239. package/lib/types/RedstonePriceFeed.d.ts +423 -0
  240. package/lib/types/RedstonePriceFeed.js +287 -0
  241. package/lib/types/SignUpRepository.d.ts +161 -0
  242. package/lib/types/SignUpRepository.js +137 -0
  243. package/lib/types/index.d.ts +51 -221
  244. package/lib/types/index.js +53 -186
  245. package/lib/utils/calls.d.ts +31 -0
  246. package/lib/utils/calls.js +73 -0
  247. package/lib/utils/formatter.d.ts +2 -2
  248. package/lib/utils/formatter.js +2 -2
  249. package/lib/utils/math.d.ts +1 -1
  250. package/lib/utils/math.js +1 -2
  251. package/lib/utils/types.d.ts +0 -4
  252. package/package.json +19 -17
  253. package/contracts/IRouter.sol +0 -100
  254. package/lib/core/errors.d.ts +0 -5
  255. package/lib/core/pool/index.d.ts +0 -1
  256. package/lib/core/strategy.spec.js +0 -62
  257. package/lib/parsers/addressProviderParser.d.ts +0 -6
  258. package/lib/parsers/addressProviderParser.js +0 -27
  259. package/lib/parsers/convexBaseRewardPoolAdapterParser.spec.d.ts +0 -1
  260. package/lib/parsers/convexBaseRewardPoolAdapterParser.spec.js +0 -24
  261. package/lib/parsers/convexBoosterAdapterParser.spec.d.ts +0 -1
  262. package/lib/parsers/convexBoosterAdapterParser.spec.js +0 -20
  263. package/lib/parsers/creditFacadeParser.spec.d.ts +0 -1
  264. package/lib/parsers/creditFacadeParser.spec.js +0 -25
  265. package/lib/parsers/curveAdapterParser.spec.d.ts +0 -1
  266. package/lib/parsers/curveAdapterParser.spec.js +0 -42
  267. package/lib/parsers/lidoAdapterParser.spec.d.ts +0 -1
  268. package/lib/parsers/lidoAdapterParser.spec.js +0 -17
  269. package/lib/parsers/poolParser.d.ts +0 -6
  270. package/lib/parsers/poolParser.js +0 -19
  271. package/lib/types/AddressProvider.d.ts +0 -382
  272. package/lib/types/Balances.sol/BalanceOps.d.ts +0 -27
  273. package/lib/types/Balances.sol/BalanceOps.js +0 -2
  274. package/lib/types/Balances.sol/index.d.ts +0 -1
  275. package/lib/types/Balances.sol/index.js +0 -2
  276. package/lib/types/Claimable.d.ts +0 -113
  277. package/lib/types/Claimable.js +0 -2
  278. package/lib/types/Errors.d.ts +0 -298
  279. package/lib/types/Errors.js +0 -2
  280. package/lib/types/IAdapter.d.ts +0 -74
  281. package/lib/types/IAdapter.js +0 -2
  282. package/lib/types/IAddressProvider.sol/IAddressProvider.d.ts +0 -137
  283. package/lib/types/IAddressProvider.sol/IAddressProvider.js +0 -2
  284. package/lib/types/IAddressProvider.sol/IAddressProviderEvents.d.ts +0 -43
  285. package/lib/types/IAddressProvider.sol/IAddressProviderEvents.js +0 -2
  286. package/lib/types/IAddressProvider.sol/index.d.ts +0 -2
  287. package/lib/types/IAddressProvider.sol/index.js +0 -2
  288. package/lib/types/IAddressProviderV3.sol/IAddressProviderV3.d.ts +0 -97
  289. package/lib/types/IAddressProviderV3.sol/IAddressProviderV3.js +0 -2
  290. package/lib/types/IAddressProviderV3.sol/IAddressProviderV3Events.d.ts +0 -45
  291. package/lib/types/IAddressProviderV3.sol/IAddressProviderV3Events.js +0 -2
  292. package/lib/types/IAddressProviderV3.sol/index.d.ts +0 -2
  293. package/lib/types/IAddressProviderV3.sol/index.js +0 -2
  294. package/lib/types/IAirdropDistributor.sol/IAirdropDistributor.d.ts +0 -124
  295. package/lib/types/IAirdropDistributor.sol/IAirdropDistributor.js +0 -2
  296. package/lib/types/IAirdropDistributor.sol/IAirdropDistributorEvents.d.ts +0 -73
  297. package/lib/types/IAirdropDistributor.sol/IAirdropDistributorEvents.js +0 -2
  298. package/lib/types/IAirdropDistributor.sol/index.d.ts +0 -2
  299. package/lib/types/IAirdropDistributor.sol/index.js +0 -2
  300. package/lib/types/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter.d.ts +0 -205
  301. package/lib/types/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter.js +0 -2
  302. package/lib/types/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapterEvents.d.ts +0 -43
  303. package/lib/types/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapterEvents.js +0 -2
  304. package/lib/types/IConvexV1BoosterAdapter.sol/index.d.ts +0 -2
  305. package/lib/types/IConvexV1BoosterAdapter.sol/index.js +0 -2
  306. package/lib/types/ICreditConfiguratorV2.sol/ICreditConfiguratorV2.d.ts +0 -641
  307. package/lib/types/ICreditConfiguratorV2.sol/ICreditConfiguratorV2.js +0 -2
  308. package/lib/types/ICreditConfiguratorV2.sol/ICreditConfiguratorV2Events.d.ts +0 -293
  309. package/lib/types/ICreditConfiguratorV2.sol/ICreditConfiguratorV2Events.js +0 -2
  310. package/lib/types/ICreditConfiguratorV2.sol/ICreditConfiguratorV2Exceptions.d.ts +0 -27
  311. package/lib/types/ICreditConfiguratorV2.sol/ICreditConfiguratorV2Exceptions.js +0 -2
  312. package/lib/types/ICreditConfiguratorV2.sol/index.d.ts +0 -3
  313. package/lib/types/ICreditConfiguratorV2.sol/index.js +0 -2
  314. package/lib/types/ICreditConfiguratorV3.sol/ICreditConfiguratorV3.d.ts +0 -716
  315. package/lib/types/ICreditConfiguratorV3.sol/ICreditConfiguratorV3.js +0 -2
  316. package/lib/types/ICreditConfiguratorV3.sol/ICreditConfiguratorV3Events.d.ts +0 -275
  317. package/lib/types/ICreditConfiguratorV3.sol/ICreditConfiguratorV3Events.js +0 -2
  318. package/lib/types/ICreditConfiguratorV3.sol/index.d.ts +0 -2
  319. package/lib/types/ICreditConfiguratorV3.sol/index.js +0 -2
  320. package/lib/types/ICreditFacadeV2.sol/ICreditFacadeV2.d.ts +0 -710
  321. package/lib/types/ICreditFacadeV2.sol/ICreditFacadeV2.js +0 -2
  322. package/lib/types/ICreditFacadeV2.sol/ICreditFacadeV2Events.d.ts +0 -244
  323. package/lib/types/ICreditFacadeV2.sol/ICreditFacadeV2Events.js +0 -2
  324. package/lib/types/ICreditFacadeV2.sol/ICreditFacadeV2Exceptions.d.ts +0 -27
  325. package/lib/types/ICreditFacadeV2.sol/ICreditFacadeV2Exceptions.js +0 -2
  326. package/lib/types/ICreditFacadeV2.sol/ICreditFacadeV2Extended.d.ts +0 -138
  327. package/lib/types/ICreditFacadeV2.sol/ICreditFacadeV2Extended.js +0 -2
  328. package/lib/types/ICreditFacadeV2.sol/ICreditFacadeV2V2.d.ts +0 -66
  329. package/lib/types/ICreditFacadeV2.sol/ICreditFacadeV2V2.js +0 -2
  330. package/lib/types/ICreditFacadeV2.sol/index.d.ts +0 -5
  331. package/lib/types/ICreditFacadeV2.sol/index.js +0 -2
  332. package/lib/types/ICreditFacadeV3.sol/ICreditFacadeV3.d.ts +0 -572
  333. package/lib/types/ICreditFacadeV3.sol/ICreditFacadeV3.js +0 -2
  334. package/lib/types/ICreditFacadeV3.sol/ICreditFacadeV3Events.d.ts +0 -168
  335. package/lib/types/ICreditFacadeV3.sol/ICreditFacadeV3Events.js +0 -2
  336. package/lib/types/ICreditFacadeV3.sol/index.d.ts +0 -2
  337. package/lib/types/ICreditFacadeV3.sol/index.js +0 -2
  338. package/lib/types/ICreditManagerV2.sol/ICreditManagerV2.d.ts +0 -639
  339. package/lib/types/ICreditManagerV2.sol/ICreditManagerV2.js +0 -2
  340. package/lib/types/ICreditManagerV2.sol/ICreditManagerV2Events.d.ts +0 -54
  341. package/lib/types/ICreditManagerV2.sol/ICreditManagerV2Events.js +0 -2
  342. package/lib/types/ICreditManagerV2.sol/ICreditManagerV2Exceptions.d.ts +0 -27
  343. package/lib/types/ICreditManagerV2.sol/ICreditManagerV2Exceptions.js +0 -2
  344. package/lib/types/ICreditManagerV2.sol/index.d.ts +0 -3
  345. package/lib/types/ICreditManagerV2.sol/index.js +0 -2
  346. package/lib/types/ICreditManagerV3.sol/ICreditManagerV3.d.ts +0 -947
  347. package/lib/types/ICreditManagerV3.sol/ICreditManagerV3.js +0 -2
  348. package/lib/types/ICreditManagerV3.sol/ICreditManagerV3Events.d.ts +0 -41
  349. package/lib/types/ICreditManagerV3.sol/ICreditManagerV3Events.js +0 -2
  350. package/lib/types/ICreditManagerV3.sol/index.d.ts +0 -2
  351. package/lib/types/ICreditManagerV3.sol/index.js +0 -2
  352. package/lib/types/ICurvePool_2.sol/ICurvePool2Assets.d.ts +0 -590
  353. package/lib/types/ICurvePool_2.sol/ICurvePool2Assets.js +0 -2
  354. package/lib/types/ICurvePool_2.sol/index.d.ts +0 -1
  355. package/lib/types/ICurvePool_2.sol/index.js +0 -2
  356. package/lib/types/ICurvePool_3.sol/ICurvePool3Assets.d.ts +0 -686
  357. package/lib/types/ICurvePool_3.sol/ICurvePool3Assets.js +0 -2
  358. package/lib/types/ICurvePool_3.sol/index.d.ts +0 -1
  359. package/lib/types/ICurvePool_3.sol/index.js +0 -2
  360. package/lib/types/ICurvePool_4.sol/ICurvePool4Assets.d.ts +0 -722
  361. package/lib/types/ICurvePool_4.sol/ICurvePool4Assets.js +0 -2
  362. package/lib/types/ICurvePool_4.sol/index.d.ts +0 -1
  363. package/lib/types/ICurvePool_4.sol/index.js +0 -2
  364. package/lib/types/ICurveV1Adapter.d.ts +0 -614
  365. package/lib/types/ICurveV1Adapter.js +0 -2
  366. package/lib/types/IDaiLikePermit.d.ts +0 -59
  367. package/lib/types/IDaiLikePermit.js +0 -2
  368. package/lib/types/IDataCompressorV2_10.d.ts +0 -511
  369. package/lib/types/IDataCompressorV2_10.js +0 -2
  370. package/lib/types/IDataCompressorV3_00.d.ts +0 -533
  371. package/lib/types/IDataCompressorV3_00.js +0 -2
  372. package/lib/types/IDegenDistributor.sol/IDegenDistributor.d.ts +0 -96
  373. package/lib/types/IDegenDistributor.sol/IDegenDistributor.js +0 -2
  374. package/lib/types/IDegenDistributor.sol/IDegenDistributorEvents.d.ts +0 -53
  375. package/lib/types/IDegenDistributor.sol/IDegenDistributorEvents.js +0 -2
  376. package/lib/types/IDegenDistributor.sol/index.d.ts +0 -2
  377. package/lib/types/IDegenDistributor.sol/index.js +0 -2
  378. package/lib/types/IERC20Metadata.d.ts +0 -166
  379. package/lib/types/IERC20Metadata.js +0 -2
  380. package/lib/types/IERC4626.d.ts +0 -394
  381. package/lib/types/IERC4626.js +0 -2
  382. package/lib/types/IPermit2.d.ts +0 -130
  383. package/lib/types/IPermit2.js +0 -2
  384. package/lib/types/IPoolService.sol/IPoolService.d.ts +0 -392
  385. package/lib/types/IPoolService.sol/IPoolService.js +0 -2
  386. package/lib/types/IPoolService.sol/IPoolServiceEvents.d.ts +0 -162
  387. package/lib/types/IPoolService.sol/IPoolServiceEvents.js +0 -2
  388. package/lib/types/IPoolService.sol/index.d.ts +0 -2
  389. package/lib/types/IPoolService.sol/index.js +0 -2
  390. package/lib/types/IPoolV3.sol/IPoolV3.d.ts +0 -936
  391. package/lib/types/IPoolV3.sol/IPoolV3.js +0 -2
  392. package/lib/types/IPoolV3.sol/IPoolV3Events.d.ts +0 -158
  393. package/lib/types/IPoolV3.sol/IPoolV3Events.js +0 -2
  394. package/lib/types/IPoolV3.sol/index.d.ts +0 -2
  395. package/lib/types/IPoolV3.sol/index.js +0 -2
  396. package/lib/types/IRouter.d.ts +0 -268
  397. package/lib/types/IRouter.js +0 -2
  398. package/lib/types/IUniswapV2Adapter.sol/IUniswapV2Adapter.d.ts +0 -207
  399. package/lib/types/IUniswapV2Adapter.sol/IUniswapV2Adapter.js +0 -2
  400. package/lib/types/IUniswapV2Adapter.sol/IUniswapV2AdapterEvents.d.ts +0 -45
  401. package/lib/types/IUniswapV2Adapter.sol/IUniswapV2AdapterEvents.js +0 -2
  402. package/lib/types/IUniswapV2Adapter.sol/IUniswapV2AdapterExceptions.d.ts +0 -27
  403. package/lib/types/IUniswapV2Adapter.sol/IUniswapV2AdapterExceptions.js +0 -2
  404. package/lib/types/IUniswapV2Adapter.sol/index.d.ts +0 -3
  405. package/lib/types/IUniswapV2Adapter.sol/index.js +0 -2
  406. package/lib/types/IUniswapV3.sol/ISwapRouter.d.ts +0 -198
  407. package/lib/types/IUniswapV3.sol/ISwapRouter.js +0 -2
  408. package/lib/types/IUniswapV3.sol/index.d.ts +0 -1
  409. package/lib/types/IUniswapV3.sol/index.js +0 -2
  410. package/lib/types/IUniswapV3Adapter.sol/IUniswapV3Adapter.d.ts +0 -409
  411. package/lib/types/IUniswapV3Adapter.sol/IUniswapV3Adapter.js +0 -2
  412. package/lib/types/IUniswapV3Adapter.sol/IUniswapV3AdapterEvents.d.ts +0 -47
  413. package/lib/types/IUniswapV3Adapter.sol/IUniswapV3AdapterEvents.js +0 -2
  414. package/lib/types/IUniswapV3Adapter.sol/IUniswapV3AdapterExceptions.d.ts +0 -27
  415. package/lib/types/IUniswapV3Adapter.sol/IUniswapV3AdapterExceptions.js +0 -2
  416. package/lib/types/IUniswapV3Adapter.sol/index.d.ts +0 -3
  417. package/lib/types/IUniswapV3Adapter.sol/index.js +0 -2
  418. package/lib/types/IVersion.d.ts +0 -42
  419. package/lib/types/IVersion.js +0 -2
  420. package/lib/types/IWERC20Zapper.d.ts +0 -166
  421. package/lib/types/IWERC20Zapper.js +0 -2
  422. package/lib/types/IWETH.d.ts +0 -197
  423. package/lib/types/IWETH.js +0 -2
  424. package/lib/types/IWETHGateway.d.ts +0 -90
  425. package/lib/types/IWETHGateway.js +0 -2
  426. package/lib/types/IWETHZapper.d.ts +0 -162
  427. package/lib/types/IWETHZapper.js +0 -2
  428. package/lib/types/IWithdrawalManagerV3.sol/IWithdrawalManagerV3.d.ts +0 -370
  429. package/lib/types/IWithdrawalManagerV3.sol/IWithdrawalManagerV3.js +0 -2
  430. package/lib/types/IWithdrawalManagerV3.sol/IWithdrawalManagerV3Events.d.ts +0 -133
  431. package/lib/types/IWithdrawalManagerV3.sol/IWithdrawalManagerV3Events.js +0 -2
  432. package/lib/types/IWithdrawalManagerV3.sol/index.d.ts +0 -2
  433. package/lib/types/IWithdrawalManagerV3.sol/index.js +0 -2
  434. package/lib/types/IYVault.d.ts +0 -298
  435. package/lib/types/IYVault.js +0 -2
  436. package/lib/types/IstETH.sol/IstETH.d.ts +0 -230
  437. package/lib/types/IstETH.sol/IstETH.js +0 -2
  438. package/lib/types/IstETH.sol/IstETHGetters.d.ts +0 -214
  439. package/lib/types/IstETH.sol/IstETHGetters.js +0 -2
  440. package/lib/types/IstETH.sol/index.d.ts +0 -2
  441. package/lib/types/IstETH.sol/index.js +0 -2
  442. package/lib/types/IwstETH.sol/IwstETH.d.ts +0 -238
  443. package/lib/types/IwstETH.sol/IwstETH.js +0 -2
  444. package/lib/types/IwstETH.sol/IwstETHGetters.d.ts +0 -206
  445. package/lib/types/IwstETH.sol/IwstETHGetters.js +0 -2
  446. package/lib/types/IwstETH.sol/index.d.ts +0 -2
  447. package/lib/types/IwstETH.sol/index.js +0 -2
  448. package/lib/types/IwstETHGateway.sol/IwstETHGateWay.d.ts +0 -70
  449. package/lib/types/IwstETHGateway.sol/IwstETHGateWay.js +0 -2
  450. package/lib/types/IwstETHGateway.sol/index.d.ts +0 -1
  451. package/lib/types/IwstETHGateway.sol/index.js +0 -2
  452. package/lib/types/Ownable.d.ts +0 -89
  453. package/lib/types/Ownable.js +0 -2
  454. package/lib/types/SafeERC20.d.ts +0 -27
  455. package/lib/types/SafeERC20.js +0 -2
  456. package/lib/types/common.d.ts +0 -22
  457. package/lib/types/common.js +0 -2
  458. package/lib/types/factories/AddressProvider__factory.d.ts +0 -321
  459. package/lib/types/factories/AddressProvider__factory.js +0 -430
  460. package/lib/types/factories/Balances.sol/BalanceOps__factory.d.ts +0 -29
  461. package/lib/types/factories/Balances.sol/BalanceOps__factory.js +0 -53
  462. package/lib/types/factories/Balances.sol/index.d.ts +0 -1
  463. package/lib/types/factories/Balances.sol/index.js +0 -8
  464. package/lib/types/factories/Claimable__factory.d.ts +0 -78
  465. package/lib/types/factories/Claimable__factory.js +0 -114
  466. package/lib/types/factories/Errors__factory.d.ts +0 -351
  467. package/lib/types/factories/Errors__factory.js +0 -471
  468. package/lib/types/factories/IAdapter__factory.d.ts +0 -58
  469. package/lib/types/factories/IAdapter__factory.js +0 -84
  470. package/lib/types/factories/IAddressProvider.sol/IAddressProviderEvents__factory.d.ts +0 -23
  471. package/lib/types/factories/IAddressProvider.sol/IAddressProviderEvents__factory.js +0 -38
  472. package/lib/types/factories/IAddressProvider.sol/IAddressProvider__factory.d.ts +0 -133
  473. package/lib/types/factories/IAddressProvider.sol/IAddressProvider__factory.js +0 -181
  474. package/lib/types/factories/IAddressProvider.sol/index.d.ts +0 -2
  475. package/lib/types/factories/IAddressProvider.sol/index.js +0 -10
  476. package/lib/types/factories/IAddressProviderV3.sol/IAddressProviderV3Events__factory.d.ts +0 -28
  477. package/lib/types/factories/IAddressProviderV3.sol/IAddressProviderV3Events__factory.js +0 -44
  478. package/lib/types/factories/IAddressProviderV3.sol/IAddressProviderV3__factory.d.ts +0 -92
  479. package/lib/types/factories/IAddressProviderV3.sol/IAddressProviderV3__factory.js +0 -128
  480. package/lib/types/factories/IAddressProviderV3.sol/index.d.ts +0 -2
  481. package/lib/types/factories/IAddressProviderV3.sol/index.js +0 -10
  482. package/lib/types/factories/IAirdropDistributor.sol/IAirdropDistributorEvents__factory.d.ts +0 -63
  483. package/lib/types/factories/IAirdropDistributor.sol/IAirdropDistributorEvents__factory.js +0 -88
  484. package/lib/types/factories/IAirdropDistributor.sol/IAirdropDistributor__factory.d.ts +0 -119
  485. package/lib/types/factories/IAirdropDistributor.sol/index.d.ts +0 -2
  486. package/lib/types/factories/IAirdropDistributor.sol/index.js +0 -10
  487. package/lib/types/factories/IBaseRewardPool__factory.d.ts +0 -398
  488. package/lib/types/factories/IBaseRewardPool__factory.js +0 -534
  489. package/lib/types/factories/IConvexToken__factory.d.ts +0 -198
  490. package/lib/types/factories/IConvexToken__factory.js +0 -267
  491. package/lib/types/factories/IConvexV1BaseRewardPoolAdapter__factory.d.ts +0 -254
  492. package/lib/types/factories/IConvexV1BaseRewardPoolAdapter__factory.js +0 -341
  493. package/lib/types/factories/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapterEvents__factory.d.ts +0 -23
  494. package/lib/types/factories/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapterEvents__factory.js +0 -38
  495. package/lib/types/factories/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter__factory.d.ts +0 -181
  496. package/lib/types/factories/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter__factory.js +0 -245
  497. package/lib/types/factories/IConvexV1BoosterAdapter.sol/index.d.ts +0 -2
  498. package/lib/types/factories/IConvexV1BoosterAdapter.sol/index.js +0 -10
  499. package/lib/types/factories/ICreditConfiguratorV2.sol/ICreditConfiguratorV2Events__factory.d.ts +0 -268
  500. package/lib/types/factories/ICreditConfiguratorV2.sol/ICreditConfiguratorV2Events__factory.js +0 -353
  501. package/lib/types/factories/ICreditConfiguratorV2.sol/ICreditConfiguratorV2Exceptions__factory.d.ts +0 -44
  502. package/lib/types/factories/ICreditConfiguratorV2.sol/ICreditConfiguratorV2Exceptions__factory.js +0 -64
  503. package/lib/types/factories/ICreditConfiguratorV2.sol/ICreditConfiguratorV2__factory.d.ts +0 -576
  504. package/lib/types/factories/ICreditConfiguratorV2.sol/ICreditConfiguratorV2__factory.js +0 -749
  505. package/lib/types/factories/ICreditConfiguratorV2.sol/index.d.ts +0 -3
  506. package/lib/types/factories/ICreditConfiguratorV2.sol/index.js +0 -12
  507. package/lib/types/factories/ICreditConfiguratorV3.sol/ICreditConfiguratorV3Events__factory.d.ts +0 -273
  508. package/lib/types/factories/ICreditConfiguratorV3.sol/ICreditConfiguratorV3Events__factory.js +0 -357
  509. package/lib/types/factories/ICreditConfiguratorV3.sol/ICreditConfiguratorV3__factory.d.ts +0 -605
  510. package/lib/types/factories/ICreditConfiguratorV3.sol/index.d.ts +0 -2
  511. package/lib/types/factories/ICreditConfiguratorV3.sol/index.js +0 -10
  512. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2Events__factory.d.ts +0 -263
  513. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2Events__factory.js +0 -340
  514. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2Exceptions__factory.d.ts +0 -140
  515. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2Exceptions__factory.js +0 -185
  516. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2Extended__factory.d.ts +0 -81
  517. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2Extended__factory.js +0 -114
  518. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2V2__factory.d.ts +0 -26
  519. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2V2__factory.js +0 -42
  520. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2__factory.d.ts +0 -901
  521. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2__factory.js +0 -1163
  522. package/lib/types/factories/ICreditFacadeV2.sol/index.d.ts +0 -5
  523. package/lib/types/factories/ICreditFacadeV2.sol/index.js +0 -16
  524. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3Events__factory.d.ts +0 -188
  525. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3Events__factory.js +0 -244
  526. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3__factory.d.ts +0 -617
  527. package/lib/types/factories/ICreditFacadeV3.sol/index.d.ts +0 -2
  528. package/lib/types/factories/ICreditFacadeV3.sol/index.js +0 -10
  529. package/lib/types/factories/ICreditFacadeV3Multicall__factory.d.ts +0 -200
  530. package/lib/types/factories/ICreditFacadeV3Multicall__factory.js +0 -267
  531. package/lib/types/factories/ICreditManagerV2.sol/ICreditManagerV2Events__factory.d.ts +0 -33
  532. package/lib/types/factories/ICreditManagerV2.sol/ICreditManagerV2Events__factory.js +0 -51
  533. package/lib/types/factories/ICreditManagerV2.sol/ICreditManagerV2Exceptions__factory.d.ts +0 -60
  534. package/lib/types/factories/ICreditManagerV2.sol/ICreditManagerV2Exceptions__factory.js +0 -84
  535. package/lib/types/factories/ICreditManagerV2.sol/ICreditManagerV2__factory.d.ts +0 -707
  536. package/lib/types/factories/ICreditManagerV2.sol/ICreditManagerV2__factory.js +0 -932
  537. package/lib/types/factories/ICreditManagerV2.sol/index.d.ts +0 -3
  538. package/lib/types/factories/ICreditManagerV2.sol/index.js +0 -12
  539. package/lib/types/factories/ICreditManagerV3.sol/ICreditManagerV3Events__factory.d.ts +0 -18
  540. package/lib/types/factories/ICreditManagerV3.sol/ICreditManagerV3Events__factory.js +0 -32
  541. package/lib/types/factories/ICreditManagerV3.sol/ICreditManagerV3__factory.d.ts +0 -1015
  542. package/lib/types/factories/ICreditManagerV3.sol/ICreditManagerV3__factory.js +0 -1331
  543. package/lib/types/factories/ICreditManagerV3.sol/index.d.ts +0 -2
  544. package/lib/types/factories/ICreditManagerV3.sol/index.js +0 -10
  545. package/lib/types/factories/ICurvePool_2.sol/ICurvePool2Assets__factory.d.ts +0 -678
  546. package/lib/types/factories/ICurvePool_2.sol/ICurvePool2Assets__factory.js +0 -897
  547. package/lib/types/factories/ICurvePool_2.sol/index.d.ts +0 -1
  548. package/lib/types/factories/ICurvePool_2.sol/index.js +0 -8
  549. package/lib/types/factories/ICurvePool_3.sol/ICurvePool3Assets__factory.d.ts +0 -678
  550. package/lib/types/factories/ICurvePool_3.sol/ICurvePool3Assets__factory.js +0 -897
  551. package/lib/types/factories/ICurvePool_3.sol/index.d.ts +0 -1
  552. package/lib/types/factories/ICurvePool_3.sol/index.js +0 -8
  553. package/lib/types/factories/ICurvePool_4.sol/ICurvePool4Assets__factory.d.ts +0 -678
  554. package/lib/types/factories/ICurvePool_4.sol/ICurvePool4Assets__factory.js +0 -897
  555. package/lib/types/factories/ICurvePool_4.sol/index.d.ts +0 -1
  556. package/lib/types/factories/ICurvePool_4.sol/index.js +0 -8
  557. package/lib/types/factories/ICurvePool__factory.d.ts +0 -566
  558. package/lib/types/factories/ICurvePool__factory.js +0 -751
  559. package/lib/types/factories/ICurveV1Adapter__factory.d.ts +0 -664
  560. package/lib/types/factories/ICurveV1Adapter__factory.js +0 -875
  561. package/lib/types/factories/ICurveV1_2AssetsAdapter__factory.d.ts +0 -730
  562. package/lib/types/factories/ICurveV1_2AssetsAdapter__factory.js +0 -962
  563. package/lib/types/factories/ICurveV1_3AssetsAdapter__factory.d.ts +0 -730
  564. package/lib/types/factories/ICurveV1_3AssetsAdapter__factory.js +0 -962
  565. package/lib/types/factories/ICurveV1_4AssetsAdapter__factory.d.ts +0 -730
  566. package/lib/types/factories/ICurveV1_4AssetsAdapter__factory.js +0 -962
  567. package/lib/types/factories/IDaiLikePermit__factory.d.ts +0 -46
  568. package/lib/types/factories/IDaiLikePermit__factory.js +0 -67
  569. package/lib/types/factories/IDataCompressorV2_10__factory.d.ts +0 -1222
  570. package/lib/types/factories/IDataCompressorV2_10__factory.js +0 -1565
  571. package/lib/types/factories/IDataCompressorV3_00__factory.d.ts +0 -1398
  572. package/lib/types/factories/IDataCompressorV3_00__factory.js +0 -1788
  573. package/lib/types/factories/IDegenDistributor.sol/IDegenDistributorEvents__factory.d.ts +0 -38
  574. package/lib/types/factories/IDegenDistributor.sol/IDegenDistributorEvents__factory.js +0 -57
  575. package/lib/types/factories/IDegenDistributor.sol/IDegenDistributor__factory.d.ts +0 -84
  576. package/lib/types/factories/IDegenDistributor.sol/IDegenDistributor__factory.js +0 -117
  577. package/lib/types/factories/IDegenDistributor.sol/index.d.ts +0 -2
  578. package/lib/types/factories/IDegenDistributor.sol/index.js +0 -10
  579. package/lib/types/factories/IERC20Metadata__factory.d.ts +0 -178
  580. package/lib/types/factories/IERC20Metadata__factory.js +0 -241
  581. package/lib/types/factories/IERC20Permit__factory.d.ts +0 -66
  582. package/lib/types/factories/IERC20Permit__factory.js +0 -94
  583. package/lib/types/factories/IERC20__factory.d.ts +0 -148
  584. package/lib/types/factories/IERC20__factory.js +0 -202
  585. package/lib/types/factories/IERC4626__factory.d.ts +0 -473
  586. package/lib/types/factories/IERC4626__factory.js +0 -631
  587. package/lib/types/factories/IInterestRateModel__factory.d.ts +0 -36
  588. package/lib/types/factories/IInterestRateModel__factory.js +0 -56
  589. package/lib/types/factories/ILidoV1Adapter__factory.d.ts +0 -140
  590. package/lib/types/factories/ILidoV1Adapter__factory.js +0 -191
  591. package/lib/types/factories/IOffchainOracle__factory.d.ts +0 -48
  592. package/lib/types/factories/IOffchainOracle__factory.js +0 -72
  593. package/lib/types/factories/IPermit2__factory.d.ts +0 -113
  594. package/lib/types/factories/IPermit2__factory.js +0 -155
  595. package/lib/types/factories/IPoolService.sol/IPoolServiceEvents__factory.d.ts +0 -163
  596. package/lib/types/factories/IPoolService.sol/IPoolServiceEvents__factory.js +0 -215
  597. package/lib/types/factories/IPoolService.sol/IPoolService__factory.d.ts +0 -437
  598. package/lib/types/factories/IPoolService.sol/IPoolService__factory.js +0 -574
  599. package/lib/types/factories/IPoolService.sol/index.d.ts +0 -2
  600. package/lib/types/factories/IPoolService.sol/index.js +0 -10
  601. package/lib/types/factories/IPoolV3.sol/IPoolV3Events__factory.d.ts +0 -153
  602. package/lib/types/factories/IPoolV3.sol/IPoolV3Events__factory.js +0 -203
  603. package/lib/types/factories/IPoolV3.sol/IPoolV3__factory.d.ts +0 -1068
  604. package/lib/types/factories/IPoolV3.sol/IPoolV3__factory.js +0 -1402
  605. package/lib/types/factories/IPoolV3.sol/index.d.ts +0 -2
  606. package/lib/types/factories/IPoolV3.sol/index.js +0 -10
  607. package/lib/types/factories/IPriceOracleBase__factory.d.ts +0 -104
  608. package/lib/types/factories/IPriceOracleBase__factory.js +0 -147
  609. package/lib/types/factories/IRouter__factory.d.ts +0 -382
  610. package/lib/types/factories/IRouter__factory.js +0 -507
  611. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2AdapterEvents__factory.d.ts +0 -28
  612. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2AdapterEvents__factory.js +0 -44
  613. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2AdapterExceptions__factory.d.ts +0 -12
  614. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2AdapterExceptions__factory.js +0 -24
  615. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2Adapter__factory.d.ts +0 -217
  616. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2Adapter__factory.js +0 -290
  617. package/lib/types/factories/IUniswapV2Adapter.sol/index.d.ts +0 -3
  618. package/lib/types/factories/IUniswapV2Adapter.sol/index.js +0 -12
  619. package/lib/types/factories/IUniswapV3.sol/ISwapRouter__factory.d.ts +0 -172
  620. package/lib/types/factories/IUniswapV3.sol/ISwapRouter__factory.js +0 -233
  621. package/lib/types/factories/IUniswapV3.sol/index.d.ts +0 -1
  622. package/lib/types/factories/IUniswapV3.sol/index.js +0 -8
  623. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3AdapterEvents__factory.d.ts +0 -33
  624. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3AdapterEvents__factory.js +0 -50
  625. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3AdapterExceptions__factory.d.ts +0 -12
  626. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3AdapterExceptions__factory.js +0 -24
  627. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3Adapter__factory.d.ts +0 -390
  628. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3Adapter__factory.js +0 -515
  629. package/lib/types/factories/IUniswapV3Adapter.sol/index.d.ts +0 -3
  630. package/lib/types/factories/IUniswapV3Adapter.sol/index.js +0 -12
  631. package/lib/types/factories/IVersion__factory.d.ts +0 -18
  632. package/lib/types/factories/IVersion__factory.js +0 -32
  633. package/lib/types/factories/IWERC20Zapper__factory.d.ts +0 -176
  634. package/lib/types/factories/IWERC20Zapper__factory.js +0 -240
  635. package/lib/types/factories/IWETHGateway__factory.d.ts +0 -58
  636. package/lib/types/factories/IWETHGateway__factory.js +0 -83
  637. package/lib/types/factories/IWETHZapper__factory.d.ts +0 -168
  638. package/lib/types/factories/IWETHZapper__factory.js +0 -230
  639. package/lib/types/factories/IWETH__factory.d.ts +0 -194
  640. package/lib/types/factories/IWETH__factory.js +0 -260
  641. package/lib/types/factories/IWithdrawalManagerV3.sol/IWithdrawalManagerV3Events__factory.d.ts +0 -143
  642. package/lib/types/factories/IWithdrawalManagerV3.sol/IWithdrawalManagerV3Events__factory.js +0 -188
  643. package/lib/types/factories/IWithdrawalManagerV3.sol/IWithdrawalManagerV3__factory.d.ts +0 -366
  644. package/lib/types/factories/IWithdrawalManagerV3.sol/IWithdrawalManagerV3__factory.js +0 -479
  645. package/lib/types/factories/IWithdrawalManagerV3.sol/index.d.ts +0 -2
  646. package/lib/types/factories/IWithdrawalManagerV3.sol/index.js +0 -10
  647. package/lib/types/factories/IYVault__factory.d.ts +0 -304
  648. package/lib/types/factories/IYVault__factory.js +0 -408
  649. package/lib/types/factories/IYearnV2Adapter__factory.d.ts +0 -222
  650. package/lib/types/factories/IYearnV2Adapter__factory.js +0 -299
  651. package/lib/types/factories/IZapper__factory.d.ts +0 -136
  652. package/lib/types/factories/IZapper__factory.js +0 -187
  653. package/lib/types/factories/IstETH.sol/IstETHGetters__factory.d.ts +0 -250
  654. package/lib/types/factories/IstETH.sol/IstETHGetters__factory.js +0 -337
  655. package/lib/types/factories/IstETH.sol/IstETH__factory.d.ts +0 -264
  656. package/lib/types/factories/IstETH.sol/IstETH__factory.js +0 -356
  657. package/lib/types/factories/IstETH.sol/index.d.ts +0 -2
  658. package/lib/types/factories/IstETH.sol/index.js +0 -10
  659. package/lib/types/factories/IwstETH.sol/IwstETHGetters__factory.d.ts +0 -236
  660. package/lib/types/factories/IwstETH.sol/IwstETHGetters__factory.js +0 -318
  661. package/lib/types/factories/IwstETH.sol/IwstETH__factory.d.ts +0 -264
  662. package/lib/types/factories/IwstETH.sol/IwstETH__factory.js +0 -356
  663. package/lib/types/factories/IwstETH.sol/index.d.ts +0 -2
  664. package/lib/types/factories/IwstETH.sol/index.js +0 -10
  665. package/lib/types/factories/IwstETHGateway.sol/IwstETHGateWay__factory.d.ts +0 -48
  666. package/lib/types/factories/IwstETHGateway.sol/IwstETHGateWay__factory.js +0 -71
  667. package/lib/types/factories/IwstETHGateway.sol/index.d.ts +0 -1
  668. package/lib/types/factories/IwstETHGateway.sol/index.js +0 -8
  669. package/lib/types/factories/IwstETHV1Adapter__factory.d.ts +0 -152
  670. package/lib/types/factories/IwstETHV1Adapter__factory.js +0 -207
  671. package/lib/types/factories/Ownable__factory.d.ts +0 -49
  672. package/lib/types/factories/Ownable__factory.js +0 -71
  673. package/lib/types/factories/SafeERC20__factory.d.ts +0 -49
  674. package/lib/types/factories/SafeERC20__factory.js +0 -77
  675. package/lib/types/factories/index.d.ts +0 -61
  676. package/lib/types/factories/index.js +0 -128
  677. package/lib/utils/repeater.d.ts +0 -1
  678. package/lib/utils/repeater.js +0 -19
  679. package/lib/watchers/creditAccountWatcher.d.ts +0 -36
  680. package/lib/watchers/creditAccountWatcher.js +0 -238
  681. package/lib/watchers/creditAccountWatcher.spec.d.ts +0 -1
  682. package/lib/watchers/creditAccountWatcher.spec.js +0 -208
  683. package/lib/watchers/creditManagerWatcher.d.ts +0 -8
  684. package/lib/watchers/creditManagerWatcher.js +0 -37
  685. package/lib/watchers/creditManagerWatcher.spec.d.ts +0 -1
  686. package/lib/watchers/creditManagerWatcher.spec.js +0 -107
  687. /package/lib/core/{strategy.spec.d.ts → gaugeMath.spec.d.ts} +0 -0
  688. /package/lib/{core/errors.js → payload/bot.js} +0 -0
  689. /package/lib/{types/AddressProvider.js → payload/gauge.js} +0 -0
@@ -2,151 +2,172 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PathFinder = void 0;
4
4
  const sdk_gov_1 = require("@gearbox-protocol/sdk-gov");
5
- const ethers_1 = require("ethers");
5
+ const viem_1 = require("viem");
6
6
  const types_1 = require("../types");
7
7
  const pathOptions_1 = require("./pathOptions");
8
- const MAX_GAS_PER_ROUTE = 200e6;
9
- const GAS_PER_BLOCK = 400e6;
8
+ const MAX_GAS_PER_ROUTE = 200000000n;
9
+ const GAS_PER_BLOCK = 400000000n;
10
10
  class PathFinder {
11
11
  pathFinder;
12
12
  network;
13
- static connectors = [
14
- "USDC",
15
- "WETH",
16
- "DAI",
17
- "FRAX",
18
- ];
19
13
  _connectors;
20
- constructor(address, provider, network = "Mainnet", connectors = PathFinder.connectors) {
21
- this.pathFinder = types_1.IRouter__factory.connect(address, provider);
14
+ constructor(address, provider, network = "Mainnet") {
15
+ this.pathFinder = (0, viem_1.getContract)({
16
+ address,
17
+ abi: types_1.iRouterV3Abi,
18
+ client: provider,
19
+ });
22
20
  this.network = network;
23
- this._connectors = connectors
24
- .map(c => sdk_gov_1.tokenDataByNetwork[this.network][c]?.toLowerCase())
25
- .filter(t => !!t);
21
+ this._connectors = (0, sdk_gov_1.getConnectors)(network);
26
22
  }
27
- async findAllSwaps(creditAccount, swapOperation, tokenIn, tokenOut, amount, slippage) {
23
+ async findAllSwaps({ creditAccount, swapOperation, tokenIn, tokenOut, amount, leftoverAmount, slippage, }) {
28
24
  const connectors = this.getAvailableConnectors(creditAccount.balances);
29
25
  const swapTask = {
30
26
  swapOperation: swapOperation,
31
27
  creditAccount: creditAccount.addr,
32
- tokenIn: sdk_gov_1.tokenDataByNetwork[this.network][tokenIn] || tokenIn,
33
- tokenOut: sdk_gov_1.tokenDataByNetwork[this.network][tokenOut] ||
34
- tokenOut,
28
+ tokenIn,
29
+ tokenOut,
35
30
  connectors,
36
- amount: ethers_1.BigNumber.from(amount),
37
- slippage: ethers_1.BigNumber.from(slippage),
38
- externalSlippage: false,
31
+ amount,
32
+ leftoverAmount,
39
33
  };
40
- const results = await this.pathFinder.callStatic.findAllSwaps(swapTask, {
41
- gasLimit: GAS_PER_BLOCK,
34
+ const { result: results } = await this.pathFinder.simulate.findAllSwaps([swapTask, BigInt(slippage)], {
35
+ gas: GAS_PER_BLOCK,
42
36
  });
43
37
  const unique = {};
44
38
  results.forEach(r => {
45
- const key = `${r.amount.toHexString()}${r.calls
39
+ const key = `${r.minAmount.toString()}${r.calls
46
40
  .map(c => `${c.target.toLowerCase()}${c.callData}`)
47
41
  .join("-")}`;
48
42
  unique[key] = {
49
- amount: (0, sdk_gov_1.toBigInt)(r.amount),
43
+ amount: r.amount,
44
+ minAmount: r.minAmount,
50
45
  calls: r.calls,
51
46
  };
52
47
  });
53
48
  return Object.values(unique);
54
49
  }
55
- async findOneTokenPath(creditAccount, tokenIn, tokenOut, amount, slippage) {
56
- const tokenInAddr = sdk_gov_1.tokenDataByNetwork[this.network][tokenIn] || tokenIn;
50
+ async findOneTokenPath({ creditAccount, tokenIn, tokenOut, amount, slippage, }) {
57
51
  const connectors = this.getAvailableConnectors(creditAccount.balances);
58
- const result = await this.pathFinder.callStatic.findOneTokenPath(tokenInAddr, amount, sdk_gov_1.tokenDataByNetwork[this.network][tokenOut] || tokenOut, creditAccount.addr, connectors, slippage, {
59
- gasLimit: GAS_PER_BLOCK,
52
+ const { result } = await this.pathFinder.simulate.findOneTokenPath([
53
+ tokenIn,
54
+ amount,
55
+ tokenOut,
56
+ creditAccount.addr,
57
+ connectors,
58
+ BigInt(slippage),
59
+ ], {
60
+ gas: GAS_PER_BLOCK,
60
61
  });
61
62
  return {
62
- amount: (0, sdk_gov_1.toBigInt)(result.amount),
63
+ amount: result.amount,
64
+ minAmount: result.minAmount,
63
65
  calls: result.calls,
64
66
  };
65
67
  }
66
68
  /**
67
- * @dev Finds the best path for opening credit account and converting all NORMAL tokens and LP token in the way to TARGET
68
- * @param cm CreditManagerData which represents credit manager you want to use to open credit account
69
+ * @dev Finds the best path for opening Credit Account and converting all NORMAL tokens and LP token in the way to TARGET
70
+ * @param cm CreditManagerData which represents credit manager you want to use to open Credit Account
69
71
  * @param expectedBalances Expected balances which would be on account accounting also debt. For example,
70
- * if you open an USDC credit account, borrow 50_000 USDC and provide 10 WETH and 10_USDC as collateral
72
+ * if you open an USDC Credit Account, borrow 50_000 USDC and provide 10 WETH and 10_USDC as collateral
71
73
  * from your own funds, expectedBalances should be: { "USDC": 60_000 * (10**6), "<address of WETH>": WAD.mul(10) }
72
74
  *
73
75
  * @param target Address of symbol of desired token
74
76
  * @param slippage Slippage in PERCENTAGE_FORMAT (100% = 10_000) per operation
75
77
  * @returns PathFinderOpenStrategyResult which
76
78
  */
77
- async findOpenStrategyPath(cm, expectedBalances, target, slippage) {
78
- const targetAddr = sdk_gov_1.tokenDataByNetwork[this.network][target] || target;
79
- const expectedBalancesAddr = Object.entries(expectedBalances).reduce((acc, [token, balance]) => {
80
- const tokenAddr = sdk_gov_1.tokenDataByNetwork[this.network][token] || token;
81
- acc[tokenAddr.toLowerCase()] = balance;
82
- return acc;
83
- }, {});
84
- const balances = cm.collateralTokens.map(token => ({
79
+ async findOpenStrategyPath({ creditManager: cm, expectedBalances, leftoverBalances, target: targetUntyped, slippage, }) {
80
+ const target = targetUntyped;
81
+ const input = cm.collateralTokens.map(token => ({
82
+ token,
83
+ balance: expectedBalances[token]?.balance || 0n,
84
+ }));
85
+ const leftover = cm.collateralTokens.map(token => ({
85
86
  token,
86
- balance: expectedBalancesAddr[token] || 0,
87
+ balance: leftoverBalances[token]?.balance || 1n,
87
88
  }));
88
89
  const connectors = this.getAvailableConnectors(cm.supportedTokens);
89
- const result = await this.pathFinder.callStatic.findOpenStrategyPath(cm.address, balances, targetAddr, connectors, slippage, {
90
- gasLimit: GAS_PER_BLOCK,
90
+ const { result: [outBalances, result], } = await this.pathFinder.simulate.findOpenStrategyPath([cm.address, input, leftover, target, connectors, BigInt(slippage)], {
91
+ gas: GAS_PER_BLOCK,
91
92
  });
92
- const balancesAfter = result[0].reduce((acc, b) => {
93
- acc[b.token.toLowerCase()] = (0, sdk_gov_1.toBigInt)(b.balance);
93
+ const balancesAfter = outBalances.reduce((acc, b) => {
94
+ acc[b.token.toLowerCase()] = b.balance;
94
95
  return acc;
95
96
  }, {});
96
97
  return {
97
- balances: balancesAfter,
98
- calls: result[1].calls,
98
+ balances: {
99
+ ...balancesAfter,
100
+ [target]: (expectedBalances[target]?.balance || 0n) + result.amount,
101
+ },
102
+ minBalances: {
103
+ ...balancesAfter,
104
+ [target]: (expectedBalances[target]?.balance || 0n) + result.minAmount,
105
+ },
106
+ calls: result.calls,
107
+ minAmount: result.minAmount,
108
+ amount: result.amount,
99
109
  };
100
110
  }
101
111
  /**
102
112
  * @dev Finds the path to swap / withdraw all assets from CreditAccount into underlying asset
103
- * Can bu used for closing credit account and for liquidations as well.
113
+ * Can bu used for closing Credit Account and for liquidations as well.
104
114
  * @param creditAccount CreditAccountData object used for close path computation
105
115
  * @param slippage Slippage in PERCENTAGE_FORMAT (100% = 10_000) per operation
106
116
  * @return The best option in PathFinderCloseResult format, which
107
117
  * - underlyingBalance - total balance of underlying token
108
118
  * - calls - list of calls which should be done to swap & unwrap everything to underlying token
109
119
  */
110
- async findBestClosePath(creditAccount, slippage, noConcurency = false) {
111
- const loopsPerTx = Math.floor(GAS_PER_BLOCK / MAX_GAS_PER_ROUTE);
112
- const pathOptions = pathOptions_1.PathOptionFactory.generatePathOptions(creditAccount.allBalances, loopsPerTx);
120
+ async findBestClosePath({ creditAccount, creditManager: cm, expectedBalances, leftoverBalances, slippage, network, }) {
121
+ const loopsPerTx = GAS_PER_BLOCK / MAX_GAS_PER_ROUTE;
122
+ const pathOptions = pathOptions_1.PathOptionFactory.generatePathOptions(creditAccount.allBalances, Number(loopsPerTx), network);
123
+ const expected = cm.collateralTokens.map(token => {
124
+ // When we pass expected balances explicitly, we need to mimic router behaviour by filtering out leftover tokens
125
+ // for example, we can have stETH balance of 2, because 1 transforms to 2 because of rebasing
126
+ // https://github.com/Gearbox-protocol/router-v3/blob/c230a3aa568bb432e50463cfddc877fec8940cf5/contracts/RouterV3.sol#L222
127
+ const actual = expectedBalances[token]?.balance || 0n;
128
+ return {
129
+ token,
130
+ balance: actual > 10n ? actual : 0n,
131
+ };
132
+ });
133
+ const leftover = cm.collateralTokens.map(token => ({
134
+ token,
135
+ balance: leftoverBalances[token]?.balance || 1n,
136
+ }));
113
137
  const connectors = this.getAvailableConnectors(creditAccount.balances);
114
- let results = [];
115
- if (noConcurency) {
116
- for (const po of pathOptions) {
117
- results.push(await this.pathFinder.callStatic.findBestClosePath(creditAccount.addr, connectors, slippage, po, loopsPerTx, false, {
118
- gasLimit: GAS_PER_BLOCK,
119
- }));
120
- }
121
- }
122
- else {
123
- const requests = pathOptions.map(po => this.pathFinder.callStatic.findBestClosePath(creditAccount.addr, connectors, slippage, po, loopsPerTx, false, {
124
- gasLimit: GAS_PER_BLOCK,
125
- }));
126
- results = await Promise.all(requests);
127
- }
128
- const bestResult = results.reduce((best, [pathFinderResult, gasPriceRAY]) => PathFinder.compare(best, {
129
- calls: pathFinderResult.calls,
130
- amount: (0, sdk_gov_1.toBigInt)(pathFinderResult.amount),
131
- gasUsage: (0, sdk_gov_1.toBigInt)(pathFinderResult.gasUsage),
132
- }, (0, sdk_gov_1.toBigInt)(gasPriceRAY)), {
138
+ const results = await Promise.all(pathOptions.map(po => this.pathFinder.simulate.findBestClosePath([
139
+ creditAccount.addr,
140
+ expected,
141
+ leftover,
142
+ connectors,
143
+ BigInt(slippage),
144
+ po,
145
+ loopsPerTx,
146
+ false,
147
+ ], {
148
+ gas: GAS_PER_BLOCK,
149
+ })));
150
+ const bestResult = results.reduce((best, pathFinderResult) => PathFinder.compare(best, {
151
+ calls: pathFinderResult.result.calls,
152
+ amount: pathFinderResult.result.amount,
153
+ minAmount: pathFinderResult.result.minAmount,
154
+ }), {
133
155
  amount: 0n,
134
- gasUsage: 0n,
156
+ minAmount: 0n,
135
157
  calls: [],
136
158
  });
137
159
  return {
138
- underlyingBalance: bestResult.amount +
139
- creditAccount.allBalances[creditAccount.underlyingToken.toLowerCase()]
140
- .balance,
141
- calls: bestResult.calls,
160
+ ...bestResult,
161
+ underlyingBalance: bestResult.minAmount +
162
+ creditAccount.allBalances[creditAccount.underlyingToken.toLowerCase()].balance,
142
163
  };
143
164
  }
144
- static compare(r1, r2, gasPriceRAY) {
145
- const comparator = ({ amount, gasUsage }, gasPrice) => amount - (gasUsage * gasPrice) / sdk_gov_1.RAY;
146
- return comparator(r1, gasPriceRAY) > comparator(r2, gasPriceRAY) ? r1 : r2;
165
+ static compare(r1, r2) {
166
+ return r1.amount > r2.amount ? r1 : r2;
147
167
  }
148
168
  getAvailableConnectors(availableList) {
149
- return PathFinder.getAvailableConnectors(availableList, this._connectors);
169
+ const connectors = PathFinder.getAvailableConnectors(availableList, this._connectors);
170
+ return connectors;
150
171
  }
151
172
  static getAvailableConnectors(availableList, connectors) {
152
173
  return connectors.filter(t => availableList[t] !== undefined);
@@ -2,38 +2,51 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const sdk_gov_1 = require("@gearbox-protocol/sdk-gov");
4
4
  const chai_1 = require("chai");
5
- const ethers_1 = require("ethers");
5
+ const viem_1 = require("viem");
6
6
  const pathfinder_1 = require("./pathfinder");
7
7
  describe("PathFinder test", () => {
8
8
  it("compare works correctly", () => {
9
9
  const r1 = {
10
- amount: 2000n,
11
- gasUsage: 1000n,
10
+ minAmount: 2000n,
11
+ amount: 20000n,
12
12
  calls: [],
13
13
  };
14
14
  const r2 = {
15
- amount: 3000n,
16
- gasUsage: 2000n,
15
+ minAmount: 3000n,
16
+ amount: 30000n,
17
17
  calls: [],
18
18
  };
19
- let result = pathfinder_1.PathFinder.compare(r1, r2, sdk_gov_1.RAY);
19
+ let result = pathfinder_1.PathFinder.compare(r1, r2);
20
20
  (0, chai_1.expect)(result).to.be.eql(r2);
21
- result = pathfinder_1.PathFinder.compare(r1, r2, sdk_gov_1.RAY * 2n);
22
- (0, chai_1.expect)(result).to.be.eql(r1);
23
21
  });
24
22
  it("has all expected connectors", () => {
25
- const pf = new pathfinder_1.PathFinder("", new ethers_1.providers.JsonRpcProvider(), "Mainnet");
23
+ const pf = new pathfinder_1.PathFinder("", (0, viem_1.createPublicClient)({ transport: (0, viem_1.http)("https://mainnet.infura.io/v3/") }), "Mainnet");
26
24
  const allowedTokens = {
27
- [sdk_gov_1.tokenDataByNetwork.Mainnet.USDC.toLowerCase()]: true,
28
25
  [sdk_gov_1.tokenDataByNetwork.Mainnet.WETH.toLowerCase()]: true,
29
26
  [sdk_gov_1.tokenDataByNetwork.Mainnet.DAI.toLowerCase()]: true,
27
+ [sdk_gov_1.tokenDataByNetwork.Mainnet.USDC.toLowerCase()]: true,
30
28
  [sdk_gov_1.tokenDataByNetwork.Mainnet.FRAX.toLowerCase()]: true,
29
+ [sdk_gov_1.tokenDataByNetwork.Mainnet.rETH.toLowerCase()]: true,
31
30
  };
32
31
  (0, chai_1.expect)(pf.getAvailableConnectors(allowedTokens)).to.be.deep.equal([
33
- sdk_gov_1.tokenDataByNetwork.Mainnet.USDC.toLowerCase(),
34
32
  sdk_gov_1.tokenDataByNetwork.Mainnet.WETH.toLowerCase(),
35
33
  sdk_gov_1.tokenDataByNetwork.Mainnet.DAI.toLowerCase(),
34
+ sdk_gov_1.tokenDataByNetwork.Mainnet.USDC.toLowerCase(),
36
35
  sdk_gov_1.tokenDataByNetwork.Mainnet.FRAX.toLowerCase(),
36
+ sdk_gov_1.tokenDataByNetwork.Mainnet.rETH.toLowerCase(),
37
+ ]);
38
+ });
39
+ it("has all expected connectors, when gew are disabled", () => {
40
+ const pf = new pathfinder_1.PathFinder("", (0, viem_1.createPublicClient)({ transport: (0, viem_1.http)("https://mainnet.infura.io/v3/") }), "Mainnet");
41
+ const allowedTokens = {
42
+ [sdk_gov_1.tokenDataByNetwork.Mainnet.WETH.toLowerCase()]: true,
43
+ [sdk_gov_1.tokenDataByNetwork.Mainnet.DAI.toLowerCase()]: true,
44
+ [sdk_gov_1.tokenDataByNetwork.Mainnet.rETH.toLowerCase()]: true,
45
+ };
46
+ (0, chai_1.expect)(pf.getAvailableConnectors(allowedTokens)).to.be.deep.equal([
47
+ sdk_gov_1.tokenDataByNetwork.Mainnet.WETH.toLowerCase(),
48
+ sdk_gov_1.tokenDataByNetwork.Mainnet.DAI.toLowerCase(),
49
+ sdk_gov_1.tokenDataByNetwork.Mainnet.rETH.toLowerCase(),
37
50
  ]);
38
51
  });
39
52
  });
@@ -0,0 +1,34 @@
1
+ import { Address, PublicClient } from "viem";
2
+ import { MultiCall } from "./core";
3
+ export interface FeeInfo {
4
+ type: KnownFeeTypes;
5
+ value: bigint;
6
+ }
7
+ type KnownFeeTypes = "curve" | "lido" | "uniswap_v2" | "uniswap_v3" | "balancer";
8
+ export declare const BALANCER_VAULT_ABI: readonly [{
9
+ readonly inputs: readonly [];
10
+ readonly name: "getSwapFeePercentage";
11
+ readonly outputs: readonly [{
12
+ readonly internalType: "uint256";
13
+ readonly name: "";
14
+ readonly type: "uint256";
15
+ }];
16
+ readonly stateMutability: "view";
17
+ readonly type: "function";
18
+ }];
19
+ export interface FindPathFeesProps {
20
+ calls: Array<MultiCall>;
21
+ provider: PublicClient;
22
+ contractsByAdapter: Record<Address, Address>;
23
+ }
24
+ export declare class PathFinderUtils {
25
+ static findPathFees({ calls, provider, contractsByAdapter, }: FindPathFeesProps): Promise<FeeInfo[]>;
26
+ private static getUniswapV2Fee;
27
+ private static getUniswapV3Fee;
28
+ private static getCurveFeeCall;
29
+ private static getCurveFee;
30
+ private static getBalancerFeeCall;
31
+ private static getBalancerFee;
32
+ private static getLidoFee;
33
+ }
34
+ export {};
@@ -0,0 +1,186 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PathFinderUtils = exports.BALANCER_VAULT_ABI = void 0;
4
+ const sdk_gov_1 = require("@gearbox-protocol/sdk-gov");
5
+ const balancerV2VaultParser_1 = require("../parsers/balancerV2VaultParser");
6
+ const curveAdapterParser_1 = require("../parsers/curveAdapterParser");
7
+ const lidoAdapterParser_1 = require("../parsers/lidoAdapterParser");
8
+ const txParser_1 = require("../parsers/txParser");
9
+ const uniV2AdapterParser_1 = require("../parsers/uniV2AdapterParser");
10
+ const uniV3AdapterParser_1 = require("../parsers/uniV3AdapterParser");
11
+ const types_1 = require("../types");
12
+ const balancerVault_1 = require("./balancerVault");
13
+ const CURVE_FEE_DECIMALS = 100000000n;
14
+ const BALANCER_FEE_DECIMALS = 10000000000000000n;
15
+ exports.BALANCER_VAULT_ABI = [
16
+ {
17
+ inputs: [],
18
+ name: "getSwapFeePercentage",
19
+ outputs: [
20
+ {
21
+ internalType: "uint256",
22
+ name: "",
23
+ type: "uint256",
24
+ },
25
+ ],
26
+ stateMutability: "view",
27
+ type: "function",
28
+ },
29
+ ];
30
+ class PathFinderUtils {
31
+ static async findPathFees({ calls, provider, contractsByAdapter, }) {
32
+ const pathObjects = txParser_1.TxParser.parseToObjectMultiCall(calls);
33
+ const { simpleFees, curve, balancer } = pathObjects.reduce((acc, pathSegment) => {
34
+ if (!pathSegment)
35
+ return acc;
36
+ const { callObject, parser } = pathSegment;
37
+ switch (true) {
38
+ case parser instanceof uniV2AdapterParser_1.UniswapV2AdapterParser: {
39
+ const f = this.getUniswapV2Fee(callObject);
40
+ if (f)
41
+ acc.simpleFees.push(f);
42
+ break;
43
+ }
44
+ case parser instanceof uniV3AdapterParser_1.UniswapV3AdapterParser: {
45
+ const f = this.getUniswapV3Fee(callObject);
46
+ if (f)
47
+ acc.simpleFees.push(f);
48
+ break;
49
+ }
50
+ case parser instanceof lidoAdapterParser_1.LidoAdapterParser: {
51
+ const f = this.getLidoFee();
52
+ if (f)
53
+ acc.simpleFees.push(f);
54
+ break;
55
+ }
56
+ case parser instanceof curveAdapterParser_1.CurveAdapterParser: {
57
+ const call = this.getCurveFeeCall(callObject, contractsByAdapter);
58
+ if (call)
59
+ acc.curve.push(call);
60
+ break;
61
+ }
62
+ case parser instanceof balancerV2VaultParser_1.BalancerV2VaultParser: {
63
+ const call = this.getBalancerFeeCall(callObject);
64
+ if (call)
65
+ acc.balancer.push(call);
66
+ break;
67
+ }
68
+ }
69
+ return acc;
70
+ }, {
71
+ simpleFees: [],
72
+ curve: [],
73
+ balancer: [],
74
+ });
75
+ const response = (await provider.multicall({
76
+ allowFailure: true,
77
+ multicallAddress: sdk_gov_1.MULTICALL_ADDRESS,
78
+ contracts: [...curve, ...balancer],
79
+ }));
80
+ const curveEnds = curve.length;
81
+ const curveResponse = response.slice(0, curveEnds);
82
+ const balancerEnds = balancer.length;
83
+ const balancerResponse = response.slice(curveEnds, balancerEnds);
84
+ const curveFees = curveResponse.map(r => this.getCurveFee(r));
85
+ const balancerFees = balancerResponse.map(r => this.getBalancerFee(r));
86
+ const fees = [...simpleFees, ...curveFees, ...balancerFees];
87
+ return fees;
88
+ }
89
+ static getUniswapV2Fee(callObject) {
90
+ const { functionName } = callObject;
91
+ switch (functionName) {
92
+ case "swapExactTokensForTokens":
93
+ case "swapTokensForExactTokens":
94
+ case "swapDiffTokensForTokens": {
95
+ // 0.3%
96
+ return {
97
+ type: "uniswap_v2",
98
+ value: 3000n,
99
+ };
100
+ }
101
+ default:
102
+ return null;
103
+ }
104
+ }
105
+ static getUniswapV3Fee(callObject) {
106
+ const { functionName, args } = callObject;
107
+ switch (functionName) {
108
+ case "exactInputSingle":
109
+ case "exactDiffInputSingle":
110
+ case "exactOutputSingle": {
111
+ const [first] = args;
112
+ const { fee = 0 } = first || {};
113
+ return {
114
+ type: "uniswap_v3",
115
+ value: (0, sdk_gov_1.toBigInt)(fee),
116
+ };
117
+ }
118
+ default:
119
+ return null;
120
+ }
121
+ }
122
+ static getCurveFeeCall(callObject, contractsByAdapter) {
123
+ const { functionName } = callObject;
124
+ switch (functionName) {
125
+ case "exchange":
126
+ case "exchange_underlying":
127
+ case "exchange_diff":
128
+ case "exchange_diff_underlying": {
129
+ const adapter = (callObject.address || "").toLowerCase();
130
+ const contract = contractsByAdapter[adapter];
131
+ return contract
132
+ ? {
133
+ address: contract,
134
+ abi: types_1.iCurvePoolAbi,
135
+ functionName: "fee",
136
+ args: [],
137
+ }
138
+ : null;
139
+ }
140
+ default:
141
+ return null;
142
+ }
143
+ }
144
+ static getCurveFee({ result }) {
145
+ const feeOriginal = result || 0n;
146
+ return {
147
+ type: "curve",
148
+ value: (feeOriginal * sdk_gov_1.PERCENTAGE_FACTOR) / CURVE_FEE_DECIMALS,
149
+ };
150
+ }
151
+ static getBalancerFeeCall(callObject) {
152
+ const { functionName } = callObject;
153
+ switch (functionName) {
154
+ case "swapDiff":
155
+ case "swap": {
156
+ const [first] = callObject.args;
157
+ const { poolId = "" } = first || {};
158
+ const { address } = (0, balancerVault_1.splitPoolId)(poolId);
159
+ return address
160
+ ? {
161
+ address: address,
162
+ abi: exports.BALANCER_VAULT_ABI,
163
+ functionName: "getSwapFeePercentage",
164
+ args: [],
165
+ }
166
+ : null;
167
+ }
168
+ default:
169
+ return null;
170
+ }
171
+ }
172
+ static getBalancerFee({ result }) {
173
+ const feeOriginal = result || 0n;
174
+ return {
175
+ type: "balancer",
176
+ value: (feeOriginal * sdk_gov_1.PERCENTAGE_FACTOR) / BALANCER_FEE_DECIMALS,
177
+ };
178
+ }
179
+ static getLidoFee() {
180
+ return {
181
+ type: "lido",
182
+ value: 0n,
183
+ };
184
+ }
185
+ }
186
+ exports.PathFinderUtils = PathFinderUtils;
@@ -0,0 +1,13 @@
1
+ import { Address } from "viem";
2
+ export type BotBaseType = "liquidationProtection";
3
+ export type LiquidationBotType = "deleverageBotPegged" | "deleverageBotLV" | "deleverageBotHV";
4
+ export type BotDetailedType = LiquidationBotType;
5
+ export interface BotDataPayload {
6
+ baseType: BotBaseType;
7
+ detailedType: BotDetailedType;
8
+ address: Address;
9
+ minHealthFactor: number;
10
+ maxHealthFactor: number;
11
+ premiumScaleFactor: number;
12
+ feeScaleFactor: number;
13
+ }
@@ -1,6 +1,48 @@
1
- import { ExcludeArrayProps } from "@gearbox-protocol/sdk-gov";
2
- import { CreditAccountDataStructOutput, ScheduledWithdrawalStructOutput, TokenBalanceStructOutput } from "../types/IDataCompressorV3_00";
3
- import { BigintifyProps, PartialKeys } from "../utils/types";
4
- export type CaTokenBalance = BigintifyProps<ExcludeArrayProps<TokenBalanceStructOutput>>;
5
- export type ScheduledWithdrawal = BigintifyProps<ExcludeArrayProps<ScheduledWithdrawalStructOutput>>;
6
- export type CreditAccountDataPayload = PartialKeys<ExcludeArrayProps<CreditAccountDataStructOutput>, "accruedInterest" | "accruedFees" | "healthFactor" | "totalValue">;
1
+ import { Address } from "viem";
2
+ export interface CaTokenBalance {
3
+ token: Address;
4
+ balance: bigint;
5
+ isForbidden: boolean;
6
+ isEnabled: boolean;
7
+ isQuoted: boolean;
8
+ quota: bigint;
9
+ quotaRate: bigint;
10
+ quotaCumulativeIndexLU: bigint;
11
+ }
12
+ export interface CreditAccountDataPayload {
13
+ isSuccessful: boolean;
14
+ priceFeedsNeeded: readonly Address[];
15
+ addr: Address;
16
+ borrower: Address;
17
+ creditManager: Address;
18
+ cmName: string;
19
+ creditFacade: Address;
20
+ underlying: Address;
21
+ debt: bigint;
22
+ cumulativeIndexLastUpdate: bigint;
23
+ cumulativeQuotaInterest: bigint;
24
+ accruedInterest: bigint;
25
+ accruedFees: bigint;
26
+ totalDebtUSD: bigint;
27
+ totalValue: bigint;
28
+ totalValueUSD: bigint;
29
+ twvUSD: bigint;
30
+ enabledTokensMask: bigint;
31
+ healthFactor: bigint;
32
+ baseBorrowRate: bigint;
33
+ aggregatedBorrowRate: bigint;
34
+ balances: readonly {
35
+ token: Address;
36
+ balance: bigint;
37
+ isForbidden: boolean;
38
+ isEnabled: boolean;
39
+ isQuoted: boolean;
40
+ quota: bigint;
41
+ quotaRate: number;
42
+ quotaCumulativeIndexLU: bigint;
43
+ }[];
44
+ since: bigint;
45
+ cfVersion: bigint;
46
+ expirationDate: number;
47
+ activeBots: readonly Address[];
48
+ }