@gearbox-protocol/sdk 11.9.0 → 11.11.0-next.1

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 (443) hide show
  1. package/dist/cjs/dev/create2.js +1 -1
  2. package/dist/cjs/dev/mint/AbstractMinter.js +2 -4
  3. package/dist/cjs/dev/mint/DealMinter.js +0 -3
  4. package/dist/cjs/dev/mint/DirectMinter.js +0 -3
  5. package/dist/cjs/dev/mint/FallbackMinter.js +1 -1
  6. package/dist/cjs/dev/mint/TransferMinter.js +0 -3
  7. package/dist/cjs/permissionless/bindings/address-provider.js +4 -6
  8. package/dist/cjs/permissionless/bindings/bytecode-repository.js +23 -25
  9. package/dist/cjs/permissionless/bindings/compressors/token-compressor.js +4 -4
  10. package/dist/cjs/permissionless/bindings/compressors/withdrawal-compressor.js +11 -17
  11. package/dist/cjs/permissionless/bindings/cross-chain-multisig.js +23 -22
  12. package/dist/cjs/permissionless/bindings/factory/abstract-factory.js +7 -4
  13. package/dist/cjs/permissionless/bindings/governance/batches-chain.js +4 -4
  14. package/dist/cjs/permissionless/bindings/governance/governor.js +30 -49
  15. package/dist/cjs/permissionless/bindings/governance/timelock.js +4 -4
  16. package/dist/cjs/permissionless/bindings/index.js +0 -2
  17. package/dist/cjs/permissionless/bindings/instance-manager.js +58 -77
  18. package/dist/cjs/permissionless/bindings/market-configurator-factory.js +4 -4
  19. package/dist/cjs/permissionless/bindings/market-configurator.js +71 -143
  20. package/dist/cjs/permissionless/bindings/price-feed-store.js +8 -17
  21. package/dist/cjs/permissionless/bindings/router/routing-manager.js +9 -15
  22. package/dist/cjs/permissionless/bindings/treasury-splitter.js +14 -23
  23. package/dist/cjs/permissionless/core/raw-tx.js +2 -2
  24. package/dist/cjs/permissionless/utils/format.js +2 -2
  25. package/dist/cjs/permissionless/utils/governance/timelock-txs.js +2 -2
  26. package/dist/cjs/permissionless/utils/index.js +0 -2
  27. package/dist/cjs/permissionless/utils/price-update/get-price-feeds.js +1 -2
  28. package/dist/cjs/permissionless/utils/price-update/get-price-update-tx.js +1 -2
  29. package/dist/cjs/permissionless/utils/price-update/get-prices.js +1 -2
  30. package/dist/cjs/permissionless/utils/price-update/get-updatable-feeds.js +2 -3
  31. package/dist/cjs/plugins/adapters/contracts/AbstractAdapter.js +2 -2
  32. package/dist/cjs/plugins/adapters/contracts/AccountMigratorAdapterContract.js +2 -2
  33. package/dist/cjs/plugins/adapters/contracts/BalancerV2VaultAdapterContract.js +2 -2
  34. package/dist/cjs/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +2 -2
  35. package/dist/cjs/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +2 -2
  36. package/dist/cjs/plugins/adapters/contracts/CamelotV3AdapterContract.js +2 -2
  37. package/dist/cjs/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +2 -2
  38. package/dist/cjs/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +2 -2
  39. package/dist/cjs/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +2 -2
  40. package/dist/cjs/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +2 -2
  41. package/dist/cjs/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +2 -2
  42. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterDeposit.js +2 -2
  43. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +2 -2
  44. package/dist/cjs/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +2 -2
  45. package/dist/cjs/plugins/adapters/contracts/DaiUsdsAdapterContract.js +2 -2
  46. package/dist/cjs/plugins/adapters/contracts/ERC4626AdapterContract.js +2 -2
  47. package/dist/cjs/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +2 -2
  48. package/dist/cjs/plugins/adapters/contracts/EqualizerRouterAdapterContract.js +2 -2
  49. package/dist/cjs/plugins/adapters/contracts/FluidDexAdapterContract.js +2 -2
  50. package/dist/cjs/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +2 -2
  51. package/dist/cjs/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +2 -2
  52. package/dist/cjs/plugins/adapters/contracts/InfraredVaultAdapterContract.js +2 -2
  53. package/dist/cjs/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +2 -2
  54. package/dist/cjs/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +2 -2
  55. package/dist/cjs/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.js +2 -2
  56. package/dist/cjs/plugins/adapters/contracts/LidoV1AdapterContract.js +2 -2
  57. package/dist/cjs/plugins/adapters/contracts/MellowClaimerAdapterContract.js +2 -2
  58. package/dist/cjs/plugins/adapters/contracts/MellowDVVAdapterContract.js +2 -2
  59. package/dist/cjs/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +2 -2
  60. package/dist/cjs/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +2 -2
  61. package/dist/cjs/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +2 -2
  62. package/dist/cjs/plugins/adapters/contracts/MellowVaultAdapterContract.js +2 -2
  63. package/dist/cjs/plugins/adapters/contracts/MellowWrapperAdapterContract.js +2 -2
  64. package/dist/cjs/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +2 -2
  65. package/dist/cjs/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +2 -2
  66. package/dist/cjs/plugins/adapters/contracts/PendleRouterAdapterContract.js +2 -2
  67. package/dist/cjs/plugins/adapters/contracts/StakingRewardsAdapterContract.js +2 -2
  68. package/dist/cjs/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +2 -2
  69. package/dist/cjs/plugins/adapters/contracts/UniswapV2AdapterContract.js +5 -5
  70. package/dist/cjs/plugins/adapters/contracts/UniswapV3AdapterContract.js +22 -22
  71. package/dist/cjs/plugins/adapters/contracts/UniswapV4AdapterContract.js +2 -2
  72. package/dist/cjs/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +2 -2
  73. package/dist/cjs/plugins/adapters/contracts/VelodromeV2AdapterContract.js +2 -2
  74. package/dist/cjs/plugins/adapters/contracts/WstETHV1AdapterContract.js +2 -2
  75. package/dist/cjs/plugins/adapters/contracts/YearnV2AdapterContract.js +2 -2
  76. package/dist/cjs/plugins/bots/BotsPlugin.js +21 -8
  77. package/dist/cjs/plugins/bots/PartialLiquidationBotBaseContract.js +17 -22
  78. package/dist/cjs/plugins/bots/PartialLiquidationBotV300Contract.js +4 -20
  79. package/dist/cjs/plugins/bots/deserializePartialLiquidationBotParams.js +49 -0
  80. package/dist/cjs/plugins/zappers/ZappersPlugin.js +1 -1
  81. package/dist/cjs/sdk/GearboxSDK.js +8 -110
  82. package/dist/cjs/sdk/accountMigration/AbstractMigrateCreditAccountsService.js +1 -4
  83. package/dist/cjs/sdk/accounts/AbstractCreditAccountsService.js +6 -8
  84. package/dist/cjs/sdk/base/BaseContract.js +195 -80
  85. package/dist/cjs/sdk/base/ChainContractsRegister.js +135 -0
  86. package/dist/cjs/sdk/base/Construct.js +87 -0
  87. package/dist/cjs/sdk/base/SDKConstruct.js +3 -29
  88. package/dist/cjs/sdk/base/TokensMeta.js +4 -4
  89. package/dist/cjs/sdk/base/index.js +4 -2
  90. package/dist/cjs/sdk/core/BotListV3Contract.js +2 -2
  91. package/dist/cjs/sdk/core/GearStakingV3Contract.js +2 -2
  92. package/dist/cjs/sdk/core/address-provider/AbstractAddressProviderContract.js +2 -2
  93. package/dist/cjs/sdk/core/address-provider/AddressProviderV300Contract.js +11 -6
  94. package/dist/cjs/sdk/core/address-provider/AddressProviderV310Contract.js +4 -4
  95. package/dist/cjs/sdk/market/MarketConfiguratorContract.js +5 -5
  96. package/dist/cjs/sdk/market/MarketRegister.js +7 -9
  97. package/dist/cjs/sdk/market/MarketSuite.js +2 -2
  98. package/dist/cjs/sdk/market/credit/CreditConfiguratorV300Contract.js +4 -3
  99. package/dist/cjs/sdk/market/credit/CreditConfiguratorV310Contract.js +4 -3
  100. package/dist/cjs/sdk/market/credit/CreditFacadeV300Contract.js +9 -9
  101. package/dist/cjs/sdk/market/credit/CreditFacadeV310Contract.js +8 -8
  102. package/dist/cjs/sdk/market/credit/CreditManagerV300Contract.js +5 -2
  103. package/dist/cjs/sdk/market/credit/CreditManagerV310Contract.js +5 -2
  104. package/dist/cjs/sdk/market/credit/CreditSuite.js +5 -3
  105. package/dist/cjs/sdk/market/loss-policy/AliasLossPolicyV310Contract.js +3 -1
  106. package/dist/cjs/sdk/market/loss-policy/LossPolicyContract.js +2 -2
  107. package/dist/cjs/sdk/market/loss-policy/createLossPolicy.js +1 -1
  108. package/dist/cjs/sdk/market/oracle/PriceOracleBaseContract.js +8 -26
  109. package/dist/cjs/sdk/market/oracle/createPriceOracle.js +1 -1
  110. package/dist/cjs/sdk/market/pool/GaugeContract.js +2 -2
  111. package/dist/cjs/sdk/market/pool/LinearInterestRateModelContract.js +2 -2
  112. package/dist/cjs/sdk/market/pool/PoolQuotaKeeperV300Contract.js +2 -2
  113. package/dist/cjs/sdk/market/pool/PoolQuotaKeeperV310Contract.js +2 -2
  114. package/dist/cjs/sdk/market/pool/PoolSuite.js +1 -1
  115. package/dist/cjs/sdk/market/pool/PoolV300Contract.js +5 -5
  116. package/dist/cjs/sdk/market/pool/PoolV310Contract.js +5 -5
  117. package/dist/cjs/sdk/market/pool/TumblerContract.js +2 -2
  118. package/dist/cjs/sdk/market/pool/createInterestRateModel.js +11 -15
  119. package/dist/cjs/sdk/market/pricefeeds/AbstractLPPriceFeed.js +2 -22
  120. package/dist/cjs/sdk/market/pricefeeds/AbstractPriceFeed.js +3 -3
  121. package/dist/cjs/sdk/market/pricefeeds/BalancerStablePriceFeed.js +2 -9
  122. package/dist/cjs/sdk/market/pricefeeds/BalancerWeightedPriceFeed.js +2 -9
  123. package/dist/cjs/sdk/market/pricefeeds/BoundedPriceFeed.js +6 -2
  124. package/dist/cjs/sdk/market/pricefeeds/CompositePriceFeed.js +2 -2
  125. package/dist/cjs/sdk/market/pricefeeds/ConstantPriceFeed.js +2 -2
  126. package/dist/cjs/sdk/market/pricefeeds/CurveCryptoPriceFeed.js +2 -9
  127. package/dist/cjs/sdk/market/pricefeeds/CurveStablePriceFeed.js +2 -9
  128. package/dist/cjs/sdk/market/pricefeeds/CurveUSDPriceFeed.js +2 -9
  129. package/dist/cjs/sdk/market/pricefeeds/Erc4626PriceFeed.js +2 -18
  130. package/dist/cjs/sdk/market/pricefeeds/ExternalPriceFeed.js +2 -2
  131. package/dist/cjs/sdk/market/pricefeeds/MellowLRTPriceFeed.js +2 -10
  132. package/dist/cjs/sdk/market/pricefeeds/PendleTWAPPTPriceFeed.js +2 -2
  133. package/dist/cjs/sdk/market/pricefeeds/PriceFeedRef.js +6 -4
  134. package/dist/cjs/sdk/market/pricefeeds/PriceFeedsRegister.js +2 -3
  135. package/dist/cjs/sdk/market/pricefeeds/PythPriceFeed.js +2 -2
  136. package/dist/cjs/sdk/market/pricefeeds/RedstonePriceFeed.js +3 -3
  137. package/dist/cjs/sdk/market/pricefeeds/WstETHPriceFeed.js +2 -9
  138. package/dist/cjs/sdk/market/pricefeeds/YearnPriceFeed.js +2 -9
  139. package/dist/cjs/sdk/market/pricefeeds/ZeroPriceFeed.js +2 -2
  140. package/dist/cjs/sdk/market/pricefeeds/updates/PythUpdater.js +6 -8
  141. package/dist/cjs/sdk/market/pricefeeds/updates/RedstoneUpdater.js +9 -11
  142. package/dist/cjs/sdk/router/AbstractRouterContract.js +5 -0
  143. package/dist/cjs/sdk/router/RouterV310Contract.js +3 -3
  144. package/dist/cjs/sdk/router/createRouter.js +4 -0
  145. package/dist/cjs/sdk/utils/abi-decode.js +58 -0
  146. package/dist/cjs/sdk/utils/index.js +2 -0
  147. package/dist/esm/dev/create2.js +2 -2
  148. package/dist/esm/dev/mint/AbstractMinter.js +3 -7
  149. package/dist/esm/dev/mint/DealMinter.js +0 -3
  150. package/dist/esm/dev/mint/DirectMinter.js +0 -3
  151. package/dist/esm/dev/mint/FallbackMinter.js +1 -1
  152. package/dist/esm/dev/mint/TransferMinter.js +0 -3
  153. package/dist/esm/permissionless/bindings/address-provider.js +7 -7
  154. package/dist/esm/permissionless/bindings/bytecode-repository.js +22 -24
  155. package/dist/esm/permissionless/bindings/compressors/token-compressor.js +3 -3
  156. package/dist/esm/permissionless/bindings/compressors/withdrawal-compressor.js +10 -16
  157. package/dist/esm/permissionless/bindings/cross-chain-multisig.js +20 -16
  158. package/dist/esm/permissionless/bindings/factory/abstract-factory.js +9 -4
  159. package/dist/esm/permissionless/bindings/governance/batches-chain.js +3 -3
  160. package/dist/esm/permissionless/bindings/governance/governor.js +28 -47
  161. package/dist/esm/permissionless/bindings/governance/timelock.js +3 -3
  162. package/dist/esm/permissionless/bindings/index.js +0 -1
  163. package/dist/esm/permissionless/bindings/instance-manager.js +53 -69
  164. package/dist/esm/permissionless/bindings/market-configurator-factory.js +3 -3
  165. package/dist/esm/permissionless/bindings/market-configurator.js +65 -137
  166. package/dist/esm/permissionless/bindings/price-feed-store.js +8 -14
  167. package/dist/esm/permissionless/bindings/router/routing-manager.js +8 -14
  168. package/dist/esm/permissionless/bindings/treasury-splitter.js +15 -22
  169. package/dist/esm/permissionless/core/raw-tx.js +1 -1
  170. package/dist/esm/permissionless/utils/format.js +1 -1
  171. package/dist/esm/permissionless/utils/governance/timelock-txs.js +1 -1
  172. package/dist/esm/permissionless/utils/index.js +0 -1
  173. package/dist/esm/permissionless/utils/price-update/get-price-feeds.js +4 -2
  174. package/dist/esm/permissionless/utils/price-update/get-price-update-tx.js +1 -1
  175. package/dist/esm/permissionless/utils/price-update/get-prices.js +1 -2
  176. package/dist/esm/permissionless/utils/price-update/get-updatable-feeds.js +1 -1
  177. package/dist/esm/plugins/adapters/contracts/AbstractAdapter.js +2 -2
  178. package/dist/esm/plugins/adapters/contracts/AccountMigratorAdapterContract.js +2 -2
  179. package/dist/esm/plugins/adapters/contracts/BalancerV2VaultAdapterContract.js +2 -2
  180. package/dist/esm/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +2 -2
  181. package/dist/esm/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +2 -2
  182. package/dist/esm/plugins/adapters/contracts/CamelotV3AdapterContract.js +2 -2
  183. package/dist/esm/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +2 -2
  184. package/dist/esm/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +2 -2
  185. package/dist/esm/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +2 -2
  186. package/dist/esm/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +2 -2
  187. package/dist/esm/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +2 -2
  188. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterDeposit.js +2 -2
  189. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +2 -2
  190. package/dist/esm/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +2 -2
  191. package/dist/esm/plugins/adapters/contracts/DaiUsdsAdapterContract.js +2 -2
  192. package/dist/esm/plugins/adapters/contracts/ERC4626AdapterContract.js +2 -2
  193. package/dist/esm/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +2 -2
  194. package/dist/esm/plugins/adapters/contracts/EqualizerRouterAdapterContract.js +2 -2
  195. package/dist/esm/plugins/adapters/contracts/FluidDexAdapterContract.js +2 -2
  196. package/dist/esm/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +2 -2
  197. package/dist/esm/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +2 -2
  198. package/dist/esm/plugins/adapters/contracts/InfraredVaultAdapterContract.js +2 -2
  199. package/dist/esm/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +2 -2
  200. package/dist/esm/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +2 -2
  201. package/dist/esm/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.js +2 -2
  202. package/dist/esm/plugins/adapters/contracts/LidoV1AdapterContract.js +2 -2
  203. package/dist/esm/plugins/adapters/contracts/MellowClaimerAdapterContract.js +2 -2
  204. package/dist/esm/plugins/adapters/contracts/MellowDVVAdapterContract.js +2 -2
  205. package/dist/esm/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +2 -2
  206. package/dist/esm/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +2 -2
  207. package/dist/esm/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +2 -2
  208. package/dist/esm/plugins/adapters/contracts/MellowVaultAdapterContract.js +2 -2
  209. package/dist/esm/plugins/adapters/contracts/MellowWrapperAdapterContract.js +2 -2
  210. package/dist/esm/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +2 -2
  211. package/dist/esm/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +2 -2
  212. package/dist/esm/plugins/adapters/contracts/PendleRouterAdapterContract.js +2 -2
  213. package/dist/esm/plugins/adapters/contracts/StakingRewardsAdapterContract.js +2 -2
  214. package/dist/esm/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +2 -2
  215. package/dist/esm/plugins/adapters/contracts/UniswapV2AdapterContract.js +5 -5
  216. package/dist/esm/plugins/adapters/contracts/UniswapV3AdapterContract.js +22 -22
  217. package/dist/esm/plugins/adapters/contracts/UniswapV4AdapterContract.js +2 -2
  218. package/dist/esm/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +2 -2
  219. package/dist/esm/plugins/adapters/contracts/VelodromeV2AdapterContract.js +2 -2
  220. package/dist/esm/plugins/adapters/contracts/WstETHV1AdapterContract.js +2 -2
  221. package/dist/esm/plugins/adapters/contracts/YearnV2AdapterContract.js +2 -2
  222. package/dist/esm/plugins/bots/BotsPlugin.js +11 -8
  223. package/dist/esm/plugins/bots/PartialLiquidationBotBaseContract.js +7 -22
  224. package/dist/esm/plugins/bots/PartialLiquidationBotV300Contract.js +4 -20
  225. package/dist/esm/plugins/bots/deserializePartialLiquidationBotParams.js +29 -0
  226. package/dist/esm/plugins/zappers/ZappersPlugin.js +1 -1
  227. package/dist/esm/sdk/GearboxSDK.js +10 -112
  228. package/dist/esm/sdk/accountMigration/AbstractMigrateCreditAccountsService.js +1 -4
  229. package/dist/esm/sdk/accounts/AbstractCreditAccountsService.js +7 -9
  230. package/dist/esm/sdk/base/BaseContract.js +202 -81
  231. package/dist/esm/sdk/base/ChainContractsRegister.js +111 -0
  232. package/dist/esm/sdk/base/Construct.js +63 -0
  233. package/dist/esm/sdk/base/SDKConstruct.js +3 -29
  234. package/dist/esm/sdk/base/TokensMeta.js +4 -4
  235. package/dist/esm/sdk/base/index.js +2 -1
  236. package/dist/esm/sdk/core/BotListV3Contract.js +2 -2
  237. package/dist/esm/sdk/core/GearStakingV3Contract.js +2 -2
  238. package/dist/esm/sdk/core/address-provider/AbstractAddressProviderContract.js +2 -2
  239. package/dist/esm/sdk/core/address-provider/AddressProviderV300Contract.js +11 -6
  240. package/dist/esm/sdk/core/address-provider/AddressProviderV310Contract.js +4 -4
  241. package/dist/esm/sdk/market/MarketConfiguratorContract.js +5 -5
  242. package/dist/esm/sdk/market/MarketRegister.js +8 -10
  243. package/dist/esm/sdk/market/MarketSuite.js +2 -2
  244. package/dist/esm/sdk/market/credit/CreditConfiguratorV300Contract.js +4 -3
  245. package/dist/esm/sdk/market/credit/CreditConfiguratorV310Contract.js +4 -3
  246. package/dist/esm/sdk/market/credit/CreditFacadeV300Contract.js +9 -9
  247. package/dist/esm/sdk/market/credit/CreditFacadeV310Contract.js +8 -8
  248. package/dist/esm/sdk/market/credit/CreditManagerV300Contract.js +5 -2
  249. package/dist/esm/sdk/market/credit/CreditManagerV310Contract.js +5 -2
  250. package/dist/esm/sdk/market/credit/CreditSuite.js +5 -3
  251. package/dist/esm/sdk/market/loss-policy/AliasLossPolicyV310Contract.js +3 -1
  252. package/dist/esm/sdk/market/loss-policy/LossPolicyContract.js +5 -3
  253. package/dist/esm/sdk/market/loss-policy/createLossPolicy.js +1 -1
  254. package/dist/esm/sdk/market/oracle/PriceOracleBaseContract.js +8 -26
  255. package/dist/esm/sdk/market/oracle/createPriceOracle.js +1 -1
  256. package/dist/esm/sdk/market/pool/GaugeContract.js +2 -2
  257. package/dist/esm/sdk/market/pool/LinearInterestRateModelContract.js +2 -2
  258. package/dist/esm/sdk/market/pool/PoolQuotaKeeperV300Contract.js +2 -2
  259. package/dist/esm/sdk/market/pool/PoolQuotaKeeperV310Contract.js +2 -2
  260. package/dist/esm/sdk/market/pool/PoolSuite.js +1 -1
  261. package/dist/esm/sdk/market/pool/PoolV300Contract.js +5 -5
  262. package/dist/esm/sdk/market/pool/PoolV310Contract.js +5 -5
  263. package/dist/esm/sdk/market/pool/TumblerContract.js +2 -2
  264. package/dist/esm/sdk/market/pool/createInterestRateModel.js +11 -15
  265. package/dist/esm/sdk/market/pricefeeds/AbstractLPPriceFeed.js +2 -22
  266. package/dist/esm/sdk/market/pricefeeds/AbstractPriceFeed.js +3 -3
  267. package/dist/esm/sdk/market/pricefeeds/BalancerStablePriceFeed.js +3 -13
  268. package/dist/esm/sdk/market/pricefeeds/BalancerWeightedPriceFeed.js +3 -13
  269. package/dist/esm/sdk/market/pricefeeds/BoundedPriceFeed.js +6 -2
  270. package/dist/esm/sdk/market/pricefeeds/CompositePriceFeed.js +2 -2
  271. package/dist/esm/sdk/market/pricefeeds/ConstantPriceFeed.js +2 -2
  272. package/dist/esm/sdk/market/pricefeeds/CurveCryptoPriceFeed.js +3 -10
  273. package/dist/esm/sdk/market/pricefeeds/CurveStablePriceFeed.js +3 -10
  274. package/dist/esm/sdk/market/pricefeeds/CurveUSDPriceFeed.js +3 -10
  275. package/dist/esm/sdk/market/pricefeeds/Erc4626PriceFeed.js +2 -18
  276. package/dist/esm/sdk/market/pricefeeds/ExternalPriceFeed.js +2 -2
  277. package/dist/esm/sdk/market/pricefeeds/MellowLRTPriceFeed.js +3 -11
  278. package/dist/esm/sdk/market/pricefeeds/PendleTWAPPTPriceFeed.js +2 -2
  279. package/dist/esm/sdk/market/pricefeeds/PriceFeedRef.js +7 -5
  280. package/dist/esm/sdk/market/pricefeeds/PriceFeedsRegister.js +3 -9
  281. package/dist/esm/sdk/market/pricefeeds/PythPriceFeed.js +2 -2
  282. package/dist/esm/sdk/market/pricefeeds/RedstonePriceFeed.js +3 -3
  283. package/dist/esm/sdk/market/pricefeeds/WstETHPriceFeed.js +3 -10
  284. package/dist/esm/sdk/market/pricefeeds/YearnPriceFeed.js +3 -10
  285. package/dist/esm/sdk/market/pricefeeds/ZeroPriceFeed.js +2 -2
  286. package/dist/esm/sdk/market/pricefeeds/updates/PythUpdater.js +7 -9
  287. package/dist/esm/sdk/market/pricefeeds/updates/RedstoneUpdater.js +10 -12
  288. package/dist/esm/sdk/router/AbstractRouterContract.js +5 -0
  289. package/dist/esm/sdk/router/RouterV310Contract.js +3 -3
  290. package/dist/esm/sdk/router/createRouter.js +4 -0
  291. package/dist/esm/sdk/utils/abi-decode.js +37 -0
  292. package/dist/esm/sdk/utils/index.js +1 -0
  293. package/dist/types/dev/create2.d.ts +2 -2
  294. package/dist/types/dev/mint/AbstractMinter.d.ts +3 -4
  295. package/dist/types/dev/mint/DealMinter.d.ts +0 -3
  296. package/dist/types/dev/mint/DirectMinter.d.ts +0 -3
  297. package/dist/types/dev/mint/TransferMinter.d.ts +0 -3
  298. package/dist/types/permissionless/bindings/address-provider.d.ts +4 -255
  299. package/dist/types/permissionless/bindings/bytecode-repository.d.ts +5 -6
  300. package/dist/types/permissionless/bindings/compressors/token-compressor.d.ts +3 -3
  301. package/dist/types/permissionless/bindings/compressors/withdrawal-compressor.d.ts +4 -5
  302. package/dist/types/permissionless/bindings/cross-chain-multisig.d.ts +7 -7
  303. package/dist/types/permissionless/bindings/factory/abstract-factory.d.ts +1 -1
  304. package/dist/types/permissionless/bindings/governance/batches-chain.d.ts +3 -4
  305. package/dist/types/permissionless/bindings/governance/governor.d.ts +6 -7
  306. package/dist/types/permissionless/bindings/governance/timelock.d.ts +3 -3
  307. package/dist/types/permissionless/bindings/governance/types.d.ts +1 -1
  308. package/dist/types/permissionless/bindings/index.d.ts +0 -1
  309. package/dist/types/permissionless/bindings/instance-manager.d.ts +6 -7
  310. package/dist/types/permissionless/bindings/market-configurator-factory.d.ts +4 -4
  311. package/dist/types/permissionless/bindings/market-configurator.d.ts +6 -6
  312. package/dist/types/permissionless/bindings/price-feed-store.d.ts +6 -7
  313. package/dist/types/permissionless/bindings/router/routing-manager.d.ts +4 -5
  314. package/dist/types/permissionless/bindings/treasury-splitter.d.ts +5 -6
  315. package/dist/types/permissionless/core/proposal.d.ts +1 -7
  316. package/dist/types/permissionless/utils/create2.d.ts +1 -1
  317. package/dist/types/permissionless/utils/governance/batch.d.ts +1 -1
  318. package/dist/types/permissionless/utils/index.d.ts +0 -1
  319. package/dist/types/permissionless/utils/price-update/get-price-feeds.d.ts +3 -3
  320. package/dist/types/permissionless/utils/price-update/get-price-update-tx.d.ts +2 -2
  321. package/dist/types/plugins/adapters/contracts/AbstractAdapter.d.ts +2 -2
  322. package/dist/types/plugins/adapters/contracts/AccountMigratorAdapterContract.d.ts +2 -2
  323. package/dist/types/plugins/adapters/contracts/BalancerV2VaultAdapterContract.d.ts +2 -2
  324. package/dist/types/plugins/adapters/contracts/BalancerV3RouterAdapterContract.d.ts +2 -2
  325. package/dist/types/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.d.ts +2 -2
  326. package/dist/types/plugins/adapters/contracts/CamelotV3AdapterContract.d.ts +2 -2
  327. package/dist/types/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.d.ts +2 -2
  328. package/dist/types/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.d.ts +2 -2
  329. package/dist/types/plugins/adapters/contracts/Curve2AssetsAdapterContract.d.ts +2 -2
  330. package/dist/types/plugins/adapters/contracts/Curve3AssetsAdapterContract.d.ts +2 -2
  331. package/dist/types/plugins/adapters/contracts/Curve4AssetsAdapterContract.d.ts +2 -2
  332. package/dist/types/plugins/adapters/contracts/CurveV1AdapterDeposit.d.ts +2 -2
  333. package/dist/types/plugins/adapters/contracts/CurveV1AdapterStETHContract.d.ts +2 -2
  334. package/dist/types/plugins/adapters/contracts/CurveV1StableNGAdapterContract.d.ts +2 -2
  335. package/dist/types/plugins/adapters/contracts/DaiUsdsAdapterContract.d.ts +2 -2
  336. package/dist/types/plugins/adapters/contracts/ERC4626AdapterContract.d.ts +2 -2
  337. package/dist/types/plugins/adapters/contracts/ERC4626ReferralAdapterContract.d.ts +2 -2
  338. package/dist/types/plugins/adapters/contracts/EqualizerRouterAdapterContract.d.ts +2 -2
  339. package/dist/types/plugins/adapters/contracts/FluidDexAdapterContract.d.ts +2 -2
  340. package/dist/types/plugins/adapters/contracts/InfinifiGatewayAdapterContract.d.ts +2 -2
  341. package/dist/types/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.d.ts +2 -2
  342. package/dist/types/plugins/adapters/contracts/InfraredVaultAdapterContract.d.ts +2 -2
  343. package/dist/types/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.d.ts +2 -2
  344. package/dist/types/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.d.ts +2 -2
  345. package/dist/types/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.d.ts +2 -2
  346. package/dist/types/plugins/adapters/contracts/LidoV1AdapterContract.d.ts +2 -2
  347. package/dist/types/plugins/adapters/contracts/MellowClaimerAdapterContract.d.ts +2 -2
  348. package/dist/types/plugins/adapters/contracts/MellowDVVAdapterContract.d.ts +2 -2
  349. package/dist/types/plugins/adapters/contracts/MellowDepositQueueAdapterContract.d.ts +2 -2
  350. package/dist/types/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.d.ts +2 -2
  351. package/dist/types/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.d.ts +2 -2
  352. package/dist/types/plugins/adapters/contracts/MellowVaultAdapterContract.d.ts +2 -2
  353. package/dist/types/plugins/adapters/contracts/MellowWrapperAdapterContract.d.ts +2 -2
  354. package/dist/types/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.d.ts +2 -2
  355. package/dist/types/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +2 -2
  356. package/dist/types/plugins/adapters/contracts/PendleRouterAdapterContract.d.ts +2 -2
  357. package/dist/types/plugins/adapters/contracts/StakingRewardsAdapterContract.d.ts +2 -2
  358. package/dist/types/plugins/adapters/contracts/TraderJoeRouterAdapterContract.d.ts +2 -2
  359. package/dist/types/plugins/adapters/contracts/UniswapV2AdapterContract.d.ts +3 -3
  360. package/dist/types/plugins/adapters/contracts/UniswapV3AdapterContract.d.ts +3 -3
  361. package/dist/types/plugins/adapters/contracts/UniswapV4AdapterContract.d.ts +2 -2
  362. package/dist/types/plugins/adapters/contracts/UpshiftVaultAdapterContract.d.ts +2 -2
  363. package/dist/types/plugins/adapters/contracts/VelodromeV2AdapterContract.d.ts +2 -2
  364. package/dist/types/plugins/adapters/contracts/WstETHV1AdapterContract.d.ts +2 -2
  365. package/dist/types/plugins/adapters/contracts/YearnV2AdapterContract.d.ts +2 -2
  366. package/dist/types/plugins/bots/PartialLiquidationBotV300Contract.d.ts +2 -8
  367. package/dist/types/plugins/bots/deserializePartialLiquidationBotParams.d.ts +3 -0
  368. package/dist/types/sdk/GearboxSDK.d.ts +5 -76
  369. package/dist/types/sdk/accountMigration/types.d.ts +1 -2
  370. package/dist/types/sdk/accounts/types.d.ts +4 -3
  371. package/dist/types/sdk/base/BaseContract.d.ts +72 -28
  372. package/dist/types/sdk/base/ChainContractsRegister.d.ts +57 -0
  373. package/dist/types/sdk/base/Construct.d.ts +38 -0
  374. package/dist/types/sdk/base/PlaceholderContract.d.ts +2 -2
  375. package/dist/types/sdk/base/SDKConstruct.d.ts +2 -16
  376. package/dist/types/sdk/base/TokensMeta.d.ts +2 -3
  377. package/dist/types/sdk/base/index.d.ts +2 -1
  378. package/dist/types/sdk/base/types.d.ts +50 -0
  379. package/dist/types/sdk/core/BotListV3Contract.d.ts +1 -1
  380. package/dist/types/sdk/core/GearStakingV3Contract.d.ts +1 -1
  381. package/dist/types/sdk/core/address-provider/AbstractAddressProviderContract.d.ts +3 -4
  382. package/dist/types/sdk/core/address-provider/AddressProviderV300Contract.d.ts +3 -3
  383. package/dist/types/sdk/core/address-provider/AddressProviderV310Contract.d.ts +3 -3
  384. package/dist/types/sdk/market/MarketConfiguratorContract.d.ts +2 -2
  385. package/dist/types/sdk/market/credit/CreditConfiguratorV300Contract.d.ts +3 -3
  386. package/dist/types/sdk/market/credit/CreditConfiguratorV310Contract.d.ts +3 -3
  387. package/dist/types/sdk/market/credit/CreditFacadeV300Contract.d.ts +3 -4
  388. package/dist/types/sdk/market/credit/CreditFacadeV310Contract.d.ts +3 -4
  389. package/dist/types/sdk/market/credit/CreditManagerV300Contract.d.ts +1 -1
  390. package/dist/types/sdk/market/credit/CreditManagerV310Contract.d.ts +1 -1
  391. package/dist/types/sdk/market/credit/CreditSuite.d.ts +2 -1
  392. package/dist/types/sdk/market/credit/types.d.ts +1 -2
  393. package/dist/types/sdk/market/loss-policy/AliasLossPolicyV310Contract.d.ts +1 -0
  394. package/dist/types/sdk/market/loss-policy/LossPolicyContract.d.ts +2 -3
  395. package/dist/types/sdk/market/oracle/PriceOracleBaseContract.d.ts +3 -12
  396. package/dist/types/sdk/market/oracle/types.d.ts +0 -10
  397. package/dist/types/sdk/market/pool/GaugeContract.d.ts +2 -3
  398. package/dist/types/sdk/market/pool/LinearInterestRateModelContract.d.ts +2 -3
  399. package/dist/types/sdk/market/pool/PoolQuotaKeeperV300Contract.d.ts +2 -3
  400. package/dist/types/sdk/market/pool/PoolQuotaKeeperV310Contract.d.ts +2 -3
  401. package/dist/types/sdk/market/pool/PoolV300Contract.d.ts +4 -5
  402. package/dist/types/sdk/market/pool/PoolV310Contract.d.ts +4 -5
  403. package/dist/types/sdk/market/pool/TumblerContract.d.ts +2 -3
  404. package/dist/types/sdk/market/pricefeeds/AbstractLPPriceFeed.d.ts +3 -8
  405. package/dist/types/sdk/market/pricefeeds/AbstractPriceFeed.d.ts +2 -3
  406. package/dist/types/sdk/market/pricefeeds/BalancerStablePriceFeed.d.ts +2 -3
  407. package/dist/types/sdk/market/pricefeeds/BalancerWeightedPriceFeed.d.ts +2 -3
  408. package/dist/types/sdk/market/pricefeeds/BoundedPriceFeed.d.ts +2 -2
  409. package/dist/types/sdk/market/pricefeeds/CompositePriceFeed.d.ts +2 -2
  410. package/dist/types/sdk/market/pricefeeds/ConstantPriceFeed.d.ts +2 -2
  411. package/dist/types/sdk/market/pricefeeds/CurveCryptoPriceFeed.d.ts +2 -3
  412. package/dist/types/sdk/market/pricefeeds/CurveStablePriceFeed.d.ts +2 -3
  413. package/dist/types/sdk/market/pricefeeds/CurveUSDPriceFeed.d.ts +2 -3
  414. package/dist/types/sdk/market/pricefeeds/Erc4626PriceFeed.d.ts +2 -3
  415. package/dist/types/sdk/market/pricefeeds/ExternalPriceFeed.d.ts +2 -2
  416. package/dist/types/sdk/market/pricefeeds/MellowLRTPriceFeed.d.ts +2 -3
  417. package/dist/types/sdk/market/pricefeeds/PendleTWAPPTPriceFeed.d.ts +2 -2
  418. package/dist/types/sdk/market/pricefeeds/PriceFeedRef.d.ts +3 -4
  419. package/dist/types/sdk/market/pricefeeds/PriceFeedsRegister.d.ts +1 -2
  420. package/dist/types/sdk/market/pricefeeds/PythPriceFeed.d.ts +2 -2
  421. package/dist/types/sdk/market/pricefeeds/RedstonePriceFeed.d.ts +2 -2
  422. package/dist/types/sdk/market/pricefeeds/WstETHPriceFeed.d.ts +2 -3
  423. package/dist/types/sdk/market/pricefeeds/YearnPriceFeed.d.ts +2 -3
  424. package/dist/types/sdk/market/pricefeeds/ZeroPriceFeed.d.ts +2 -2
  425. package/dist/types/sdk/market/pricefeeds/types.d.ts +0 -5
  426. package/dist/types/sdk/router/AbstractRouterContract.d.ts +4 -1
  427. package/dist/types/sdk/router/types.d.ts +1 -2
  428. package/dist/types/sdk/sdk-legacy/core/creditAccount.d.ts +2 -2
  429. package/dist/types/sdk/utils/abi-decode.d.ts +10 -0
  430. package/dist/types/sdk/utils/index.d.ts +1 -0
  431. package/package.json +1 -1
  432. package/dist/cjs/permissionless/bindings/base-contract.js +0 -173
  433. package/dist/cjs/permissionless/utils/abi-decoder.js +0 -72
  434. package/dist/cjs/sdk/base/AddressLabeller.js +0 -49
  435. package/dist/cjs/sdk/base/IAddressLabeller.js +0 -16
  436. package/dist/esm/permissionless/bindings/base-contract.js +0 -151
  437. package/dist/esm/permissionless/utils/abi-decoder.js +0 -50
  438. package/dist/esm/sdk/base/AddressLabeller.js +0 -25
  439. package/dist/esm/sdk/base/IAddressLabeller.js +0 -0
  440. package/dist/types/permissionless/bindings/base-contract.d.ts +0 -23
  441. package/dist/types/permissionless/utils/abi-decoder.d.ts +0 -13
  442. package/dist/types/sdk/base/AddressLabeller.d.ts +0 -11
  443. package/dist/types/sdk/base/IAddressLabeller.d.ts +0 -9
