@gearbox-protocol/sdk 11.10.1 → 11.11.0-next.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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 +21 -8
- package/dist/cjs/plugins/bots/PartialLiquidationBotBaseContract.js +17 -22
- package/dist/cjs/plugins/bots/PartialLiquidationBotV300Contract.js +4 -20
- package/dist/cjs/plugins/bots/deserializePartialLiquidationBotParams.js +49 -0
- package/dist/cjs/plugins/bots/index.js +0 -2
- 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 +11 -8
- package/dist/esm/plugins/bots/PartialLiquidationBotBaseContract.js +7 -22
- package/dist/esm/plugins/bots/PartialLiquidationBotV300Contract.js +4 -20
- package/dist/esm/plugins/bots/deserializePartialLiquidationBotParams.js +29 -0
- package/dist/esm/plugins/bots/index.js +0 -1
- 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 -16
- 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/PartialLiquidationBotV300Contract.d.ts +2 -8
- package/dist/types/plugins/bots/deserializePartialLiquidationBotParams.d.ts +3 -0
- package/dist/types/plugins/bots/index.d.ts +0 -1
- 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 +11 -11
- package/dist/cjs/permissionless/bindings/base-contract.js +0 -173
- package/dist/cjs/permissionless/utils/abi-decoder.js +0 -72
- 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/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/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, Hex } from "viem";
|
|
2
|
-
import type {
|
|
2
|
+
import type { ConstructOptions } from "../../base/Construct.js";
|
|
3
3
|
import type { RawTx } from "../../types/index.js";
|
|
4
4
|
import type { PartialPriceFeedTreeNode } from "./AbstractPriceFeed.js";
|
|
5
5
|
import { AbstractPriceFeedContract } from "./AbstractPriceFeed.js";
|
|
@@ -222,7 +222,7 @@ export declare class PythPriceFeed extends AbstractPriceFeedContract<abi> implem
|
|
|
222
222
|
readonly priceFeedId: Hex;
|
|
223
223
|
readonly pyth: Address;
|
|
224
224
|
readonly maxConfToPriceRatio?: bigint;
|
|
225
|
-
constructor(
|
|
225
|
+
constructor(options: ConstructOptions, args: PartialPriceFeedTreeNode);
|
|
226
226
|
createPriceUpdateTx(data: `0x${string}`): RawTx;
|
|
227
227
|
}
|
|
228
228
|
export {};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Address, Hex } from "viem";
|
|
2
2
|
import { redstonePriceFeedAbi } from "../../abi/index.js";
|
|
3
|
-
import type {
|
|
3
|
+
import type { ConstructOptions } from "../../base/Construct.js";
|
|
4
4
|
import type { RawTx, RedstonePriceFeedStateHuman } from "../../types/index.js";
|
|
5
5
|
import type { PartialPriceFeedTreeNode } from "./AbstractPriceFeed.js";
|
|
6
6
|
import { AbstractPriceFeedContract } from "./AbstractPriceFeed.js";
|
|
@@ -14,7 +14,7 @@ export declare class RedstonePriceFeedContract extends AbstractPriceFeedContract
|
|
|
14
14
|
readonly signersThreshold: number;
|
|
15
15
|
readonly lastPrice: bigint;
|
|
16
16
|
readonly lastPayloadTimestamp: number;
|
|
17
|
-
constructor(
|
|
17
|
+
constructor(options: ConstructOptions, args: PartialPriceFeedTreeNode);
|
|
18
18
|
stateHuman(raw?: boolean): Omit<RedstonePriceFeedStateHuman, "stalenessPeriod">;
|
|
19
19
|
createPriceUpdateTx(data: `0x${string}`): RawTx;
|
|
20
20
|
}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { wstEthPriceFeedAbi } from "../../abi/index.js";
|
|
2
|
-
import type {
|
|
2
|
+
import type { ConstructOptions } from "../../base/Construct.js";
|
|
3
3
|
import { AbstractLPPriceFeedContract } from "./AbstractLPPriceFeed.js";
|
|
4
4
|
import type { PartialPriceFeedTreeNode } from "./AbstractPriceFeed.js";
|
|
5
5
|
type abi = typeof wstEthPriceFeedAbi;
|
|
6
6
|
export declare class WstETHPriceFeedContract extends AbstractLPPriceFeedContract<abi> {
|
|
7
|
-
constructor(
|
|
8
|
-
getValue(): Promise<bigint>;
|
|
7
|
+
constructor(options: ConstructOptions, args: PartialPriceFeedTreeNode);
|
|
9
8
|
}
|
|
10
9
|
export {};
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { yearnPriceFeedAbi } from "../../abi/index.js";
|
|
2
|
-
import type {
|
|
2
|
+
import type { ConstructOptions } from "../../base/Construct.js";
|
|
3
3
|
import { AbstractLPPriceFeedContract } from "./AbstractLPPriceFeed.js";
|
|
4
4
|
import type { PartialPriceFeedTreeNode } from "./AbstractPriceFeed.js";
|
|
5
5
|
type abi = typeof yearnPriceFeedAbi;
|
|
6
6
|
export declare class YearnPriceFeedContract extends AbstractLPPriceFeedContract<abi> {
|
|
7
|
-
constructor(
|
|
8
|
-
getValue(): Promise<bigint>;
|
|
7
|
+
constructor(options: ConstructOptions, args: PartialPriceFeedTreeNode);
|
|
9
8
|
}
|
|
10
9
|
export {};
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { zeroPriceFeedAbi } from "../../abi/index.js";
|
|
2
|
-
import type {
|
|
2
|
+
import type { ConstructOptions } from "../../base/Construct.js";
|
|
3
3
|
import type { PartialPriceFeedTreeNode } from "./AbstractPriceFeed.js";
|
|
4
4
|
import { AbstractPriceFeedContract } from "./AbstractPriceFeed.js";
|
|
5
5
|
type abi = typeof zeroPriceFeedAbi;
|
|
6
6
|
export declare class ZeroPriceFeedContract extends AbstractPriceFeedContract<abi> {
|
|
7
|
-
constructor(
|
|
7
|
+
constructor(options: ConstructOptions, args: PartialPriceFeedTreeNode);
|
|
8
8
|
}
|
|
9
9
|
export {};
|
|
@@ -35,11 +35,6 @@ export interface IPriceFeedContract extends IBaseContract {
|
|
|
35
35
|
export interface IUpdatablePriceFeedContract extends IPriceFeedContract {
|
|
36
36
|
createPriceUpdateTx: (data: `0x${string}`) => RawTx;
|
|
37
37
|
}
|
|
38
|
-
export interface ILPPriceFeedContract extends IPriceFeedContract {
|
|
39
|
-
getValue: () => Promise<bigint>;
|
|
40
|
-
getLowerBound: () => Promise<bigint>;
|
|
41
|
-
currentLowerBound: () => Promise<bigint>;
|
|
42
|
-
}
|
|
43
38
|
export interface UpdatePriceFeedsResult {
|
|
44
39
|
txs: IPriceUpdateTx[];
|
|
45
40
|
timestamp: number;
|
|
@@ -11,7 +11,14 @@ export interface PriceUpdatesCacheOptions {
|
|
|
11
11
|
}
|
|
12
12
|
export declare class PriceUpdatesCache {
|
|
13
13
|
#private;
|
|
14
|
-
|
|
14
|
+
/**
|
|
15
|
+
* Price update caches can be shared across networks
|
|
16
|
+
* @param id - unique key to identify the cache
|
|
17
|
+
* @param opts
|
|
18
|
+
* @returns
|
|
19
|
+
*/
|
|
20
|
+
static get(id: string, opts: PriceUpdatesCacheOptions): PriceUpdatesCache;
|
|
21
|
+
private constructor();
|
|
15
22
|
get(...path: Array<number | string>): Omit<TimestampedCalldata, "cached"> | undefined;
|
|
16
23
|
set(value: Omit<TimestampedCalldata, "cached">, ...path: Array<number | string>): void;
|
|
17
24
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { Abi, Address } from "viem";
|
|
2
|
-
import { BaseContract } from "../base/index.js";
|
|
2
|
+
import { BaseContract, type BaseContractArgs } from "../base/index.js";
|
|
3
|
+
import type { GearboxSDK } from "../GearboxSDK.js";
|
|
3
4
|
import type { IPriceOracleContract } from "../market/index.js";
|
|
4
5
|
import { AddressMap, AddressSet } from "../utils/index.js";
|
|
5
6
|
import type { IHooks } from "../utils/internal/index.js";
|
|
@@ -14,6 +15,8 @@ export declare abstract class AbstractRouterContract<abi extends Abi | readonly
|
|
|
14
15
|
protected readonly hooks: Hooks<RouterHooks>;
|
|
15
16
|
readonly addHook: <K extends "foundPathOptions">(hookName: K, fn: (...args: RouterHooks[K]) => void | Promise<void>) => void;
|
|
16
17
|
readonly removeHook: <K extends "foundPathOptions">(hookName: K, fn: (...args: RouterHooks[K]) => void | Promise<void>) => void;
|
|
18
|
+
readonly sdk: GearboxSDK;
|
|
19
|
+
constructor(sdk: GearboxSDK, args: BaseContractArgs<abi>);
|
|
17
20
|
protected getExpectedAndLeftover(ca: RouterCASlice, cm: RouterCMSlice, options?: ExpectedAndLeftoverOptions): Leftovers;
|
|
18
21
|
protected getDefaultExpectedAndLeftover(ca: RouterCASlice, keepAssets?: Address[], debtOnly?: boolean): Leftovers;
|
|
19
22
|
/**
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import type { Address } from "viem";
|
|
2
|
-
import type { IBaseContract } from "../base/
|
|
3
|
-
import type { CreditAccountData } from "../base/types.js";
|
|
2
|
+
import type { CreditAccountData, IBaseContract } from "../base/index.js";
|
|
4
3
|
import type { MultiCall } from "../types/index.js";
|
|
5
4
|
import type { Leftovers } from "./AbstractRouterContract.js";
|
|
6
5
|
export type SwapOperation = "EXACT_INPUT" | "EXACT_INPUT_ALL" | "EXACT_OUTPUT";
|
|
@@ -133,8 +133,8 @@ export declare class CreditAccountData_Legacy {
|
|
|
133
133
|
constructor(payload: CreditAccountDataPayload);
|
|
134
134
|
static sortBalances(balances: Record<Address, bigint>, prices: Record<Address, bigint>, tokens: Record<Address, TokenData>): Array<[Address, bigint]>;
|
|
135
135
|
static sortAssets<T extends Asset>(balances: Array<T>, prices: Record<Address, bigint>, tokens: Record<Address, TokenData>): T[];
|
|
136
|
-
static assetComparator<T extends Asset>(t1: T, t2: T, prices1: Record<Address, bigint> | undefined, prices2: Record<Address, bigint> | undefined, tokens1: Record<Address, TokenData> | undefined, tokens2: Record<Address, TokenData> | undefined): 1 |
|
|
137
|
-
static tokensAbcComparator(t1?: TokenData, t2?: TokenData): 1 |
|
|
136
|
+
static assetComparator<T extends Asset>(t1: T, t2: T, prices1: Record<Address, bigint> | undefined, prices2: Record<Address, bigint> | undefined, tokens1: Record<Address, TokenData> | undefined, tokens2: Record<Address, TokenData> | undefined): 1 | 0 | -1;
|
|
137
|
+
static tokensAbcComparator(t1?: TokenData, t2?: TokenData): 1 | 0 | -1;
|
|
138
138
|
static amountAbcComparator(t1: bigint, t2: bigint): 1 | -1;
|
|
139
139
|
isForbidden(token: Address): boolean;
|
|
140
140
|
isQuoted(token: Address): boolean;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { type Abi, type DecodeFunctionDataReturnType } from "viem";
|
|
2
|
+
/**
|
|
3
|
+
* Converts decoded function args (as decoded by viem, i.e. as array) to named map of args
|
|
4
|
+
* Can return undefined if function is not found in ABI
|
|
5
|
+
* @param abi
|
|
6
|
+
* @param functionName
|
|
7
|
+
* @param args
|
|
8
|
+
* @returns
|
|
9
|
+
*/
|
|
10
|
+
export declare function functionArgsToMap<T extends Abi | readonly unknown[]>(abi: T, functionName: string, args: DecodeFunctionDataReturnType<T>["args"]): Record<string, string>;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gearbox-protocol/sdk",
|
|
3
|
-
"version": "11.
|
|
3
|
+
"version": "11.11.0-next.2",
|
|
4
4
|
"description": "Gearbox SDK",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"main": "./dist/cjs/sdk/index.js",
|
|
@@ -48,15 +48,15 @@
|
|
|
48
48
|
"prepare": "husky",
|
|
49
49
|
"check": "biome check --write",
|
|
50
50
|
"check:ci": "biome check --diagnostic-level=error",
|
|
51
|
-
"typecheck:ci": "tsc --noEmit
|
|
51
|
+
"typecheck:ci": "tsc --noEmit"
|
|
52
52
|
},
|
|
53
53
|
"dependencies": {
|
|
54
|
-
"@gearbox-protocol/integrations-v3": "1.
|
|
54
|
+
"@gearbox-protocol/integrations-v3": "1.51.1",
|
|
55
55
|
"@redstone-finance/evm-connector": "^0.9.0",
|
|
56
56
|
"@redstone-finance/protocol": "^0.9.0",
|
|
57
57
|
"@redstone-finance/sdk": "^0.9.0",
|
|
58
58
|
"@types/bn.js": "^5.2.0",
|
|
59
|
-
"abitype": "^1.2.
|
|
59
|
+
"abitype": "^1.2.0",
|
|
60
60
|
"bn.js": "^5.2.2",
|
|
61
61
|
"buffer": "^6.0.3",
|
|
62
62
|
"date-fns": "^4.1.0",
|
|
@@ -65,22 +65,22 @@
|
|
|
65
65
|
"zod": "^4.1.13"
|
|
66
66
|
},
|
|
67
67
|
"devDependencies": {
|
|
68
|
-
"@biomejs/biome": "^2.3.
|
|
69
|
-
"@commitlint/cli": "^20.
|
|
70
|
-
"@commitlint/config-conventional": "^20.
|
|
71
|
-
"@gearbox-protocol/biome-config": "^1.0.
|
|
68
|
+
"@biomejs/biome": "^2.3.7",
|
|
69
|
+
"@commitlint/cli": "^20.1.0",
|
|
70
|
+
"@commitlint/config-conventional": "^20.0.0",
|
|
71
|
+
"@gearbox-protocol/biome-config": "^1.0.13",
|
|
72
72
|
"@types/cross-spawn": "^6.0.6",
|
|
73
73
|
"axios": "^1.13.2",
|
|
74
74
|
"cross-spawn": "^7.0.6",
|
|
75
75
|
"husky": "^9.1.7",
|
|
76
76
|
"lint-staged": "^16.2.7",
|
|
77
77
|
"pino": "^10.1.0",
|
|
78
|
-
"pino-pretty": "^13.1.
|
|
78
|
+
"pino-pretty": "^13.1.2",
|
|
79
79
|
"tsup": "^8.5.1",
|
|
80
|
-
"tsx": "^4.
|
|
80
|
+
"tsx": "^4.20.6",
|
|
81
81
|
"typescript": "^5.9.3",
|
|
82
82
|
"viem-deal": "^2.0.4",
|
|
83
|
-
"vitest": "^4.0.
|
|
83
|
+
"vitest": "^4.0.13"
|
|
84
84
|
},
|
|
85
85
|
"peerDependencies": {
|
|
86
86
|
"axios": "^1.0.0",
|
|
@@ -1,173 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __export = (target, all) => {
|
|
7
|
-
for (var name in all)
|
|
8
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
-
};
|
|
10
|
-
var __copyProps = (to, from, except, desc) => {
|
|
11
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
-
for (let key of __getOwnPropNames(from))
|
|
13
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
-
}
|
|
16
|
-
return to;
|
|
17
|
-
};
|
|
18
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
var base_contract_exports = {};
|
|
20
|
-
__export(base_contract_exports, {
|
|
21
|
-
BaseContract: () => BaseContract
|
|
22
|
-
});
|
|
23
|
-
module.exports = __toCommonJS(base_contract_exports);
|
|
24
|
-
var import_viem = require("viem");
|
|
25
|
-
var import_utils = require("../../sdk/utils/index.js");
|
|
26
|
-
var import_abi_decoder = require("../utils/abi-decoder.js");
|
|
27
|
-
class BaseContract {
|
|
28
|
-
abi;
|
|
29
|
-
address;
|
|
30
|
-
name;
|
|
31
|
-
static register = {};
|
|
32
|
-
contract;
|
|
33
|
-
client;
|
|
34
|
-
constructor(abi, address, client, name) {
|
|
35
|
-
this.abi = abi;
|
|
36
|
-
this.client = client;
|
|
37
|
-
this.address = address.toLowerCase();
|
|
38
|
-
this.name = name;
|
|
39
|
-
this.contract = (0, import_viem.getContract)({
|
|
40
|
-
address,
|
|
41
|
-
abi,
|
|
42
|
-
client
|
|
43
|
-
});
|
|
44
|
-
BaseContract.register[this.address] = this;
|
|
45
|
-
}
|
|
46
|
-
static parseCall(call) {
|
|
47
|
-
const parsedCall = BaseContract.parse(call.target, call.callData);
|
|
48
|
-
return {
|
|
49
|
-
...parsedCall,
|
|
50
|
-
chainId: call.chainId
|
|
51
|
-
};
|
|
52
|
-
}
|
|
53
|
-
static parse(address, calldata) {
|
|
54
|
-
const contract = BaseContract.register[address.toLowerCase()];
|
|
55
|
-
if (contract) {
|
|
56
|
-
return contract.parseFunctionData(calldata);
|
|
57
|
-
} else {
|
|
58
|
-
return {
|
|
59
|
-
chainId: 0,
|
|
60
|
-
target: address,
|
|
61
|
-
label: "Unknown contract",
|
|
62
|
-
functionName: `Unknown function: ${calldata}`,
|
|
63
|
-
args: {}
|
|
64
|
-
};
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
parseFunctionData(calldata) {
|
|
68
|
-
const decodedWithNames = (0, import_abi_decoder.decodeFunctionWithNamedArgs)(this.abi, calldata);
|
|
69
|
-
if (!decodedWithNames) {
|
|
70
|
-
return {
|
|
71
|
-
chainId: 0,
|
|
72
|
-
target: this.address,
|
|
73
|
-
label: this.name,
|
|
74
|
-
functionName: `Unknown function: ${calldata}`,
|
|
75
|
-
args: {}
|
|
76
|
-
};
|
|
77
|
-
}
|
|
78
|
-
const specParsed = this.parseFunctionParams(
|
|
79
|
-
decodedWithNames.originalDecoded
|
|
80
|
-
);
|
|
81
|
-
if (specParsed) {
|
|
82
|
-
return specParsed;
|
|
83
|
-
}
|
|
84
|
-
return this.wrapParseCall(
|
|
85
|
-
decodedWithNames.originalDecoded,
|
|
86
|
-
decodedWithNames.args
|
|
87
|
-
);
|
|
88
|
-
}
|
|
89
|
-
wrapParseCall(params, parsedParams) {
|
|
90
|
-
return {
|
|
91
|
-
chainId: 0,
|
|
92
|
-
target: this.address,
|
|
93
|
-
label: this.name,
|
|
94
|
-
functionName: params.functionName,
|
|
95
|
-
args: parsedParams
|
|
96
|
-
};
|
|
97
|
-
}
|
|
98
|
-
parseFunctionParams(_params) {
|
|
99
|
-
return void 0;
|
|
100
|
-
}
|
|
101
|
-
createRawTx(parameters) {
|
|
102
|
-
const { description: argsDescription } = parameters;
|
|
103
|
-
const tx = (0, import_utils.createRawTx)(
|
|
104
|
-
this.address,
|
|
105
|
-
{
|
|
106
|
-
abi: this.abi,
|
|
107
|
-
...parameters
|
|
108
|
-
},
|
|
109
|
-
argsDescription
|
|
110
|
-
);
|
|
111
|
-
tx.description = parameters.description || argsDescription || this.stringifyParsedCall(this.parseFunctionData(tx.callData));
|
|
112
|
-
return tx;
|
|
113
|
-
}
|
|
114
|
-
stringifyParsedCall(parsedCall) {
|
|
115
|
-
const argsStr = Object.entries(parsedCall.args).map(([key, value]) => `${key}: ${value}`).join(", ");
|
|
116
|
-
return `${parsedCall.label}.${parsedCall.functionName}(${argsStr})`;
|
|
117
|
-
}
|
|
118
|
-
async getEvents(eventName, fromBlock, toBlock, args, chunkSize) {
|
|
119
|
-
if (chunkSize) {
|
|
120
|
-
const chunkSizeBigint = BigInt(chunkSize);
|
|
121
|
-
const getEventPromises = [];
|
|
122
|
-
for (let i = fromBlock; i < toBlock; i += chunkSizeBigint) {
|
|
123
|
-
getEventPromises.push(
|
|
124
|
-
this.client.getContractEvents({
|
|
125
|
-
address: this.address,
|
|
126
|
-
fromBlock: i,
|
|
127
|
-
toBlock: i + chunkSizeBigint,
|
|
128
|
-
abi: this.abi,
|
|
129
|
-
eventName,
|
|
130
|
-
args
|
|
131
|
-
})
|
|
132
|
-
);
|
|
133
|
-
}
|
|
134
|
-
const events = (await Promise.all(getEventPromises)).flat();
|
|
135
|
-
return events;
|
|
136
|
-
}
|
|
137
|
-
try {
|
|
138
|
-
const events = await this.client.getContractEvents({
|
|
139
|
-
address: this.address,
|
|
140
|
-
fromBlock,
|
|
141
|
-
toBlock,
|
|
142
|
-
abi: this.abi,
|
|
143
|
-
eventName,
|
|
144
|
-
args
|
|
145
|
-
});
|
|
146
|
-
return events;
|
|
147
|
-
} catch (e) {
|
|
148
|
-
const blockRangeErrors = [
|
|
149
|
-
"query exceeds max block",
|
|
150
|
-
"range is too large",
|
|
151
|
-
"eth_getLogs is limited to",
|
|
152
|
-
"Unable to perform request",
|
|
153
|
-
"Block range limit exceeded"
|
|
154
|
-
];
|
|
155
|
-
if (e instanceof Error && blockRangeErrors.some((errorText) => e.message.includes(errorText))) {
|
|
156
|
-
const middle = (fromBlock + toBlock) / 2n;
|
|
157
|
-
const [firstHalfEvents, secondHalfEvents] = await Promise.all([
|
|
158
|
-
this.getEvents(eventName, fromBlock, middle, args),
|
|
159
|
-
this.getEvents(eventName, middle + 1n, toBlock, args)
|
|
160
|
-
]);
|
|
161
|
-
return [...firstHalfEvents, ...secondHalfEvents];
|
|
162
|
-
}
|
|
163
|
-
throw e;
|
|
164
|
-
}
|
|
165
|
-
}
|
|
166
|
-
getContract() {
|
|
167
|
-
return this.contract;
|
|
168
|
-
}
|
|
169
|
-
}
|
|
170
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
171
|
-
0 && (module.exports = {
|
|
172
|
-
BaseContract
|
|
173
|
-
});
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __export = (target, all) => {
|
|
7
|
-
for (var name in all)
|
|
8
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
-
};
|
|
10
|
-
var __copyProps = (to, from, except, desc) => {
|
|
11
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
-
for (let key of __getOwnPropNames(from))
|
|
13
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
-
}
|
|
16
|
-
return to;
|
|
17
|
-
};
|
|
18
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
var abi_decoder_exports = {};
|
|
20
|
-
__export(abi_decoder_exports, {
|
|
21
|
-
decodeFunctionWithNamedArgs: () => decodeFunctionWithNamedArgs
|
|
22
|
-
});
|
|
23
|
-
module.exports = __toCommonJS(abi_decoder_exports);
|
|
24
|
-
var import_viem = require("viem");
|
|
25
|
-
var import_utils = require("../../sdk/utils/index.js");
|
|
26
|
-
function decodeFunctionWithNamedArgs(abi, calldata) {
|
|
27
|
-
try {
|
|
28
|
-
const decoded = (0, import_viem.decodeFunctionData)({
|
|
29
|
-
abi,
|
|
30
|
-
data: calldata
|
|
31
|
-
});
|
|
32
|
-
const abiItem = abi.find(
|
|
33
|
-
(item) => item?.name === decoded.functionName && item?.type === "function"
|
|
34
|
-
);
|
|
35
|
-
if (!abiItem) {
|
|
36
|
-
return {
|
|
37
|
-
functionName: decoded.functionName,
|
|
38
|
-
args: {},
|
|
39
|
-
originalDecoded: decoded
|
|
40
|
-
};
|
|
41
|
-
}
|
|
42
|
-
const namedArgs = {};
|
|
43
|
-
if (Array.isArray(decoded.args)) {
|
|
44
|
-
decoded.args.forEach((value, i) => {
|
|
45
|
-
const input = abiItem.inputs?.[i];
|
|
46
|
-
if (input?.name) {
|
|
47
|
-
namedArgs[input.name] = input.type.startsWith("tuple") ? (0, import_utils.json_stringify)(value) : String(value);
|
|
48
|
-
}
|
|
49
|
-
});
|
|
50
|
-
} else {
|
|
51
|
-
Object.entries(decoded.args || {}).forEach(([key, value]) => {
|
|
52
|
-
const index = parseInt(key, 10);
|
|
53
|
-
if (!Number.isNaN(index) && abiItem.inputs?.[index]?.name) {
|
|
54
|
-
namedArgs[abiItem.inputs[index].name] = String(value);
|
|
55
|
-
} else {
|
|
56
|
-
namedArgs[key] = String(value);
|
|
57
|
-
}
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
return {
|
|
61
|
-
functionName: decoded.functionName,
|
|
62
|
-
args: namedArgs,
|
|
63
|
-
originalDecoded: decoded
|
|
64
|
-
};
|
|
65
|
-
} catch {
|
|
66
|
-
return null;
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
70
|
-
0 && (module.exports = {
|
|
71
|
-
decodeFunctionWithNamedArgs
|
|
72
|
-
});
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __export = (target, all) => {
|
|
7
|
-
for (var name in all)
|
|
8
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
-
};
|
|
10
|
-
var __copyProps = (to, from, except, desc) => {
|
|
11
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
-
for (let key of __getOwnPropNames(from))
|
|
13
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
-
}
|
|
16
|
-
return to;
|
|
17
|
-
};
|
|
18
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
var AddressLabeller_exports = {};
|
|
20
|
-
__export(AddressLabeller_exports, {
|
|
21
|
-
AddressLabeller: () => AddressLabeller
|
|
22
|
-
});
|
|
23
|
-
module.exports = __toCommonJS(AddressLabeller_exports);
|
|
24
|
-
var import_constants = require("../constants/index.js");
|
|
25
|
-
var import_utils = require("../utils/index.js");
|
|
26
|
-
class AddressLabeller {
|
|
27
|
-
#labels = new import_utils.AddressMap(void 0, "addressLabeller");
|
|
28
|
-
set(address, label) {
|
|
29
|
-
if (address === import_constants.NOT_DEPLOYED) {
|
|
30
|
-
return;
|
|
31
|
-
}
|
|
32
|
-
if (typeof label === "string") {
|
|
33
|
-
this.#labels.upsert(address, label);
|
|
34
|
-
} else {
|
|
35
|
-
this.#labels.upsert(address, label(this.#labels.get(address)));
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
get(address) {
|
|
39
|
-
const label = this.#labels.get(address);
|
|
40
|
-
return label ? `${address} [${label}]` : address;
|
|
41
|
-
}
|
|
42
|
-
get all() {
|
|
43
|
-
return this.#labels.asRecord();
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
47
|
-
0 && (module.exports = {
|
|
48
|
-
AddressLabeller
|
|
49
|
-
});
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __copyProps = (to, from, except, desc) => {
|
|
7
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
8
|
-
for (let key of __getOwnPropNames(from))
|
|
9
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
10
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
11
|
-
}
|
|
12
|
-
return to;
|
|
13
|
-
};
|
|
14
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
15
|
-
var IAddressLabeller_exports = {};
|
|
16
|
-
module.exports = __toCommonJS(IAddressLabeller_exports);
|