@gearbox-protocol/sdk 3.0.0-next.24 → 3.0.0-next.241

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 (707) hide show
  1. package/contracts/SignUpRepository.sol +85 -0
  2. package/contracts/index.sol +43 -5
  3. package/lib/apy/curveAPY.d.ts +55 -5
  4. package/lib/apy/curveAPY.js +128 -72
  5. package/lib/apy/defiLamaAPY.d.ts +3 -0
  6. package/lib/apy/defiLamaAPY.js +75 -0
  7. package/lib/apy/index.d.ts +10 -5
  8. package/lib/apy/index.js +66 -6
  9. package/lib/apy/lidoAPY.d.ts +4 -1
  10. package/lib/apy/lidoAPY.js +7 -10
  11. package/lib/apy/yearnAPY.d.ts +3 -3
  12. package/lib/apy/yearnAPY.js +15 -12
  13. package/lib/contracts/contractsRegister.d.ts +17 -9
  14. package/lib/contracts/contractsRegister.js +53 -3
  15. package/lib/core/assets.d.ts +10 -9
  16. package/lib/core/assets.js +2 -2
  17. package/lib/core/bot.d.ts +12 -0
  18. package/lib/core/bot.js +23 -0
  19. package/lib/core/creditAccount.d.ts +108 -54
  20. package/lib/core/creditAccount.js +249 -110
  21. package/lib/core/creditAccount.spec.js +973 -135
  22. package/lib/core/creditManager.d.ts +43 -29
  23. package/lib/core/creditManager.js +196 -83
  24. package/lib/core/creditSession.d.ts +35 -13
  25. package/lib/core/creditSession.js +32 -7
  26. package/lib/core/endpoint.d.ts +24 -0
  27. package/lib/core/endpoint.js +124 -0
  28. package/lib/core/eventOrTx.d.ts +5 -5
  29. package/lib/core/events.d.ts +163 -162
  30. package/lib/core/events.js +7 -7
  31. package/lib/core/gauge.d.ts +40 -0
  32. package/lib/core/gauge.js +64 -0
  33. package/lib/core/gaugeMath.d.ts +41 -0
  34. package/lib/core/gaugeMath.js +105 -0
  35. package/lib/core/gaugeMath.spec.js +388 -0
  36. package/lib/core/{pool/data.d.ts → pool.d.ts} +62 -31
  37. package/lib/core/{pool/data.js → pool.js} +117 -83
  38. package/lib/core/priceOracle.d.ts +1 -1
  39. package/lib/core/protocols.d.ts +9 -0
  40. package/lib/core/protocols.js +145 -0
  41. package/lib/core/rewardClaimer/aura.d.ts +1 -0
  42. package/lib/core/rewardClaimer/aura.js +23 -0
  43. package/lib/core/rewardClaimer/auraAbi.d.ts +15 -0
  44. package/lib/core/rewardClaimer/auraAbi.js +24 -0
  45. package/lib/core/rewardClaimer/convex.d.ts +1 -0
  46. package/lib/core/rewardClaimer/convex.js +18 -0
  47. package/lib/core/rewardClaimer/index.d.ts +25 -0
  48. package/lib/core/rewardClaimer/index.js +34 -0
  49. package/lib/core/rewardClaimer/rewardConvex.d.ts +42 -0
  50. package/lib/core/rewardClaimer/rewardConvex.js +250 -0
  51. package/lib/core/{rewardConvex.spec.js → rewardClaimer/rewardConvex.spec.js} +38 -70
  52. package/lib/core/rewardClaimer/stakingRewards.d.ts +34 -0
  53. package/lib/core/rewardClaimer/stakingRewards.js +133 -0
  54. package/lib/core/strategy.d.ts +13 -29
  55. package/lib/core/strategy.js +20 -44
  56. package/lib/core/trade.d.ts +13 -13
  57. package/lib/core/trade.js +36 -28
  58. package/lib/core/transactions.d.ts +214 -73
  59. package/lib/core/transactions.js +298 -119
  60. package/lib/gearboxRewards/api.d.ts +89 -0
  61. package/lib/gearboxRewards/api.js +319 -0
  62. package/lib/gearboxRewards/apy.d.ts +38 -0
  63. package/lib/gearboxRewards/apy.js +65 -0
  64. package/lib/gearboxRewards/extraAPY.d.ts +33 -0
  65. package/lib/gearboxRewards/extraAPY.js +111 -0
  66. package/lib/gearboxRewards/index.d.ts +3 -0
  67. package/lib/gearboxRewards/index.js +19 -0
  68. package/lib/gearboxRewards/merklAPI.d.ts +43 -0
  69. package/lib/gearboxRewards/merklAPI.js +11 -0
  70. package/lib/index.d.ts +11 -6
  71. package/lib/index.js +11 -8
  72. package/lib/parsers/ERC20Parser.d.ts +2 -1
  73. package/lib/parsers/ERC20Parser.js +11 -11
  74. package/lib/parsers/aaveV2LendingPoolAdapterParser.d.ts +8 -0
  75. package/lib/parsers/aaveV2LendingPoolAdapterParser.js +21 -0
  76. package/lib/parsers/aaveV2WrappedATokenAdapterParser.d.ts +8 -0
  77. package/lib/parsers/aaveV2WrappedATokenAdapterParser.js +21 -0
  78. package/lib/parsers/abstractParser.d.ts +22 -16
  79. package/lib/parsers/abstractParser.js +31 -14
  80. package/lib/parsers/balancerV2VaultParser.d.ts +8 -0
  81. package/lib/parsers/balancerV2VaultParser.js +32 -0
  82. package/lib/parsers/compoundV2CTokenAdapterParser.d.ts +8 -0
  83. package/lib/parsers/compoundV2CTokenAdapterParser.js +21 -0
  84. package/lib/parsers/convexBaseRewardPoolAdapterParser.d.ts +3 -2
  85. package/lib/parsers/convexBaseRewardPoolAdapterParser.js +21 -17
  86. package/lib/parsers/convexBoosterAdapterParser.d.ts +3 -3
  87. package/lib/parsers/convexBoosterAdapterParser.js +14 -14
  88. package/lib/parsers/convextRewardPoolParser.d.ts +2 -1
  89. package/lib/parsers/convextRewardPoolParser.js +5 -5
  90. package/lib/parsers/creditFacadeParser.d.ts +3 -2
  91. package/lib/parsers/creditFacadeParser.js +44 -18
  92. package/lib/parsers/creditManagerParser.d.ts +2 -1
  93. package/lib/parsers/creditManagerParser.js +5 -8
  94. package/lib/parsers/curveAdapterParser.d.ts +3 -2
  95. package/lib/parsers/curveAdapterParser.js +39 -39
  96. package/lib/parsers/erc626AdapterParser.d.ts +8 -0
  97. package/lib/parsers/erc626AdapterParser.js +21 -0
  98. package/lib/parsers/iParser.d.ts +4 -7
  99. package/lib/parsers/lidoAdapterParser.d.ts +2 -1
  100. package/lib/parsers/lidoAdapterParser.js +9 -8
  101. package/lib/parsers/lidoSTETHParser.d.ts +2 -1
  102. package/lib/parsers/lidoSTETHParser.js +11 -11
  103. package/lib/parsers/priceOracleParser.d.ts +2 -1
  104. package/lib/parsers/priceOracleParser.js +6 -6
  105. package/lib/parsers/stakingRewardsAdapterParser.d.ts +10 -0
  106. package/lib/parsers/stakingRewardsAdapterParser.js +35 -0
  107. package/lib/parsers/txParser.d.ts +21 -24
  108. package/lib/parsers/txParser.js +47 -14
  109. package/lib/parsers/uniV2AdapterParser.d.ts +2 -2
  110. package/lib/parsers/uniV2AdapterParser.js +12 -14
  111. package/lib/parsers/uniV2AdapterParser.spec.js +43 -30
  112. package/lib/parsers/uniV3AdapterParser.d.ts +4 -3
  113. package/lib/parsers/uniV3AdapterParser.js +26 -18
  114. package/lib/parsers/uniV3AdapterParser.spec.js +53 -76
  115. package/lib/parsers/wstETHAdapterParser.d.ts +2 -1
  116. package/lib/parsers/wstETHAdapterParser.js +20 -20
  117. package/lib/parsers/wstETHAdapterParser.spec.js +23 -7
  118. package/lib/parsers/yearnAdapterParser.spec.js +39 -21
  119. package/lib/parsers/yearnV2AdapterParser.d.ts +2 -1
  120. package/lib/parsers/yearnV2AdapterParser.js +23 -13
  121. package/lib/pathfinder/balancerVault.d.ts +33 -0
  122. package/lib/pathfinder/balancerVault.js +59 -0
  123. package/lib/pathfinder/core.d.ts +20 -10
  124. package/lib/pathfinder/index.d.ts +4 -0
  125. package/lib/pathfinder/index.js +20 -0
  126. package/lib/pathfinder/pathOptions.d.ts +6 -5
  127. package/lib/pathfinder/pathOptions.js +34 -18
  128. package/lib/pathfinder/pathOptions.spec.js +3 -6
  129. package/lib/pathfinder/pathfinder.d.ts +49 -22
  130. package/lib/pathfinder/pathfinder.js +101 -80
  131. package/lib/pathfinder/pathfinder.spec.js +24 -11
  132. package/lib/pathfinder/utils.d.ts +34 -0
  133. package/lib/pathfinder/utils.js +186 -0
  134. package/lib/payload/bot.d.ts +13 -0
  135. package/lib/payload/creditAccount.d.ts +41 -6
  136. package/lib/payload/creditManager.d.ts +58 -16
  137. package/lib/payload/creditSession.d.ts +31 -16
  138. package/lib/payload/gauge.d.ts +40 -0
  139. package/lib/payload/graphPayload.d.ts +3 -2
  140. package/lib/payload/pool.d.ts +110 -34
  141. package/lib/payload/token.d.ts +5 -2
  142. package/lib/redstone/api.d.ts +40 -0
  143. package/lib/redstone/api.js +300 -0
  144. package/lib/redstone/index.d.ts +1 -0
  145. package/lib/{core/pool → redstone}/index.js +1 -1
  146. package/lib/tokens/tokenData.d.ts +7 -5
  147. package/lib/tokens/tokenData.js +13 -6
  148. package/lib/types/CompositePriceFeed.d.ts +182 -0
  149. package/lib/types/CompositePriceFeed.js +123 -0
  150. package/lib/types/IAaveV2_LendingPoolAdapter.d.ts +151 -0
  151. package/lib/types/IAaveV2_LendingPoolAdapter.js +98 -0
  152. package/lib/types/IAaveV2_WrappedATokenAdapter.d.ts +245 -0
  153. package/lib/types/IAaveV2_WrappedATokenAdapter.js +166 -0
  154. package/lib/types/IAddressProviderV3.d.ts +85 -0
  155. package/lib/types/IAddressProviderV3.js +66 -0
  156. package/lib/types/IAirdropDistributor.d.ts +112 -0
  157. package/lib/types/{factories/IAirdropDistributor.sol/IAirdropDistributor__factory.js → IAirdropDistributor.js} +56 -112
  158. package/lib/types/IBalancerV2VaultAdapter.d.ts +507 -0
  159. package/lib/types/IBalancerV2VaultAdapter.js +322 -0
  160. package/lib/types/IBaseRewardPool.d.ts +391 -378
  161. package/lib/types/IBaseRewardPool.js +249 -0
  162. package/lib/types/ICompoundV2_CTokenAdapter.d.ts +189 -0
  163. package/lib/types/ICompoundV2_CTokenAdapter.js +130 -0
  164. package/lib/types/IConvexToken.d.ts +201 -182
  165. package/lib/types/IConvexToken.js +143 -0
  166. package/lib/types/IConvexV1BaseRewardPoolAdapter.d.ts +299 -284
  167. package/lib/types/IConvexV1BaseRewardPoolAdapter.js +202 -0
  168. package/lib/types/IConvexV1BoosterAdapter.d.ts +182 -0
  169. package/lib/types/IConvexV1BoosterAdapter.js +125 -0
  170. package/lib/types/ICreditConfiguratorV3.d.ts +598 -0
  171. package/lib/types/{factories/ICreditConfiguratorV3.sol/ICreditConfiguratorV3__factory.js → ICreditConfiguratorV3.js} +348 -532
  172. package/lib/types/ICreditFacadeV2Extended.d.ts +74 -0
  173. package/lib/types/ICreditFacadeV2Extended.js +63 -0
  174. package/lib/types/ICreditFacadeV3.d.ts +543 -0
  175. package/lib/types/{factories/ICreditFacadeV3.sol/ICreditFacadeV3__factory.js → ICreditFacadeV3.js} +281 -590
  176. package/lib/types/ICreditFacadeV3Multicall.d.ts +197 -269
  177. package/lib/types/ICreditFacadeV3Multicall.js +142 -0
  178. package/lib/types/ICreditManagerV2.d.ts +700 -0
  179. package/lib/types/ICreditManagerV2.js +443 -0
  180. package/lib/types/ICreditManagerV3.d.ts +1016 -0
  181. package/lib/types/ICreditManagerV3.js +672 -0
  182. package/lib/types/ICurvePool.d.ts +559 -438
  183. package/lib/types/ICurvePool.js +332 -0
  184. package/lib/types/ICurveV1_2AssetsAdapter.d.ts +665 -698
  185. package/lib/types/ICurveV1_2AssetsAdapter.js +404 -0
  186. package/lib/types/ICurveV1_3AssetsAdapter.d.ts +665 -761
  187. package/lib/types/ICurveV1_3AssetsAdapter.js +404 -0
  188. package/lib/types/ICurveV1_4AssetsAdapter.d.ts +665 -779
  189. package/lib/types/ICurveV1_4AssetsAdapter.js +404 -0
  190. package/lib/types/IDataCompressorV2_1.d.ts +1165 -0
  191. package/lib/types/IDataCompressorV2_1.js +720 -0
  192. package/lib/types/IDataCompressorV3.d.ts +1573 -0
  193. package/lib/types/IDataCompressorV3.js +959 -0
  194. package/lib/types/IDegenDistributor.d.ts +77 -0
  195. package/lib/types/IDegenDistributor.js +72 -0
  196. package/lib/types/IERC20.d.ts +141 -142
  197. package/lib/types/IERC20.js +101 -0
  198. package/lib/types/IERC20Permit.d.ts +59 -74
  199. package/lib/types/IERC20Permit.js +35 -0
  200. package/lib/types/IERC20ZapperDeposits.d.ts +193 -0
  201. package/lib/types/IERC20ZapperDeposits.js +101 -0
  202. package/lib/types/IERC4626Adapter.d.ts +213 -0
  203. package/lib/types/IERC4626Adapter.js +142 -0
  204. package/lib/types/IETHZapperDeposits.d.ts +33 -0
  205. package/lib/types/IETHZapperDeposits.js +29 -0
  206. package/lib/types/IFarmingPool.d.ts +292 -0
  207. package/lib/types/IFarmingPool.js +231 -0
  208. package/lib/types/IGearStakingV3.d.ts +497 -0
  209. package/lib/types/IGearStakingV3.js +368 -0
  210. package/lib/types/IInterestRateModel.d.ts +29 -50
  211. package/lib/types/IInterestRateModel.js +23 -0
  212. package/lib/types/ILidoV1Adapter.d.ts +137 -158
  213. package/lib/types/ILidoV1Adapter.js +98 -0
  214. package/lib/types/IMulticall3.d.ts +332 -0
  215. package/lib/types/IMulticall3.js +244 -0
  216. package/lib/types/IOffchainOracle.d.ts +41 -58
  217. package/lib/types/IOffchainOracle.js +31 -0
  218. package/lib/types/IPartialLiquidationBotV3.d.ts +210 -0
  219. package/lib/types/IPartialLiquidationBotV3.js +143 -0
  220. package/lib/types/IPoolV3.d.ts +1061 -0
  221. package/lib/types/IPoolV3.js +806 -0
  222. package/lib/types/IPriceFeed.d.ts +77 -0
  223. package/lib/types/IPriceFeed.js +56 -0
  224. package/lib/types/IPriceOracleBase.d.ts +97 -88
  225. package/lib/types/IPriceOracleBase.js +58 -0
  226. package/lib/types/IPriceOracleV3.d.ts +319 -0
  227. package/lib/types/IPriceOracleV3.js +210 -0
  228. package/lib/types/IRouterV3.d.ts +505 -0
  229. package/lib/types/IRouterV3.js +328 -0
  230. package/lib/types/IStakingRewardsAdapter.d.ts +197 -0
  231. package/lib/types/IStakingRewardsAdapter.js +139 -0
  232. package/lib/types/IUniswapV2Adapter.d.ts +214 -0
  233. package/lib/types/IUniswapV2Adapter.js +139 -0
  234. package/lib/types/IUniswapV3Adapter.d.ts +391 -0
  235. package/lib/types/IUniswapV3Adapter.js +260 -0
  236. package/lib/types/IUpdatablePriceFeed.d.ts +97 -0
  237. package/lib/types/IUpdatablePriceFeed.js +70 -0
  238. package/lib/types/IYearnV2Adapter.d.ts +223 -256
  239. package/lib/types/IYearnV2Adapter.js +146 -0
  240. package/lib/types/IZapper.d.ts +159 -130
  241. package/lib/types/IZapper.js +101 -0
  242. package/lib/types/IstETH.d.ts +257 -0
  243. package/lib/types/IstETH.js +175 -0
  244. package/lib/types/IwstETH.d.ts +257 -0
  245. package/lib/types/IwstETH.js +181 -0
  246. package/lib/types/IwstETHV1Adapter.d.ts +153 -186
  247. package/lib/types/IwstETHV1Adapter.js +106 -0
  248. package/lib/types/RedstonePriceFeed.d.ts +423 -0
  249. package/lib/types/RedstonePriceFeed.js +287 -0
  250. package/lib/types/SignUpRepository.d.ts +161 -0
  251. package/lib/types/SignUpRepository.js +137 -0
  252. package/lib/types/index.d.ts +52 -221
  253. package/lib/types/index.js +54 -186
  254. package/lib/utils/calls.d.ts +31 -0
  255. package/lib/utils/calls.js +73 -0
  256. package/lib/utils/formatter.d.ts +2 -2
  257. package/lib/utils/formatter.js +2 -2
  258. package/lib/utils/math.d.ts +1 -1
  259. package/lib/utils/math.js +1 -2
  260. package/lib/utils/types.d.ts +0 -4
  261. package/package.json +18 -15
  262. package/contracts/IRouter.sol +0 -100
  263. package/lib/apy/convexAPY.d.ts +0 -48
  264. package/lib/apy/convexAPY.js +0 -187
  265. package/lib/config.d.ts +0 -1
  266. package/lib/config.js +0 -4
  267. package/lib/core/errors.d.ts +0 -5
  268. package/lib/core/pool/index.d.ts +0 -1
  269. package/lib/core/rewardClaimer.d.ts +0 -18
  270. package/lib/core/rewardClaimer.js +0 -10
  271. package/lib/core/rewardConvex.d.ts +0 -24
  272. package/lib/core/rewardConvex.js +0 -100
  273. package/lib/core/strategy.spec.js +0 -62
  274. package/lib/parsers/addressProviderParser.d.ts +0 -6
  275. package/lib/parsers/addressProviderParser.js +0 -27
  276. package/lib/parsers/convexBaseRewardPoolAdapterParser.spec.d.ts +0 -1
  277. package/lib/parsers/convexBaseRewardPoolAdapterParser.spec.js +0 -24
  278. package/lib/parsers/convexBoosterAdapterParser.spec.d.ts +0 -1
  279. package/lib/parsers/convexBoosterAdapterParser.spec.js +0 -20
  280. package/lib/parsers/creditFacadeParser.spec.d.ts +0 -1
  281. package/lib/parsers/creditFacadeParser.spec.js +0 -25
  282. package/lib/parsers/curveAdapterParser.spec.d.ts +0 -1
  283. package/lib/parsers/curveAdapterParser.spec.js +0 -42
  284. package/lib/parsers/lidoAdapterParser.spec.d.ts +0 -1
  285. package/lib/parsers/lidoAdapterParser.spec.js +0 -17
  286. package/lib/parsers/poolParser.d.ts +0 -6
  287. package/lib/parsers/poolParser.js +0 -19
  288. package/lib/types/AddressProvider.d.ts +0 -382
  289. package/lib/types/Balances.sol/BalanceOps.d.ts +0 -27
  290. package/lib/types/Balances.sol/BalanceOps.js +0 -2
  291. package/lib/types/Balances.sol/index.d.ts +0 -1
  292. package/lib/types/Balances.sol/index.js +0 -2
  293. package/lib/types/Claimable.d.ts +0 -113
  294. package/lib/types/Claimable.js +0 -2
  295. package/lib/types/Errors.d.ts +0 -298
  296. package/lib/types/Errors.js +0 -2
  297. package/lib/types/IAdapter.d.ts +0 -74
  298. package/lib/types/IAdapter.js +0 -2
  299. package/lib/types/IAddressProvider.sol/IAddressProvider.d.ts +0 -137
  300. package/lib/types/IAddressProvider.sol/IAddressProvider.js +0 -2
  301. package/lib/types/IAddressProvider.sol/IAddressProviderEvents.d.ts +0 -43
  302. package/lib/types/IAddressProvider.sol/IAddressProviderEvents.js +0 -2
  303. package/lib/types/IAddressProvider.sol/index.d.ts +0 -2
  304. package/lib/types/IAddressProvider.sol/index.js +0 -2
  305. package/lib/types/IAddressProviderV3.sol/IAddressProviderV3.d.ts +0 -97
  306. package/lib/types/IAddressProviderV3.sol/IAddressProviderV3.js +0 -2
  307. package/lib/types/IAddressProviderV3.sol/IAddressProviderV3Events.d.ts +0 -45
  308. package/lib/types/IAddressProviderV3.sol/IAddressProviderV3Events.js +0 -2
  309. package/lib/types/IAddressProviderV3.sol/index.d.ts +0 -2
  310. package/lib/types/IAddressProviderV3.sol/index.js +0 -2
  311. package/lib/types/IAirdropDistributor.sol/IAirdropDistributor.d.ts +0 -124
  312. package/lib/types/IAirdropDistributor.sol/IAirdropDistributor.js +0 -2
  313. package/lib/types/IAirdropDistributor.sol/IAirdropDistributorEvents.d.ts +0 -73
  314. package/lib/types/IAirdropDistributor.sol/IAirdropDistributorEvents.js +0 -2
  315. package/lib/types/IAirdropDistributor.sol/index.d.ts +0 -2
  316. package/lib/types/IAirdropDistributor.sol/index.js +0 -2
  317. package/lib/types/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter.d.ts +0 -205
  318. package/lib/types/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter.js +0 -2
  319. package/lib/types/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapterEvents.d.ts +0 -43
  320. package/lib/types/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapterEvents.js +0 -2
  321. package/lib/types/IConvexV1BoosterAdapter.sol/index.d.ts +0 -2
  322. package/lib/types/IConvexV1BoosterAdapter.sol/index.js +0 -2
  323. package/lib/types/ICreditConfiguratorV2.sol/ICreditConfiguratorV2.d.ts +0 -641
  324. package/lib/types/ICreditConfiguratorV2.sol/ICreditConfiguratorV2.js +0 -2
  325. package/lib/types/ICreditConfiguratorV2.sol/ICreditConfiguratorV2Events.d.ts +0 -293
  326. package/lib/types/ICreditConfiguratorV2.sol/ICreditConfiguratorV2Events.js +0 -2
  327. package/lib/types/ICreditConfiguratorV2.sol/ICreditConfiguratorV2Exceptions.d.ts +0 -27
  328. package/lib/types/ICreditConfiguratorV2.sol/ICreditConfiguratorV2Exceptions.js +0 -2
  329. package/lib/types/ICreditConfiguratorV2.sol/index.d.ts +0 -3
  330. package/lib/types/ICreditConfiguratorV2.sol/index.js +0 -2
  331. package/lib/types/ICreditConfiguratorV3.sol/ICreditConfiguratorV3.d.ts +0 -716
  332. package/lib/types/ICreditConfiguratorV3.sol/ICreditConfiguratorV3.js +0 -2
  333. package/lib/types/ICreditConfiguratorV3.sol/ICreditConfiguratorV3Events.d.ts +0 -275
  334. package/lib/types/ICreditConfiguratorV3.sol/ICreditConfiguratorV3Events.js +0 -2
  335. package/lib/types/ICreditConfiguratorV3.sol/index.d.ts +0 -2
  336. package/lib/types/ICreditConfiguratorV3.sol/index.js +0 -2
  337. package/lib/types/ICreditFacadeV2.sol/ICreditFacadeV2.d.ts +0 -710
  338. package/lib/types/ICreditFacadeV2.sol/ICreditFacadeV2.js +0 -2
  339. package/lib/types/ICreditFacadeV2.sol/ICreditFacadeV2Events.d.ts +0 -244
  340. package/lib/types/ICreditFacadeV2.sol/ICreditFacadeV2Events.js +0 -2
  341. package/lib/types/ICreditFacadeV2.sol/ICreditFacadeV2Exceptions.d.ts +0 -27
  342. package/lib/types/ICreditFacadeV2.sol/ICreditFacadeV2Exceptions.js +0 -2
  343. package/lib/types/ICreditFacadeV2.sol/ICreditFacadeV2Extended.d.ts +0 -138
  344. package/lib/types/ICreditFacadeV2.sol/ICreditFacadeV2Extended.js +0 -2
  345. package/lib/types/ICreditFacadeV2.sol/ICreditFacadeV2V2.d.ts +0 -66
  346. package/lib/types/ICreditFacadeV2.sol/ICreditFacadeV2V2.js +0 -2
  347. package/lib/types/ICreditFacadeV2.sol/index.d.ts +0 -5
  348. package/lib/types/ICreditFacadeV2.sol/index.js +0 -2
  349. package/lib/types/ICreditFacadeV3.sol/ICreditFacadeV3.d.ts +0 -572
  350. package/lib/types/ICreditFacadeV3.sol/ICreditFacadeV3.js +0 -2
  351. package/lib/types/ICreditFacadeV3.sol/ICreditFacadeV3Events.d.ts +0 -168
  352. package/lib/types/ICreditFacadeV3.sol/ICreditFacadeV3Events.js +0 -2
  353. package/lib/types/ICreditFacadeV3.sol/index.d.ts +0 -2
  354. package/lib/types/ICreditFacadeV3.sol/index.js +0 -2
  355. package/lib/types/ICreditManagerV2.sol/ICreditManagerV2.d.ts +0 -639
  356. package/lib/types/ICreditManagerV2.sol/ICreditManagerV2.js +0 -2
  357. package/lib/types/ICreditManagerV2.sol/ICreditManagerV2Events.d.ts +0 -54
  358. package/lib/types/ICreditManagerV2.sol/ICreditManagerV2Events.js +0 -2
  359. package/lib/types/ICreditManagerV2.sol/ICreditManagerV2Exceptions.d.ts +0 -27
  360. package/lib/types/ICreditManagerV2.sol/ICreditManagerV2Exceptions.js +0 -2
  361. package/lib/types/ICreditManagerV2.sol/index.d.ts +0 -3
  362. package/lib/types/ICreditManagerV2.sol/index.js +0 -2
  363. package/lib/types/ICreditManagerV3.sol/ICreditManagerV3.d.ts +0 -947
  364. package/lib/types/ICreditManagerV3.sol/ICreditManagerV3.js +0 -2
  365. package/lib/types/ICreditManagerV3.sol/ICreditManagerV3Events.d.ts +0 -41
  366. package/lib/types/ICreditManagerV3.sol/ICreditManagerV3Events.js +0 -2
  367. package/lib/types/ICreditManagerV3.sol/index.d.ts +0 -2
  368. package/lib/types/ICreditManagerV3.sol/index.js +0 -2
  369. package/lib/types/ICurvePool_2.sol/ICurvePool2Assets.d.ts +0 -590
  370. package/lib/types/ICurvePool_2.sol/ICurvePool2Assets.js +0 -2
  371. package/lib/types/ICurvePool_2.sol/index.d.ts +0 -1
  372. package/lib/types/ICurvePool_2.sol/index.js +0 -2
  373. package/lib/types/ICurvePool_3.sol/ICurvePool3Assets.d.ts +0 -686
  374. package/lib/types/ICurvePool_3.sol/ICurvePool3Assets.js +0 -2
  375. package/lib/types/ICurvePool_3.sol/index.d.ts +0 -1
  376. package/lib/types/ICurvePool_3.sol/index.js +0 -2
  377. package/lib/types/ICurvePool_4.sol/ICurvePool4Assets.d.ts +0 -722
  378. package/lib/types/ICurvePool_4.sol/ICurvePool4Assets.js +0 -2
  379. package/lib/types/ICurvePool_4.sol/index.d.ts +0 -1
  380. package/lib/types/ICurvePool_4.sol/index.js +0 -2
  381. package/lib/types/ICurveV1Adapter.d.ts +0 -614
  382. package/lib/types/ICurveV1Adapter.js +0 -2
  383. package/lib/types/IDaiLikePermit.d.ts +0 -59
  384. package/lib/types/IDaiLikePermit.js +0 -2
  385. package/lib/types/IDataCompressorV2_10.d.ts +0 -511
  386. package/lib/types/IDataCompressorV2_10.js +0 -2
  387. package/lib/types/IDataCompressorV3_00.d.ts +0 -610
  388. package/lib/types/IDataCompressorV3_00.js +0 -2
  389. package/lib/types/IDegenDistributor.sol/IDegenDistributor.d.ts +0 -96
  390. package/lib/types/IDegenDistributor.sol/IDegenDistributor.js +0 -2
  391. package/lib/types/IDegenDistributor.sol/IDegenDistributorEvents.d.ts +0 -53
  392. package/lib/types/IDegenDistributor.sol/IDegenDistributorEvents.js +0 -2
  393. package/lib/types/IDegenDistributor.sol/index.d.ts +0 -2
  394. package/lib/types/IDegenDistributor.sol/index.js +0 -2
  395. package/lib/types/IERC20Metadata.d.ts +0 -166
  396. package/lib/types/IERC20Metadata.js +0 -2
  397. package/lib/types/IERC4626.d.ts +0 -394
  398. package/lib/types/IERC4626.js +0 -2
  399. package/lib/types/IPermit2.d.ts +0 -130
  400. package/lib/types/IPermit2.js +0 -2
  401. package/lib/types/IPoolService.sol/IPoolService.d.ts +0 -392
  402. package/lib/types/IPoolService.sol/IPoolService.js +0 -2
  403. package/lib/types/IPoolService.sol/IPoolServiceEvents.d.ts +0 -162
  404. package/lib/types/IPoolService.sol/IPoolServiceEvents.js +0 -2
  405. package/lib/types/IPoolService.sol/index.d.ts +0 -2
  406. package/lib/types/IPoolService.sol/index.js +0 -2
  407. package/lib/types/IPoolV3.sol/IPoolV3.d.ts +0 -936
  408. package/lib/types/IPoolV3.sol/IPoolV3.js +0 -2
  409. package/lib/types/IPoolV3.sol/IPoolV3Events.d.ts +0 -158
  410. package/lib/types/IPoolV3.sol/IPoolV3Events.js +0 -2
  411. package/lib/types/IPoolV3.sol/index.d.ts +0 -2
  412. package/lib/types/IPoolV3.sol/index.js +0 -2
  413. package/lib/types/IRouter.d.ts +0 -268
  414. package/lib/types/IRouter.js +0 -2
  415. package/lib/types/IUniswapV2Adapter.sol/IUniswapV2Adapter.d.ts +0 -207
  416. package/lib/types/IUniswapV2Adapter.sol/IUniswapV2Adapter.js +0 -2
  417. package/lib/types/IUniswapV2Adapter.sol/IUniswapV2AdapterEvents.d.ts +0 -45
  418. package/lib/types/IUniswapV2Adapter.sol/IUniswapV2AdapterEvents.js +0 -2
  419. package/lib/types/IUniswapV2Adapter.sol/IUniswapV2AdapterExceptions.d.ts +0 -27
  420. package/lib/types/IUniswapV2Adapter.sol/IUniswapV2AdapterExceptions.js +0 -2
  421. package/lib/types/IUniswapV2Adapter.sol/index.d.ts +0 -3
  422. package/lib/types/IUniswapV2Adapter.sol/index.js +0 -2
  423. package/lib/types/IUniswapV3.sol/ISwapRouter.d.ts +0 -198
  424. package/lib/types/IUniswapV3.sol/ISwapRouter.js +0 -2
  425. package/lib/types/IUniswapV3.sol/index.d.ts +0 -1
  426. package/lib/types/IUniswapV3.sol/index.js +0 -2
  427. package/lib/types/IUniswapV3Adapter.sol/IUniswapV3Adapter.d.ts +0 -409
  428. package/lib/types/IUniswapV3Adapter.sol/IUniswapV3Adapter.js +0 -2
  429. package/lib/types/IUniswapV3Adapter.sol/IUniswapV3AdapterEvents.d.ts +0 -47
  430. package/lib/types/IUniswapV3Adapter.sol/IUniswapV3AdapterEvents.js +0 -2
  431. package/lib/types/IUniswapV3Adapter.sol/IUniswapV3AdapterExceptions.d.ts +0 -27
  432. package/lib/types/IUniswapV3Adapter.sol/IUniswapV3AdapterExceptions.js +0 -2
  433. package/lib/types/IUniswapV3Adapter.sol/index.d.ts +0 -3
  434. package/lib/types/IUniswapV3Adapter.sol/index.js +0 -2
  435. package/lib/types/IVersion.d.ts +0 -42
  436. package/lib/types/IVersion.js +0 -2
  437. package/lib/types/IWERC20Zapper.d.ts +0 -166
  438. package/lib/types/IWERC20Zapper.js +0 -2
  439. package/lib/types/IWETH.d.ts +0 -197
  440. package/lib/types/IWETH.js +0 -2
  441. package/lib/types/IWETHGateway.d.ts +0 -90
  442. package/lib/types/IWETHGateway.js +0 -2
  443. package/lib/types/IWETHZapper.d.ts +0 -162
  444. package/lib/types/IWETHZapper.js +0 -2
  445. package/lib/types/IWithdrawalManagerV3.sol/IWithdrawalManagerV3.d.ts +0 -370
  446. package/lib/types/IWithdrawalManagerV3.sol/IWithdrawalManagerV3.js +0 -2
  447. package/lib/types/IWithdrawalManagerV3.sol/IWithdrawalManagerV3Events.d.ts +0 -133
  448. package/lib/types/IWithdrawalManagerV3.sol/IWithdrawalManagerV3Events.js +0 -2
  449. package/lib/types/IWithdrawalManagerV3.sol/index.d.ts +0 -2
  450. package/lib/types/IWithdrawalManagerV3.sol/index.js +0 -2
  451. package/lib/types/IYVault.d.ts +0 -298
  452. package/lib/types/IYVault.js +0 -2
  453. package/lib/types/IstETH.sol/IstETH.d.ts +0 -230
  454. package/lib/types/IstETH.sol/IstETH.js +0 -2
  455. package/lib/types/IstETH.sol/IstETHGetters.d.ts +0 -214
  456. package/lib/types/IstETH.sol/IstETHGetters.js +0 -2
  457. package/lib/types/IstETH.sol/index.d.ts +0 -2
  458. package/lib/types/IstETH.sol/index.js +0 -2
  459. package/lib/types/IwstETH.sol/IwstETH.d.ts +0 -238
  460. package/lib/types/IwstETH.sol/IwstETH.js +0 -2
  461. package/lib/types/IwstETH.sol/IwstETHGetters.d.ts +0 -206
  462. package/lib/types/IwstETH.sol/IwstETHGetters.js +0 -2
  463. package/lib/types/IwstETH.sol/index.d.ts +0 -2
  464. package/lib/types/IwstETH.sol/index.js +0 -2
  465. package/lib/types/IwstETHGateway.sol/IwstETHGateWay.d.ts +0 -70
  466. package/lib/types/IwstETHGateway.sol/IwstETHGateWay.js +0 -2
  467. package/lib/types/IwstETHGateway.sol/index.d.ts +0 -1
  468. package/lib/types/IwstETHGateway.sol/index.js +0 -2
  469. package/lib/types/Ownable.d.ts +0 -89
  470. package/lib/types/Ownable.js +0 -2
  471. package/lib/types/SafeERC20.d.ts +0 -27
  472. package/lib/types/SafeERC20.js +0 -2
  473. package/lib/types/common.d.ts +0 -22
  474. package/lib/types/common.js +0 -2
  475. package/lib/types/factories/AddressProvider__factory.d.ts +0 -321
  476. package/lib/types/factories/AddressProvider__factory.js +0 -430
  477. package/lib/types/factories/Balances.sol/BalanceOps__factory.d.ts +0 -29
  478. package/lib/types/factories/Balances.sol/BalanceOps__factory.js +0 -53
  479. package/lib/types/factories/Balances.sol/index.d.ts +0 -1
  480. package/lib/types/factories/Balances.sol/index.js +0 -8
  481. package/lib/types/factories/Claimable__factory.d.ts +0 -78
  482. package/lib/types/factories/Claimable__factory.js +0 -114
  483. package/lib/types/factories/Errors__factory.d.ts +0 -351
  484. package/lib/types/factories/Errors__factory.js +0 -471
  485. package/lib/types/factories/IAdapter__factory.d.ts +0 -58
  486. package/lib/types/factories/IAdapter__factory.js +0 -84
  487. package/lib/types/factories/IAddressProvider.sol/IAddressProviderEvents__factory.d.ts +0 -23
  488. package/lib/types/factories/IAddressProvider.sol/IAddressProviderEvents__factory.js +0 -38
  489. package/lib/types/factories/IAddressProvider.sol/IAddressProvider__factory.d.ts +0 -133
  490. package/lib/types/factories/IAddressProvider.sol/IAddressProvider__factory.js +0 -181
  491. package/lib/types/factories/IAddressProvider.sol/index.d.ts +0 -2
  492. package/lib/types/factories/IAddressProvider.sol/index.js +0 -10
  493. package/lib/types/factories/IAddressProviderV3.sol/IAddressProviderV3Events__factory.d.ts +0 -28
  494. package/lib/types/factories/IAddressProviderV3.sol/IAddressProviderV3Events__factory.js +0 -44
  495. package/lib/types/factories/IAddressProviderV3.sol/IAddressProviderV3__factory.d.ts +0 -92
  496. package/lib/types/factories/IAddressProviderV3.sol/IAddressProviderV3__factory.js +0 -128
  497. package/lib/types/factories/IAddressProviderV3.sol/index.d.ts +0 -2
  498. package/lib/types/factories/IAddressProviderV3.sol/index.js +0 -10
  499. package/lib/types/factories/IAirdropDistributor.sol/IAirdropDistributorEvents__factory.d.ts +0 -63
  500. package/lib/types/factories/IAirdropDistributor.sol/IAirdropDistributorEvents__factory.js +0 -88
  501. package/lib/types/factories/IAirdropDistributor.sol/IAirdropDistributor__factory.d.ts +0 -119
  502. package/lib/types/factories/IAirdropDistributor.sol/index.d.ts +0 -2
  503. package/lib/types/factories/IAirdropDistributor.sol/index.js +0 -10
  504. package/lib/types/factories/IBaseRewardPool__factory.d.ts +0 -398
  505. package/lib/types/factories/IBaseRewardPool__factory.js +0 -534
  506. package/lib/types/factories/IConvexToken__factory.d.ts +0 -198
  507. package/lib/types/factories/IConvexToken__factory.js +0 -267
  508. package/lib/types/factories/IConvexV1BaseRewardPoolAdapter__factory.d.ts +0 -254
  509. package/lib/types/factories/IConvexV1BaseRewardPoolAdapter__factory.js +0 -341
  510. package/lib/types/factories/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapterEvents__factory.d.ts +0 -23
  511. package/lib/types/factories/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapterEvents__factory.js +0 -38
  512. package/lib/types/factories/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter__factory.d.ts +0 -181
  513. package/lib/types/factories/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter__factory.js +0 -245
  514. package/lib/types/factories/IConvexV1BoosterAdapter.sol/index.d.ts +0 -2
  515. package/lib/types/factories/IConvexV1BoosterAdapter.sol/index.js +0 -10
  516. package/lib/types/factories/ICreditConfiguratorV2.sol/ICreditConfiguratorV2Events__factory.d.ts +0 -268
  517. package/lib/types/factories/ICreditConfiguratorV2.sol/ICreditConfiguratorV2Events__factory.js +0 -353
  518. package/lib/types/factories/ICreditConfiguratorV2.sol/ICreditConfiguratorV2Exceptions__factory.d.ts +0 -44
  519. package/lib/types/factories/ICreditConfiguratorV2.sol/ICreditConfiguratorV2Exceptions__factory.js +0 -64
  520. package/lib/types/factories/ICreditConfiguratorV2.sol/ICreditConfiguratorV2__factory.d.ts +0 -576
  521. package/lib/types/factories/ICreditConfiguratorV2.sol/ICreditConfiguratorV2__factory.js +0 -749
  522. package/lib/types/factories/ICreditConfiguratorV2.sol/index.d.ts +0 -3
  523. package/lib/types/factories/ICreditConfiguratorV2.sol/index.js +0 -12
  524. package/lib/types/factories/ICreditConfiguratorV3.sol/ICreditConfiguratorV3Events__factory.d.ts +0 -273
  525. package/lib/types/factories/ICreditConfiguratorV3.sol/ICreditConfiguratorV3Events__factory.js +0 -357
  526. package/lib/types/factories/ICreditConfiguratorV3.sol/ICreditConfiguratorV3__factory.d.ts +0 -605
  527. package/lib/types/factories/ICreditConfiguratorV3.sol/index.d.ts +0 -2
  528. package/lib/types/factories/ICreditConfiguratorV3.sol/index.js +0 -10
  529. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2Events__factory.d.ts +0 -263
  530. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2Events__factory.js +0 -340
  531. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2Exceptions__factory.d.ts +0 -140
  532. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2Exceptions__factory.js +0 -185
  533. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2Extended__factory.d.ts +0 -81
  534. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2Extended__factory.js +0 -114
  535. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2V2__factory.d.ts +0 -26
  536. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2V2__factory.js +0 -42
  537. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2__factory.d.ts +0 -901
  538. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2__factory.js +0 -1163
  539. package/lib/types/factories/ICreditFacadeV2.sol/index.d.ts +0 -5
  540. package/lib/types/factories/ICreditFacadeV2.sol/index.js +0 -16
  541. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3Events__factory.d.ts +0 -188
  542. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3Events__factory.js +0 -244
  543. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3__factory.d.ts +0 -617
  544. package/lib/types/factories/ICreditFacadeV3.sol/index.d.ts +0 -2
  545. package/lib/types/factories/ICreditFacadeV3.sol/index.js +0 -10
  546. package/lib/types/factories/ICreditFacadeV3Multicall__factory.d.ts +0 -200
  547. package/lib/types/factories/ICreditFacadeV3Multicall__factory.js +0 -267
  548. package/lib/types/factories/ICreditManagerV2.sol/ICreditManagerV2Events__factory.d.ts +0 -33
  549. package/lib/types/factories/ICreditManagerV2.sol/ICreditManagerV2Events__factory.js +0 -51
  550. package/lib/types/factories/ICreditManagerV2.sol/ICreditManagerV2Exceptions__factory.d.ts +0 -60
  551. package/lib/types/factories/ICreditManagerV2.sol/ICreditManagerV2Exceptions__factory.js +0 -84
  552. package/lib/types/factories/ICreditManagerV2.sol/ICreditManagerV2__factory.d.ts +0 -707
  553. package/lib/types/factories/ICreditManagerV2.sol/ICreditManagerV2__factory.js +0 -932
  554. package/lib/types/factories/ICreditManagerV2.sol/index.d.ts +0 -3
  555. package/lib/types/factories/ICreditManagerV2.sol/index.js +0 -12
  556. package/lib/types/factories/ICreditManagerV3.sol/ICreditManagerV3Events__factory.d.ts +0 -18
  557. package/lib/types/factories/ICreditManagerV3.sol/ICreditManagerV3Events__factory.js +0 -32
  558. package/lib/types/factories/ICreditManagerV3.sol/ICreditManagerV3__factory.d.ts +0 -1015
  559. package/lib/types/factories/ICreditManagerV3.sol/ICreditManagerV3__factory.js +0 -1331
  560. package/lib/types/factories/ICreditManagerV3.sol/index.d.ts +0 -2
  561. package/lib/types/factories/ICreditManagerV3.sol/index.js +0 -10
  562. package/lib/types/factories/ICurvePool_2.sol/ICurvePool2Assets__factory.d.ts +0 -678
  563. package/lib/types/factories/ICurvePool_2.sol/ICurvePool2Assets__factory.js +0 -897
  564. package/lib/types/factories/ICurvePool_2.sol/index.d.ts +0 -1
  565. package/lib/types/factories/ICurvePool_2.sol/index.js +0 -8
  566. package/lib/types/factories/ICurvePool_3.sol/ICurvePool3Assets__factory.d.ts +0 -678
  567. package/lib/types/factories/ICurvePool_3.sol/ICurvePool3Assets__factory.js +0 -897
  568. package/lib/types/factories/ICurvePool_3.sol/index.d.ts +0 -1
  569. package/lib/types/factories/ICurvePool_3.sol/index.js +0 -8
  570. package/lib/types/factories/ICurvePool_4.sol/ICurvePool4Assets__factory.d.ts +0 -678
  571. package/lib/types/factories/ICurvePool_4.sol/ICurvePool4Assets__factory.js +0 -897
  572. package/lib/types/factories/ICurvePool_4.sol/index.d.ts +0 -1
  573. package/lib/types/factories/ICurvePool_4.sol/index.js +0 -8
  574. package/lib/types/factories/ICurvePool__factory.d.ts +0 -566
  575. package/lib/types/factories/ICurvePool__factory.js +0 -751
  576. package/lib/types/factories/ICurveV1Adapter__factory.d.ts +0 -664
  577. package/lib/types/factories/ICurveV1Adapter__factory.js +0 -875
  578. package/lib/types/factories/ICurveV1_2AssetsAdapter__factory.d.ts +0 -730
  579. package/lib/types/factories/ICurveV1_2AssetsAdapter__factory.js +0 -962
  580. package/lib/types/factories/ICurveV1_3AssetsAdapter__factory.d.ts +0 -730
  581. package/lib/types/factories/ICurveV1_3AssetsAdapter__factory.js +0 -962
  582. package/lib/types/factories/ICurveV1_4AssetsAdapter__factory.d.ts +0 -730
  583. package/lib/types/factories/ICurveV1_4AssetsAdapter__factory.js +0 -962
  584. package/lib/types/factories/IDaiLikePermit__factory.d.ts +0 -46
  585. package/lib/types/factories/IDaiLikePermit__factory.js +0 -67
  586. package/lib/types/factories/IDataCompressorV2_10__factory.d.ts +0 -1222
  587. package/lib/types/factories/IDataCompressorV2_10__factory.js +0 -1565
  588. package/lib/types/factories/IDataCompressorV3_00__factory.d.ts +0 -1490
  589. package/lib/types/factories/IDataCompressorV3_00__factory.js +0 -1906
  590. package/lib/types/factories/IDegenDistributor.sol/IDegenDistributorEvents__factory.d.ts +0 -38
  591. package/lib/types/factories/IDegenDistributor.sol/IDegenDistributorEvents__factory.js +0 -57
  592. package/lib/types/factories/IDegenDistributor.sol/IDegenDistributor__factory.d.ts +0 -84
  593. package/lib/types/factories/IDegenDistributor.sol/IDegenDistributor__factory.js +0 -117
  594. package/lib/types/factories/IDegenDistributor.sol/index.d.ts +0 -2
  595. package/lib/types/factories/IDegenDistributor.sol/index.js +0 -10
  596. package/lib/types/factories/IERC20Metadata__factory.d.ts +0 -178
  597. package/lib/types/factories/IERC20Metadata__factory.js +0 -241
  598. package/lib/types/factories/IERC20Permit__factory.d.ts +0 -66
  599. package/lib/types/factories/IERC20Permit__factory.js +0 -94
  600. package/lib/types/factories/IERC20__factory.d.ts +0 -148
  601. package/lib/types/factories/IERC20__factory.js +0 -202
  602. package/lib/types/factories/IERC4626__factory.d.ts +0 -473
  603. package/lib/types/factories/IERC4626__factory.js +0 -631
  604. package/lib/types/factories/IInterestRateModel__factory.d.ts +0 -36
  605. package/lib/types/factories/IInterestRateModel__factory.js +0 -56
  606. package/lib/types/factories/ILidoV1Adapter__factory.d.ts +0 -140
  607. package/lib/types/factories/ILidoV1Adapter__factory.js +0 -191
  608. package/lib/types/factories/IOffchainOracle__factory.d.ts +0 -48
  609. package/lib/types/factories/IOffchainOracle__factory.js +0 -72
  610. package/lib/types/factories/IPermit2__factory.d.ts +0 -113
  611. package/lib/types/factories/IPermit2__factory.js +0 -155
  612. package/lib/types/factories/IPoolService.sol/IPoolServiceEvents__factory.d.ts +0 -163
  613. package/lib/types/factories/IPoolService.sol/IPoolServiceEvents__factory.js +0 -215
  614. package/lib/types/factories/IPoolService.sol/IPoolService__factory.d.ts +0 -437
  615. package/lib/types/factories/IPoolService.sol/IPoolService__factory.js +0 -574
  616. package/lib/types/factories/IPoolService.sol/index.d.ts +0 -2
  617. package/lib/types/factories/IPoolService.sol/index.js +0 -10
  618. package/lib/types/factories/IPoolV3.sol/IPoolV3Events__factory.d.ts +0 -153
  619. package/lib/types/factories/IPoolV3.sol/IPoolV3Events__factory.js +0 -203
  620. package/lib/types/factories/IPoolV3.sol/IPoolV3__factory.d.ts +0 -1068
  621. package/lib/types/factories/IPoolV3.sol/IPoolV3__factory.js +0 -1402
  622. package/lib/types/factories/IPoolV3.sol/index.d.ts +0 -2
  623. package/lib/types/factories/IPoolV3.sol/index.js +0 -10
  624. package/lib/types/factories/IPriceOracleBase__factory.d.ts +0 -104
  625. package/lib/types/factories/IPriceOracleBase__factory.js +0 -147
  626. package/lib/types/factories/IRouter__factory.d.ts +0 -382
  627. package/lib/types/factories/IRouter__factory.js +0 -507
  628. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2AdapterEvents__factory.d.ts +0 -28
  629. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2AdapterEvents__factory.js +0 -44
  630. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2AdapterExceptions__factory.d.ts +0 -12
  631. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2AdapterExceptions__factory.js +0 -24
  632. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2Adapter__factory.d.ts +0 -217
  633. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2Adapter__factory.js +0 -290
  634. package/lib/types/factories/IUniswapV2Adapter.sol/index.d.ts +0 -3
  635. package/lib/types/factories/IUniswapV2Adapter.sol/index.js +0 -12
  636. package/lib/types/factories/IUniswapV3.sol/ISwapRouter__factory.d.ts +0 -172
  637. package/lib/types/factories/IUniswapV3.sol/ISwapRouter__factory.js +0 -233
  638. package/lib/types/factories/IUniswapV3.sol/index.d.ts +0 -1
  639. package/lib/types/factories/IUniswapV3.sol/index.js +0 -8
  640. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3AdapterEvents__factory.d.ts +0 -33
  641. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3AdapterEvents__factory.js +0 -50
  642. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3AdapterExceptions__factory.d.ts +0 -12
  643. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3AdapterExceptions__factory.js +0 -24
  644. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3Adapter__factory.d.ts +0 -390
  645. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3Adapter__factory.js +0 -515
  646. package/lib/types/factories/IUniswapV3Adapter.sol/index.d.ts +0 -3
  647. package/lib/types/factories/IUniswapV3Adapter.sol/index.js +0 -12
  648. package/lib/types/factories/IVersion__factory.d.ts +0 -18
  649. package/lib/types/factories/IVersion__factory.js +0 -32
  650. package/lib/types/factories/IWERC20Zapper__factory.d.ts +0 -176
  651. package/lib/types/factories/IWERC20Zapper__factory.js +0 -240
  652. package/lib/types/factories/IWETHGateway__factory.d.ts +0 -58
  653. package/lib/types/factories/IWETHGateway__factory.js +0 -83
  654. package/lib/types/factories/IWETHZapper__factory.d.ts +0 -168
  655. package/lib/types/factories/IWETHZapper__factory.js +0 -230
  656. package/lib/types/factories/IWETH__factory.d.ts +0 -194
  657. package/lib/types/factories/IWETH__factory.js +0 -260
  658. package/lib/types/factories/IWithdrawalManagerV3.sol/IWithdrawalManagerV3Events__factory.d.ts +0 -143
  659. package/lib/types/factories/IWithdrawalManagerV3.sol/IWithdrawalManagerV3Events__factory.js +0 -188
  660. package/lib/types/factories/IWithdrawalManagerV3.sol/IWithdrawalManagerV3__factory.d.ts +0 -366
  661. package/lib/types/factories/IWithdrawalManagerV3.sol/IWithdrawalManagerV3__factory.js +0 -479
  662. package/lib/types/factories/IWithdrawalManagerV3.sol/index.d.ts +0 -2
  663. package/lib/types/factories/IWithdrawalManagerV3.sol/index.js +0 -10
  664. package/lib/types/factories/IYVault__factory.d.ts +0 -304
  665. package/lib/types/factories/IYVault__factory.js +0 -408
  666. package/lib/types/factories/IYearnV2Adapter__factory.d.ts +0 -222
  667. package/lib/types/factories/IYearnV2Adapter__factory.js +0 -299
  668. package/lib/types/factories/IZapper__factory.d.ts +0 -136
  669. package/lib/types/factories/IZapper__factory.js +0 -187
  670. package/lib/types/factories/IstETH.sol/IstETHGetters__factory.d.ts +0 -250
  671. package/lib/types/factories/IstETH.sol/IstETHGetters__factory.js +0 -337
  672. package/lib/types/factories/IstETH.sol/IstETH__factory.d.ts +0 -264
  673. package/lib/types/factories/IstETH.sol/IstETH__factory.js +0 -356
  674. package/lib/types/factories/IstETH.sol/index.d.ts +0 -2
  675. package/lib/types/factories/IstETH.sol/index.js +0 -10
  676. package/lib/types/factories/IwstETH.sol/IwstETHGetters__factory.d.ts +0 -236
  677. package/lib/types/factories/IwstETH.sol/IwstETHGetters__factory.js +0 -318
  678. package/lib/types/factories/IwstETH.sol/IwstETH__factory.d.ts +0 -264
  679. package/lib/types/factories/IwstETH.sol/IwstETH__factory.js +0 -356
  680. package/lib/types/factories/IwstETH.sol/index.d.ts +0 -2
  681. package/lib/types/factories/IwstETH.sol/index.js +0 -10
  682. package/lib/types/factories/IwstETHGateway.sol/IwstETHGateWay__factory.d.ts +0 -48
  683. package/lib/types/factories/IwstETHGateway.sol/IwstETHGateWay__factory.js +0 -71
  684. package/lib/types/factories/IwstETHGateway.sol/index.d.ts +0 -1
  685. package/lib/types/factories/IwstETHGateway.sol/index.js +0 -8
  686. package/lib/types/factories/IwstETHV1Adapter__factory.d.ts +0 -152
  687. package/lib/types/factories/IwstETHV1Adapter__factory.js +0 -207
  688. package/lib/types/factories/Ownable__factory.d.ts +0 -49
  689. package/lib/types/factories/Ownable__factory.js +0 -71
  690. package/lib/types/factories/SafeERC20__factory.d.ts +0 -49
  691. package/lib/types/factories/SafeERC20__factory.js +0 -77
  692. package/lib/types/factories/index.d.ts +0 -61
  693. package/lib/types/factories/index.js +0 -128
  694. package/lib/utils/repeater.d.ts +0 -1
  695. package/lib/utils/repeater.js +0 -19
  696. package/lib/watchers/creditAccountWatcher.d.ts +0 -36
  697. package/lib/watchers/creditAccountWatcher.js +0 -238
  698. package/lib/watchers/creditAccountWatcher.spec.d.ts +0 -1
  699. package/lib/watchers/creditAccountWatcher.spec.js +0 -208
  700. package/lib/watchers/creditManagerWatcher.d.ts +0 -8
  701. package/lib/watchers/creditManagerWatcher.js +0 -37
  702. package/lib/watchers/creditManagerWatcher.spec.d.ts +0 -1
  703. package/lib/watchers/creditManagerWatcher.spec.js +0 -107
  704. /package/lib/core/{rewardConvex.spec.d.ts → gaugeMath.spec.d.ts} +0 -0
  705. /package/lib/core/{strategy.spec.d.ts → rewardClaimer/rewardConvex.spec.d.ts} +0 -0
  706. /package/lib/{core/errors.js → payload/bot.js} +0 -0
  707. /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,41 @@
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
+ }
11
+ export interface CreditAccountDataPayload {
12
+ isSuccessful: boolean;
13
+ priceFeedsNeeded: readonly Address[];
14
+ addr: Address;
15
+ borrower: Address;
16
+ creditManager: Address;
17
+ creditFacade: Address;
18
+ underlying: Address;
19
+ debt: bigint;
20
+ accruedInterest: bigint;
21
+ accruedFees: bigint;
22
+ totalDebtUSD: bigint;
23
+ totalValue: bigint;
24
+ totalValueUSD: bigint;
25
+ twvUSD: bigint;
26
+ enabledTokensMask: bigint;
27
+ healthFactor: bigint;
28
+ baseBorrowRate: bigint;
29
+ balances: readonly {
30
+ token: Address;
31
+ balance: bigint;
32
+ isForbidden: boolean;
33
+ isEnabled: boolean;
34
+ isQuoted: boolean;
35
+ quota: bigint;
36
+ quotaRate: number;
37
+ }[];
38
+ cfVersion: bigint;
39
+ expirationDate: number;
40
+ activeBots: readonly Address[];
41
+ }