@gearbox-protocol/sdk 11.11.0-next.2 → 11.11.0

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 (458) hide show
  1. package/dist/cjs/dev/create2.js +1 -1
  2. package/dist/cjs/dev/mint/AbstractMinter.js +4 -2
  3. package/dist/cjs/dev/mint/DealMinter.js +3 -0
  4. package/dist/cjs/dev/mint/DirectMinter.js +3 -0
  5. package/dist/cjs/dev/mint/FallbackMinter.js +1 -1
  6. package/dist/cjs/dev/mint/TransferMinter.js +3 -0
  7. package/dist/cjs/permissionless/bindings/address-provider.js +6 -4
  8. package/dist/cjs/permissionless/bindings/base-contract.js +173 -0
  9. package/dist/cjs/permissionless/bindings/bytecode-repository.js +25 -23
  10. package/dist/cjs/permissionless/bindings/compressors/token-compressor.js +4 -4
  11. package/dist/cjs/permissionless/bindings/compressors/withdrawal-compressor.js +17 -11
  12. package/dist/cjs/permissionless/bindings/cross-chain-multisig.js +22 -23
  13. package/dist/cjs/permissionless/bindings/factory/abstract-factory.js +4 -7
  14. package/dist/cjs/permissionless/bindings/governance/batches-chain.js +4 -4
  15. package/dist/cjs/permissionless/bindings/governance/governor.js +49 -30
  16. package/dist/cjs/permissionless/bindings/governance/timelock.js +4 -4
  17. package/dist/cjs/permissionless/bindings/index.js +2 -0
  18. package/dist/cjs/permissionless/bindings/instance-manager.js +77 -58
  19. package/dist/cjs/permissionless/bindings/market-configurator-factory.js +4 -4
  20. package/dist/cjs/permissionless/bindings/market-configurator.js +143 -71
  21. package/dist/cjs/permissionless/bindings/price-feed-store.js +17 -8
  22. package/dist/cjs/permissionless/bindings/router/routing-manager.js +15 -9
  23. package/dist/cjs/permissionless/bindings/treasury-splitter.js +23 -14
  24. package/dist/cjs/permissionless/core/raw-tx.js +2 -2
  25. package/dist/cjs/permissionless/utils/abi-decoder.js +72 -0
  26. package/dist/cjs/permissionless/utils/format.js +2 -2
  27. package/dist/cjs/permissionless/utils/governance/timelock-txs.js +2 -2
  28. package/dist/cjs/permissionless/utils/index.js +2 -0
  29. package/dist/cjs/permissionless/utils/price-update/get-price-feeds.js +2 -1
  30. package/dist/cjs/permissionless/utils/price-update/get-price-update-tx.js +2 -1
  31. package/dist/cjs/permissionless/utils/price-update/get-prices.js +2 -1
  32. package/dist/cjs/permissionless/utils/price-update/get-updatable-feeds.js +3 -2
  33. package/dist/cjs/plugins/adapters/contracts/AbstractAdapter.js +2 -2
  34. package/dist/cjs/plugins/adapters/contracts/AccountMigratorAdapterContract.js +2 -2
  35. package/dist/cjs/plugins/adapters/contracts/BalancerV2VaultAdapterContract.js +2 -2
  36. package/dist/cjs/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +2 -2
  37. package/dist/cjs/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +2 -2
  38. package/dist/cjs/plugins/adapters/contracts/CamelotV3AdapterContract.js +2 -2
  39. package/dist/cjs/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +2 -2
  40. package/dist/cjs/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +2 -2
  41. package/dist/cjs/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +2 -2
  42. package/dist/cjs/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +2 -2
  43. package/dist/cjs/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +2 -2
  44. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterDeposit.js +2 -2
  45. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +2 -2
  46. package/dist/cjs/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +2 -2
  47. package/dist/cjs/plugins/adapters/contracts/DaiUsdsAdapterContract.js +2 -2
  48. package/dist/cjs/plugins/adapters/contracts/ERC4626AdapterContract.js +2 -2
  49. package/dist/cjs/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +2 -2
  50. package/dist/cjs/plugins/adapters/contracts/EqualizerRouterAdapterContract.js +2 -2
  51. package/dist/cjs/plugins/adapters/contracts/FluidDexAdapterContract.js +2 -2
  52. package/dist/cjs/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +2 -2
  53. package/dist/cjs/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +2 -2
  54. package/dist/cjs/plugins/adapters/contracts/InfraredVaultAdapterContract.js +2 -2
  55. package/dist/cjs/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +2 -2
  56. package/dist/cjs/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +2 -2
  57. package/dist/cjs/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.js +2 -2
  58. package/dist/cjs/plugins/adapters/contracts/LidoV1AdapterContract.js +2 -2
  59. package/dist/cjs/plugins/adapters/contracts/MellowClaimerAdapterContract.js +2 -2
  60. package/dist/cjs/plugins/adapters/contracts/MellowDVVAdapterContract.js +2 -2
  61. package/dist/cjs/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +2 -2
  62. package/dist/cjs/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +2 -2
  63. package/dist/cjs/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +2 -2
  64. package/dist/cjs/plugins/adapters/contracts/MellowVaultAdapterContract.js +2 -2
  65. package/dist/cjs/plugins/adapters/contracts/MellowWrapperAdapterContract.js +2 -2
  66. package/dist/cjs/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +2 -2
  67. package/dist/cjs/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +2 -2
  68. package/dist/cjs/plugins/adapters/contracts/PendleRouterAdapterContract.js +2 -2
  69. package/dist/cjs/plugins/adapters/contracts/StakingRewardsAdapterContract.js +2 -2
  70. package/dist/cjs/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +2 -2
  71. package/dist/cjs/plugins/adapters/contracts/UniswapV2AdapterContract.js +5 -5
  72. package/dist/cjs/plugins/adapters/contracts/UniswapV3AdapterContract.js +22 -22
  73. package/dist/cjs/plugins/adapters/contracts/UniswapV4AdapterContract.js +2 -2
  74. package/dist/cjs/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +2 -2
  75. package/dist/cjs/plugins/adapters/contracts/VelodromeV2AdapterContract.js +2 -2
  76. package/dist/cjs/plugins/adapters/contracts/WstETHV1AdapterContract.js +2 -2
  77. package/dist/cjs/plugins/adapters/contracts/YearnV2AdapterContract.js +2 -2
  78. package/dist/cjs/plugins/bots/BotsPlugin.js +96 -21
  79. package/dist/cjs/plugins/bots/PartialLiquidationBotBaseContract.js +14 -17
  80. package/dist/cjs/plugins/bots/PartialLiquidationBotV300Contract.js +20 -4
  81. package/dist/cjs/plugins/bots/config.js +59 -0
  82. package/dist/cjs/plugins/bots/index.js +4 -0
  83. package/dist/cjs/plugins/bots/types.js +9 -0
  84. package/dist/cjs/plugins/zappers/ZappersPlugin.js +1 -1
  85. package/dist/cjs/sdk/GearboxSDK.js +110 -8
  86. package/dist/cjs/sdk/accountMigration/AbstractMigrateCreditAccountsService.js +4 -1
  87. package/dist/cjs/sdk/accounts/AbstractCreditAccountsService.js +8 -6
  88. package/dist/cjs/sdk/base/AddressLabeller.js +49 -0
  89. package/dist/cjs/sdk/base/BaseContract.js +80 -195
  90. package/dist/cjs/sdk/base/IAddressLabeller.js +16 -0
  91. package/dist/cjs/sdk/base/SDKConstruct.js +29 -3
  92. package/dist/cjs/sdk/base/TokensMeta.js +4 -4
  93. package/dist/cjs/sdk/base/index.js +2 -4
  94. package/dist/cjs/sdk/core/BotListV3Contract.js +2 -2
  95. package/dist/cjs/sdk/core/GearStakingV3Contract.js +2 -2
  96. package/dist/cjs/sdk/core/address-provider/AbstractAddressProviderContract.js +2 -2
  97. package/dist/cjs/sdk/core/address-provider/AddressProviderV300Contract.js +6 -11
  98. package/dist/cjs/sdk/core/address-provider/AddressProviderV310Contract.js +4 -4
  99. package/dist/cjs/sdk/market/MarketConfiguratorContract.js +5 -5
  100. package/dist/cjs/sdk/market/MarketRegister.js +9 -7
  101. package/dist/cjs/sdk/market/MarketSuite.js +2 -2
  102. package/dist/cjs/sdk/market/credit/CreditConfiguratorV300Contract.js +3 -4
  103. package/dist/cjs/sdk/market/credit/CreditConfiguratorV310Contract.js +3 -4
  104. package/dist/cjs/sdk/market/credit/CreditFacadeV300Contract.js +9 -9
  105. package/dist/cjs/sdk/market/credit/CreditFacadeV310Contract.js +8 -8
  106. package/dist/cjs/sdk/market/credit/CreditManagerV300Contract.js +2 -5
  107. package/dist/cjs/sdk/market/credit/CreditManagerV310Contract.js +2 -5
  108. package/dist/cjs/sdk/market/credit/CreditSuite.js +3 -2
  109. package/dist/cjs/sdk/market/loss-policy/AliasLossPolicyV310Contract.js +1 -3
  110. package/dist/cjs/sdk/market/loss-policy/LossPolicyContract.js +2 -2
  111. package/dist/cjs/sdk/market/loss-policy/createLossPolicy.js +1 -1
  112. package/dist/cjs/sdk/market/oracle/PriceOracleBaseContract.js +26 -8
  113. package/dist/cjs/sdk/market/oracle/createPriceOracle.js +1 -1
  114. package/dist/cjs/sdk/market/pool/GaugeContract.js +2 -2
  115. package/dist/cjs/sdk/market/pool/LinearInterestRateModelContract.js +2 -2
  116. package/dist/cjs/sdk/market/pool/PoolQuotaKeeperV300Contract.js +2 -2
  117. package/dist/cjs/sdk/market/pool/PoolQuotaKeeperV310Contract.js +2 -2
  118. package/dist/cjs/sdk/market/pool/PoolSuite.js +1 -1
  119. package/dist/cjs/sdk/market/pool/PoolV300Contract.js +5 -5
  120. package/dist/cjs/sdk/market/pool/PoolV310Contract.js +5 -5
  121. package/dist/cjs/sdk/market/pool/TumblerContract.js +2 -2
  122. package/dist/cjs/sdk/market/pool/createInterestRateModel.js +15 -11
  123. package/dist/cjs/sdk/market/pricefeeds/AbstractLPPriceFeed.js +22 -2
  124. package/dist/cjs/sdk/market/pricefeeds/AbstractPriceFeed.js +3 -3
  125. package/dist/cjs/sdk/market/pricefeeds/BalancerStablePriceFeed.js +9 -2
  126. package/dist/cjs/sdk/market/pricefeeds/BalancerWeightedPriceFeed.js +9 -2
  127. package/dist/cjs/sdk/market/pricefeeds/BoundedPriceFeed.js +2 -6
  128. package/dist/cjs/sdk/market/pricefeeds/CompositePriceFeed.js +2 -2
  129. package/dist/cjs/sdk/market/pricefeeds/ConstantPriceFeed.js +2 -2
  130. package/dist/cjs/sdk/market/pricefeeds/CurveCryptoPriceFeed.js +9 -2
  131. package/dist/cjs/sdk/market/pricefeeds/CurveStablePriceFeed.js +9 -2
  132. package/dist/cjs/sdk/market/pricefeeds/CurveUSDPriceFeed.js +9 -2
  133. package/dist/cjs/sdk/market/pricefeeds/Erc4626PriceFeed.js +18 -2
  134. package/dist/cjs/sdk/market/pricefeeds/ExternalPriceFeed.js +2 -2
  135. package/dist/cjs/sdk/market/pricefeeds/MellowLRTPriceFeed.js +10 -2
  136. package/dist/cjs/sdk/market/pricefeeds/PendleTWAPPTPriceFeed.js +2 -2
  137. package/dist/cjs/sdk/market/pricefeeds/PriceFeedRef.js +4 -6
  138. package/dist/cjs/sdk/market/pricefeeds/PriceFeedsRegister.js +3 -2
  139. package/dist/cjs/sdk/market/pricefeeds/PythPriceFeed.js +2 -2
  140. package/dist/cjs/sdk/market/pricefeeds/RedstonePriceFeed.js +3 -3
  141. package/dist/cjs/sdk/market/pricefeeds/WstETHPriceFeed.js +9 -2
  142. package/dist/cjs/sdk/market/pricefeeds/YearnPriceFeed.js +9 -2
  143. package/dist/cjs/sdk/market/pricefeeds/ZeroPriceFeed.js +2 -2
  144. package/dist/cjs/sdk/market/pricefeeds/updates/PriceUpdatesCache.js +0 -17
  145. package/dist/cjs/sdk/market/pricefeeds/updates/PythUpdater.js +9 -7
  146. package/dist/cjs/sdk/market/pricefeeds/updates/RedstoneUpdater.js +12 -10
  147. package/dist/cjs/sdk/router/AbstractRouterContract.js +0 -5
  148. package/dist/cjs/sdk/router/RouterV310Contract.js +3 -3
  149. package/dist/cjs/sdk/router/createRouter.js +0 -4
  150. package/dist/cjs/sdk/utils/index.js +0 -2
  151. package/dist/esm/dev/create2.js +2 -2
  152. package/dist/esm/dev/mint/AbstractMinter.js +7 -3
  153. package/dist/esm/dev/mint/DealMinter.js +3 -0
  154. package/dist/esm/dev/mint/DirectMinter.js +3 -0
  155. package/dist/esm/dev/mint/FallbackMinter.js +1 -1
  156. package/dist/esm/dev/mint/TransferMinter.js +3 -0
  157. package/dist/esm/permissionless/bindings/address-provider.js +7 -7
  158. package/dist/esm/permissionless/bindings/base-contract.js +151 -0
  159. package/dist/esm/permissionless/bindings/bytecode-repository.js +24 -22
  160. package/dist/esm/permissionless/bindings/compressors/token-compressor.js +3 -3
  161. package/dist/esm/permissionless/bindings/compressors/withdrawal-compressor.js +16 -10
  162. package/dist/esm/permissionless/bindings/cross-chain-multisig.js +16 -20
  163. package/dist/esm/permissionless/bindings/factory/abstract-factory.js +4 -9
  164. package/dist/esm/permissionless/bindings/governance/batches-chain.js +3 -3
  165. package/dist/esm/permissionless/bindings/governance/governor.js +47 -28
  166. package/dist/esm/permissionless/bindings/governance/timelock.js +3 -3
  167. package/dist/esm/permissionless/bindings/index.js +1 -0
  168. package/dist/esm/permissionless/bindings/instance-manager.js +69 -53
  169. package/dist/esm/permissionless/bindings/market-configurator-factory.js +3 -3
  170. package/dist/esm/permissionless/bindings/market-configurator.js +137 -65
  171. package/dist/esm/permissionless/bindings/price-feed-store.js +14 -8
  172. package/dist/esm/permissionless/bindings/router/routing-manager.js +14 -8
  173. package/dist/esm/permissionless/bindings/treasury-splitter.js +22 -15
  174. package/dist/esm/permissionless/core/raw-tx.js +1 -1
  175. package/dist/esm/permissionless/utils/abi-decoder.js +50 -0
  176. package/dist/esm/permissionless/utils/format.js +1 -1
  177. package/dist/esm/permissionless/utils/governance/timelock-txs.js +1 -1
  178. package/dist/esm/permissionless/utils/index.js +1 -0
  179. package/dist/esm/permissionless/utils/price-update/get-price-feeds.js +2 -4
  180. package/dist/esm/permissionless/utils/price-update/get-price-update-tx.js +1 -1
  181. package/dist/esm/permissionless/utils/price-update/get-prices.js +2 -1
  182. package/dist/esm/permissionless/utils/price-update/get-updatable-feeds.js +1 -1
  183. package/dist/esm/plugins/adapters/contracts/AbstractAdapter.js +2 -2
  184. package/dist/esm/plugins/adapters/contracts/AccountMigratorAdapterContract.js +2 -2
  185. package/dist/esm/plugins/adapters/contracts/BalancerV2VaultAdapterContract.js +2 -2
  186. package/dist/esm/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +2 -2
  187. package/dist/esm/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +2 -2
  188. package/dist/esm/plugins/adapters/contracts/CamelotV3AdapterContract.js +2 -2
  189. package/dist/esm/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +2 -2
  190. package/dist/esm/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +2 -2
  191. package/dist/esm/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +2 -2
  192. package/dist/esm/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +2 -2
  193. package/dist/esm/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +2 -2
  194. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterDeposit.js +2 -2
  195. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +2 -2
  196. package/dist/esm/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +2 -2
  197. package/dist/esm/plugins/adapters/contracts/DaiUsdsAdapterContract.js +2 -2
  198. package/dist/esm/plugins/adapters/contracts/ERC4626AdapterContract.js +2 -2
  199. package/dist/esm/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +2 -2
  200. package/dist/esm/plugins/adapters/contracts/EqualizerRouterAdapterContract.js +2 -2
  201. package/dist/esm/plugins/adapters/contracts/FluidDexAdapterContract.js +2 -2
  202. package/dist/esm/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +2 -2
  203. package/dist/esm/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +2 -2
  204. package/dist/esm/plugins/adapters/contracts/InfraredVaultAdapterContract.js +2 -2
  205. package/dist/esm/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +2 -2
  206. package/dist/esm/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +2 -2
  207. package/dist/esm/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.js +2 -2
  208. package/dist/esm/plugins/adapters/contracts/LidoV1AdapterContract.js +2 -2
  209. package/dist/esm/plugins/adapters/contracts/MellowClaimerAdapterContract.js +2 -2
  210. package/dist/esm/plugins/adapters/contracts/MellowDVVAdapterContract.js +2 -2
  211. package/dist/esm/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +2 -2
  212. package/dist/esm/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +2 -2
  213. package/dist/esm/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +2 -2
  214. package/dist/esm/plugins/adapters/contracts/MellowVaultAdapterContract.js +2 -2
  215. package/dist/esm/plugins/adapters/contracts/MellowWrapperAdapterContract.js +2 -2
  216. package/dist/esm/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +2 -2
  217. package/dist/esm/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +2 -2
  218. package/dist/esm/plugins/adapters/contracts/PendleRouterAdapterContract.js +2 -2
  219. package/dist/esm/plugins/adapters/contracts/StakingRewardsAdapterContract.js +2 -2
  220. package/dist/esm/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +2 -2
  221. package/dist/esm/plugins/adapters/contracts/UniswapV2AdapterContract.js +5 -5
  222. package/dist/esm/plugins/adapters/contracts/UniswapV3AdapterContract.js +22 -22
  223. package/dist/esm/plugins/adapters/contracts/UniswapV4AdapterContract.js +2 -2
  224. package/dist/esm/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +2 -2
  225. package/dist/esm/plugins/adapters/contracts/VelodromeV2AdapterContract.js +2 -2
  226. package/dist/esm/plugins/adapters/contracts/WstETHV1AdapterContract.js +2 -2
  227. package/dist/esm/plugins/adapters/contracts/YearnV2AdapterContract.js +2 -2
  228. package/dist/esm/plugins/bots/BotsPlugin.js +108 -11
  229. package/dist/esm/plugins/bots/PartialLiquidationBotBaseContract.js +16 -7
  230. package/dist/esm/plugins/bots/PartialLiquidationBotV300Contract.js +20 -4
  231. package/dist/esm/plugins/bots/config.js +33 -0
  232. package/dist/esm/plugins/bots/index.js +2 -0
  233. package/dist/esm/plugins/bots/types.js +8 -0
  234. package/dist/esm/plugins/zappers/ZappersPlugin.js +1 -1
  235. package/dist/esm/sdk/GearboxSDK.js +112 -10
  236. package/dist/esm/sdk/accountMigration/AbstractMigrateCreditAccountsService.js +4 -1
  237. package/dist/esm/sdk/accounts/AbstractCreditAccountsService.js +9 -7
  238. package/dist/esm/sdk/base/AddressLabeller.js +25 -0
  239. package/dist/esm/sdk/base/BaseContract.js +81 -202
  240. package/dist/esm/sdk/base/IAddressLabeller.js +0 -0
  241. package/dist/esm/sdk/base/SDKConstruct.js +29 -3
  242. package/dist/esm/sdk/base/TokensMeta.js +4 -4
  243. package/dist/esm/sdk/base/index.js +1 -2
  244. package/dist/esm/sdk/core/BotListV3Contract.js +2 -2
  245. package/dist/esm/sdk/core/GearStakingV3Contract.js +2 -2
  246. package/dist/esm/sdk/core/address-provider/AbstractAddressProviderContract.js +2 -2
  247. package/dist/esm/sdk/core/address-provider/AddressProviderV300Contract.js +6 -11
  248. package/dist/esm/sdk/core/address-provider/AddressProviderV310Contract.js +4 -4
  249. package/dist/esm/sdk/market/MarketConfiguratorContract.js +5 -5
  250. package/dist/esm/sdk/market/MarketRegister.js +10 -8
  251. package/dist/esm/sdk/market/MarketSuite.js +2 -2
  252. package/dist/esm/sdk/market/credit/CreditConfiguratorV300Contract.js +3 -4
  253. package/dist/esm/sdk/market/credit/CreditConfiguratorV310Contract.js +3 -4
  254. package/dist/esm/sdk/market/credit/CreditFacadeV300Contract.js +9 -9
  255. package/dist/esm/sdk/market/credit/CreditFacadeV310Contract.js +8 -8
  256. package/dist/esm/sdk/market/credit/CreditManagerV300Contract.js +2 -5
  257. package/dist/esm/sdk/market/credit/CreditManagerV310Contract.js +2 -5
  258. package/dist/esm/sdk/market/credit/CreditSuite.js +3 -2
  259. package/dist/esm/sdk/market/loss-policy/AliasLossPolicyV310Contract.js +1 -3
  260. package/dist/esm/sdk/market/loss-policy/LossPolicyContract.js +3 -5
  261. package/dist/esm/sdk/market/loss-policy/createLossPolicy.js +1 -1
  262. package/dist/esm/sdk/market/oracle/PriceOracleBaseContract.js +26 -8
  263. package/dist/esm/sdk/market/oracle/createPriceOracle.js +1 -1
  264. package/dist/esm/sdk/market/pool/GaugeContract.js +2 -2
  265. package/dist/esm/sdk/market/pool/LinearInterestRateModelContract.js +2 -2
  266. package/dist/esm/sdk/market/pool/PoolQuotaKeeperV300Contract.js +2 -2
  267. package/dist/esm/sdk/market/pool/PoolQuotaKeeperV310Contract.js +2 -2
  268. package/dist/esm/sdk/market/pool/PoolSuite.js +1 -1
  269. package/dist/esm/sdk/market/pool/PoolV300Contract.js +5 -5
  270. package/dist/esm/sdk/market/pool/PoolV310Contract.js +5 -5
  271. package/dist/esm/sdk/market/pool/TumblerContract.js +2 -2
  272. package/dist/esm/sdk/market/pool/createInterestRateModel.js +15 -11
  273. package/dist/esm/sdk/market/pricefeeds/AbstractLPPriceFeed.js +22 -2
  274. package/dist/esm/sdk/market/pricefeeds/AbstractPriceFeed.js +3 -3
  275. package/dist/esm/sdk/market/pricefeeds/BalancerStablePriceFeed.js +13 -3
  276. package/dist/esm/sdk/market/pricefeeds/BalancerWeightedPriceFeed.js +13 -3
  277. package/dist/esm/sdk/market/pricefeeds/BoundedPriceFeed.js +2 -6
  278. package/dist/esm/sdk/market/pricefeeds/CompositePriceFeed.js +2 -2
  279. package/dist/esm/sdk/market/pricefeeds/ConstantPriceFeed.js +2 -2
  280. package/dist/esm/sdk/market/pricefeeds/CurveCryptoPriceFeed.js +10 -3
  281. package/dist/esm/sdk/market/pricefeeds/CurveStablePriceFeed.js +10 -3
  282. package/dist/esm/sdk/market/pricefeeds/CurveUSDPriceFeed.js +10 -3
  283. package/dist/esm/sdk/market/pricefeeds/Erc4626PriceFeed.js +18 -2
  284. package/dist/esm/sdk/market/pricefeeds/ExternalPriceFeed.js +2 -2
  285. package/dist/esm/sdk/market/pricefeeds/MellowLRTPriceFeed.js +11 -3
  286. package/dist/esm/sdk/market/pricefeeds/PendleTWAPPTPriceFeed.js +2 -2
  287. package/dist/esm/sdk/market/pricefeeds/PriceFeedRef.js +5 -7
  288. package/dist/esm/sdk/market/pricefeeds/PriceFeedsRegister.js +9 -3
  289. package/dist/esm/sdk/market/pricefeeds/PythPriceFeed.js +2 -2
  290. package/dist/esm/sdk/market/pricefeeds/RedstonePriceFeed.js +3 -3
  291. package/dist/esm/sdk/market/pricefeeds/WstETHPriceFeed.js +10 -3
  292. package/dist/esm/sdk/market/pricefeeds/YearnPriceFeed.js +10 -3
  293. package/dist/esm/sdk/market/pricefeeds/ZeroPriceFeed.js +2 -2
  294. package/dist/esm/sdk/market/pricefeeds/updates/PriceUpdatesCache.js +0 -17
  295. package/dist/esm/sdk/market/pricefeeds/updates/PythUpdater.js +10 -8
  296. package/dist/esm/sdk/market/pricefeeds/updates/RedstoneUpdater.js +13 -11
  297. package/dist/esm/sdk/router/AbstractRouterContract.js +0 -5
  298. package/dist/esm/sdk/router/RouterV310Contract.js +3 -3
  299. package/dist/esm/sdk/router/createRouter.js +0 -4
  300. package/dist/esm/sdk/utils/index.js +0 -1
  301. package/dist/types/dev/create2.d.ts +2 -2
  302. package/dist/types/dev/mint/AbstractMinter.d.ts +4 -3
  303. package/dist/types/dev/mint/DealMinter.d.ts +3 -0
  304. package/dist/types/dev/mint/DirectMinter.d.ts +3 -0
  305. package/dist/types/dev/mint/TransferMinter.d.ts +3 -0
  306. package/dist/types/permissionless/bindings/address-provider.d.ts +255 -4
  307. package/dist/types/permissionless/bindings/base-contract.d.ts +23 -0
  308. package/dist/types/permissionless/bindings/bytecode-repository.d.ts +6 -5
  309. package/dist/types/permissionless/bindings/compressors/token-compressor.d.ts +3 -3
  310. package/dist/types/permissionless/bindings/compressors/withdrawal-compressor.d.ts +5 -4
  311. package/dist/types/permissionless/bindings/cross-chain-multisig.d.ts +7 -7
  312. package/dist/types/permissionless/bindings/factory/abstract-factory.d.ts +1 -1
  313. package/dist/types/permissionless/bindings/governance/batches-chain.d.ts +4 -3
  314. package/dist/types/permissionless/bindings/governance/governor.d.ts +7 -6
  315. package/dist/types/permissionless/bindings/governance/timelock.d.ts +3 -3
  316. package/dist/types/permissionless/bindings/governance/types.d.ts +1 -1
  317. package/dist/types/permissionless/bindings/index.d.ts +1 -0
  318. package/dist/types/permissionless/bindings/instance-manager.d.ts +7 -6
  319. package/dist/types/permissionless/bindings/market-configurator-factory.d.ts +4 -4
  320. package/dist/types/permissionless/bindings/market-configurator.d.ts +6 -6
  321. package/dist/types/permissionless/bindings/price-feed-store.d.ts +7 -6
  322. package/dist/types/permissionless/bindings/router/routing-manager.d.ts +5 -4
  323. package/dist/types/permissionless/bindings/treasury-splitter.d.ts +6 -5
  324. package/dist/types/permissionless/core/proposal.d.ts +7 -1
  325. package/dist/types/permissionless/utils/abi-decoder.d.ts +13 -0
  326. package/dist/types/permissionless/utils/create2.d.ts +1 -1
  327. package/dist/types/permissionless/utils/governance/batch.d.ts +1 -1
  328. package/dist/types/permissionless/utils/index.d.ts +1 -0
  329. package/dist/types/permissionless/utils/price-update/get-price-feeds.d.ts +3 -3
  330. package/dist/types/permissionless/utils/price-update/get-price-update-tx.d.ts +2 -2
  331. package/dist/types/plugins/adapters/contracts/AbstractAdapter.d.ts +2 -2
  332. package/dist/types/plugins/adapters/contracts/AccountMigratorAdapterContract.d.ts +2 -2
  333. package/dist/types/plugins/adapters/contracts/BalancerV2VaultAdapterContract.d.ts +2 -2
  334. package/dist/types/plugins/adapters/contracts/BalancerV3RouterAdapterContract.d.ts +2 -2
  335. package/dist/types/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.d.ts +2 -2
  336. package/dist/types/plugins/adapters/contracts/CamelotV3AdapterContract.d.ts +2 -2
  337. package/dist/types/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.d.ts +2 -2
  338. package/dist/types/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.d.ts +2 -2
  339. package/dist/types/plugins/adapters/contracts/Curve2AssetsAdapterContract.d.ts +2 -2
  340. package/dist/types/plugins/adapters/contracts/Curve3AssetsAdapterContract.d.ts +2 -2
  341. package/dist/types/plugins/adapters/contracts/Curve4AssetsAdapterContract.d.ts +2 -2
  342. package/dist/types/plugins/adapters/contracts/CurveV1AdapterDeposit.d.ts +2 -2
  343. package/dist/types/plugins/adapters/contracts/CurveV1AdapterStETHContract.d.ts +2 -2
  344. package/dist/types/plugins/adapters/contracts/CurveV1StableNGAdapterContract.d.ts +2 -2
  345. package/dist/types/plugins/adapters/contracts/DaiUsdsAdapterContract.d.ts +2 -2
  346. package/dist/types/plugins/adapters/contracts/ERC4626AdapterContract.d.ts +2 -2
  347. package/dist/types/plugins/adapters/contracts/ERC4626ReferralAdapterContract.d.ts +2 -2
  348. package/dist/types/plugins/adapters/contracts/EqualizerRouterAdapterContract.d.ts +2 -2
  349. package/dist/types/plugins/adapters/contracts/FluidDexAdapterContract.d.ts +2 -2
  350. package/dist/types/plugins/adapters/contracts/InfinifiGatewayAdapterContract.d.ts +2 -2
  351. package/dist/types/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.d.ts +2 -2
  352. package/dist/types/plugins/adapters/contracts/InfraredVaultAdapterContract.d.ts +2 -2
  353. package/dist/types/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.d.ts +2 -2
  354. package/dist/types/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.d.ts +2 -2
  355. package/dist/types/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.d.ts +2 -2
  356. package/dist/types/plugins/adapters/contracts/LidoV1AdapterContract.d.ts +2 -2
  357. package/dist/types/plugins/adapters/contracts/MellowClaimerAdapterContract.d.ts +2 -2
  358. package/dist/types/plugins/adapters/contracts/MellowDVVAdapterContract.d.ts +2 -2
  359. package/dist/types/plugins/adapters/contracts/MellowDepositQueueAdapterContract.d.ts +2 -2
  360. package/dist/types/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.d.ts +2 -2
  361. package/dist/types/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.d.ts +2 -2
  362. package/dist/types/plugins/adapters/contracts/MellowVaultAdapterContract.d.ts +2 -2
  363. package/dist/types/plugins/adapters/contracts/MellowWrapperAdapterContract.d.ts +2 -2
  364. package/dist/types/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.d.ts +2 -2
  365. package/dist/types/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +2 -2
  366. package/dist/types/plugins/adapters/contracts/PendleRouterAdapterContract.d.ts +2 -2
  367. package/dist/types/plugins/adapters/contracts/StakingRewardsAdapterContract.d.ts +2 -2
  368. package/dist/types/plugins/adapters/contracts/TraderJoeRouterAdapterContract.d.ts +2 -2
  369. package/dist/types/plugins/adapters/contracts/UniswapV2AdapterContract.d.ts +3 -3
  370. package/dist/types/plugins/adapters/contracts/UniswapV3AdapterContract.d.ts +3 -3
  371. package/dist/types/plugins/adapters/contracts/UniswapV4AdapterContract.d.ts +2 -2
  372. package/dist/types/plugins/adapters/contracts/UpshiftVaultAdapterContract.d.ts +16 -2
  373. package/dist/types/plugins/adapters/contracts/VelodromeV2AdapterContract.d.ts +2 -2
  374. package/dist/types/plugins/adapters/contracts/WstETHV1AdapterContract.d.ts +2 -2
  375. package/dist/types/plugins/adapters/contracts/YearnV2AdapterContract.d.ts +2 -2
  376. package/dist/types/plugins/bots/BotsPlugin.d.ts +3 -2
  377. package/dist/types/plugins/bots/PartialLiquidationBotBaseContract.d.ts +1 -1
  378. package/dist/types/plugins/bots/PartialLiquidationBotV300Contract.d.ts +8 -2
  379. package/dist/types/plugins/bots/config.d.ts +6 -0
  380. package/dist/types/plugins/bots/index.d.ts +2 -0
  381. package/dist/types/plugins/bots/types.d.ts +16 -0
  382. package/dist/types/sdk/GearboxSDK.d.ts +76 -5
  383. package/dist/types/sdk/accountMigration/AbstractMigrateCreditAccountsService.d.ts +2 -2
  384. package/dist/types/sdk/accountMigration/types.d.ts +2 -1
  385. package/dist/types/sdk/accounts/types.d.ts +3 -4
  386. package/dist/types/sdk/base/AddressLabeller.d.ts +11 -0
  387. package/dist/types/sdk/base/BaseContract.d.ts +28 -72
  388. package/dist/types/sdk/base/IAddressLabeller.d.ts +9 -0
  389. package/dist/types/sdk/base/PlaceholderContract.d.ts +2 -2
  390. package/dist/types/sdk/base/SDKConstruct.d.ts +16 -2
  391. package/dist/types/sdk/base/TokensMeta.d.ts +3 -2
  392. package/dist/types/sdk/base/index.d.ts +1 -2
  393. package/dist/types/sdk/base/types.d.ts +0 -50
  394. package/dist/types/sdk/core/BotListV3Contract.d.ts +1 -1
  395. package/dist/types/sdk/core/GearStakingV3Contract.d.ts +1 -1
  396. package/dist/types/sdk/core/address-provider/AbstractAddressProviderContract.d.ts +4 -3
  397. package/dist/types/sdk/core/address-provider/AddressProviderV300Contract.d.ts +3 -3
  398. package/dist/types/sdk/core/address-provider/AddressProviderV310Contract.d.ts +3 -3
  399. package/dist/types/sdk/market/MarketConfiguratorContract.d.ts +2 -2
  400. package/dist/types/sdk/market/credit/CreditConfiguratorV300Contract.d.ts +3 -3
  401. package/dist/types/sdk/market/credit/CreditConfiguratorV310Contract.d.ts +3 -3
  402. package/dist/types/sdk/market/credit/CreditFacadeV300Contract.d.ts +4 -3
  403. package/dist/types/sdk/market/credit/CreditFacadeV310Contract.d.ts +4 -3
  404. package/dist/types/sdk/market/credit/CreditManagerV300Contract.d.ts +1 -1
  405. package/dist/types/sdk/market/credit/CreditManagerV310Contract.d.ts +1 -1
  406. package/dist/types/sdk/market/credit/CreditSuite.d.ts +1 -1
  407. package/dist/types/sdk/market/credit/types.d.ts +2 -1
  408. package/dist/types/sdk/market/loss-policy/AliasLossPolicyV310Contract.d.ts +0 -1
  409. package/dist/types/sdk/market/loss-policy/LossPolicyContract.d.ts +3 -2
  410. package/dist/types/sdk/market/oracle/PriceOracleBaseContract.d.ts +12 -3
  411. package/dist/types/sdk/market/oracle/types.d.ts +10 -0
  412. package/dist/types/sdk/market/pool/GaugeContract.d.ts +3 -2
  413. package/dist/types/sdk/market/pool/LinearInterestRateModelContract.d.ts +3 -2
  414. package/dist/types/sdk/market/pool/PoolQuotaKeeperV300Contract.d.ts +3 -2
  415. package/dist/types/sdk/market/pool/PoolQuotaKeeperV310Contract.d.ts +3 -2
  416. package/dist/types/sdk/market/pool/PoolV300Contract.d.ts +5 -4
  417. package/dist/types/sdk/market/pool/PoolV310Contract.d.ts +5 -4
  418. package/dist/types/sdk/market/pool/TumblerContract.d.ts +3 -2
  419. package/dist/types/sdk/market/pricefeeds/AbstractLPPriceFeed.d.ts +8 -3
  420. package/dist/types/sdk/market/pricefeeds/AbstractPriceFeed.d.ts +3 -2
  421. package/dist/types/sdk/market/pricefeeds/BalancerStablePriceFeed.d.ts +3 -2
  422. package/dist/types/sdk/market/pricefeeds/BalancerWeightedPriceFeed.d.ts +3 -2
  423. package/dist/types/sdk/market/pricefeeds/BoundedPriceFeed.d.ts +2 -2
  424. package/dist/types/sdk/market/pricefeeds/CompositePriceFeed.d.ts +2 -2
  425. package/dist/types/sdk/market/pricefeeds/ConstantPriceFeed.d.ts +2 -2
  426. package/dist/types/sdk/market/pricefeeds/CurveCryptoPriceFeed.d.ts +3 -2
  427. package/dist/types/sdk/market/pricefeeds/CurveStablePriceFeed.d.ts +3 -2
  428. package/dist/types/sdk/market/pricefeeds/CurveUSDPriceFeed.d.ts +3 -2
  429. package/dist/types/sdk/market/pricefeeds/Erc4626PriceFeed.d.ts +3 -2
  430. package/dist/types/sdk/market/pricefeeds/ExternalPriceFeed.d.ts +2 -2
  431. package/dist/types/sdk/market/pricefeeds/MellowLRTPriceFeed.d.ts +3 -2
  432. package/dist/types/sdk/market/pricefeeds/PendleTWAPPTPriceFeed.d.ts +2 -2
  433. package/dist/types/sdk/market/pricefeeds/PriceFeedRef.d.ts +4 -3
  434. package/dist/types/sdk/market/pricefeeds/PriceFeedsRegister.d.ts +2 -1
  435. package/dist/types/sdk/market/pricefeeds/PythPriceFeed.d.ts +2 -2
  436. package/dist/types/sdk/market/pricefeeds/RedstonePriceFeed.d.ts +2 -2
  437. package/dist/types/sdk/market/pricefeeds/WstETHPriceFeed.d.ts +3 -2
  438. package/dist/types/sdk/market/pricefeeds/YearnPriceFeed.d.ts +3 -2
  439. package/dist/types/sdk/market/pricefeeds/ZeroPriceFeed.d.ts +2 -2
  440. package/dist/types/sdk/market/pricefeeds/types.d.ts +5 -0
  441. package/dist/types/sdk/market/pricefeeds/updates/PriceUpdatesCache.d.ts +1 -8
  442. package/dist/types/sdk/router/AbstractRouterContract.d.ts +1 -4
  443. package/dist/types/sdk/router/types.d.ts +2 -1
  444. package/dist/types/sdk/sdk-legacy/core/creditAccount.d.ts +2 -2
  445. package/dist/types/sdk/utils/index.d.ts +0 -1
  446. package/package.json +10 -10
  447. package/dist/cjs/plugins/bots/deserializePartialLiquidationBotParams.js +0 -49
  448. package/dist/cjs/sdk/base/ChainContractsRegister.js +0 -135
  449. package/dist/cjs/sdk/base/Construct.js +0 -87
  450. package/dist/cjs/sdk/utils/abi-decode.js +0 -58
  451. package/dist/esm/plugins/bots/deserializePartialLiquidationBotParams.js +0 -29
  452. package/dist/esm/sdk/base/ChainContractsRegister.js +0 -111
  453. package/dist/esm/sdk/base/Construct.js +0 -63
  454. package/dist/esm/sdk/utils/abi-decode.js +0 -37
  455. package/dist/types/plugins/bots/deserializePartialLiquidationBotParams.d.ts +0 -3
  456. package/dist/types/sdk/base/ChainContractsRegister.d.ts +0 -57
  457. package/dist/types/sdk/base/Construct.d.ts +0 -38
  458. package/dist/types/sdk/utils/abi-decode.d.ts +0 -10
