@gearbox-protocol/sdk 11.12.0 → 12.0.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 (439) 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/deserializePartialLiquidationBotParams.js +49 -0
  77. package/dist/cjs/plugins/zappers/ZappersPlugin.js +1 -1
  78. package/dist/cjs/sdk/GearboxSDK.js +8 -110
  79. package/dist/cjs/sdk/accountMigration/AbstractMigrateCreditAccountsService.js +1 -4
  80. package/dist/cjs/sdk/accounts/AbstractCreditAccountsService.js +6 -8
  81. package/dist/cjs/sdk/base/BaseContract.js +195 -80
  82. package/dist/cjs/sdk/base/ChainContractsRegister.js +135 -0
  83. package/dist/cjs/sdk/base/Construct.js +87 -0
  84. package/dist/cjs/sdk/base/SDKConstruct.js +3 -29
  85. package/dist/cjs/sdk/base/TokensMeta.js +4 -4
  86. package/dist/cjs/sdk/base/index.js +4 -2
  87. package/dist/cjs/sdk/core/BotListV3Contract.js +2 -2
  88. package/dist/cjs/sdk/core/GearStakingV3Contract.js +2 -2
  89. package/dist/cjs/sdk/core/address-provider/AbstractAddressProviderContract.js +2 -2
  90. package/dist/cjs/sdk/core/address-provider/AddressProviderV300Contract.js +11 -6
  91. package/dist/cjs/sdk/core/address-provider/AddressProviderV310Contract.js +4 -4
  92. package/dist/cjs/sdk/market/MarketConfiguratorContract.js +5 -5
  93. package/dist/cjs/sdk/market/MarketRegister.js +7 -9
  94. package/dist/cjs/sdk/market/MarketSuite.js +2 -2
  95. package/dist/cjs/sdk/market/credit/CreditConfiguratorV300Contract.js +4 -3
  96. package/dist/cjs/sdk/market/credit/CreditConfiguratorV310Contract.js +4 -3
  97. package/dist/cjs/sdk/market/credit/CreditFacadeV300Contract.js +9 -9
  98. package/dist/cjs/sdk/market/credit/CreditFacadeV310Contract.js +8 -8
  99. package/dist/cjs/sdk/market/credit/CreditManagerV300Contract.js +5 -2
  100. package/dist/cjs/sdk/market/credit/CreditManagerV310Contract.js +5 -2
  101. package/dist/cjs/sdk/market/credit/CreditSuite.js +2 -3
  102. package/dist/cjs/sdk/market/loss-policy/AliasLossPolicyV310Contract.js +3 -1
  103. package/dist/cjs/sdk/market/loss-policy/LossPolicyContract.js +2 -2
  104. package/dist/cjs/sdk/market/loss-policy/createLossPolicy.js +1 -1
  105. package/dist/cjs/sdk/market/oracle/PriceOracleBaseContract.js +8 -26
  106. package/dist/cjs/sdk/market/oracle/createPriceOracle.js +1 -1
  107. package/dist/cjs/sdk/market/pool/GaugeContract.js +2 -2
  108. package/dist/cjs/sdk/market/pool/LinearInterestRateModelContract.js +2 -2
  109. package/dist/cjs/sdk/market/pool/PoolQuotaKeeperV300Contract.js +2 -2
  110. package/dist/cjs/sdk/market/pool/PoolQuotaKeeperV310Contract.js +2 -2
  111. package/dist/cjs/sdk/market/pool/PoolSuite.js +1 -1
  112. package/dist/cjs/sdk/market/pool/PoolV300Contract.js +5 -5
  113. package/dist/cjs/sdk/market/pool/PoolV310Contract.js +5 -5
  114. package/dist/cjs/sdk/market/pool/TumblerContract.js +2 -2
  115. package/dist/cjs/sdk/market/pool/createInterestRateModel.js +11 -15
  116. package/dist/cjs/sdk/market/pricefeeds/AbstractLPPriceFeed.js +2 -22
  117. package/dist/cjs/sdk/market/pricefeeds/AbstractPriceFeed.js +3 -3
  118. package/dist/cjs/sdk/market/pricefeeds/BalancerStablePriceFeed.js +2 -9
  119. package/dist/cjs/sdk/market/pricefeeds/BalancerWeightedPriceFeed.js +2 -9
  120. package/dist/cjs/sdk/market/pricefeeds/BoundedPriceFeed.js +6 -2
  121. package/dist/cjs/sdk/market/pricefeeds/CompositePriceFeed.js +2 -2
  122. package/dist/cjs/sdk/market/pricefeeds/ConstantPriceFeed.js +2 -2
  123. package/dist/cjs/sdk/market/pricefeeds/CurveCryptoPriceFeed.js +2 -9
  124. package/dist/cjs/sdk/market/pricefeeds/CurveStablePriceFeed.js +2 -9
  125. package/dist/cjs/sdk/market/pricefeeds/CurveUSDPriceFeed.js +2 -9
  126. package/dist/cjs/sdk/market/pricefeeds/Erc4626PriceFeed.js +2 -18
  127. package/dist/cjs/sdk/market/pricefeeds/ExternalPriceFeed.js +2 -2
  128. package/dist/cjs/sdk/market/pricefeeds/MellowLRTPriceFeed.js +2 -10
  129. package/dist/cjs/sdk/market/pricefeeds/PendleTWAPPTPriceFeed.js +2 -2
  130. package/dist/cjs/sdk/market/pricefeeds/PriceFeedRef.js +6 -4
  131. package/dist/cjs/sdk/market/pricefeeds/PriceFeedsRegister.js +2 -3
  132. package/dist/cjs/sdk/market/pricefeeds/PythPriceFeed.js +2 -2
  133. package/dist/cjs/sdk/market/pricefeeds/RedstonePriceFeed.js +3 -3
  134. package/dist/cjs/sdk/market/pricefeeds/WstETHPriceFeed.js +2 -9
  135. package/dist/cjs/sdk/market/pricefeeds/YearnPriceFeed.js +2 -9
  136. package/dist/cjs/sdk/market/pricefeeds/ZeroPriceFeed.js +2 -2
  137. package/dist/cjs/sdk/market/pricefeeds/updates/PriceUpdatesCache.js +17 -0
  138. package/dist/cjs/sdk/market/pricefeeds/updates/PythUpdater.js +7 -9
  139. package/dist/cjs/sdk/market/pricefeeds/updates/RedstoneUpdater.js +10 -12
  140. package/dist/cjs/sdk/router/AbstractRouterContract.js +5 -0
  141. package/dist/cjs/sdk/router/RouterV310Contract.js +3 -3
  142. package/dist/cjs/sdk/router/createRouter.js +4 -0
  143. package/dist/cjs/sdk/utils/abi-decode.js +58 -0
  144. package/dist/cjs/sdk/utils/index.js +2 -0
  145. package/dist/esm/dev/create2.js +2 -2
  146. package/dist/esm/dev/mint/AbstractMinter.js +3 -7
  147. package/dist/esm/dev/mint/DealMinter.js +0 -3
  148. package/dist/esm/dev/mint/DirectMinter.js +0 -3
  149. package/dist/esm/dev/mint/FallbackMinter.js +1 -1
  150. package/dist/esm/dev/mint/TransferMinter.js +0 -3
  151. package/dist/esm/permissionless/bindings/address-provider.js +7 -7
  152. package/dist/esm/permissionless/bindings/bytecode-repository.js +22 -24
  153. package/dist/esm/permissionless/bindings/compressors/token-compressor.js +3 -3
  154. package/dist/esm/permissionless/bindings/compressors/withdrawal-compressor.js +10 -16
  155. package/dist/esm/permissionless/bindings/cross-chain-multisig.js +20 -16
  156. package/dist/esm/permissionless/bindings/factory/abstract-factory.js +9 -4
  157. package/dist/esm/permissionless/bindings/governance/batches-chain.js +3 -3
  158. package/dist/esm/permissionless/bindings/governance/governor.js +28 -47
  159. package/dist/esm/permissionless/bindings/governance/timelock.js +3 -3
  160. package/dist/esm/permissionless/bindings/index.js +0 -1
  161. package/dist/esm/permissionless/bindings/instance-manager.js +53 -69
  162. package/dist/esm/permissionless/bindings/market-configurator-factory.js +3 -3
  163. package/dist/esm/permissionless/bindings/market-configurator.js +65 -137
  164. package/dist/esm/permissionless/bindings/price-feed-store.js +8 -14
  165. package/dist/esm/permissionless/bindings/router/routing-manager.js +8 -14
  166. package/dist/esm/permissionless/bindings/treasury-splitter.js +15 -22
  167. package/dist/esm/permissionless/core/raw-tx.js +1 -1
  168. package/dist/esm/permissionless/utils/format.js +1 -1
  169. package/dist/esm/permissionless/utils/governance/timelock-txs.js +1 -1
  170. package/dist/esm/permissionless/utils/index.js +0 -1
  171. package/dist/esm/permissionless/utils/price-update/get-price-feeds.js +4 -2
  172. package/dist/esm/permissionless/utils/price-update/get-price-update-tx.js +1 -1
  173. package/dist/esm/permissionless/utils/price-update/get-prices.js +1 -2
  174. package/dist/esm/permissionless/utils/price-update/get-updatable-feeds.js +1 -1
  175. package/dist/esm/plugins/adapters/contracts/AbstractAdapter.js +2 -2
  176. package/dist/esm/plugins/adapters/contracts/AccountMigratorAdapterContract.js +2 -2
  177. package/dist/esm/plugins/adapters/contracts/BalancerV2VaultAdapterContract.js +2 -2
  178. package/dist/esm/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +2 -2
  179. package/dist/esm/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +2 -2
  180. package/dist/esm/plugins/adapters/contracts/CamelotV3AdapterContract.js +2 -2
  181. package/dist/esm/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +2 -2
  182. package/dist/esm/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +2 -2
  183. package/dist/esm/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +2 -2
  184. package/dist/esm/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +2 -2
  185. package/dist/esm/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +2 -2
  186. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterDeposit.js +2 -2
  187. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +2 -2
  188. package/dist/esm/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +2 -2
  189. package/dist/esm/plugins/adapters/contracts/DaiUsdsAdapterContract.js +2 -2
  190. package/dist/esm/plugins/adapters/contracts/ERC4626AdapterContract.js +2 -2
  191. package/dist/esm/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +2 -2
  192. package/dist/esm/plugins/adapters/contracts/EqualizerRouterAdapterContract.js +2 -2
  193. package/dist/esm/plugins/adapters/contracts/FluidDexAdapterContract.js +2 -2
  194. package/dist/esm/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +2 -2
  195. package/dist/esm/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +2 -2
  196. package/dist/esm/plugins/adapters/contracts/InfraredVaultAdapterContract.js +2 -2
  197. package/dist/esm/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +2 -2
  198. package/dist/esm/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +2 -2
  199. package/dist/esm/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.js +2 -2
  200. package/dist/esm/plugins/adapters/contracts/LidoV1AdapterContract.js +2 -2
  201. package/dist/esm/plugins/adapters/contracts/MellowClaimerAdapterContract.js +2 -2
  202. package/dist/esm/plugins/adapters/contracts/MellowDVVAdapterContract.js +2 -2
  203. package/dist/esm/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +2 -2
  204. package/dist/esm/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +2 -2
  205. package/dist/esm/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +2 -2
  206. package/dist/esm/plugins/adapters/contracts/MellowVaultAdapterContract.js +2 -2
  207. package/dist/esm/plugins/adapters/contracts/MellowWrapperAdapterContract.js +2 -2
  208. package/dist/esm/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +2 -2
  209. package/dist/esm/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +2 -2
  210. package/dist/esm/plugins/adapters/contracts/PendleRouterAdapterContract.js +2 -2
  211. package/dist/esm/plugins/adapters/contracts/StakingRewardsAdapterContract.js +2 -2
  212. package/dist/esm/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +2 -2
  213. package/dist/esm/plugins/adapters/contracts/UniswapV2AdapterContract.js +5 -5
  214. package/dist/esm/plugins/adapters/contracts/UniswapV3AdapterContract.js +22 -22
  215. package/dist/esm/plugins/adapters/contracts/UniswapV4AdapterContract.js +2 -2
  216. package/dist/esm/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +2 -2
  217. package/dist/esm/plugins/adapters/contracts/VelodromeV2AdapterContract.js +2 -2
  218. package/dist/esm/plugins/adapters/contracts/WstETHV1AdapterContract.js +2 -2
  219. package/dist/esm/plugins/adapters/contracts/YearnV2AdapterContract.js +2 -2
  220. package/dist/esm/plugins/bots/deserializePartialLiquidationBotParams.js +29 -0
  221. package/dist/esm/plugins/zappers/ZappersPlugin.js +1 -1
  222. package/dist/esm/sdk/GearboxSDK.js +10 -112
  223. package/dist/esm/sdk/accountMigration/AbstractMigrateCreditAccountsService.js +1 -4
  224. package/dist/esm/sdk/accounts/AbstractCreditAccountsService.js +7 -9
  225. package/dist/esm/sdk/base/BaseContract.js +202 -81
  226. package/dist/esm/sdk/base/ChainContractsRegister.js +111 -0
  227. package/dist/esm/sdk/base/Construct.js +63 -0
  228. package/dist/esm/sdk/base/SDKConstruct.js +3 -29
  229. package/dist/esm/sdk/base/TokensMeta.js +4 -4
  230. package/dist/esm/sdk/base/index.js +2 -1
  231. package/dist/esm/sdk/core/BotListV3Contract.js +2 -2
  232. package/dist/esm/sdk/core/GearStakingV3Contract.js +2 -2
  233. package/dist/esm/sdk/core/address-provider/AbstractAddressProviderContract.js +2 -2
  234. package/dist/esm/sdk/core/address-provider/AddressProviderV300Contract.js +11 -6
  235. package/dist/esm/sdk/core/address-provider/AddressProviderV310Contract.js +4 -4
  236. package/dist/esm/sdk/market/MarketConfiguratorContract.js +5 -5
  237. package/dist/esm/sdk/market/MarketRegister.js +8 -10
  238. package/dist/esm/sdk/market/MarketSuite.js +2 -2
  239. package/dist/esm/sdk/market/credit/CreditConfiguratorV300Contract.js +4 -3
  240. package/dist/esm/sdk/market/credit/CreditConfiguratorV310Contract.js +4 -3
  241. package/dist/esm/sdk/market/credit/CreditFacadeV300Contract.js +9 -9
  242. package/dist/esm/sdk/market/credit/CreditFacadeV310Contract.js +8 -8
  243. package/dist/esm/sdk/market/credit/CreditManagerV300Contract.js +5 -2
  244. package/dist/esm/sdk/market/credit/CreditManagerV310Contract.js +5 -2
  245. package/dist/esm/sdk/market/credit/CreditSuite.js +2 -3
  246. package/dist/esm/sdk/market/loss-policy/AliasLossPolicyV310Contract.js +3 -1
  247. package/dist/esm/sdk/market/loss-policy/LossPolicyContract.js +5 -3
  248. package/dist/esm/sdk/market/loss-policy/createLossPolicy.js +1 -1
  249. package/dist/esm/sdk/market/oracle/PriceOracleBaseContract.js +8 -26
  250. package/dist/esm/sdk/market/oracle/createPriceOracle.js +1 -1
  251. package/dist/esm/sdk/market/pool/GaugeContract.js +2 -2
  252. package/dist/esm/sdk/market/pool/LinearInterestRateModelContract.js +2 -2
  253. package/dist/esm/sdk/market/pool/PoolQuotaKeeperV300Contract.js +2 -2
  254. package/dist/esm/sdk/market/pool/PoolQuotaKeeperV310Contract.js +2 -2
  255. package/dist/esm/sdk/market/pool/PoolSuite.js +1 -1
  256. package/dist/esm/sdk/market/pool/PoolV300Contract.js +5 -5
  257. package/dist/esm/sdk/market/pool/PoolV310Contract.js +5 -5
  258. package/dist/esm/sdk/market/pool/TumblerContract.js +2 -2
  259. package/dist/esm/sdk/market/pool/createInterestRateModel.js +11 -15
  260. package/dist/esm/sdk/market/pricefeeds/AbstractLPPriceFeed.js +2 -22
  261. package/dist/esm/sdk/market/pricefeeds/AbstractPriceFeed.js +3 -3
  262. package/dist/esm/sdk/market/pricefeeds/BalancerStablePriceFeed.js +3 -13
  263. package/dist/esm/sdk/market/pricefeeds/BalancerWeightedPriceFeed.js +3 -13
  264. package/dist/esm/sdk/market/pricefeeds/BoundedPriceFeed.js +6 -2
  265. package/dist/esm/sdk/market/pricefeeds/CompositePriceFeed.js +2 -2
  266. package/dist/esm/sdk/market/pricefeeds/ConstantPriceFeed.js +2 -2
  267. package/dist/esm/sdk/market/pricefeeds/CurveCryptoPriceFeed.js +3 -10
  268. package/dist/esm/sdk/market/pricefeeds/CurveStablePriceFeed.js +3 -10
  269. package/dist/esm/sdk/market/pricefeeds/CurveUSDPriceFeed.js +3 -10
  270. package/dist/esm/sdk/market/pricefeeds/Erc4626PriceFeed.js +2 -18
  271. package/dist/esm/sdk/market/pricefeeds/ExternalPriceFeed.js +2 -2
  272. package/dist/esm/sdk/market/pricefeeds/MellowLRTPriceFeed.js +3 -11
  273. package/dist/esm/sdk/market/pricefeeds/PendleTWAPPTPriceFeed.js +2 -2
  274. package/dist/esm/sdk/market/pricefeeds/PriceFeedRef.js +7 -5
  275. package/dist/esm/sdk/market/pricefeeds/PriceFeedsRegister.js +3 -9
  276. package/dist/esm/sdk/market/pricefeeds/PythPriceFeed.js +2 -2
  277. package/dist/esm/sdk/market/pricefeeds/RedstonePriceFeed.js +3 -3
  278. package/dist/esm/sdk/market/pricefeeds/WstETHPriceFeed.js +3 -10
  279. package/dist/esm/sdk/market/pricefeeds/YearnPriceFeed.js +3 -10
  280. package/dist/esm/sdk/market/pricefeeds/ZeroPriceFeed.js +2 -2
  281. package/dist/esm/sdk/market/pricefeeds/updates/PriceUpdatesCache.js +17 -0
  282. package/dist/esm/sdk/market/pricefeeds/updates/PythUpdater.js +8 -10
  283. package/dist/esm/sdk/market/pricefeeds/updates/RedstoneUpdater.js +11 -13
  284. package/dist/esm/sdk/router/AbstractRouterContract.js +5 -0
  285. package/dist/esm/sdk/router/RouterV310Contract.js +3 -3
  286. package/dist/esm/sdk/router/createRouter.js +4 -0
  287. package/dist/esm/sdk/utils/abi-decode.js +37 -0
  288. package/dist/esm/sdk/utils/index.js +1 -0
  289. package/dist/types/dev/create2.d.ts +2 -2
  290. package/dist/types/dev/mint/AbstractMinter.d.ts +3 -4
  291. package/dist/types/dev/mint/DealMinter.d.ts +0 -3
  292. package/dist/types/dev/mint/DirectMinter.d.ts +0 -3
  293. package/dist/types/dev/mint/TransferMinter.d.ts +0 -3
  294. package/dist/types/permissionless/bindings/address-provider.d.ts +4 -255
  295. package/dist/types/permissionless/bindings/bytecode-repository.d.ts +5 -6
  296. package/dist/types/permissionless/bindings/compressors/token-compressor.d.ts +3 -3
  297. package/dist/types/permissionless/bindings/compressors/withdrawal-compressor.d.ts +4 -5
  298. package/dist/types/permissionless/bindings/cross-chain-multisig.d.ts +7 -7
  299. package/dist/types/permissionless/bindings/factory/abstract-factory.d.ts +1 -1
  300. package/dist/types/permissionless/bindings/governance/batches-chain.d.ts +3 -4
  301. package/dist/types/permissionless/bindings/governance/governor.d.ts +6 -7
  302. package/dist/types/permissionless/bindings/governance/timelock.d.ts +3 -3
  303. package/dist/types/permissionless/bindings/governance/types.d.ts +1 -1
  304. package/dist/types/permissionless/bindings/index.d.ts +0 -1
  305. package/dist/types/permissionless/bindings/instance-manager.d.ts +6 -7
  306. package/dist/types/permissionless/bindings/market-configurator-factory.d.ts +4 -4
  307. package/dist/types/permissionless/bindings/market-configurator.d.ts +6 -6
  308. package/dist/types/permissionless/bindings/price-feed-store.d.ts +6 -7
  309. package/dist/types/permissionless/bindings/router/routing-manager.d.ts +4 -5
  310. package/dist/types/permissionless/bindings/treasury-splitter.d.ts +5 -6
  311. package/dist/types/permissionless/core/proposal.d.ts +1 -7
  312. package/dist/types/permissionless/utils/create2.d.ts +1 -1
  313. package/dist/types/permissionless/utils/governance/batch.d.ts +1 -1
  314. package/dist/types/permissionless/utils/index.d.ts +0 -1
  315. package/dist/types/permissionless/utils/price-update/get-price-feeds.d.ts +3 -3
  316. package/dist/types/permissionless/utils/price-update/get-price-update-tx.d.ts +2 -2
  317. package/dist/types/plugins/adapters/contracts/AbstractAdapter.d.ts +2 -2
  318. package/dist/types/plugins/adapters/contracts/AccountMigratorAdapterContract.d.ts +2 -2
  319. package/dist/types/plugins/adapters/contracts/BalancerV2VaultAdapterContract.d.ts +2 -2
  320. package/dist/types/plugins/adapters/contracts/BalancerV3RouterAdapterContract.d.ts +2 -2
  321. package/dist/types/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.d.ts +2 -2
  322. package/dist/types/plugins/adapters/contracts/CamelotV3AdapterContract.d.ts +2 -2
  323. package/dist/types/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.d.ts +2 -2
  324. package/dist/types/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.d.ts +2 -2
  325. package/dist/types/plugins/adapters/contracts/Curve2AssetsAdapterContract.d.ts +2 -2
  326. package/dist/types/plugins/adapters/contracts/Curve3AssetsAdapterContract.d.ts +2 -2
  327. package/dist/types/plugins/adapters/contracts/Curve4AssetsAdapterContract.d.ts +2 -2
  328. package/dist/types/plugins/adapters/contracts/CurveV1AdapterDeposit.d.ts +2 -2
  329. package/dist/types/plugins/adapters/contracts/CurveV1AdapterStETHContract.d.ts +2 -2
  330. package/dist/types/plugins/adapters/contracts/CurveV1StableNGAdapterContract.d.ts +2 -2
  331. package/dist/types/plugins/adapters/contracts/DaiUsdsAdapterContract.d.ts +2 -2
  332. package/dist/types/plugins/adapters/contracts/ERC4626AdapterContract.d.ts +2 -2
  333. package/dist/types/plugins/adapters/contracts/ERC4626ReferralAdapterContract.d.ts +2 -2
  334. package/dist/types/plugins/adapters/contracts/EqualizerRouterAdapterContract.d.ts +2 -2
  335. package/dist/types/plugins/adapters/contracts/FluidDexAdapterContract.d.ts +2 -2
  336. package/dist/types/plugins/adapters/contracts/InfinifiGatewayAdapterContract.d.ts +2 -2
  337. package/dist/types/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.d.ts +2 -2
  338. package/dist/types/plugins/adapters/contracts/InfraredVaultAdapterContract.d.ts +2 -2
  339. package/dist/types/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.d.ts +2 -2
  340. package/dist/types/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.d.ts +2 -2
  341. package/dist/types/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.d.ts +2 -2
  342. package/dist/types/plugins/adapters/contracts/LidoV1AdapterContract.d.ts +2 -2
  343. package/dist/types/plugins/adapters/contracts/MellowClaimerAdapterContract.d.ts +2 -2
  344. package/dist/types/plugins/adapters/contracts/MellowDVVAdapterContract.d.ts +2 -2
  345. package/dist/types/plugins/adapters/contracts/MellowDepositQueueAdapterContract.d.ts +2 -2
  346. package/dist/types/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.d.ts +2 -2
  347. package/dist/types/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.d.ts +2 -2
  348. package/dist/types/plugins/adapters/contracts/MellowVaultAdapterContract.d.ts +2 -2
  349. package/dist/types/plugins/adapters/contracts/MellowWrapperAdapterContract.d.ts +2 -2
  350. package/dist/types/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.d.ts +2 -2
  351. package/dist/types/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +2 -2
  352. package/dist/types/plugins/adapters/contracts/PendleRouterAdapterContract.d.ts +2 -2
  353. package/dist/types/plugins/adapters/contracts/StakingRewardsAdapterContract.d.ts +2 -2
  354. package/dist/types/plugins/adapters/contracts/TraderJoeRouterAdapterContract.d.ts +2 -2
  355. package/dist/types/plugins/adapters/contracts/UniswapV2AdapterContract.d.ts +3 -3
  356. package/dist/types/plugins/adapters/contracts/UniswapV3AdapterContract.d.ts +3 -3
  357. package/dist/types/plugins/adapters/contracts/UniswapV4AdapterContract.d.ts +2 -2
  358. package/dist/types/plugins/adapters/contracts/UpshiftVaultAdapterContract.d.ts +2 -2
  359. package/dist/types/plugins/adapters/contracts/VelodromeV2AdapterContract.d.ts +2 -2
  360. package/dist/types/plugins/adapters/contracts/WstETHV1AdapterContract.d.ts +2 -2
  361. package/dist/types/plugins/adapters/contracts/YearnV2AdapterContract.d.ts +2 -2
  362. package/dist/types/plugins/bots/deserializePartialLiquidationBotParams.d.ts +3 -0
  363. package/dist/types/sdk/GearboxSDK.d.ts +5 -76
  364. package/dist/types/sdk/accountMigration/types.d.ts +1 -2
  365. package/dist/types/sdk/accounts/types.d.ts +4 -3
  366. package/dist/types/sdk/base/BaseContract.d.ts +72 -28
  367. package/dist/types/sdk/base/ChainContractsRegister.d.ts +57 -0
  368. package/dist/types/sdk/base/Construct.d.ts +38 -0
  369. package/dist/types/sdk/base/PlaceholderContract.d.ts +2 -2
  370. package/dist/types/sdk/base/SDKConstruct.d.ts +2 -16
  371. package/dist/types/sdk/base/TokensMeta.d.ts +2 -3
  372. package/dist/types/sdk/base/index.d.ts +2 -1
  373. package/dist/types/sdk/base/types.d.ts +50 -0
  374. package/dist/types/sdk/core/BotListV3Contract.d.ts +1 -1
  375. package/dist/types/sdk/core/GearStakingV3Contract.d.ts +1 -1
  376. package/dist/types/sdk/core/address-provider/AbstractAddressProviderContract.d.ts +3 -4
  377. package/dist/types/sdk/core/address-provider/AddressProviderV300Contract.d.ts +3 -3
  378. package/dist/types/sdk/core/address-provider/AddressProviderV310Contract.d.ts +3 -3
  379. package/dist/types/sdk/market/MarketConfiguratorContract.d.ts +2 -2
  380. package/dist/types/sdk/market/credit/CreditConfiguratorV300Contract.d.ts +3 -3
  381. package/dist/types/sdk/market/credit/CreditConfiguratorV310Contract.d.ts +3 -3
  382. package/dist/types/sdk/market/credit/CreditFacadeV300Contract.d.ts +3 -4
  383. package/dist/types/sdk/market/credit/CreditFacadeV310Contract.d.ts +3 -4
  384. package/dist/types/sdk/market/credit/CreditManagerV300Contract.d.ts +1 -1
  385. package/dist/types/sdk/market/credit/CreditManagerV310Contract.d.ts +1 -1
  386. package/dist/types/sdk/market/credit/CreditSuite.d.ts +1 -1
  387. package/dist/types/sdk/market/credit/types.d.ts +1 -2
  388. package/dist/types/sdk/market/loss-policy/AliasLossPolicyV310Contract.d.ts +1 -0
  389. package/dist/types/sdk/market/loss-policy/LossPolicyContract.d.ts +2 -3
  390. package/dist/types/sdk/market/oracle/PriceOracleBaseContract.d.ts +3 -12
  391. package/dist/types/sdk/market/oracle/types.d.ts +0 -10
  392. package/dist/types/sdk/market/pool/GaugeContract.d.ts +2 -3
  393. package/dist/types/sdk/market/pool/LinearInterestRateModelContract.d.ts +2 -3
  394. package/dist/types/sdk/market/pool/PoolQuotaKeeperV300Contract.d.ts +2 -3
  395. package/dist/types/sdk/market/pool/PoolQuotaKeeperV310Contract.d.ts +2 -3
  396. package/dist/types/sdk/market/pool/PoolV300Contract.d.ts +4 -5
  397. package/dist/types/sdk/market/pool/PoolV310Contract.d.ts +4 -5
  398. package/dist/types/sdk/market/pool/TumblerContract.d.ts +2 -3
  399. package/dist/types/sdk/market/pricefeeds/AbstractLPPriceFeed.d.ts +3 -8
  400. package/dist/types/sdk/market/pricefeeds/AbstractPriceFeed.d.ts +2 -3
  401. package/dist/types/sdk/market/pricefeeds/BalancerStablePriceFeed.d.ts +2 -3
  402. package/dist/types/sdk/market/pricefeeds/BalancerWeightedPriceFeed.d.ts +2 -3
  403. package/dist/types/sdk/market/pricefeeds/BoundedPriceFeed.d.ts +2 -2
  404. package/dist/types/sdk/market/pricefeeds/CompositePriceFeed.d.ts +2 -2
  405. package/dist/types/sdk/market/pricefeeds/ConstantPriceFeed.d.ts +2 -2
  406. package/dist/types/sdk/market/pricefeeds/CurveCryptoPriceFeed.d.ts +2 -3
  407. package/dist/types/sdk/market/pricefeeds/CurveStablePriceFeed.d.ts +2 -3
  408. package/dist/types/sdk/market/pricefeeds/CurveUSDPriceFeed.d.ts +2 -3
  409. package/dist/types/sdk/market/pricefeeds/Erc4626PriceFeed.d.ts +2 -3
  410. package/dist/types/sdk/market/pricefeeds/ExternalPriceFeed.d.ts +2 -2
  411. package/dist/types/sdk/market/pricefeeds/MellowLRTPriceFeed.d.ts +2 -3
  412. package/dist/types/sdk/market/pricefeeds/PendleTWAPPTPriceFeed.d.ts +2 -2
  413. package/dist/types/sdk/market/pricefeeds/PriceFeedRef.d.ts +3 -4
  414. package/dist/types/sdk/market/pricefeeds/PriceFeedsRegister.d.ts +1 -2
  415. package/dist/types/sdk/market/pricefeeds/PythPriceFeed.d.ts +2 -2
  416. package/dist/types/sdk/market/pricefeeds/RedstonePriceFeed.d.ts +2 -2
  417. package/dist/types/sdk/market/pricefeeds/WstETHPriceFeed.d.ts +2 -3
  418. package/dist/types/sdk/market/pricefeeds/YearnPriceFeed.d.ts +2 -3
  419. package/dist/types/sdk/market/pricefeeds/ZeroPriceFeed.d.ts +2 -2
  420. package/dist/types/sdk/market/pricefeeds/types.d.ts +0 -5
  421. package/dist/types/sdk/market/pricefeeds/updates/PriceUpdatesCache.d.ts +8 -1
  422. package/dist/types/sdk/router/AbstractRouterContract.d.ts +4 -1
  423. package/dist/types/sdk/router/types.d.ts +1 -2
  424. package/dist/types/sdk/sdk-legacy/core/creditAccount.d.ts +2 -2
  425. package/dist/types/sdk/utils/abi-decode.d.ts +10 -0
  426. package/dist/types/sdk/utils/index.d.ts +1 -0
  427. package/package.json +1 -1
  428. package/dist/cjs/permissionless/bindings/base-contract.js +0 -173
  429. package/dist/cjs/permissionless/utils/abi-decoder.js +0 -72
  430. package/dist/cjs/sdk/base/AddressLabeller.js +0 -49
  431. package/dist/cjs/sdk/base/IAddressLabeller.js +0 -16
  432. package/dist/esm/permissionless/bindings/base-contract.js +0 -151
  433. package/dist/esm/permissionless/utils/abi-decoder.js +0 -50
  434. package/dist/esm/sdk/base/AddressLabeller.js +0 -25
  435. package/dist/esm/sdk/base/IAddressLabeller.js +0 -0
  436. package/dist/types/permissionless/bindings/base-contract.d.ts +0 -23
  437. package/dist/types/permissionless/utils/abi-decoder.d.ts +0 -13
  438. package/dist/types/sdk/base/AddressLabeller.d.ts +0 -11
  439. package/dist/types/sdk/base/IAddressLabeller.d.ts +0 -9
