@gearbox-protocol/sdk 11.11.3 → 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 (457) 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 +26 -111
  77. package/dist/cjs/plugins/bots/PartialLiquidationBotV310Contract.js +38 -6
  78. package/dist/cjs/plugins/bots/deserializePartialLiquidationBotParams.js +49 -0
  79. package/dist/cjs/plugins/bots/index.js +0 -2
  80. package/dist/cjs/plugins/bots/types.js +3 -8
  81. package/dist/cjs/plugins/zappers/ZappersPlugin.js +1 -1
  82. package/dist/cjs/sdk/GearboxSDK.js +8 -110
  83. package/dist/cjs/sdk/accountMigration/AbstractMigrateCreditAccountsService.js +1 -4
  84. package/dist/cjs/sdk/accounts/AbstractCreditAccountsService.js +6 -8
  85. package/dist/cjs/sdk/base/BaseContract.js +195 -80
  86. package/dist/cjs/sdk/base/ChainContractsRegister.js +135 -0
  87. package/dist/cjs/sdk/base/Construct.js +87 -0
  88. package/dist/cjs/sdk/base/SDKConstruct.js +3 -29
  89. package/dist/cjs/sdk/base/TokensMeta.js +4 -4
  90. package/dist/cjs/sdk/base/index.js +4 -2
  91. package/dist/cjs/sdk/core/BotListV3Contract.js +2 -2
  92. package/dist/cjs/sdk/core/GearStakingV3Contract.js +2 -2
  93. package/dist/cjs/sdk/core/address-provider/AbstractAddressProviderContract.js +2 -2
  94. package/dist/cjs/sdk/core/address-provider/AddressProviderV300Contract.js +11 -6
  95. package/dist/cjs/sdk/core/address-provider/AddressProviderV310Contract.js +4 -4
  96. package/dist/cjs/sdk/market/MarketConfiguratorContract.js +5 -5
  97. package/dist/cjs/sdk/market/MarketRegister.js +7 -9
  98. package/dist/cjs/sdk/market/MarketSuite.js +2 -2
  99. package/dist/cjs/sdk/market/credit/CreditConfiguratorV300Contract.js +4 -3
  100. package/dist/cjs/sdk/market/credit/CreditConfiguratorV310Contract.js +4 -3
  101. package/dist/cjs/sdk/market/credit/CreditFacadeV300Contract.js +9 -9
  102. package/dist/cjs/sdk/market/credit/CreditFacadeV310Contract.js +8 -8
  103. package/dist/cjs/sdk/market/credit/CreditManagerV300Contract.js +5 -2
  104. package/dist/cjs/sdk/market/credit/CreditManagerV310Contract.js +5 -2
  105. package/dist/cjs/sdk/market/credit/CreditSuite.js +2 -3
  106. package/dist/cjs/sdk/market/loss-policy/AliasLossPolicyV310Contract.js +3 -1
  107. package/dist/cjs/sdk/market/loss-policy/LossPolicyContract.js +2 -2
  108. package/dist/cjs/sdk/market/loss-policy/createLossPolicy.js +1 -1
  109. package/dist/cjs/sdk/market/oracle/PriceOracleBaseContract.js +8 -26
  110. package/dist/cjs/sdk/market/oracle/createPriceOracle.js +1 -1
  111. package/dist/cjs/sdk/market/pool/GaugeContract.js +2 -2
  112. package/dist/cjs/sdk/market/pool/LinearInterestRateModelContract.js +2 -2
  113. package/dist/cjs/sdk/market/pool/PoolQuotaKeeperV300Contract.js +2 -2
  114. package/dist/cjs/sdk/market/pool/PoolQuotaKeeperV310Contract.js +2 -2
  115. package/dist/cjs/sdk/market/pool/PoolSuite.js +1 -1
  116. package/dist/cjs/sdk/market/pool/PoolV300Contract.js +5 -5
  117. package/dist/cjs/sdk/market/pool/PoolV310Contract.js +5 -5
  118. package/dist/cjs/sdk/market/pool/TumblerContract.js +2 -2
  119. package/dist/cjs/sdk/market/pool/createInterestRateModel.js +11 -15
  120. package/dist/cjs/sdk/market/pricefeeds/AbstractLPPriceFeed.js +2 -22
  121. package/dist/cjs/sdk/market/pricefeeds/AbstractPriceFeed.js +3 -3
  122. package/dist/cjs/sdk/market/pricefeeds/BalancerStablePriceFeed.js +2 -9
  123. package/dist/cjs/sdk/market/pricefeeds/BalancerWeightedPriceFeed.js +2 -9
  124. package/dist/cjs/sdk/market/pricefeeds/BoundedPriceFeed.js +6 -2
  125. package/dist/cjs/sdk/market/pricefeeds/CompositePriceFeed.js +2 -2
  126. package/dist/cjs/sdk/market/pricefeeds/ConstantPriceFeed.js +2 -2
  127. package/dist/cjs/sdk/market/pricefeeds/CurveCryptoPriceFeed.js +2 -9
  128. package/dist/cjs/sdk/market/pricefeeds/CurveStablePriceFeed.js +2 -9
  129. package/dist/cjs/sdk/market/pricefeeds/CurveUSDPriceFeed.js +2 -9
  130. package/dist/cjs/sdk/market/pricefeeds/Erc4626PriceFeed.js +2 -18
  131. package/dist/cjs/sdk/market/pricefeeds/ExternalPriceFeed.js +2 -2
  132. package/dist/cjs/sdk/market/pricefeeds/MellowLRTPriceFeed.js +2 -10
  133. package/dist/cjs/sdk/market/pricefeeds/PendleTWAPPTPriceFeed.js +2 -2
  134. package/dist/cjs/sdk/market/pricefeeds/PriceFeedRef.js +6 -4
  135. package/dist/cjs/sdk/market/pricefeeds/PriceFeedsRegister.js +2 -3
  136. package/dist/cjs/sdk/market/pricefeeds/PythPriceFeed.js +2 -2
  137. package/dist/cjs/sdk/market/pricefeeds/RedstonePriceFeed.js +3 -3
  138. package/dist/cjs/sdk/market/pricefeeds/WstETHPriceFeed.js +2 -9
  139. package/dist/cjs/sdk/market/pricefeeds/YearnPriceFeed.js +2 -9
  140. package/dist/cjs/sdk/market/pricefeeds/ZeroPriceFeed.js +2 -2
  141. package/dist/cjs/sdk/market/pricefeeds/updates/PriceUpdatesCache.js +17 -0
  142. package/dist/cjs/sdk/market/pricefeeds/updates/PythUpdater.js +7 -9
  143. package/dist/cjs/sdk/market/pricefeeds/updates/RedstoneUpdater.js +10 -12
  144. package/dist/cjs/sdk/router/AbstractRouterContract.js +5 -0
  145. package/dist/cjs/sdk/router/RouterV310Contract.js +3 -3
  146. package/dist/cjs/sdk/router/createRouter.js +4 -0
  147. package/dist/cjs/sdk/utils/abi-decode.js +58 -0
  148. package/dist/cjs/sdk/utils/index.js +2 -0
  149. package/dist/esm/dev/create2.js +2 -2
  150. package/dist/esm/dev/mint/AbstractMinter.js +3 -7
  151. package/dist/esm/dev/mint/DealMinter.js +0 -3
  152. package/dist/esm/dev/mint/DirectMinter.js +0 -3
  153. package/dist/esm/dev/mint/FallbackMinter.js +1 -1
  154. package/dist/esm/dev/mint/TransferMinter.js +0 -3
  155. package/dist/esm/permissionless/bindings/address-provider.js +7 -7
  156. package/dist/esm/permissionless/bindings/bytecode-repository.js +22 -24
  157. package/dist/esm/permissionless/bindings/compressors/token-compressor.js +3 -3
  158. package/dist/esm/permissionless/bindings/compressors/withdrawal-compressor.js +10 -16
  159. package/dist/esm/permissionless/bindings/cross-chain-multisig.js +20 -16
  160. package/dist/esm/permissionless/bindings/factory/abstract-factory.js +9 -4
  161. package/dist/esm/permissionless/bindings/governance/batches-chain.js +3 -3
  162. package/dist/esm/permissionless/bindings/governance/governor.js +28 -47
  163. package/dist/esm/permissionless/bindings/governance/timelock.js +3 -3
  164. package/dist/esm/permissionless/bindings/index.js +0 -1
  165. package/dist/esm/permissionless/bindings/instance-manager.js +53 -69
  166. package/dist/esm/permissionless/bindings/market-configurator-factory.js +3 -3
  167. package/dist/esm/permissionless/bindings/market-configurator.js +65 -137
  168. package/dist/esm/permissionless/bindings/price-feed-store.js +8 -14
  169. package/dist/esm/permissionless/bindings/router/routing-manager.js +8 -14
  170. package/dist/esm/permissionless/bindings/treasury-splitter.js +15 -22
  171. package/dist/esm/permissionless/core/raw-tx.js +1 -1
  172. package/dist/esm/permissionless/utils/format.js +1 -1
  173. package/dist/esm/permissionless/utils/governance/timelock-txs.js +1 -1
  174. package/dist/esm/permissionless/utils/index.js +0 -1
  175. package/dist/esm/permissionless/utils/price-update/get-price-feeds.js +4 -2
  176. package/dist/esm/permissionless/utils/price-update/get-price-update-tx.js +1 -1
  177. package/dist/esm/permissionless/utils/price-update/get-prices.js +1 -2
  178. package/dist/esm/permissionless/utils/price-update/get-updatable-feeds.js +1 -1
  179. package/dist/esm/plugins/adapters/contracts/AbstractAdapter.js +2 -2
  180. package/dist/esm/plugins/adapters/contracts/AccountMigratorAdapterContract.js +2 -2
  181. package/dist/esm/plugins/adapters/contracts/BalancerV2VaultAdapterContract.js +2 -2
  182. package/dist/esm/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +2 -2
  183. package/dist/esm/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +2 -2
  184. package/dist/esm/plugins/adapters/contracts/CamelotV3AdapterContract.js +2 -2
  185. package/dist/esm/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +2 -2
  186. package/dist/esm/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +2 -2
  187. package/dist/esm/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +2 -2
  188. package/dist/esm/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +2 -2
  189. package/dist/esm/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +2 -2
  190. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterDeposit.js +2 -2
  191. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +2 -2
  192. package/dist/esm/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +2 -2
  193. package/dist/esm/plugins/adapters/contracts/DaiUsdsAdapterContract.js +2 -2
  194. package/dist/esm/plugins/adapters/contracts/ERC4626AdapterContract.js +2 -2
  195. package/dist/esm/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +2 -2
  196. package/dist/esm/plugins/adapters/contracts/EqualizerRouterAdapterContract.js +2 -2
  197. package/dist/esm/plugins/adapters/contracts/FluidDexAdapterContract.js +2 -2
  198. package/dist/esm/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +2 -2
  199. package/dist/esm/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +2 -2
  200. package/dist/esm/plugins/adapters/contracts/InfraredVaultAdapterContract.js +2 -2
  201. package/dist/esm/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +2 -2
  202. package/dist/esm/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +2 -2
  203. package/dist/esm/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.js +2 -2
  204. package/dist/esm/plugins/adapters/contracts/LidoV1AdapterContract.js +2 -2
  205. package/dist/esm/plugins/adapters/contracts/MellowClaimerAdapterContract.js +2 -2
  206. package/dist/esm/plugins/adapters/contracts/MellowDVVAdapterContract.js +2 -2
  207. package/dist/esm/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +2 -2
  208. package/dist/esm/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +2 -2
  209. package/dist/esm/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +2 -2
  210. package/dist/esm/plugins/adapters/contracts/MellowVaultAdapterContract.js +2 -2
  211. package/dist/esm/plugins/adapters/contracts/MellowWrapperAdapterContract.js +2 -2
  212. package/dist/esm/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +2 -2
  213. package/dist/esm/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +2 -2
  214. package/dist/esm/plugins/adapters/contracts/PendleRouterAdapterContract.js +2 -2
  215. package/dist/esm/plugins/adapters/contracts/StakingRewardsAdapterContract.js +2 -2
  216. package/dist/esm/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +2 -2
  217. package/dist/esm/plugins/adapters/contracts/UniswapV2AdapterContract.js +5 -5
  218. package/dist/esm/plugins/adapters/contracts/UniswapV3AdapterContract.js +22 -22
  219. package/dist/esm/plugins/adapters/contracts/UniswapV4AdapterContract.js +2 -2
  220. package/dist/esm/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +2 -2
  221. package/dist/esm/plugins/adapters/contracts/VelodromeV2AdapterContract.js +2 -2
  222. package/dist/esm/plugins/adapters/contracts/WstETHV1AdapterContract.js +2 -2
  223. package/dist/esm/plugins/adapters/contracts/YearnV2AdapterContract.js +2 -2
  224. package/dist/esm/plugins/bots/BotsPlugin.js +28 -121
  225. package/dist/esm/plugins/bots/PartialLiquidationBotV310Contract.js +41 -6
  226. package/dist/esm/plugins/bots/deserializePartialLiquidationBotParams.js +29 -0
  227. package/dist/esm/plugins/bots/index.js +0 -1
  228. package/dist/esm/plugins/bots/types.js +2 -7
  229. package/dist/esm/plugins/zappers/ZappersPlugin.js +1 -1
  230. package/dist/esm/sdk/GearboxSDK.js +10 -112
  231. package/dist/esm/sdk/accountMigration/AbstractMigrateCreditAccountsService.js +1 -4
  232. package/dist/esm/sdk/accounts/AbstractCreditAccountsService.js +7 -9
  233. package/dist/esm/sdk/base/BaseContract.js +202 -81
  234. package/dist/esm/sdk/base/ChainContractsRegister.js +111 -0
  235. package/dist/esm/sdk/base/Construct.js +63 -0
  236. package/dist/esm/sdk/base/SDKConstruct.js +3 -29
  237. package/dist/esm/sdk/base/TokensMeta.js +4 -4
  238. package/dist/esm/sdk/base/index.js +2 -1
  239. package/dist/esm/sdk/core/BotListV3Contract.js +2 -2
  240. package/dist/esm/sdk/core/GearStakingV3Contract.js +2 -2
  241. package/dist/esm/sdk/core/address-provider/AbstractAddressProviderContract.js +2 -2
  242. package/dist/esm/sdk/core/address-provider/AddressProviderV300Contract.js +11 -6
  243. package/dist/esm/sdk/core/address-provider/AddressProviderV310Contract.js +4 -4
  244. package/dist/esm/sdk/market/MarketConfiguratorContract.js +5 -5
  245. package/dist/esm/sdk/market/MarketRegister.js +8 -10
  246. package/dist/esm/sdk/market/MarketSuite.js +2 -2
  247. package/dist/esm/sdk/market/credit/CreditConfiguratorV300Contract.js +4 -3
  248. package/dist/esm/sdk/market/credit/CreditConfiguratorV310Contract.js +4 -3
  249. package/dist/esm/sdk/market/credit/CreditFacadeV300Contract.js +9 -9
  250. package/dist/esm/sdk/market/credit/CreditFacadeV310Contract.js +8 -8
  251. package/dist/esm/sdk/market/credit/CreditManagerV300Contract.js +5 -2
  252. package/dist/esm/sdk/market/credit/CreditManagerV310Contract.js +5 -2
  253. package/dist/esm/sdk/market/credit/CreditSuite.js +2 -3
  254. package/dist/esm/sdk/market/loss-policy/AliasLossPolicyV310Contract.js +3 -1
  255. package/dist/esm/sdk/market/loss-policy/LossPolicyContract.js +5 -3
  256. package/dist/esm/sdk/market/loss-policy/createLossPolicy.js +1 -1
  257. package/dist/esm/sdk/market/oracle/PriceOracleBaseContract.js +8 -26
  258. package/dist/esm/sdk/market/oracle/createPriceOracle.js +1 -1
  259. package/dist/esm/sdk/market/pool/GaugeContract.js +2 -2
  260. package/dist/esm/sdk/market/pool/LinearInterestRateModelContract.js +2 -2
  261. package/dist/esm/sdk/market/pool/PoolQuotaKeeperV300Contract.js +2 -2
  262. package/dist/esm/sdk/market/pool/PoolQuotaKeeperV310Contract.js +2 -2
  263. package/dist/esm/sdk/market/pool/PoolSuite.js +1 -1
  264. package/dist/esm/sdk/market/pool/PoolV300Contract.js +5 -5
  265. package/dist/esm/sdk/market/pool/PoolV310Contract.js +5 -5
  266. package/dist/esm/sdk/market/pool/TumblerContract.js +2 -2
  267. package/dist/esm/sdk/market/pool/createInterestRateModel.js +11 -15
  268. package/dist/esm/sdk/market/pricefeeds/AbstractLPPriceFeed.js +2 -22
  269. package/dist/esm/sdk/market/pricefeeds/AbstractPriceFeed.js +3 -3
  270. package/dist/esm/sdk/market/pricefeeds/BalancerStablePriceFeed.js +3 -13
  271. package/dist/esm/sdk/market/pricefeeds/BalancerWeightedPriceFeed.js +3 -13
  272. package/dist/esm/sdk/market/pricefeeds/BoundedPriceFeed.js +6 -2
  273. package/dist/esm/sdk/market/pricefeeds/CompositePriceFeed.js +2 -2
  274. package/dist/esm/sdk/market/pricefeeds/ConstantPriceFeed.js +2 -2
  275. package/dist/esm/sdk/market/pricefeeds/CurveCryptoPriceFeed.js +3 -10
  276. package/dist/esm/sdk/market/pricefeeds/CurveStablePriceFeed.js +3 -10
  277. package/dist/esm/sdk/market/pricefeeds/CurveUSDPriceFeed.js +3 -10
  278. package/dist/esm/sdk/market/pricefeeds/Erc4626PriceFeed.js +2 -18
  279. package/dist/esm/sdk/market/pricefeeds/ExternalPriceFeed.js +2 -2
  280. package/dist/esm/sdk/market/pricefeeds/MellowLRTPriceFeed.js +3 -11
  281. package/dist/esm/sdk/market/pricefeeds/PendleTWAPPTPriceFeed.js +2 -2
  282. package/dist/esm/sdk/market/pricefeeds/PriceFeedRef.js +7 -5
  283. package/dist/esm/sdk/market/pricefeeds/PriceFeedsRegister.js +3 -9
  284. package/dist/esm/sdk/market/pricefeeds/PythPriceFeed.js +2 -2
  285. package/dist/esm/sdk/market/pricefeeds/RedstonePriceFeed.js +3 -3
  286. package/dist/esm/sdk/market/pricefeeds/WstETHPriceFeed.js +3 -10
  287. package/dist/esm/sdk/market/pricefeeds/YearnPriceFeed.js +3 -10
  288. package/dist/esm/sdk/market/pricefeeds/ZeroPriceFeed.js +2 -2
  289. package/dist/esm/sdk/market/pricefeeds/updates/PriceUpdatesCache.js +17 -0
  290. package/dist/esm/sdk/market/pricefeeds/updates/PythUpdater.js +8 -10
  291. package/dist/esm/sdk/market/pricefeeds/updates/RedstoneUpdater.js +11 -13
  292. package/dist/esm/sdk/router/AbstractRouterContract.js +5 -0
  293. package/dist/esm/sdk/router/RouterV310Contract.js +3 -3
  294. package/dist/esm/sdk/router/createRouter.js +4 -0
  295. package/dist/esm/sdk/utils/abi-decode.js +37 -0
  296. package/dist/esm/sdk/utils/index.js +1 -0
  297. package/dist/types/dev/create2.d.ts +2 -2
  298. package/dist/types/dev/mint/AbstractMinter.d.ts +3 -4
  299. package/dist/types/dev/mint/DealMinter.d.ts +0 -3
  300. package/dist/types/dev/mint/DirectMinter.d.ts +0 -3
  301. package/dist/types/dev/mint/TransferMinter.d.ts +0 -3
  302. package/dist/types/permissionless/bindings/address-provider.d.ts +4 -255
  303. package/dist/types/permissionless/bindings/bytecode-repository.d.ts +5 -6
  304. package/dist/types/permissionless/bindings/compressors/token-compressor.d.ts +3 -3
  305. package/dist/types/permissionless/bindings/compressors/withdrawal-compressor.d.ts +4 -5
  306. package/dist/types/permissionless/bindings/cross-chain-multisig.d.ts +7 -7
  307. package/dist/types/permissionless/bindings/factory/abstract-factory.d.ts +1 -1
  308. package/dist/types/permissionless/bindings/governance/batches-chain.d.ts +3 -4
  309. package/dist/types/permissionless/bindings/governance/governor.d.ts +6 -7
  310. package/dist/types/permissionless/bindings/governance/timelock.d.ts +3 -3
  311. package/dist/types/permissionless/bindings/governance/types.d.ts +1 -1
  312. package/dist/types/permissionless/bindings/index.d.ts +0 -1
  313. package/dist/types/permissionless/bindings/instance-manager.d.ts +6 -7
  314. package/dist/types/permissionless/bindings/market-configurator-factory.d.ts +4 -4
  315. package/dist/types/permissionless/bindings/market-configurator.d.ts +6 -6
  316. package/dist/types/permissionless/bindings/price-feed-store.d.ts +6 -7
  317. package/dist/types/permissionless/bindings/router/routing-manager.d.ts +4 -5
  318. package/dist/types/permissionless/bindings/treasury-splitter.d.ts +5 -6
  319. package/dist/types/permissionless/core/proposal.d.ts +1 -7
  320. package/dist/types/permissionless/utils/create2.d.ts +1 -1
  321. package/dist/types/permissionless/utils/governance/batch.d.ts +1 -1
  322. package/dist/types/permissionless/utils/index.d.ts +0 -1
  323. package/dist/types/permissionless/utils/price-update/get-price-feeds.d.ts +3 -3
  324. package/dist/types/permissionless/utils/price-update/get-price-update-tx.d.ts +2 -2
  325. package/dist/types/plugins/adapters/contracts/AbstractAdapter.d.ts +2 -2
  326. package/dist/types/plugins/adapters/contracts/AccountMigratorAdapterContract.d.ts +2 -2
  327. package/dist/types/plugins/adapters/contracts/BalancerV2VaultAdapterContract.d.ts +2 -2
  328. package/dist/types/plugins/adapters/contracts/BalancerV3RouterAdapterContract.d.ts +2 -2
  329. package/dist/types/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.d.ts +2 -2
  330. package/dist/types/plugins/adapters/contracts/CamelotV3AdapterContract.d.ts +2 -2
  331. package/dist/types/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.d.ts +2 -2
  332. package/dist/types/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.d.ts +2 -2
  333. package/dist/types/plugins/adapters/contracts/Curve2AssetsAdapterContract.d.ts +2 -2
  334. package/dist/types/plugins/adapters/contracts/Curve3AssetsAdapterContract.d.ts +2 -2
  335. package/dist/types/plugins/adapters/contracts/Curve4AssetsAdapterContract.d.ts +2 -2
  336. package/dist/types/plugins/adapters/contracts/CurveV1AdapterDeposit.d.ts +2 -2
  337. package/dist/types/plugins/adapters/contracts/CurveV1AdapterStETHContract.d.ts +2 -2
  338. package/dist/types/plugins/adapters/contracts/CurveV1StableNGAdapterContract.d.ts +2 -2
  339. package/dist/types/plugins/adapters/contracts/DaiUsdsAdapterContract.d.ts +2 -2
  340. package/dist/types/plugins/adapters/contracts/ERC4626AdapterContract.d.ts +2 -2
  341. package/dist/types/plugins/adapters/contracts/ERC4626ReferralAdapterContract.d.ts +2 -2
  342. package/dist/types/plugins/adapters/contracts/EqualizerRouterAdapterContract.d.ts +2 -2
  343. package/dist/types/plugins/adapters/contracts/FluidDexAdapterContract.d.ts +2 -2
  344. package/dist/types/plugins/adapters/contracts/InfinifiGatewayAdapterContract.d.ts +2 -2
  345. package/dist/types/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.d.ts +2 -2
  346. package/dist/types/plugins/adapters/contracts/InfraredVaultAdapterContract.d.ts +2 -2
  347. package/dist/types/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.d.ts +2 -2
  348. package/dist/types/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.d.ts +2 -2
  349. package/dist/types/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.d.ts +2 -2
  350. package/dist/types/plugins/adapters/contracts/LidoV1AdapterContract.d.ts +2 -2
  351. package/dist/types/plugins/adapters/contracts/MellowClaimerAdapterContract.d.ts +2 -2
  352. package/dist/types/plugins/adapters/contracts/MellowDVVAdapterContract.d.ts +2 -2
  353. package/dist/types/plugins/adapters/contracts/MellowDepositQueueAdapterContract.d.ts +2 -2
  354. package/dist/types/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.d.ts +2 -2
  355. package/dist/types/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.d.ts +2 -2
  356. package/dist/types/plugins/adapters/contracts/MellowVaultAdapterContract.d.ts +2 -2
  357. package/dist/types/plugins/adapters/contracts/MellowWrapperAdapterContract.d.ts +2 -2
  358. package/dist/types/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.d.ts +2 -2
  359. package/dist/types/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +2 -2
  360. package/dist/types/plugins/adapters/contracts/PendleRouterAdapterContract.d.ts +2 -2
  361. package/dist/types/plugins/adapters/contracts/StakingRewardsAdapterContract.d.ts +2 -2
  362. package/dist/types/plugins/adapters/contracts/TraderJoeRouterAdapterContract.d.ts +2 -2
  363. package/dist/types/plugins/adapters/contracts/UniswapV2AdapterContract.d.ts +3 -3
  364. package/dist/types/plugins/adapters/contracts/UniswapV3AdapterContract.d.ts +3 -3
  365. package/dist/types/plugins/adapters/contracts/UniswapV4AdapterContract.d.ts +2 -2
  366. package/dist/types/plugins/adapters/contracts/UpshiftVaultAdapterContract.d.ts +2 -2
  367. package/dist/types/plugins/adapters/contracts/VelodromeV2AdapterContract.d.ts +2 -2
  368. package/dist/types/plugins/adapters/contracts/WstETHV1AdapterContract.d.ts +2 -2
  369. package/dist/types/plugins/adapters/contracts/YearnV2AdapterContract.d.ts +2 -2
  370. package/dist/types/plugins/bots/BotsPlugin.d.ts +3 -13
  371. package/dist/types/plugins/bots/PartialLiquidationBotV310Contract.d.ts +19 -6
  372. package/dist/types/plugins/bots/deserializePartialLiquidationBotParams.d.ts +3 -0
  373. package/dist/types/plugins/bots/index.d.ts +0 -1
  374. package/dist/types/plugins/bots/types.d.ts +8 -21
  375. package/dist/types/sdk/GearboxSDK.d.ts +5 -76
  376. package/dist/types/sdk/accountMigration/types.d.ts +1 -2
  377. package/dist/types/sdk/accounts/types.d.ts +4 -3
  378. package/dist/types/sdk/base/BaseContract.d.ts +72 -28
  379. package/dist/types/sdk/base/ChainContractsRegister.d.ts +57 -0
  380. package/dist/types/sdk/base/Construct.d.ts +38 -0
  381. package/dist/types/sdk/base/PlaceholderContract.d.ts +2 -2
  382. package/dist/types/sdk/base/SDKConstruct.d.ts +2 -16
  383. package/dist/types/sdk/base/TokensMeta.d.ts +2 -3
  384. package/dist/types/sdk/base/index.d.ts +2 -1
  385. package/dist/types/sdk/base/types.d.ts +50 -0
  386. package/dist/types/sdk/core/BotListV3Contract.d.ts +1 -1
  387. package/dist/types/sdk/core/GearStakingV3Contract.d.ts +1 -1
  388. package/dist/types/sdk/core/address-provider/AbstractAddressProviderContract.d.ts +3 -4
  389. package/dist/types/sdk/core/address-provider/AddressProviderV300Contract.d.ts +3 -3
  390. package/dist/types/sdk/core/address-provider/AddressProviderV310Contract.d.ts +3 -3
  391. package/dist/types/sdk/market/MarketConfiguratorContract.d.ts +2 -2
  392. package/dist/types/sdk/market/credit/CreditConfiguratorV300Contract.d.ts +3 -3
  393. package/dist/types/sdk/market/credit/CreditConfiguratorV310Contract.d.ts +3 -3
  394. package/dist/types/sdk/market/credit/CreditFacadeV300Contract.d.ts +3 -4
  395. package/dist/types/sdk/market/credit/CreditFacadeV310Contract.d.ts +3 -4
  396. package/dist/types/sdk/market/credit/CreditManagerV300Contract.d.ts +1 -1
  397. package/dist/types/sdk/market/credit/CreditManagerV310Contract.d.ts +1 -1
  398. package/dist/types/sdk/market/credit/CreditSuite.d.ts +1 -1
  399. package/dist/types/sdk/market/credit/types.d.ts +1 -2
  400. package/dist/types/sdk/market/loss-policy/AliasLossPolicyV310Contract.d.ts +1 -0
  401. package/dist/types/sdk/market/loss-policy/LossPolicyContract.d.ts +2 -3
  402. package/dist/types/sdk/market/oracle/PriceOracleBaseContract.d.ts +3 -12
  403. package/dist/types/sdk/market/oracle/types.d.ts +0 -10
  404. package/dist/types/sdk/market/pool/GaugeContract.d.ts +2 -3
  405. package/dist/types/sdk/market/pool/LinearInterestRateModelContract.d.ts +2 -3
  406. package/dist/types/sdk/market/pool/PoolQuotaKeeperV300Contract.d.ts +2 -3
  407. package/dist/types/sdk/market/pool/PoolQuotaKeeperV310Contract.d.ts +2 -3
  408. package/dist/types/sdk/market/pool/PoolV300Contract.d.ts +4 -5
  409. package/dist/types/sdk/market/pool/PoolV310Contract.d.ts +4 -5
  410. package/dist/types/sdk/market/pool/TumblerContract.d.ts +2 -3
  411. package/dist/types/sdk/market/pricefeeds/AbstractLPPriceFeed.d.ts +3 -8
  412. package/dist/types/sdk/market/pricefeeds/AbstractPriceFeed.d.ts +2 -3
  413. package/dist/types/sdk/market/pricefeeds/BalancerStablePriceFeed.d.ts +2 -3
  414. package/dist/types/sdk/market/pricefeeds/BalancerWeightedPriceFeed.d.ts +2 -3
  415. package/dist/types/sdk/market/pricefeeds/BoundedPriceFeed.d.ts +2 -2
  416. package/dist/types/sdk/market/pricefeeds/CompositePriceFeed.d.ts +2 -2
  417. package/dist/types/sdk/market/pricefeeds/ConstantPriceFeed.d.ts +2 -2
  418. package/dist/types/sdk/market/pricefeeds/CurveCryptoPriceFeed.d.ts +2 -3
  419. package/dist/types/sdk/market/pricefeeds/CurveStablePriceFeed.d.ts +2 -3
  420. package/dist/types/sdk/market/pricefeeds/CurveUSDPriceFeed.d.ts +2 -3
  421. package/dist/types/sdk/market/pricefeeds/Erc4626PriceFeed.d.ts +2 -3
  422. package/dist/types/sdk/market/pricefeeds/ExternalPriceFeed.d.ts +2 -2
  423. package/dist/types/sdk/market/pricefeeds/MellowLRTPriceFeed.d.ts +2 -3
  424. package/dist/types/sdk/market/pricefeeds/PendleTWAPPTPriceFeed.d.ts +2 -2
  425. package/dist/types/sdk/market/pricefeeds/PriceFeedRef.d.ts +3 -4
  426. package/dist/types/sdk/market/pricefeeds/PriceFeedsRegister.d.ts +1 -2
  427. package/dist/types/sdk/market/pricefeeds/PythPriceFeed.d.ts +2 -2
  428. package/dist/types/sdk/market/pricefeeds/RedstonePriceFeed.d.ts +2 -2
  429. package/dist/types/sdk/market/pricefeeds/WstETHPriceFeed.d.ts +2 -3
  430. package/dist/types/sdk/market/pricefeeds/YearnPriceFeed.d.ts +2 -3
  431. package/dist/types/sdk/market/pricefeeds/ZeroPriceFeed.d.ts +2 -2
  432. package/dist/types/sdk/market/pricefeeds/types.d.ts +0 -5
  433. package/dist/types/sdk/market/pricefeeds/updates/PriceUpdatesCache.d.ts +8 -1
  434. package/dist/types/sdk/router/AbstractRouterContract.d.ts +4 -1
  435. package/dist/types/sdk/router/types.d.ts +1 -2
  436. package/dist/types/sdk/sdk-legacy/core/creditAccount.d.ts +2 -2
  437. package/dist/types/sdk/utils/abi-decode.d.ts +10 -0
  438. package/dist/types/sdk/utils/index.d.ts +1 -0
  439. package/package.json +1 -1
  440. package/dist/cjs/permissionless/bindings/base-contract.js +0 -173
  441. package/dist/cjs/permissionless/utils/abi-decoder.js +0 -72
  442. package/dist/cjs/plugins/bots/PartialLiquidationBotBaseContract.js +0 -75
  443. package/dist/cjs/plugins/bots/PartialLiquidationBotV300Contract.js +0 -65
  444. package/dist/cjs/sdk/base/AddressLabeller.js +0 -49
  445. package/dist/cjs/sdk/base/IAddressLabeller.js +0 -16
  446. package/dist/esm/permissionless/bindings/base-contract.js +0 -151
  447. package/dist/esm/permissionless/utils/abi-decoder.js +0 -50
  448. package/dist/esm/plugins/bots/PartialLiquidationBotBaseContract.js +0 -53
  449. package/dist/esm/plugins/bots/PartialLiquidationBotV300Contract.js +0 -41
  450. package/dist/esm/sdk/base/AddressLabeller.js +0 -25
  451. package/dist/esm/sdk/base/IAddressLabeller.js +0 -0
  452. package/dist/types/permissionless/bindings/base-contract.d.ts +0 -23
  453. package/dist/types/permissionless/utils/abi-decoder.d.ts +0 -13
  454. package/dist/types/plugins/bots/PartialLiquidationBotBaseContract.d.ts +0 -25
  455. package/dist/types/plugins/bots/PartialLiquidationBotV300Contract.d.ts +0 -227
  456. package/dist/types/sdk/base/AddressLabeller.d.ts +0 -11
  457. package/dist/types/sdk/base/IAddressLabeller.d.ts +0 -9
