@gearbox-protocol/sdk 11.12.0 → 12.0.0-next.2

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 +15 -27
  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 +16 -26
  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
@@ -1,5 +1,5 @@
1
1
  import { type Address } from "viem";
2
- import type { GearboxSDK } from "../../../sdk/index.js";
2
+ import type { ConstructOptions } from "../../../sdk/index.js";
3
3
  import type { AbstractAdapterContractOptions } from "./AbstractAdapter.js";
4
4
  import { AbstractAdapterContract } from "./AbstractAdapter.js";
5
5
  import type { TraderJoePoolVersion } from "./types.js";
@@ -344,6 +344,6 @@ export declare class TraderJoeRouterAdapterContract extends AbstractAdapterContr
344
344
  binStep: number;
345
345
  poolVersion: TraderJoePoolVersion;
346
346
  }[];
347
- constructor(sdk: GearboxSDK, args: Omit<AbstractAdapterContractOptions<abi>, "abi">);
347
+ constructor(options: ConstructOptions, args: Omit<AbstractAdapterContractOptions<abi>, "abi">);
348
348
  }
349
349
  export {};
@@ -1,5 +1,5 @@
1
1
  import { type Address, type DecodeFunctionDataReturnType } from "viem";
2
- import type { GearboxSDK } from "../../../sdk/index.js";
2
+ import type { ConstructOptions } from "../../../sdk/index.js";
3
3
  import type { AbstractAdapterContractOptions } from "./AbstractAdapter.js";
4
4
  import { AbstractAdapterContract } from "./AbstractAdapter.js";
5
5
  declare const abi: readonly [{
@@ -210,7 +210,7 @@ export declare class UniswapV2AdapterContract extends AbstractAdapterContract<ab
210
210
  token0: Address;
211
211
  token1: Address;
212
212
  }[];
213
- constructor(sdk: GearboxSDK, args: Omit<AbstractAdapterContractOptions<abi>, "abi">);
214
- protected parseFunctionParams(params: DecodeFunctionDataReturnType<abi>): string[] | undefined;
213
+ constructor(options: ConstructOptions, args: Omit<AbstractAdapterContractOptions<abi>, "abi">);
214
+ protected stringifyFunctionParams(params: DecodeFunctionDataReturnType<abi>): string[];
215
215
  }
216
216
  export {};
@@ -1,5 +1,5 @@
1
1
  import { type Address, type DecodeFunctionDataReturnType } from "viem";
2
- import type { GearboxSDK } from "../../../sdk/index.js";
2
+ import type { ConstructOptions } from "../../../sdk/index.js";
3
3
  import type { AbstractAdapterContractOptions } from "./AbstractAdapter.js";
4
4
  import { AbstractAdapterContract } from "./AbstractAdapter.js";
5
5
  declare const abi: readonly [{
@@ -376,8 +376,8 @@ export declare class UniswapV3AdapterContract extends AbstractAdapterContract<ab
376
376
  token1: Address;
377
377
  fee: number;
378
378
  }[];
379
- constructor(sdk: GearboxSDK, args: Omit<AbstractAdapterContractOptions<abi>, "abi">);
380
- protected parseFunctionParams(params: DecodeFunctionDataReturnType<abi>): string[] | undefined;
379
+ constructor(options: ConstructOptions, args: Omit<AbstractAdapterContractOptions<abi>, "abi">);
380
+ protected stringifyFunctionParams(params: DecodeFunctionDataReturnType<abi>): string[];
381
381
  private trackInputPath;
382
382
  private trackOutputPath;
383
383
  }
@@ -1,5 +1,5 @@
1
1
  import { type Address } from "viem";
2
- import type { GearboxSDK } from "../../../sdk/index.js";
2
+ import type { ConstructOptions } from "../../../sdk/index.js";
3
3
  import type { AbstractAdapterContractOptions } from "./AbstractAdapter.js";
4
4
  import { AbstractAdapterContract } from "./AbstractAdapter.js";
5
5
  declare const abi: readonly [{
@@ -315,6 +315,6 @@ export declare class UniswapV4AdapterContract extends AbstractAdapterContract<ab
315
315
  tickSpacing: number;
316
316
  hooks: Address;
317
317
  }[];
318
- constructor(sdk: GearboxSDK, args: Omit<AbstractAdapterContractOptions<abi>, "abi">);
318
+ constructor(options: ConstructOptions, args: Omit<AbstractAdapterContractOptions<abi>, "abi">);
319
319
  }
