@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
@@ -1,8 +1,5 @@
1
1
  import AbstractMinter from "./AbstractMinter.js";
2
2
  class DealMinter extends AbstractMinter {
3
- constructor(sdk, anvil) {
4
- super(sdk, anvil, "DealMinter");
5
- }
6
3
  async mint(token, dest, amount) {
7
4
  const { deal } = await import("viem-deal").catch(() => ({ deal: null }));
8
5
  if (!deal) {
@@ -1,9 +1,6 @@
1
1
  import { parseAbi } from "viem";
2
2
  import AbstractMinter from "./AbstractMinter.js";
3
3
  class DirectMinter extends AbstractMinter {
4
- constructor(sdk, anvil) {
5
- super(sdk, anvil, "DirectMinter");
6
- }
7
4
  async mint(token, dest, amount) {
8
5
  const owner = await this.getOwner(token);
9
6
  const stopImpersonating = await this.impersonateWithBalance(owner);
@@ -2,7 +2,7 @@ import AbstractMinter from "./AbstractMinter.js";
2
2
  class FallbackMinter extends AbstractMinter {
3
3
  #minters;
4
4
  constructor(sdk, anvil, minters) {
5
- super(sdk, anvil, "FallbackMinter");
5
+ super(sdk, anvil);
6
6
  this.#minters = minters;
7
7
  }
8
8
  async mint(token, dest, amount) {
@@ -2,9 +2,6 @@ import { parseAbi } from "viem";
2
2
  import { ierc20Abi } from "../../abi/iERC20.js";
3
3
  import AbstractMinter from "./AbstractMinter.js";
4
4
  class TransferMinter extends AbstractMinter {
5
- constructor(sdk, anvil) {
6
- super(sdk, anvil, "TransferMinter");
7
- }
8
5
  async mint(token, dest, amount) {
9
6
  const owner = await this.getOwner(token);
10
7
  const stopImpersonating = await this.impersonateWithBalance(owner);
@@ -1,10 +1,10 @@
1
- import { stringToHex } from "viem";
2
- import { iAddressProviderV310Abi } from "../../abi/310/generated.js";
3
- import { BaseContract } from "./base-contract.js";
4
- const abi = iAddressProviderV310Abi;
5
- class AddressProviderContract extends BaseContract {
6
- constructor(address, client) {
7
- super(abi, address, client, "AddressProvider");
1
+ import {
2
+ stringToHex
3
+ } from "viem";
4
+ import { AddressProviderV310Contract } from "../../sdk/index.js";
5
+ class AddressProviderContract extends AddressProviderV310Contract {
6
+ constructor(addr, client) {
7
+ super({ client }, addr);
8
8
  }
9
9
  async getAddressOrRevert(key, version = 0n) {
10
10
  return await this.contract.read.getAddressOrRevert([
@@ -6,13 +6,13 @@ import {
6
6
  stringToHex
7
7
  } from "viem";
8
8
  import { iBytecodeRepositoryAbi } from "../../abi/310/iBytecodeRepository.js";
9
+ import { BaseContract } from "../../sdk/index.js";
9
10
  import { normalizeSignature } from "../utils/index.js";
10
11
  import { BYTECODE_REPOSITORY } from "../utils/literals.js";
11
- import { BaseContract } from "./base-contract.js";
12
12
  const abi = iBytecodeRepositoryAbi;
13
13
  class BytecodeRepositoryContract extends BaseContract {
14
- constructor(address, client) {
15
- super(abi, address, client, "BytecodeRepository");
14
+ constructor(addr, client) {
15
+ super({ client }, { abi, addr, name: "BytecodeRepository" });
16
16
  }
17
17
  async getBytecodeByHash(hash) {
18
18
  return await this.contract.read.getBytecode([hash]);
@@ -189,69 +189,67 @@ class BytecodeRepositoryContract extends BaseContract {
189
189
  }
190
190
  parseFunctionParams(params) {
191
191
  switch (params.functionName) {
192
+ // TODO: simple array -> map can be removed, since this is what super.parseFunctionParams does
192
193
  case "allowSystemContract": {
193
194
  const [bytecodeHash] = params.args;
194
- return this.wrapParseCall(params, {
195
+ return {
195
196
  bytecodeHash
196
- });
197
+ };
197
198
  }
198
199
  case "addAuditor": {
199
200
  const [auditor, name] = params.args;
200
- return this.wrapParseCall(params, {
201
- auditor,
202
- name
203
- });
201
+ return { auditor, name };
204
202
  }
205
203
  case "removeAuditor": {
206
204
  const [auditor] = params.args;
207
- return this.wrapParseCall(params, {
205
+ return {
208
206
  auditor
209
- });
207
+ };
210
208
  }
211
209
  case "addPublicDomain": {
212
210
  const [domain] = params.args;
213
- return this.wrapParseCall(params, {
211
+ return {
214
212
  domain: hexToString(domain, { size: 32 })
215
- });
213
+ };
216
214
  }
217
215
  case "removePublicContractType": {
218
216
  const [contractType] = params.args;
219
- return this.wrapParseCall(params, {
217
+ return {
220
218
  contractType: hexToString(contractType, { size: 32 })
221
- });
219
+ };
222
220
  }
223
221
  case "forbidInitCode": {
224
222
  const [bytecodeHash] = params.args;
225
- return this.wrapParseCall(params, {
223
+ return {
226
224
  bytecodeHash
227
- });
225
+ };
228
226
  }
229
227
  case "setTokenSpecificPostfix": {
230
228
  const [token, postfix] = params.args;
231
- return this.wrapParseCall(params, {
229
+ return {
232
230
  token,
233
231
  postfix: hexToString(postfix, { size: 32 })
234
- });
232
+ };
235
233
  }
236
234
  case "uploadBytecode": {
237
235
  const [uploadData] = params.args;
238
- return this.wrapParseCall(params, {
236
+ return {
239
237
  contractType: hexToString(uploadData.contractType, { size: 32 }),
240
238
  version: uploadData.version.toString(),
241
239
  initCode: uploadData.initCode,
242
240
  author: uploadData.author,
243
241
  source: uploadData.source,
244
242
  authorSignature: uploadData.authorSignature
245
- });
243
+ };
246
244
  }
247
245
  case "submitAuditReport": {
248
246
  const [bytecodeHash, { auditor, reportUrl, signature }] = params.args;
249
- return this.wrapParseCall(params, {
247
+ return {
250
248
  bytecodeHash,
251
249
  auditor,
252
250
  reportUrl,
253
251
  signature
254
- });
252
+ };
255
253
  }
256
254
  // TODO: add all functions here!
257
255
  // case "deployContract": {
@@ -272,7 +270,7 @@ class BytecodeRepositoryContract extends BaseContract {
272
270
  // });
273
271
  // }
274
272
  default:
275
- return void 0;
273
+ return super.parseFunctionParams(params);
276
274
  }
277
275
  }
278
276
  async signBytecodeHash(bytecodeHash, auditor, reportUrl, signature, sponsor) {
@@ -3,11 +3,11 @@ import {
3
3
  parseAbi
4
4
  } from "viem";
5
5
  import { tokenCompressorAbi } from "../../../abi/compressors/tokenCompressor.js";
6
- import { BaseContract } from "../base-contract.js";
6
+ import { BaseContract } from "../../../sdk/index.js";
7
7
  const abi = tokenCompressorAbi;
8
8
  class TokenCompressorContract extends BaseContract {
9
- constructor(address, client) {
10
- super(abi, address, client, "TokenCompressor");
9
+ constructor(addr, client) {
10
+ super({ client }, { abi, addr, name: "TokenCompressor" });
11
11
  }
12
12
  async getTokenInfo(token) {
13
13
  const result = await this.contract.read.getTokenInfo([token]);
@@ -2,11 +2,11 @@ import {
2
2
  hexToString
3
3
  } from "viem";
4
4
  import { withdrawalCompressorAbi } from "../../../abi/compressors/withdrawalCompressor.js";
5
- import { BaseContract } from "../base-contract.js";
5
+ import { BaseContract } from "../../../sdk/index.js";
6
6
  const abi = withdrawalCompressorAbi;
7
7
  class WithdrawalCompressorContract extends BaseContract {
8
- constructor(address, client) {
9
- super(abi, address, client, "RoutingManager");
8
+ constructor(addr, client) {
9
+ super({ client }, { abi, addr, name: "WithdrawalCompressor" });
10
10
  }
11
11
  parseFunctionParams(params) {
12
12
  const { functionName, args } = params;
@@ -14,22 +14,16 @@ class WithdrawalCompressorContract extends BaseContract {
14
14
  case "setWithdrawableTypeToCompressorType": {
15
15
  const [withdrawableType, compressorType] = args;
16
16
  return {
17
- chainId: 0,
18
- target: this.address,
19
- label: this.name,
20
- functionName,
21
- args: {
22
- withdrawableType: hexToString(withdrawableType, {
23
- size: 32
24
- }),
25
- compressorType: hexToString(compressorType, {
26
- size: 32
27
- })
28
- }
17
+ withdrawableType: hexToString(withdrawableType, {
18
+ size: 32
19
+ }),
20
+ compressorType: hexToString(compressorType, {
21
+ size: 32
22
+ })
29
23
  };
30
24
  }
31
25
  default:
32
- return void 0;
26
+ return super.parseFunctionParams(params);
33
27
  }
34
28
  }
35
29
  }
@@ -5,17 +5,19 @@ import {
5
5
  zeroAddress
6
6
  } from "viem";
7
7
  import { crossChainMultisigAbi } from "../../abi/310/crossChainMultisig.js";
8
- import { json_stringify } from "../../sdk/utils/index.js";
8
+ import {
9
+ BaseContract,
10
+ json_stringify
11
+ } from "../../sdk/index.js";
9
12
  import { Addresses } from "../deployment/addresses.js";
10
13
  import { normalizeSignature } from "../utils/index.js";
11
14
  import { CROSS_CHAIN_MULTISIG } from "../utils/literals.js";
12
- import { BaseContract } from "./base-contract.js";
13
15
  import { InstanceManagerContract } from "./instance-manager.js";
14
16
  import { MarketConfiguratorFactoryContract } from "./market-configurator-factory.js";
15
17
  const abi = crossChainMultisigAbi;
16
18
  class CrossChainMultisigContract extends BaseContract {
17
- constructor(address, client) {
18
- super(abi, address, client, "CrossChainMultisig");
19
+ constructor(addr, client) {
20
+ super({ client }, { abi, addr, name: "CrossChainMultisig" });
19
21
  }
20
22
  async getExecutedBatches(fromBlock, toBlock) {
21
23
  const events = await this.getEvents("ExecuteBatch", fromBlock, toBlock);
@@ -66,7 +68,9 @@ class CrossChainMultisigContract extends BaseContract {
66
68
  transactionHash,
67
69
  blockNumber,
68
70
  hash: proposalHash,
69
- parsedCalls: calls.map((c) => BaseContract.parseCall(c)),
71
+ parsedCalls: calls.map(
72
+ (c) => this.register.parseFunctionData(c.target, c.callData)
73
+ ),
70
74
  signatures
71
75
  };
72
76
  }
@@ -158,7 +162,7 @@ class CrossChainMultisigContract extends BaseContract {
158
162
  async getSigners() {
159
163
  return [...await this.contract.read.getSigners()];
160
164
  }
161
- decodeFunctionData(target, calldata) {
165
+ #decodeFunctionData(target, calldata) {
162
166
  switch (target.toLowerCase()) {
163
167
  case this.address.toLowerCase(): {
164
168
  return this.parseFunctionData(calldata);
@@ -188,38 +192,38 @@ class CrossChainMultisigContract extends BaseContract {
188
192
  switch (params.functionName) {
189
193
  case "addSigner": {
190
194
  const [signer] = params.args;
191
- return this.wrapParseCall(params, {
195
+ return {
192
196
  signer
193
- });
197
+ };
194
198
  }
195
199
  case "removeSigner": {
196
200
  const [signer] = params.args;
197
- return this.wrapParseCall(params, {
201
+ return {
198
202
  signer
199
- });
203
+ };
200
204
  }
201
205
  case "setConfirmationThreshold": {
202
206
  const [threshold] = params.args;
203
- return this.wrapParseCall(params, {
207
+ return {
204
208
  threshold: threshold.toString()
205
- });
209
+ };
206
210
  }
207
211
  case "submitBatch": {
208
212
  const [name, calls, prevHash] = params.args;
209
- return this.wrapParseCall(params, {
213
+ return {
210
214
  name,
211
215
  calls: json_stringify(
212
216
  calls.map(({ chainId, target, callData }) => ({
213
- ...this.decodeFunctionData(target, callData),
217
+ ...this.#decodeFunctionData(target, callData),
214
218
  chainId: Number(chainId),
215
219
  target
216
220
  }))
217
221
  ),
218
222
  prevHash
219
- });
223
+ };
220
224
  }
221
225
  default:
222
- return void 0;
226
+ return super.parseFunctionParams(params);
223
227
  }
224
228
  }
225
229
  async validateProposalSignature(proposalHash, signature) {
@@ -1,5 +1,8 @@
1
+ import {
2
+ decodeFunctionData
3
+ } from "viem";
4
+ import { functionArgsToMap } from "../../../sdk/index.js";
1
5
  import { createCallData } from "../../core/raw-tx.js";
2
- import { decodeFunctionWithNamedArgs } from "../../utils/abi-decoder.js";
3
6
  class AbstractFactory {
4
7
  abi;
5
8
  constructor(abi) {
@@ -15,11 +18,13 @@ class AbstractFactory {
15
18
  * @returns Decoded function name and arguments, or null if decoding fails
16
19
  */
17
20
  decodeConfig(calldata) {
18
- const decoded = decodeFunctionWithNamedArgs(this.abi, calldata);
19
- if (!decoded) return null;
21
+ const decoded = decodeFunctionData({
22
+ abi: this.abi,
23
+ data: calldata
24
+ });
20
25
  return {
21
26
  functionName: decoded.functionName,
22
- args: decoded.args
27
+ args: functionArgsToMap(this.abi, decoded.functionName, decoded.args)
23
28
  };
24
29
  }
25
30
  }
@@ -1,9 +1,9 @@
1
1
  import { batchesChainAbi } from "../../../abi/governance/batchesChain.js";
2
- import { BaseContract } from "../base-contract.js";
2
+ import { BaseContract } from "../../../sdk/index.js";
3
3
  const abi = batchesChainAbi;
4
4
  class BatchesChainContract extends BaseContract {
5
- constructor(address, client) {
6
- super(abi, address, client, "BatchesChain");
5
+ constructor(addr, client) {
6
+ super({ client }, { abi, addr, name: "BatchesChain" });
7
7
  }
8
8
  createBatchOrderingTx(prevHash) {
9
9
  return this.createRawTx({
@@ -6,17 +6,16 @@ import {
6
6
  } from "viem";
7
7
  import { formatAbiItem } from "viem/utils";
8
8
  import { governorAbi } from "../../../abi/governance/governor.js";
9
- import { json_stringify } from "../../../sdk/utils/index.js";
9
+ import { BaseContract, json_stringify } from "../../../sdk/index.js";
10
10
  import { formatTimestamp } from "../../utils/index.js";
11
- import { BaseContract } from "../base-contract.js";
12
11
  import { MarketConfiguratorContract } from "../market-configurator.js";
13
12
  import { TreasurySplitterContract } from "../treasury-splitter.js";
14
13
  import { BatchesChainContract } from "./batches-chain.js";
15
14
  const abi = governorAbi;
16
15
  class GovernorContract extends BaseContract {
17
16
  batchesChainContract;
18
- constructor(address, client) {
19
- super(abi, address, client, "Governor");
17
+ constructor(addr, client) {
18
+ super({ client }, { abi, addr, name: "Governor" });
20
19
  this.batchesChainContract = new BatchesChainContract(
21
20
  "0x59b2fd348e4Ade84ffEfDaf5fcdDa7276c8C5041",
22
21
  client
@@ -121,7 +120,7 @@ class GovernorContract extends BaseContract {
121
120
  ).join("\n")})`
122
121
  });
123
122
  }
124
- decodeFunctionData(target, calldata) {
123
+ #decodeFunctionData(target, calldata) {
125
124
  switch (target.toLowerCase()) {
126
125
  case this.address.toLowerCase(): {
127
126
  return this.parseFunctionData(calldata);
@@ -160,62 +159,44 @@ class GovernorContract extends BaseContract {
160
159
  case "startBatch": {
161
160
  const [eta] = args;
162
161
  return {
163
- chainId: 0,
164
- target: this.address,
165
- label: this.name,
166
- functionName,
167
- args: {
168
- eta: formatTimestamp(Number(eta))
169
- }
162
+ eta: formatTimestamp(Number(eta))
170
163
  };
171
164
  }
172
165
  case "queueTransaction": {
173
166
  const [target, value, signature, data, eta] = args;
174
167
  const calldata = keccak256(toBytes(signature)).slice(0, 10) + data.slice(2);
175
168
  return {
176
- chainId: 0,
177
- target: this.address,
178
- label: this.name,
179
- functionName,
180
- args: {
181
- target,
182
- value: formatEther(value),
183
- signature,
184
- data: json_stringify(
185
- this.decodeFunctionData(target, calldata)?.args ?? calldata
186
- ),
187
- eta: formatTimestamp(Number(eta))
188
- }
169
+ target,
170
+ value: formatEther(value),
171
+ signature,
172
+ data: json_stringify(
173
+ this.#decodeFunctionData(target, calldata)?.args ?? calldata
174
+ ),
175
+ eta: formatTimestamp(Number(eta))
189
176
  };
190
177
  }
191
178
  case "executeBatch": {
192
179
  const [txs] = args;
193
180
  return {
194
- chainId: 0,
195
- target: this.address,
196
- label: this.name,
197
- functionName,
198
- args: {
199
- txs: json_stringify(
200
- txs.map((tx) => {
201
- const { target, value, signature, data, eta } = tx;
202
- const calldata = keccak256(toBytes(signature)).slice(0, 10) + data.slice(2);
203
- return {
204
- target,
205
- value: formatEther(value),
206
- signature,
207
- data: json_stringify(
208
- this.decodeFunctionData(target, calldata)?.args ?? calldata
209
- ),
210
- eta: formatTimestamp(Number(eta))
211
- };
212
- })
213
- )
214
- }
181
+ txs: json_stringify(
182
+ txs.map((tx) => {
183
+ const { target, value, signature, data, eta } = tx;
184
+ const calldata = keccak256(toBytes(signature)).slice(0, 10) + data.slice(2);
185
+ return {
186
+ target,
187
+ value: formatEther(value),
188
+ signature,
189
+ data: json_stringify(
190
+ this.#decodeFunctionData(target, calldata)?.args ?? calldata
191
+ ),
192
+ eta: formatTimestamp(Number(eta))
193
+ };
194
+ })
195
+ )
215
196
  };
216
197
  }
217
198
  default:
218
- return void 0;
199
+ return super.parseFunctionParams(params);
219
200
  }
220
201
  }
221
202
  }
@@ -1,8 +1,8 @@
1
1
  import { iTimeLockAbi } from "../../../abi/governance/iTimeLock.js";
2
- import { BaseContract } from "../base-contract.js";
2
+ import { BaseContract } from "../../../sdk/index.js";
3
3
  class TimeLockContract extends BaseContract {
4
- constructor(address, client) {
5
- super(iTimeLockAbi, address, client, "TimeLock");
4
+ constructor(addr, client) {
5
+ super({ client }, { abi: iTimeLockAbi, addr, name: "TimeLock" });
6
6
  }
7
7
  async admin() {
8
8
  const admin = await this.client.readContract({
@@ -1,5 +1,4 @@
1
1
  export * from "./address-provider.js";
2
- export * from "./base-contract.js";
3
2
  export * from "./bytecode-repository.js";
4
3
  export * from "./compressors/index.js";
5
4
  export * from "./cross-chain-multisig.js";