@@ -0,0 +1,135 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var ChainContractsRegister_exports = {};
20
+ __export(ChainContractsRegister_exports, {
21
+ ChainContractsRegister: () => ChainContractsRegister
22
+ });
23
+ module.exports = __toCommonJS(ChainContractsRegister_exports);
24
+ var import_addresses = require("../constants/addresses.js");
25
+ var import_AddressMap = require("../utils/AddressMap.js");
26
+ var import_TokensMeta = require("./TokensMeta.js");
27
+ class ChainContractsRegister {
28
+ static #chains = /* @__PURE__ */ new Map();
29
+ static for(client, logger) {
30
+ const chainId = client.chain.id;
31
+ let result = ChainContractsRegister.#chains.get(chainId);
32
+ if (!result) {
33
+ result = new ChainContractsRegister(client, logger);
34
+ ChainContractsRegister.#chains.set(chainId, result);
35
+ }
36
+ return result;
37
+ }
38
+ contracts = new import_AddressMap.AddressMap(
39
+ [],
40
+ "contracts"
41
+ );
42
+ labels = new import_AddressMap.AddressMap([], "labels");
43
+ client;
44
+ /**
45
+ * Token metadata such as symbol and decimals
46
+ */
47
+ tokensMeta;
48
+ logger;
49
+ constructor(client, logger) {
50
+ this.client = client;
51
+ this.tokensMeta = new import_TokensMeta.TokensMeta(client);
52
+ this.logger = logger;
53
+ }
54
+ getContract(address) {
55
+ return this.contracts.get(address);
56
+ }
57
+ mustGetContract(address) {
58
+ const contract = this.contracts.mustGet(address);
59
+ if (!contract) {
60
+ throw new Error(`contract ${address} not found on chain ${this.chainId}`);
61
+ }
62
+ return contract;
63
+ }
64
+ setContract(address, contract) {
65
+ this.contracts.upsert(address, contract);
66
+ }
67
+ setAddressLabel(address, label) {
68
+ if (address === import_addresses.NOT_DEPLOYED) {
69
+ return;
70
+ }
71
+ if (typeof label === "string") {
72
+ this.labels.upsert(address, label);
73
+ } else {
74
+ this.labels.upsert(address, label(this.labels.get(address)));
75
+ }
76
+ }
77
+ labelAddress(address) {
78
+ const label = this.labels.get(address);
79
+ return label ? `${address} [${label}]` : address;
80
+ }
81
+ get chain() {
82
+ return this.client.chain;
83
+ }
84
+ get chainId() {
85
+ return this.client.chain.id;
86
+ }
87
+ /**
88
+ * Converts contract call into some human-friendly string
89
+ * This method is safe and should not throw
90
+ * @param address
91
+ * @param calldata
92
+ * @returns
93
+ */
94
+ stringifyFunctionData(address, calldata) {
95
+ const contract = this.contracts.get(address);
96
+ return contract ? contract.stringifyFunctionData(calldata) : `unknown: ${address}.${calldata.slice(0, 10)}`;
97
+ }
98
+ /**
99
+ * Converts multicalls into some human-friendly strings
100
+ * This method is safe and should not throw
101
+ * @param address
102
+ * @param calldata
103
+ * @returns
104
+ */
105
+ stringifyMultiCall(calls) {
106
+ return calls.map(
107
+ (call) => this.stringifyFunctionData(call.target, call.callData)
108
+ );
109
+ }
110
+ /**
111
+ * Return args, function, type and address name from contract call
112
+ * @param address
113
+ * @param calldata
114
+ * @returns
115
+ */
116
+ parseFunctionData(address, calldata) {
117
+ const contract = this.mustGetContract(address);
118
+ return contract.parseFunctionData(calldata);
119
+ }
120
+ /**
121
+ * Converts multicalls into call info
122
+ * @param address
123
+ * @param calldata
124
+ * @returns
125
+ */
126
+ parseMultiCall(calls) {
127
+ return calls.map(
128
+ (call) => this.parseFunctionData(call.target, call.callData)
129
+ );
130
+ }
131
+ }
132
+ // Annotate the CommonJS export names for ESM import in node:
133
+ 0 && (module.exports = {
134
+ ChainContractsRegister
135
+ });
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var Construct_exports = {};
20
+ __export(Construct_exports, {
21
+ Construct: () => Construct
22
+ });
23
+ module.exports = __toCommonJS(Construct_exports);
24
+ var import_utils = require("../utils/index.js");
25
+ var import_ChainContractsRegister = require("./ChainContractsRegister.js");
26
+ class Construct {
27
+ logger;
28
+ client;
29
+ register;
30
+ /**
31
+ * Indicates that contract state needs to be updated
32
+ */
33
+ #dirty = false;
34
+ constructor({ client, logger }) {
35
+ this.client = client;
36
+ this.register = import_ChainContractsRegister.ChainContractsRegister.for(client, logger);
37
+ this.logger = (0, import_utils.childLogger)(
38
+ this.constructor.name,
39
+ this.register.logger ?? logger
40
+ );
41
+ }
42
+ get chain() {
43
+ return this.client.chain;
44
+ }
45
+ get chainId() {
46
+ return this.client.chain.id;
47
+ }
48
+ get networkType() {
49
+ if ("network" in this.chain) {
50
+ return this.chain.network;
51
+ }
52
+ throw new Error(`chain ${this.chain.id} is not a Gearbox SDK chain`);
53
+ }
54
+ /**
55
+ * Indicates that contract state diverged from onchain state and needs to be updated
56
+ */
57
+ get dirty() {
58
+ return this.#dirty;
59
+ }
60
+ set dirty(value) {
61
+ this.#dirty = value;
62
+ }
63
+ /**
64
+ * Syntax sugar for rgister.tokensMeta
65
+ */
66
+ get tokensMeta() {
67
+ return this.register.tokensMeta;
68
+ }
69
+ /**
70
+ * Syntax suggar for getting contract labels
71
+ * @param address
72
+ * @returns
73
+ */
74
+ labelAddress(address) {
75
+ return this.register.labelAddress(address);
76
+ }
77
+ /**
78
+ * Returns list of addresses that should be watched for events to sync state
79
+ */
80
+ get watchAddresses() {
81
+ return /* @__PURE__ */ new Set();
82
+ }
83
+ }
84
+ // Annotate the CommonJS export names for ESM import in node:
85
+ 0 && (module.exports = {
86
+ Construct
87
+ });
@@ -21,39 +21,13 @@ __export(SDKConstruct_exports, {
21
21
  SDKConstruct: () => SDKConstruct
22
22
  });
