@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,20 +1,13 @@
|
|
|
1
|
-
import { curveUsdPriceFeedAbi
|
|
1
|
+
import { curveUsdPriceFeedAbi } from "../../abi/index.js";
|
|
2
2
|
import { AbstractLPPriceFeedContract } from "./AbstractLPPriceFeed.js";
|
|
3
3
|
class CurveUSDPriceFeedContract extends AbstractLPPriceFeedContract {
|
|
4
|
-
constructor(
|
|
5
|
-
super(
|
|
4
|
+
constructor(options, args) {
|
|
5
|
+
super(options, {
|
|
6
6
|
...args,
|
|
7
7
|
name: "CurveUSDPriceFeed",
|
|
8
8
|
abi: curveUsdPriceFeedAbi
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
|
-
async getValue() {
|
|
12
|
-
return await this.sdk.client.readContract({
|
|
13
|
-
abi: iCurvePoolAbi,
|
|
14
|
-
address: this.lpContract,
|
|
15
|
-
functionName: "get_virtual_price"
|
|
16
|
-
});
|
|
17
|
-
}
|
|
18
11
|
}
|
|
19
12
|
export {
|
|
20
13
|
CurveUSDPriceFeedContract
|
|
@@ -1,29 +1,13 @@
|
|
|
1
|
-
import { erc4626Abi } from "viem";
|
|
2
|
-
import { ierc20Abi } from "../../../abi/iERC20.js";
|
|
3
1
|
import { erc4626PriceFeedAbi } from "../../abi/index.js";
|
|
4
2
|
import { AbstractLPPriceFeedContract } from "./AbstractLPPriceFeed.js";
|
|
5
3
|
class Erc4626PriceFeedContract extends AbstractLPPriceFeedContract {
|
|
6
|
-
constructor(
|
|
7
|
-
super(
|
|
4
|
+
constructor(options, args) {
|
|
5
|
+
super(options, {
|
|
8
6
|
...args,
|
|
9
7
|
name: "ERC4626PriceFeed",
|
|
10
8
|
abi: erc4626PriceFeedAbi
|
|
11
9
|
});
|
|
12
10
|
}
|
|
13
|
-
async getValue() {
|
|
14
|
-
const decimals = await this.sdk.client.readContract({
|
|
15
|
-
abi: ierc20Abi,
|
|
16
|
-
address: this.lpContract,
|
|
17
|
-
functionName: "decimals"
|
|
18
|
-
});
|
|
19
|
-
const price = await this.sdk.client.readContract({
|
|
20
|
-
abi: erc4626Abi,
|
|
21
|
-
address: this.lpContract,
|
|
22
|
-
functionName: "convertToAssets",
|
|
23
|
-
args: [10n ** BigInt(decimals)]
|
|
24
|
-
});
|
|
25
|
-
return price;
|
|
26
|
-
}
|
|
27
11
|
}
|
|
28
12
|
export {
|
|
29
13
|
Erc4626PriceFeedContract
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { chainlinkReadableAggregatorAbi } from "../../abi/index.js";
|
|
2
2
|
import { AbstractPriceFeedContract } from "./AbstractPriceFeed.js";
|
|
3
3
|
class ExternalPriceFeedContract extends AbstractPriceFeedContract {
|
|
4
|
-
constructor(
|
|
5
|
-
super(
|
|
4
|
+
constructor(options, args) {
|
|
5
|
+
super(options, {
|
|
6
6
|
...args,
|
|
7
7
|
name: "ExternalPriceFeed",
|
|
8
8
|
abi: chainlinkReadableAggregatorAbi
|
|
@@ -1,21 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { mellowLrtPriceFeedAbi } from "../../abi/index.js";
|
|
2
2
|
import { AbstractLPPriceFeedContract } from "./AbstractLPPriceFeed.js";
|
|
3
3
|
class MellowLRTPriceFeedContract extends AbstractLPPriceFeedContract {
|
|
4
|
-
constructor(
|
|
5
|
-
super(
|
|
4
|
+
constructor(options, args) {
|
|
5
|
+
super(options, {
|
|
6
6
|
...args,
|
|
7
7
|
name: "MellowLRTPriceFeed",
|
|
8
8
|
abi: mellowLrtPriceFeedAbi
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
|
-
async getValue() {
|
|
12
|
-
const stack = await this.sdk.client.readContract({
|
|
13
|
-
abi: iMellowVaultAbi,
|
|
14
|
-
address: this.lpContract,
|
|
15
|
-
functionName: "calculateStack"
|
|
16
|
-
});
|
|
17
|
-
return stack.totalValue * BigInt(1e18) / stack.totalSupply;
|
|
18
|
-
}
|
|
19
11
|
}
|
|
20
12
|
export {
|
|
21
13
|
MellowLRTPriceFeedContract
|
|
@@ -1,17 +1,19 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Construct } from "../../base/index.js";
|
|
2
2
|
import { formatDuration } from "../../utils/index.js";
|
|
3
|
-
class PriceFeedRef extends
|
|
3
|
+
class PriceFeedRef extends Construct {
|
|
4
4
|
address;
|
|
5
5
|
stalenessPeriod;
|
|
6
6
|
#priceFeed;
|
|
7
|
-
constructor(
|
|
8
|
-
super(
|
|
7
|
+
constructor(options, address, stalenessPeriod) {
|
|
8
|
+
super(options);
|
|
9
9
|
this.address = address;
|
|
10
10
|
this.stalenessPeriod = stalenessPeriod;
|
|
11
11
|
}
|
|
12
12
|
get priceFeed() {
|
|
13
13
|
if (!this.#priceFeed) {
|
|
14
|
-
this.#priceFeed = this.
|
|
14
|
+
this.#priceFeed = this.register.mustGetContract(
|
|
15
|
+
this.address
|
|
16
|
+
);
|
|
15
17
|
}
|
|
16
18
|
return this.#priceFeed;
|
|
17
19
|
}
|
|
@@ -7,12 +7,7 @@ import {
|
|
|
7
7
|
AP_PRICE_FEED_STORE,
|
|
8
8
|
VERSION_RANGE_310
|
|
9
9
|
} from "../../constants/index.js";
|
|
10
|
-
import {
|
|
11
|
-
AddressMap,
|
|
12
|
-
bytes32ToString,
|
|
13
|
-
childLogger,
|
|
14
|
-
createRawTx
|
|
15
|
-
} from "../../utils/index.js";
|
|
10
|
+
import { AddressMap, bytes32ToString, createRawTx } from "../../utils/index.js";
|
|
16
11
|
import { Hooks } from "../../utils/internal/index.js";
|
|
17
12
|
import {
|
|
18
13
|
PartialPriceFeedInitError
|
|
@@ -37,14 +32,12 @@ import { WstETHPriceFeedContract } from "./WstETHPriceFeed.js";
|
|
|
37
32
|
import { YearnPriceFeedContract } from "./YearnPriceFeed.js";
|
|
38
33
|
import { ZeroPriceFeedContract } from "./ZeroPriceFeed.js";
|
|
39
34
|
class PriceFeedRegister extends SDKConstruct {
|
|
40
|
-
logger;
|
|
41
35
|
#hooks = new Hooks();
|
|
42
36
|
#feeds = new AddressMap(void 0, "priceFeeds");
|
|
43
37
|
#latestUpdate;
|
|
44
38
|
updaters;
|
|
45
39
|
constructor(sdk, opts = {}) {
|
|
46
40
|
super(sdk);
|
|
47
|
-
this.logger = childLogger("PriceFeedRegister", sdk.logger);
|
|
48
41
|
this.updaters = [
|
|
49
42
|
new RedstoneUpdater(sdk, opts?.redstone),
|
|
50
43
|
new PythUpdater(sdk, opts?.pyth)
|
|
@@ -274,7 +267,8 @@ class PriceFeedRegister extends SDKConstruct {
|
|
|
274
267
|
}
|
|
275
268
|
}
|
|
276
269
|
#createUpdatableProxy(data) {
|
|
277
|
-
|
|
270
|
+
const contract = this.#feeds.get(data.baseParams.addr) ?? this.create(data);
|
|
271
|
+
return new Proxy(contract, {
|
|
278
272
|
get(target, prop) {
|
|
279
273
|
if (prop === "updatableDependencies") {
|
|
280
274
|
return () => [target];
|
|
@@ -10,10 +10,10 @@ class RedstonePriceFeedContract extends AbstractPriceFeedContract {
|
|
|
10
10
|
signersThreshold;
|
|
11
11
|
lastPrice;
|
|
12
12
|
lastPayloadTimestamp;
|
|
13
|
-
constructor(
|
|
14
|
-
super(
|
|
13
|
+
constructor(options, args) {
|
|
14
|
+
super(options, {
|
|
15
15
|
...args,
|
|
16
|
-
name:
|
|
16
|
+
name: "RedstonePriceFeed",
|
|
17
17
|
abi: redstonePriceFeedAbi
|
|
18
18
|
});
|
|
19
19
|
if (isV310(args.baseParams.version)) {
|
|
@@ -1,20 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { wstEthPriceFeedAbi } from "../../abi/index.js";
|
|
2
2
|
import { AbstractLPPriceFeedContract } from "./AbstractLPPriceFeed.js";
|
|
3
3
|
class WstETHPriceFeedContract extends AbstractLPPriceFeedContract {
|
|
4
|
-
constructor(
|
|
5
|
-
super(
|
|
4
|
+
constructor(options, args) {
|
|
5
|
+
super(options, {
|
|
6
6
|
...args,
|
|
7
7
|
name: "WstETHPriceFeed",
|
|
8
8
|
abi: wstEthPriceFeedAbi
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
|
-
async getValue() {
|
|
12
|
-
return await this.sdk.client.readContract({
|
|
13
|
-
abi: iwstEthAbi,
|
|
14
|
-
address: this.lpContract,
|
|
15
|
-
functionName: "stEthPerToken"
|
|
16
|
-
});
|
|
17
|
-
}
|
|
18
11
|
}
|
|
19
12
|
export {
|
|
20
13
|
WstETHPriceFeedContract
|
|
@@ -1,20 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { yearnPriceFeedAbi } from "../../abi/index.js";
|
|
2
2
|
import { AbstractLPPriceFeedContract } from "./AbstractLPPriceFeed.js";
|
|
3
3
|
class YearnPriceFeedContract extends AbstractLPPriceFeedContract {
|
|
4
|
-
constructor(
|
|
5
|
-
super(
|
|
4
|
+
constructor(options, args) {
|
|
5
|
+
super(options, {
|
|
6
6
|
...args,
|
|
7
7
|
name: "YearnPriceFeed",
|
|
8
8
|
abi: yearnPriceFeedAbi
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
|
-
async getValue() {
|
|
12
|
-
return await this.sdk.client.readContract({
|
|
13
|
-
abi: iyVaultAbi,
|
|
14
|
-
address: this.lpContract,
|
|
15
|
-
functionName: "pricePerShare"
|
|
16
|
-
});
|
|
17
|
-
}
|
|
18
11
|
}
|
|
19
12
|
export {
|
|
20
13
|
YearnPriceFeedContract
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { zeroPriceFeedAbi } from "../../abi/index.js";
|
|
2
2
|
import { AbstractPriceFeedContract } from "./AbstractPriceFeed.js";
|
|
3
3
|
class ZeroPriceFeedContract extends AbstractPriceFeedContract {
|
|
4
|
-
constructor(
|
|
5
|
-
super(
|
|
4
|
+
constructor(options, args) {
|
|
5
|
+
super(options, {
|
|
6
6
|
...args,
|
|
7
7
|
name: "ZeroPriceFeed",
|
|
8
8
|
abi: zeroPriceFeedAbi,
|
|
@@ -1,4 +1,21 @@
|
|
|
1
1
|
class PriceUpdatesCache {
|
|
2
|
+
static #caches = /* @__PURE__ */ new Map();
|
|
3
|
+
/**
|
|
4
|
+
* Price update caches can be shared across networks
|
|
5
|
+
* @param id - unique key to identify the cache
|
|
6
|
+
* @param opts
|
|
7
|
+
* @returns
|
|
8
|
+
*/
|
|
9
|
+
static get(id, opts) {
|
|
10
|
+
const key = `${id}:${opts.historical ? "historical" : "latest"}:${opts.ttl}`;
|
|
11
|
+
const cache = PriceUpdatesCache.#caches.get(key);
|
|
12
|
+
if (cache) {
|
|
13
|
+
return cache;
|
|
14
|
+
}
|
|
15
|
+
const newCache = new PriceUpdatesCache(opts);
|
|
16
|
+
PriceUpdatesCache.#caches.set(key, newCache);
|
|
17
|
+
return newCache;
|
|
18
|
+
}
|
|
2
19
|
#cache = /* @__PURE__ */ new Map();
|
|
3
20
|
#ttlMs;
|
|
4
21
|
#historical;
|
|
@@ -2,7 +2,7 @@ import { Buffer } from "buffer";
|
|
|
2
2
|
import { encodeAbiParameters, toHex } from "viem";
|
|
3
3
|
import { z } from "zod/v4";
|
|
4
4
|
import { SDKConstruct } from "../../../base/index.js";
|
|
5
|
-
import {
|
|
5
|
+
import { retry } from "../../../utils/index.js";
|
|
6
6
|
import { PriceUpdatesCache } from "./PriceUpdatesCache.js";
|
|
7
7
|
import { PriceUpdateTx } from "./PriceUpdateTx.js";
|
|
8
8
|
import {
|
|
@@ -36,25 +36,23 @@ const PythOptions = z.object({
|
|
|
36
36
|
ignoreMissingFeeds: z.boolean().optional()
|
|
37
37
|
});
|
|
38
38
|
class PythUpdater extends SDKConstruct {
|
|
39
|
-
#logger;
|
|
40
39
|
#cache;
|
|
41
40
|
#historicalTimestamp;
|
|
42
41
|
#api;
|
|
43
42
|
#ignoreMissingFeeds;
|
|
44
43
|
constructor(sdk, opts = {}) {
|
|
45
44
|
super(sdk);
|
|
46
|
-
this.#logger = childLogger("PythUpdater", sdk.logger);
|
|
47
45
|
this.#ignoreMissingFeeds = opts.ignoreMissingFeeds;
|
|
48
46
|
this.#api = opts.apiProxy ?? "https://hermes.pyth.network/v2/updates/price/";
|
|
49
47
|
this.#api = this.#api.endsWith("/") ? this.#api : `${this.#api}/`;
|
|
50
48
|
const ts = opts.historicTimestamp;
|
|
51
49
|
if (ts) {
|
|
52
50
|
this.#historicalTimestamp = ts === true ? Number(this.sdk.timestamp) : ts;
|
|
53
|
-
this
|
|
51
|
+
this.logger?.debug(
|
|
54
52
|
`using historical timestamp ${this.#historicalTimestamp}`
|
|
55
53
|
);
|
|
56
54
|
}
|
|
57
|
-
this.#cache =
|
|
55
|
+
this.#cache = PriceUpdatesCache.get("pyth", {
|
|
58
56
|
// currently staleness period is 240 seconds on all networks, add some buffer
|
|
59
57
|
// this period of 4 minutes is selected based on time that is required for user to sign transaction with wallet
|
|
60
58
|
// so it's unlikely to decrease
|
|
@@ -66,7 +64,7 @@ class PythUpdater extends SDKConstruct {
|
|
|
66
64
|
if (feeds.length === 0) {
|
|
67
65
|
return [];
|
|
68
66
|
}
|
|
69
|
-
this
|
|
67
|
+
this.logger?.debug(
|
|
70
68
|
`generating update transactions for ${feeds.length} pyth price feeds`
|
|
71
69
|
);
|
|
72
70
|
const pythFeeds = new Map(
|
|
@@ -101,7 +99,7 @@ class PythUpdater extends SDKConstruct {
|
|
|
101
99
|
tsRange = `${tsRange} - ${maxTimestamp} (${maxDelta})`;
|
|
102
100
|
}
|
|
103
101
|
}
|
|
104
|
-
this
|
|
102
|
+
this.logger?.debug(
|
|
105
103
|
`generated ${results.length} update transactions for pyth price feeds: ${Array.from(pythFeeds.keys()).join(", ")}${tsRange}`
|
|
106
104
|
);
|
|
107
105
|
return results;
|
|
@@ -112,7 +110,7 @@ class PythUpdater extends SDKConstruct {
|
|
|
112
110
|
* @returns
|
|
113
111
|
*/
|
|
114
112
|
async #getPayloads(dataFeedsIds) {
|
|
115
|
-
this
|
|
113
|
+
this.logger?.debug(
|
|
116
114
|
`getting pyth payloads for ${dataFeedsIds.size} price feeds: ${Array.from(dataFeedsIds).join(", ")}`
|
|
117
115
|
);
|
|
118
116
|
const fromCache = [];
|
|
@@ -131,7 +129,7 @@ class PythUpdater extends SDKConstruct {
|
|
|
131
129
|
for (const resp of fromPyth) {
|
|
132
130
|
this.#cache.set(resp, resp.dataFeedId);
|
|
133
131
|
}
|
|
134
|
-
this
|
|
132
|
+
this.logger?.debug(
|
|
135
133
|
`got ${fromPyth.length} new pyth updates and ${fromCache.length} from cache`
|
|
136
134
|
);
|
|
137
135
|
return [...fromCache, ...fromPyth];
|
|
@@ -147,7 +145,7 @@ class PythUpdater extends SDKConstruct {
|
|
|
147
145
|
}
|
|
148
146
|
const ids = Array.from(dataFeedsIds);
|
|
149
147
|
const tsStr = this.#historicalTimestamp ? ` with historical timestamp ${this.#historicalTimestamp}` : "";
|
|
150
|
-
this
|
|
148
|
+
this.logger?.debug(
|
|
151
149
|
`fetching pyth payloads for ${dataFeedsIds.size} price feeds: ${ids.join(", ")}${tsStr}`
|
|
152
150
|
);
|
|
153
151
|
const url = new URL(this.#api + (this.#historicalTimestamp ?? "latest"));
|
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
import { encodeAbiParameters, toBytes } from "viem";
|
|
7
7
|
import { z } from "zod/v4";
|
|
8
8
|
import { SDKConstruct } from "../../../base/index.js";
|
|
9
|
-
import { AddressMap,
|
|
9
|
+
import { AddressMap, retry } from "../../../utils/index.js";
|
|
10
10
|
import { PriceUpdatesCache } from "./PriceUpdatesCache.js";
|
|
11
11
|
import { PriceUpdateTx } from "./PriceUpdateTx.js";
|
|
12
12
|
class RedstoneUpdateTx extends PriceUpdateTx {
|
|
@@ -39,7 +39,6 @@ const RedstoneOptions = z.object({
|
|
|
39
39
|
enableLogging: z.boolean().optional()
|
|
40
40
|
});
|
|
41
41
|
class RedstoneUpdater extends SDKConstruct {
|
|
42
|
-
#logger;
|
|
43
42
|
#cache;
|
|
44
43
|
#historicalTimestampMs;
|
|
45
44
|
#gateways;
|
|
@@ -47,7 +46,6 @@ class RedstoneUpdater extends SDKConstruct {
|
|
|
47
46
|
#enableLogging;
|
|
48
47
|
constructor(sdk, opts = {}) {
|
|
49
48
|
super(sdk);
|
|
50
|
-
this.#logger = childLogger("RedstoneUpdater", sdk.logger);
|
|
51
49
|
this.#ignoreMissingFeeds = opts.ignoreMissingFeeds;
|
|
52
50
|
this.#enableLogging = opts.enableLogging;
|
|
53
51
|
this.#gateways = opts.gateways?.length ? opts.gateways : void 0;
|
|
@@ -55,11 +53,11 @@ class RedstoneUpdater extends SDKConstruct {
|
|
|
55
53
|
if (ts) {
|
|
56
54
|
ts = ts === true ? Number(this.sdk.timestamp) * 1e3 : ts;
|
|
57
55
|
this.#historicalTimestampMs = 6e4 * Math.floor(ts / 6e4);
|
|
58
|
-
this
|
|
56
|
+
this.logger?.debug(
|
|
59
57
|
`using historical timestamp ${this.#historicalTimestampMs}`
|
|
60
58
|
);
|
|
61
59
|
}
|
|
62
|
-
this.#cache =
|
|
60
|
+
this.#cache = PriceUpdatesCache.get("redstone", {
|
|
63
61
|
// currently staleness period is 240 seconds on all networks, add some buffer
|
|
64
62
|
// this period of 4 minutes is selected based on time that is required for user to sign transaction with wallet
|
|
65
63
|
// so it's unlikely to decrease
|
|
@@ -71,7 +69,7 @@ class RedstoneUpdater extends SDKConstruct {
|
|
|
71
69
|
if (feeds.length === 0) {
|
|
72
70
|
return [];
|
|
73
71
|
}
|
|
74
|
-
this
|
|
72
|
+
this.logger?.debug(
|
|
75
73
|
`generating update transactions for ${feeds.length} redstone price feeds`
|
|
76
74
|
);
|
|
77
75
|
const groupedFeeds = {};
|
|
@@ -128,7 +126,7 @@ class RedstoneUpdater extends SDKConstruct {
|
|
|
128
126
|
tsRange = `${tsRange} - ${maxTimestamp} (${maxDelta})`;
|
|
129
127
|
}
|
|
130
128
|
}
|
|
131
|
-
this
|
|
129
|
+
this.logger?.debug(
|
|
132
130
|
`generated ${results.length} update transactions for redstone price feeds: ${Array.from(priceFeeds.keys()).join(", ")}${tsRange}`
|
|
133
131
|
);
|
|
134
132
|
return results;
|
|
@@ -153,7 +151,7 @@ class RedstoneUpdater extends SDKConstruct {
|
|
|
153
151
|
for (const { timestamp, dataFeedId } of result) {
|
|
154
152
|
const delta = Number(this.sdk.timestamp) - timestamp;
|
|
155
153
|
if (delta >= 240 && delta < 255) {
|
|
156
|
-
this
|
|
154
|
+
this.logger?.warn(
|
|
157
155
|
`payload for ${dataFeedId} has expired by ${delta} seconds`
|
|
158
156
|
);
|
|
159
157
|
expired = true;
|
|
@@ -177,7 +175,7 @@ class RedstoneUpdater extends SDKConstruct {
|
|
|
177
175
|
* @returns
|
|
178
176
|
*/
|
|
179
177
|
async #getPayloads(dataServiceId, dataFeedsIds, uniqueSignersCount) {
|
|
180
|
-
this
|
|
178
|
+
this.logger?.debug(
|
|
181
179
|
`getting redstone payloads for ${dataFeedsIds.size} data feeds in ${dataServiceId} with ${uniqueSignersCount} signers: ${Array.from(dataFeedsIds).join(", ")}`
|
|
182
180
|
);
|
|
183
181
|
const fromCache = [];
|
|
@@ -202,7 +200,7 @@ class RedstoneUpdater extends SDKConstruct {
|
|
|
202
200
|
for (const resp of fromRedstone) {
|
|
203
201
|
this.#cache.set(resp, dataServiceId, resp.dataFeedId, uniqueSignersCount);
|
|
204
202
|
}
|
|
205
|
-
this
|
|
203
|
+
this.logger?.debug(
|
|
206
204
|
`got ${fromRedstone.length} new redstone updates and ${fromCache.length} from cache`
|
|
207
205
|
);
|
|
208
206
|
return [...fromCache, ...fromRedstone];
|
|
@@ -221,7 +219,7 @@ class RedstoneUpdater extends SDKConstruct {
|
|
|
221
219
|
}
|
|
222
220
|
const dataPackagesIds = Array.from(dataFeedsIds);
|
|
223
221
|
const tsStr = this.#historicalTimestampMs ? ` with historical timestamp ${this.#historicalTimestampMs}` : "";
|
|
224
|
-
this
|
|
222
|
+
this.logger?.debug(
|
|
225
223
|
`fetching redstone payloads for ${dataFeedsIds.size} data feeds in ${dataServiceId} with ${uniqueSignersCount} signers: ${dataPackagesIds.join(", ")}${tsStr}`
|
|
226
224
|
);
|
|
227
225
|
const wrapper = new DataServiceWrapper({
|
|
@@ -250,14 +248,14 @@ class RedstoneUpdater extends SDKConstruct {
|
|
|
250
248
|
const signedDataPackages = packagesByDataFeedId[dataFeedId];
|
|
251
249
|
if (!signedDataPackages) {
|
|
252
250
|
if (this.#ignoreMissingFeeds) {
|
|
253
|
-
this
|
|
251
|
+
this.logger?.warn(`cannot find data packages for ${dataFeedId}`);
|
|
254
252
|
continue;
|
|
255
253
|
}
|
|
256
254
|
throw new Error(`cannot find data packages for ${dataFeedId}`);
|
|
257
255
|
}
|
|
258
256
|
if (signedDataPackages.length !== uniqueSignersCount) {
|
|
259
257
|
if (this.#ignoreMissingFeeds) {
|
|
260
|
-
this
|
|
258
|
+
this.logger?.warn(
|
|
261
259
|
`got ${signedDataPackages.length} data packages for ${dataFeedId}, but expected ${uniqueSignersCount}`
|
|
262
260
|
);
|
|
263
261
|
continue;
|
|
@@ -7,6 +7,11 @@ class AbstractRouterContract extends BaseContract {
|
|
|
7
7
|
hooks = new Hooks();
|
|
8
8
|
addHook = this.hooks.addHook.bind(this.hooks);
|
|
9
9
|
removeHook = this.hooks.removeHook.bind(this.hooks);
|
|
10
|
+
sdk;
|
|
11
|
+
constructor(sdk, args) {
|
|
12
|
+
super(sdk, args);
|
|
13
|
+
this.sdk = sdk;
|
|
14
|
+
}
|
|
10
15
|
getExpectedAndLeftover(ca, cm, options = {}) {
|
|
11
16
|
const b = options.balances ? options.balances : this.getDefaultExpectedAndLeftover(
|
|
12
17
|
ca,
|
|
@@ -276,15 +276,15 @@ class RouterV310Contract extends AbstractRouterContract {
|
|
|
276
276
|
* @returns
|
|
277
277
|
*/
|
|
278
278
|
#convertToUSDForSort(oracle, token, amount) {
|
|
279
|
-
const scale = 10n ** BigInt(this.
|
|
279
|
+
const scale = 10n ** BigInt(this.tokensMeta.get(token)?.decimals ?? 0);
|
|
280
280
|
const price = oracle.mainPrices.get(token)?.price || oracle.reservePrices.get(token)?.price || scale;
|
|
281
281
|
return amount * price / scale;
|
|
282
282
|
}
|
|
283
283
|
#debugTokenData(tData) {
|
|
284
284
|
return tData.map((t) => ({
|
|
285
285
|
token: this.labelAddress(t.token),
|
|
286
|
-
balance: `${this.
|
|
287
|
-
leftoverBalance: this.
|
|
286
|
+
balance: `${this.tokensMeta.formatBN(t.token, t.balance)} (${t.balance})`,
|
|
287
|
+
leftoverBalance: this.tokensMeta.formatBN(t.token, t.leftoverBalance) + ` (${t.leftoverBalance})`,
|
|
288
288
|
numSplits: t.numSplits,
|
|
289
289
|
claimRewards: t.claimRewards
|
|
290
290
|
}));
|
|
@@ -2,6 +2,10 @@ import { isV300, isV310 } from "../constants/index.js";
|
|
|
2
2
|
import { RouterV300Contract } from "./RouterV300Contract.js";
|
|
3
3
|
import { RouterV310Contract } from "./RouterV310Contract.js";
|
|
4
4
|
function createRouter(sdk, address, version) {
|
|
5
|
+
const contract = sdk.getContract(address);
|
|
6
|
+
if (contract) {
|
|
7
|
+
return contract;
|
|
8
|
+
}
|
|
5
9
|
if (isV300(version)) {
|
|
6
10
|
return new RouterV300Contract(sdk, address, version);
|
|
7
11
|
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import {
|
|
2
|
+
AbiFunctionNotFoundError,
|
|
3
|
+
getAbiItem
|
|
4
|
+
} from "viem";
|
|
5
|
+
import { json_stringify } from "../../sdk/utils/index.js";
|
|
6
|
+
function functionArgsToMap(abi, functionName, args) {
|
|
7
|
+
const abiItem = getAbiItem({
|
|
8
|
+
abi,
|
|
9
|
+
name: functionName,
|
|
10
|
+
args
|
|
11
|
+
});
|
|
12
|
+
if (!abiItem || abiItem.type !== "function") {
|
|
13
|
+
throw new AbiFunctionNotFoundError(functionName);
|
|
14
|
+
}
|
|
15
|
+
const namedArgs = {};
|
|
16
|
+
if (Array.isArray(args)) {
|
|
17
|
+
args.forEach((value, i) => {
|
|
18
|
+
const input = abiItem.inputs?.[i];
|
|
19
|
+
if (input?.name) {
|
|
20
|
+
namedArgs[input.name] = input.type.startsWith("tuple") ? json_stringify(value) : String(value);
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
} else {
|
|
24
|
+
Object.entries(args || {}).forEach(([key, value]) => {
|
|
25
|
+
const index = parseInt(key, 10);
|
|
26
|
+
if (!Number.isNaN(index) && abiItem.inputs?.[index]?.name) {
|
|
27
|
+
namedArgs[abiItem.inputs[index].name] = String(value);
|
|
28
|
+
} else {
|
|
29
|
+
namedArgs[key] = String(value);
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
return namedArgs;
|
|
34
|
+
}
|
|
35
|
+
export {
|
|
36
|
+
functionArgsToMap
|
|
37
|
+
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { Abi } from "abitype";
|
|
2
2
|
import type { Account, Address, Chain, Client, ContractConstructorArgs, GetChainParameter, Hash, Hex, SendTransactionParameters, SendTransactionReturnType, Transport, UnionEvaluate, UnionOmit, WalletClient } from "viem";
|
|
3
3
|
import type { GearboxSDK } from "../sdk/index.js";
|
|
4
|
-
import {
|
|
4
|
+
import { Construct } from "../sdk/index.js";
|
|
5
5
|
export declare const PUBLIC_CREATE2_FACTORY: Address;
|
|
6
6
|
export declare const DEFAULT_CREATE2_SALT = "GEARBOX";
|
|
7
7
|
export type Create2Parameters<abi extends Abi | readonly unknown[] = Abi, chain extends Chain = Chain, account extends Account = Account, chainOverride extends Chain | undefined = Chain | undefined, allArgs = ContractConstructorArgs<abi>> = UnionOmit<SendTransactionParameters<chain, account, chainOverride>, "accessList" | "chain" | "to" | "data"> & GetChainParameter<chain, chainOverride> & UnionEvaluate<readonly [] extends allArgs ? {
|
|
@@ -24,7 +24,7 @@ export interface EnsureExistsUsingPublicCreate2ReturnType {
|
|
|
24
24
|
address: Address;
|
|
25
25
|
hash?: Hash;
|
|
26
26
|
}
|
|
27
|
-
export declare class Create2Deployer<transport extends Transport = Transport, chain extends Chain = Chain, account extends Account = Account> extends
|
|
27
|
+
export declare class Create2Deployer<transport extends Transport = Transport, chain extends Chain = Chain, account extends Account = Account> extends Construct {
|
|
28
28
|
#private;
|
|
29
29
|
constructor(sdk: GearboxSDK, walletClient: WalletClient<transport, chain, account>);
|
|
30
30
|
ensureExists<abi extends Abi | readonly unknown[], chainOverride extends Chain | undefined = Chain | undefined>(parameters: Create2Parameters<abi, chain, account, chainOverride>): Promise<EnsureExistsUsingPublicCreate2ReturnType>;
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { type Address } from "viem";
|
|
2
|
-
import { type GearboxSDK,
|
|
2
|
+
import { type GearboxSDK, SDKConstruct } from "../../sdk/index.js";
|
|
3
3
|
import type { AnvilClient } from "../createAnvilClient.js";
|
|
4
4
|
import type { IMinter } from "./types.js";
|
|
5
5
|
export default abstract class AbstractMinter extends SDKConstruct implements IMinter {
|
|
6
6
|
protected readonly anvil: AnvilClient;
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
constructor(sdk: GearboxSDK, anvil: AnvilClient, name?: string);
|
|
7
|
+
name: string;
|
|
8
|
+
constructor(sdk: GearboxSDK, anvil: AnvilClient);
|
|
10
9
|
tryMint(token: Address, dest: Address, amount: bigint): Promise<bigint>;
|
|
11
10
|
abstract mint(token: Address, dest: Address, amount: bigint): Promise<void>;
|
|
12
11
|
protected getOwner(address: Address): Promise<Address>;
|
|
@@ -1,9 +1,6 @@
|
|
|
1
1
|
import type { Address } from "viem";
|
|
2
|
-
import type { GearboxSDK } from "../../sdk/index.js";
|
|
3
|
-
import type { AnvilClient } from "../createAnvilClient.js";
|
|
4
2
|
import AbstractMinter from "./AbstractMinter.js";
|
|
5
3
|
import type { IMinter } from "./types.js";
|
|
6
4
|
export declare class DealMinter extends AbstractMinter implements IMinter {
|
|
7
|
-
constructor(sdk: GearboxSDK, anvil: AnvilClient);
|
|
8
5
|
mint(token: Address, dest: Address, amount: bigint): Promise<void>;
|
|
9
6
|
}
|
|
@@ -1,9 +1,6 @@
|
|
|
1
1
|
import { type Address } from "viem";
|
|
2
|
-
import type { GearboxSDK } from "../../sdk/index.js";
|
|
3
|
-
import type { AnvilClient } from "../createAnvilClient.js";
|
|
4
2
|
import AbstractMinter from "./AbstractMinter.js";
|
|
5
3
|
import type { IMinter } from "./types.js";
|
|
6
4
|
export declare class DirectMinter extends AbstractMinter implements IMinter {
|
|
7
|
-
constructor(sdk: GearboxSDK, anvil: AnvilClient);
|
|
8
5
|
mint(token: Address, dest: Address, amount: bigint): Promise<void>;
|
|
9
6
|
}
|
|
@@ -1,9 +1,6 @@
|
|
|
1
1
|
import { type Address } from "viem";
|
|
2
|
-
import type { GearboxSDK } from "../../sdk/index.js";
|
|
3
|
-
import type { AnvilClient } from "../createAnvilClient.js";
|
|
4
2
|
import AbstractMinter from "./AbstractMinter.js";
|
|
5
3
|
import type { IMinter } from "./types.js";
|
|
6
4
|
export declare class TransferMinter extends AbstractMinter implements IMinter {
|
|
7
|
-
constructor(sdk: GearboxSDK, anvil: AnvilClient);
|
|
8
5
|
mint(token: Address, dest: Address, amount: bigint): Promise<void>;
|
|
9
6
|
}
|