@@ -29,14 +29,14 @@ class GearStakingContract extends import_base.BaseContract {
29
29
  constructor(sdk, address) {
30
30
  super(sdk, { addr: address, name: "GearStakingV3", abi });
31
31
  }
32
- parseFunctionParams(params) {
32
+ stringifyFunctionParams(params) {
33
33
  switch (params.functionName) {
34
34
  case "setVotingContractStatus": {
35
35
  const [address, status] = params.args;
36
36
  return [this.labelAddress(address), import_base.VotingContractStatus[status]];
37
37
  }
38
38
  default:
39
- return void 0;
39
+ return super.stringifyFunctionParams(params);
40
40
  }
41
41
  }
42
42
  stateHuman(raw = true) {
@@ -27,8 +27,8 @@ var import_constants = require("../../constants/index.js");
27
27
  var import_mappers = require("../../utils/mappers.js");
28
28
  class AbstractAddressProviderContract extends import_base.BaseContract {
29
29
  #addresses = {};
30
- constructor(sdk, args, addresses = {}) {
31
- super(sdk, args);
30
+ constructor(options, args, addresses = {}) {
31
+ super(options, args);
32
32
  this.#addresses = addresses;
33
33
  }
34
34
  setInternalAddress(key, address, version) {
@@ -37,9 +37,9 @@ var import_viem2 = require("../../utils/viem/index.js");
37
37
  var import_AbstractAddressProviderContract = __toESM(require("./AbstractAddressProviderContract.js"));
38
38
  const abi = import_v300.iAddressProviderV300Abi;
39
39
  class AddressProviderV300Contract extends import_AbstractAddressProviderContract.default {
40
- constructor(sdk, address, version, addresses = {}) {
40
+ constructor(options, address, version, addresses = {}) {
41
41
  super(
42
- sdk,
42
+ options,
43
43
  {
44
44
  addr: address,
45
45
  name: "AddressProviderV300",
@@ -49,7 +49,7 @@ class AddressProviderV300Contract extends import_AbstractAddressProviderContract
49
49
  addresses
50
50
  );
51
51
  }
52
- parseFunctionParams(params) {
52
+ stringifyFunctionParams(params) {
53
53
  switch (params.functionName) {
54
54
  case "setAddress": {
55
55
  if (params.args.length !== 3) {
@@ -60,7 +60,7 @@ class AddressProviderV300Contract extends import_AbstractAddressProviderContract
60
60
  return [(0, import_viem.bytesToString)((0, import_viem.toBytes)(key)), value, `${saveVersion}`];
61
61
  }
62
62
  default:
63
- return void 0;
63
+ return super.stringifyFunctionParams(params);
64
64
  }
65
65
  }
66
66
  processLog(log) {
@@ -85,11 +85,16 @@ class AddressProviderV300Contract extends import_AbstractAddressProviderContract
85
85
  }
86
86
  }
87
87
  async syncState(blockNumber) {
88
- const fromBlock = this.sdk.chain.firstBlock;
88
+ if (!("firstBlock" in this.chain)) {
89
+ throw new Error(
90
+ `address provider v300 requires gearbox chain for ${this.chain.id} `
91
+ );
92
+ }
93
+ const fromBlock = this.chain.firstBlock;
89
94
  this.logger?.debug(
90
95
  `loading events from block ${fromBlock} to ${blockNumber}`
91
96
  );
92
- const events = await (0, import_viem2.getLogsSafe)(this.sdk.client, {
97
+ const events = await (0, import_viem2.getLogsSafe)(this.client, {
93
98
  address: this.address,
94
99
  event: (0, import_viem.getAbiItem)({ abi: this.abi, name: "SetAddress" }),
95
100
  fromBlock,
@@ -36,9 +36,9 @@ var import_generated = require("../../../abi/310/generated.js");
36
36
  var import_AbstractAddressProviderContract = __toESM(require("./AbstractAddressProviderContract.js"));
37
37
  const abi = import_generated.iAddressProviderV310Abi;
38
38
  class AddressProviderV310Contract extends import_AbstractAddressProviderContract.default {
39
- constructor(sdk, address, version, addresses = {}) {
39
+ constructor(options, address, version = 310, addresses = {}) {
40
40
  super(
41
- sdk,
41
+ options,
42
42
  {
43
43
  addr: address,
44
44
  name: "AddressProviderV310",
@@ -48,7 +48,7 @@ class AddressProviderV310Contract extends import_AbstractAddressProviderContract
48
48
  addresses
49
49
  );
50
50
  }
51
- parseFunctionParams(params) {
51
+ stringifyFunctionParams(params) {
52
52
  switch (params.functionName) {
53
53
  case "setAddress": {
54
54
  if (params.args.length !== 3) {
@@ -59,7 +59,7 @@ class AddressProviderV310Contract extends import_AbstractAddressProviderContract
59
59
  return [(0, import_viem.bytesToString)((0, import_viem.toBytes)(key)), value, `${saveVersion}`];
60
60
  }
61
61
  default:
62
- return void 0;
62
+ return super.stringifyFunctionParams(params);
63
63
  }
64
64
  }
65
65
  processLog(log) {
@@ -28,8 +28,8 @@ var import_constants = require("../constants/index.js");
28
28
  const abi = import_generated.iMarketConfiguratorV310Abi;
29
29
  class MarketConfiguratorContract extends import_base.BaseContract {
30
30
  #curatorName;
31
- constructor(sdk, address) {
32
- super(sdk, {
31
+ constructor(options, address) {
32
+ super(options, {
33
33
  abi,
34
34
  addr: address,
35
35
  contractType: import_constants.AP_MARKET_CONFIGURATOR,
@@ -37,18 +37,18 @@ class MarketConfiguratorContract extends import_base.BaseContract {
37
37
  });
38
38
  }
39
39
  async loadCuratorName() {
40
- this.#curatorName = await this.sdk.client.readContract({
40
+ this.#curatorName = await this.client.readContract({
41
41
  address: this.address,
42
42
  abi: this.abi,
43
43
  functionName: "curatorName"
44
44
  });
45
- this.sdk.addressLabels.set(
45
+ this.register.setAddressLabel(
46
46
  this.address,
47
47
  `Market configurator ${this.#curatorName}`
48
48
  );
49
49
  }
50
50
  async getPeripheryContract(contract) {
51
- const resp = await this.sdk.client.readContract({
51
+ const resp = await this.client.readContract({
52
52
  address: this.address,
53
53
  abi: this.abi,
54
54
  functionName: "getPeripheryContracts",
@@ -29,7 +29,6 @@ var import_viem = require("../utils/viem/index.js");
29
29
  var import_MarketConfiguratorContract = require("./MarketConfiguratorContract.js");
30
30
  var import_MarketSuite = require("./MarketSuite.js");
31
31
  class MarketRegister extends import_base.SDKConstruct {
32
- #logger;
33
32
  /**
34
33
  * Mapping pool.address -> MarketSuite
35
34
  */
@@ -42,7 +41,6 @@ class MarketRegister extends import_base.SDKConstruct {
42
41
  #ignoreMarkets;
43
42
  constructor(sdk, ignoreMarkets = []) {
44
43
  super(sdk);
45
- this.#logger = (0, import_utils.childLogger)("MarketRegister", sdk.logger);
46
44
  this.#ignoreMarkets = new Set(
47
45
  ignoreMarkets.map((m) => m.toLowerCase())
48
46
  );
@@ -54,7 +52,7 @@ class MarketRegister extends import_base.SDKConstruct {
54
52
  for (const data of state) {
55
53
  const pool = data.pool.baseParams.addr;
56
54
  if (this.#ignoreMarkets.has(pool.toLowerCase())) {
57
- this.#logger?.debug(
55
+ this.logger?.debug(
58
56
  `ignoring market of pool ${pool} (${data.pool.name})`
59
57
  );
60
58
  continue;
@@ -67,7 +65,7 @@ class MarketRegister extends import_base.SDKConstruct {
67
65
  }
68
66
  async loadMarkets(marketConfigurators, ignoreUpdateablePrices) {
69
67
  if (!marketConfigurators.length) {
70
- this.#logger?.warn(
68
+ this.logger?.warn(
71
69
  "no market configurators provided, skipping loadMarkets"
72
70
  );
73
71
  return;
@@ -98,7 +96,7 @@ class MarketRegister extends import_base.SDKConstruct {
98
96
  async syncState(ignoreUpdateablePrices) {
99
97
  const dirty = this.markets.some((m) => m.dirty) || this.marketConfigurators.some((c) => c.dirty);
100
98
  if (dirty) {
101
- this.#logger?.debug(
99
+ this.logger?.debug(
102
100
  "some markets or market configurators are dirty, reloading everything"
103
101
  );
104
102
  await this.#loadMarkets(
@@ -125,7 +123,7 @@ class MarketRegister extends import_base.SDKConstruct {
125
123
  const updates = await this.sdk.priceFeeds.generatePriceFeedsUpdateTxs(updatables);
126
124
  txs = updates.txs;
127
125
  }
128
- this.#logger?.debug(
126
+ this.logger?.debug(
129
127
  { configurators, pools },
130
128
  `calling getMarkets with ${txs.length} price updates in block ${this.sdk.currentBlock}`
131
129
  );
@@ -159,14 +157,14 @@ class MarketRegister extends import_base.SDKConstruct {
159
157
  for (const data of markets) {
160
158
  const pool = data.pool.baseParams.addr;
161
159
  if (this.#ignoreMarkets.has(pool.toLowerCase())) {
162
- this.#logger?.debug(
160
+ this.logger?.debug(
163
161
  `ignoring market of pool ${pool} (${data.pool.name})`
164
162
  );
165
163
  continue;
166
164
  }
167
165
  this.#markets.upsert(pool, new import_MarketSuite.MarketSuite(this.sdk, data));
168
166
  }
169
- this.#logger?.info(
167
+ this.logger?.info(
170
168
  `loaded ${this.#markets.size} markets in block ${this.sdk.currentBlock}`
171
169
  );
172
170
  }
@@ -185,7 +183,7 @@ class MarketRegister extends import_base.SDKConstruct {
185
183
  if (!multicalls.length) {
186
184
  return;
187
185
  }
188
- this.#logger?.debug(`syncing prices on ${multicalls.length} oracles`);
186
+ this.logger?.debug(`syncing prices on ${multicalls.length} oracles`);
189
187
  const { txs } = await this.sdk.priceFeeds.generatePriceFeedsUpdateTxs();
190
188
  const oraclesStates = await (0, import_viem.simulateWithPriceUpdates)(this.client, {
191
189
  priceUpdates: txs,
@@ -42,7 +42,7 @@ class MarketSuite extends import_base.SDKConstruct {
42
42
  constructor(sdk, marketData) {
43
43
  super(sdk);
44
44
  this.state = marketData;
45
- const mc = sdk.contracts.mustGet(marketData.configurator);
45
+ const mc = sdk.mustGetContract(marketData.configurator);
46
46
  if (!(mc instanceof import_MarketConfiguratorContract.MarketConfiguratorContract)) {
47
47
  throw new Error(
48
48
  `Market configurator ${marketData.configurator} is not a market configurator`
@@ -53,7 +53,7 @@ class MarketSuite extends import_base.SDKConstruct {
53
53
  this.treasury = marketData.treasury;
54
54
  for (const t of marketData.tokens) {
55
55
  sdk.tokensMeta.upsert(t.addr, t);
56
- sdk.addressLabels.set(t.addr, t.symbol);
56
+ sdk.setAddressLabel(t.addr, t.symbol);
57
57
  }
58
58
  this.pool = new import_pool.PoolSuite(sdk, marketData);
59
59
  for (let i = 0; i < marketData.creditManagers.length; i++) {
@@ -28,7 +28,7 @@ var import_constants = require("../../constants/index.js");
28
28
  var import_utils = require("../../utils/index.js");
29
29
  const abi = [...import_v300.iCreditConfiguratorV300Abi, ...import_iPausable.iPausableAbi];
30
30
  class CreditConfiguratorV300Contract extends import_base.BaseContract {
31
- adapters = [];
31
+ sdk;
32
32
  isPaused = false;
33
33
  constructor(sdk, { creditConfigurator, creditManager }) {
34
34
  super(sdk, {
@@ -36,6 +36,7 @@ class CreditConfiguratorV300Contract extends import_base.BaseContract {
36
36
  name: `CreditConfigurator(${creditManager.name})`,
37
37
  abi
38
38
  });
39
+ this.sdk = sdk;
39
40
  }
40
41
  processLog(log) {
41
42
  switch (log.eventName) {
@@ -82,7 +83,7 @@ class CreditConfiguratorV300Contract extends import_base.BaseContract {
82
83
  });
83
84
  return logs.map(({ args }) => args);
84
85
  }
85
- parseFunctionParams(params) {
86
+ stringifyFunctionParams(params) {
86
87
  switch (params.functionName) {
87
88
  case "addCollateralToken":
88
89
  case "setLiquidationThreshold": {
@@ -128,7 +129,7 @@ class CreditConfiguratorV300Contract extends import_base.BaseContract {
128
129
  ];
129
130
  }
130
131
  default:
131
- return void 0;
132
+ return super.stringifyFunctionParams(params);
132
133
  }
133
134
  }
134
135
  }
@@ -27,7 +27,7 @@ var import_constants = require("../../constants/index.js");
27
27
  var import_utils = require("../../utils/index.js");
28
28
  const abi = import_generated.iCreditConfiguratorV310Abi;
29
29
  class CreditConfiguratorV310Contract extends import_base.BaseContract {
30
- adapters = [];
30
+ sdk;
31
31
  isPaused = false;
32
32
  constructor(sdk, { creditConfigurator, creditManager }) {
33
33
  super(sdk, {
@@ -35,6 +35,7 @@ class CreditConfiguratorV310Contract extends import_base.BaseContract {
35
35
  name: `CreditConfigurator(${creditManager.name})`,
36
36
  abi
37
37
  });
38
+ this.sdk = sdk;
38
39
  }
39
40
  processLog(log) {
40
41
  switch (log.eventName) {
@@ -69,7 +70,7 @@ class CreditConfiguratorV310Contract extends import_base.BaseContract {
69
70
  });
70
71
  return logs.map(({ args }) => args);
71
72
  }
72
- parseFunctionParams(params) {
73
+ stringifyFunctionParams(params) {
73
74
  switch (params.functionName) {
74
75
  case "addCollateralToken":
75
76
  case "setLiquidationThreshold": {
@@ -113,7 +114,7 @@ class CreditConfiguratorV310Contract extends import_base.BaseContract {
113
114
  ];
114
115
  }
115
116
  default:
116
- return void 0;
117
+ return super.stringifyFunctionParams(params);
117
118
  }
118
119
  }
119
120
  }
@@ -33,9 +33,9 @@ const abi = [
33
33
  ];
34
34
  class CreditFacadeV300Contract extends import_base.BaseContract {
35
35
  underlying;
36
- constructor(sdk, { creditFacade, creditManager }) {
36
+ constructor(options, { creditFacade, creditManager }) {
37
37
  const { baseParams, ...rest } = creditFacade;
38
- super(sdk, {
38
+ super(options, {
39
39
  ...baseParams,
40
40
  name: `CreditFacadeV3(${creditManager.name})`,
41
41
  abi
@@ -44,7 +44,7 @@ class CreditFacadeV300Contract extends import_base.BaseContract {
44
44
  this.underlying = creditManager.underlying;
45
45
  }
46
46
  stateHuman(raw) {
47
- const decimals = this.sdk.tokensMeta.decimals(this.underlying);
47
+ const decimals = this.tokensMeta.decimals(this.underlying);
48
48
  return {
49
49
  ...super.stateHuman(raw),
50
50
  expirable: this.expirable,
@@ -108,13 +108,13 @@ class CreditFacadeV300Contract extends import_base.BaseContract {
108
108
  args: [to, calls, referralCode]
109
109
  });
110
110
  }
111
- parseFunctionParams(params) {
111
+ stringifyFunctionParams(params) {
112
112
  switch (params.functionName) {
113
113
  case "openCreditAccount": {
114
114
  const [onBehalfOf, calls, referralCode] = params.args;
115
115
  return [
116
116
  this.labelAddress(onBehalfOf),
117
- this.sdk.parseMultiCall([...calls]).join(","),
117
+ this.register.parseMultiCall([...calls]).join(","),
118
118
  `${referralCode}`
119
119
  ];
120
120
  }
@@ -122,7 +122,7 @@ class CreditFacadeV300Contract extends import_base.BaseContract {
122
122
  const [creditAccount, calls] = params.args;
123
123
  return [
124
124
  this.labelAddress(creditAccount),
125
- this.sdk.parseMultiCall([...calls]).join(",")
125
+ this.register.parseMultiCall([...calls]).join(",")
126
126
  ];
127
127
  }
128
128
  case "liquidateCreditAccount": {
@@ -130,7 +130,7 @@ class CreditFacadeV300Contract extends import_base.BaseContract {
130
130
  return [
131
131
  this.labelAddress(creditAccount),
132
132
  this.labelAddress(to),
133
- this.sdk.parseMultiCall([...calls]).join(",")
133
+ this.register.parseMultiCall([...calls]).join(",")
134
134
  ];
135
135
  }
136
136
  case "setBotPermissions": {
@@ -145,12 +145,12 @@ class CreditFacadeV300Contract extends import_base.BaseContract {
145
145
  const [deltas] = params.args;
146
146
  return [
147
147
  deltas.map(({ token, amount }) => {
148
- return this.labelAddress(token) + ": " + this.sdk.tokensMeta.formatBN(token, amount);
148
+ return this.labelAddress(token) + ": " + this.tokensMeta.formatBN(token, amount);
149
149
  }).join(",")
150
150
  ];
151
151
  }
152
152
  default:
153
- return void 0;
153
+ return super.stringifyFunctionParams(params);
154
154
  }
155
155
  }
156
156
  }
@@ -33,9 +33,9 @@ const abi = [
33
33
  ];
34
34
  class CreditFacadeV310Contract extends import_base.BaseContract {
35
35
  underlying;
36
- constructor(sdk, { creditFacade, creditManager }) {
36
+ constructor(options, { creditFacade, creditManager }) {
37
37
  const { baseParams, ...rest } = creditFacade;
38
- super(sdk, {
38
+ super(options, {
39
39
  ...baseParams,
40
40
  name: `CreditFacadeV310(${creditManager.name})`,
41
41
  abi
@@ -44,7 +44,7 @@ class CreditFacadeV310Contract extends import_base.BaseContract {
44
44
  this.underlying = creditManager.underlying;
45
45
  }
46
46
  stateHuman(raw) {
47
- const decimals = this.sdk.tokensMeta.decimals(this.underlying);
47
+ const decimals = this.tokensMeta.decimals(this.underlying);
48
48
  return {
49
49
  ...super.stateHuman(raw),
50
50
  expirable: this.expirable,
@@ -105,13 +105,13 @@ class CreditFacadeV310Contract extends import_base.BaseContract {
105
105
  args: [to, calls, referralCode]
106
106
  });
107
107
  }
108
- parseFunctionParams(params) {
108
+ stringifyFunctionParams(params) {
109
109
  switch (params.functionName) {
110
110
  case "openCreditAccount": {
111
111
  const [onBehalfOf, calls, referralCode] = params.args;
112
112
  return [
113
113
  this.labelAddress(onBehalfOf),
114
- this.sdk.parseMultiCall([...calls]).join(","),
114
+ this.register.parseMultiCall([...calls]).join(","),
115
115
  `${referralCode}`
116
116
  ];
117
117
  }
@@ -119,7 +119,7 @@ class CreditFacadeV310Contract extends import_base.BaseContract {
119
119
  const [creditAccount, calls] = params.args;
120
120
  return [
121
121
  this.labelAddress(creditAccount),
122
- this.sdk.parseMultiCall([...calls]).join(",")
122
+ this.register.parseMultiCall([...calls]).join(",")
123
123
  ];
124
124
  }
125
125
  case "liquidateCreditAccount": {
@@ -127,11 +127,11 @@ class CreditFacadeV310Contract extends import_base.BaseContract {
127
127
  return [
128
128
  this.labelAddress(creditAccount),
129
129
  this.labelAddress(to),
130
- this.sdk.parseMultiCall([...calls]).join(",")
130
+ this.register.parseMultiCall([...calls]).join(",")
131
131
  ];
132
132
  }
133
133
  default:
134
- return void 0;
134
+ return super.stringifyFunctionParams(params);
135
135
  }
136
136
  }
137
137
  }
@@ -50,9 +50,12 @@ class CreditManagerV300Contract extends import_base.BaseContract {
50
50
  this.adapters = new import_utils.AddressMap(void 0, "adapters");
51
51
  for (const adapterData of adapters) {
52
52
  try {
53
- const adapter = (0, import_adapters.createAdapter)(this.sdk, adapterData);
54
- adapter.name = `${adapter.name}(${this.name})`;
53
+ const adapter = (0, import_adapters.createAdapter)(sdk, adapterData);
55
54
  this.adapters.upsert(adapter.targetContract, adapter);
55
+ this.register.setAddressLabel(
56
+ adapter.address,
57
+ `${adapter.name}(${this.name})`
58
+ );
56
59
  } catch (e) {
57
60
  throw new Error(`cannot attach adapter: ${e}`, { cause: e });
58
61
  }
@@ -50,9 +50,12 @@ class CreditManagerV310Contract extends import_base.BaseContract {
50
50
  this.adapters = new import_utils.AddressMap(void 0, "adapters");
51
51
  for (const adapterData of adapters) {
52
52
  try {
53
- const adapter = (0, import_adapters.createAdapter)(this.sdk, adapterData);
54
- adapter.name = `${adapter.name}(${this.name})`;
53
+ const adapter = (0, import_adapters.createAdapter)(sdk, adapterData);
55
54
  this.adapters.upsert(adapter.targetContract, adapter);
55
+ this.register.setAddressLabel(
56
+ adapter.address,
57
+ `${adapter.name}(${this.name})`
58
+ );
56
59
  } catch (e) {
57
60
  throw new Error(`cannot attach adapter: ${e}`, { cause: e });
58
61
  }
@@ -36,7 +36,6 @@ var import_createCreditConfigurator = __toESM(require("./createCreditConfigurato
36
36
  var import_createCreditFacade = __toESM(require("./createCreditFacade.js"));
37
37
  var import_createCreditManager = __toESM(require("./createCreditManager.js"));
38
38
  class CreditSuite extends import_base.SDKConstruct {
39
- name;
40
39
  pool;
41
40
  underlying;
42
41
  creditManager;
@@ -44,12 +43,12 @@ class CreditSuite extends import_base.SDKConstruct {
44
43
  creditConfigurator;
45
44
  marketConfigurator;
46
45
  state;
46
+ name;
47
47
  constructor(sdk, marketData, index) {
48
48
  super(sdk);
49
49
  const { creditManagers, pool } = marketData;
50
+ this.name = creditManagers[index].creditManager.name;
50
51
  this.state = creditManagers[index];
51
- const { name } = this.state.creditManager;
52
- this.name = name;
53
52
  this.pool = pool.baseParams.addr;
54
53
  this.underlying = pool.underlying;
55
54
  this.creditManager = (0, import_createCreditManager.default)(sdk, this.state);
@@ -32,6 +32,7 @@ class AliasLossPolicyV310Contract extends import_base.BaseContract {
32
32
  checksEnabled;
33
33
  tokens;
34
34
  priceFeedParams;
35
+ sdk;
35
36
  constructor(sdk, params) {
36
37
  super(sdk, {
37
38
  abi,
@@ -39,6 +40,7 @@ class AliasLossPolicyV310Contract extends import_base.BaseContract {
39
40
  contractType: params.contractType,
40
41
  version: params.version
41
42
  });
43
+ this.sdk = sdk;
42
44
  [this.accessMode, this.checksEnabled, this.tokens, this.priceFeedParams] = (0, import_viem.decodeAbiParameters)(
43
45
  [
44
46
  { name: "accessMode", type: "uint8" },
@@ -59,7 +61,7 @@ class AliasLossPolicyV310Contract extends import_base.BaseContract {
59
61
  );
60
62
  }
61
63
  async getLiquidationData(creditAccount, blockNumber) {
62
- const pfs = await this.sdk.client.readContract({
64
+ const pfs = await this.client.readContract({
63
65
  address: this.address,
64
66
  abi: this.abi,
65
67
  functionName: "getRequiredAliasPriceFeeds",
@@ -25,8 +25,8 @@ var import_generated = require("../../../abi/310/generated.js");
25
25
  var import_base = require("../../base/index.js");
26
26
  const abi = import_generated.iLossPolicyV310Abi;
27
27
  class LossPolicyContract extends import_base.BaseContract {
28
- constructor(sdk, params) {
29
- super(sdk, {
28
+ constructor(options, params) {
29
+ super(options, {
30
30
  abi,
31
31
  addr: params.addr,
32
32
  contractType: params.contractType,
@@ -26,7 +26,7 @@ var import_AliasLossPolicyV310Contract = require("./AliasLossPolicyV310Contract.
26
26
  var import_constants = require("./constants.js");
27
27
  var import_LossPolicyContract = require("./LossPolicyContract.js");
28
28
  function createLossPolicy(sdk, { baseParams }) {
29
- const existing = sdk.contracts.get(baseParams.addr);
29
+ const existing = sdk.getContract(baseParams.addr);
30
30
  if (existing) {
31
31
  return existing;
32
32
  }
@@ -41,6 +41,7 @@ var import_pricefeeds = require("../pricefeeds/index.js");
41
41
  var import_PriceFeedAnswerMap = __toESM(require("./PriceFeedAnswerMap.js"));
42
42
  const ZERO_PRICE_FEED = (0, import_viem.stringToHex)("PRICE_FEED::ZERO", { size: 32 });
43
43
  class PriceOracleBaseContract extends import_base.BaseContract {
44
+ sdk;
44
45
  /**
45
46
  * Mapping Token => [PriceFeed Address, stalenessPeriod]
46
47
  */
@@ -72,6 +73,7 @@ class PriceOracleBaseContract extends import_base.BaseContract {
72
73
  );
73
74
  constructor(sdk, args, data) {
74
75
  super(sdk, args);
76
+ this.sdk = sdk;
75
77
  const { priceFeedMap, priceFeedTree } = data;
76
78
  this.#loadState(priceFeedMap, priceFeedTree, true);
77
79
  }
@@ -89,19 +91,6 @@ class PriceOracleBaseContract extends import_base.BaseContract {
89
91
  reserve ? this.reservePriceFeeds.get(t)?.priceFeed : void 0
90
92
  ]).filter((f) => !!f);
91
93
  }
92
- /**
93
- * Generates updates for all updateable price feeds in this oracle (including dependencies)
94
- * @returns
95
- */
96
- async updatePriceFeeds() {
97
- const updatables = [];
98
- for (const node of this.#priceFeedTree.values()) {
99
- if (node.updatable) {
100
- updatables.push(this.sdk.priceFeeds.mustGet(node.baseParams.addr));
101
- }
102
- }
103
- return this.sdk.priceFeeds.generatePriceFeedsUpdateTxs(updatables);
104
- }
105
94
  /**
106
95
  * Gets main price for given token
107
96
  * Throws if token price feed is not found or answer is not successful
@@ -141,9 +130,9 @@ class PriceOracleBaseContract extends import_base.BaseContract {
141
130
  return amount;
142
131
  }
143
132
  const fromPrice = reserve ? this.reservePrice(from) : this.mainPrice(from);
144
- const fromScale = 10n ** BigInt(this.sdk.tokensMeta.decimals(from));
133
+ const fromScale = 10n ** BigInt(this.tokensMeta.decimals(from));
145
134
  const toPrice = reserve ? this.reservePrice(to) : this.mainPrice(to);
146
- const toScale = 10n ** BigInt(this.sdk.tokensMeta.decimals(to));
135
+ const toScale = 10n ** BigInt(this.tokensMeta.decimals(to));
147
136
  return amount * fromPrice * toScale / (toPrice * fromScale);
148
137
  }
149
138
  /**
@@ -154,7 +143,7 @@ class PriceOracleBaseContract extends import_base.BaseContract {
154
143
  */
155
144
  convertToUSD(from, amount, reserve = false) {
156
145
  const price = reserve ? this.reservePrice(from) : this.mainPrice(from);
157
- const scale = 10n ** BigInt(this.sdk.tokensMeta.decimals(from));
146
+ const scale = 10n ** BigInt(this.tokensMeta.decimals(from));
158
147
  return amount * price / scale;
159
148
  }
160
149
  /**
@@ -165,16 +154,9 @@ class PriceOracleBaseContract extends import_base.BaseContract {
165
154
  */
166
155
  convertFromUSD(to, amount, reserve = false) {
167
156
  const price = reserve ? this.reservePrice(to) : this.mainPrice(to);
168
- const scale = 10n ** BigInt(this.sdk.tokensMeta.decimals(to));
157
+ const scale = 10n ** BigInt(this.tokensMeta.decimals(to));
169
158
  return amount * scale / price;
170
159
  }
171
- /**
172
- * Loads new prices for this oracle from PriceFeedCompressor
173
- * Will (re)create price feeds if needed
174
- */
175
- async updatePrices() {
176
- await this.sdk.marketRegister.updatePrices([this.address]);
177
- }
178
160
  /**
179
161
  * All price feed tree nodes known to this oracle
180
162
  */
@@ -263,8 +245,8 @@ class PriceOracleBaseContract extends import_base.BaseContract {
263
245
  this.dirty = false;
264
246
  }
265
247
  #labelPriceFeed(address, usage, token) {
266
- this.sdk.addressLabels.set(address, (oldLabel) => {
267
- const symbol = this.sdk.tokensMeta.symbol(token);
248
+ this.sdk.setAddressLabel(address, (oldLabel) => {
249
+ const symbol = this.tokensMeta.symbol(token);
268
250
  let pricefeedTag = `${symbol}.${usage}`;
269
251
  if (oldLabel) {
270
252
  const oldLabelParts = new Set(oldLabel.split(", "));
@@ -27,7 +27,7 @@ var import_PriceOracleV300Contract = require("./PriceOracleV300Contract.js");
27
27
  var import_PriceOracleV310Contract = require("./PriceOracleV310Contract.js");
28
28
  function getOrCreatePriceOracle(sdk, data) {
29
29
  const { version, addr } = data.baseParams;
30
- const existing = sdk.contracts.get(addr);
30
+ const existing = sdk.getContract(addr);
31
31
  let result;
32
32
  if (existing) {
33
33
  result = tryExtendExistingOracle(existing, data);
@@ -32,8 +32,8 @@ class GaugeContract extends import_base.BaseContract {
32
32
  epochFrozen;
33
33
  epochLastUpdate;
34
34
  rates;
35
- constructor(sdk, pool, gauge) {
36
- super(sdk, {
35
+ constructor(options, pool, gauge) {
36
+ super(options, {
37
37
  ...gauge.baseParams,
38
38
  name: `Gauge(${pool.name})`,
39
39
  abi: import_v300.iGaugeV300Abi
@@ -34,8 +34,8 @@ class LinearInterestRateModelContract extends import_base.BaseContract {
34
34
  Rslope2;
35
35
  Rslope3;
36
36
  isBorrowingMoreU2Forbidden;
37
- constructor(sdk, params) {
38
- super(sdk, {
37
+ constructor(options, params) {
38
+ super(options, {
39
39
  ...params.baseParams,
40
40
  name: "LinearInterestRateModel",
41
41
  abi