320
320
  export {};
@@ -1,5 +1,5 @@
1
1
  import { type Address } from "viem";
2
- import type { GearboxSDK } from "../../../sdk/index.js";
2
+ import type { ConstructOptions } from "../../../sdk/index.js";
3
3
  import type { AbstractAdapterContractOptions } from "./AbstractAdapter.js";
4
4
  import { AbstractAdapterContract } from "./AbstractAdapter.js";
5
5
  declare const abi: readonly [{
@@ -278,6 +278,6 @@ export declare class UpshiftVaultAdapterContract extends AbstractAdapterContract
278
278
  readonly vault: Address;
279
279
  readonly asset: Address;
280
280
  readonly stakedPhantomToken: Address;
281
- constructor(sdk: GearboxSDK, args: Omit<AbstractAdapterContractOptions<abi>, "abi">);
281
+ constructor(options: ConstructOptions, args: Omit<AbstractAdapterContractOptions<abi>, "abi">);
282
282
  }
283
283
  export {};
@@ -1,5 +1,5 @@
1
1
  import { type Address } from "viem";
2
- import type { GearboxSDK } from "../../../sdk/index.js";
2
+ import type { ConstructOptions } from "../../../sdk/index.js";
3
3
  import type { AbstractAdapterContractOptions } from "./AbstractAdapter.js";
4
4
  import { AbstractAdapterContract } from "./AbstractAdapter.js";
5
5
  declare const abi: readonly [{
@@ -242,6 +242,6 @@ export declare class VelodromeV2RouterAdapterContract extends AbstractAdapterCon
242
242
  stable: boolean;
243
243
  factory: Address;
244
244
  }[];
245
- constructor(sdk: GearboxSDK, args: Omit<AbstractAdapterContractOptions<abi>, "abi">);
245
+ constructor(options: ConstructOptions, args: Omit<AbstractAdapterContractOptions<abi>, "abi">);
246
246
  }
247
247
  export {};
@@ -1,5 +1,5 @@
1
1
  import { type Address } from "viem";
2
- import type { GearboxSDK } from "../../../sdk/index.js";
2
+ import type { ConstructOptions } from "../../../sdk/index.js";
3
3
  import type { AbstractAdapterContractOptions } from "./AbstractAdapter.js";
4
4
  import { AbstractAdapterContract } from "./AbstractAdapter.js";
5
5
  declare const abi: readonly [{
@@ -122,6 +122,6 @@ declare const abi: readonly [{
122
122
  type abi = typeof abi;
123
123
  export declare class WstETHV1AdapterContract extends AbstractAdapterContract<abi> {
124
124
  readonly stETH: Address;
125
- constructor(sdk: GearboxSDK, args: Omit<AbstractAdapterContractOptions<abi>, "abi">);
125
+ constructor(options: ConstructOptions, args: Omit<AbstractAdapterContractOptions<abi>, "abi">);
126
126
  }
127
127
  export {};
@@ -1,5 +1,5 @@
1
1
  import { type Address } from "viem";
2
- import type { GearboxSDK } from "../../../sdk/index.js";
2
+ import type { ConstructOptions } from "../../../sdk/index.js";
3
3
  import type { AbstractAdapterContractOptions } from "./AbstractAdapter.js";
4
4
  import { AbstractAdapterContract } from "./AbstractAdapter.js";
5
5
  declare const abi: readonly [{
@@ -180,6 +180,6 @@ declare const abi: readonly [{
180
180
  type abi = typeof abi;
181
181
  export declare class YearnV2RouterAdapterContract extends AbstractAdapterContract<abi> {
182
182
  readonly token: Address;
183
- constructor(sdk: GearboxSDK, args: Omit<AbstractAdapterContractOptions<abi>, "abi">);
183
+ constructor(options: ConstructOptions, args: Omit<AbstractAdapterContractOptions<abi>, "abi">);
184
184
  }
185
185
  export {};
@@ -0,0 +1,3 @@
1
+ import type { BaseParams } from "../../sdk/index.js";
2
+ import type { BotParameters } from "./types.js";
3
+ export default function deserializePartialLiquidationBotParams(params: Pick<BaseParams, "serializedParams">): BotParameters;
@@ -1,8 +1,8 @@
1
- import type { Address, Hex } from "viem";
1
+ import type { Address } from "viem";
2
2
  import { type PublicClient, type Transport } from "viem";
3
3
  import type { HttpRpcClientOptions } from "viem/utils";
4
- import type { BaseContract, BaseState, IBaseContract } from "./base/index.js";
5
- import { AddressLabeller, TokensMeta } from "./base/index.js";
4
+ import type { BaseState, IBaseContract } from "./base/index.js";
5
+ import { ChainContractsRegister } from "./base/index.js";
6
6
  import type { GearboxChain, NetworkType } from "./chain/chains.js";
7
7
  import type { VersionRange } from "./constants/index.js";
8
8
  import type { IAddressProviderContract } from "./core/index.js";
@@ -12,8 +12,7 @@ import { PriceFeedRegister } from "./market/pricefeeds/index.js";
12
12
  import type { SDKOptions } from "./options.js";
13
13
  import { type PluginsMap } from "./plugins/index.js";
14
14
  import { type IRouterContract } from "./router/index.js";
15
- import type { GearboxState, GearboxStateHuman, ILogger, MultiCall } from "./types/index.js";
16
- import { AddressMap } from "./utils/index.js";
15
+ import type { GearboxState, GearboxStateHuman } from "./types/index.js";
17
16
  /**
18
17
  * State version, checked duryng hydration
19
18
  */
@@ -64,29 +63,14 @@ export type SDKHooks = {
64
63
  syncState: [SyncStateOptions];
65
64
  rehydrate: [SyncStateOptions];
66
65
  };
67
- export declare class GearboxSDK<const Plugins extends PluginsMap = {}> {
66
+ export declare class GearboxSDK<const Plugins extends PluginsMap = {}> extends ChainContractsRegister {
68
67
  #private;
69
68
  readonly plugins: Plugins;
70
- readonly logger?: ILogger;
71
69
  readonly gasLimit: bigint | undefined;
72
- readonly addressLabels: AddressLabeller;
73
- /**
74
- * Interest rate models can be reused across chain (and SDK operates on chain level)
75
- * TODO: use whatever interface is necessary for InterestRateModels
76
- */
77
- readonly interestRateModels: AddressMap<BaseContract<readonly unknown[]>>;
78
70
  /**
79
71
  * Will throw an error if contract type is not supported, otherwise will try to use generic contract first, if possible
80
72
  */
81
73
  readonly strictContractTypes: boolean;
82
- /**
83
- * All contracts known to sdk
84
- */
85
- readonly contracts: AddressMap<BaseContract<any>>;
86
- /**
87
- * Token metadata such as symbol and decimals
88
- */
89
- readonly tokensMeta: TokensMeta;
90
74
  addHook: <K extends keyof SDKHooks>(hookName: K, fn: (...args: SDKHooks[K]) => void | Promise<void>) => void;
91
75
  removeHook: <K extends keyof SDKHooks>(hookName: K, fn: (...args: SDKHooks[K]) => void | Promise<void>) => void;
92
76
  static attach<const Plugins extends PluginsMap>(options: SDKOptions<Plugins> & ClientOptions & Partial<NetworkOptions>): Promise<GearboxSDK<Plugins>>;
@@ -101,56 +85,7 @@ export declare class GearboxSDK<const Plugins extends PluginsMap = {}> {
101
85
  * Rehydrate existing SDK from new state without re-creating instance
102
86
  */
103
87
  rehydrate(state: GearboxState<Plugins>): Promise<void>;
104
- get client(): PublicClient<Transport, GearboxChain>;
105
- /**
106
- * Replaces client inflight
107
- * You're responsible for all inconsistencies between new and old client
108
- * @param options
109
- */
110
- replaceClient(options: ClientOptions, network?: NetworkOptions): void;
111
88
  get networkType(): NetworkType;
112
- get chain(): GearboxChain;
113
- get chainId(): number;
114
- /**
115
- * Converts contract call into some human-friendly string
116
- * This method is safe and should not throw
117
- * @param address
118
- * @param calldata
119
- * @returns
120
- */
121
- parseFunctionData(address: Address, calldata: Hex): string;
122
- /**
123
- * Converts multicalls into some human-friendly strings
124
- * This method is safe and should not throw
125
- * @param address
126
- * @param calldata
127
- * @returns
128
- */
129
- parseMultiCall(calls: MultiCall[]): string[];
130
- /**
131
- * Return args, function, type and address name from contract call
132
- * @param address
133
- * @param calldata
134
- * @returns
135
- */
136
- parseFunctionDataToObject(address: Address, calldata: Hex): {
137
- address: `0x${string}`;
138
- type: string;
139
- args: any[];
140
- functionName: any;
141
- } | null;
142
- /**
143
- * Converts multicalls into call info
144
- * @param address
145
- * @param calldata
146
- * @returns
147
- */
148
- parseMultiCallToObject(calls: MultiCall[]): ({
149
- address: `0x${string}`;
150
- type: string;
151
- args: any[];
152
- functionName: any;
153
- } | null)[];
154
89
  stateHuman(raw?: boolean): GearboxStateHuman;
155
90
  get state(): GearboxState<Plugins>;
156
91
  /**
@@ -180,10 +115,4 @@ export declare class GearboxSDK<const Plugins extends PluginsMap = {}> {
180
115
  } | {
181
116
  creditFacade: Address | BaseState | IBaseContract;
182
117
  } | VersionRange): IRouterContract;
183
- /**
184
- * Helper to get human-friendly label for address
185
- * @param address
186
- * @returns
187
- */
188
- labelAddress(address: Address): string;
189
118
  }
@@ -1,6 +1,5 @@
1
1
  import type { Address, GetContractReturnType, PublicClient, WalletClient } from "viem";
2
2
  import type { accountMigratorPreviewerV310Abi } from "../../abi/migration.js";
3
- import type { SDKConstruct } from "../base/SDKConstruct.js";
4
3
  import type { Asset, RouterCASlice } from "../router/index.js";
5
4
  export interface MigrateCreditAccountProps {
6
5
  /**
@@ -47,7 +46,7 @@ export interface PreviewCreditAccountMigrationProps {
47
46
  expectedTargetQuota: Array<Asset>;
48
47
  }
49
48
  export type PreviewMigrationResult = Awaited<ReturnType<GetContractReturnType<typeof accountMigratorPreviewerV310Abi, PublicClient>["simulate"]["previewMigration"]>>["result"];
50
- export interface IMigrateCreditAccountsService extends SDKConstruct {
49
+ export interface IMigrateCreditAccountsService {
51
50
  /**
52
51
  * Preview delayed withdrawal for a given credit account
53
52
  * @param props - {@link PreviewCreditAccountMigrationProps}
@@ -1,8 +1,8 @@
1
1
  import type { Address, ContractFunctionArgs, GetContractReturnType, Hex, PublicClient } from "viem";
2
2
  import type { creditAccountCompressorAbi } from "../../abi/compressors/creditAccountCompressor.js";
3
3
  import type { iWithdrawalCompressorV310Abi } from "../../abi/IWithdrawalCompressorV310.js";
4
- import type { ConnectedBotData, CreditAccountData } from "../base/index.js";
5
- import type { SDKConstruct } from "../base/SDKConstruct.js";
4
+ import type { ConnectedBotData, Construct, CreditAccountData } from "../base/index.js";
5
+ import type { GearboxSDK } from "../GearboxSDK.js";
6
6
  import type { CreditSuite, OnDemandPriceUpdates, PriceUpdateV300, PriceUpdateV310, UpdatePriceFeedsResult } from "../market/index.js";
7
7
  import type { Asset, CreditAccountTokensSlice, RouterCASlice, RouterCloseResult } from "../router/index.js";
8
8
  import type { MultiCall, RawTx } from "../types/index.js";
@@ -407,7 +407,8 @@ export type GetConnectedMigrationBotsResult = {
407
407
  })[];
408
408
  botAddress: Address;
409
409
  } | undefined;
410
- export interface ICreditAccountsService extends SDKConstruct {
410
+ export interface ICreditAccountsService extends Construct {
411
+ sdk: GearboxSDK;
411
412
  /**
412
413
  * Returns single credit account data, or undefined if it's not found
413
414
  * Performs all necessary price feed updates under the hood
@@ -1,58 +1,102 @@
1
- import type { Abi, Address, Client, ContractEventName, ContractFunctionName, DecodeFunctionDataReturnType, EncodeFunctionDataParameters, GetContractReturnType, Hex, Log } from "viem";
2
- import type { GearboxSDK } from "../GearboxSDK.js";
3
- import type { BaseContractStateHuman, ILogger, RawTx } from "../types/index.js";
4
- import { SDKConstruct } from "./SDKConstruct.js";
5
- export interface BaseContractOptions<abi extends Abi | readonly unknown[]> {
1
+ import type { Abi, Address, Chain, ContractEventName, ContractFunctionName, DecodeFunctionDataReturnType, EncodeFunctionDataParameters, GetContractReturnType, Hex, Log, PublicClient, Transport } from "viem";
2
+ import { BaseError, type ContractEventArgs, type GetContractEventsReturnType } from "viem";
3
+ import type { BaseContractStateHuman, RawTx } from "../types/index.js";
4
+ import { Construct, type ConstructOptions } from "./Construct.js";
5
+ import type { IBaseContract, ParsedCall, ParsedCallArgs } from "./types.js";
6
+ export interface BaseContractArgs<abi extends Abi | readonly unknown[]> {
6
7
  abi: abi;
7
8
  addr: Address;
8
9
  name?: string;
9
10
  version?: number | bigint;
10
11
  contractType?: string;
11
12
  }
12
- export interface IBaseContract {
13
+ export interface ContractParseErrorOptions {
13
14
  address: Address;
14
- contractType: string;
15
- version: number;
16
- name: string;
17
- dirty: boolean;
15
+ callData: Hex;
16
+ contractName?: string;
18
17
  }
19
- export declare abstract class BaseContract<abi extends Abi | readonly unknown[]> extends SDKConstruct implements IBaseContract {
20
- #private;
21
- readonly contract: GetContractReturnType<abi, {
22
- public: Client;
23
- }, Address>;
18
+ export declare class ContractParseError extends BaseError {
19
+ readonly address: Address;
20
+ readonly callData: Hex;
21
+ readonly selector: Hex;
22
+ constructor(cause: Error, options: ContractParseErrorOptions);
23
+ }
24
+ export declare class BaseContract<abi extends Abi | readonly unknown[]> extends Construct implements IBaseContract {
25
+ readonly contract: GetContractReturnType<abi, PublicClient<Transport, Chain>, Address>;
24
26
  readonly abi: abi;
25
- readonly logger?: ILogger;
26
27
  readonly contractType: string;
27
- version: number;
28
- constructor(sdk: GearboxSDK, args: BaseContractOptions<abi>);
29
- get address(): Address;
30
- set address(address: Address);
31
- get name(): string;
32
- set name(name: string);
28
+ readonly version: number;
29
+ readonly address: Address;
30
+ readonly name: string;
31
+ constructor({ client, logger }: ConstructOptions, args: BaseContractArgs<abi>);
33
32
  stateHuman(_?: boolean): BaseContractStateHuman;
34
33
  /**
35
34
  * Updates (or not) contract's internal state from event
36
35
  * @param _log
37
36
  */
38
37
  processLog(_log: Log<bigint, number, false, undefined, undefined, abi, ContractEventName<abi>>): void;
38
+ /**
39
+ * Return parsed args and function name from calldata belonging to this contract
40
+ * Target of the call is always this contract, but args can be parsed into calls to other contracts (de-facto recursive ParsedCall)
41
+ * @param calldata
42
+ * @returns
43
+ */
44
+ parseFunctionData(calldata: Hex): ParsedCall;
45
+ /**
46
+ * Same as {@link parseFunctionData}, but throws {@link ContractParseError} if error occurs
47
+ * @param callData
48
+ * @returns
49
+ */
50
+ mustParseFunctionData(callData: Hex): ParsedCall;
51
+ /**
52
+ * Parses viem-decoded contract function arguments to a map of named arguments
53
+ * This default implementation uses abi-based parsing, you can override it,
54
+ * but use this super implementation as fallback
55
+ * @param params
56
+ * @returns
57
+ */
58
+ protected parseFunctionParams(params: DecodeFunctionDataReturnType<abi>): ParsedCallArgs;
39
59
  /**
40
60
  * Converts contract calldata to some human-friendly string
41
61
  * This is safe function which should not throw
42
62
  * @param calldata
43
63
  * @returns
44
64
  */
45
- parseFunctionData(calldata: Hex): string;
46
- mustParseFunctionData(calldata: Hex): string;
65
+ stringifyFunctionData(calldata: Hex): string;
47
66
  /**
48
- * Return args and function name from calldata
67
+ * Same as {@link stingifyFunctionData}, but throws if error occurs
49
68
  * @param calldata
50
69
  * @returns
51
70
  */
52
- parseFunctionDataToObject(calldata: Hex): DecodeFunctionDataReturnType<abi, ContractFunctionName<abi, import("viem").AbiStateMutability>>;
53
- protected parseFunctionParams(_params: DecodeFunctionDataReturnType<abi>): Array<string> | undefined;
54
- getVersion(): Promise<number>;
71
+ mustStringifyFunctionData(calldata: Hex): string;
72
+ /**
73
+ * Pretty-prints values of function arguments (do not include parameter names)
74
+ * Can be overriden in classes, but use this super implementation as fallback
75
+ *
76
+ * @param decoded - Function arguments decoded by viem
77
+ * @returns
78
+ */
79
+ protected stringifyFunctionParams(decoded: DecodeFunctionDataReturnType<abi>): string[];
80
+ protected wrapParseCall(functionName: string, args: Record<string, string>): ParsedCall;
81
+ /**
82
+ * Creates a raw transaction for a function in this contract
83
+ * @param parameters
84
+ * @returns
85
+ */
55
86
  createRawTx<functionName extends ContractFunctionName<abi> | undefined = undefined>(parameters: Omit<EncodeFunctionDataParameters<abi, functionName>, "abi"> & {
56
87
  description?: string;
57
88
  }): RawTx;
89
+ /**
90
+ * Get events in safe manner, by bisecting block range if needed
91
+ *
92
+ * @deprecated TODO: this should be moved to viem transport
93
+ *
94
+ * @param eventName
95
+ * @param fromBlock
96
+ * @param toBlock
97
+ * @param args
98
+ * @param chunkSize
99
+ * @returns
100
+ */
101
+ getEvents<EventName extends ContractEventName<abi>>(eventName: EventName, fromBlock: bigint, toBlock: bigint, args?: ContractEventArgs<abi, EventName extends ContractEventName<abi> ? EventName : ContractEventName<abi>> | undefined, chunkSize?: number): Promise<GetContractEventsReturnType<abi, EventName, undefined, bigint, bigint>>;
58
102
  }
@@ -0,0 +1,57 @@
1
+ import type { Abi, Address, Chain, Hex, PublicClient, Transport } from "viem";
2
+ import type { MultiCall } from "../types/index.js";
3
+ import type { ILogger } from "../types/logger.js";
4
+ import type { BaseContract } from "./BaseContract.js";
5
+ import { TokensMeta } from "./TokensMeta.js";
6
+ import type { ParsedCall } from "./types.js";
7
+ export type ContractOrInterface<T> = T extends Abi | readonly unknown[] ? BaseContract<T> : T;
8
+ export declare class ChainContractsRegister {
9
+ #private;
10
+ static for(client: PublicClient<Transport, Chain>, logger?: ILogger): ChainContractsRegister;
11
+ private readonly contracts;
12
+ private readonly labels;
13
+ readonly client: PublicClient<Transport, Chain>;
14
+ /**
15
+ * Token metadata such as symbol and decimals
16
+ */
17
+ readonly tokensMeta: TokensMeta;
18
+ readonly logger?: ILogger;
19
+ constructor(client: PublicClient<Transport, Chain>, logger?: ILogger);
20
+ getContract<T = unknown[]>(address: Address): ContractOrInterface<T> | undefined;
21
+ mustGetContract<T = unknown[]>(address: Address): ContractOrInterface<T>;
22
+ setContract(address: Address, contract: BaseContract<any>): void;
23
+ setAddressLabel(address: Address, label: string | ((oldLabel?: string) => string)): void;
24
+ labelAddress(address: Address): string;
25
+ get chain(): Chain;
26
+ get chainId(): number;
27
+ /**
28
+ * Converts contract call into some human-friendly string
29
+ * This method is safe and should not throw
30
+ * @param address
31
+ * @param calldata
32
+ * @returns
33
+ */
34
+ stringifyFunctionData(address: Address, calldata: Hex): string;
35
+ /**
36
+ * Converts multicalls into some human-friendly strings
37
+ * This method is safe and should not throw
38
+ * @param address
39
+ * @param calldata
40
+ * @returns
41
+ */
42
+ stringifyMultiCall(calls: MultiCall[]): string[];
43
+ /**
44
+ * Return args, function, type and address name from contract call
45
+ * @param address
46
+ * @param calldata
47
+ * @returns
48
+ */
49
+ parseFunctionData(address: Address, calldata: Hex): ParsedCall;
50
+ /**
51
+ * Converts multicalls into call info
52
+ * @param address
53
+ * @param calldata
54
+ * @returns
55
+ */
56
+ parseMultiCall(calls: MultiCall[]): ParsedCall[];
57
+ }
@@ -0,0 +1,38 @@
1
+ import type { Address, Chain, PublicClient, Transport } from "viem";
2
+ import type { NetworkType } from "../chain/index.js";
3
+ import type { ILogger } from "../types/index.js";
4
+ import { ChainContractsRegister } from "./ChainContractsRegister.js";
5
+ import type { TokensMeta } from "./TokensMeta.js";
6
+ export interface ConstructOptions {
7
+ client: PublicClient<Transport, Chain>;
8
+ logger?: ILogger;
9
+ }
10
+ export declare class Construct {
11
+ #private;
12
+ readonly logger?: ILogger;
13
+ readonly client: PublicClient<Transport, Chain>;
14
+ readonly register: ChainContractsRegister;
15
+ constructor({ client, logger }: ConstructOptions);
16
+ get chain(): Chain;
17
+ get chainId(): number;
18
+ get networkType(): NetworkType;
19
+ /**
20
+ * Indicates that contract state diverged from onchain state and needs to be updated
21
+ */
22
+ get dirty(): boolean;
23
+ protected set dirty(value: boolean);
24
+ /**
25
+ * Syntax sugar for rgister.tokensMeta
26
+ */
27
+ protected get tokensMeta(): TokensMeta;
28
+ /**
29
+ * Syntax suggar for getting contract labels
30
+ * @param address
31
+ * @returns
32
+ */
33
+ protected labelAddress(address: Address): string;
34
+ /**
35
+ * Returns list of addresses that should be watched for events to sync state
36
+ */
37
+ get watchAddresses(): Set<Address>;
38
+ }
@@ -1,9 +1,9 @@
1
1
  import type { GearboxSDK } from "../GearboxSDK.js";
2
- import type { BaseContractOptions } from "./BaseContract.js";
2
+ import type { BaseContractArgs } from "./BaseContract.js";
3
3
  import { BaseContract } from "./BaseContract.js";
4
4
  declare const abi: unknown[];
5
5
  type abi = typeof abi;
6
6
  export declare class PlaceholderContract extends BaseContract<abi> {
7
- constructor(sdk: GearboxSDK, args: Omit<BaseContractOptions<abi>, "abi">);
7
+ constructor(sdk: GearboxSDK, args: Omit<BaseContractArgs<abi>, "abi">);
8
8
  }
9
9
  export {};
@@ -1,21 +1,7 @@
1
- import type { Address, PublicClient } from "viem";
2
- import type { NetworkType } from "../chain/index.js";
3
1
  import type { GearboxSDK } from "../GearboxSDK.js";
4
2
  import type { PluginsMap } from "../plugins/index.js";
5
- export declare class SDKConstruct<const Plugins extends PluginsMap = {}> {
6
- #private;
3
+ import { Construct } from "./Construct.js";
4
+ export declare class SDKConstruct<const Plugins extends PluginsMap = {}> extends Construct {
7
5
  readonly sdk: GearboxSDK<Plugins>;
8
6
  constructor(sdk: GearboxSDK<Plugins>);
9
- get networkType(): NetworkType;
10
- get client(): PublicClient;
11
- /**
12
- * Indicates that contract state needs to be updated
13
- */
14
- get dirty(): boolean;
15
- protected set dirty(value: boolean);
16
- protected labelAddress(address: Address): string;
17
- /**
18
- * Returns list of addresses that should be watched for events to sync state
19
- */
20
- get watchAddresses(): Set<Address>;
21
7
  }
@@ -1,5 +1,4 @@
1
- import type { Address } from "viem";
2
- import type { GearboxSDK } from "../GearboxSDK.js";
1
+ import type { Address, Chain, PublicClient, Transport } from "viem";
3
2
  import { type PhantomTokenContractType } from "../index.js";
4
3
  import type { Asset } from "../router/index.js";
5
4
  import { AddressMap } from "../utils/index.js";
@@ -16,7 +15,7 @@ export interface TokenMetaDataExtended extends TokenMetaData {
16
15
  }
17
16
  export declare class TokensMeta extends AddressMap<TokenMetaDataExtended> {
18
17
  #private;
19
- constructor(sdk: GearboxSDK);
18
+ constructor(client: PublicClient<Transport, Chain>);
20
19
  symbol(token: Address): string;
21
20
  decimals(token: Address): number;
22
21
  /**
@@ -1,5 +1,6 @@
1
- export * from "./AddressLabeller.js";
2
1
  export * from "./BaseContract.js";
2
+ export * from "./ChainContractsRegister.js";
3
+ export * from "./Construct.js";
3
4
  export * from "./PlaceholderContract.js";
4
5
  export * from "./SDKConstruct.js";
5
6
  export * from "./TokensMeta.js";
@@ -41,3 +41,53 @@ export declare enum VotingContractStatus {
41
41
  ALLOWED = 1,
42
42
  UNVOTE_ONLY = 2
43
43
  }
44
+ export type ParsedCallArgs = Record<string, string>;
45
+ export interface ParsedCall {
46
+ chainId: number;
47
+ target: Address;
48
+ contractType: string;
49
+ label: string;
50
+ functionName: string;
51
+ args: ParsedCallArgs;
52
+ }
53
+ export interface IBaseContract {
54
+ /**
55
+ * Contract address
56
+ **/
57
+ readonly address: Address;
58
+ /**
59
+ * Contract type (parsed bytes32 or empty string)
60
+ **/
61
+ readonly contractType: string;
62
+ /**
63
+ * Contract version
64
+ **/
65
+ readonly version: number;
66
+ /**
67
+ * Internal name, for labeling purposes
68
+ * However, other contracts may add more labels, so prefer use labeling methods instead
69
+ **/
70
+ readonly name: string;
71
+ /**
72
+ * Indicates that contract state diverged from onchain state and needs to be updated
73
+ */
74
+ dirty: boolean;
75
+ /**
76
+ * Return parsed args and function name from calldata belonging to this contract
77
+ * Target of the call is always this contract, but args can be parsed into calls to other contracts (de-facto recursive ParsedCall)
78
+ **/
79
+ parseFunctionData: (calldata: Hex) => ParsedCall;
80
+ /**
81
+ * Same as {@link parseFunctionData}, but throws if error occurs
82
+ **/
83
+ mustParseFunctionData: (calldata: Hex) => ParsedCall;
84
+ /**
85
+ * Converts contract calldata to some human-friendly string
86
+ * This is safe function which should not throw
87
+ **/
88
+ stringifyFunctionData: (calldata: Hex) => string;
89
+ /**
90
+ * Same as {@link stringifyFunctionData}, but throws if error occurs
91
+ **/
92
+ mustStringifyFunctionData: (calldata: Hex) => string;
93
+ }
@@ -314,7 +314,7 @@ type abi = typeof abi;
314
314
  export declare class BotListContract extends BaseContract<abi> {
315
315
  #private;
316
316
  constructor(sdk: GearboxSDK, address: Address);
317
- protected parseFunctionParams(params: DecodeFunctionDataReturnType<abi>): Array<string> | undefined;
317
+ protected stringifyFunctionParams(params: DecodeFunctionDataReturnType<abi>): string[];
318
318
  syncState(toBlock: bigint): Promise<void>;
319
319
  processLog(log: Log<bigint, number, false, undefined, undefined, abi, ContractEventName<abi>>): void;
320
320
  get approvedCreditManagers(): Set<Address>;