@@ -1,58 +1,102 @@
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[]> {
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[]> {
6
7
  abi: abi;
7
8
  addr: Address;
8
9
  name?: string;
9
10
  version?: number | bigint;
10
11
  contractType?: string;
11
12
  }
12
- export interface IBaseContract {
13
+ export interface ContractParseErrorOptions {
13
14
  address: Address;
14
- contractType: string;
15
- version: number;
16
- name: string;
17
- dirty: boolean;
15
+ callData: Hex;
16
+ contractName?: string;
18
17
  }
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>;
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>;
24
26
  readonly abi: abi;
25
- readonly logger?: ILogger;
26
27
  readonly contractType: string;
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);
28
+ readonly version: number;
29
+ readonly address: Address;
30
+ readonly name: string;
31
+ constructor({ client, logger }: ConstructOptions, args: BaseContractArgs<abi>);
33
32
  stateHuman(_?: boolean): BaseContractStateHuman;
34
33
  /**
35
34
  * Updates (or not) contract's internal state from event
36
35
  * @param _log
37
36
  */
38
37
  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;
39
59
  /**
40
60
  * Converts contract calldata to some human-friendly string
41
61
  * This is safe function which should not throw
42
62
  * @param calldata
43
63
  * @returns
44
64
  */
45
- parseFunctionData(calldata: Hex): string;
46
- mustParseFunctionData(calldata: Hex): string;
65
+ stringifyFunctionData(calldata: Hex): string;
47
66
  /**
48
- * Return args and function name from calldata
67
+ * Same as {@link stingifyFunctionData}, but throws if error occurs
49
68
  * @param calldata
50
69
  * @returns
51
70
  */
52
- parseFunctionDataToObject(calldata: Hex): DecodeFunctionDataReturnType<abi, ContractFunctionName<abi, import("viem").AbiStateMutability>>;
53
- protected parseFunctionParams(_params: DecodeFunctionDataReturnType<abi>): Array<string> | undefined;
54
- getVersion(): Promise<number>;
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
+ */
55
86
  createRawTx<functionName extends ContractFunctionName<abi> | undefined = undefined>(parameters: Omit<EncodeFunctionDataParameters<abi, functionName>, "abi"> & {
56
87
  description?: string;
57
88
  }): 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>>;
58
102
  }
