@gearbox-protocol/sdk 3.0.0-next.9 → 3.0.0-next.90

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 (522) hide show
  1. package/contracts/index.sol +33 -4
  2. package/lib/apy/curveAPY.js +2 -1
  3. package/lib/apy/index.d.ts +2 -2
  4. package/lib/apy/yearnAPY.js +1 -1
  5. package/lib/core/assets.d.ts +4 -4
  6. package/lib/core/assets.js +28 -17
  7. package/lib/core/creditAccount.d.ts +33 -9
  8. package/lib/core/creditAccount.js +102 -46
  9. package/lib/core/creditAccount.spec.js +703 -10
  10. package/lib/core/creditManager.d.ts +17 -6
  11. package/lib/core/creditManager.js +63 -14
  12. package/lib/core/endpoint.d.ts +10 -0
  13. package/lib/core/endpoint.js +26 -0
  14. package/lib/core/events.js +16 -16
  15. package/lib/core/gauge.d.ts +26 -0
  16. package/lib/core/gauge.js +63 -0
  17. package/lib/core/gaugeMath.d.ts +40 -0
  18. package/lib/core/gaugeMath.js +108 -0
  19. package/lib/core/gaugeMath.spec.d.ts +1 -0
  20. package/lib/core/gaugeMath.spec.js +388 -0
  21. package/lib/core/{pool/data.d.ts → pool.d.ts} +21 -12
  22. package/lib/core/{pool/data.js → pool.js} +74 -28
  23. package/lib/core/strategy.d.ts +5 -4
  24. package/lib/core/strategy.js +16 -15
  25. package/lib/core/strategy.spec.js +69 -19
  26. package/lib/core/trade.d.ts +9 -8
  27. package/lib/core/trade.js +32 -25
  28. package/lib/core/transactions.d.ts +65 -3
  29. package/lib/core/transactions.js +165 -108
  30. package/lib/index.d.ts +5 -0
  31. package/lib/index.js +5 -0
  32. package/lib/parsers/abstractParser.js +1 -2
  33. package/lib/parsers/convexBaseRewardPoolAdapterParser.js +10 -8
  34. package/lib/parsers/convexBaseRewardPoolAdapterParser.spec.js +9 -6
  35. package/lib/parsers/convexBoosterAdapterParser.js +6 -6
  36. package/lib/parsers/convexBoosterAdapterParser.spec.js +4 -4
  37. package/lib/parsers/creditFacadeParser.d.ts +2 -1
  38. package/lib/parsers/creditFacadeParser.js +44 -5
  39. package/lib/parsers/creditFacadeParser.spec.js +3 -4
  40. package/lib/parsers/curveAdapterParser.js +10 -11
  41. package/lib/parsers/curveAdapterParser.spec.js +6 -2
  42. package/lib/parsers/lidoAdapterParser.js +3 -2
  43. package/lib/parsers/lidoAdapterParser.spec.js +2 -2
  44. package/lib/parsers/txParser.d.ts +1 -1
  45. package/lib/parsers/txParser.js +9 -3
  46. package/lib/parsers/uniV2AdapterParser.js +5 -4
  47. package/lib/parsers/uniV2AdapterParser.spec.js +3 -2
  48. package/lib/parsers/uniV3AdapterParser.js +9 -7
  49. package/lib/parsers/uniV3AdapterParser.spec.js +3 -2
  50. package/lib/parsers/wstETHAdapterParser.js +6 -4
  51. package/lib/parsers/wstETHAdapterParser.spec.js +4 -4
  52. package/lib/parsers/yearnAdapterParser.spec.js +4 -4
  53. package/lib/parsers/yearnV2AdapterParser.js +13 -3
  54. package/lib/pathfinder/core.d.ts +8 -9
  55. package/lib/pathfinder/pathOptions.d.ts +2 -1
  56. package/lib/pathfinder/pathOptions.js +20 -1
  57. package/lib/pathfinder/pathOptions.spec.js +2 -2
  58. package/lib/pathfinder/pathfinder.d.ts +44 -16
  59. package/lib/pathfinder/pathfinder.js +58 -39
  60. package/lib/pathfinder/pathfinder.spec.js +7 -3
  61. package/lib/pathfinder/v1/core.d.ts +16 -0
  62. package/lib/pathfinder/v1/pathfinderv1.d.ts +46 -0
  63. package/lib/pathfinder/v1/pathfinderv1.js +155 -0
  64. package/lib/pathfinder/v1/pathfinderv1.spec.d.ts +1 -0
  65. package/lib/pathfinder/v1/pathfinderv1.spec.js +39 -0
  66. package/lib/payload/creditAccount.d.ts +3 -4
  67. package/lib/payload/creditManager.d.ts +1 -0
  68. package/lib/payload/gauge.d.ts +12 -0
  69. package/lib/payload/pool.d.ts +9 -1
  70. package/lib/types/CalldataExtractor.d.ts +44 -0
  71. package/lib/types/FarmAccounting.d.ts +27 -0
  72. package/lib/types/IAaveV2_LendingPoolAdapter.d.ts +171 -0
  73. package/lib/types/IAaveV2_WrappedATokenAdapter.d.ts +290 -0
  74. package/lib/types/IBalancerV2Vault.sol/IBalancerV2Vault.d.ts +308 -0
  75. package/lib/types/IBalancerV2Vault.sol/IBalancerV2VaultGetters.d.ts +112 -0
  76. package/lib/types/IBalancerV2Vault.sol/index.d.ts +2 -0
  77. package/lib/types/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapter.d.ts +466 -0
  78. package/lib/types/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterEvents.d.ts +43 -0
  79. package/lib/types/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterExceptions.d.ts +27 -0
  80. package/lib/types/IBalancerV2VaultAdapter.sol/index.d.ts +3 -0
  81. package/lib/types/IBotListV3.sol/IBotListV3.d.ts +286 -0
  82. package/lib/types/IBotListV3.sol/IBotListV3Events.d.ts +103 -0
  83. package/lib/types/IBotListV3.sol/index.d.ts +2 -0
  84. package/lib/types/ICompoundV2_CTokenAdapter.sol/ICompoundV2_CTokenAdapter.d.ts +216 -0
  85. package/lib/types/ICompoundV2_CTokenAdapter.sol/ICompoundV2_Exceptions.d.ts +27 -0
  86. package/lib/types/ICompoundV2_CTokenAdapter.sol/index.d.ts +2 -0
  87. package/lib/types/IContractsRegister.sol/IContractsRegister.d.ts +128 -0
  88. package/lib/types/IContractsRegister.sol/IContractsRegisterEvents.d.ts +50 -0
  89. package/lib/types/IContractsRegister.sol/index.d.ts +2 -0
  90. package/lib/types/IContractsRegister.sol/index.js +2 -0
  91. package/lib/types/IControllerTimelockV3.sol/IControllerTimelockV3.d.ts +504 -0
  92. package/lib/types/IControllerTimelockV3.sol/IControllerTimelockV3.js +2 -0
  93. package/lib/types/IControllerTimelockV3.sol/IControllerTimelockV3Events.d.ts +82 -0
  94. package/lib/types/IControllerTimelockV3.sol/IControllerTimelockV3Events.js +2 -0
  95. package/lib/types/IControllerTimelockV3.sol/index.d.ts +2 -0
  96. package/lib/types/IControllerTimelockV3.sol/index.js +2 -0
  97. package/lib/types/IConvexToken.d.ts +9 -1
  98. package/lib/types/IConvexV1BaseRewardPoolAdapter.d.ts +46 -30
  99. package/lib/types/{IConvexV1BoosterAdapter.d.ts → IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter.d.ts} +40 -21
  100. package/lib/types/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter.js +2 -0
  101. package/lib/types/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapterEvents.d.ts +43 -0
  102. package/lib/types/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapterEvents.js +2 -0
  103. package/lib/types/IConvexV1BoosterAdapter.sol/index.d.ts +2 -0
  104. package/lib/types/IConvexV1BoosterAdapter.sol/index.js +2 -0
  105. package/lib/types/ICreditConfiguratorV3.sol/ICreditConfiguratorV3.d.ts +716 -0
  106. package/lib/types/ICreditConfiguratorV3.sol/ICreditConfiguratorV3.js +2 -0
  107. package/lib/types/ICreditConfiguratorV3.sol/ICreditConfiguratorV3Events.d.ts +275 -0
  108. package/lib/types/ICreditConfiguratorV3.sol/ICreditConfiguratorV3Events.js +2 -0
  109. package/lib/types/ICreditConfiguratorV3.sol/index.d.ts +2 -0
  110. package/lib/types/ICreditConfiguratorV3.sol/index.js +2 -0
  111. package/lib/types/ICreditFacadeV2.sol/ICreditFacadeV2Extended.d.ts +7 -11
  112. package/lib/types/ICreditFacadeV3.sol/ICreditFacadeV3.d.ts +193 -96
  113. package/lib/types/ICreditFacadeV3.sol/ICreditFacadeV3Events.d.ts +31 -35
  114. package/lib/types/ICreditFacadeV3Multicall.d.ts +91 -60
  115. package/lib/types/ICreditManagerV3.sol/ICreditManagerV3.d.ts +360 -106
  116. package/lib/types/ICurveV1Adapter.d.ts +41 -105
  117. package/lib/types/ICurveV1_2AssetsAdapter.d.ts +41 -105
  118. package/lib/types/ICurveV1_3AssetsAdapter.d.ts +41 -105
  119. package/lib/types/ICurveV1_4AssetsAdapter.d.ts +41 -105
  120. package/lib/types/IDataCompressorV2_10.d.ts +44 -39
  121. package/lib/types/IDataCompressorV3_00.d.ts +141 -40
  122. package/lib/types/IDegenNFTV2.sol/IDegenNFTV2.d.ts +339 -0
  123. package/lib/types/IDegenNFTV2.sol/IDegenNFTV2.js +2 -0
  124. package/lib/types/IDegenNFTV2.sol/IDegenNFTV2Events.d.ts +61 -0
  125. package/lib/types/IDegenNFTV2.sol/IDegenNFTV2Events.js +2 -0
  126. package/lib/types/IDegenNFTV2.sol/IDegenNFTV2Exceptions.d.ts +27 -0
  127. package/lib/types/IDegenNFTV2.sol/IDegenNFTV2Exceptions.js +2 -0
  128. package/lib/types/IDegenNFTV2.sol/index.d.ts +3 -0
  129. package/lib/types/IDegenNFTV2.sol/index.js +2 -0
  130. package/lib/types/IERC165.d.ts +42 -0
  131. package/lib/types/IERC165.js +2 -0
  132. package/lib/types/{draft-IERC20Permit.sol/IERC20Permit.d.ts → IERC20Permit.d.ts} +1 -1
  133. package/lib/types/IERC20Permit.js +2 -0
  134. package/lib/types/IERC20ZapperDeposits.d.ts +117 -0
  135. package/lib/types/IERC20ZapperDeposits.js +2 -0
  136. package/lib/types/IERC4626Adapter.d.ts +238 -0
  137. package/lib/types/IERC4626Adapter.js +2 -0
  138. package/lib/types/IERC721.d.ts +220 -0
  139. package/lib/types/IERC721.js +2 -0
  140. package/lib/types/IERC721Metadata.d.ts +244 -0
  141. package/lib/types/IERC721Metadata.js +2 -0
  142. package/lib/types/IETHZapperDeposits.d.ts +66 -0
  143. package/lib/types/IETHZapperDeposits.js +2 -0
  144. package/lib/types/{AaveV2_WrappedAToken.sol/WrappedAToken.d.ts → IFarmingPool.d.ts} +131 -145
  145. package/lib/types/IFarmingPool.js +2 -0
  146. package/lib/types/IGasPricer.d.ts +44 -0
  147. package/lib/types/IGasPricer.js +2 -0
  148. package/lib/types/IGaugeV3.sol/IGaugeV3.d.ts +366 -0
  149. package/lib/types/IGaugeV3.sol/IGaugeV3.js +2 -0
  150. package/lib/types/IGaugeV3.sol/IGaugeV3Events.d.ts +114 -0
  151. package/lib/types/IGaugeV3.sol/IGaugeV3Events.js +2 -0
  152. package/lib/types/IGaugeV3.sol/index.d.ts +2 -0
  153. package/lib/types/IGaugeV3.sol/index.js +2 -0
  154. package/lib/types/IGearStakingV3.sol/IGearStakingV3.d.ts +408 -0
  155. package/lib/types/IGearStakingV3.sol/IGearStakingV3.js +2 -0
  156. package/lib/types/IGearStakingV3.sol/IGearStakingV3Events.d.ts +117 -0
  157. package/lib/types/IGearStakingV3.sol/IGearStakingV3Events.js +2 -0
  158. package/lib/types/IGearStakingV3.sol/index.d.ts +2 -0
  159. package/lib/types/IGearStakingV3.sol/index.js +2 -0
  160. package/lib/types/ILPPriceFeed.sol/ILPPriceFeed.d.ts +285 -0
  161. package/lib/types/ILPPriceFeed.sol/ILPPriceFeed.js +2 -0
  162. package/lib/types/ILPPriceFeed.sol/ILPPriceFeedEvents.d.ts +54 -0
  163. package/lib/types/ILPPriceFeed.sol/ILPPriceFeedEvents.js +2 -0
  164. package/lib/types/ILPPriceFeed.sol/ILPPriceFeedExceptions.d.ts +27 -0
  165. package/lib/types/ILPPriceFeed.sol/ILPPriceFeedExceptions.js +2 -0
  166. package/lib/types/ILPPriceFeed.sol/index.d.ts +3 -0
  167. package/lib/types/ILPPriceFeed.sol/index.js +2 -0
  168. package/lib/types/{ILidoV1Adapter.sol/ILidoV1Adapter.d.ts → ILidoV1Adapter.d.ts} +13 -48
  169. package/lib/types/ILidoV1Adapter.js +2 -0
  170. package/lib/types/ILinearInterestRateModelV3.d.ts +120 -0
  171. package/lib/types/ILinearInterestRateModelV3.js +2 -0
  172. package/lib/types/IPoolQuotaKeeperV3.sol/IPoolQuotaKeeperV3.d.ts +473 -0
  173. package/lib/types/IPoolQuotaKeeperV3.sol/IPoolQuotaKeeperV3.js +2 -0
  174. package/lib/types/IPoolQuotaKeeperV3.sol/IPoolQuotaKeeperV3Events.d.ts +113 -0
  175. package/lib/types/IPoolQuotaKeeperV3.sol/IPoolQuotaKeeperV3Events.js +2 -0
  176. package/lib/types/IPoolQuotaKeeperV3.sol/index.d.ts +2 -0
  177. package/lib/types/IPoolQuotaKeeperV3.sol/index.js +2 -0
  178. package/lib/types/IPoolV3.sol/IPoolV3.d.ts +43 -11
  179. package/lib/types/IPoolV3.sol/index.d.ts +0 -1
  180. package/lib/types/IPriceFeed.sol/IPriceFeed.d.ts +109 -0
  181. package/lib/types/IPriceFeed.sol/IPriceFeed.js +2 -0
  182. package/lib/types/IPriceFeed.sol/IUpdatablePriceFeed.d.ts +133 -0
  183. package/lib/types/IPriceFeed.sol/IUpdatablePriceFeed.js +2 -0
  184. package/lib/types/IPriceFeed.sol/index.d.ts +2 -0
  185. package/lib/types/IPriceFeed.sol/index.js +2 -0
  186. package/lib/types/IPriceOracle.sol/IPriceOracleV2.d.ts +166 -0
  187. package/lib/types/IPriceOracle.sol/IPriceOracleV2.js +2 -0
  188. package/lib/types/IPriceOracle.sol/IPriceOracleV2Events.d.ts +43 -0
  189. package/lib/types/IPriceOracle.sol/IPriceOracleV2Events.js +2 -0
  190. package/lib/types/{ILidoV1Adapter.sol/ILidoV1AdapterExceptions.d.ts → IPriceOracle.sol/IPriceOracleV2Exceptions.d.ts} +3 -3
  191. package/lib/types/IPriceOracle.sol/IPriceOracleV2Exceptions.js +2 -0
  192. package/lib/types/IPriceOracle.sol/IPriceOracleV2Ext.d.ts +182 -0
  193. package/lib/types/IPriceOracle.sol/IPriceOracleV2Ext.js +2 -0
  194. package/lib/types/IPriceOracle.sol/index.d.ts +4 -0
  195. package/lib/types/IPriceOracle.sol/index.js +2 -0
  196. package/lib/types/IPriceOracleV3.sol/IPriceOracleV3.d.ts +272 -0
  197. package/lib/types/IPriceOracleV3.sol/IPriceOracleV3.js +2 -0
  198. package/lib/types/IPriceOracleV3.sol/IPriceOracleV3Events.d.ts +79 -0
  199. package/lib/types/IPriceOracleV3.sol/IPriceOracleV3Events.js +2 -0
  200. package/lib/types/IPriceOracleV3.sol/index.d.ts +2 -0
  201. package/lib/types/IPriceOracleV3.sol/index.js +2 -0
  202. package/lib/types/IRouter.d.ts +11 -1
  203. package/lib/types/IRouterV3.d.ts +281 -0
  204. package/lib/types/IRouterV3.js +2 -0
  205. package/lib/types/IUniswapV2Adapter.sol/IUniswapV2Adapter.d.ts +10 -9
  206. package/lib/types/IUniswapV3Adapter.sol/IUniswapV3Adapter.d.ts +27 -21
  207. package/lib/types/IVotingContractV3.d.ts +74 -0
  208. package/lib/types/IVotingContractV3.js +2 -0
  209. package/lib/types/IYearnV2Adapter.d.ts +22 -22
  210. package/lib/types/IZapper.d.ts +125 -0
  211. package/lib/types/IZapper.js +2 -0
  212. package/lib/types/IZapperRegister.d.ts +62 -0
  213. package/lib/types/IZapperRegister.js +2 -0
  214. package/lib/types/IwstETHV1Adapter.d.ts +17 -17
  215. package/lib/types/NumericArrayLib.d.ts +27 -0
  216. package/lib/types/NumericArrayLib.js +2 -0
  217. package/lib/types/RedstoneConstants.d.ts +27 -0
  218. package/lib/types/RedstoneConstants.js +2 -0
  219. package/lib/types/RedstoneConsumerBase.d.ts +84 -0
  220. package/lib/types/RedstoneConsumerBase.js +2 -0
  221. package/lib/types/RedstoneConsumerNumericBase.d.ts +84 -0
  222. package/lib/types/RedstoneConsumerNumericBase.js +2 -0
  223. package/lib/types/RedstoneDefaultsLib.d.ts +27 -0
  224. package/lib/types/RedstoneDefaultsLib.js +2 -0
  225. package/lib/types/{ILidoV1Adapter.sol/ILidoV1AdapterEvents.d.ts → RedstonePriceFeed.sol/IRedstonePriceFeedEvents.d.ts} +11 -11
  226. package/lib/types/RedstonePriceFeed.sol/IRedstonePriceFeedEvents.js +2 -0
  227. package/lib/types/RedstonePriceFeed.sol/IRedstonePriceFeedExceptions.d.ts +27 -0
  228. package/lib/types/RedstonePriceFeed.sol/IRedstonePriceFeedExceptions.js +2 -0
  229. package/lib/types/RedstonePriceFeed.sol/RedstonePriceFeed.d.ts +279 -0
  230. package/lib/types/RedstonePriceFeed.sol/RedstonePriceFeed.js +2 -0
  231. package/lib/types/RedstonePriceFeed.sol/index.d.ts +3 -0
  232. package/lib/types/RedstonePriceFeed.sol/index.js +2 -0
  233. package/lib/types/factories/AddressProvider__factory.d.ts +1 -1
  234. package/lib/types/factories/AddressProvider__factory.js +1 -1
  235. package/lib/types/factories/Balances.sol/BalanceOps__factory.d.ts +1 -1
  236. package/lib/types/factories/Balances.sol/BalanceOps__factory.js +1 -1
  237. package/lib/types/factories/CalldataExtractor__factory.d.ts +87 -0
  238. package/lib/types/factories/CalldataExtractor__factory.js +127 -0
  239. package/lib/types/factories/Claimable__factory.d.ts +1 -1
  240. package/lib/types/factories/Claimable__factory.js +1 -1
  241. package/lib/types/factories/ERC20__factory.d.ts +1 -1
  242. package/lib/types/factories/ERC20__factory.js +1 -1
  243. package/lib/types/factories/Errors__factory.d.ts +1 -1
  244. package/lib/types/factories/Errors__factory.js +1 -1
  245. package/lib/types/factories/FarmAccounting__factory.d.ts +33 -0
  246. package/lib/types/factories/FarmAccounting__factory.js +57 -0
  247. package/lib/types/factories/IAaveV2_LendingPoolAdapter__factory.d.ts +158 -0
  248. package/lib/types/factories/IAaveV2_LendingPoolAdapter__factory.js +215 -0
  249. package/lib/types/factories/IAaveV2_WrappedATokenAdapter__factory.d.ts +252 -0
  250. package/lib/types/factories/IAaveV2_WrappedATokenAdapter__factory.js +341 -0
  251. package/lib/types/factories/IBalancerV2Vault.sol/IBalancerV2VaultGetters__factory.d.ts +78 -0
  252. package/lib/types/factories/{ZapperBase__factory.js → IBalancerV2Vault.sol/IBalancerV2VaultGetters__factory.js} +54 -31
  253. package/lib/types/factories/IBalancerV2Vault.sol/IBalancerV2Vault__factory.d.ts +360 -0
  254. package/lib/types/factories/IBalancerV2Vault.sol/IBalancerV2Vault__factory.js +475 -0
  255. package/lib/types/factories/IBalancerV2Vault.sol/index.d.ts +2 -0
  256. package/lib/types/factories/IBalancerV2Vault.sol/index.js +10 -0
  257. package/lib/types/factories/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterEvents__factory.d.ts +23 -0
  258. package/lib/types/factories/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterEvents__factory.js +38 -0
  259. package/lib/types/factories/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterExceptions__factory.d.ts +12 -0
  260. package/lib/types/factories/{ILidoV1Adapter.sol/ILidoV1AdapterExceptions__factory.js → IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterExceptions__factory.js} +4 -4
  261. package/lib/types/factories/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapter__factory.d.ts +514 -0
  262. package/lib/types/factories/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapter__factory.js +675 -0
  263. package/lib/types/factories/IBalancerV2VaultAdapter.sol/index.d.ts +3 -0
  264. package/lib/types/factories/IBalancerV2VaultAdapter.sol/index.js +12 -0
  265. package/lib/types/factories/IBotListV3.sol/IBotListV3Events__factory.d.ts +103 -0
  266. package/lib/types/factories/IBotListV3.sol/IBotListV3Events__factory.js +138 -0
  267. package/lib/types/factories/IBotListV3.sol/IBotListV3__factory.d.ts +315 -0
  268. package/lib/types/factories/IBotListV3.sol/IBotListV3__factory.js +416 -0
  269. package/lib/types/factories/IBotListV3.sol/index.d.ts +2 -0
  270. package/lib/types/factories/IBotListV3.sol/index.js +10 -0
  271. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/ICompoundV2_CTokenAdapter__factory.d.ts +196 -0
  272. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/ICompoundV2_CTokenAdapter__factory.js +267 -0
  273. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/ICompoundV2_Exceptions__factory.d.ts +16 -0
  274. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/ICompoundV2_Exceptions__factory.js +30 -0
  275. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/index.d.ts +2 -0
  276. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/index.js +10 -0
  277. package/lib/types/factories/IContractsRegister.sol/IContractsRegisterEvents__factory.d.ts +28 -0
  278. package/lib/types/factories/IContractsRegister.sol/IContractsRegisterEvents__factory.js +45 -0
  279. package/lib/types/factories/IContractsRegister.sol/IContractsRegister__factory.d.ts +134 -0
  280. package/lib/types/factories/IContractsRegister.sol/IContractsRegister__factory.js +186 -0
  281. package/lib/types/factories/IContractsRegister.sol/index.d.ts +2 -0
  282. package/lib/types/factories/IContractsRegister.sol/index.js +10 -0
  283. package/lib/types/factories/IControllerTimelockV3.sol/IControllerTimelockV3Events__factory.d.ts +73 -0
  284. package/lib/types/factories/IControllerTimelockV3.sol/IControllerTimelockV3Events__factory.js +101 -0
  285. package/lib/types/factories/IControllerTimelockV3.sol/IControllerTimelockV3__factory.d.ts +427 -0
  286. package/lib/types/factories/IControllerTimelockV3.sol/IControllerTimelockV3__factory.js +556 -0
  287. package/lib/types/factories/IControllerTimelockV3.sol/index.d.ts +2 -0
  288. package/lib/types/factories/IControllerTimelockV3.sol/index.js +10 -0
  289. package/lib/types/factories/IConvexToken__factory.d.ts +10 -0
  290. package/lib/types/factories/IConvexToken__factory.js +13 -0
  291. package/lib/types/factories/IConvexV1BaseRewardPoolAdapter__factory.d.ts +38 -6
  292. package/lib/types/factories/IConvexV1BaseRewardPoolAdapter__factory.js +48 -6
  293. package/lib/types/factories/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapterEvents__factory.d.ts +23 -0
  294. package/lib/types/factories/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapterEvents__factory.js +38 -0
  295. package/lib/types/factories/{IConvexV1BoosterAdapter__factory.d.ts → IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter__factory.d.ts} +26 -3
  296. package/lib/types/factories/{IConvexV1BoosterAdapter__factory.js → IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter__factory.js} +31 -2
  297. package/lib/types/factories/IConvexV1BoosterAdapter.sol/index.d.ts +2 -0
  298. package/lib/types/factories/IConvexV1BoosterAdapter.sol/index.js +10 -0
  299. package/lib/types/factories/ICreditConfiguratorV3.sol/ICreditConfiguratorV3Events__factory.d.ts +273 -0
  300. package/lib/types/factories/ICreditConfiguratorV3.sol/ICreditConfiguratorV3Events__factory.js +357 -0
  301. package/lib/types/factories/ICreditConfiguratorV3.sol/ICreditConfiguratorV3__factory.d.ts +605 -0
  302. package/lib/types/factories/ICreditConfiguratorV3.sol/ICreditConfiguratorV3__factory.js +785 -0
  303. package/lib/types/factories/ICreditConfiguratorV3.sol/index.d.ts +2 -0
  304. package/lib/types/factories/ICreditConfiguratorV3.sol/index.js +10 -0
  305. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2Extended__factory.d.ts +0 -4
  306. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2Extended__factory.js +0 -5
  307. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3Events__factory.d.ts +19 -29
  308. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3Events__factory.js +21 -33
  309. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3__factory.d.ts +141 -77
  310. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3__factory.js +176 -91
  311. package/lib/types/factories/ICreditFacadeV3Multicall__factory.d.ts +77 -43
  312. package/lib/types/factories/ICreditFacadeV3Multicall__factory.js +96 -54
  313. package/lib/types/factories/ICreditManagerV3.sol/ICreditManagerV3__factory.d.ts +337 -155
  314. package/lib/types/factories/ICreditManagerV3.sol/ICreditManagerV3__factory.js +423 -189
  315. package/lib/types/factories/ICurveV1Adapter__factory.d.ts +13 -71
  316. package/lib/types/factories/ICurveV1Adapter__factory.js +14 -91
  317. package/lib/types/factories/ICurveV1_2AssetsAdapter__factory.d.ts +13 -71
  318. package/lib/types/factories/ICurveV1_2AssetsAdapter__factory.js +14 -91
  319. package/lib/types/factories/ICurveV1_3AssetsAdapter__factory.d.ts +13 -71
  320. package/lib/types/factories/ICurveV1_3AssetsAdapter__factory.js +14 -91
  321. package/lib/types/factories/ICurveV1_4AssetsAdapter__factory.d.ts +13 -71
  322. package/lib/types/factories/ICurveV1_4AssetsAdapter__factory.js +14 -91
  323. package/lib/types/factories/IDataCompressorV2_10__factory.d.ts +110 -62
  324. package/lib/types/factories/IDataCompressorV2_10__factory.js +138 -78
  325. package/lib/types/factories/IDataCompressorV3_00__factory.d.ts +375 -91
  326. package/lib/types/factories/IDataCompressorV3_00__factory.js +476 -115
  327. package/lib/types/factories/IDegenNFTV2.sol/IDegenNFTV2Events__factory.d.ts +38 -0
  328. package/lib/types/factories/IDegenNFTV2.sol/IDegenNFTV2Events__factory.js +58 -0
  329. package/lib/types/factories/IDegenNFTV2.sol/IDegenNFTV2Exceptions__factory.d.ts +24 -0
  330. package/lib/types/factories/IDegenNFTV2.sol/IDegenNFTV2Exceptions__factory.js +39 -0
  331. package/lib/types/factories/{IWithdrawalManagerV3.sol/IWithdrawalManagerV3__factory.d.ts → IDegenNFTV2.sol/IDegenNFTV2__factory.d.ts} +190 -180
  332. package/lib/types/factories/{IWithdrawalManagerV3.sol/IWithdrawalManagerV3__factory.js → IDegenNFTV2.sol/IDegenNFTV2__factory.js} +212 -195
  333. package/lib/types/factories/IDegenNFTV2.sol/index.d.ts +3 -0
  334. package/lib/types/factories/IDegenNFTV2.sol/index.js +12 -0
  335. package/lib/types/factories/IERC165__factory.d.ts +22 -0
  336. package/lib/types/factories/IERC165__factory.js +38 -0
  337. package/lib/types/factories/{draft-IERC20Permit.sol/IERC20Permit__factory.d.ts → IERC20Permit__factory.d.ts} +1 -1
  338. package/lib/types/factories/IERC20ZapperDeposits__factory.d.ts +120 -0
  339. package/lib/types/factories/IERC20ZapperDeposits__factory.js +165 -0
  340. package/lib/types/factories/IERC4626Adapter__factory.d.ts +220 -0
  341. package/lib/types/factories/IERC4626Adapter__factory.js +297 -0
  342. package/lib/types/factories/IERC721Metadata__factory.d.ts +262 -0
  343. package/lib/types/factories/IERC721Metadata__factory.js +349 -0
  344. package/lib/types/factories/IERC721__factory.d.ts +228 -0
  345. package/lib/types/factories/IERC721__factory.js +304 -0
  346. package/lib/types/factories/IETHZapperDeposits__factory.d.ts +40 -0
  347. package/lib/types/factories/{AaveV2_WrappedAToken.sol/IWrappedATokenEvents__factory.js → IETHZapperDeposits__factory.js} +18 -25
  348. package/lib/types/factories/IFarmingPool__factory.d.ts +299 -0
  349. package/lib/types/factories/IFarmingPool__factory.js +396 -0
  350. package/lib/types/factories/IGasPricer__factory.d.ts +22 -0
  351. package/lib/types/factories/IGasPricer__factory.js +38 -0
  352. package/lib/types/factories/IGaugeV3.sol/IGaugeV3Events__factory.d.ts +118 -0
  353. package/lib/types/factories/IGaugeV3.sol/IGaugeV3Events__factory.js +157 -0
  354. package/lib/types/factories/IGaugeV3.sol/IGaugeV3__factory.d.ts +342 -0
  355. package/lib/types/factories/IGaugeV3.sol/IGaugeV3__factory.js +448 -0
  356. package/lib/types/factories/IGaugeV3.sol/index.d.ts +2 -0
  357. package/lib/types/factories/IGaugeV3.sol/index.js +10 -0
  358. package/lib/types/factories/{IWithdrawalManagerV3.sol/IWithdrawalManagerV3Events__factory.d.ts → IGearStakingV3.sol/IGearStakingV3Events__factory.d.ts} +33 -63
  359. package/lib/types/factories/{IWithdrawalManagerV3.sol/IWithdrawalManagerV3Events__factory.js → IGearStakingV3.sol/IGearStakingV3Events__factory.js} +34 -70
  360. package/lib/types/factories/IGearStakingV3.sol/IGearStakingV3__factory.d.ts +504 -0
  361. package/lib/types/factories/IGearStakingV3.sol/IGearStakingV3__factory.js +660 -0
  362. package/lib/types/factories/IGearStakingV3.sol/index.d.ts +2 -0
  363. package/lib/types/factories/IGearStakingV3.sol/index.js +10 -0
  364. package/lib/types/factories/ILPPriceFeed.sol/ILPPriceFeedEvents__factory.d.ts +33 -0
  365. package/lib/types/factories/ILPPriceFeed.sol/ILPPriceFeedEvents__factory.js +51 -0
  366. package/lib/types/factories/ILPPriceFeed.sol/ILPPriceFeedExceptions__factory.d.ts +28 -0
  367. package/lib/types/factories/ILPPriceFeed.sol/ILPPriceFeedExceptions__factory.js +44 -0
  368. package/lib/types/factories/ILPPriceFeed.sol/ILPPriceFeed__factory.d.ts +261 -0
  369. package/lib/types/factories/ILPPriceFeed.sol/ILPPriceFeed__factory.js +344 -0
  370. package/lib/types/factories/ILPPriceFeed.sol/index.d.ts +3 -0
  371. package/lib/types/factories/ILPPriceFeed.sol/index.js +12 -0
  372. package/lib/types/factories/{ILidoV1Adapter.sol/ILidoV1Adapter__factory.d.ts → ILidoV1Adapter__factory.d.ts} +7 -37
  373. package/lib/types/factories/{ILidoV1Adapter.sol/ILidoV1Adapter__factory.js → ILidoV1Adapter__factory.js} +8 -46
  374. package/lib/types/factories/ILinearInterestRateModelV3__factory.d.ts +98 -0
  375. package/lib/types/factories/ILinearInterestRateModelV3__factory.js +136 -0
  376. package/lib/types/factories/IPoolQuotaKeeperV3.sol/IPoolQuotaKeeperV3Events__factory.d.ts +103 -0
  377. package/lib/types/factories/IPoolQuotaKeeperV3.sol/IPoolQuotaKeeperV3Events__factory.js +140 -0
  378. package/lib/types/factories/IPoolQuotaKeeperV3.sol/IPoolQuotaKeeperV3__factory.d.ts +441 -0
  379. package/lib/types/factories/IPoolQuotaKeeperV3.sol/IPoolQuotaKeeperV3__factory.js +580 -0
  380. package/lib/types/factories/IPoolQuotaKeeperV3.sol/index.d.ts +2 -0
  381. package/lib/types/factories/IPoolQuotaKeeperV3.sol/index.js +10 -0
  382. package/lib/types/factories/IPoolV3.sol/IPoolV3__factory.d.ts +62 -14
  383. package/lib/types/factories/IPoolV3.sol/IPoolV3__factory.js +79 -17
  384. package/lib/types/factories/IPoolV3.sol/index.d.ts +0 -1
  385. package/lib/types/factories/IPoolV3.sol/index.js +1 -3
  386. package/lib/types/factories/{IPoolV3.sol/IPoolBase__factory.d.ts → IPriceFeed.sol/IPriceFeed__factory.d.ts} +39 -35
  387. package/lib/types/factories/{IPoolV3.sol/IPoolBase__factory.js → IPriceFeed.sol/IPriceFeed__factory.js} +40 -35
  388. package/lib/types/factories/IPriceFeed.sol/IUpdatablePriceFeed__factory.d.ts +104 -0
  389. package/lib/types/factories/IPriceFeed.sol/IUpdatablePriceFeed__factory.js +143 -0
  390. package/lib/types/factories/IPriceFeed.sol/index.d.ts +2 -0
  391. package/lib/types/factories/IPriceFeed.sol/index.js +10 -0
  392. package/lib/types/factories/IPriceOracle.sol/IPriceOracleV2Events__factory.d.ts +23 -0
  393. package/lib/types/factories/IPriceOracle.sol/IPriceOracleV2Events__factory.js +38 -0
  394. package/lib/types/factories/IPriceOracle.sol/IPriceOracleV2Exceptions__factory.d.ts +20 -0
  395. package/lib/types/factories/IPriceOracle.sol/IPriceOracleV2Exceptions__factory.js +34 -0
  396. package/lib/types/factories/{IAToken__factory.d.ts → IPriceOracle.sol/IPriceOracleV2Ext__factory.d.ts} +98 -99
  397. package/lib/types/factories/IPriceOracle.sol/IPriceOracleV2Ext__factory.js +267 -0
  398. package/lib/types/factories/IPriceOracle.sol/IPriceOracleV2__factory.d.ts +183 -0
  399. package/lib/types/factories/{IAToken__factory.js → IPriceOracle.sol/IPriceOracleV2__factory.js} +94 -112
  400. package/lib/types/factories/IPriceOracle.sol/index.d.ts +4 -0
  401. package/lib/types/factories/IPriceOracle.sol/index.js +14 -0
  402. package/lib/types/factories/IPriceOracleV3.sol/IPriceOracleV3Events__factory.d.ts +78 -0
  403. package/lib/types/factories/IPriceOracleV3.sol/IPriceOracleV3Events__factory.js +106 -0
  404. package/lib/types/factories/IPriceOracleV3.sol/IPriceOracleV3__factory.d.ts +326 -0
  405. package/lib/types/factories/IPriceOracleV3.sol/IPriceOracleV3__factory.js +433 -0
  406. package/lib/types/factories/IPriceOracleV3.sol/index.d.ts +2 -0
  407. package/lib/types/factories/IPriceOracleV3.sol/index.js +10 -0
  408. package/lib/types/factories/IRouterV3__factory.d.ts +451 -0
  409. package/lib/types/factories/IRouterV3__factory.js +597 -0
  410. package/lib/types/factories/IRouter__factory.d.ts +14 -0
  411. package/lib/types/factories/IRouter__factory.js +19 -0
  412. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2Adapter__factory.d.ts +5 -1
  413. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2Adapter__factory.js +6 -1
  414. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3Adapter__factory.d.ts +12 -4
  415. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3Adapter__factory.js +14 -4
  416. package/lib/types/factories/IVotingContractV3__factory.d.ts +44 -0
  417. package/lib/types/factories/IVotingContractV3__factory.js +65 -0
  418. package/lib/types/factories/IYearnV2Adapter__factory.d.ts +21 -13
  419. package/lib/types/factories/IYearnV2Adapter__factory.js +27 -15
  420. package/lib/types/factories/IZapperRegister__factory.d.ts +42 -0
  421. package/lib/types/factories/IZapperRegister__factory.js +64 -0
  422. package/lib/types/factories/{WERC20ZapperBase__factory.d.ts → IZapper__factory.d.ts} +52 -64
  423. package/lib/types/factories/{WERC20ZapperBase__factory.js → IZapper__factory.js} +58 -74
  424. package/lib/types/factories/IwstETHV1Adapter__factory.d.ts +12 -4
  425. package/lib/types/factories/IwstETHV1Adapter__factory.js +16 -4
  426. package/lib/types/factories/NumericArrayLib__factory.d.ts +25 -0
  427. package/lib/types/factories/NumericArrayLib__factory.js +47 -0
  428. package/lib/types/factories/RedstoneConstants__factory.d.ts +65 -0
  429. package/lib/types/factories/RedstoneConstants__factory.js +99 -0
  430. package/lib/types/factories/RedstoneConsumerBase__factory.d.ts +164 -0
  431. package/lib/types/factories/RedstoneConsumerBase__factory.js +223 -0
  432. package/lib/types/factories/RedstoneConsumerNumericBase__factory.d.ts +164 -0
  433. package/lib/types/factories/RedstoneConsumerNumericBase__factory.js +223 -0
  434. package/lib/types/factories/RedstoneDefaultsLib__factory.d.ts +45 -0
  435. package/lib/types/factories/RedstoneDefaultsLib__factory.js +74 -0
  436. package/lib/types/factories/{ILidoV1Adapter.sol/ILidoV1AdapterEvents__factory.d.ts → RedstonePriceFeed.sol/IRedstonePriceFeedEvents__factory.d.ts} +6 -6
  437. package/lib/types/factories/{ILidoV1Adapter.sol/ILidoV1AdapterEvents__factory.js → RedstonePriceFeed.sol/IRedstonePriceFeedEvents__factory.js} +5 -5
  438. package/lib/types/factories/RedstonePriceFeed.sol/IRedstonePriceFeedExceptions__factory.d.ts +28 -0
  439. package/lib/types/factories/RedstonePriceFeed.sol/IRedstonePriceFeedExceptions__factory.js +44 -0
  440. package/lib/types/factories/RedstonePriceFeed.sol/RedstonePriceFeed__factory.d.ts +443 -0
  441. package/lib/types/factories/RedstonePriceFeed.sol/RedstonePriceFeed__factory.js +589 -0
  442. package/lib/types/factories/RedstonePriceFeed.sol/index.d.ts +3 -0
  443. package/lib/types/factories/RedstonePriceFeed.sol/index.js +12 -0
  444. package/lib/types/factories/SafeERC20__factory.d.ts +1 -1
  445. package/lib/types/factories/SafeERC20__factory.js +1 -1
  446. package/lib/types/factories/index.d.ts +41 -12
  447. package/lib/types/factories/index.js +67 -22
  448. package/lib/types/index.d.ts +171 -50
  449. package/lib/types/index.js +143 -46
  450. package/lib/utils/formatter.d.ts +0 -3
  451. package/lib/utils/formatter.js +1 -67
  452. package/lib/utils/math.d.ts +2 -0
  453. package/lib/utils/math.js +2 -0
  454. package/lib/utils/types.d.ts +1 -0
  455. package/lib/watchers/creditAccountWatcher.d.ts +3 -2
  456. package/lib/watchers/creditAccountWatcher.js +19 -13
  457. package/lib/watchers/creditAccountWatcher.spec.js +18 -18
  458. package/lib/watchers/creditManagerWatcher.d.ts +5 -3
  459. package/lib/watchers/creditManagerWatcher.js +32 -10
  460. package/lib/watchers/creditManagerWatcher.spec.js +12 -4
  461. package/package.json +13 -9
  462. package/contracts/IRouter.sol +0 -100
  463. package/lib/core/pool/index.d.ts +0 -1
  464. package/lib/core/pool/index.js +0 -17
  465. package/lib/types/AaveV2_WrappedAToken.sol/IWrappedATokenEvents.d.ts +0 -60
  466. package/lib/types/AaveV2_WrappedAToken.sol/index.d.ts +0 -2
  467. package/lib/types/IAToken.d.ts +0 -182
  468. package/lib/types/ILendingPool.d.ts +0 -140
  469. package/lib/types/ILidoV1Adapter.sol/index.d.ts +0 -3
  470. package/lib/types/IPoolV3.sol/IPoolBase.d.ts +0 -102
  471. package/lib/types/IWithdrawalManagerV3.sol/IWithdrawalManagerV3.d.ts +0 -370
  472. package/lib/types/IWithdrawalManagerV3.sol/IWithdrawalManagerV3Events.d.ts +0 -133
  473. package/lib/types/IWithdrawalManagerV3.sol/index.d.ts +0 -2
  474. package/lib/types/WATokenZapper.d.ts +0 -134
  475. package/lib/types/WERC20ZapperBase.d.ts +0 -134
  476. package/lib/types/WETHZapper.d.ts +0 -122
  477. package/lib/types/WstETHZapper.d.ts +0 -134
  478. package/lib/types/ZapperBase.d.ts +0 -70
  479. package/lib/types/draft-IERC20Permit.sol/index.d.ts +0 -1
  480. package/lib/types/factories/AaveV2_WrappedAToken.sol/IWrappedATokenEvents__factory.d.ts +0 -48
  481. package/lib/types/factories/AaveV2_WrappedAToken.sol/WrappedAToken__factory.d.ts +0 -397
  482. package/lib/types/factories/AaveV2_WrappedAToken.sol/WrappedAToken__factory.js +0 -535
  483. package/lib/types/factories/AaveV2_WrappedAToken.sol/index.d.ts +0 -2
  484. package/lib/types/factories/AaveV2_WrappedAToken.sol/index.js +0 -10
  485. package/lib/types/factories/ILendingPool__factory.d.ts +0 -134
  486. package/lib/types/factories/ILendingPool__factory.js +0 -183
  487. package/lib/types/factories/ILidoV1Adapter.sol/ILidoV1AdapterExceptions__factory.d.ts +0 -12
  488. package/lib/types/factories/ILidoV1Adapter.sol/index.d.ts +0 -3
  489. package/lib/types/factories/ILidoV1Adapter.sol/index.js +0 -12
  490. package/lib/types/factories/IWithdrawalManagerV3.sol/index.d.ts +0 -2
  491. package/lib/types/factories/IWithdrawalManagerV3.sol/index.js +0 -10
  492. package/lib/types/factories/WATokenZapper__factory.d.ts +0 -161
  493. package/lib/types/factories/WATokenZapper__factory.js +0 -227
  494. package/lib/types/factories/WETHZapper__factory.d.ts +0 -138
  495. package/lib/types/factories/WETHZapper__factory.js +0 -198
  496. package/lib/types/factories/WstETHZapper__factory.d.ts +0 -161
  497. package/lib/types/factories/WstETHZapper__factory.js +0 -227
  498. package/lib/types/factories/ZapperBase__factory.d.ts +0 -60
  499. package/lib/types/factories/draft-IERC20Permit.sol/index.d.ts +0 -1
  500. package/lib/types/factories/draft-IERC20Permit.sol/index.js +0 -8
  501. /package/lib/{types/AaveV2_WrappedAToken.sol/IWrappedATokenEvents.js → pathfinder/v1/core.js} +0 -0
  502. /package/lib/{types/AaveV2_WrappedAToken.sol/WrappedAToken.js → payload/gauge.js} +0 -0
  503. /package/lib/types/{AaveV2_WrappedAToken.sol/index.js → CalldataExtractor.js} +0 -0
  504. /package/lib/types/{IAToken.js → FarmAccounting.js} +0 -0
  505. /package/lib/types/{IConvexV1BoosterAdapter.js → IAaveV2_LendingPoolAdapter.js} +0 -0
  506. /package/lib/types/{ILendingPool.js → IAaveV2_WrappedATokenAdapter.js} +0 -0
  507. /package/lib/types/{ILidoV1Adapter.sol/ILidoV1Adapter.js → IBalancerV2Vault.sol/IBalancerV2Vault.js} +0 -0
  508. /package/lib/types/{ILidoV1Adapter.sol/ILidoV1AdapterEvents.js → IBalancerV2Vault.sol/IBalancerV2VaultGetters.js} +0 -0
  509. /package/lib/types/{ILidoV1Adapter.sol → IBalancerV2Vault.sol}/index.js +0 -0
  510. /package/lib/types/{ILidoV1Adapter.sol/ILidoV1AdapterExceptions.js → IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapter.js} +0 -0
  511. /package/lib/types/{IPoolV3.sol/IPoolBase.js → IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterEvents.js} +0 -0
  512. /package/lib/types/{IWithdrawalManagerV3.sol/IWithdrawalManagerV3.js → IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterExceptions.js} +0 -0
  513. /package/lib/types/{IWithdrawalManagerV3.sol → IBalancerV2VaultAdapter.sol}/index.js +0 -0
  514. /package/lib/types/{IWithdrawalManagerV3.sol/IWithdrawalManagerV3Events.js → IBotListV3.sol/IBotListV3.js} +0 -0
  515. /package/lib/types/{WATokenZapper.js → IBotListV3.sol/IBotListV3Events.js} +0 -0
  516. /package/lib/types/{draft-IERC20Permit.sol → IBotListV3.sol}/index.js +0 -0
  517. /package/lib/types/{WERC20ZapperBase.js → ICompoundV2_CTokenAdapter.sol/ICompoundV2_CTokenAdapter.js} +0 -0
  518. /package/lib/types/{WETHZapper.js → ICompoundV2_CTokenAdapter.sol/ICompoundV2_Exceptions.js} +0 -0
  519. /package/lib/types/{WstETHZapper.js → ICompoundV2_CTokenAdapter.sol/index.js} +0 -0
  520. /package/lib/types/{ZapperBase.js → IContractsRegister.sol/IContractsRegister.js} +0 -0
  521. /package/lib/types/{draft-IERC20Permit.sol/IERC20Permit.js → IContractsRegister.sol/IContractsRegisterEvents.js} +0 -0
  522. /package/lib/types/factories/{draft-IERC20Permit.sol/IERC20Permit__factory.js → IERC20Permit__factory.js} +0 -0