@@ -1,102 +1,58 @@
1
- import type { Abi, Address, Chain, ContractEventName, ContractFunctionName, DecodeFunctionDataReturnType, EncodeFunctionDataParameters, GetContractReturnType, Hex, Log, PublicClient, Transport } from "viem";
2
- import { BaseError, type ContractEventArgs, type GetContractEventsReturnType } from "viem";
3
- import type { BaseContractStateHuman, RawTx } from "../types/index.js";
4
- import { Construct, type ConstructOptions } from "./Construct.js";
5
- import type { IBaseContract, ParsedCall, ParsedCallArgs } from "./types.js";
6
- export interface BaseContractArgs<abi extends Abi | readonly unknown[]> {
1
+ import type { Abi, Address, Client, ContractEventName, ContractFunctionName, DecodeFunctionDataReturnType, EncodeFunctionDataParameters, GetContractReturnType, Hex, Log } from "viem";
2
+ import type { GearboxSDK } from "../GearboxSDK.js";
3
+ import type { BaseContractStateHuman, ILogger, RawTx } from "../types/index.js";
4
+ import { SDKConstruct } from "./SDKConstruct.js";
5
+ export interface BaseContractOptions<abi extends Abi | readonly unknown[]> {
7
6
  abi: abi;
8
7
  addr: Address;
9
8
  name?: string;
10
9
  version?: number | bigint;
11
10
  contractType?: string;
12
11
  }
13
- export interface ContractParseErrorOptions {
12
+ export interface IBaseContract {
14
13
  address: Address;
15
- callData: Hex;
16
- contractName?: string;
14
+ contractType: string;
15
+ version: number;
16
+ name: string;
17
+ dirty: boolean;
17
18
  }
18
- export declare class ContractParseError extends BaseError {
19
- readonly address: Address;
20
- readonly callData: Hex;
21
- readonly selector: Hex;
22
- constructor(cause: Error, options: ContractParseErrorOptions);
23
- }
24
- export declare class BaseContract<abi extends Abi | readonly unknown[]> extends Construct implements IBaseContract {
25
- readonly contract: GetContractReturnType<abi, PublicClient<Transport, Chain>, Address>;
19
+ export declare abstract class BaseContract<abi extends Abi | readonly unknown[]> extends SDKConstruct implements IBaseContract {
20
+ #private;
21
+ readonly contract: GetContractReturnType<abi, {
22
+ public: Client;
23
+ }, Address>;
26
24
  readonly abi: abi;
25
+ readonly logger?: ILogger;
27
26
  readonly contractType: string;
28
- readonly version: number;
29
- readonly address: Address;
30
- readonly name: string;
31
- constructor({ client, logger }: ConstructOptions, args: BaseContractArgs<abi>);
27
+ version: number;
28
+ constructor(sdk: GearboxSDK, args: BaseContractOptions<abi>);
29
+ get address(): Address;
30
+ set address(address: Address);
31
+ get name(): string;
32
+ set name(name: string);
32
33
  stateHuman(_?: boolean): BaseContractStateHuman;
33
34
  /**
34
35
  * Updates (or not) contract's internal state from event
35
36
  * @param _log
36
37
  */
37
38
  processLog(_log: Log<bigint, number, false, undefined, undefined, abi, ContractEventName<abi>>): void;
38
- /**
39
- * Return parsed args and function name from calldata belonging to this contract
40
- * Target of the call is always this contract, but args can be parsed into calls to other contracts (de-facto recursive ParsedCall)
41
- * @param calldata
42
- * @returns
43
- */
44
- parseFunctionData(calldata: Hex): ParsedCall;
45
- /**
46
- * Same as {@link parseFunctionData}, but throws {@link ContractParseError} if error occurs
47
- * @param callData
48
- * @returns
49
- */
50
- mustParseFunctionData(callData: Hex): ParsedCall;
51
- /**
52
- * Parses viem-decoded contract function arguments to a map of named arguments
53
- * This default implementation uses abi-based parsing, you can override it,
54
- * but use this super implementation as fallback
55
- * @param params
56
- * @returns
57
- */
58
- protected parseFunctionParams(params: DecodeFunctionDataReturnType<abi>): ParsedCallArgs;
59
39
  /**
60
40
  * Converts contract calldata to some human-friendly string
61
41
  * This is safe function which should not throw
62
42
  * @param calldata
63
43
  * @returns
64
44
  */
65
- stringifyFunctionData(calldata: Hex): string;
45
+ parseFunctionData(calldata: Hex): string;
46
+ mustParseFunctionData(calldata: Hex): string;
66
47
  /**
67
- * Same as {@link stingifyFunctionData}, but throws if error occurs
48
+ * Return args and function name from calldata
68
49
  * @param calldata
69
50
  * @returns
70
51
  */
71
- mustStringifyFunctionData(calldata: Hex): string;
72
- /**
73
- * Pretty-prints values of function arguments (do not include parameter names)
74
- * Can be overriden in classes, but use this super implementation as fallback
75
- *
76
- * @param decoded - Function arguments decoded by viem
77
- * @returns
78
- */
79
- protected stringifyFunctionParams(decoded: DecodeFunctionDataReturnType<abi>): string[];
80
- protected wrapParseCall(functionName: string, args: Record<string, string>): ParsedCall;
81
- /**
82
- * Creates a raw transaction for a function in this contract
83
- * @param parameters
84
- * @returns
85
- */
52
+ parseFunctionDataToObject(calldata: Hex): DecodeFunctionDataReturnType<abi, ContractFunctionName<abi, import("viem").AbiStateMutability>>;
53
+ protected parseFunctionParams(_params: DecodeFunctionDataReturnType<abi>): Array<string> | undefined;
54
+ getVersion(): Promise<number>;
86
55
  createRawTx<functionName extends ContractFunctionName<abi> | undefined = undefined>(parameters: Omit<EncodeFunctionDataParameters<abi, functionName>, "abi"> & {
87
56
  description?: string;
88
57
  }): RawTx;
89
- /**
90
- * Get events in safe manner, by bisecting block range if needed
91
- *
92
- * @deprecated TODO: this should be moved to viem transport
93
- *
94
- * @param eventName
95
- * @param fromBlock
96
- * @param toBlock
97
- * @param args
98
- * @param chunkSize
99
- * @returns
100
- */
101
- getEvents<EventName extends ContractEventName<abi>>(eventName: EventName, fromBlock: bigint, toBlock: bigint, args?: ContractEventArgs<abi, EventName extends ContractEventName<abi> ? EventName : ContractEventName<abi>> | undefined, chunkSize?: number): Promise<GetContractEventsReturnType<abi, EventName, undefined, bigint, bigint>>;
102
58
  }
@@ -0,0 +1,9 @@
1
+ import type { Address } from "viem";
2
+ /**
3
+ * Helper interface to ease v3.1 refactoring and migration from static methods
4
+ */
5
+ export interface IAddressLabeller {
6
+ set: (address: Address, label: string | ((oldLabel?: string) => string)) => void;
7
+ get: (address: Address) => string;
8
+ all: Record<Address, string>;
9
+ }
@@ -1,9 +1,9 @@
1
1
  import type { GearboxSDK } from "../GearboxSDK.js";
2
- import type { BaseContractArgs } from "./BaseContract.js";
2
+ import type { BaseContractOptions } from "./BaseContract.js";
3
3
  import { BaseContract } from "./BaseContract.js";
4
4
  declare const abi: unknown[];
5
5
  type abi = typeof abi;
6
6
  export declare class PlaceholderContract extends BaseContract<abi> {
7
- constructor(sdk: GearboxSDK, args: Omit<BaseContractArgs<abi>, "abi">);
7
+ constructor(sdk: GearboxSDK, args: Omit<BaseContractOptions<abi>, "abi">);
8
8
  }
9
9
  export {};
@@ -1,7 +1,21 @@
1
+ import type { Address, PublicClient } from "viem";
2
+ import type { NetworkType } from "../chain/index.js";
1
3
  import type { GearboxSDK } from "../GearboxSDK.js";
2
4
  import type { PluginsMap } from "../plugins/index.js";
3
- import { Construct } from "./Construct.js";
4
- export declare class SDKConstruct<const Plugins extends PluginsMap = {}> extends Construct {
5
+ export declare class SDKConstruct<const Plugins extends PluginsMap = {}> {
6
+ #private;
5
7
  readonly sdk: GearboxSDK<Plugins>;
6
8
  constructor(sdk: GearboxSDK<Plugins>);
9
+ get networkType(): NetworkType;
10
+ get client(): PublicClient;
11
+ /**
12
+ * Indicates that contract state needs to be updated
13
+ */
14
+ get dirty(): boolean;
15
+ protected set dirty(value: boolean);
16
+ protected labelAddress(address: Address): string;
17
+ /**
18
+ * Returns list of addresses that should be watched for events to sync state
19
+ */
20
+ get watchAddresses(): Set<Address>;
7
21
  }
@@ -1,4 +1,5 @@
1
- import type { Address, Chain, PublicClient, Transport } from "viem";
1
+ import type { Address } from "viem";
2
+ import type { GearboxSDK } from "../GearboxSDK.js";
2
3
  import { type PhantomTokenContractType } from "../index.js";
3
4
  import type { Asset } from "../router/index.js";
4
5
  import { AddressMap } from "../utils/index.js";
@@ -15,7 +16,7 @@ export interface TokenMetaDataExtended extends TokenMetaData {
15
16
  }
16
17
  export declare class TokensMeta extends AddressMap<TokenMetaDataExtended> {
17
18
  #private;
18
- constructor(client: PublicClient<Transport, Chain>);
19
+ constructor(sdk: GearboxSDK);
19
20
  symbol(token: Address): string;
20
21
  decimals(token: Address): number;
21
22
  /**
@@ -1,6 +1,5 @@
1
+ export * from "./AddressLabeller.js";
1
2
  export * from "./BaseContract.js";
2
- export * from "./ChainContractsRegister.js";
3
- export * from "./Construct.js";
4
3
  export * from "./PlaceholderContract.js";
5
4
  export * from "./SDKConstruct.js";
6
5
  export * from "./TokensMeta.js";
@@ -41,53 +41,3 @@ export declare enum VotingContractStatus {
41
41
  ALLOWED = 1,
42
42
  UNVOTE_ONLY = 2
43
43
  }
44
- export type ParsedCallArgs = Record<string, string>;
45
- export interface ParsedCall {
46
- chainId: number;
47
- target: Address;
48
- contractType: string;
49
- label: string;
50
- functionName: string;
51
- args: ParsedCallArgs;
52
- }
53
- export interface IBaseContract {
54
- /**
55
- * Contract address
56
- **/
57
- readonly address: Address;
58
- /**
59
- * Contract type (parsed bytes32 or empty string)
60
- **/
61
- readonly contractType: string;
62
- /**
63
- * Contract version
64
- **/
65
- readonly version: number;
66
- /**
67
- * Internal name, for labeling purposes
68
- * However, other contracts may add more labels, so prefer use labeling methods instead
69
- **/
70
- readonly name: string;
71
- /**
72
- * Indicates that contract state diverged from onchain state and needs to be updated
73
- */
74
- dirty: boolean;
75
- /**
76
- * Return parsed args and function name from calldata belonging to this contract
77
- * Target of the call is always this contract, but args can be parsed into calls to other contracts (de-facto recursive ParsedCall)
78
- **/
79
- parseFunctionData: (calldata: Hex) => ParsedCall;
80
- /**
81
- * Same as {@link parseFunctionData}, but throws if error occurs
82
- **/
83
- mustParseFunctionData: (calldata: Hex) => ParsedCall;
84
- /**
85
- * Converts contract calldata to some human-friendly string
86
- * This is safe function which should not throw
87
- **/
88
- stringifyFunctionData: (calldata: Hex) => string;
89
- /**
90
- * Same as {@link stringifyFunctionData}, but throws if error occurs
91
- **/
92
- mustStringifyFunctionData: (calldata: Hex) => string;
93
- }
@@ -314,7 +314,7 @@ type abi = typeof abi;
314
314
  export declare class BotListContract extends BaseContract<abi> {
315
315
  #private;
316
316
  constructor(sdk: GearboxSDK, address: Address);
317
- protected stringifyFunctionParams(params: DecodeFunctionDataReturnType<abi>): string[];
317
+ protected parseFunctionParams(params: DecodeFunctionDataReturnType<abi>): Array<string> | undefined;
318
318
  syncState(toBlock: bigint): Promise<void>;
319
319
  processLog(log: Log<bigint, number, false, undefined, undefined, abi, ContractEventName<abi>>): void;
320
320
  get approvedCreditManagers(): Set<Address>;
@@ -509,7 +509,7 @@ export interface MultiVote {
509
509
  }
510
510
  export declare class GearStakingContract extends BaseContract<abi> {
511
511
  constructor(sdk: GearboxSDK, address: Address);
512
- protected stringifyFunctionParams(params: DecodeFunctionDataReturnType<abi>): string[];
512
+ parseFunctionParams(params: DecodeFunctionDataReturnType<abi>): Array<string> | undefined;
513
513
  stateHuman(raw?: boolean): GearStakingV3StateHuman;
514
514
  deposit(amount: bigint, votes: Array<MultiVote>): RawTx;
515
515
  depositWithPermit(amount: bigint, votes: Array<MultiVote>, permit: PermitResult): RawTx;
@@ -1,12 +1,13 @@
1
1
  import { type Abi, type Address } from "viem";
2
- import type { BaseContractArgs } from "../../base/BaseContract.js";
3
- import { BaseContract, type ConstructOptions } from "../../base/index.js";
2
+ import type { BaseContractOptions } from "../../base/BaseContract.js";
3
+ import { BaseContract } from "../../base/index.js";
4
4
  import type { VersionRange } from "../../constants/index.js";
5
+ import type { GearboxSDK } from "../../GearboxSDK.js";
5
6
  import type { AddressProviderV3StateHuman } from "../../types/index.js";
6
7
  import type { AddressProviderState } from "./types.js";
7
8
  export default abstract class AbstractAddressProviderContract<abi extends Abi | readonly unknown[]> extends BaseContract<abi> {
8
9
  #private;
9
- constructor(options: ConstructOptions, args: BaseContractArgs<abi>, addresses?: Record<string, Record<number, Address>>);
10
+ constructor(sdk: GearboxSDK, args: BaseContractOptions<abi>, addresses?: Record<string, Record<number, Address>>);
10
11
  protected setInternalAddress(key: string, address: Address, version: number): void;
11
12
  getAddress(contract: string, version?: number): Address;
12
13
  getLatest(contract: string, range: VersionRange): [address: Address, version: number] | undefined;
@@ -1,5 +1,5 @@
1
1
  import type { Address, ContractEventName, DecodeFunctionDataReturnType, Log } from "viem";
2
- import type { ConstructOptions } from "../../base/Construct.js";
2
+ import type { GearboxSDK } from "../../GearboxSDK.js";
3
3
  import AbstractAddressProviderContract from "./AbstractAddressProviderContract.js";
4
4
  import type { IAddressProviderContract } from "./types.js";
5
5
  declare const abi: readonly [{
@@ -89,8 +89,8 @@ declare const abi: readonly [{
89
89
  }];
90
90
  type abi = typeof abi;
91
91
  export declare class AddressProviderV300Contract extends AbstractAddressProviderContract<abi> implements IAddressProviderContract {
92
- constructor(options: ConstructOptions, address: Address, version: number, addresses?: Record<string, Record<number, Address>>);
93
- protected stringifyFunctionParams(params: DecodeFunctionDataReturnType<abi>): string[];
92
+ constructor(sdk: GearboxSDK, address: Address, version: number, addresses?: Record<string, Record<number, Address>>);
93
+ protected parseFunctionParams(params: DecodeFunctionDataReturnType<abi>): Array<string> | undefined;
94
94
  processLog(log: Log<bigint, number, false, undefined, undefined, abi, ContractEventName<abi>>): void;
95
95
  syncState(blockNumber?: bigint): Promise<void>;
96
96
  }
@@ -1,5 +1,5 @@
1
1
  import type { Address, ContractEventName, DecodeFunctionDataReturnType, Log } from "viem";
2
- import type { ConstructOptions } from "../../base/Construct.js";
2
+ import type { GearboxSDK } from "../../GearboxSDK.js";
3
3
  import AbstractAddressProviderContract from "./AbstractAddressProviderContract.js";
4
4
  import type { IAddressProviderContract } from "./types.js";
5
5
  declare const abi: readonly [{
@@ -254,8 +254,8 @@ declare const abi: readonly [{
254
254
  }];
255
255
  type abi = typeof abi;
256
256
  export declare class AddressProviderV310Contract extends AbstractAddressProviderContract<abi> implements IAddressProviderContract {
257
- constructor(options: ConstructOptions, address: Address, version?: number, addresses?: Record<string, Record<number, Address>>);
258
- protected stringifyFunctionParams(params: DecodeFunctionDataReturnType<abi>): string[];
257
+ constructor(sdk: GearboxSDK, address: Address, version: number, addresses?: Record<string, Record<number, Address>>);
258
+ protected parseFunctionParams(params: DecodeFunctionDataReturnType<abi>): Array<string> | undefined;
259
259
  processLog(log: Log<bigint, number, false, undefined, undefined, abi, ContractEventName<abi>>): void;
260
260
  syncState(blockNumber?: bigint): Promise<void>;
261
261
  }
@@ -1,7 +1,7 @@
1
1
  import { type Address, type ContractEventName, type Log } from "viem";
2
- import type { ConstructOptions } from "../base/Construct.js";
3
2
  import { BaseContract } from "../base/index.js";
4
3
  import type { PeripheryContract } from "../constants/index.js";
4
+ import type { GearboxSDK } from "../GearboxSDK.js";
5
5
  declare const abi: readonly [{
6
6
  readonly type: "function";
7
7
  readonly inputs: readonly [];
@@ -1529,7 +1529,7 @@ declare const abi: readonly [{
1529
1529
  type abi = typeof abi;
1530
1530
  export declare class MarketConfiguratorContract extends BaseContract<abi> {
1531
1531
  #private;
1532
- constructor(options: ConstructOptions, address: Address);
1532
+ constructor(sdk: GearboxSDK, address: Address);
1533
1533
  loadCuratorName(): Promise<void>;
1534
1534
  getPeripheryContract(contract: PeripheryContract): Promise<Address>;
1535
1535
  processLog(log: Log<bigint, number, false, undefined, undefined, abi, ContractEventName<abi>>): void;
@@ -1,4 +1,4 @@
1
- import type { ContractEventName, DecodeFunctionDataReturnType, GetEventArgs, Log } from "viem";
1
+ import type { Address, ContractEventName, DecodeFunctionDataReturnType, GetEventArgs, Log } from "viem";
2
2
  import type { CreditSuiteState } from "../../base/index.js";
3
3
  import { BaseContract } from "../../base/index.js";
4
4
  import type { GearboxSDK } from "../../GearboxSDK.js";
@@ -638,11 +638,11 @@ export type RampEvent = GetEventArgs<abi, "ScheduleTokenLiquidationThresholdRamp
638
638
  Required: true;
639
639
  }>;
640
640
  export declare class CreditConfiguratorV300Contract extends BaseContract<abi> implements ICreditConfiguratorContract {
641
- readonly sdk: GearboxSDK;
641
+ readonly adapters: Address[];
642
642
  isPaused: boolean;
643
643
  constructor(sdk: GearboxSDK, { creditConfigurator, creditManager }: CreditSuiteState);
644
644
  processLog(log: Log<bigint, number, false, undefined, undefined, abi, ContractEventName<abi>>): void;
645
645
  checkRamps(): Promise<RampEvent[]>;
646
- protected stringifyFunctionParams(params: DecodeFunctionDataReturnType<abi>): string[];
646
+ protected parseFunctionParams(params: DecodeFunctionDataReturnType<abi>): Array<string> | undefined;
647
647
  }
648
648
  export {};
@@ -1,4 +1,4 @@
1
- import type { ContractEventName, DecodeFunctionDataReturnType, Log } from "viem";
1
+ import type { Address, ContractEventName, DecodeFunctionDataReturnType, Log } from "viem";
2
2
  import type { CreditSuiteState } from "../../base/index.js";
3
3
  import { BaseContract } from "../../base/index.js";
4
4
  import type { GearboxSDK } from "../../GearboxSDK.js";
@@ -484,11 +484,11 @@ declare const abi: readonly [{
484
484
  }];
485
485
  type abi = typeof abi;
486
486
  export declare class CreditConfiguratorV310Contract extends BaseContract<abi> implements ICreditConfiguratorContract {
487
- readonly sdk: GearboxSDK;
487
+ readonly adapters: Address[];
488
488
  isPaused: boolean;
489
489
  constructor(sdk: GearboxSDK, { creditConfigurator, creditManager }: CreditSuiteState);
490
490
  processLog(log: Log<bigint, number, false, undefined, undefined, abi, ContractEventName<abi>>): void;
491
491
  checkRamps(): Promise<RampEvent[]>;
492
- protected stringifyFunctionParams(params: DecodeFunctionDataReturnType<abi>): string[];
492
+ protected parseFunctionParams(params: DecodeFunctionDataReturnType<abi>): Array<string> | undefined;
493
493
  }
494
494
  export {};
@@ -1,6 +1,7 @@
1
1
  import type { Address, ContractEventName, DecodeFunctionDataReturnType, Hex, Log } from "viem";
2
- import type { ConstructOptions, CreditFacadeState, CreditSuiteState } from "../../base/index.js";
2
+ import type { CreditFacadeState, CreditSuiteState } from "../../base/index.js";
3
3
  import { BaseContract } from "../../base/index.js";
4
+ import type { GearboxSDK } from "../../GearboxSDK.js";
4
5
  import type { CreditFacadeStateHuman, MultiCall, RawTx } from "../../types/index.js";
5
6
  declare const abi: readonly [{
6
7
  readonly type: "function";
@@ -776,13 +777,13 @@ export interface CreditFacadeV300Contract extends Omit<CreditFacadeState, "baseP
776
777
  }
777
778
  export declare class CreditFacadeV300Contract extends BaseContract<abi> {
778
779
  readonly underlying: Address;
779
- constructor(options: ConstructOptions, { creditFacade, creditManager }: CreditSuiteState);
780
+ constructor(sdk: GearboxSDK, { creditFacade, creditManager }: CreditSuiteState);
780
781
  stateHuman(raw?: boolean): CreditFacadeStateHuman;
781
782
  processLog(log: Log<bigint, number, false, undefined, undefined, abi, ContractEventName<abi>>): void;
782
783
  liquidateCreditAccount(ca: Address, to: Address, calls: MultiCall[], lossPolicyData?: Hex): RawTx;
783
784
  closeCreditAccount(ca: Address, calls: MultiCall[]): RawTx;
784
785
  multicall(ca: Address, calls: MultiCall[]): RawTx;
785
786
  openCreditAccount(to: Address, calls: MultiCall[], referralCode: bigint): RawTx;
786
- protected stringifyFunctionParams(params: DecodeFunctionDataReturnType<abi>): string[];
787
+ protected parseFunctionParams(params: DecodeFunctionDataReturnType<abi>): string[] | undefined;
787
788
  }
788
789
  export {};
@@ -1,6 +1,7 @@
1
1
  import type { Address, ContractEventName, DecodeFunctionDataReturnType, Hex, Log } from "viem";
2
- import type { ConstructOptions, CreditFacadeState, CreditSuiteState } from "../../base/index.js";
2
+ import type { CreditFacadeState, CreditSuiteState } from "../../base/index.js";
3
3
  import { BaseContract } from "../../base/index.js";
4
+ import type { GearboxSDK } from "../../GearboxSDK.js";
4
5
  import type { CreditFacadeStateHuman, MultiCall, RawTx } from "../../types/index.js";
5
6
  declare const abi: readonly [{
6
7
  readonly type: "function";
@@ -849,13 +850,13 @@ export interface CreditFacadeV310Contract extends Omit<CreditFacadeState, "baseP
849
850
  }
850
851
  export declare class CreditFacadeV310Contract extends BaseContract<abi> {
851
852
  readonly underlying: Address;
852
- constructor(options: ConstructOptions, { creditFacade, creditManager }: CreditSuiteState);
853
+ constructor(sdk: GearboxSDK, { creditFacade, creditManager }: CreditSuiteState);
853
854
  stateHuman(raw?: boolean): CreditFacadeStateHuman;
854
855
  processLog(log: Log<bigint, number, false, undefined, undefined, abi, ContractEventName<abi>>): void;
855
856
  liquidateCreditAccount(ca: Address, to: Address, calls: MultiCall[], lossPolicyData?: Hex): RawTx;
856
857
  closeCreditAccount(ca: Address, calls: MultiCall[]): RawTx;
857
858
  multicall(ca: Address, calls: MultiCall[]): RawTx;
858
859
  openCreditAccount(to: Address, calls: MultiCall[], referralCode: bigint): RawTx;
859
- protected stringifyFunctionParams(params: DecodeFunctionDataReturnType<abi>): string[];
860
+ protected parseFunctionParams(params: DecodeFunctionDataReturnType<abi>): string[] | undefined;
860
861
  }
861
862
  export {};
@@ -1024,7 +1024,7 @@ declare const abi: readonly [{
1024
1024
  }];
1025
1025
  readonly anonymous: false;
1026
1026
  }];
1027
- export interface CreditManagerV300Contract extends Omit<CreditManagerState, "baseParams" | "collateralTokens" | "liquidationThresholds" | "name">, BaseContract<abi> {
1027
+ export interface CreditManagerV300Contract extends Omit<CreditManagerState, "baseParams" | "collateralTokens" | "liquidationThresholds">, BaseContract<abi> {
1028
1028
  }
1029
1029
  export declare class CreditManagerV300Contract extends BaseContract<abi> implements ICreditManagerContract {
1030
1030
  /**
@@ -981,7 +981,7 @@ declare const abi: readonly [{
981
981
  readonly name: "SetCreditConfigurator";
982
982
  }];
983
983
  type abi = typeof iCreditManagerV310Abi;
984
- export interface CreditManagerV310Contract extends Omit<CreditManagerState, "baseParams" | "collateralTokens" | "liquidationThresholds" | "name">, BaseContract<abi> {
984
+ export interface CreditManagerV310Contract extends Omit<CreditManagerState, "baseParams" | "collateralTokens" | "liquidationThresholds">, BaseContract<abi> {
985
985
  }
986
986
  export declare class CreditManagerV310Contract extends BaseContract<abi> implements ICreditManagerContract {
987
987
  /**
@@ -6,6 +6,7 @@ import type { IRouterContract } from "../../router/index.js";
6
6
  import type { CreditSuiteStateHuman } from "../../types/index.js";
7
7
  import type { CreditFacadeContract, ICreditConfiguratorContract, ICreditManagerContract } from "./types.js";
8
8
  export declare class CreditSuite extends SDKConstruct {
9
+ readonly name: string;
9
10
  readonly pool: Address;
10
11
  readonly underlying: Address;
11
12
  readonly creditManager: ICreditManagerContract;
@@ -13,7 +14,6 @@ export declare class CreditSuite extends SDKConstruct {
13
14
  readonly creditConfigurator: ICreditConfiguratorContract;
14
15
  readonly marketConfigurator: Address;
15
16
  readonly state: CreditSuiteState;
16
- readonly name: string;
17
17
  constructor(sdk: GearboxSDK, marketData: MarketData, index: number);
18
18
  get router(): IRouterContract;
19
19
  get isExpired(): boolean;
@@ -6,11 +6,12 @@ import type { IAdapterContract } from "../adapters/index.js";
6
6
  import type { CreditFacadeV300Contract, CreditFacadeV310Contract } from "../index.js";
7
7
  import type { RampEvent } from "./CreditConfiguratorV300Contract.js";
8
8
  export interface ICreditConfiguratorContract extends IBaseContract {
9
+ adapters: Address[];
9
10
  isPaused: boolean;
10
11
  checkRamps: () => Promise<RampEvent[]>;
11
12
  stateHuman: (raw?: boolean) => CreditConfiguratorStateHuman;
12
13
  }
13
- export interface ICreditManagerContract extends IBaseContract, Omit<CreditManagerState, "baseParams" | "collateralTokens" | "name"> {
14
+ export interface ICreditManagerContract extends IBaseContract, Omit<CreditManagerState, "baseParams" | "collateralTokens"> {
14
15
  /**
15
16
  * Mapping targetContract => adapter
16
17
  */
@@ -285,7 +285,6 @@ export declare class AliasLossPolicyV310Contract extends BaseContract<abi> imple
285
285
  readonly checksEnabled: boolean;
286
286
  readonly tokens: readonly Address[];
287
287
  readonly priceFeedParams: readonly AliasedPriceFeedParams[];
288
- readonly sdk: GearboxSDK;
289
288
  constructor(sdk: GearboxSDK, params: BaseParams);
290
289
  getLiquidationData(creditAccount: Address, blockNumber?: bigint): Promise<Hex | undefined>;
291
290
  stateHuman(raw?: boolean): AliasLossPolicyStateHuman;
@@ -1,5 +1,6 @@
1
1
  import type { Address, Hex } from "viem";
2
- import { BaseContract, type BaseParams, type ConstructOptions } from "../../base/index.js";
2
+ import { BaseContract, type BaseParams } from "../../base/index.js";
3
+ import type { GearboxSDK } from "../../GearboxSDK.js";
3
4
  import type { ILossPolicyContract } from "./types.js";
4
5
  declare const abi: readonly [{
5
6
  readonly type: "function";
@@ -129,7 +130,7 @@ declare const abi: readonly [{
129
130
  }];
130
131
  type abi = typeof abi;
131
132
  export declare class LossPolicyContract extends BaseContract<abi> implements ILossPolicyContract {
132
- constructor(options: ConstructOptions, params: BaseParams);
133
+ constructor(sdk: GearboxSDK, params: BaseParams);
133
134
  getLiquidationData(_creditAccount: Address, _blockNumber?: bigint): Promise<Hex | undefined>;
134
135
  }
135
136
  export {};
@@ -1,5 +1,5 @@
1
1
  import type { Abi, Address } from "viem";
2
- import type { BaseContractArgs } from "../../base/BaseContract.js";
2
+ import type { BaseContractOptions } from "../../base/BaseContract.js";
3
3
  import type { PriceOracleData } from "../../base/index.js";
4
4
  import { BaseContract } from "../../base/index.js";
5
5
  import type { GearboxSDK } from "../../GearboxSDK.js";
@@ -11,7 +11,6 @@ import PriceFeedAnswerMap from "./PriceFeedAnswerMap.js";
11
11
  import type { DelegatedOracleMulticall, IPriceOracleContract, OnDemandPriceUpdates, PriceFeedsForTokensOptions } from "./types.js";
12
12
  export declare abstract class PriceOracleBaseContract<abi extends Abi | readonly unknown[]> extends BaseContract<abi> implements IPriceOracleContract {
13
13
  #private;
14
- readonly sdk: GearboxSDK;
15
14
  /**
16
15
  * Mapping Token => [PriceFeed Address, stalenessPeriod]
17
16
  */
@@ -28,7 +27,7 @@ export declare abstract class PriceOracleBaseContract<abi extends Abi | readonly
28
27
  * Mapping Token => Price in USD
29
28
  */
30
29
  readonly reservePrices: PriceFeedAnswerMap;
31
- constructor(sdk: GearboxSDK, args: BaseContractArgs<abi>, data: PriceOracleData);
30
+ constructor(sdk: GearboxSDK, args: BaseContractOptions<abi>, data: PriceOracleData);
32
31
  /**
33
32
  * Returns main and reserve price feeds for given tokens
34
33
  * @param tokens
@@ -36,6 +35,11 @@ export declare abstract class PriceOracleBaseContract<abi extends Abi | readonly
36
35
  * @returns
37
36
  */
38
37
  priceFeedsForTokens(tokens: Address[], opts?: PriceFeedsForTokensOptions): IPriceFeedContract[];
38
+ /**
39
+ * Generates updates for all updateable price feeds in this oracle (including dependencies)
40
+ * @returns
41
+ */
42
+ updatePriceFeeds(): Promise<UpdatePriceFeedsResult>;
39
43
  abstract onDemandPriceUpdates(creditFacade: Address, updates?: UpdatePriceFeedsResult): OnDemandPriceUpdates<PriceUpdateV310 | PriceUpdateV300>;
40
44
  /**
41
45
  * Gets main price for given token
@@ -80,6 +84,11 @@ export declare abstract class PriceOracleBaseContract<abi extends Abi | readonly
80
84
  * @param reserve use reserve price feed instead of main
81
85
  */
82
86
  convertFromUSD(to: Address, amount: bigint, reserve?: boolean): bigint;
87
+ /**
88
+ * Loads new prices for this oracle from PriceFeedCompressor
89
+ * Will (re)create price feeds if needed
90
+ */
91
+ updatePrices(): Promise<void>;
83
92
  /**
84
93
  * All price feed tree nodes known to this oracle
85
94
  */
@@ -54,6 +54,11 @@ export interface IPriceOracleContract extends IBaseContract {
54
54
  * @returns
55
55
  */
56
56
  reservePrice: (token: Address) => bigint;
57
+ /**
58
+ * Loads new prices for this oracle from PriceFeedCompressor
59
+ * Will (re)create price feeds if needed
60
+ */
61
+ updatePrices: () => Promise<void>;
57
62
  /**
58
63
  * Paired method to updatePrices, helps to update prices on all oracles in one multicall
59
64
  */
@@ -82,6 +87,11 @@ export interface IPriceOracleContract extends IBaseContract {
82
87
  * @returns
83
88
  */
84
89
  priceFeedsForTokens: (tokens: Address[], opts?: PriceFeedsForTokensOptions) => IPriceFeedContract[];
90
+ /**
91
+ * Generates updates for all updateable price feeds in this oracle (including dependencies)
92
+ * @returns
93
+ */
94
+ updatePriceFeeds: () => Promise<UpdatePriceFeedsResult>;
85
95
  /**
86
96
  * Converts previously obtained price updates into CreditFacade multicall entries
87
97
  * @param creditFacade
@@ -1,6 +1,7 @@
1
1
  import type { ContractEventName, Log } from "viem";
2
- import type { ConstructOptions, PoolState, RateKeeperState } from "../../base/index.js";
2
+ import type { PoolState, RateKeeperState } from "../../base/index.js";
3
3
  import { BaseContract } from "../../base/index.js";
4
+ import type { GearboxSDK } from "../../GearboxSDK.js";
4
5
  import type { GaugeStateHuman } from "../../types/index.js";
5
6
  import { AddressMap } from "../../utils/index.js";
6
7
  import type { IRateKeeperContract } from "./types.js";
@@ -352,7 +353,7 @@ export declare class GaugeContract extends BaseContract<abi> implements IRateKee
352
353
  readonly epochFrozen: boolean;
353
354
  readonly epochLastUpdate: number;
354
355
  readonly rates: AddressMap<number>;
355
- constructor(options: ConstructOptions, pool: PoolState, gauge: RateKeeperState);
356
+ constructor(sdk: GearboxSDK, pool: PoolState, gauge: RateKeeperState);
356
357
  processLog(log: Log<bigint, number, false, undefined, undefined, abi, ContractEventName<abi>>): void;
357
358
  stateHuman(raw?: boolean): GaugeStateHuman;
358
359
  }
@@ -1,5 +1,6 @@
1
- import type { BaseState, ConstructOptions } from "../../base/index.js";
1
+ import type { BaseState } from "../../base/index.js";
2
2
  import { BaseContract } from "../../base/index.js";
3
+ import type { GearboxSDK } from "../../GearboxSDK.js";
3
4
  import type { LinearInterestRateModelStateHuman } from "../../types/index.js";
4
5
  import type { IInterestRateModelContract } from "./types.js";
5
6
  declare const abi: readonly [{
@@ -102,7 +103,7 @@ export declare class LinearInterestRateModelContract extends BaseContract<abi> i
102
103
  readonly Rslope2: number;
103
104
  readonly Rslope3: number;
104
105
  readonly isBorrowingMoreU2Forbidden: boolean;
105
- constructor(options: ConstructOptions, params: BaseState);
106
+ constructor(sdk: GearboxSDK, params: BaseState);
106
107
  stateHuman(raw?: boolean): LinearInterestRateModelStateHuman;
107
108
  }
108
109
  export {};