@@ -0,0 +1,57 @@
1
+ import type { Abi, Address, Chain, Hex, PublicClient, Transport } from "viem";
2
+ import type { MultiCall } from "../types/index.js";
3
+ import type { ILogger } from "../types/logger.js";
4
+ import type { BaseContract } from "./BaseContract.js";
5
+ import { TokensMeta } from "./TokensMeta.js";
6
+ import type { ParsedCall } from "./types.js";
7
+ export type ContractOrInterface<T> = T extends Abi | readonly unknown[] ? BaseContract<T> : T;
8
+ export declare class ChainContractsRegister {
9
+ #private;
10
+ static for(client: PublicClient<Transport, Chain>, logger?: ILogger): ChainContractsRegister;
11
+ private readonly contracts;
12
+ private readonly labels;
13
+ readonly client: PublicClient<Transport, Chain>;
14
+ /**
15
+ * Token metadata such as symbol and decimals
16
+ */
17
+ readonly tokensMeta: TokensMeta;
18
+ readonly logger?: ILogger;
19
+ constructor(client: PublicClient<Transport, Chain>, logger?: ILogger);
20
+ getContract<T = unknown[]>(address: Address): ContractOrInterface<T> | undefined;
21
+ mustGetContract<T = unknown[]>(address: Address): ContractOrInterface<T>;
22
+ setContract(address: Address, contract: BaseContract<any>): void;
23
+ setAddressLabel(address: Address, label: string | ((oldLabel?: string) => string)): void;
24
+ labelAddress(address: Address): string;
25
+ get chain(): Chain;
26
+ get chainId(): number;
27
+ /**
28
+ * Converts contract call into some human-friendly string
29
+ * This method is safe and should not throw
30
+ * @param address
31
+ * @param calldata
32
+ * @returns
33
+ */
34
+ stringifyFunctionData(address: Address, calldata: Hex): string;
35
+ /**
36
+ * Converts multicalls into some human-friendly strings
37
+ * This method is safe and should not throw
38
+ * @param address
39
+ * @param calldata
40
+ * @returns
41
+ */
42
+ stringifyMultiCall(calls: MultiCall[]): string[];
43
+ /**
44
+ * Return args, function, type and address name from contract call
45
+ * @param address
46
+ * @param calldata
47
+ * @returns
48
+ */
49
+ parseFunctionData(address: Address, calldata: Hex): ParsedCall;
50
+ /**
51
+ * Converts multicalls into call info
52
+ * @param address
53
+ * @param calldata
54
+ * @returns
55
+ */
56
+ parseMultiCall(calls: MultiCall[]): ParsedCall[];
57
+ }
@@ -0,0 +1,38 @@
1
+ import type { Address, Chain, PublicClient, Transport } from "viem";
2
+ import type { NetworkType } from "../chain/index.js";
3
+ import type { ILogger } from "../types/index.js";
4
+ import { ChainContractsRegister } from "./ChainContractsRegister.js";
5
+ import type { TokensMeta } from "./TokensMeta.js";
6
+ export interface ConstructOptions {
7
+ client: PublicClient<Transport, Chain>;
8
+ logger?: ILogger;
9
+ }
10
+ export declare class Construct {
11
+ #private;
12
+ readonly logger?: ILogger;
13
+ readonly client: PublicClient<Transport, Chain>;
14
+ readonly register: ChainContractsRegister;
15
+ constructor({ client, logger }: ConstructOptions);
16
+ get chain(): Chain;
17
+ get chainId(): number;
18
+ get networkType(): NetworkType;
19
+ /**
20
+ * Indicates that contract state diverged from onchain state and needs to be updated
21
+ */
22
+ get dirty(): boolean;
23
+ protected set dirty(value: boolean);
24
+ /**
25
+ * Syntax sugar for rgister.tokensMeta
26
+ */
27
+ protected get tokensMeta(): TokensMeta;
28
+ /**
29
+ * Syntax suggar for getting contract labels
30
+ * @param address
31
+ * @returns
32
+ */
33
+ protected labelAddress(address: Address): string;
34
+ /**
35
+ * Returns list of addresses that should be watched for events to sync state
36
+ */
37
+ get watchAddresses(): Set<Address>;
38
+ }
@@ -1,9 +1,9 @@
1
1
  import type { GearboxSDK } from "../GearboxSDK.js";