@@ -1,8 +1,11 @@
1
1
  import { MultiCall } from "../pathfinder/core";
2
2
  import { ChartsCreditManagerPayload, CreditManagerDataPayload, QuotaInfo } from "../payload/creditManager";
3
3
  import { LinearModel } from "../payload/pool";
4
+ import { Asset } from "./assets";
5
+ import { PoolType } from "./pool";
4
6
  export declare class CreditManagerData {
5
7
  readonly address: string;
8
+ readonly type: PoolType;
6
9
  readonly underlyingToken: string;
7
10
  readonly pool: string;
8
11
  readonly creditFacade: string;
@@ -13,7 +16,9 @@ export declare class CreditManagerData {
13
16
  readonly isPaused: boolean;
14
17
  readonly forbiddenTokenMask: bigint;
15
18
  readonly maxEnabledTokensLength: number;
16
- readonly borrowRate: number;
19
+ readonly name: string;
20
+ readonly tier: number;
21
+ readonly baseBorrowRate: number;
17
22
  readonly minDebt: bigint;
18
23
  readonly maxDebt: bigint;
19
24
  readonly availableToBorrow: bigint;
@@ -31,8 +36,11 @@ export declare class CreditManagerData {
31
36
  readonly quotas: Record<string, QuotaInfo>;
32
37
  readonly interestModel: LinearModel;
33
38
  constructor(payload: CreditManagerDataPayload);
34
- encodeAddCollateralV2(account: string, tokenAddress: string, amount: bigint): MultiCall;
39
+ get id(): string;
40
+ isQuoted(token: string): boolean;
41
+ encodeAddCollateralV2(tokenAddress: string, amount: bigint): MultiCall;
35
42
  encodeAddCollateralV3(tokenAddress: string, amount: bigint): MultiCall;
43
+ encodeAddCollateralWithPermitV3(tokenAddress: string, amount: bigint, deadline: bigint, v: bigint | number, r: string, s: string): MultiCall;
36
44
  encodeIncreaseDebtV2(amount: bigint): MultiCall;
37
45
  encodeIncreaseDebtV3(amount: bigint): MultiCall;
38
46
  encodeDecreaseDebtV2(amount: bigint): MultiCall;
@@ -41,15 +49,19 @@ export declare class CreditManagerData {
41
49
  encodeEnableTokenV3(token: string): MultiCall;
42
50
  encodeDisableTokenV2(token: string): MultiCall;
43
51
  encodeDisableTokenV3(token: string): MultiCall;
52
+ encodeRevertIfReceivedLessThanV2(assets: Array<Asset>): MultiCall;
53
+ encodeUpdateQuotaV3(token: string, quotaChange: bigint, minQuota: bigint): MultiCall;
54
+ encodeWithdrawCollateralV3(token: string, amount: bigint, to: string): MultiCall;
44
55
  static withdrawAllAndUnwrap_Convex(address: string, claim: boolean): MultiCall;
45
- get id(): string;
56
+ encodeOnDemandPriceUpdateV3(token: string, reserve: boolean, data: string): MultiCall;
57
+ static getPoolTier(name: string): number;
46
58
  }
47
59
  export declare class ChartsCreditManagerData {
48
- readonly id: string;
49
60
  readonly address: string;
50
61
  readonly underlyingToken: string;
51
62
  readonly pool: string;
52
- readonly isWETH: boolean;
63
+ readonly version: number;
64
+ readonly name: string;
53
65
  readonly borrowRate: number;
54
66
  readonly borrowRateOld: number;
55
67
  readonly borrowRateChange: number;
@@ -57,7 +69,6 @@ export declare class ChartsCreditManagerData {
57
69
  readonly maxAmount: bigint;
58
70
  readonly maxLeverageFactor: number;
59
71
  readonly availableLiquidity: bigint;
60
- readonly version: number;
61
72
  readonly feeInterest: number;
62
73
  readonly feeLiquidation: number;
63
74
  readonly feeLiquidationExpired: number;
@@ -4,8 +4,10 @@ exports.ChartsCreditManagerData = exports.CreditManagerData = void 0;
4
4
  const sdk_gov_1 = require("@gearbox-protocol/sdk-gov");
5
5
  const txParser_1 = require("../parsers/txParser");
6
6
  const types_1 = require("../types");
7
+ const pool_1 = require("./pool");
7
8
  class CreditManagerData {
8
9
  address;
10
+ type;
9
11
  underlyingToken;
10
12
  pool;
11
13
  creditFacade; // V2 only: address of creditFacade
@@ -16,7 +18,9 @@ class CreditManagerData {
16
18
  isPaused;
17
19
  forbiddenTokenMask; // V2 only: mask which forbids some particular tokens
18
20
  maxEnabledTokensLength;
19
- borrowRate;
21
+ name;
22
+ tier;
23
+ baseBorrowRate;
20
24
  minDebt;
21
25
  maxDebt;
22
26
  availableToBorrow;
@@ -36,7 +40,10 @@ class CreditManagerData {
36
40
  constructor(payload) {
37
41
  this.address = payload.addr.toLowerCase();
38
42
  this.underlyingToken = payload.underlying.toLowerCase();
43
+ this.type = pool_1.PoolData.getPoolType(payload.name || "");
44
+ this.name = payload.name;
39
45
  this.pool = payload.pool.toLowerCase();
46
+ this.tier = CreditManagerData.getPoolTier(payload.name);
40
47
  this.creditFacade = payload.creditFacade.toLowerCase();
41
48
  this.creditConfigurator = payload.creditConfigurator.toLowerCase();
42
49
  this.degenNFT = payload.degenNFT.toLowerCase();
@@ -45,7 +52,7 @@ class CreditManagerData {
45
52
  this.isPaused = payload.isPaused;
46
53
  this.forbiddenTokenMask = (0, sdk_gov_1.toBigInt)(payload.forbiddenTokenMask);
47
54
  this.maxEnabledTokensLength = payload.maxEnabledTokensLength;
48
- this.borrowRate = Number(((0, sdk_gov_1.toBigInt)(payload.baseBorrowRate) *
55
+ this.baseBorrowRate = Number(((0, sdk_gov_1.toBigInt)(payload.baseBorrowRate) *
49
56
  ((0, sdk_gov_1.toBigInt)(payload.feeInterest) + sdk_gov_1.PERCENTAGE_FACTOR) *
50
57
  sdk_gov_1.PERCENTAGE_DECIMALS) /
51
58
  sdk_gov_1.RAY);
@@ -78,7 +85,7 @@ class CreditManagerData {
78
85
  q.token.toLowerCase(),
79
86
  {
80
87
  token: q.token.toLowerCase(),
81
- rate: q.rate,
88
+ rate: Number((0, sdk_gov_1.toBigInt)(q.rate) * sdk_gov_1.PERCENTAGE_DECIMALS),
82
89
  quotaIncreaseFee: q.quotaIncreaseFee,
83
90
  totalQuoted: (0, sdk_gov_1.toBigInt)(q.totalQuoted),
84
91
  limit: (0, sdk_gov_1.toBigInt)(q.limit),
@@ -94,20 +101,27 @@ class CreditManagerData {
94
101
  R_slope2: payload.lirm.R_slope2,
95
102
  R_slope3: payload.lirm.R_slope3,
96
103
  version: payload?.lirm?.version?.toNumber(),
104
+ isBorrowingMoreU2Forbidden: payload?.lirm?.isBorrowingMoreU2Forbidden,
97
105
  };
98
106
  txParser_1.TxParser.addCreditManager(this.address, this.version);
99
107
  if (this.creditFacade !== "" && this.creditFacade !== sdk_gov_1.ADDRESS_0X0) {
100
- txParser_1.TxParser.addCreditFacade(this.creditFacade, sdk_gov_1.tokenSymbolByAddress[this.underlyingToken]);
108
+ txParser_1.TxParser.addCreditFacade(this.creditFacade, sdk_gov_1.tokenSymbolByAddress[this.underlyingToken], this.version);
101
109
  txParser_1.TxParser.addAdapters(payload.adapters.map(a => ({
102
110
  adapter: a.adapter,
103
111
  contract: a.targetContract,
104
112
  })));
105
113
  }
106
114
  }
107
- encodeAddCollateralV2(account, tokenAddress, amount) {
115
+ get id() {
116
+ return this.address;
117
+ }
118
+ isQuoted(token) {
119
+ return !!this.quotas[token];
120
+ }
121
+ encodeAddCollateralV2(tokenAddress, amount) {
108
122
  return {
109
123
  target: this.creditFacade,
110
- callData: types_1.ICreditFacadeV2Extended__factory.createInterface().encodeFunctionData("addCollateral", [account, tokenAddress, amount]),
124
+ callData: types_1.ICreditFacadeV2Extended__factory.createInterface().encodeFunctionData("addCollateral", [tokenAddress, amount]),
111
125
  };
112
126
  }
113
127
  encodeAddCollateralV3(tokenAddress, amount) {
@@ -116,6 +130,12 @@ class CreditManagerData {
116
130
  callData: types_1.ICreditFacadeV3Multicall__factory.createInterface().encodeFunctionData("addCollateral", [tokenAddress, amount]),
117
131
  };
118
132
  }
133
+ encodeAddCollateralWithPermitV3(tokenAddress, amount, deadline, v, r, s) {
134
+ return {
135
+ target: this.creditFacade,
136
+ callData: types_1.ICreditFacadeV3Multicall__factory.createInterface().encodeFunctionData("addCollateralWithPermit", [tokenAddress, amount, deadline, v, r, s]),
137
+ };
138
+ }
119
139
  encodeIncreaseDebtV2(amount) {
120
140
  return {
121
141
  target: this.creditFacade,
@@ -164,23 +184,54 @@ class CreditManagerData {
164
184
  callData: types_1.ICreditFacadeV3Multicall__factory.createInterface().encodeFunctionData("disableToken", [token]),
165
185
  };
166
186
  }
187
+ encodeRevertIfReceivedLessThanV2(assets) {
188
+ return {
189
+ target: this.creditFacade,
190
+ callData: types_1.ICreditFacadeV2Extended__factory.createInterface().encodeFunctionData("revertIfReceivedLessThan", [assets]),
191
+ };
192
+ }
193
+ encodeUpdateQuotaV3(token, quotaChange, minQuota) {
194
+ return {
195
+ target: this.creditFacade,
196
+ callData: types_1.ICreditFacadeV3Multicall__factory.createInterface().encodeFunctionData("updateQuota", [token, quotaChange, minQuota]),
197
+ };
198
+ }
199
+ encodeWithdrawCollateralV3(token, amount, to) {
200
+ return {
201
+ target: this.creditFacade,
202
+ callData: types_1.ICreditFacadeV3Multicall__factory.createInterface().encodeFunctionData("withdrawCollateral", [token, amount, to]),
203
+ };
204
+ }
167
205
  static withdrawAllAndUnwrap_Convex(address, claim) {
168
206
  return {
169
207
  target: address,
170
- callData: types_1.IConvexV1BaseRewardPoolAdapter__factory.createInterface().encodeFunctionData("withdrawAllAndUnwrap", [claim]),
208
+ callData: types_1.IConvexV1BaseRewardPoolAdapter__factory.createInterface().encodeFunctionData("withdrawDiffAndUnwrap", [1, claim]),
171
209
  };
172
210
  }
173
- get id() {
174
- return this.address;
211
+ encodeOnDemandPriceUpdateV3(token, reserve, data) {
212
+ return {
213
+ target: this.creditFacade,
214
+ callData: types_1.ICreditFacadeV3Multicall__factory.createInterface().encodeFunctionData("onDemandPriceUpdate", [token, reserve, data]),
215
+ };
216
+ }
217
+ static getPoolTier(name) {
218
+ const DEFAULT_TIER = 99;
219
+ const l = name.split(" ") || [];
220
+ const [word, number] = l.slice(-2);
221
+ if (word.toLowerCase() === "tier") {
222
+ const n = Number(number || DEFAULT_TIER);
223
+ return Number.isNaN(n) ? DEFAULT_TIER : n;
224
+ }
225
+ return DEFAULT_TIER;
175
226
  }
176
227
  }
177
228
  exports.CreditManagerData = CreditManagerData;
178
229
  class ChartsCreditManagerData {
179
- id;
180
230
  address;
181
231
  underlyingToken;
182
232
  pool;
183
- isWETH;
233
+ version;
234
+ name;
184
235
  borrowRate;
185
236
  borrowRateOld;
186
237
  borrowRateChange;
@@ -188,7 +239,6 @@ class ChartsCreditManagerData {
188
239
  maxAmount;
189
240
  maxLeverageFactor; // for V1 only
190
241
  availableLiquidity;
191
- version;
192
242
  feeInterest;
193
243
  feeLiquidation;
194
244
  feeLiquidationExpired;
@@ -217,12 +267,11 @@ class ChartsCreditManagerData {
217
267
  totalLiquidatedAccountsChange;
218
268
  liquidationThresholds;
219
269
  constructor(payload) {
220
- this.id = (payload.addr || "").toLowerCase();
221
270
  this.address = (payload.addr || "").toLowerCase();
222
271
  this.underlyingToken = (payload.underlyingToken || "").toLowerCase();
223
272
  this.pool = (payload.poolAddress || "").toLowerCase();
224
273
  this.version = payload.version || 2;
225
- this.isWETH = payload.isWeth || false;
274
+ this.name = payload.name || "";
226
275
  this.borrowRate = Number(((0, sdk_gov_1.toBigInt)(payload.borrowRate || 0) *
227
276
  ((0, sdk_gov_1.toBigInt)(payload.feeInterest || 0) + sdk_gov_1.PERCENTAGE_FACTOR) *
228
277
  sdk_gov_1.PERCENTAGE_DECIMALS) /
@@ -0,0 +1,10 @@
1
+ export declare const GEARBOX_RPC_CHAIN_ID = 7878;
2
+ type ChartsPriceSource = "chainlink" | "spot";
3
+ interface Options {
4
+ params?: Record<string, string | number>;
5
+ }
6
+ export declare class ChartsApi {
7
+ static getUrl: (url: string, chainId: number, options?: Options, priceSource?: ChartsPriceSource) => string;
8
+ private static getRelativeUrl;
9
+ }
10
+ export {};
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ChartsApi = exports.GEARBOX_RPC_CHAIN_ID = void 0;
4
+ const sdk_gov_1 = require("@gearbox-protocol/sdk-gov");
5
+ exports.GEARBOX_RPC_CHAIN_ID = 7878;
6
+ const CHARTS_BACKEND_ADDRESSES = {
7
+ [sdk_gov_1.CHAINS.Mainnet]: "https://mainnet.gearbox.foundation",
8
+ [sdk_gov_1.CHAINS.Local]: "https://mainnet.gearbox.foundation",
9
+ [exports.GEARBOX_RPC_CHAIN_ID]: "https://testnet.gearbox.foundation",
10
+ };
11
+ class ChartsApi {
12
+ static getUrl = (url, chainId, options, priceSource) => [
13
+ CHARTS_BACKEND_ADDRESSES[chainId],
14
+ "api",
15
+ ...(priceSource ? [priceSource] : []),
16
+ this.getRelativeUrl(url, options),
17
+ ].join("/");
18
+ static getRelativeUrl = (url, options) => {
19
+ const { params = {} } = options || {};
20
+ const paramsString = Object.entries(params)
21
+ .map(([key, value]) => `${key}=${value}`)
22
+ .join("&");
23
+ return [url, ...(paramsString ? [paramsString] : [])].join("?");
24
+ };
25
+ }
26
+ exports.ChartsApi = ChartsApi;
@@ -124,7 +124,7 @@ class EventAddLiquidity extends eventOrTx_1.EVMEvent {
124
124
  }
125
125
  toString() {
126
126
  const [symbol, decimals = 18] = (0, sdk_gov_1.extractTokenData)(this.underlyingToken);
127
- return `Pool ${(0, contractsRegister_1.getContractName)(this.pool)}: Deposit ${(0, formatter_1.formatBN)(this.amount, decimals)} ${symbol}`;
127
+ return `Pool ${(0, contractsRegister_1.getContractName)(this.pool)}: Deposit ${(0, sdk_gov_1.formatBN)(this.amount, decimals)} ${symbol}`;
128
128
  }
129
129
  }
130
130
  exports.EventAddLiquidity = EventAddLiquidity;
@@ -142,7 +142,7 @@ class EventRemoveLiquidity extends eventOrTx_1.EVMEvent {
142
142
  }
143
143
  toString() {
144
144
  const [symbol, decimals = 18] = (0, sdk_gov_1.extractTokenData)(this.dieselToken);
145
- return `Pool ${(0, contractsRegister_1.getContractName)(this.pool)}: withdraw ${(0, formatter_1.formatBN)(this.amount, decimals)} ${symbol}`;
145
+ return `Pool ${(0, contractsRegister_1.getContractName)(this.pool)}: withdraw ${(0, sdk_gov_1.formatBN)(this.amount, decimals)} ${symbol}`;
146
146
  }
147
147
  }
148
148
  exports.EventRemoveLiquidity = EventRemoveLiquidity;
@@ -158,7 +158,7 @@ class EventOpenCreditAccount extends eventOrTx_1.EVMEvent {
158
158
  }
159
159
  toString() {
160
160
  const [symbol, decimals = 18] = (0, sdk_gov_1.extractTokenData)(this.underlyingToken);
161
- return `Credit account ${(0, contractsRegister_1.getContractName)(this.creditManager)}: opened with debt ${(0, formatter_1.formatBN)(this.amount, decimals)} ${symbol}`;
161
+ return `Credit Account ${(0, contractsRegister_1.getContractName)(this.creditManager)}: opened with debt ${(0, sdk_gov_1.formatBN)(this.amount, decimals)} ${symbol}`;
162
162
  }
163
163
  }
164
164
  exports.EventOpenCreditAccount = EventOpenCreditAccount;
@@ -171,7 +171,7 @@ class EventCloseCreditAccount extends eventOrTx_1.EVMEvent {
171
171
  this.creditManager = opts.creditManager;
172
172
  }
173
173
  toString() {
174
- return `Credit account ${(0, contractsRegister_1.getContractName)(this.creditManager)}: was closed`;
174
+ return `Credit Account ${(0, contractsRegister_1.getContractName)(this.creditManager)}: was closed`;
175
175
  }
176
176
  }
177
177
  exports.EventCloseCreditAccount = EventCloseCreditAccount;
@@ -187,7 +187,7 @@ class EventLiquidateCreditAccount extends eventOrTx_1.EVMEvent {
187
187
  }
188
188
  toString() {
189
189
  const [symbol, decimals = 18] = (0, sdk_gov_1.extractTokenData)(this.underlyingToken);
190
- return `Credit account ${(0, contractsRegister_1.getContractName)(this.creditManager)}: was liquidated. ${(0, formatter_1.formatBN)(this.amount, decimals)} ${symbol} were paid back as remaining funds`;
190
+ return `Credit Account ${(0, contractsRegister_1.getContractName)(this.creditManager)}: was liquidated. ${(0, sdk_gov_1.formatBN)(this.amount, decimals)} ${symbol} were paid back as remaining funds`;
191
191
  }
192
192
  }
193
193
  exports.EventLiquidateCreditAccount = EventLiquidateCreditAccount;
@@ -200,7 +200,7 @@ class EventRepayCreditAccount extends eventOrTx_1.EVMEvent {
200
200
  this.creditManager = opts.creditManager;
201
201
  }
202
202
  toString() {
203
- return `Credit account ${(0, contractsRegister_1.getContractName)(this.creditManager)}: was repaid`;
203
+ return `Credit Account ${(0, contractsRegister_1.getContractName)(this.creditManager)}: was repaid`;
204
204
  }
205
205
  }
206
206
  exports.EventRepayCreditAccount = EventRepayCreditAccount;
@@ -216,7 +216,7 @@ class EventAddCollateral extends eventOrTx_1.EVMEvent {
216
216
  }
217
217
  toString() {
218
218
  const [symbol, decimals = 18] = (0, sdk_gov_1.extractTokenData)(this.addedToken);
219
- return `Credit account ${(0, contractsRegister_1.getContractName)(this.creditManager)}: added ${(0, formatter_1.formatBN)(this.amount, decimals)} ${symbol} as collateral`;
219
+ return `Credit Account ${(0, contractsRegister_1.getContractName)(this.creditManager)}: added ${(0, sdk_gov_1.formatBN)(this.amount, decimals)} ${symbol} as collateral`;
220
220
  }
221
221
  }
222
222
  exports.EventAddCollateral = EventAddCollateral;
@@ -232,7 +232,7 @@ class EventIncreaseBorrowAmount extends eventOrTx_1.EVMEvent {
232
232
  }
233
233
  toString() {
234
234
  const [symbol, decimals = 18] = (0, sdk_gov_1.extractTokenData)(this.underlyingToken);
235
- return `Credit account ${(0, contractsRegister_1.getContractName)(this.creditManager)}: borrowed amount was increased for ${(0, formatter_1.formatBN)(this.amount, decimals)} ${symbol}`;
235
+ return `Credit Account ${(0, contractsRegister_1.getContractName)(this.creditManager)}: borrowed amount was increased for ${(0, sdk_gov_1.formatBN)(this.amount, decimals)} ${symbol}`;
236
236
  }
237
237
  }
238
238
  exports.EventIncreaseBorrowAmount = EventIncreaseBorrowAmount;
@@ -248,7 +248,7 @@ class EventDecreaseBorrowAmount extends eventOrTx_1.EVMEvent {
248
248
  }
249
249
  toString() {
250
250
  const [symbol, decimals = 18] = (0, sdk_gov_1.extractTokenData)(this.underlyingToken);
251
- return `Credit account ${(0, contractsRegister_1.getContractName)(this.creditManager)}: borrowed amount was decreased for ${(0, formatter_1.formatBN)(this.amount, decimals)} ${symbol}`;
251
+ return `Credit Account ${(0, contractsRegister_1.getContractName)(this.creditManager)}: borrowed amount was decreased for ${(0, sdk_gov_1.formatBN)(this.amount, decimals)} ${symbol}`;
252
252
  }
253
253
  }
254
254
  exports.EventDecreaseBorrowAmount = EventDecreaseBorrowAmount;
@@ -288,10 +288,10 @@ class EventCMNewParameters extends eventOrTx_1.EVMEvent {
288
288
  const [symbol, decimals = 18] = (0, sdk_gov_1.extractTokenData)(this.underlyingToken);
289
289
  let msg = `Credit manager ${(0, contractsRegister_1.getContractName)(this.creditManager)} updated: `;
290
290
  if (this.minAmount !== this.prevMinAmount) {
291
- msg += `min amount: ${(0, formatter_1.formatBN)(this.prevMinAmount, decimals)} => ${(0, formatter_1.formatBN)(this.minAmount, decimals)} ${symbol}, `;
291
+ msg += `min amount: ${(0, sdk_gov_1.formatBN)(this.prevMinAmount, decimals)} => ${(0, sdk_gov_1.formatBN)(this.minAmount, decimals)} ${symbol}, `;
292
292
  }
293
293
  if (this.maxAmount !== this.prevMaxAmount) {
294
- msg += `max amount: ${(0, formatter_1.formatBN)(this.prevMaxAmount, decimals)} => ${(0, formatter_1.formatBN)(this.maxAmount, decimals)} ${symbol}, `;
294
+ msg += `max amount: ${(0, sdk_gov_1.formatBN)(this.prevMaxAmount, decimals)} => ${(0, sdk_gov_1.formatBN)(this.maxAmount, decimals)} ${symbol}, `;
295
295
  }
296
296
  if (this.maxLeverage !== this.prevMaxLeverage) {
297
297
  msg += `max leverage: ${this.prevMaxLeverage / Number(sdk_gov_1.LEVERAGE_DECIMALS) + 1} => ${this.maxLeverage / Number(sdk_gov_1.LEVERAGE_DECIMALS) + 1}, `;
@@ -501,8 +501,8 @@ class EventNewExpectedLiquidityLimit extends eventOrTx_1.EVMEvent {
501
501
  toString() {
502
502
  const [symbol, decimals = 18] = (0, sdk_gov_1.extractTokenData)(this.underlyingToken);
503
503
  return this.prevLimit === 0n
504
- ? `Pool ${(0, contractsRegister_1.getContractName)(this.pool)} updated: expected liquidity limit was set to ${(0, formatter_1.formatBN)(this.newLimit, decimals)} ${symbol}`
505
- : `Pool ${(0, contractsRegister_1.getContractName)(this.pool)} updated: expected liquidity limit was ${this.newLimit > this.prevLimit ? "increased" : "decreased"}: ${(0, formatter_1.formatBN)(this.prevLimit, decimals)} ${symbol} => ${(0, formatter_1.formatBN)(this.newLimit, decimals)} ${symbol}`;
504
+ ? `Pool ${(0, contractsRegister_1.getContractName)(this.pool)} updated: expected liquidity limit was set to ${(0, sdk_gov_1.formatBN)(this.newLimit, decimals)} ${symbol}`
505
+ : `Pool ${(0, contractsRegister_1.getContractName)(this.pool)} updated: expected liquidity limit was ${this.newLimit > this.prevLimit ? "increased" : "decreased"}: ${(0, sdk_gov_1.formatBN)(this.prevLimit, decimals)} ${symbol} => ${(0, sdk_gov_1.formatBN)(this.newLimit, decimals)} ${symbol}`;
506
506
  }
507
507
  }
508
508
  exports.EventNewExpectedLiquidityLimit = EventNewExpectedLiquidityLimit;
@@ -680,10 +680,10 @@ class EventLimitsUpdated extends eventOrTx_1.EVMEvent {
680
680
  const [symbol, decimals = 18] = (0, sdk_gov_1.extractTokenData)(this.underlyingToken);
681
681
  let msg = `Credit manager ${(0, contractsRegister_1.getContractName)(this.creditManager)} updated: `;
682
682
  if (this.minBorrowedAmount !== this.prevMinBorrowedAmount) {
683
- msg += `min amount: ${(0, formatter_1.formatBN)(this.prevMinBorrowedAmount, decimals)} => ${(0, formatter_1.formatBN)(this.minBorrowedAmount, decimals)} ${symbol}, `;
683
+ msg += `min amount: ${(0, sdk_gov_1.formatBN)(this.prevMinBorrowedAmount, decimals)} => ${(0, sdk_gov_1.formatBN)(this.minBorrowedAmount, decimals)} ${symbol}, `;
684
684
  }
685
685
  if (this.maxBorrowedAmount !== this.prevMaxBorrowedAmount) {
686
- msg += `max amount: ${(0, formatter_1.formatBN)(this.prevMaxBorrowedAmount, decimals)} => ${(0, formatter_1.formatBN)(this.maxBorrowedAmount, decimals)} ${symbol}, `;
686
+ msg += `max amount: ${(0, sdk_gov_1.formatBN)(this.prevMaxBorrowedAmount, decimals)} => ${(0, sdk_gov_1.formatBN)(this.maxBorrowedAmount, decimals)} ${symbol}, `;
687
687
  }
688
688
  return msg.slice(0, msg.length - 2);
689
689
  }
@@ -838,7 +838,7 @@ class EventLimitPerBlockUpdated extends eventOrTx_1.EVMEvent {
838
838
  }
839
839
  toString() {
840
840
  const [symbol, decimals = 18] = (0, sdk_gov_1.extractTokenData)(this.token);
841
- return `Credit manager ${(0, contractsRegister_1.getContractName)(this.creditManager)}: Limit Per Block Updated ${(0, formatter_1.formatBN)(this.prevLimit, decimals)} => ${(0, formatter_1.formatBN)(this.limit, decimals)} ${symbol}`;
841
+ return `Credit manager ${(0, contractsRegister_1.getContractName)(this.creditManager)}: Limit Per Block Updated ${(0, sdk_gov_1.formatBN)(this.prevLimit, decimals)} => ${(0, sdk_gov_1.formatBN)(this.limit, decimals)} ${symbol}`;
842
842
  }
843
843
  }
844
844
  exports.EventLimitPerBlockUpdated = EventLimitPerBlockUpdated;
@@ -0,0 +1,26 @@
1
+ import { GaugeDataPayload, GaugeQuotaParams, GaugeStakingDataPayload } from "../payload/gauge";
2
+ export declare class GaugeData {
3
+ readonly address: string;
4
+ readonly pool: string;
5
+ readonly poolUnderlying: string;
6
+ readonly name: string;
7
+ readonly symbol: string;
8
+ readonly currentEpoch: number;
9
+ readonly epochFrozen: boolean;
10
+ readonly quotaParams: Record<string, GaugeQuotaParams>;
11
+ constructor(payload: GaugeDataPayload);
12
+ }
13
+ interface WithDrawableGaugeItem {
14
+ amount: bigint;
15
+ epochsLeft: number;
16
+ }
17
+ export declare class GaugeStakingData {
18
+ readonly availableBalance: bigint;
19
+ readonly totalBalance: bigint;
20
+ readonly epoch: number;
21
+ readonly withdrawableNow: bigint;
22
+ readonly withdrawableInEpochsTotal: bigint;
23
+ readonly withdrawableInEpochs: Array<WithDrawableGaugeItem>;
24
+ constructor(payload: GaugeStakingDataPayload);
25
+ }
26
+ export {};
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GaugeStakingData = exports.GaugeData = void 0;
4
+ const sdk_gov_1 = require("@gearbox-protocol/sdk-gov");
5
+ class GaugeData {
6
+ address;
7
+ pool;
8
+ poolUnderlying;
9
+ name;
10
+ symbol;
11
+ currentEpoch;
12
+ epochFrozen;
13
+ quotaParams;
14
+ constructor(payload) {
15
+ this.address = payload.addr.toLowerCase();
16
+ this.pool = payload.pool.toLowerCase();
17
+ this.poolUnderlying = payload.underlying.toLowerCase();
18
+ this.name = payload.name;
19
+ this.symbol = payload.symbol;
20
+ this.currentEpoch = payload.currentEpoch;
21
+ this.epochFrozen = payload.epochFrozen;
22
+ this.quotaParams = Object.fromEntries(payload.quotaParams.map((q) => [
23
+ q.token.toLowerCase(),
24
+ {
25
+ token: q.token.toLowerCase(),
26
+ isActive: q.isActive,
27
+ rate: Number((0, sdk_gov_1.toBigInt)(q.rate) * sdk_gov_1.PERCENTAGE_DECIMALS),
28
+ minRate: Number((0, sdk_gov_1.toBigInt)(q.minRate) * sdk_gov_1.PERCENTAGE_DECIMALS),
29
+ maxRate: Number((0, sdk_gov_1.toBigInt)(q.maxRate) * sdk_gov_1.PERCENTAGE_DECIMALS),
30
+ quotaIncreaseFee: q.quotaIncreaseFee,
31
+ totalQuoted: (0, sdk_gov_1.toBigInt)(q.totalQuoted),
32
+ limit: (0, sdk_gov_1.toBigInt)(q.limit),
33
+ totalVotesLpSide: (0, sdk_gov_1.toBigInt)(q.totalVotesLpSide),
34
+ totalVotesCaSide: (0, sdk_gov_1.toBigInt)(q.totalVotesCaSide),
35
+ stakerVotesLpSide: (0, sdk_gov_1.toBigInt)(q.stakerVotesLpSide),
36
+ stakerVotesCaSide: (0, sdk_gov_1.toBigInt)(q.stakerVotesCaSide),
37
+ },
38
+ ]));
39
+ }
40
+ }
41
+ exports.GaugeData = GaugeData;
42
+ class GaugeStakingData {
43
+ availableBalance;
44
+ totalBalance;
45
+ epoch;
46
+ withdrawableNow;
47
+ withdrawableInEpochsTotal;
48
+ withdrawableInEpochs;
49
+ constructor(payload) {
50
+ this.availableBalance = (0, sdk_gov_1.toBigInt)(payload.availableBalance);
51
+ this.totalBalance = (0, sdk_gov_1.toBigInt)(payload.totalBalance);
52
+ this.epoch = payload.epoch;
53
+ this.withdrawableNow = (0, sdk_gov_1.toBigInt)(payload.withdrawableAmounts.withdrawableNow);
54
+ const { total, list } = payload.withdrawableAmounts.withdrawableInEpochs.reduce(({ total, list }, a, i) => {
55
+ const bn = (0, sdk_gov_1.toBigInt)(a);
56
+ list.push({ amount: bn, epochsLeft: i + 1 });
57
+ return { total: total + bn, list };
58
+ }, { total: 0n, list: [] });
59
+ this.withdrawableInEpochsTotal = total;
60
+ this.withdrawableInEpochs = list;
61
+ }
62
+ }
63
+ exports.GaugeStakingData = GaugeStakingData;
@@ -0,0 +1,40 @@
1
+ import { GaugeQuotaParams } from "../payload/gauge";
2
+ export type BaseVoteType = "raise" | "lower";
3
+ export type VoteType = BaseVoteType | "remove";
4
+ export interface BaseVote {
5
+ amount: bigint;
6
+ type: BaseVoteType;
7
+ }
8
+ export interface Vote {
9
+ amount: bigint;
10
+ type: VoteType;
11
+ }
12
+ export interface SingleVoteState {
13
+ available: bigint;
14
+ vote?: BaseVote;
15
+ voteCalls: Array<Vote>;
16
+ }
17
+ export interface VoteProps {
18
+ state: Omit<SingleVoteState, "voteCalls">;
19
+ change?: Vote;
20
+ }
21
+ interface UnvoteProps {
22
+ initialVote?: BaseVote;
23
+ balanceAfter: bigint;
24
+ nextVoteType: BaseVoteType;
25
+ voteAfter?: Omit<SingleVoteState, "available">;
26
+ }
27
+ export interface GetGaugeApyProps {
28
+ quota: Pick<GaugeQuotaParams, "totalVotesCaSide" | "totalVotesLpSide" | "stakerVotesCaSide" | "stakerVotesLpSide" | "minRate" | "maxRate"> | undefined;
29
+ vote?: BaseVote;
30
+ voteAfter?: Omit<SingleVoteState, "available">;
31
+ }
32
+ export declare class GaugeMath {
33
+ static vote({ change, ...rest }: VoteProps): SingleVoteState | undefined;
34
+ private static addVotes;
35
+ private static removeVotes;
36
+ static revertVote({ balanceAfter, initialVote, nextVoteType, voteAfter, }: UnvoteProps): bigint | undefined;
37
+ static getBaseVote: (v: GaugeQuotaParams) => BaseVote | undefined;
38
+ static getGaugeApy({ quota, voteAfter, vote }: GetGaugeApyProps): number | null;
39
+ }
40
+ export {};
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GaugeMath = void 0;
4
+ const sdk_gov_1 = require("@gearbox-protocol/sdk-gov");
5
+ const math_1 = require("../utils/math");
6
+ class GaugeMath {
7
+ static vote({ change, ...rest }) {
8
+ if (change?.type === "remove") {
9
+ return this.removeVotes({ ...rest, change });
10
+ }
11
+ if (change) {
12
+ return this.addVotes({
13
+ ...rest,
14
+ change: { ...change, type: change.type },
15
+ });
16
+ }
17
+ return { ...rest.state, voteCalls: [] };
18
+ }
19
+ static addVotes({ state, change }) {
20
+ const { available, vote } = state;
21
+ if (!vote) {
22
+ return {
23
+ available: available - change.amount,
24
+ vote: change,
25
+ voteCalls: [change],
26
+ };
27
+ }
28
+ if (vote.type === change.type) {
29
+ return {
30
+ available: available - change.amount,
31
+ vote: { ...change, amount: vote.amount + change.amount },
32
+ voteCalls: [change],
33
+ };
34
+ }
35
+ const remove = { type: "remove", amount: vote.amount };
36
+ return {
37
+ available: available + vote.amount - change.amount,
38
+ vote: { ...change, amount: change.amount },
39
+ voteCalls: [remove, change],
40
+ };
41
+ }
42
+ static removeVotes({ state, change }) {
43
+ const { available, vote } = state;
44
+ if (!vote)
45
+ return { ...state, voteCalls: [] };
46
+ const safeChange = math_1.BigIntMath.min(vote.amount, change.amount);
47
+ const afterVote = vote.amount - safeChange;
48
+ return {
49
+ available: available + safeChange,
50
+ vote: { ...vote, amount: afterVote },
51
+ voteCalls: [{ ...change, amount: safeChange }],
52
+ };
53
+ }
54
+ static revertVote({ balanceAfter, initialVote, nextVoteType, voteAfter, }) {
55
+ // on vote type change unvote previous vote
56
+ const prevUnvoted = !initialVote || initialVote.type === nextVoteType
57
+ ? balanceAfter
58
+ : balanceAfter + initialVote.amount;
59
+ if (!voteAfter)
60
+ return prevUnvoted;
61
+ // change call is always last, remove is always first
62
+ const [first, last = first] = voteAfter.voteCalls;
63
+ const removePart = first?.type === "remove" ? first?.amount || 0n : 0n;
64
+ const addPart = last?.type !== "remove" ? last?.amount || 0n : 0n;
65
+ // revert current changes
66
+ return prevUnvoted + addPart - removePart;
67
+ }
68
+ static getBaseVote = (v) => {
69
+ const voteDown = v.stakerVotesCaSide;
70
+ const voteUp = v.stakerVotesLpSide;
71
+ if (!voteDown && !voteUp)
72
+ return undefined;
73
+ if (voteDown > 0) {
74
+ return { type: "lower", amount: voteDown };
75
+ }
76
+ if (voteUp > 0) {
77
+ return { type: "raise", amount: voteUp };
78
+ }
79
+ return undefined;
80
+ };
81
+ // rate = (minRate *(votesFormin + yourvotesformin) +maxRate*(votesFormax +yourvotesformax)/( votesForMin + votesForMax+yourvotes)
82
+ static getGaugeApy({ quota, voteAfter, vote }) {
83
+ if (!quota)
84
+ return null;
85
+ const first = voteAfter?.voteCalls?.[0];
86
+ const last = voteAfter?.voteCalls?.[1] || first;
87
+ const isRemove = first?.type === "remove";
88
+ const removeCaPart = isRemove && vote?.type === "lower" ? first?.amount || 0n : 0n;
89
+ const removeLpPart = isRemove && vote?.type === "raise" ? first?.amount || 0n : 0n;
90
+ const caPart = last?.type === "lower" ? last?.amount || 0n : 0n;
91
+ const lpPart = last?.type === "raise" ? last?.amount || 0n : 0n;
92
+ const caImpact = (0, sdk_gov_1.toBigInt)(quota.minRate) *
93
+ (quota.totalVotesCaSide + caPart - removeCaPart);
94
+ const lpImpact = (0, sdk_gov_1.toBigInt)(quota.maxRate) *
95
+ (quota.totalVotesLpSide + lpPart - removeLpPart);
96
+ const total = quota.totalVotesCaSide +
97
+ quota.totalVotesLpSide +
98
+ caPart +
99
+ lpPart -
100
+ removeCaPart -
101
+ removeLpPart;
102
+ if (total === 0n)
103
+ return quota.minRate;
104
+ const r = (caImpact + lpImpact) / total;
105
+ return Number(r);
106
+ }
107
+ }
108
+ exports.GaugeMath = GaugeMath;
@@ -0,0 +1 @@
1
+ export {};