@gearbox-protocol/sdk 3.0.0-next.19 → 3.0.0-next.191

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 (738) hide show
  1. package/contracts/index.sol +37 -5
  2. package/lib/apy/auraAPY.d.ts +1 -0
  3. package/lib/apy/auraAPY.js +23 -0
  4. package/lib/apy/auraAbi.d.ts +17 -0
  5. package/lib/apy/auraAbi.js +26 -0
  6. package/lib/apy/convexAPY.d.ts +10 -7
  7. package/lib/apy/convexAPY.js +32 -24
  8. package/lib/apy/curveAPY.d.ts +54 -5
  9. package/lib/apy/curveAPY.js +128 -72
  10. package/lib/apy/defiLamaAPY.d.ts +3 -0
  11. package/lib/apy/defiLamaAPY.js +69 -0
  12. package/lib/apy/index.d.ts +13 -4
  13. package/lib/apy/index.js +59 -5
  14. package/lib/apy/lidoAPY.d.ts +4 -1
  15. package/lib/apy/lidoAPY.js +7 -10
  16. package/lib/apy/yearnAPY.d.ts +3 -3
  17. package/lib/apy/yearnAPY.js +15 -12
  18. package/lib/contracts/contractsRegister.d.ts +13 -6
  19. package/lib/contracts/contractsRegister.js +47 -2
  20. package/lib/core/assets.js +2 -2
  21. package/lib/core/bot.d.ts +11 -0
  22. package/lib/core/bot.js +23 -0
  23. package/lib/core/creditAccount.d.ts +67 -22
  24. package/lib/core/creditAccount.js +234 -107
  25. package/lib/core/creditAccount.spec.js +850 -93
  26. package/lib/core/creditManager.d.ts +19 -5
  27. package/lib/core/creditManager.js +111 -49
  28. package/lib/core/creditSession.d.ts +24 -3
  29. package/lib/core/creditSession.js +32 -7
  30. package/lib/core/endpoint.d.ts +11 -0
  31. package/lib/core/endpoint.js +37 -0
  32. package/lib/core/eventOrTx.d.ts +2 -3
  33. package/lib/core/events.js +7 -7
  34. package/lib/core/gauge.d.ts +26 -0
  35. package/lib/core/gauge.js +63 -0
  36. package/lib/core/gaugeMath.d.ts +40 -0
  37. package/lib/core/gaugeMath.js +105 -0
  38. package/lib/core/gaugeMath.spec.js +388 -0
  39. package/lib/core/{pool/data.d.ts → pool.d.ts} +21 -13
  40. package/lib/core/{pool/data.js → pool.js} +82 -61
  41. package/lib/core/rewardClaimer.d.ts +6 -4
  42. package/lib/core/rewardConvex.d.ts +27 -11
  43. package/lib/core/rewardConvex.js +197 -56
  44. package/lib/core/rewardConvex.spec.js +32 -69
  45. package/lib/core/strategy.d.ts +18 -21
  46. package/lib/core/strategy.js +14 -34
  47. package/lib/core/trade.d.ts +11 -12
  48. package/lib/core/trade.js +36 -28
  49. package/lib/core/transactions.d.ts +131 -18
  50. package/lib/core/transactions.js +240 -119
  51. package/lib/gearboxRewards/abi.d.ts +2 -0
  52. package/lib/gearboxRewards/abi.js +54 -0
  53. package/lib/gearboxRewards/api.d.ts +80 -0
  54. package/lib/gearboxRewards/api.js +261 -0
  55. package/lib/gearboxRewards/apy.d.ts +37 -0
  56. package/lib/gearboxRewards/apy.js +65 -0
  57. package/lib/gearboxRewards/extraAPY.d.ts +32 -0
  58. package/lib/gearboxRewards/extraAPY.js +132 -0
  59. package/lib/gearboxRewards/index.d.ts +4 -0
  60. package/lib/gearboxRewards/index.js +20 -0
  61. package/lib/index.d.ts +11 -5
  62. package/lib/index.js +12 -6
  63. package/lib/parsers/ERC20Parser.js +1 -1
  64. package/lib/parsers/aaveV2LendingPoolAdapterParser.d.ts +7 -0
  65. package/lib/parsers/aaveV2LendingPoolAdapterParser.js +21 -0
  66. package/lib/parsers/aaveV2WrappedATokenAdapterParser.d.ts +7 -0
  67. package/lib/parsers/aaveV2WrappedATokenAdapterParser.js +21 -0
  68. package/lib/parsers/abstractParser.d.ts +11 -9
  69. package/lib/parsers/abstractParser.js +14 -2
  70. package/lib/parsers/addressProviderParser.js +1 -1
  71. package/lib/parsers/balancerV2VaultParser.d.ts +7 -0
  72. package/lib/parsers/balancerV2VaultParser.js +34 -0
  73. package/lib/parsers/compoundV2CTokenAdapterParser.d.ts +7 -0
  74. package/lib/parsers/compoundV2CTokenAdapterParser.js +21 -0
  75. package/lib/parsers/convexBaseRewardPoolAdapterParser.js +13 -9
  76. package/lib/parsers/convexBaseRewardPoolAdapterParser.spec.js +9 -6
  77. package/lib/parsers/convexBoosterAdapterParser.js +7 -7
  78. package/lib/parsers/convexBoosterAdapterParser.spec.js +4 -4
  79. package/lib/parsers/convextRewardPoolParser.js +1 -1
  80. package/lib/parsers/creditFacadeParser.js +34 -7
  81. package/lib/parsers/creditFacadeParser.spec.js +2 -3
  82. package/lib/parsers/creditManagerParser.js +1 -1
  83. package/lib/parsers/curveAdapterParser.js +11 -11
  84. package/lib/parsers/curveAdapterParser.spec.js +6 -2
  85. package/lib/parsers/erc626AdapterParser.d.ts +7 -0
  86. package/lib/parsers/erc626AdapterParser.js +21 -0
  87. package/lib/parsers/iParser.d.ts +1 -1
  88. package/lib/parsers/lidoAdapterParser.js +4 -3
  89. package/lib/parsers/lidoAdapterParser.spec.js +2 -2
  90. package/lib/parsers/lidoSTETHParser.js +1 -1
  91. package/lib/parsers/poolParser.js +1 -1
  92. package/lib/parsers/priceOracleParser.js +1 -1
  93. package/lib/parsers/txParser.d.ts +17 -11
  94. package/lib/parsers/txParser.js +41 -4
  95. package/lib/parsers/uniV2AdapterParser.js +5 -4
  96. package/lib/parsers/uniV2AdapterParser.spec.js +3 -2
  97. package/lib/parsers/uniV3AdapterParser.js +9 -7
  98. package/lib/parsers/uniV3AdapterParser.spec.js +3 -2
  99. package/lib/parsers/wstETHAdapterParser.js +7 -5
  100. package/lib/parsers/wstETHAdapterParser.spec.js +4 -4
  101. package/lib/parsers/yearnAdapterParser.spec.js +4 -4
  102. package/lib/parsers/yearnV2AdapterParser.js +14 -4
  103. package/lib/pathfinder/balancerVault.d.ts +33 -0
  104. package/lib/pathfinder/balancerVault.js +59 -0
  105. package/lib/pathfinder/core.d.ts +7 -9
  106. package/lib/pathfinder/index.d.ts +4 -0
  107. package/lib/pathfinder/index.js +20 -0
  108. package/lib/pathfinder/pathOptions.d.ts +3 -3
  109. package/lib/pathfinder/pathOptions.js +34 -18
  110. package/lib/pathfinder/pathOptions.spec.js +3 -6
  111. package/lib/pathfinder/pathfinder.d.ts +47 -19
  112. package/lib/pathfinder/pathfinder.js +71 -60
  113. package/lib/pathfinder/pathfinder.spec.js +23 -10
  114. package/lib/pathfinder/utils.d.ts +35 -0
  115. package/lib/pathfinder/utils.js +181 -0
  116. package/lib/pathfinder/v1/core.d.ts +16 -0
  117. package/lib/pathfinder/v1/pathfinderv1.d.ts +46 -0
  118. package/lib/pathfinder/v1/pathfinderv1.js +154 -0
  119. package/lib/pathfinder/v1/pathfinderv1.spec.js +39 -0
  120. package/lib/payload/bot.d.ts +13 -0
  121. package/lib/payload/creditAccount.d.ts +3 -4
  122. package/lib/payload/creditManager.d.ts +7 -4
  123. package/lib/payload/creditSession.d.ts +15 -1
  124. package/lib/payload/gauge.d.ts +11 -0
  125. package/lib/payload/pool.d.ts +8 -2
  126. package/lib/payload/token.d.ts +3 -1
  127. package/lib/redstone/api.d.ts +44 -0
  128. package/lib/redstone/api.js +344 -0
  129. package/lib/redstone/index.d.ts +1 -0
  130. package/lib/{core/pool → redstone}/index.js +1 -1
  131. package/lib/tokens/tokenData.d.ts +5 -4
  132. package/lib/tokens/tokenData.js +24 -5
  133. package/lib/types/AddressProvider.d.ts +151 -332
  134. package/lib/types/Balances.sol/BalanceOps.d.ts +15 -22
  135. package/lib/types/CalldataExtractor.d.ts +28 -0
  136. package/lib/types/Claimable.d.ts +46 -97
  137. package/lib/types/CompositePriceFeed.d.ts +90 -0
  138. package/lib/types/ContractsRegisterTrait.d.ts +25 -0
  139. package/lib/types/ERC20.d.ts +169 -0
  140. package/lib/types/Errors.d.ts +106 -227
  141. package/lib/types/FarmAccounting.d.ts +20 -0
  142. package/lib/types/FarmAccounting.js +2 -0
  143. package/lib/types/IAaveV2_LendingPoolAdapter.d.ts +127 -0
  144. package/lib/types/IAaveV2_LendingPoolAdapter.js +2 -0
  145. package/lib/types/IAaveV2_WrappedATokenAdapter.d.ts +205 -0
  146. package/lib/types/IAaveV2_WrappedATokenAdapter.js +2 -0
  147. package/lib/types/IAdapter.d.ts +26 -59
  148. package/lib/types/IAddressProvider.sol/IAddressProvider.d.ts +53 -108
  149. package/lib/types/IAddressProvider.sol/IAddressProviderEvents.d.ts +29 -35
  150. package/lib/types/IAddressProviderV3.sol/IAddressProviderV3.d.ts +79 -85
  151. package/lib/types/IAddressProviderV3.sol/IAddressProviderV3Events.d.ts +34 -37
  152. package/lib/types/IAirdropDistributor.sol/IAirdropDistributor.d.ts +101 -109
  153. package/lib/types/IAirdropDistributor.sol/IAirdropDistributorEvents.d.ts +76 -64
  154. package/lib/types/IBalancerV2Vault.sol/IBalancerV2Vault.d.ts +287 -0
  155. package/lib/types/IBalancerV2Vault.sol/IBalancerV2Vault.js +2 -0
  156. package/lib/types/IBalancerV2Vault.sol/IBalancerV2VaultGetters.d.ts +87 -0
  157. package/lib/types/IBalancerV2Vault.sol/IBalancerV2VaultGetters.js +2 -0
  158. package/lib/types/IBalancerV2Vault.sol/index.d.ts +2 -0
  159. package/lib/types/IBalancerV2Vault.sol/index.js +2 -0
  160. package/lib/types/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapter.d.ts +415 -0
  161. package/lib/types/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapter.js +2 -0
  162. package/lib/types/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterEvents.d.ts +37 -0
  163. package/lib/types/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterEvents.js +2 -0
  164. package/lib/types/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterExceptions.d.ts +20 -0
  165. package/lib/types/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterExceptions.js +2 -0
  166. package/lib/types/IBalancerV2VaultAdapter.sol/index.d.ts +3 -0
  167. package/lib/types/IBalancerV2VaultAdapter.sol/index.js +2 -0
  168. package/lib/types/IBaseRewardPool.d.ts +143 -320
  169. package/lib/types/IBotListV3.sol/IBotListV3.d.ts +300 -0
  170. package/lib/types/IBotListV3.sol/IBotListV3.js +2 -0
  171. package/lib/types/IBotListV3.sol/IBotListV3Events.d.ts +127 -0
  172. package/lib/types/IBotListV3.sol/IBotListV3Events.js +2 -0
  173. package/lib/types/IBotListV3.sol/index.d.ts +2 -0
  174. package/lib/types/IBotListV3.sol/index.js +2 -0
  175. package/lib/types/ICompoundV2_CTokenAdapter.sol/ICompoundV2_CTokenAdapter.d.ts +147 -0
  176. package/lib/types/ICompoundV2_CTokenAdapter.sol/ICompoundV2_CTokenAdapter.js +2 -0
  177. package/lib/types/ICompoundV2_CTokenAdapter.sol/ICompoundV2_Exceptions.d.ts +20 -0
  178. package/lib/types/ICompoundV2_CTokenAdapter.sol/ICompoundV2_Exceptions.js +2 -0
  179. package/lib/types/ICompoundV2_CTokenAdapter.sol/index.d.ts +2 -0
  180. package/lib/types/ICompoundV2_CTokenAdapter.sol/index.js +2 -0
  181. package/lib/types/IContractsRegister.sol/IContractsRegister.d.ts +87 -0
  182. package/lib/types/IContractsRegister.sol/IContractsRegister.js +2 -0
  183. package/lib/types/IContractsRegister.sol/IContractsRegisterEvents.d.ts +50 -0
  184. package/lib/types/IContractsRegister.sol/IContractsRegisterEvents.js +2 -0
  185. package/lib/types/IContractsRegister.sol/index.d.ts +2 -0
  186. package/lib/types/IContractsRegister.sol/index.js +2 -0
  187. package/lib/types/IControllerTimelockV3.sol/IControllerTimelockV3.d.ts +416 -0
  188. package/lib/types/IControllerTimelockV3.sol/IControllerTimelockV3.js +2 -0
  189. package/lib/types/IControllerTimelockV3.sol/IControllerTimelockV3Events.d.ts +97 -0
  190. package/lib/types/IControllerTimelockV3.sol/IControllerTimelockV3Events.js +2 -0
  191. package/lib/types/IControllerTimelockV3.sol/index.d.ts +2 -0
  192. package/lib/types/IControllerTimelockV3.sol/index.js +2 -0
  193. package/lib/types/IConvexToken.d.ts +128 -157
  194. package/lib/types/IConvexV1BaseRewardPoolAdapter.d.ts +183 -250
  195. package/lib/types/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter.d.ts +132 -183
  196. package/lib/types/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapterEvents.d.ts +29 -35
  197. package/lib/types/ICreditAccountV3.sol/ICreditAccountBase.d.ts +59 -0
  198. package/lib/types/ICreditAccountV3.sol/ICreditAccountBase.js +2 -0
  199. package/lib/types/ICreditAccountV3.sol/ICreditAccountV3.d.ts +77 -0
  200. package/lib/types/ICreditAccountV3.sol/ICreditAccountV3.js +2 -0
  201. package/lib/types/ICreditAccountV3.sol/index.d.ts +2 -0
  202. package/lib/types/ICreditAccountV3.sol/index.js +2 -0
  203. package/lib/types/ICreditConfiguratorV2.sol/ICreditConfiguratorV2.d.ts +526 -579
  204. package/lib/types/ICreditConfiguratorV2.sol/ICreditConfiguratorV2Events.d.ts +342 -264
  205. package/lib/types/ICreditConfiguratorV2.sol/ICreditConfiguratorV2Exceptions.d.ts +15 -22
  206. package/lib/types/ICreditConfiguratorV3.sol/ICreditConfiguratorV3.d.ts +549 -648
  207. package/lib/types/ICreditConfiguratorV3.sol/ICreditConfiguratorV3Events.d.ts +327 -248
  208. package/lib/types/ICreditFacadeV2.sol/ICreditFacadeV2.d.ts +587 -635
  209. package/lib/types/ICreditFacadeV2.sol/ICreditFacadeV2Events.d.ts +294 -239
  210. package/lib/types/ICreditFacadeV2.sol/ICreditFacadeV2Exceptions.d.ts +15 -22
  211. package/lib/types/ICreditFacadeV2.sol/ICreditFacadeV2Extended.d.ts +59 -126
  212. package/lib/types/ICreditFacadeV2.sol/ICreditFacadeV2V2.d.ts +34 -53
  213. package/lib/types/ICreditFacadeV3.sol/ICreditFacadeV3.d.ts +421 -512
  214. package/lib/types/ICreditFacadeV3.sol/ICreditFacadeV3Events.d.ts +202 -152
  215. package/lib/types/ICreditFacadeV3Multicall.d.ts +170 -245
  216. package/lib/types/ICreditManagerV2.sol/ICreditManagerV2.d.ts +438 -567
  217. package/lib/types/ICreditManagerV2.sol/ICreditManagerV2Events.d.ts +43 -46
  218. package/lib/types/ICreditManagerV2.sol/ICreditManagerV2Exceptions.d.ts +15 -22
  219. package/lib/types/ICreditManagerV3.sol/ICreditManagerV3.d.ts +652 -841
  220. package/lib/types/ICreditManagerV3.sol/ICreditManagerV3Events.d.ts +28 -33
  221. package/lib/types/ICurvePool.d.ts +285 -376
  222. package/lib/types/ICurvePool_2.sol/ICurvePool2Assets.d.ts +365 -511
  223. package/lib/types/ICurvePool_3.sol/ICurvePool3Assets.d.ts +370 -607
  224. package/lib/types/ICurvePool_4.sol/ICurvePool4Assets.d.ts +387 -631
  225. package/lib/types/ICurveV1Adapter.d.ts +330 -547
  226. package/lib/types/ICurveV1_2AssetsAdapter.d.ts +387 -628
  227. package/lib/types/ICurveV1_3AssetsAdapter.d.ts +387 -691
  228. package/lib/types/ICurveV1_4AssetsAdapter.d.ts +399 -697
  229. package/lib/types/IDaiLikePermit.d.ts +48 -51
  230. package/lib/types/IDataCompressorV2_1.d.ts +491 -0
  231. package/lib/types/IDataCompressorV2_1.js +2 -0
  232. package/lib/types/IDataCompressorV3.d.ts +581 -0
  233. package/lib/types/IDataCompressorV3.js +2 -0
  234. package/lib/types/IDegenDistributor.sol/IDegenDistributor.d.ts +67 -84
  235. package/lib/types/IDegenDistributor.sol/IDegenDistributorEvents.d.ts +44 -45
  236. package/lib/types/IDegenNFTV2.sol/IDegenNFTV2.d.ts +297 -0
  237. package/lib/types/IDegenNFTV2.sol/IDegenNFTV2.js +2 -0
  238. package/lib/types/IDegenNFTV2.sol/IDegenNFTV2Events.d.ts +64 -0
  239. package/lib/types/IDegenNFTV2.sol/IDegenNFTV2Events.js +2 -0
  240. package/lib/types/IDegenNFTV2.sol/IDegenNFTV2Exceptions.d.ts +20 -0
  241. package/lib/types/IDegenNFTV2.sol/IDegenNFTV2Exceptions.js +2 -0
  242. package/lib/types/IDegenNFTV2.sol/index.d.ts +3 -0
  243. package/lib/types/IDegenNFTV2.sol/index.js +2 -0
  244. package/lib/types/IERC165.d.ts +29 -0
  245. package/lib/types/IERC165.js +2 -0
  246. package/lib/types/IERC20.d.ts +114 -127
  247. package/lib/types/IERC20Metadata.d.ts +120 -145
  248. package/lib/types/IERC20Permit.d.ts +50 -63
  249. package/lib/types/IERC20ZapperDeposits.d.ts +112 -0
  250. package/lib/types/IERC20ZapperDeposits.js +2 -0
  251. package/lib/types/IERC4626.d.ts +277 -353
  252. package/lib/types/IERC4626Adapter.d.ts +173 -0
  253. package/lib/types/IERC4626Adapter.js +2 -0
  254. package/lib/types/IERC721.d.ts +199 -0
  255. package/lib/types/IERC721.js +2 -0
  256. package/lib/types/IERC721Metadata.d.ts +211 -0
  257. package/lib/types/IERC721Metadata.js +2 -0
  258. package/lib/types/IETHZapperDeposits.d.ts +39 -0
  259. package/lib/types/IETHZapperDeposits.js +2 -0
  260. package/lib/types/IFarmingPool.d.ts +245 -0
  261. package/lib/types/IFarmingPool.js +2 -0
  262. package/lib/types/IGasPricer.d.ts +29 -0
  263. package/lib/types/IGasPricer.js +2 -0
  264. package/lib/types/IGaugeV3.sol/IGaugeV3.d.ts +309 -0
  265. package/lib/types/IGaugeV3.sol/IGaugeV3.js +2 -0
  266. package/lib/types/IGaugeV3.sol/IGaugeV3Events.d.ts +144 -0
  267. package/lib/types/IGaugeV3.sol/IGaugeV3Events.js +2 -0
  268. package/lib/types/IGaugeV3.sol/index.d.ts +2 -0
  269. package/lib/types/IGaugeV3.sol/index.js +2 -0
  270. package/lib/types/IGearStakingV3.sol/IGearStakingV3.d.ts +354 -0
  271. package/lib/types/IGearStakingV3.sol/IGearStakingV3.js +2 -0
  272. package/lib/types/IGearStakingV3.sol/IGearStakingV3Events.d.ts +135 -0
  273. package/lib/types/IGearStakingV3.sol/IGearStakingV3Events.js +2 -0
  274. package/lib/types/IGearStakingV3.sol/index.d.ts +2 -0
  275. package/lib/types/IGearStakingV3.sol/index.js +2 -0
  276. package/lib/types/IInterestRateModel.d.ts +31 -42
  277. package/lib/types/ILPPriceFeed.sol/ILPPriceFeed.d.ts +164 -0
  278. package/lib/types/ILPPriceFeed.sol/ILPPriceFeed.js +2 -0
  279. package/lib/types/ILPPriceFeed.sol/ILPPriceFeedEvents.d.ts +51 -0
  280. package/lib/types/ILPPriceFeed.sol/ILPPriceFeedEvents.js +2 -0
  281. package/lib/types/ILPPriceFeed.sol/ILPPriceFeedExceptions.d.ts +20 -0
  282. package/lib/types/ILPPriceFeed.sol/ILPPriceFeedExceptions.js +2 -0
  283. package/lib/types/ILPPriceFeed.sol/index.d.ts +3 -0
  284. package/lib/types/ILPPriceFeed.sol/index.js +2 -0
  285. package/lib/types/ILidoV1Adapter.d.ts +71 -132
  286. package/lib/types/ILinearInterestRateModelV3.d.ts +97 -0
  287. package/lib/types/ILinearInterestRateModelV3.js +2 -0
  288. package/lib/types/IOffchainOracle.d.ts +44 -51
  289. package/lib/types/IPartialLiquidationBotV3.d.ts +154 -0
  290. package/lib/types/IPartialLiquidationBotV3.js +2 -0
  291. package/lib/types/IPermit2.d.ts +91 -103
  292. package/lib/types/IPoolQuotaKeeperV3.sol/IPoolQuotaKeeperV3.d.ts +380 -0
  293. package/lib/types/IPoolQuotaKeeperV3.sol/IPoolQuotaKeeperV3.js +2 -0
  294. package/lib/types/IPoolQuotaKeeperV3.sol/IPoolQuotaKeeperV3Events.d.ts +133 -0
  295. package/lib/types/IPoolQuotaKeeperV3.sol/IPoolQuotaKeeperV3Events.js +2 -0
  296. package/lib/types/IPoolQuotaKeeperV3.sol/index.d.ts +2 -0
  297. package/lib/types/IPoolQuotaKeeperV3.sol/index.js +2 -0
  298. package/lib/types/IPoolService.sol/IPoolService.d.ts +292 -338
  299. package/lib/types/IPoolService.sol/IPoolServiceEvents.d.ts +189 -146
  300. package/lib/types/IPoolV3.sol/IPoolV3.d.ts +662 -825
  301. package/lib/types/IPoolV3.sol/IPoolV3Events.d.ts +181 -142
  302. package/lib/types/IPriceFeed.sol/IPriceFeed.d.ts +69 -0
  303. package/lib/types/IPriceFeed.sol/IPriceFeed.js +2 -0
  304. package/lib/types/IPriceFeed.sol/IUpdatablePriceFeed.d.ts +77 -0
  305. package/lib/types/IPriceFeed.sol/IUpdatablePriceFeed.js +2 -0
  306. package/lib/types/IPriceFeed.sol/index.d.ts +2 -0
  307. package/lib/types/IPriceFeed.sol/index.js +2 -0
  308. package/lib/types/IPriceOracle.sol/IPriceOracleV2.d.ts +146 -0
  309. package/lib/types/IPriceOracle.sol/IPriceOracleV2.js +2 -0
  310. package/lib/types/IPriceOracle.sol/IPriceOracleV2Events.d.ts +37 -0
  311. package/lib/types/IPriceOracle.sol/IPriceOracleV2Events.js +2 -0
  312. package/lib/types/IPriceOracle.sol/IPriceOracleV2Exceptions.d.ts +20 -0
  313. package/lib/types/IPriceOracle.sol/IPriceOracleV2Exceptions.js +2 -0
  314. package/lib/types/IPriceOracle.sol/IPriceOracleV2Ext.d.ts +160 -0
  315. package/lib/types/IPriceOracle.sol/IPriceOracleV2Ext.js +2 -0
  316. package/lib/types/IPriceOracle.sol/index.d.ts +4 -0
  317. package/lib/types/IPriceOracle.sol/index.js +2 -0
  318. package/lib/types/IPriceOracleBase.d.ts +65 -76
  319. package/lib/types/IPriceOracleV3.sol/IPriceOracleV3.d.ts +281 -0
  320. package/lib/types/IPriceOracleV3.sol/IPriceOracleV3.js +2 -0
  321. package/lib/types/IPriceOracleV3.sol/IPriceOracleV3Events.d.ts +94 -0
  322. package/lib/types/IPriceOracleV3.sol/IPriceOracleV3Events.js +2 -0
  323. package/lib/types/IPriceOracleV3.sol/index.d.ts +2 -0
  324. package/lib/types/IPriceOracleV3.sol/index.js +2 -0
  325. package/lib/types/IRouter.d.ts +226 -208
  326. package/lib/types/IRouterV3.d.ts +333 -0
  327. package/lib/types/IRouterV3.js +2 -0
  328. package/lib/types/IUniswapV2Adapter.sol/IUniswapV2Adapter.d.ts +159 -175
  329. package/lib/types/IUniswapV2Adapter.sol/IUniswapV2AdapterEvents.d.ts +34 -37
  330. package/lib/types/IUniswapV2Adapter.sol/IUniswapV2AdapterExceptions.d.ts +15 -22
  331. package/lib/types/IUniswapV3.sol/ISwapRouter.d.ts +124 -153
  332. package/lib/types/IUniswapV3Adapter.sol/IUniswapV3Adapter.d.ts +289 -330
  333. package/lib/types/IUniswapV3Adapter.sol/IUniswapV3AdapterEvents.d.ts +41 -39
  334. package/lib/types/IUniswapV3Adapter.sol/IUniswapV3AdapterExceptions.d.ts +15 -22
  335. package/lib/types/IVersion.d.ts +18 -35
  336. package/lib/types/IVotingContractV3.d.ts +53 -0
  337. package/lib/types/IVotingContractV3.js +2 -0
  338. package/lib/types/IWETH.d.ts +147 -177
  339. package/lib/types/IWETHGateway.d.ts +59 -82
  340. package/lib/types/IYVault.d.ts +183 -264
  341. package/lib/types/IYearnV2Adapter.d.ts +161 -230
  342. package/lib/types/IZapper.d.ts +81 -115
  343. package/lib/types/IZapperRegister.d.ts +55 -0
  344. package/lib/types/IZapperRegister.js +2 -0
  345. package/lib/types/IstETH.sol/IstETH.d.ts +146 -199
  346. package/lib/types/IstETH.sol/IstETHGetters.d.ts +143 -184
  347. package/lib/types/IwstETH.sol/IwstETH.d.ts +154 -207
  348. package/lib/types/IwstETH.sol/IwstETHGetters.d.ts +140 -177
  349. package/lib/types/IwstETHGateway.sol/IwstETHGateWay.d.ts +44 -63
  350. package/lib/types/IwstETHV1Adapter.d.ts +102 -163
  351. package/lib/types/NumericArrayLib.d.ts +20 -0
  352. package/lib/types/NumericArrayLib.js +2 -0
  353. package/lib/types/Ownable.d.ts +42 -77
  354. package/lib/types/PartialLiquidationBotV3.d.ts +158 -0
  355. package/lib/types/PartialLiquidationBotV3.js +2 -0
  356. package/lib/types/RedstoneConstants.d.ts +20 -0
  357. package/lib/types/RedstoneConstants.js +2 -0
  358. package/lib/types/RedstoneConsumerBase.d.ts +64 -0
  359. package/lib/types/RedstoneConsumerBase.js +2 -0
  360. package/lib/types/RedstoneConsumerNumericBase.d.ts +64 -0
  361. package/lib/types/RedstoneConsumerNumericBase.js +2 -0
  362. package/lib/types/RedstoneDefaultsLib.d.ts +20 -0
  363. package/lib/types/RedstoneDefaultsLib.js +2 -0
  364. package/lib/types/RedstonePriceFeed.sol/IRedstonePriceFeedEvents.d.ts +36 -0
  365. package/lib/types/RedstonePriceFeed.sol/IRedstonePriceFeedEvents.js +2 -0
  366. package/lib/types/RedstonePriceFeed.sol/IRedstonePriceFeedExceptions.d.ts +20 -0
  367. package/lib/types/RedstonePriceFeed.sol/IRedstonePriceFeedExceptions.js +2 -0
  368. package/lib/types/RedstonePriceFeed.sol/RedstonePriceFeed.d.ts +174 -0
  369. package/lib/types/RedstonePriceFeed.sol/RedstonePriceFeed.js +2 -0
  370. package/lib/types/RedstonePriceFeed.sol/index.d.ts +3 -0
  371. package/lib/types/RedstonePriceFeed.sol/index.js +2 -0
  372. package/lib/types/SafeERC20.d.ts +15 -22
  373. package/lib/types/common.d.ts +40 -12
  374. package/lib/types/factories/AddressProvider__factory.d.ts +125 -124
  375. package/lib/types/factories/AddressProvider__factory.js +127 -130
  376. package/lib/types/factories/Balances.sol/BalanceOps__factory.d.ts +17 -16
  377. package/lib/types/factories/Balances.sol/BalanceOps__factory.js +11 -14
  378. package/lib/types/factories/CalldataExtractor__factory.d.ts +88 -0
  379. package/lib/types/factories/CalldataExtractor__factory.js +124 -0
  380. package/lib/types/factories/Claimable__factory.d.ts +42 -41
  381. package/lib/types/factories/Claimable__factory.js +40 -43
  382. package/lib/types/factories/CompositePriceFeed__factory.d.ts +203 -0
  383. package/lib/types/factories/CompositePriceFeed__factory.js +274 -0
  384. package/lib/types/factories/ContractsRegisterTrait__factory.d.ts +21 -0
  385. package/lib/types/factories/ContractsRegisterTrait__factory.js +37 -0
  386. package/lib/types/factories/ERC20__factory.d.ts +240 -0
  387. package/lib/types/factories/ERC20__factory.js +325 -0
  388. package/lib/types/factories/Errors__factory.d.ts +113 -112
  389. package/lib/types/factories/Errors__factory.js +107 -110
  390. package/lib/types/factories/FarmAccounting__factory.d.ts +34 -0
  391. package/lib/types/factories/FarmAccounting__factory.js +54 -0
  392. package/lib/types/factories/{IWETHZapper__factory.d.ts → IAaveV2_LendingPoolAdapter__factory.d.ts} +97 -108
  393. package/lib/types/factories/{IWETHZapper__factory.js → IAaveV2_LendingPoolAdapter__factory.js} +108 -123
  394. package/lib/types/factories/IAaveV2_WrappedATokenAdapter__factory.d.ts +251 -0
  395. package/lib/types/factories/IAaveV2_WrappedATokenAdapter__factory.js +341 -0
  396. package/lib/types/factories/IAdapter__factory.d.ts +17 -18
  397. package/lib/types/factories/IAdapter__factory.js +18 -18
  398. package/lib/types/factories/IAddressProvider.sol/IAddressProviderEvents__factory.d.ts +9 -10
  399. package/lib/types/factories/IAddressProvider.sol/IAddressProviderEvents__factory.js +10 -10
  400. package/lib/types/factories/IAddressProvider.sol/IAddressProvider__factory.d.ts +50 -51
  401. package/lib/types/factories/IAddressProvider.sol/IAddressProvider__factory.js +55 -55
  402. package/lib/types/factories/IAddressProviderV3.sol/IAddressProviderV3Events__factory.d.ts +11 -12
  403. package/lib/types/factories/IAddressProviderV3.sol/IAddressProviderV3Events__factory.js +12 -12
  404. package/lib/types/factories/IAddressProviderV3.sol/IAddressProviderV3__factory.d.ts +39 -40
  405. package/lib/types/factories/IAddressProviderV3.sol/IAddressProviderV3__factory.js +45 -45
  406. package/lib/types/factories/IAirdropDistributor.sol/IAirdropDistributorEvents__factory.d.ts +27 -28
  407. package/lib/types/factories/IAirdropDistributor.sol/IAirdropDistributorEvents__factory.js +28 -28
  408. package/lib/types/factories/IAirdropDistributor.sol/IAirdropDistributor__factory.d.ts +73 -74
  409. package/lib/types/factories/IAirdropDistributor.sol/IAirdropDistributor__factory.js +88 -88
  410. package/lib/types/factories/IBalancerV2Vault.sol/IBalancerV2VaultGetters__factory.d.ts +77 -0
  411. package/lib/types/factories/IBalancerV2Vault.sol/IBalancerV2VaultGetters__factory.js +111 -0
  412. package/lib/types/factories/IBalancerV2Vault.sol/IBalancerV2Vault__factory.d.ts +359 -0
  413. package/lib/types/factories/IBalancerV2Vault.sol/IBalancerV2Vault__factory.js +475 -0
  414. package/lib/types/factories/IBalancerV2Vault.sol/index.d.ts +2 -0
  415. package/lib/types/factories/IBalancerV2Vault.sol/index.js +10 -0
  416. package/lib/types/factories/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterEvents__factory.d.ts +22 -0
  417. package/lib/types/factories/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterEvents__factory.js +38 -0
  418. package/lib/types/factories/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterExceptions__factory.d.ts +11 -0
  419. package/lib/types/factories/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterExceptions__factory.js +24 -0
  420. package/lib/types/factories/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapter__factory.d.ts +513 -0
  421. package/lib/types/factories/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapter__factory.js +675 -0
  422. package/lib/types/factories/IBalancerV2VaultAdapter.sol/index.d.ts +3 -0
  423. package/lib/types/factories/IBalancerV2VaultAdapter.sol/index.js +12 -0
  424. package/lib/types/factories/IBaseRewardPool__factory.d.ts +116 -117
  425. package/lib/types/factories/IBaseRewardPool__factory.js +117 -117
  426. package/lib/types/factories/IBotListV3.sol/IBotListV3Events__factory.d.ts +102 -0
  427. package/lib/types/factories/IBotListV3.sol/IBotListV3Events__factory.js +138 -0
  428. package/lib/types/factories/IBotListV3.sol/IBotListV3__factory.d.ts +314 -0
  429. package/lib/types/factories/IBotListV3.sol/IBotListV3__factory.js +416 -0
  430. package/lib/types/factories/IBotListV3.sol/index.d.ts +2 -0
  431. package/lib/types/factories/IBotListV3.sol/index.js +10 -0
  432. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/ICompoundV2_CTokenAdapter__factory.d.ts +195 -0
  433. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/ICompoundV2_CTokenAdapter__factory.js +267 -0
  434. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/ICompoundV2_Exceptions__factory.d.ts +15 -0
  435. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/ICompoundV2_Exceptions__factory.js +30 -0
  436. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/index.d.ts +2 -0
  437. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/index.js +10 -0
  438. package/lib/types/factories/IContractsRegister.sol/IContractsRegisterEvents__factory.d.ts +27 -0
  439. package/lib/types/factories/IContractsRegister.sol/IContractsRegisterEvents__factory.js +45 -0
  440. package/lib/types/factories/IContractsRegister.sol/IContractsRegister__factory.d.ts +133 -0
  441. package/lib/types/factories/IContractsRegister.sol/IContractsRegister__factory.js +186 -0
  442. package/lib/types/factories/IContractsRegister.sol/index.d.ts +2 -0
  443. package/lib/types/factories/IContractsRegister.sol/index.js +10 -0
  444. package/lib/types/factories/IControllerTimelockV3.sol/IControllerTimelockV3Events__factory.d.ts +72 -0
  445. package/lib/types/factories/IControllerTimelockV3.sol/IControllerTimelockV3Events__factory.js +101 -0
  446. package/lib/types/factories/IControllerTimelockV3.sol/IControllerTimelockV3__factory.d.ts +426 -0
  447. package/lib/types/factories/IControllerTimelockV3.sol/IControllerTimelockV3__factory.js +556 -0
  448. package/lib/types/factories/IControllerTimelockV3.sol/index.d.ts +2 -0
  449. package/lib/types/factories/IControllerTimelockV3.sol/index.js +10 -0
  450. package/lib/types/factories/IConvexToken__factory.d.ts +91 -82
  451. package/lib/types/factories/IConvexToken__factory.js +102 -89
  452. package/lib/types/factories/IConvexV1BaseRewardPoolAdapter__factory.d.ts +123 -72
  453. package/lib/types/factories/IConvexV1BaseRewardPoolAdapter__factory.js +140 -72
  454. package/lib/types/factories/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapterEvents__factory.d.ts +9 -10
  455. package/lib/types/factories/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapterEvents__factory.js +10 -10
  456. package/lib/types/factories/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter__factory.d.ts +68 -61
  457. package/lib/types/factories/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter__factory.js +75 -65
  458. package/lib/types/factories/ICreditAccountV3.sol/ICreditAccountBase__factory.d.ts +63 -0
  459. package/lib/types/factories/ICreditAccountV3.sol/ICreditAccountBase__factory.js +92 -0
  460. package/lib/types/factories/ICreditAccountV3.sol/ICreditAccountV3__factory.d.ts +87 -0
  461. package/lib/types/factories/ICreditAccountV3.sol/ICreditAccountV3__factory.js +123 -0
  462. package/lib/types/factories/ICreditAccountV3.sol/index.d.ts +2 -0
  463. package/lib/types/factories/ICreditAccountV3.sol/index.js +10 -0
  464. package/lib/types/factories/ICreditConfiguratorV2.sol/ICreditConfiguratorV2Events__factory.d.ts +123 -124
  465. package/lib/types/factories/ICreditConfiguratorV2.sol/ICreditConfiguratorV2Events__factory.js +130 -130
  466. package/lib/types/factories/ICreditConfiguratorV2.sol/ICreditConfiguratorV2Exceptions__factory.d.ts +20 -21
  467. package/lib/types/factories/ICreditConfiguratorV2.sol/ICreditConfiguratorV2Exceptions__factory.js +21 -21
  468. package/lib/types/factories/ICreditConfiguratorV2.sol/ICreditConfiguratorV2__factory.d.ts +378 -379
  469. package/lib/types/factories/ICreditConfiguratorV2.sol/ICreditConfiguratorV2__factory.js +420 -420
  470. package/lib/types/factories/ICreditConfiguratorV3.sol/ICreditConfiguratorV3Events__factory.d.ts +120 -121
  471. package/lib/types/factories/ICreditConfiguratorV3.sol/ICreditConfiguratorV3Events__factory.js +130 -130
  472. package/lib/types/factories/ICreditConfiguratorV3.sol/ICreditConfiguratorV3__factory.d.ts +397 -398
  473. package/lib/types/factories/ICreditConfiguratorV3.sol/ICreditConfiguratorV3__factory.js +423 -423
  474. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2Events__factory.d.ts +109 -110
  475. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2Events__factory.js +121 -121
  476. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2Exceptions__factory.d.ts +67 -68
  477. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2Exceptions__factory.js +68 -68
  478. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2Extended__factory.d.ts +25 -30
  479. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2Extended__factory.js +26 -31
  480. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2V2__factory.d.ts +7 -8
  481. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2V2__factory.js +8 -8
  482. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2__factory.d.ts +603 -604
  483. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2__factory.js +752 -752
  484. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3Events__factory.d.ts +79 -85
  485. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3Events__factory.js +87 -93
  486. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3__factory.d.ts +282 -350
  487. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3__factory.js +374 -459
  488. package/lib/types/factories/ICreditFacadeV3Multicall__factory.d.ts +87 -84
  489. package/lib/types/factories/ICreditFacadeV3Multicall__factory.js +96 -92
  490. package/lib/types/factories/ICreditManagerV2.sol/ICreditManagerV2Events__factory.d.ts +13 -14
  491. package/lib/types/factories/ICreditManagerV2.sol/ICreditManagerV2Events__factory.js +15 -15
  492. package/lib/types/factories/ICreditManagerV2.sol/ICreditManagerV2Exceptions__factory.d.ts +28 -29
  493. package/lib/types/factories/ICreditManagerV2.sol/ICreditManagerV2Exceptions__factory.js +29 -29
  494. package/lib/types/factories/ICreditManagerV2.sol/ICreditManagerV2__factory.d.ts +254 -255
  495. package/lib/types/factories/ICreditManagerV2.sol/ICreditManagerV2__factory.js +275 -275
  496. package/lib/types/factories/ICreditManagerV3.sol/ICreditManagerV3Events__factory.d.ts +7 -8
  497. package/lib/types/factories/ICreditManagerV3.sol/ICreditManagerV3Events__factory.js +8 -8
  498. package/lib/types/factories/ICreditManagerV3.sol/ICreditManagerV3__factory.d.ts +400 -393
  499. package/lib/types/factories/ICreditManagerV3.sol/ICreditManagerV3__factory.js +439 -429
  500. package/lib/types/factories/ICurvePool_2.sol/ICurvePool2Assets__factory.d.ts +193 -194
  501. package/lib/types/factories/ICurvePool_2.sol/ICurvePool2Assets__factory.js +194 -194
  502. package/lib/types/factories/ICurvePool_3.sol/ICurvePool3Assets__factory.d.ts +193 -194
  503. package/lib/types/factories/ICurvePool_3.sol/ICurvePool3Assets__factory.js +194 -194
  504. package/lib/types/factories/ICurvePool_4.sol/ICurvePool4Assets__factory.d.ts +193 -194
  505. package/lib/types/factories/ICurvePool_4.sol/ICurvePool4Assets__factory.js +194 -194
  506. package/lib/types/factories/ICurvePool__factory.d.ts +161 -162
  507. package/lib/types/factories/ICurvePool__factory.js +162 -162
  508. package/lib/types/factories/ICurveV1Adapter__factory.d.ts +173 -232
  509. package/lib/types/factories/ICurveV1Adapter__factory.js +174 -251
  510. package/lib/types/factories/ICurveV1_2AssetsAdapter__factory.d.ts +191 -250
  511. package/lib/types/factories/ICurveV1_2AssetsAdapter__factory.js +192 -269
  512. package/lib/types/factories/ICurveV1_3AssetsAdapter__factory.d.ts +191 -250
  513. package/lib/types/factories/ICurveV1_3AssetsAdapter__factory.js +192 -269
  514. package/lib/types/factories/ICurveV1_4AssetsAdapter__factory.d.ts +191 -250
  515. package/lib/types/factories/ICurveV1_4AssetsAdapter__factory.js +192 -269
  516. package/lib/types/factories/IDaiLikePermit__factory.d.ts +12 -13
  517. package/lib/types/factories/IDaiLikePermit__factory.js +13 -13
  518. package/lib/types/factories/{IDataCompressorV2_10__factory.d.ts → IDataCompressorV2_1__factory.d.ts} +349 -400
  519. package/lib/types/factories/{IDataCompressorV2_10__factory.js → IDataCompressorV2_1__factory.js} +352 -416
  520. package/lib/types/factories/{IDataCompressorV3_00__factory.d.ts → IDataCompressorV3__factory.d.ts} +655 -474
  521. package/lib/types/factories/{IDataCompressorV3_00__factory.js → IDataCompressorV3__factory.js} +730 -498
  522. package/lib/types/factories/IDegenDistributor.sol/IDegenDistributorEvents__factory.d.ts +16 -17
  523. package/lib/types/factories/IDegenDistributor.sol/IDegenDistributorEvents__factory.js +17 -17
  524. package/lib/types/factories/IDegenDistributor.sol/IDegenDistributor__factory.d.ts +45 -46
  525. package/lib/types/factories/IDegenDistributor.sol/IDegenDistributor__factory.js +54 -54
  526. package/lib/types/factories/IDegenNFTV2.sol/IDegenNFTV2Events__factory.d.ts +37 -0
  527. package/lib/types/factories/IDegenNFTV2.sol/IDegenNFTV2Events__factory.js +58 -0
  528. package/lib/types/factories/IDegenNFTV2.sol/IDegenNFTV2Exceptions__factory.d.ts +23 -0
  529. package/lib/types/factories/IDegenNFTV2.sol/IDegenNFTV2Exceptions__factory.js +39 -0
  530. package/lib/types/factories/{IWithdrawalManagerV3.sol/IWithdrawalManagerV3__factory.d.ts → IDegenNFTV2.sol/IDegenNFTV2__factory.d.ts} +249 -240
  531. package/lib/types/factories/{IWithdrawalManagerV3.sol/IWithdrawalManagerV3__factory.js → IDegenNFTV2.sol/IDegenNFTV2__factory.js} +273 -256
  532. package/lib/types/factories/IDegenNFTV2.sol/index.d.ts +3 -0
  533. package/lib/types/factories/IDegenNFTV2.sol/index.js +12 -0
  534. package/lib/types/factories/IERC165__factory.d.ts +21 -0
  535. package/lib/types/factories/IERC165__factory.js +38 -0
  536. package/lib/types/factories/IERC20Metadata__factory.d.ts +78 -79
  537. package/lib/types/factories/IERC20Metadata__factory.js +89 -89
  538. package/lib/types/factories/IERC20Permit__factory.d.ts +18 -19
  539. package/lib/types/factories/IERC20Permit__factory.js +19 -19
  540. package/lib/types/factories/IERC20ZapperDeposits__factory.d.ts +119 -0
  541. package/lib/types/factories/IERC20ZapperDeposits__factory.js +165 -0
  542. package/lib/types/factories/IERC20__factory.d.ts +69 -70
  543. package/lib/types/factories/IERC20__factory.js +80 -80
  544. package/lib/types/factories/IERC4626Adapter__factory.d.ts +219 -0
  545. package/lib/types/factories/IERC4626Adapter__factory.js +297 -0
  546. package/lib/types/factories/IERC4626__factory.d.ts +200 -201
  547. package/lib/types/factories/IERC4626__factory.js +224 -224
  548. package/lib/types/factories/IERC721Metadata__factory.d.ts +261 -0
  549. package/lib/types/factories/IERC721Metadata__factory.js +349 -0
  550. package/lib/types/factories/IERC721__factory.d.ts +227 -0
  551. package/lib/types/factories/IERC721__factory.js +304 -0
  552. package/lib/types/factories/IETHZapperDeposits__factory.d.ts +39 -0
  553. package/lib/types/factories/IETHZapperDeposits__factory.js +62 -0
  554. package/lib/types/factories/IFarmingPool__factory.d.ts +298 -0
  555. package/lib/types/factories/IFarmingPool__factory.js +396 -0
  556. package/lib/types/factories/IGasPricer__factory.d.ts +21 -0
  557. package/lib/types/factories/IGasPricer__factory.js +38 -0
  558. package/lib/types/factories/IGaugeV3.sol/IGaugeV3Events__factory.d.ts +117 -0
  559. package/lib/types/factories/IGaugeV3.sol/IGaugeV3Events__factory.js +157 -0
  560. package/lib/types/factories/IGaugeV3.sol/IGaugeV3__factory.d.ts +341 -0
  561. package/lib/types/factories/IGaugeV3.sol/IGaugeV3__factory.js +448 -0
  562. package/lib/types/factories/IGaugeV3.sol/index.d.ts +2 -0
  563. package/lib/types/factories/IGaugeV3.sol/index.js +10 -0
  564. package/lib/types/factories/{IWithdrawalManagerV3.sol/IWithdrawalManagerV3Events__factory.d.ts → IGearStakingV3.sol/IGearStakingV3Events__factory.d.ts} +56 -87
  565. package/lib/types/factories/{IWithdrawalManagerV3.sol/IWithdrawalManagerV3Events__factory.js → IGearStakingV3.sol/IGearStakingV3Events__factory.js} +61 -97
  566. package/lib/types/factories/IGearStakingV3.sol/IGearStakingV3__factory.d.ts +503 -0
  567. package/lib/types/factories/IGearStakingV3.sol/IGearStakingV3__factory.js +660 -0
  568. package/lib/types/factories/IGearStakingV3.sol/index.d.ts +2 -0
  569. package/lib/types/factories/IGearStakingV3.sol/index.js +10 -0
  570. package/lib/types/factories/IInterestRateModel__factory.d.ts +10 -11
  571. package/lib/types/factories/IInterestRateModel__factory.js +11 -11
  572. package/lib/types/factories/ILPPriceFeed.sol/ILPPriceFeedEvents__factory.d.ts +32 -0
  573. package/lib/types/factories/ILPPriceFeed.sol/ILPPriceFeedEvents__factory.js +51 -0
  574. package/lib/types/factories/ILPPriceFeed.sol/ILPPriceFeedExceptions__factory.d.ts +27 -0
  575. package/lib/types/factories/ILPPriceFeed.sol/ILPPriceFeedExceptions__factory.js +44 -0
  576. package/lib/types/factories/ILPPriceFeed.sol/ILPPriceFeed__factory.d.ts +260 -0
  577. package/lib/types/factories/ILPPriceFeed.sol/ILPPriceFeed__factory.js +344 -0
  578. package/lib/types/factories/ILPPriceFeed.sol/index.d.ts +3 -0
  579. package/lib/types/factories/ILPPriceFeed.sol/index.js +12 -0
  580. package/lib/types/factories/ILidoV1Adapter__factory.d.ts +46 -43
  581. package/lib/types/factories/ILidoV1Adapter__factory.js +49 -43
  582. package/lib/types/factories/ILinearInterestRateModelV3__factory.d.ts +97 -0
  583. package/lib/types/factories/ILinearInterestRateModelV3__factory.js +136 -0
  584. package/lib/types/factories/IOffchainOracle__factory.d.ts +13 -14
  585. package/lib/types/factories/IOffchainOracle__factory.js +14 -14
  586. package/lib/types/factories/IPartialLiquidationBotV3__factory.d.ts +216 -0
  587. package/lib/types/factories/IPartialLiquidationBotV3__factory.js +287 -0
  588. package/lib/types/factories/IPermit2__factory.d.ts +35 -36
  589. package/lib/types/factories/IPermit2__factory.js +36 -36
  590. package/lib/types/factories/IPoolQuotaKeeperV3.sol/IPoolQuotaKeeperV3Events__factory.d.ts +102 -0
  591. package/lib/types/factories/IPoolQuotaKeeperV3.sol/IPoolQuotaKeeperV3Events__factory.js +140 -0
  592. package/lib/types/factories/IPoolQuotaKeeperV3.sol/IPoolQuotaKeeperV3__factory.d.ts +440 -0
  593. package/lib/types/factories/IPoolQuotaKeeperV3.sol/IPoolQuotaKeeperV3__factory.js +580 -0
  594. package/lib/types/factories/IPoolQuotaKeeperV3.sol/index.d.ts +2 -0
  595. package/lib/types/factories/IPoolQuotaKeeperV3.sol/index.js +10 -0
  596. package/lib/types/factories/IPoolService.sol/IPoolServiceEvents__factory.d.ts +68 -69
  597. package/lib/types/factories/IPoolService.sol/IPoolServiceEvents__factory.js +75 -75
  598. package/lib/types/factories/IPoolService.sol/IPoolService__factory.d.ts +237 -238
  599. package/lib/types/factories/IPoolService.sol/IPoolService__factory.js +289 -289
  600. package/lib/types/factories/IPoolV3.sol/IPoolV3Events__factory.d.ts +67 -68
  601. package/lib/types/factories/IPoolV3.sol/IPoolV3Events__factory.js +71 -71
  602. package/lib/types/factories/IPoolV3.sol/IPoolV3__factory.d.ts +576 -577
  603. package/lib/types/factories/IPoolV3.sol/IPoolV3__factory.js +699 -699
  604. package/lib/types/factories/IPriceFeed.sol/IPriceFeed__factory.d.ts +83 -0
  605. package/lib/types/factories/IPriceFeed.sol/IPriceFeed__factory.js +117 -0
  606. package/lib/types/factories/IPriceFeed.sol/IUpdatablePriceFeed__factory.d.ts +103 -0
  607. package/lib/types/factories/IPriceFeed.sol/IUpdatablePriceFeed__factory.js +143 -0
  608. package/lib/types/factories/IPriceFeed.sol/index.d.ts +2 -0
  609. package/lib/types/factories/IPriceFeed.sol/index.js +10 -0
  610. package/lib/types/factories/IPriceOracle.sol/IPriceOracleV2Events__factory.d.ts +22 -0
  611. package/lib/types/factories/IPriceOracle.sol/IPriceOracleV2Events__factory.js +38 -0
  612. package/lib/types/factories/IPriceOracle.sol/IPriceOracleV2Exceptions__factory.d.ts +19 -0
  613. package/lib/types/factories/IPriceOracle.sol/IPriceOracleV2Exceptions__factory.js +34 -0
  614. package/lib/types/factories/IPriceOracle.sol/IPriceOracleV2Ext__factory.d.ts +196 -0
  615. package/lib/types/factories/IPriceOracle.sol/IPriceOracleV2Ext__factory.js +267 -0
  616. package/lib/types/factories/{IWERC20Zapper__factory.d.ts → IPriceOracle.sol/IPriceOracleV2__factory.d.ts} +109 -103
  617. package/lib/types/factories/{IWERC20Zapper__factory.js → IPriceOracle.sol/IPriceOracleV2__factory.js} +122 -113
  618. package/lib/types/factories/IPriceOracle.sol/index.d.ts +4 -0
  619. package/lib/types/factories/IPriceOracle.sol/index.js +14 -0
  620. package/lib/types/factories/IPriceOracleBase__factory.d.ts +29 -30
  621. package/lib/types/factories/IPriceOracleBase__factory.js +30 -30
  622. package/lib/types/factories/IPriceOracleV3.sol/IPriceOracleV3Events__factory.d.ts +77 -0
  623. package/lib/types/factories/IPriceOracleV3.sol/IPriceOracleV3Events__factory.js +106 -0
  624. package/lib/types/factories/IPriceOracleV3.sol/IPriceOracleV3__factory.d.ts +325 -0
  625. package/lib/types/factories/IPriceOracleV3.sol/IPriceOracleV3__factory.js +433 -0
  626. package/lib/types/factories/IPriceOracleV3.sol/index.d.ts +2 -0
  627. package/lib/types/factories/IPriceOracleV3.sol/index.js +10 -0
  628. package/lib/types/factories/IRouterV3__factory.d.ts +511 -0
  629. package/lib/types/factories/IRouterV3__factory.js +676 -0
  630. package/lib/types/factories/IRouter__factory.d.ts +170 -157
  631. package/lib/types/factories/IRouter__factory.js +189 -170
  632. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2AdapterEvents__factory.d.ts +10 -11
  633. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2AdapterEvents__factory.js +12 -12
  634. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2AdapterExceptions__factory.d.ts +4 -5
  635. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2AdapterExceptions__factory.js +5 -5
  636. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2Adapter__factory.d.ts +82 -79
  637. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2Adapter__factory.js +90 -85
  638. package/lib/types/factories/IUniswapV3.sol/ISwapRouter__factory.d.ts +52 -53
  639. package/lib/types/factories/IUniswapV3.sol/ISwapRouter__factory.js +53 -53
  640. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3AdapterEvents__factory.d.ts +12 -13
  641. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3AdapterEvents__factory.js +14 -14
  642. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3AdapterExceptions__factory.d.ts +4 -5
  643. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3AdapterExceptions__factory.js +5 -5
  644. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3Adapter__factory.d.ts +144 -137
  645. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3Adapter__factory.js +154 -144
  646. package/lib/types/factories/IVersion__factory.d.ts +5 -6
  647. package/lib/types/factories/IVersion__factory.js +6 -6
  648. package/lib/types/factories/IVotingContractV3__factory.d.ts +43 -0
  649. package/lib/types/factories/IVotingContractV3__factory.js +65 -0
  650. package/lib/types/factories/IWETHGateway__factory.d.ts +16 -17
  651. package/lib/types/factories/IWETHGateway__factory.js +17 -17
  652. package/lib/types/factories/IWETH__factory.d.ts +104 -105
  653. package/lib/types/factories/IWETH__factory.js +123 -123
  654. package/lib/types/factories/IYVault__factory.d.ts +114 -115
  655. package/lib/types/factories/IYVault__factory.js +125 -125
  656. package/lib/types/factories/IYearnV2Adapter__factory.d.ts +78 -71
  657. package/lib/types/factories/IYearnV2Adapter__factory.js +85 -73
  658. package/lib/types/factories/IZapperRegister__factory.d.ts +41 -0
  659. package/lib/types/factories/IZapperRegister__factory.js +64 -0
  660. package/lib/types/factories/IZapper__factory.d.ts +42 -51
  661. package/lib/types/factories/IZapper__factory.js +43 -53
  662. package/lib/types/factories/IstETH.sol/IstETHGetters__factory.d.ts +99 -100
  663. package/lib/types/factories/IstETH.sol/IstETHGetters__factory.js +110 -110
  664. package/lib/types/factories/IstETH.sol/IstETH__factory.d.ts +103 -104
  665. package/lib/types/factories/IstETH.sol/IstETH__factory.js +114 -114
  666. package/lib/types/factories/IwstETH.sol/IwstETHGetters__factory.d.ts +95 -96
  667. package/lib/types/factories/IwstETH.sol/IwstETHGetters__factory.js +106 -106
  668. package/lib/types/factories/IwstETH.sol/IwstETH__factory.d.ts +103 -104
  669. package/lib/types/factories/IwstETH.sol/IwstETH__factory.js +114 -114
  670. package/lib/types/factories/IwstETHGateway.sol/IwstETHGateWay__factory.d.ts +16 -17
  671. package/lib/types/factories/IwstETHGateway.sol/IwstETHGateWay__factory.js +18 -18
  672. package/lib/types/factories/IwstETHV1Adapter__factory.d.ts +54 -47
  673. package/lib/types/factories/IwstETHV1Adapter__factory.js +59 -47
  674. package/lib/types/factories/NumericArrayLib__factory.d.ts +26 -0
  675. package/lib/types/factories/NumericArrayLib__factory.js +44 -0
  676. package/lib/types/factories/Ownable__factory.d.ts +25 -26
  677. package/lib/types/factories/Ownable__factory.js +30 -30
  678. package/lib/types/factories/PartialLiquidationBotV3__factory.d.ts +285 -0
  679. package/lib/types/factories/PartialLiquidationBotV3__factory.js +376 -0
  680. package/lib/types/factories/RedstoneConstants__factory.d.ts +66 -0
  681. package/lib/types/factories/RedstoneConstants__factory.js +96 -0
  682. package/lib/types/factories/RedstoneConsumerBase__factory.d.ts +163 -0
  683. package/lib/types/factories/RedstoneConsumerBase__factory.js +223 -0
  684. package/lib/types/factories/RedstoneConsumerNumericBase__factory.d.ts +163 -0
  685. package/lib/types/factories/RedstoneConsumerNumericBase__factory.js +223 -0
  686. package/lib/types/factories/RedstoneDefaultsLib__factory.d.ts +46 -0
  687. package/lib/types/factories/RedstoneDefaultsLib__factory.js +71 -0
  688. package/lib/types/factories/RedstonePriceFeed.sol/IRedstonePriceFeedEvents__factory.d.ts +17 -0
  689. package/lib/types/factories/RedstonePriceFeed.sol/IRedstonePriceFeedEvents__factory.js +32 -0
  690. package/lib/types/factories/RedstonePriceFeed.sol/IRedstonePriceFeedExceptions__factory.d.ts +27 -0
  691. package/lib/types/factories/RedstonePriceFeed.sol/IRedstonePriceFeedExceptions__factory.js +44 -0
  692. package/lib/types/factories/RedstonePriceFeed.sol/RedstonePriceFeed__factory.d.ts +444 -0
  693. package/lib/types/factories/RedstonePriceFeed.sol/RedstonePriceFeed__factory.js +586 -0
  694. package/lib/types/factories/RedstonePriceFeed.sol/index.d.ts +3 -0
  695. package/lib/types/factories/RedstonePriceFeed.sol/index.js +12 -0
  696. package/lib/types/factories/SafeERC20__factory.d.ts +28 -27
  697. package/lib/types/factories/SafeERC20__factory.js +22 -25
  698. package/lib/types/factories/index.d.ts +44 -5
  699. package/lib/types/factories/index.js +74 -11
  700. package/lib/types/index.d.ts +164 -14
  701. package/lib/types/index.js +135 -14
  702. package/lib/utils/calls.d.ts +7 -0
  703. package/lib/utils/{repeater.js → calls.js} +11 -1
  704. package/lib/utils/formatter.d.ts +1 -1
  705. package/lib/utils/formatter.js +2 -2
  706. package/lib/utils/math.d.ts +1 -1
  707. package/lib/utils/math.js +1 -2
  708. package/lib/utils/types.d.ts +0 -4
  709. package/package.json +17 -13
  710. package/contracts/IRouter.sol +0 -100
  711. package/lib/core/pool/index.d.ts +0 -1
  712. package/lib/core/strategy.spec.js +0 -62
  713. package/lib/types/IDataCompressorV2_10.d.ts +0 -511
  714. package/lib/types/IDataCompressorV3_00.d.ts +0 -533
  715. package/lib/types/IWERC20Zapper.d.ts +0 -166
  716. package/lib/types/IWETHZapper.d.ts +0 -162
  717. package/lib/types/IWithdrawalManagerV3.sol/IWithdrawalManagerV3.d.ts +0 -370
  718. package/lib/types/IWithdrawalManagerV3.sol/IWithdrawalManagerV3Events.d.ts +0 -133
  719. package/lib/types/IWithdrawalManagerV3.sol/index.d.ts +0 -2
  720. package/lib/types/factories/IWithdrawalManagerV3.sol/index.d.ts +0 -2
  721. package/lib/types/factories/IWithdrawalManagerV3.sol/index.js +0 -10
  722. package/lib/utils/repeater.d.ts +0 -1
  723. package/lib/watchers/creditAccountWatcher.d.ts +0 -36
  724. package/lib/watchers/creditAccountWatcher.js +0 -238
  725. package/lib/watchers/creditAccountWatcher.spec.js +0 -208
  726. package/lib/watchers/creditManagerWatcher.d.ts +0 -8
  727. package/lib/watchers/creditManagerWatcher.js +0 -37
  728. package/lib/watchers/creditManagerWatcher.spec.d.ts +0 -1
  729. package/lib/watchers/creditManagerWatcher.spec.js +0 -107
  730. /package/lib/core/{strategy.spec.d.ts → gaugeMath.spec.d.ts} +0 -0
  731. /package/lib/{types/IDataCompressorV2_10.js → pathfinder/v1/core.js} +0 -0
  732. /package/lib/{watchers/creditAccountWatcher.spec.d.ts → pathfinder/v1/pathfinderv1.spec.d.ts} +0 -0
  733. /package/lib/{types/IDataCompressorV3_00.js → payload/bot.js} +0 -0
  734. /package/lib/{types/IWERC20Zapper.js → payload/gauge.js} +0 -0
  735. /package/lib/types/{IWETHZapper.js → CalldataExtractor.js} +0 -0
  736. /package/lib/types/{IWithdrawalManagerV3.sol/IWithdrawalManagerV3.js → CompositePriceFeed.js} +0 -0
  737. /package/lib/types/{IWithdrawalManagerV3.sol/IWithdrawalManagerV3Events.js → ContractsRegisterTrait.js} +0 -0
  738. /package/lib/types/{IWithdrawalManagerV3.sol/index.js → ERC20.js} +0 -0