23
23
  module.exports = __toCommonJS(SDKConstruct_exports);
24
- class SDKConstruct {
24
+ var import_Construct = require("./Construct.js");
25
+ class SDKConstruct extends import_Construct.Construct {
25
26
  sdk;
26
- /**
27
- * Indicates that contract state needs to be updated
28
- */
29
- #dirty = false;
30
27
  constructor(sdk) {
28
+ super(sdk);
31
29
  this.sdk = sdk;
32
30
  }
33
- get networkType() {
34
- return this.sdk.networkType;
35
- }
36
- get client() {
37
- return this.sdk.client;
38
- }
39
- /**
40
- * Indicates that contract state needs to be updated
41
- */
42
- get dirty() {
43
- return this.#dirty;
44
- }
45
- set dirty(value) {
46
- this.#dirty = value;
47
- }
48
- labelAddress(address) {
49
- return this.sdk.labelAddress(address);
50
- }
51
- /**
52
- * Returns list of addresses that should be watched for events to sync state
53
- */
54
- get watchAddresses() {
55
- return /* @__PURE__ */ new Set();
56
- }
57
31
  }
58
32
  // Annotate the CommonJS export names for ESM import in node:
59
33
  0 && (module.exports = {
@@ -25,11 +25,11 @@ var import_iVersion = require("../../abi/iVersion.js");
25
25
  var import__ = require("../index.js");
26
26
  var import_utils = require("../utils/index.js");
27
27
  class TokensMeta extends import_utils.AddressMap {
28
- #sdk;
28
+ #client;
29
29
  #phantomTokensLoaded;
30
- constructor(sdk) {
30
+ constructor(client) {
31
31
  super(void 0, "tokensMeta");
32
- this.#sdk = sdk;
32
+ this.#client = client;
33
33
  }
34
34
  symbol(token) {
35
35
  return this.mustGet(token).symbol;
@@ -84,7 +84,7 @@ class TokensMeta extends import_utils.AddressMap {
84
84
  async loadPhantomTokens() {
85
85
  this.#phantomTokensLoaded = new import_utils.AddressSet();
86
86
  const tokens = this.keys();
87
- const resp = await this.#sdk.client.multicall({
87
+ const resp = await this.#client.multicall({
88
88
  contracts: tokens.map(
89
89
  (t) => ({
90
90
  address: t,
@@ -15,16 +15,18 @@ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "defau
15
15
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
16
16
  var base_exports = {};
17
17
  module.exports = __toCommonJS(base_exports);
18
- __reExport(base_exports, require("./AddressLabeller.js"), module.exports);
19
18
  __reExport(base_exports, require("./BaseContract.js"), module.exports);
19
+ __reExport(base_exports, require("./ChainContractsRegister.js"), module.exports);
20
+ __reExport(base_exports, require("./Construct.js"), module.exports);
20
21
  __reExport(base_exports, require("./PlaceholderContract.js"), module.exports);
21
22
  __reExport(base_exports, require("./SDKConstruct.js"), module.exports);
22
23
  __reExport(base_exports, require("./TokensMeta.js"), module.exports);
23
24
  __reExport(base_exports, require("./types.js"), module.exports);
24
25
  // Annotate the CommonJS export names for ESM import in node:
25
26
  0 && (module.exports = {
26
- ...require("./AddressLabeller.js"),
27
27
  ...require("./BaseContract.js"),
28
+ ...require("./ChainContractsRegister.js"),
29
+ ...require("./Construct.js"),
28
30
  ...require("./PlaceholderContract.js"),
29
31
  ...require("./SDKConstruct.js"),
30
32
  ...require("./TokensMeta.js"),
@@ -32,7 +32,7 @@ class BotListContract extends import_base.BaseContract {
32
32
  super(sdk, { addr: address, name: "BotListV3", abi });
33
33
  this.#currentBlock = sdk.chain.firstBlock ?? 0n;
34
34
  }
35
- parseFunctionParams(params) {
35
+ stringifyFunctionParams(params) {
36
36
  switch (params.functionName) {
37
37
  case "setCreditManagerApprovedStatus": {
38
38
  const [creditManager, status] = params.args;
@@ -47,7 +47,7 @@ class BotListContract extends import_base.BaseContract {
47
47
  ];
48
48
  }
49
49
  default:
50
- return void 0;
50
+ return super.stringifyFunctionParams(params);
51
51
  }
52
52
  }
53
53
  async syncState(toBlock) {
@@ -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
  }