2
- import type { BaseContractOptions } from "./BaseContract.js";
2
+ import type { BaseContractArgs } 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<BaseContractOptions<abi>, "abi">);
7
+ constructor(sdk: GearboxSDK, args: Omit<BaseContractArgs<abi>, "abi">);
8
8
  }
9
9
  export {};
@@ -1,21 +1,7 @@
1
- import type { Address, PublicClient } from "viem";
2
- import type { NetworkType } from "../chain/index.js";
3
1
  import type { GearboxSDK } from "../GearboxSDK.js";
4
2
  import type { PluginsMap } from "../plugins/index.js";
5
- export declare class SDKConstruct<const Plugins extends PluginsMap = {}> {
6
- #private;
3
+ import { Construct } from "./Construct.js";
4
+ export declare class SDKConstruct<const Plugins extends PluginsMap = {}> extends Construct {
7
5
  readonly sdk: GearboxSDK<Plugins>;
8
6
  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>;
21
7
  }
@@ -1,5 +1,4 @@
1
- import type { Address } from "viem";
2
- import type { GearboxSDK } from "../GearboxSDK.js";
1
+ import type { Address, Chain, PublicClient, Transport } from "viem";
3
2
  import { type PhantomTokenContractType } from "../index.js";
4
3
  import type { Asset } from "../router/index.js";
5
4
  import { AddressMap } from "../utils/index.js";
@@ -16,7 +15,7 @@ export interface TokenMetaDataExtended extends TokenMetaData {
16
15
  }
17
16
  export declare class TokensMeta extends AddressMap<TokenMetaDataExtended> {
18
17
  #private;
19
- constructor(sdk: GearboxSDK);
18
+ constructor(client: PublicClient<Transport, Chain>);
20
19
  symbol(token: Address): string;
21
20
  decimals(token: Address): number;
22
21
  /**
@@ -1,5 +1,6 @@
1
- export * from "./AddressLabeller.js";
2
1
  export * from "./BaseContract.js";
2
+ export * from "./ChainContractsRegister.js";
3
+ export * from "./Construct.js";
3
4
  export * from "./PlaceholderContract.js";
4
5
  export * from "./SDKConstruct.js";
5
6
  export * from "./TokensMeta.js";
@@ -41,3 +41,53 @@ 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 parseFunctionParams(params: DecodeFunctionDataReturnType<abi>): Array<string> | undefined;
317
+ protected stringifyFunctionParams(params: DecodeFunctionDataReturnType<abi>): string[];
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
- parseFunctionParams(params: DecodeFunctionDataReturnType<abi>): Array<string> | undefined;
512
+ protected stringifyFunctionParams(params: DecodeFunctionDataReturnType<abi>): string[];
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,13 +1,12 @@
1
1
  import { type Abi, type Address } from "viem";
2
- import type { BaseContractOptions } from "../../base/BaseContract.js";
3
- import { BaseContract } from "../../base/index.js";
2
+ import type { BaseContractArgs } from "../../base/BaseContract.js";
3
+ import { BaseContract, type ConstructOptions } from "../../base/index.js";
4
4
  import type { VersionRange } from "../../constants/index.js";
5
- import type { GearboxSDK } from "../../GearboxSDK.js";
6
5
  import type { AddressProviderV3StateHuman } from "../../types/index.js";
7
6
  import type { AddressProviderState } from "./types.js";
8
7
  export default abstract class AbstractAddressProviderContract<abi extends Abi | readonly unknown[]> extends BaseContract<abi> {
9
8
  #private;
10
- constructor(sdk: GearboxSDK, args: BaseContractOptions<abi>, addresses?: Record<string, Record<number, Address>>);
9
+ constructor(options: ConstructOptions, args: BaseContractArgs<abi>, addresses?: Record<string, Record<number, Address>>);
11
10
  protected setInternalAddress(key: string, address: Address, version: number): void;
12
11
  getAddress(contract: string, version?: number): Address;
13
12
  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 { GearboxSDK } from "../../GearboxSDK.js";
2
+ import type { ConstructOptions } from "../../base/Construct.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(sdk: GearboxSDK, address: Address, version: number, addresses?: Record<string, Record<number, Address>>);
93
- protected parseFunctionParams(params: DecodeFunctionDataReturnType<abi>): Array<string> | undefined;
92
+ constructor(options: ConstructOptions, address: Address, version: number, addresses?: Record<string, Record<number, Address>>);
93
+ protected stringifyFunctionParams(params: DecodeFunctionDataReturnType<abi>): string[];
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 { GearboxSDK } from "../../GearboxSDK.js";
2
+ import type { ConstructOptions } from "../../base/Construct.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(sdk: GearboxSDK, address: Address, version: number, addresses?: Record<string, Record<number, Address>>);
258
- protected parseFunctionParams(params: DecodeFunctionDataReturnType<abi>): Array<string> | undefined;
257
+ constructor(options: ConstructOptions, address: Address, version?: number, addresses?: Record<string, Record<number, Address>>);
258
+ protected stringifyFunctionParams(params: DecodeFunctionDataReturnType<abi>): string[];
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";
2
3
  import { BaseContract } from "../base/index.js";
3
4
  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(sdk: GearboxSDK, address: Address);
1532
+ constructor(options: ConstructOptions, 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 { Address, ContractEventName, DecodeFunctionDataReturnType, GetEventArgs, Log } from "viem";
1
+ import type { 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 adapters: Address[];
641
+ readonly sdk: GearboxSDK;
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 parseFunctionParams(params: DecodeFunctionDataReturnType<abi>): Array<string> | undefined;
646
+ protected stringifyFunctionParams(params: DecodeFunctionDataReturnType<abi>): string[];
647
647
  }
648
648
  export {};
@@ -1,4 +1,4 @@
1
- import type { Address, ContractEventName, DecodeFunctionDataReturnType, Log } from "viem";
1
+ import type { 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 adapters: Address[];
487
+ readonly sdk: GearboxSDK;
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 parseFunctionParams(params: DecodeFunctionDataReturnType<abi>): Array<string> | undefined;
492
+ protected stringifyFunctionParams(params: DecodeFunctionDataReturnType<abi>): string[];
493
493
  }
494
494
  export {};
@@ -1,7 +1,6 @@
1
1
  import type { Address, ContractEventName, DecodeFunctionDataReturnType, Hex, Log } from "viem";
2
- import type { CreditFacadeState, CreditSuiteState } from "../../base/index.js";
2
+ import type { ConstructOptions, CreditFacadeState, CreditSuiteState } from "../../base/index.js";
3
3
  import { BaseContract } from "../../base/index.js";
4
- import type { GearboxSDK } from "../../GearboxSDK.js";
5
4
  import type { CreditFacadeStateHuman, MultiCall, RawTx } from "../../types/index.js";
6
5
  declare const abi: readonly [{
7
6
  readonly type: "function";
@@ -777,13 +776,13 @@ export interface CreditFacadeV300Contract extends Omit<CreditFacadeState, "baseP
777
776
  }
778
777
  export declare class CreditFacadeV300Contract extends BaseContract<abi> {
779
778
  readonly underlying: Address;
780
- constructor(sdk: GearboxSDK, { creditFacade, creditManager }: CreditSuiteState);
779
+ constructor(options: ConstructOptions, { creditFacade, creditManager }: CreditSuiteState);
781
780
  stateHuman(raw?: boolean): CreditFacadeStateHuman;
782
781
  processLog(log: Log<bigint, number, false, undefined, undefined, abi, ContractEventName<abi>>): void;
783
782
  liquidateCreditAccount(ca: Address, to: Address, calls: MultiCall[], lossPolicyData?: Hex): RawTx;
784
783
  closeCreditAccount(ca: Address, calls: MultiCall[]): RawTx;
785
784
  multicall(ca: Address, calls: MultiCall[]): RawTx;
786
785
  openCreditAccount(to: Address, calls: MultiCall[], referralCode: bigint): RawTx;
787
- protected parseFunctionParams(params: DecodeFunctionDataReturnType<abi>): string[] | undefined;
786
+ protected stringifyFunctionParams(params: DecodeFunctionDataReturnType<abi>): string[];
788
787
  }
789
788
  export {};
@@ -1,7 +1,6 @@
1
1
  import type { Address, ContractEventName, DecodeFunctionDataReturnType, Hex, Log } from "viem";
2
- import type { CreditFacadeState, CreditSuiteState } from "../../base/index.js";
2
+ import type { ConstructOptions, CreditFacadeState, CreditSuiteState } from "../../base/index.js";
3
3
  import { BaseContract } from "../../base/index.js";
4
- import type { GearboxSDK } from "../../GearboxSDK.js";
5
4
  import type { CreditFacadeStateHuman, MultiCall, RawTx } from "../../types/index.js";
6
5
  declare const abi: readonly [{
7
6
  readonly type: "function";
@@ -850,13 +849,13 @@ export interface CreditFacadeV310Contract extends Omit<CreditFacadeState, "baseP
850
849
  }
851
850
  export declare class CreditFacadeV310Contract extends BaseContract<abi> {
852
851
  readonly underlying: Address;
853
- constructor(sdk: GearboxSDK, { creditFacade, creditManager }: CreditSuiteState);
852
+ constructor(options: ConstructOptions, { creditFacade, creditManager }: CreditSuiteState);
854
853
  stateHuman(raw?: boolean): CreditFacadeStateHuman;
855
854
  processLog(log: Log<bigint, number, false, undefined, undefined, abi, ContractEventName<abi>>): void;
856
855
  liquidateCreditAccount(ca: Address, to: Address, calls: MultiCall[], lossPolicyData?: Hex): RawTx;
857
856
  closeCreditAccount(ca: Address, calls: MultiCall[]): RawTx;
858
857
  multicall(ca: Address, calls: MultiCall[]): RawTx;
859
858
  openCreditAccount(to: Address, calls: MultiCall[], referralCode: bigint): RawTx;
860
- protected parseFunctionParams(params: DecodeFunctionDataReturnType<abi>): string[] | undefined;
859
+ protected stringifyFunctionParams(params: DecodeFunctionDataReturnType<abi>): string[];
861
860
  }
862
861
  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">, BaseContract<abi> {
1027
+ export interface CreditManagerV300Contract extends Omit<CreditManagerState, "baseParams" | "collateralTokens" | "liquidationThresholds" | "name">, 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">, BaseContract<abi> {
984
+ export interface CreditManagerV310Contract extends Omit<CreditManagerState, "baseParams" | "collateralTokens" | "liquidationThresholds" | "name">, BaseContract<abi> {
985
985
  }
986
986
  export declare class CreditManagerV310Contract extends BaseContract<abi> implements ICreditManagerContract {
987
987
  /**
@@ -6,7 +6,6 @@ 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;
10
9
  readonly pool: Address;
11
10
  readonly underlying: Address;
12
11
  readonly creditManager: ICreditManagerContract;
@@ -14,8 +13,10 @@ export declare class CreditSuite extends SDKConstruct {
14
13
  readonly creditConfigurator: ICreditConfiguratorContract;
15
14
  readonly marketConfigurator: Address;
16
15
  readonly state: CreditSuiteState;
16
+ readonly name: string;
17
17
  constructor(sdk: GearboxSDK, marketData: MarketData, index: number);
18
18
  get router(): IRouterContract;
19
+ get isExpired(): boolean;
19
20
  get dirty(): boolean;
20
21
  get watchAddresses(): Set<Address>;
21
22
  stateHuman(raw?: boolean): CreditSuiteStateHuman;
@@ -6,12 +6,11 @@ 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[];
10
9
  isPaused: boolean;
11
10
  checkRamps: () => Promise<RampEvent[]>;
12
11
  stateHuman: (raw?: boolean) => CreditConfiguratorStateHuman;
13
12
  }
14
- export interface ICreditManagerContract extends IBaseContract, Omit<CreditManagerState, "baseParams" | "collateralTokens"> {
13
+ export interface ICreditManagerContract extends IBaseContract, Omit<CreditManagerState, "baseParams" | "collateralTokens" | "name"> {
15
14
  /**
16
15
  * Mapping targetContract => adapter
17
16
  */
@@ -285,6 +285,7 @@ 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;
288
289
  constructor(sdk: GearboxSDK, params: BaseParams);
289
290
  getLiquidationData(creditAccount: Address, blockNumber?: bigint): Promise<Hex | undefined>;
290
291
  stateHuman(raw?: boolean): AliasLossPolicyStateHuman;
@@ -1,6 +1,5 @@
1
1
  import type { Address, Hex } from "viem";
2
- import { BaseContract, type BaseParams } from "../../base/index.js";
3
- import type { GearboxSDK } from "../../GearboxSDK.js";
2
+ import { BaseContract, type BaseParams, type ConstructOptions } from "../../base/index.js";
4
3
  import type { ILossPolicyContract } from "./types.js";
5
4
  declare const abi: readonly [{
6
5
  readonly type: "function";
@@ -130,7 +129,7 @@ declare const abi: readonly [{
130
129
  }];
131
130
  type abi = typeof abi;
132
131
  export declare class LossPolicyContract extends BaseContract<abi> implements ILossPolicyContract {
133
- constructor(sdk: GearboxSDK, params: BaseParams);
132
+ constructor(options: ConstructOptions, params: BaseParams);
134
133
  getLiquidationData(_creditAccount: Address, _blockNumber?: bigint): Promise<Hex | undefined>;
135
134
  }
136
135
  export {};