@@ -0,0 +1,181 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PathFinderUtils = exports.BALANCER_VAULT_INTERFACE = exports.BALANCER_VAULT_ABI = void 0;
4
+ const sdk_gov_1 = require("@gearbox-protocol/sdk-gov");
5
+ const ethers_1 = require("ethers");
6
+ const balancerV2VaultParser_1 = require("../parsers/balancerV2VaultParser");
7
+ const curveAdapterParser_1 = require("../parsers/curveAdapterParser");
8
+ const lidoAdapterParser_1 = require("../parsers/lidoAdapterParser");
9
+ const txParser_1 = require("../parsers/txParser");
10
+ const uniV2AdapterParser_1 = require("../parsers/uniV2AdapterParser");
11
+ const uniV3AdapterParser_1 = require("../parsers/uniV3AdapterParser");
12
+ const types_1 = require("../types");
13
+ const balancerVault_1 = require("./balancerVault");
14
+ const CURVE_FEE_DECIMALS = 100000000n;
15
+ const BALANCER_FEE_DECIMALS = 10000000000000000n;
16
+ exports.BALANCER_VAULT_ABI = [
17
+ {
18
+ inputs: [],
19
+ name: "getSwapFeePercentage",
20
+ outputs: [
21
+ {
22
+ internalType: "uint256",
23
+ name: "",
24
+ type: "uint256",
25
+ },
26
+ ],
27
+ stateMutability: "view",
28
+ type: "function",
29
+ },
30
+ ];
31
+ exports.BALANCER_VAULT_INTERFACE = new ethers_1.Interface(exports.BALANCER_VAULT_ABI);
32
+ class PathFinderUtils {
33
+ static async findPathFees({ calls, provider, contractsByAdapter, }) {
34
+ const pathObjects = txParser_1.TxParser.parseToObjectMultiCall(calls);
35
+ const { simpleFees, curve, balancer } = pathObjects.reduce((acc, pathSegment) => {
36
+ if (!pathSegment)
37
+ return acc;
38
+ const { callObject, parser } = pathSegment;
39
+ switch (true) {
40
+ case parser instanceof uniV2AdapterParser_1.UniswapV2AdapterParser: {
41
+ const f = this.getUniswapV2Fee(callObject);
42
+ if (f)
43
+ acc.simpleFees.push(f);
44
+ break;
45
+ }
46
+ case parser instanceof uniV3AdapterParser_1.UniswapV3AdapterParser: {
47
+ const f = this.getUniswapV3Fee(callObject);
48
+ if (f)
49
+ acc.simpleFees.push(f);
50
+ break;
51
+ }
52
+ case parser instanceof lidoAdapterParser_1.LidoAdapterParser: {
53
+ const f = this.getLidoFee();
54
+ if (f)
55
+ acc.simpleFees.push(f);
56
+ break;
57
+ }
58
+ case parser instanceof curveAdapterParser_1.CurveAdapterParser: {
59
+ const call = this.getCurveFeeCall(callObject, contractsByAdapter);
60
+ if (call)
61
+ acc.curve.push(call);
62
+ break;
63
+ }
64
+ case parser instanceof balancerV2VaultParser_1.BalancerV2VaultParser: {
65
+ const call = this.getBalancerFeeCall(callObject);
66
+ if (call)
67
+ acc.balancer.push(call);
68
+ break;
69
+ }
70
+ }
71
+ return acc;
72
+ }, {
73
+ simpleFees: [],
74
+ curve: [],
75
+ balancer: [],
76
+ });
77
+ const response = await (0, sdk_gov_1.safeMulticall)([...curve, ...balancer], provider);
78
+ const curveEnds = curve.length;
79
+ const curveResponse = response.slice(0, curveEnds);
80
+ const balancerEnds = balancer.length;
81
+ const balancerResponse = response.slice(curveEnds, balancerEnds);
82
+ const curveFees = curveResponse.map(r => this.getCurveFee(r));
83
+ const balancerFees = balancerResponse.map(r => this.getBalancerFee(r));
84
+ const fees = [...simpleFees, ...curveFees, ...balancerFees];
85
+ return fees;
86
+ }
87
+ static getUniswapV2Fee(callObject) {
88
+ const { name } = callObject.functionFragment;
89
+ switch (name) {
90
+ case "swapExactTokensForTokens":
91
+ case "swapTokensForExactTokens":
92
+ case "swapDiffTokensForTokens": {
93
+ // 0.3%
94
+ return {
95
+ type: "uniswap_v2",
96
+ value: 3000n,
97
+ };
98
+ }
99
+ default:
100
+ return null;
101
+ }
102
+ }
103
+ static getUniswapV3Fee(callObject) {
104
+ const { name } = callObject.functionFragment;
105
+ switch (name) {
106
+ case "exactInputSingle":
107
+ case "exactDiffInputSingle":
108
+ case "exactOutputSingle": {
109
+ const { params } = callObject.args || {};
110
+ const { fee = 0 } = params || {};
111
+ return {
112
+ type: "uniswap_v3",
113
+ value: (0, sdk_gov_1.toBigInt)(fee),
114
+ };
115
+ }
116
+ default:
117
+ return null;
118
+ }
119
+ }
120
+ static getCurveFeeCall(callObject, contractsByAdapter) {
121
+ const { name } = callObject.functionFragment;
122
+ switch (name) {
123
+ case "exchange":
124
+ case "exchange_underlying":
125
+ case "exchange_diff":
126
+ case "exchange_diff_underlying": {
127
+ const adapter = (callObject.address || "").toLowerCase();
128
+ const contract = contractsByAdapter[adapter];
129
+ return contract
130
+ ? {
131
+ address: contract,
132
+ interface: types_1.ICurvePool__factory.createInterface(),
133
+ method: "fee()",
134
+ }
135
+ : null;
136
+ }
137
+ default:
138
+ return null;
139
+ }
140
+ }
141
+ static getCurveFee({ value }) {
142
+ const feeOriginal = value || 0n;
143
+ return {
144
+ type: "curve",
145
+ value: (feeOriginal * sdk_gov_1.PERCENTAGE_FACTOR) / CURVE_FEE_DECIMALS,
146
+ };
147
+ }
148
+ static getBalancerFeeCall(callObject) {
149
+ const { name } = callObject.functionFragment;
150
+ switch (name) {
151
+ case "swapDiff":
152
+ case "swap": {
153
+ const { poolId = "" } = callObject.args?.[0] || {};
154
+ const { address } = (0, balancerVault_1.splitPoolId)(poolId);
155
+ return address
156
+ ? {
157
+ address,
158
+ interface: exports.BALANCER_VAULT_INTERFACE,
159
+ method: "getSwapFeePercentage()",
160
+ }
161
+ : null;
162
+ }
163
+ default:
164
+ return null;
165
+ }
166
+ }
167
+ static getBalancerFee({ value }) {
168
+ const feeOriginal = value || 0n;
169
+ return {
170
+ type: "balancer",
171
+ value: (feeOriginal * sdk_gov_1.PERCENTAGE_FACTOR) / BALANCER_FEE_DECIMALS,
172
+ };
173
+ }
174
+ static getLidoFee() {
175
+ return {
176
+ type: "lido",
177
+ value: 0n,
178
+ };
179
+ }
180
+ }
181
+ exports.PathFinderUtils = PathFinderUtils;
@@ -0,0 +1,16 @@
1
+ import { ExcludeArrayProps } from "@gearbox-protocol/sdk-gov";
2
+ import { SwapTaskStructOutput } from "../../types/IRouter";
3
+ import { MultiCall } from "../core";
4
+ export type SwapTaskV1 = ExcludeArrayProps<SwapTaskStructOutput>;
5
+ export interface PathFinderV1Result {
6
+ amount: bigint;
7
+ calls: Array<MultiCall>;
8
+ }
9
+ export interface PathFinderV1OpenStrategyResult {
10
+ balances: Record<string, bigint>;
11
+ calls: Array<MultiCall>;
12
+ }
13
+ export interface PathFinderV1CloseResult {
14
+ underlyingBalance: bigint;
15
+ calls: Array<MultiCall>;
16
+ }
@@ -0,0 +1,46 @@
1
+ import { NetworkType, SupportedToken } from "@gearbox-protocol/sdk-gov";
2
+ import { BigNumberish, Provider, Signer } from "ethers";
3
+ import { CreditAccountData } from "../../core/creditAccount";
4
+ import { CreditManagerData } from "../../core/creditManager";
5
+ import { IRouter } from "../../types";
6
+ import { MultiCall, SwapOperation } from "../core";
7
+ import { PathFinderV1CloseResult, PathFinderV1OpenStrategyResult, PathFinderV1Result } from "./core";
8
+ export interface CloseResult {
9
+ amount: bigint;
10
+ calls: Array<MultiCall>;
11
+ gasUsage: bigint;
12
+ }
13
+ export declare class PathFinderV1 {
14
+ pathFinder: IRouter;
15
+ network: NetworkType;
16
+ static connectors: Array<SupportedToken>;
17
+ protected readonly _connectors: Array<string>;
18
+ constructor(address: string, provider: Signer | Provider, network?: NetworkType, connectors?: SupportedToken[]);
19
+ findAllSwaps(creditAccount: CreditAccountData, swapOperation: SwapOperation, tokenIn: SupportedToken | string, tokenOut: SupportedToken | string, amount: BigNumberish, slippage: number): Promise<Array<PathFinderV1Result>>;
20
+ findOneTokenPath(creditAccount: CreditAccountData, tokenIn: SupportedToken | string, tokenOut: SupportedToken | string, amount: BigNumberish, slippage: number): Promise<PathFinderV1Result>;
21
+ /**
22
+ * @dev Finds the best path for opening credit account and converting all NORMAL tokens and LP token in the way to TARGET
23
+ * @param cm CreditManagerData which represents credit manager you want to use to open credit account
24
+ * @param expectedBalances Expected balances which would be on account accounting also debt. For example,
25
+ * if you open an USDC credit account, borrow 50_000 USDC and provide 10 WETH and 10_USDC as collateral
26
+ * from your own funds, expectedBalances should be: { "USDC": 60_000 * (10**6), "<address of WETH>": WAD.mul(10) }
27
+ *
28
+ * @param target Address of symbol of desired token
29
+ * @param slippage Slippage in PERCENTAGE_FORMAT (100% = 10_000) per operation
30
+ * @returns PathFinderOpenStrategyResult which
31
+ */
32
+ findOpenStrategyPath(cm: CreditManagerData, expectedBalances: Record<SupportedToken | string, BigNumberish>, target: SupportedToken | string, slippage: number): Promise<PathFinderV1OpenStrategyResult>;
33
+ /**
34
+ * @dev Finds the path to swap / withdraw all assets from CreditAccount into underlying asset
35
+ * Can bu used for closing credit account and for liquidations as well.
36
+ * @param creditAccount CreditAccountData object used for close path computation
37
+ * @param slippage Slippage in PERCENTAGE_FORMAT (100% = 10_000) per operation
38
+ * @return The best option in PathFinderCloseResult format, which
39
+ * - underlyingBalance - total balance of underlying token
40
+ * - calls - list of calls which should be done to swap & unwrap everything to underlying token
41
+ */
42
+ findBestClosePath(creditAccount: CreditAccountData, slippage: number, noConcurency: boolean | undefined, network: NetworkType): Promise<PathFinderV1CloseResult>;
43
+ static compare(r1: CloseResult, r2: CloseResult, gasPriceRAY: bigint): CloseResult;
44
+ getAvailableConnectors(availableList: Record<string, bigint> | Record<string, true>): string[];
45
+ static getAvailableConnectors(availableList: Record<string, bigint> | Record<string, true>, connectors: string[]): string[];
46
+ }
@@ -0,0 +1,154 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PathFinderV1 = void 0;
4
+ const sdk_gov_1 = require("@gearbox-protocol/sdk-gov");
5
+ const types_1 = require("../../types");
6
+ const pathOptions_1 = require("../pathOptions");
7
+ const MAX_GAS_PER_ROUTE = 200e6;
8
+ const GAS_PER_BLOCK = 400e6;
9
+ class PathFinderV1 {
10
+ pathFinder;
11
+ network;
12
+ static connectors = [
13
+ "USDC",
14
+ "WETH",
15
+ "USDT",
16
+ "FRAX",
17
+ ];
18
+ _connectors;
19
+ constructor(address, provider, network = "Mainnet", connectors = PathFinderV1.connectors) {
20
+ this.pathFinder = types_1.IRouter__factory.connect(address, provider);
21
+ this.network = network;
22
+ this._connectors = connectors
23
+ .map(c => sdk_gov_1.tokenDataByNetwork[this.network][c]?.toLowerCase())
24
+ .filter(t => !!t);
25
+ }
26
+ async findAllSwaps(creditAccount, swapOperation, tokenIn, tokenOut, amount, slippage) {
27
+ const connectors = this.getAvailableConnectors(creditAccount.balances);
28
+ const swapTask = {
29
+ swapOperation: BigInt(swapOperation),
30
+ creditAccount: creditAccount.addr,
31
+ tokenIn: sdk_gov_1.tokenDataByNetwork[this.network][tokenIn] || tokenIn,
32
+ tokenOut: sdk_gov_1.tokenDataByNetwork[this.network][tokenOut] ||
33
+ tokenOut,
34
+ connectors,
35
+ amount: BigInt(amount),
36
+ slippage: BigInt(slippage),
37
+ externalSlippage: false,
38
+ };
39
+ const results = await this.pathFinder.findAllSwaps.staticCall(swapTask, {
40
+ gasLimit: GAS_PER_BLOCK,
41
+ });
42
+ const unique = {};
43
+ results.forEach(r => {
44
+ const key = `${r.amount}${r.calls
45
+ .map(c => `${c.target.toLowerCase()}${c.callData}`)
46
+ .join("-")}`;
47
+ unique[key] = {
48
+ amount: r.amount,
49
+ calls: r.calls,
50
+ };
51
+ });
52
+ return Object.values(unique);
53
+ }
54
+ async findOneTokenPath(creditAccount, tokenIn, tokenOut, amount, slippage) {
55
+ const tokenInAddr = sdk_gov_1.tokenDataByNetwork[this.network][tokenIn] || tokenIn;
56
+ const connectors = this.getAvailableConnectors(creditAccount.balances);
57
+ const result = await this.pathFinder.findOneTokenPath.staticCall(tokenInAddr, amount, sdk_gov_1.tokenDataByNetwork[this.network][tokenOut] || tokenOut, creditAccount.addr, connectors, slippage, {
58
+ gasLimit: GAS_PER_BLOCK,
59
+ });
60
+ return {
61
+ amount: result.amount,
62
+ calls: result.calls,
63
+ };
64
+ }
65
+ /**
66
+ * @dev Finds the best path for opening credit account and converting all NORMAL tokens and LP token in the way to TARGET
67
+ * @param cm CreditManagerData which represents credit manager you want to use to open credit account
68
+ * @param expectedBalances Expected balances which would be on account accounting also debt. For example,
69
+ * if you open an USDC credit account, borrow 50_000 USDC and provide 10 WETH and 10_USDC as collateral
70
+ * from your own funds, expectedBalances should be: { "USDC": 60_000 * (10**6), "<address of WETH>": WAD.mul(10) }
71
+ *
72
+ * @param target Address of symbol of desired token
73
+ * @param slippage Slippage in PERCENTAGE_FORMAT (100% = 10_000) per operation
74
+ * @returns PathFinderOpenStrategyResult which
75
+ */
76
+ async findOpenStrategyPath(cm, expectedBalances, target, slippage) {
77
+ const targetAddr = sdk_gov_1.tokenDataByNetwork[this.network][target] || target;
78
+ const expectedBalancesAddr = Object.entries(expectedBalances).reduce((acc, [token, balance]) => {
79
+ const tokenAddr = sdk_gov_1.tokenDataByNetwork[this.network][token] || token;
80
+ acc[tokenAddr.toLowerCase()] = balance;
81
+ return acc;
82
+ }, {});
83
+ const balances = cm.collateralTokens.map(token => ({
84
+ token,
85
+ balance: expectedBalancesAddr[token] || 0,
86
+ }));
87
+ const connectors = this.getAvailableConnectors(cm.supportedTokens);
88
+ const result = await this.pathFinder.findOpenStrategyPath.staticCall(cm.address, balances, targetAddr, connectors, slippage, {
89
+ gasLimit: GAS_PER_BLOCK,
90
+ });
91
+ const balancesAfter = result[0].reduce((acc, b) => {
92
+ acc[b.token.toLowerCase()] = b.balance;
93
+ return acc;
94
+ }, {});
95
+ return {
96
+ balances: balancesAfter,
97
+ calls: result[1].calls,
98
+ };
99
+ }
100
+ /**
101
+ * @dev Finds the path to swap / withdraw all assets from CreditAccount into underlying asset
102
+ * Can bu used for closing credit account and for liquidations as well.
103
+ * @param creditAccount CreditAccountData object used for close path computation
104
+ * @param slippage Slippage in PERCENTAGE_FORMAT (100% = 10_000) per operation
105
+ * @return The best option in PathFinderCloseResult format, which
106
+ * - underlyingBalance - total balance of underlying token
107
+ * - calls - list of calls which should be done to swap & unwrap everything to underlying token
108
+ */
109
+ async findBestClosePath(creditAccount, slippage, noConcurency = false, network) {
110
+ const loopsPerTx = Math.floor(GAS_PER_BLOCK / MAX_GAS_PER_ROUTE);
111
+ const pathOptions = pathOptions_1.PathOptionFactory.generatePathOptions(creditAccount.allBalances, loopsPerTx, network);
112
+ const connectors = this.getAvailableConnectors(creditAccount.balances);
113
+ let results = [];
114
+ if (noConcurency) {
115
+ for (const po of pathOptions) {
116
+ results.push(await this.pathFinder.findBestClosePath.staticCall(creditAccount.addr, connectors, slippage, po, loopsPerTx, false, {
117
+ gasLimit: GAS_PER_BLOCK,
118
+ }));
119
+ }
120
+ }
121
+ else {
122
+ const requests = pathOptions.map(po => this.pathFinder.findBestClosePath.staticCall(creditAccount.addr, connectors, slippage, po, loopsPerTx, false, {
123
+ gasLimit: GAS_PER_BLOCK,
124
+ }));
125
+ results = await Promise.all(requests);
126
+ }
127
+ const bestResult = results.reduce((best, [pathFinderResult, gasPriceRAY]) => PathFinderV1.compare(best, {
128
+ calls: pathFinderResult.calls,
129
+ amount: pathFinderResult.amount,
130
+ gasUsage: pathFinderResult.gasUsage,
131
+ }, gasPriceRAY), {
132
+ amount: 0n,
133
+ gasUsage: 0n,
134
+ calls: [],
135
+ });
136
+ return {
137
+ underlyingBalance: bestResult.amount +
138
+ creditAccount.allBalances[creditAccount.underlyingToken.toLowerCase()]
139
+ .balance,
140
+ calls: bestResult.calls,
141
+ };
142
+ }
143
+ static compare(r1, r2, gasPriceRAY) {
144
+ const comparator = ({ amount, gasUsage }, gasPrice) => amount - (gasUsage * gasPrice) / sdk_gov_1.RAY;
145
+ return comparator(r1, gasPriceRAY) > comparator(r2, gasPriceRAY) ? r1 : r2;
146
+ }
147
+ getAvailableConnectors(availableList) {
148
+ return PathFinderV1.getAvailableConnectors(availableList, this._connectors);
149
+ }
150
+ static getAvailableConnectors(availableList, connectors) {
151
+ return connectors.filter(t => availableList[t] !== undefined);
152
+ }
153
+ }
154
+ exports.PathFinderV1 = PathFinderV1;
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const sdk_gov_1 = require("@gearbox-protocol/sdk-gov");
4
+ const chai_1 = require("chai");
5
+ const ethers_1 = require("ethers");
6
+ const pathfinderv1_1 = require("./pathfinderv1");
7
+ describe("PathFinderV1 test", () => {
8
+ it("compare works correctly", () => {
9
+ const r1 = {
10
+ amount: 2000n,
11
+ gasUsage: 1000n,
12
+ calls: [],
13
+ };
14
+ const r2 = {
15
+ amount: 3000n,
16
+ gasUsage: 2000n,
17
+ calls: [],
18
+ };
19
+ let result = pathfinderv1_1.PathFinderV1.compare(r1, r2, sdk_gov_1.RAY);
20
+ (0, chai_1.expect)(result).to.be.eql(r2);
21
+ result = pathfinderv1_1.PathFinderV1.compare(r1, r2, sdk_gov_1.RAY * 2n);
22
+ (0, chai_1.expect)(result).to.be.eql(r1);
23
+ });
24
+ it("has all expected connectors", () => {
25
+ const pf = new pathfinderv1_1.PathFinderV1("", new ethers_1.JsonRpcProvider(), "Mainnet");
26
+ const allowedTokens = {
27
+ [sdk_gov_1.tokenDataByNetwork.Mainnet.USDC.toLowerCase()]: true,
28
+ [sdk_gov_1.tokenDataByNetwork.Mainnet.WETH.toLowerCase()]: true,
29
+ [sdk_gov_1.tokenDataByNetwork.Mainnet.USDT.toLowerCase()]: true,
30
+ [sdk_gov_1.tokenDataByNetwork.Mainnet.FRAX.toLowerCase()]: true,
31
+ };
32
+ (0, chai_1.expect)(pf.getAvailableConnectors(allowedTokens)).to.be.deep.equal([
33
+ sdk_gov_1.tokenDataByNetwork.Mainnet.USDC.toLowerCase(),
34
+ sdk_gov_1.tokenDataByNetwork.Mainnet.WETH.toLowerCase(),
35
+ sdk_gov_1.tokenDataByNetwork.Mainnet.USDT.toLowerCase(),
36
+ sdk_gov_1.tokenDataByNetwork.Mainnet.FRAX.toLowerCase(),
37
+ ]);
38
+ });
39
+ });
@@ -0,0 +1,13 @@
1
+ import type { BigNumberish } from "ethers";
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: string;
9
+ minHealthFactor: BigNumberish;
10
+ maxHealthFactor: BigNumberish;
11
+ premiumScaleFactor: BigNumberish;
12
+ feeScaleFactor: BigNumberish;
13
+ }
@@ -1,6 +1,5 @@
1
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>>;
2
+ import { CreditAccountDataStructOutput, TokenBalanceStructOutput } from "../types/IDataCompressorV3";
3
+ import { PartialKeys } from "../utils/types";
4
+ export type CaTokenBalance = ExcludeArrayProps<TokenBalanceStructOutput>;
6
5
  export type CreditAccountDataPayload = PartialKeys<ExcludeArrayProps<CreditAccountDataStructOutput>, "accruedInterest" | "accruedFees" | "healthFactor" | "totalValue">;
