@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.
- package/dist/cjs/dev/create2.js +1 -1
- package/dist/cjs/dev/mint/AbstractMinter.js +2 -4
- package/dist/cjs/dev/mint/DealMinter.js +0 -3
- package/dist/cjs/dev/mint/DirectMinter.js +0 -3
- package/dist/cjs/dev/mint/FallbackMinter.js +1 -1
- package/dist/cjs/dev/mint/TransferMinter.js +0 -3
- package/dist/cjs/permissionless/bindings/address-provider.js +4 -6
- package/dist/cjs/permissionless/bindings/bytecode-repository.js +23 -25
- package/dist/cjs/permissionless/bindings/compressors/token-compressor.js +4 -4
- package/dist/cjs/permissionless/bindings/compressors/withdrawal-compressor.js +11 -17
- package/dist/cjs/permissionless/bindings/cross-chain-multisig.js +23 -22
- package/dist/cjs/permissionless/bindings/factory/abstract-factory.js +7 -4
- package/dist/cjs/permissionless/bindings/governance/batches-chain.js +4 -4
- package/dist/cjs/permissionless/bindings/governance/governor.js +30 -49
- package/dist/cjs/permissionless/bindings/governance/timelock.js +4 -4
- package/dist/cjs/permissionless/bindings/index.js +0 -2
- package/dist/cjs/permissionless/bindings/instance-manager.js +58 -77
- package/dist/cjs/permissionless/bindings/market-configurator-factory.js +4 -4
- package/dist/cjs/permissionless/bindings/market-configurator.js +71 -143
- package/dist/cjs/permissionless/bindings/price-feed-store.js +8 -17
- package/dist/cjs/permissionless/bindings/router/routing-manager.js +9 -15
- package/dist/cjs/permissionless/bindings/treasury-splitter.js +14 -23
- package/dist/cjs/permissionless/core/raw-tx.js +2 -2
- package/dist/cjs/permissionless/utils/format.js +2 -2
- package/dist/cjs/permissionless/utils/governance/timelock-txs.js +2 -2
- package/dist/cjs/permissionless/utils/index.js +0 -2
- package/dist/cjs/permissionless/utils/price-update/get-price-feeds.js +1 -2
- package/dist/cjs/permissionless/utils/price-update/get-price-update-tx.js +1 -2
- package/dist/cjs/permissionless/utils/price-update/get-prices.js +1 -2
- package/dist/cjs/permissionless/utils/price-update/get-updatable-feeds.js +2 -3
- package/dist/cjs/plugins/adapters/contracts/AbstractAdapter.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/AccountMigratorAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/BalancerV2VaultAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/CamelotV3AdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterDeposit.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/DaiUsdsAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/ERC4626AdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/EqualizerRouterAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/FluidDexAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/InfraredVaultAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/LidoV1AdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/MellowClaimerAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/MellowDVVAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/MellowVaultAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/MellowWrapperAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/PendleRouterAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/StakingRewardsAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/UniswapV2AdapterContract.js +5 -5
- package/dist/cjs/plugins/adapters/contracts/UniswapV3AdapterContract.js +22 -22
- package/dist/cjs/plugins/adapters/contracts/UniswapV4AdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/VelodromeV2AdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/WstETHV1AdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/YearnV2AdapterContract.js +2 -2
- package/dist/cjs/plugins/bots/BotsPlugin.js +26 -111
- package/dist/cjs/plugins/bots/PartialLiquidationBotV310Contract.js +38 -6
- package/dist/cjs/plugins/bots/deserializePartialLiquidationBotParams.js +49 -0
- package/dist/cjs/plugins/bots/index.js +0 -2
- package/dist/cjs/plugins/bots/types.js +3 -8
- package/dist/cjs/plugins/zappers/ZappersPlugin.js +1 -1
- package/dist/cjs/sdk/GearboxSDK.js +8 -110
- package/dist/cjs/sdk/accountMigration/AbstractMigrateCreditAccountsService.js +1 -4
- package/dist/cjs/sdk/accounts/AbstractCreditAccountsService.js +6 -8
- package/dist/cjs/sdk/base/BaseContract.js +195 -80
- package/dist/cjs/sdk/base/ChainContractsRegister.js +135 -0
- package/dist/cjs/sdk/base/Construct.js +87 -0
- package/dist/cjs/sdk/base/SDKConstruct.js +3 -29
- package/dist/cjs/sdk/base/TokensMeta.js +4 -4
- package/dist/cjs/sdk/base/index.js +4 -2
- package/dist/cjs/sdk/core/BotListV3Contract.js +2 -2
- package/dist/cjs/sdk/core/GearStakingV3Contract.js +2 -2
- package/dist/cjs/sdk/core/address-provider/AbstractAddressProviderContract.js +2 -2
- package/dist/cjs/sdk/core/address-provider/AddressProviderV300Contract.js +11 -6
- package/dist/cjs/sdk/core/address-provider/AddressProviderV310Contract.js +4 -4
- package/dist/cjs/sdk/market/MarketConfiguratorContract.js +5 -5
- package/dist/cjs/sdk/market/MarketRegister.js +7 -9
- package/dist/cjs/sdk/market/MarketSuite.js +2 -2
- package/dist/cjs/sdk/market/credit/CreditConfiguratorV300Contract.js +4 -3
- package/dist/cjs/sdk/market/credit/CreditConfiguratorV310Contract.js +4 -3
- package/dist/cjs/sdk/market/credit/CreditFacadeV300Contract.js +9 -9
- package/dist/cjs/sdk/market/credit/CreditFacadeV310Contract.js +8 -8
- package/dist/cjs/sdk/market/credit/CreditManagerV300Contract.js +5 -2
- package/dist/cjs/sdk/market/credit/CreditManagerV310Contract.js +5 -2
- package/dist/cjs/sdk/market/credit/CreditSuite.js +2 -3
- package/dist/cjs/sdk/market/loss-policy/AliasLossPolicyV310Contract.js +3 -1
- package/dist/cjs/sdk/market/loss-policy/LossPolicyContract.js +2 -2
- package/dist/cjs/sdk/market/loss-policy/createLossPolicy.js +1 -1
- package/dist/cjs/sdk/market/oracle/PriceOracleBaseContract.js +8 -26
- package/dist/cjs/sdk/market/oracle/createPriceOracle.js +1 -1
- package/dist/cjs/sdk/market/pool/GaugeContract.js +2 -2
- package/dist/cjs/sdk/market/pool/LinearInterestRateModelContract.js +2 -2
- package/dist/cjs/sdk/market/pool/PoolQuotaKeeperV300Contract.js +2 -2
- package/dist/cjs/sdk/market/pool/PoolQuotaKeeperV310Contract.js +2 -2
- package/dist/cjs/sdk/market/pool/PoolSuite.js +1 -1
- package/dist/cjs/sdk/market/pool/PoolV300Contract.js +5 -5
- package/dist/cjs/sdk/market/pool/PoolV310Contract.js +5 -5
- package/dist/cjs/sdk/market/pool/TumblerContract.js +2 -2
- package/dist/cjs/sdk/market/pool/createInterestRateModel.js +11 -15
- package/dist/cjs/sdk/market/pricefeeds/AbstractLPPriceFeed.js +2 -22
- package/dist/cjs/sdk/market/pricefeeds/AbstractPriceFeed.js +3 -3
- package/dist/cjs/sdk/market/pricefeeds/BalancerStablePriceFeed.js +2 -9
- package/dist/cjs/sdk/market/pricefeeds/BalancerWeightedPriceFeed.js +2 -9
- package/dist/cjs/sdk/market/pricefeeds/BoundedPriceFeed.js +6 -2
- package/dist/cjs/sdk/market/pricefeeds/CompositePriceFeed.js +2 -2
- package/dist/cjs/sdk/market/pricefeeds/ConstantPriceFeed.js +2 -2
- package/dist/cjs/sdk/market/pricefeeds/CurveCryptoPriceFeed.js +2 -9
- package/dist/cjs/sdk/market/pricefeeds/CurveStablePriceFeed.js +2 -9
- package/dist/cjs/sdk/market/pricefeeds/CurveUSDPriceFeed.js +2 -9
- package/dist/cjs/sdk/market/pricefeeds/Erc4626PriceFeed.js +2 -18
- package/dist/cjs/sdk/market/pricefeeds/ExternalPriceFeed.js +2 -2
- package/dist/cjs/sdk/market/pricefeeds/MellowLRTPriceFeed.js +2 -10
- package/dist/cjs/sdk/market/pricefeeds/PendleTWAPPTPriceFeed.js +2 -2
- package/dist/cjs/sdk/market/pricefeeds/PriceFeedRef.js +6 -4
- package/dist/cjs/sdk/market/pricefeeds/PriceFeedsRegister.js +2 -3
- package/dist/cjs/sdk/market/pricefeeds/PythPriceFeed.js +2 -2
- package/dist/cjs/sdk/market/pricefeeds/RedstonePriceFeed.js +3 -3
- package/dist/cjs/sdk/market/pricefeeds/WstETHPriceFeed.js +2 -9
- package/dist/cjs/sdk/market/pricefeeds/YearnPriceFeed.js +2 -9
- package/dist/cjs/sdk/market/pricefeeds/ZeroPriceFeed.js +2 -2
- package/dist/cjs/sdk/market/pricefeeds/updates/PriceUpdatesCache.js +17 -0
- package/dist/cjs/sdk/market/pricefeeds/updates/PythUpdater.js +7 -9
- package/dist/cjs/sdk/market/pricefeeds/updates/RedstoneUpdater.js +10 -12
- package/dist/cjs/sdk/router/AbstractRouterContract.js +5 -0
- package/dist/cjs/sdk/router/RouterV310Contract.js +3 -3
- package/dist/cjs/sdk/router/createRouter.js +4 -0
- package/dist/cjs/sdk/utils/abi-decode.js +58 -0
- package/dist/cjs/sdk/utils/index.js +2 -0
- package/dist/esm/dev/create2.js +2 -2
- package/dist/esm/dev/mint/AbstractMinter.js +3 -7
- package/dist/esm/dev/mint/DealMinter.js +0 -3
- package/dist/esm/dev/mint/DirectMinter.js +0 -3
- package/dist/esm/dev/mint/FallbackMinter.js +1 -1
- package/dist/esm/dev/mint/TransferMinter.js +0 -3
- package/dist/esm/permissionless/bindings/address-provider.js +7 -7
- package/dist/esm/permissionless/bindings/bytecode-repository.js +22 -24
- package/dist/esm/permissionless/bindings/compressors/token-compressor.js +3 -3
- package/dist/esm/permissionless/bindings/compressors/withdrawal-compressor.js +10 -16
- package/dist/esm/permissionless/bindings/cross-chain-multisig.js +20 -16
- package/dist/esm/permissionless/bindings/factory/abstract-factory.js +9 -4
- package/dist/esm/permissionless/bindings/governance/batches-chain.js +3 -3
- package/dist/esm/permissionless/bindings/governance/governor.js +28 -47
- package/dist/esm/permissionless/bindings/governance/timelock.js +3 -3
- package/dist/esm/permissionless/bindings/index.js +0 -1
- package/dist/esm/permissionless/bindings/instance-manager.js +53 -69
- package/dist/esm/permissionless/bindings/market-configurator-factory.js +3 -3
- package/dist/esm/permissionless/bindings/market-configurator.js +65 -137
- package/dist/esm/permissionless/bindings/price-feed-store.js +8 -14
- package/dist/esm/permissionless/bindings/router/routing-manager.js +8 -14
- package/dist/esm/permissionless/bindings/treasury-splitter.js +15 -22
- package/dist/esm/permissionless/core/raw-tx.js +1 -1
- package/dist/esm/permissionless/utils/format.js +1 -1
- package/dist/esm/permissionless/utils/governance/timelock-txs.js +1 -1
- package/dist/esm/permissionless/utils/index.js +0 -1
- package/dist/esm/permissionless/utils/price-update/get-price-feeds.js +4 -2
- package/dist/esm/permissionless/utils/price-update/get-price-update-tx.js +1 -1
- package/dist/esm/permissionless/utils/price-update/get-prices.js +1 -2
- package/dist/esm/permissionless/utils/price-update/get-updatable-feeds.js +1 -1
- package/dist/esm/plugins/adapters/contracts/AbstractAdapter.js +2 -2
- package/dist/esm/plugins/adapters/contracts/AccountMigratorAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/BalancerV2VaultAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/CamelotV3AdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/CurveV1AdapterDeposit.js +2 -2
- package/dist/esm/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/DaiUsdsAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/ERC4626AdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/EqualizerRouterAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/FluidDexAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/InfraredVaultAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/LidoV1AdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/MellowClaimerAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/MellowDVVAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/MellowVaultAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/MellowWrapperAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/PendleRouterAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/StakingRewardsAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/UniswapV2AdapterContract.js +5 -5
- package/dist/esm/plugins/adapters/contracts/UniswapV3AdapterContract.js +22 -22
- package/dist/esm/plugins/adapters/contracts/UniswapV4AdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/VelodromeV2AdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/WstETHV1AdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/YearnV2AdapterContract.js +2 -2
- package/dist/esm/plugins/bots/BotsPlugin.js +28 -121
- package/dist/esm/plugins/bots/PartialLiquidationBotV310Contract.js +41 -6
- package/dist/esm/plugins/bots/deserializePartialLiquidationBotParams.js +29 -0
- package/dist/esm/plugins/bots/index.js +0 -1
- package/dist/esm/plugins/bots/types.js +2 -7
- package/dist/esm/plugins/zappers/ZappersPlugin.js +1 -1
- package/dist/esm/sdk/GearboxSDK.js +10 -112
- package/dist/esm/sdk/accountMigration/AbstractMigrateCreditAccountsService.js +1 -4
- package/dist/esm/sdk/accounts/AbstractCreditAccountsService.js +7 -9
- package/dist/esm/sdk/base/BaseContract.js +202 -81
- package/dist/esm/sdk/base/ChainContractsRegister.js +111 -0
- package/dist/esm/sdk/base/Construct.js +63 -0
- package/dist/esm/sdk/base/SDKConstruct.js +3 -29
- package/dist/esm/sdk/base/TokensMeta.js +4 -4
- package/dist/esm/sdk/base/index.js +2 -1
- package/dist/esm/sdk/core/BotListV3Contract.js +2 -2
- package/dist/esm/sdk/core/GearStakingV3Contract.js +2 -2
- package/dist/esm/sdk/core/address-provider/AbstractAddressProviderContract.js +2 -2
- package/dist/esm/sdk/core/address-provider/AddressProviderV300Contract.js +11 -6
- package/dist/esm/sdk/core/address-provider/AddressProviderV310Contract.js +4 -4
- package/dist/esm/sdk/market/MarketConfiguratorContract.js +5 -5
- package/dist/esm/sdk/market/MarketRegister.js +8 -10
- package/dist/esm/sdk/market/MarketSuite.js +2 -2
- package/dist/esm/sdk/market/credit/CreditConfiguratorV300Contract.js +4 -3
- package/dist/esm/sdk/market/credit/CreditConfiguratorV310Contract.js +4 -3
- package/dist/esm/sdk/market/credit/CreditFacadeV300Contract.js +9 -9
- package/dist/esm/sdk/market/credit/CreditFacadeV310Contract.js +8 -8
- package/dist/esm/sdk/market/credit/CreditManagerV300Contract.js +5 -2
- package/dist/esm/sdk/market/credit/CreditManagerV310Contract.js +5 -2
- package/dist/esm/sdk/market/credit/CreditSuite.js +2 -3
- package/dist/esm/sdk/market/loss-policy/AliasLossPolicyV310Contract.js +3 -1
- package/dist/esm/sdk/market/loss-policy/LossPolicyContract.js +5 -3
- package/dist/esm/sdk/market/loss-policy/createLossPolicy.js +1 -1
- package/dist/esm/sdk/market/oracle/PriceOracleBaseContract.js +8 -26
- package/dist/esm/sdk/market/oracle/createPriceOracle.js +1 -1
- package/dist/esm/sdk/market/pool/GaugeContract.js +2 -2
- package/dist/esm/sdk/market/pool/LinearInterestRateModelContract.js +2 -2
- package/dist/esm/sdk/market/pool/PoolQuotaKeeperV300Contract.js +2 -2
- package/dist/esm/sdk/market/pool/PoolQuotaKeeperV310Contract.js +2 -2
- package/dist/esm/sdk/market/pool/PoolSuite.js +1 -1
- package/dist/esm/sdk/market/pool/PoolV300Contract.js +5 -5
- package/dist/esm/sdk/market/pool/PoolV310Contract.js +5 -5
- package/dist/esm/sdk/market/pool/TumblerContract.js +2 -2
- package/dist/esm/sdk/market/pool/createInterestRateModel.js +11 -15
- package/dist/esm/sdk/market/pricefeeds/AbstractLPPriceFeed.js +2 -22
- package/dist/esm/sdk/market/pricefeeds/AbstractPriceFeed.js +3 -3
- package/dist/esm/sdk/market/pricefeeds/BalancerStablePriceFeed.js +3 -13
- package/dist/esm/sdk/market/pricefeeds/BalancerWeightedPriceFeed.js +3 -13
- package/dist/esm/sdk/market/pricefeeds/BoundedPriceFeed.js +6 -2
- package/dist/esm/sdk/market/pricefeeds/CompositePriceFeed.js +2 -2
- package/dist/esm/sdk/market/pricefeeds/ConstantPriceFeed.js +2 -2
- package/dist/esm/sdk/market/pricefeeds/CurveCryptoPriceFeed.js +3 -10
- package/dist/esm/sdk/market/pricefeeds/CurveStablePriceFeed.js +3 -10
- package/dist/esm/sdk/market/pricefeeds/CurveUSDPriceFeed.js +3 -10
- package/dist/esm/sdk/market/pricefeeds/Erc4626PriceFeed.js +2 -18
- package/dist/esm/sdk/market/pricefeeds/ExternalPriceFeed.js +2 -2
- package/dist/esm/sdk/market/pricefeeds/MellowLRTPriceFeed.js +3 -11
- package/dist/esm/sdk/market/pricefeeds/PendleTWAPPTPriceFeed.js +2 -2
- package/dist/esm/sdk/market/pricefeeds/PriceFeedRef.js +7 -5
- package/dist/esm/sdk/market/pricefeeds/PriceFeedsRegister.js +3 -9
- package/dist/esm/sdk/market/pricefeeds/PythPriceFeed.js +2 -2
- package/dist/esm/sdk/market/pricefeeds/RedstonePriceFeed.js +3 -3
- package/dist/esm/sdk/market/pricefeeds/WstETHPriceFeed.js +3 -10
- package/dist/esm/sdk/market/pricefeeds/YearnPriceFeed.js +3 -10
- package/dist/esm/sdk/market/pricefeeds/ZeroPriceFeed.js +2 -2
- package/dist/esm/sdk/market/pricefeeds/updates/PriceUpdatesCache.js +17 -0
- package/dist/esm/sdk/market/pricefeeds/updates/PythUpdater.js +8 -10
- package/dist/esm/sdk/market/pricefeeds/updates/RedstoneUpdater.js +11 -13
- package/dist/esm/sdk/router/AbstractRouterContract.js +5 -0
- package/dist/esm/sdk/router/RouterV310Contract.js +3 -3
- package/dist/esm/sdk/router/createRouter.js +4 -0
- package/dist/esm/sdk/utils/abi-decode.js +37 -0
- package/dist/esm/sdk/utils/index.js +1 -0
- package/dist/types/dev/create2.d.ts +2 -2
- package/dist/types/dev/mint/AbstractMinter.d.ts +3 -4
- package/dist/types/dev/mint/DealMinter.d.ts +0 -3
- package/dist/types/dev/mint/DirectMinter.d.ts +0 -3
- package/dist/types/dev/mint/TransferMinter.d.ts +0 -3
- package/dist/types/permissionless/bindings/address-provider.d.ts +4 -255
- package/dist/types/permissionless/bindings/bytecode-repository.d.ts +5 -6
- package/dist/types/permissionless/bindings/compressors/token-compressor.d.ts +3 -3
- package/dist/types/permissionless/bindings/compressors/withdrawal-compressor.d.ts +4 -5
- package/dist/types/permissionless/bindings/cross-chain-multisig.d.ts +7 -7
- package/dist/types/permissionless/bindings/factory/abstract-factory.d.ts +1 -1
- package/dist/types/permissionless/bindings/governance/batches-chain.d.ts +3 -4
- package/dist/types/permissionless/bindings/governance/governor.d.ts +6 -7
- package/dist/types/permissionless/bindings/governance/timelock.d.ts +3 -3
- package/dist/types/permissionless/bindings/governance/types.d.ts +1 -1
- package/dist/types/permissionless/bindings/index.d.ts +0 -1
- package/dist/types/permissionless/bindings/instance-manager.d.ts +6 -7
- package/dist/types/permissionless/bindings/market-configurator-factory.d.ts +4 -4
- package/dist/types/permissionless/bindings/market-configurator.d.ts +6 -6
- package/dist/types/permissionless/bindings/price-feed-store.d.ts +6 -7
- package/dist/types/permissionless/bindings/router/routing-manager.d.ts +4 -5
- package/dist/types/permissionless/bindings/treasury-splitter.d.ts +5 -6
- package/dist/types/permissionless/core/proposal.d.ts +1 -7
- package/dist/types/permissionless/utils/create2.d.ts +1 -1
- package/dist/types/permissionless/utils/governance/batch.d.ts +1 -1
- package/dist/types/permissionless/utils/index.d.ts +0 -1
- package/dist/types/permissionless/utils/price-update/get-price-feeds.d.ts +3 -3
- package/dist/types/permissionless/utils/price-update/get-price-update-tx.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/AbstractAdapter.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/AccountMigratorAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/BalancerV2VaultAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/BalancerV3RouterAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/CamelotV3AdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/Curve2AssetsAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/Curve3AssetsAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/Curve4AssetsAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/CurveV1AdapterDeposit.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/CurveV1AdapterStETHContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/CurveV1StableNGAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/DaiUsdsAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/ERC4626AdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/ERC4626ReferralAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/EqualizerRouterAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/FluidDexAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/InfinifiGatewayAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/InfraredVaultAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/LidoV1AdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/MellowClaimerAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/MellowDVVAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/MellowDepositQueueAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/MellowVaultAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/MellowWrapperAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/PendleRouterAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/StakingRewardsAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/TraderJoeRouterAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/UniswapV2AdapterContract.d.ts +3 -3
- package/dist/types/plugins/adapters/contracts/UniswapV3AdapterContract.d.ts +3 -3
- package/dist/types/plugins/adapters/contracts/UniswapV4AdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/UpshiftVaultAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/VelodromeV2AdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/WstETHV1AdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/YearnV2AdapterContract.d.ts +2 -2
- package/dist/types/plugins/bots/BotsPlugin.d.ts +3 -13
- package/dist/types/plugins/bots/PartialLiquidationBotV310Contract.d.ts +19 -6
- package/dist/types/plugins/bots/deserializePartialLiquidationBotParams.d.ts +3 -0
- package/dist/types/plugins/bots/index.d.ts +0 -1
- package/dist/types/plugins/bots/types.d.ts +8 -21
- package/dist/types/sdk/GearboxSDK.d.ts +5 -76
- package/dist/types/sdk/accountMigration/types.d.ts +1 -2
- package/dist/types/sdk/accounts/types.d.ts +4 -3
- package/dist/types/sdk/base/BaseContract.d.ts +72 -28
- package/dist/types/sdk/base/ChainContractsRegister.d.ts +57 -0
- package/dist/types/sdk/base/Construct.d.ts +38 -0
- package/dist/types/sdk/base/PlaceholderContract.d.ts +2 -2
- package/dist/types/sdk/base/SDKConstruct.d.ts +2 -16
- package/dist/types/sdk/base/TokensMeta.d.ts +2 -3
- package/dist/types/sdk/base/index.d.ts +2 -1
- package/dist/types/sdk/base/types.d.ts +50 -0
- package/dist/types/sdk/core/BotListV3Contract.d.ts +1 -1
- package/dist/types/sdk/core/GearStakingV3Contract.d.ts +1 -1
- package/dist/types/sdk/core/address-provider/AbstractAddressProviderContract.d.ts +3 -4
- package/dist/types/sdk/core/address-provider/AddressProviderV300Contract.d.ts +3 -3
- package/dist/types/sdk/core/address-provider/AddressProviderV310Contract.d.ts +3 -3
- package/dist/types/sdk/market/MarketConfiguratorContract.d.ts +2 -2
- package/dist/types/sdk/market/credit/CreditConfiguratorV300Contract.d.ts +3 -3
- package/dist/types/sdk/market/credit/CreditConfiguratorV310Contract.d.ts +3 -3
- package/dist/types/sdk/market/credit/CreditFacadeV300Contract.d.ts +3 -4
- package/dist/types/sdk/market/credit/CreditFacadeV310Contract.d.ts +3 -4
- package/dist/types/sdk/market/credit/CreditManagerV300Contract.d.ts +1 -1
- package/dist/types/sdk/market/credit/CreditManagerV310Contract.d.ts +1 -1
- package/dist/types/sdk/market/credit/CreditSuite.d.ts +1 -1
- package/dist/types/sdk/market/credit/types.d.ts +1 -2
- package/dist/types/sdk/market/loss-policy/AliasLossPolicyV310Contract.d.ts +1 -0
- package/dist/types/sdk/market/loss-policy/LossPolicyContract.d.ts +2 -3
- package/dist/types/sdk/market/oracle/PriceOracleBaseContract.d.ts +3 -12
- package/dist/types/sdk/market/oracle/types.d.ts +0 -10
- package/dist/types/sdk/market/pool/GaugeContract.d.ts +2 -3
- package/dist/types/sdk/market/pool/LinearInterestRateModelContract.d.ts +2 -3
- package/dist/types/sdk/market/pool/PoolQuotaKeeperV300Contract.d.ts +2 -3
- package/dist/types/sdk/market/pool/PoolQuotaKeeperV310Contract.d.ts +2 -3
- package/dist/types/sdk/market/pool/PoolV300Contract.d.ts +4 -5
- package/dist/types/sdk/market/pool/PoolV310Contract.d.ts +4 -5
- package/dist/types/sdk/market/pool/TumblerContract.d.ts +2 -3
- package/dist/types/sdk/market/pricefeeds/AbstractLPPriceFeed.d.ts +3 -8
- package/dist/types/sdk/market/pricefeeds/AbstractPriceFeed.d.ts +2 -3
- package/dist/types/sdk/market/pricefeeds/BalancerStablePriceFeed.d.ts +2 -3
- package/dist/types/sdk/market/pricefeeds/BalancerWeightedPriceFeed.d.ts +2 -3
- package/dist/types/sdk/market/pricefeeds/BoundedPriceFeed.d.ts +2 -2
- package/dist/types/sdk/market/pricefeeds/CompositePriceFeed.d.ts +2 -2
- package/dist/types/sdk/market/pricefeeds/ConstantPriceFeed.d.ts +2 -2
- package/dist/types/sdk/market/pricefeeds/CurveCryptoPriceFeed.d.ts +2 -3
- package/dist/types/sdk/market/pricefeeds/CurveStablePriceFeed.d.ts +2 -3
- package/dist/types/sdk/market/pricefeeds/CurveUSDPriceFeed.d.ts +2 -3
- package/dist/types/sdk/market/pricefeeds/Erc4626PriceFeed.d.ts +2 -3
- package/dist/types/sdk/market/pricefeeds/ExternalPriceFeed.d.ts +2 -2
- package/dist/types/sdk/market/pricefeeds/MellowLRTPriceFeed.d.ts +2 -3
- package/dist/types/sdk/market/pricefeeds/PendleTWAPPTPriceFeed.d.ts +2 -2
- package/dist/types/sdk/market/pricefeeds/PriceFeedRef.d.ts +3 -4
- package/dist/types/sdk/market/pricefeeds/PriceFeedsRegister.d.ts +1 -2
- package/dist/types/sdk/market/pricefeeds/PythPriceFeed.d.ts +2 -2
- package/dist/types/sdk/market/pricefeeds/RedstonePriceFeed.d.ts +2 -2
- package/dist/types/sdk/market/pricefeeds/WstETHPriceFeed.d.ts +2 -3
- package/dist/types/sdk/market/pricefeeds/YearnPriceFeed.d.ts +2 -3
- package/dist/types/sdk/market/pricefeeds/ZeroPriceFeed.d.ts +2 -2
- package/dist/types/sdk/market/pricefeeds/types.d.ts +0 -5
- package/dist/types/sdk/market/pricefeeds/updates/PriceUpdatesCache.d.ts +8 -1
- package/dist/types/sdk/router/AbstractRouterContract.d.ts +4 -1
- package/dist/types/sdk/router/types.d.ts +1 -2
- package/dist/types/sdk/sdk-legacy/core/creditAccount.d.ts +2 -2
- package/dist/types/sdk/utils/abi-decode.d.ts +10 -0
- package/dist/types/sdk/utils/index.d.ts +1 -0
- package/package.json +1 -1
- package/dist/cjs/permissionless/bindings/base-contract.js +0 -173
- package/dist/cjs/permissionless/utils/abi-decoder.js +0 -72
- package/dist/cjs/plugins/bots/PartialLiquidationBotBaseContract.js +0 -75
- package/dist/cjs/plugins/bots/PartialLiquidationBotV300Contract.js +0 -65
- package/dist/cjs/sdk/base/AddressLabeller.js +0 -49
- package/dist/cjs/sdk/base/IAddressLabeller.js +0 -16
- package/dist/esm/permissionless/bindings/base-contract.js +0 -151
- package/dist/esm/permissionless/utils/abi-decoder.js +0 -50
- package/dist/esm/plugins/bots/PartialLiquidationBotBaseContract.js +0 -53
- package/dist/esm/plugins/bots/PartialLiquidationBotV300Contract.js +0 -41
- package/dist/esm/sdk/base/AddressLabeller.js +0 -25
- package/dist/esm/sdk/base/IAddressLabeller.js +0 -0
- package/dist/types/permissionless/bindings/base-contract.d.ts +0 -23
- package/dist/types/permissionless/utils/abi-decoder.d.ts +0 -13
- package/dist/types/plugins/bots/PartialLiquidationBotBaseContract.d.ts +0 -25
- package/dist/types/plugins/bots/PartialLiquidationBotV300Contract.d.ts +0 -227
- package/dist/types/sdk/base/AddressLabeller.d.ts +0 -11
- package/dist/types/sdk/base/IAddressLabeller.d.ts +0 -9
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type Address } from "viem";
|
|
2
|
-
import type {
|
|
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(
|
|
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 {
|
|
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(
|
|
214
|
-
protected
|
|
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 {
|
|
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(
|
|
380
|
-
protected
|
|
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 {
|
|
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(
|
|
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 {
|
|
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(
|
|
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 {
|
|
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(
|
|
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 {
|
|
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(
|
|
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 {
|
|
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(
|
|
183
|
+
constructor(options: ConstructOptions, args: Omit<AbstractAdapterContractOptions<abi>, "abi">);
|
|
184
184
|
}
|
|
185
185
|
export {};
|
|
@@ -1,23 +1,13 @@
|
|
|
1
|
-
import { type Address } from "viem";
|
|
2
1
|
import type { IGearboxSDKPlugin } from "../../sdk/index.js";
|
|
3
|
-
import {
|
|
4
|
-
import { PartialLiquidationBotV300Contract } from "./PartialLiquidationBotV300Contract.js";
|
|
2
|
+
import { BasePlugin } from "../../sdk/index.js";
|
|
5
3
|
import { PartialLiquidationBotV310Contract } from "./PartialLiquidationBotV310Contract.js";
|
|
6
|
-
import { type
|
|
7
|
-
export declare class UnsupportedBotVersionError extends Error {
|
|
8
|
-
readonly state: BotState;
|
|
9
|
-
constructor(state: BotState);
|
|
10
|
-
}
|
|
11
|
-
export type PartialLiquidationBotContract = PartialLiquidationBotV300Contract | PartialLiquidationBotV310Contract;
|
|
4
|
+
import { type BotsPluginState, type BotsPluginStateHuman, type MigrationBotState } from "./types.js";
|
|
12
5
|
export declare class BotsPlugin extends BasePlugin<BotsPluginState> implements IGearboxSDKPlugin<BotsPluginState> {
|
|
13
6
|
#private;
|
|
14
7
|
get loaded(): boolean;
|
|
8
|
+
get bots(): PartialLiquidationBotV310Contract[];
|
|
15
9
|
load(force?: boolean): Promise<BotsPluginState>;
|
|
16
|
-
findDeployedPartialLiquidationBots(): Promise<AddressMap<BotParameters>>;
|
|
17
10
|
stateHuman(raw?: boolean): BotsPluginStateHuman;
|
|
18
|
-
get botsByMarket(): AddressMap<PartialLiquidationBotContract[]>;
|
|
19
|
-
botsByMarketConfigurator(mc: Address): PartialLiquidationBotContract[];
|
|
20
|
-
get allBots(): PartialLiquidationBotContract[];
|
|
21
11
|
get state(): BotsPluginState;
|
|
22
12
|
hydrate(state: BotsPluginState): void;
|
|
23
13
|
static getMigrationBotData(chainId: number): MigrationBotState | undefined;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import type
|
|
2
|
-
import type
|
|
3
|
-
import {
|
|
4
|
-
import type { BotState } from "./types.js";
|
|
1
|
+
import { type Address, type Hex } from "viem";
|
|
2
|
+
import { BaseContract, type GearboxSDK } from "../../sdk/index.js";
|
|
3
|
+
import { type BotStateV310Human } from "./types.js";
|
|
5
4
|
declare const abi: readonly [{
|
|
6
5
|
readonly type: "function";
|
|
7
6
|
readonly name: "contractType";
|
|
@@ -193,7 +192,21 @@ declare const abi: readonly [{
|
|
|
193
192
|
readonly inputs: readonly [];
|
|
194
193
|
}];
|
|
195
194
|
type abi = typeof abi;
|
|
196
|
-
export
|
|
197
|
-
|
|
195
|
+
export interface PartialLiquidationBotV310Params {
|
|
196
|
+
addr: Address;
|
|
197
|
+
version: bigint;
|
|
198
|
+
contractType: string;
|
|
199
|
+
serializedParams: Hex;
|
|
200
|
+
}
|
|
201
|
+
export declare class PartialLiquidationBotV310Contract extends BaseContract<abi> {
|
|
202
|
+
#private;
|
|
203
|
+
readonly treasury: Address;
|
|
204
|
+
readonly minHealthFactor: number;
|
|
205
|
+
readonly maxHealthFactor: number;
|
|
206
|
+
readonly premiumScaleFactor: number;
|
|
207
|
+
readonly feeScaleFactor: number;
|
|
208
|
+
constructor(sdk: GearboxSDK, args: PartialLiquidationBotV310Params);
|
|
209
|
+
stateHuman(raw?: boolean): BotStateV310Human;
|
|
210
|
+
get state(): PartialLiquidationBotV310Params;
|
|
198
211
|
}
|
|
199
212
|
export {};
|
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
import type { AbiParametersToPrimitiveTypes, ExtractAbiFunction } from "abitype";
|
|
2
1
|
import type { Address } from "viem";
|
|
3
|
-
import type {
|
|
4
|
-
import type {
|
|
5
|
-
export type BotState = Unarray<AbiParametersToPrimitiveTypes<ExtractAbiFunction<typeof peripheryCompressorAbi, "getBots">["outputs"]>>;
|
|
2
|
+
import type { BaseContractStateHuman } from "../../sdk/index.js";
|
|
3
|
+
import type { PartialLiquidationBotV310Params } from "./PartialLiquidationBotV310Contract.js";
|
|
6
4
|
export interface BotParameters {
|
|
7
5
|
treasury: Address;
|
|
8
6
|
minHealthFactor: number;
|
|
@@ -10,6 +8,7 @@ export interface BotParameters {
|
|
|
10
8
|
premiumScaleFactor: number;
|
|
11
9
|
feeScaleFactor: number;
|
|
12
10
|
}
|
|
11
|
+
export declare const BOT_PARTIAL_LIQUIDATION = "BOT::PARTIAL_LIQUIDATION";
|
|
13
12
|
export declare const BOT_PARAMS_ABI: readonly [{
|
|
14
13
|
readonly type: "address";
|
|
15
14
|
readonly name: "treasury";
|
|
@@ -26,32 +25,20 @@ export declare const BOT_PARAMS_ABI: readonly [{
|
|
|
26
25
|
readonly type: "uint16";
|
|
27
26
|
readonly name: "feeScaleFactor";
|
|
28
27
|
}];
|
|
29
|
-
export
|
|
30
|
-
export type LiquidationBotType = (typeof LIQUIDATION_BOT_TYPES)[number];
|
|
31
|
-
export interface BotStateBaseHuman extends BaseContractStateHuman {
|
|
28
|
+
export interface BotStateV310Human extends BaseContractStateHuman {
|
|
32
29
|
treasury: Address;
|
|
33
30
|
minHealthFactor: string;
|
|
34
31
|
maxHealthFactor: string;
|
|
35
32
|
premiumScaleFactor: string;
|
|
36
33
|
feeScaleFactor: string;
|
|
37
|
-
requiredPermissions: string;
|
|
38
34
|
}
|
|
39
|
-
export
|
|
40
|
-
|
|
41
|
-
}
|
|
42
|
-
export type BotStateV310Human = BotStateBaseHuman;
|
|
43
|
-
export type BotStateHuman = BotStateV300Human | BotStateV310Human;
|
|
35
|
+
export type BotStateHuman = BotStateV310Human;
|
|
36
|
+
export type BotState = PartialLiquidationBotV310Params;
|
|
44
37
|
export interface BotsPluginStateHuman {
|
|
45
|
-
|
|
46
|
-
* Mapping market configurator to bot states
|
|
47
|
-
*/
|
|
48
|
-
bots: Record<string, BotStateHuman[]>;
|
|
38
|
+
bots: BotStateHuman[];
|
|
49
39
|
}
|
|
50
40
|
export interface BotsPluginState {
|
|
51
|
-
|
|
52
|
-
* Mapping market configurator address to bot states
|
|
53
|
-
*/
|
|
54
|
-
bots: Record<Address, BotState[]>;
|
|
41
|
+
bots: BotState[];
|
|
55
42
|
}
|
|
56
43
|
export type BotBaseType = "LIQUIDATION_PROTECTION" | "MIGRATION";
|
|
57
44
|
export declare const MIGRATION_BOT_TYPES: readonly ["MIGRATION_BOT"];
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import type { Address
|
|
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 {
|
|
5
|
-
import {
|
|
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
|
|
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
|
|
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 {
|
|
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
|
|
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,
|
|
2
|
-
import type
|
|
3
|
-
import type { BaseContractStateHuman,
|
|
4
|
-
import {
|
|
5
|
-
|
|
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
|
|
13
|
+
export interface ContractParseErrorOptions {
|
|
13
14
|
address: Address;
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
name: string;
|
|
17
|
-
dirty: boolean;
|
|
15
|
+
callData: Hex;
|
|
16
|
+
contractName?: string;
|
|
18
17
|
}
|
|
19
|
-
export declare
|
|
20
|
-
|
|
21
|
-
readonly
|
|
22
|
-
|
|
23
|
-
|
|
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
|
-
|
|
29
|
-
|
|
30
|
-
|
|
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
|
-
|
|
46
|
-
mustParseFunctionData(calldata: Hex): string;
|
|
65
|
+
stringifyFunctionData(calldata: Hex): string;
|
|
47
66
|
/**
|
|
48
|
-
*
|
|
67
|
+
* Same as {@link stingifyFunctionData}, but throws if error occurs
|
|
49
68
|
* @param calldata
|
|
50
69
|
* @returns
|
|
51
70
|
*/
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
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
|
+
}
|