@@ -1,10 +1,9 @@
1
1
  import { ExcludeArrayProps } from "@gearbox-protocol/sdk-gov";
2
2
  import { BigNumberish } from "ethers";
3
3
  import { ICreditFacadeV2 } from "../types";
4
- import { CreditManagerDataStructOutput, CreditManagerDebtParamsStructOutput, QuotaInfoStructOutput } from "../types/IDataCompressorV3_00";
5
- import { BigintifyProps } from "../utils/types";
6
- export type CreditManagerDebtParams = BigintifyProps<ExcludeArrayProps<CreditManagerDebtParamsStructOutput>>;
7
- export type QuotaInfo = BigintifyProps<ExcludeArrayProps<QuotaInfoStructOutput>>;
4
+ import { CreditManagerDataStructOutput, CreditManagerDebtParamsStructOutput, QuotaInfoStructOutput } from "../types/IDataCompressorV3";
5
+ export type CreditManagerDebtParamsSDK = ExcludeArrayProps<CreditManagerDebtParamsStructOutput>;
6
+ export type QuotaInfo = ExcludeArrayProps<QuotaInfoStructOutput>;
8
7
  export interface AdapterPayload {
9
8
  allowedContract: string;
10
9
  adapter: string;
@@ -14,8 +13,11 @@ export type CreditManagerDataPayload = ExcludeArrayProps<CreditManagerDataStruct
14
13
  export interface ChartsCreditManagerPayload {
15
14
  addr: string;
16
15
  underlyingToken: string;
16
+ configurator: string;
17
+ creditFacade: string;
17
18
  isWeth: boolean;
18
19
  poolAddress: string;
20
+ name: string;
19
21
  maxAmount: BigNumberish;
20
22
  minAmount: BigNumberish;
21
23
  maxLeverageFactor: number;
@@ -53,4 +55,5 @@ export interface ChartsCreditManagerPayload {
53
55
  totalClosedAccountsChange: number;
54
56
  totalRepaidAccounts: number;
55
57
  liquidityThresholds: Record<string, number>;
58
+ totalDebtLimit: BigNumberish;
56
59
  }
@@ -3,8 +3,11 @@ export interface CreditSessionBalancePayload {
3
3
  BI: string;
4
4
  F: number;
5
5
  ind: number;
6
- isAllowed: boolean;
6
+ isForbidden: boolean;
7
7
  isEnabled: boolean;
8
+ quota?: BigNumberish;
9
+ quotaIndexLU?: BigNumberish;
10
+ isQuoted?: boolean;
8
11
  }
9
12
  interface CreditSessionReward {
10
13
  bi: BigNumberish;
@@ -12,6 +15,9 @@ interface CreditSessionReward {
12
15
  pool: string;
13
16
  symbol: string;
14
17
  }
18
+ export interface SecondaryStatus {
19
+ secStatus: Array<[block: number, status: number]>;
20
+ }
15
21
  export interface CreditSessionPayload {
16
22
  id: string;
17
23
  status: number;
@@ -52,6 +58,11 @@ export interface CreditSessionPayload {
52
58
  currentTimestamp: number;
53
59
  cvxUnclaimedRewards: Record<string, CreditSessionReward>;
54
60
  balances: Record<string, CreditSessionBalancePayload>;
61
+ baseBorrowAPY7DAverage: number;
62
+ baseBorrowAPY_RAY: string;
63
+ baseToken: string;
64
+ pool: string;
65
+ teritaryStatus: null | SecondaryStatus;
55
66
  }
56
67
  export interface CreditSessionFilteredPayload {
57
68
  balances: Record<string, CreditSessionBalancePayload>;
@@ -72,6 +83,9 @@ export interface CreditSessionFilteredPayload {
72
83
  pnl: number;
73
84
  pnlUSD: number;
74
85
  tfIndex: number;
86
+ closedAtTimestamp: number;
87
+ sinceTimestamp: number;
88
+ teritaryStatus: null | SecondaryStatus;
75
89
  }
76
90
  export interface CreditSessionsAggregatedStatsPayload {
77
91
  healthFactor: BigNumberish;
@@ -0,0 +1,11 @@
1
+ import { AwaitedRes, ExcludeArrayProps } from "@gearbox-protocol/sdk-gov";
2
+ import { IGearStakingV3 } from "../types";
3
+ import { GaugeInfoStructOutput, GaugeQuotaParamsStructOutput } from "../types/IDataCompressorV3";
4
+ export type GaugeQuotaParams = ExcludeArrayProps<GaugeQuotaParamsStructOutput>;
5
+ export type GaugeDataPayload = ExcludeArrayProps<GaugeInfoStructOutput>;
6
+ export interface GaugeStakingDataPayload {
7
+ availableBalance: AwaitedRes<IGearStakingV3["availableBalance"]>;
8
+ totalBalance: AwaitedRes<IGearStakingV3["balanceOf"]>;
9
+ epoch: AwaitedRes<IGearStakingV3["getCurrentEpoch"]>;
10
+ withdrawableAmounts: AwaitedRes<IGearStakingV3["getWithdrawableAmounts"]>;
11
+ }
@@ -1,10 +1,14 @@
1
1
  import { ExcludeArrayProps } from "@gearbox-protocol/sdk-gov";
2
2
  import { BigNumberish } from "ethers";
3
- import { ZapperInfoStructOutput } from "../types/IDataCompressorV2_10";
4
- import { LinearModelStructOutput, PoolDataStructOutput } from "../types/IDataCompressorV3_00";
3
+ import { ZapperInfoStructOutput } from "../types/IDataCompressorV2_1";
4
+ import { LinearModelStructOutput, PoolDataStructOutput } from "../types/IDataCompressorV3";
5
5
  export type PoolDataPayload = Omit<ExcludeArrayProps<PoolDataStructOutput>, "zappers"> & {
6
6
  zappers: Array<PoolZapper>;
7
7
  };
8
+ export interface PoolDataExtraPayload {
9
+ stakedDieselToken: Array<string>;
10
+ supplyAPY7D: number | undefined;
11
+ }
8
12
  export type LinearModel = Omit<ExcludeArrayProps<LinearModelStructOutput>, "version"> & {
9
13
  version: number;
10
14
  };
@@ -14,6 +18,8 @@ export interface ChartsPoolDataPayload {
14
18
  dieselToken: string;
15
19
  underlyingToken: string;
16
20
  isWETH: boolean;
21
+ version: number;
22
+ name: string;
17
23
  borrowAPY_RAY: BigNumberish;
18
24
  depositAPY_RAY: BigNumberish;
19
25
  dieselRate_RAY: BigNumberish;
@@ -1,5 +1,7 @@
1
+ import { SupportedToken } from "@gearbox-protocol/sdk-gov";
1
2
  export interface TokenDataPayload {
3
+ title?: string;
2
4
  addr: string;
3
- symbol: string;
5
+ symbol: SupportedToken;
4
6
  decimals: number;
5
7
  }
@@ -0,0 +1,44 @@
1
+ import { NetworkType, SupportedToken, TickerInfo } from "@gearbox-protocol/sdk-gov";
2
+ import { SignedDataPackage } from "@redstone-finance/protocol";
3
+ import { Provider } from "ethers";
4
+ export declare const DEFAULT_DATA_SERVICE_ID = "redstone-primary-prod";
5
+ export declare const REDSTONE_SIGNERS_THRESHOLD: number;
6
+ interface RedstonePriceFeedInfo {
7
+ tokenAddress: string;
8
+ tickedTokenAddress: string;
9
+ symbol: SupportedToken;
10
+ feedAddress: string;
11
+ dataFeedId: string;
12
+ tickedDataFeedId: string;
13
+ dataServiceId: string;
14
+ reserve: boolean;
15
+ ticker?: TickerInfo;
16
+ }
17
+ export type RedstonePriceFeeds = Array<RedstonePriceFeedInfo>;
18
+ export interface GetRedstoneFeedsProps {
19
+ provider: Provider;
20
+ currentTokenData: Record<SupportedToken, string>;
21
+ priceOracleAddress: string;
22
+ network: NetworkType;
23
+ }
24
+ export declare class RedstoneApi {
25
+ static getPricesBulk(feedsToUpdate: Array<RedstonePriceFeedInfo>): Promise<string[]>;
26
+ static getRedstonePayloadForManualUsage: (dataServiceId: string, dataFeeds: string, uniqueSignersCount: number) => Promise<string>;
27
+ static getDataPackagesBulk(feedsToUpdate: Array<RedstonePriceFeedInfo>): Promise<{
28
+ [k: string]: SignedDataPackage[];
29
+ }>;
30
+ private static getDataPackages;
31
+ private static splitResponse;
32
+ static getRedstonePriceFeedsSDK: ({ priceOracleAddress, currentTokenData, provider, network, }: GetRedstoneFeedsProps) => Promise<{
33
+ main: RedstonePriceFeeds;
34
+ reserve: RedstonePriceFeeds;
35
+ }>;
36
+ private static getRedstonePF_SDK;
37
+ static getRedstonePriceFeeds: ({ priceOracleAddress, currentTokenData, provider, network, }: GetRedstoneFeedsProps) => Promise<{
38
+ main: RedstonePriceFeeds;
39
+ reserve: RedstonePriceFeeds;
40
+ }>;
41
+ private static getPriceFeedsOfInterest_Onchain;
42
+ private static getRedstonePF_Onchain;
43
+ }
44
+ export {};