@gearbox-protocol/sdk 14.12.0-next.14 → 14.12.0-next.16
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/abi/ierc4626Adapter.js +264 -0
- package/dist/cjs/plugins/adapters/abi/actionAbi.js +1 -10
- package/dist/cjs/plugins/adapters/abi/adapters/erc4626ReferralAdapter.js +332 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iBalancerV3RouterAdapter.js +436 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iBalancerV3WrapperAdapter.js +183 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iCamelotV3Adapter.js +586 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iConvexV1BaseRewardPoolAdapter.js +385 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iCurveV1StableNgAdapter.js +708 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iCurveV1_2AssetsAdapter.js +708 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iCurveV1_3AssetsAdapter.js +708 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iCurveV1_4AssetsAdapter.js +708 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iDaiUsdsAdapter.js +206 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iFluidDexAdapter.js +183 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iInfinifiGatewayAdapter.js +473 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iInfinifiUnwindingGateway.js +482 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iKelpLrtDepositPool.js +333 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iKelpLrtWithdrawalManager.js +488 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iLidoV1Adapter.js +171 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iMellow4626VaultAdapter.js +269 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iMellowClaimerAdapter.js +350 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iMellowWrapperAdapter.js +225 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iMidasIssuanceVaultAdapter.js +262 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iMidasRedemptionVault.js +622 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iPendleRouterAdapter.js +1787 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iStakingRewardsAdapter.js +288 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iTraderJoeRouterAdapter.js +459 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iUniswapV2Adapter.js +290 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iUniswapV3Adapter.js +505 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iUniswapV4Adapter.js +534 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iUpshiftVaultAdapter.js +475 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iVelodromeV2RouterAdapter.js +327 -0
- package/dist/cjs/plugins/adapters/abi/adapters/index.js +84 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iwstEthv1Adapter.js +183 -0
- package/dist/cjs/plugins/adapters/abi/adapters/mellowDvvAdapter.js +319 -0
- package/dist/cjs/plugins/adapters/abi/conctructorAbi.js +1 -42
- package/dist/cjs/plugins/adapters/abi/conctructorAbiPatterns.js +0 -16
- package/dist/cjs/plugins/adapters/abi/index.js +2 -2
- package/dist/cjs/plugins/adapters/abi/targetContractAbi.js +0 -293
- 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 +1 -1
- 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/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 +11 -4
- package/dist/cjs/plugins/adapters/contracts/ERC4626ReferralAdapterContract.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 +3 -3
- package/dist/cjs/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +3 -3
- package/dist/cjs/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +3 -3
- 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/MellowERC4626VaultAdapterContract.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 +3 -3
- 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 +2 -2
- package/dist/cjs/plugins/adapters/contracts/UniswapV3AdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/UniswapV4AdapterContract.js +3 -3
- package/dist/cjs/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +3 -3
- 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/index.js +0 -12
- package/dist/cjs/plugins/adapters/createAdapter.js +1 -10
- package/dist/cjs/plugins/adapters/types.js +1 -11
- package/dist/cjs/preview/index.js +5 -1
- package/dist/cjs/preview/parse/parseFacadeOperationCalldata.js +1 -2
- package/dist/cjs/preview/parse/parseOperationCalldata.js +3 -11
- package/dist/cjs/preview/parse/parsePoolOperationCalldata.js +1 -2
- package/dist/cjs/preview/parse/parseRWAFactoryOperationCalldata.js +5 -6
- package/dist/cjs/preview/prerequisites/AllowancePrerequisite.js +10 -27
- package/dist/cjs/preview/prerequisites/BalancePrerequisite.js +10 -26
- package/dist/cjs/preview/prerequisites/Prerequisite.js +1 -21
- package/dist/cjs/preview/prerequisites/RWAOpenRequirementsPrerequisite.js +16 -32
- package/dist/cjs/preview/prerequisites/buildCollateralPrerequisites.js +1 -3
- package/dist/cjs/preview/prerequisites/buildPartialLiquidationPrerequisites.js +1 -3
- package/dist/cjs/preview/prerequisites/buildPoolPrerequisites.js +8 -19
- package/dist/cjs/preview/prerequisites/buildRWAPrerequisites.js +7 -5
- package/dist/cjs/preview/prerequisites/checkPrerequisites.js +10 -10
- package/dist/cjs/preview/prerequisites/helpers.js +2 -13
- package/dist/cjs/preview/preview/applyInnerOperations.js +13 -2
- package/dist/cjs/preview/preview/applyRWAWrapUnwrap.js +74 -0
- package/dist/cjs/preview/preview/index.js +2 -2
- package/dist/cjs/preview/preview/{previewCloseOrRepay.js → previewCloseOrRepayCreditAccount.js} +6 -6
- package/dist/cjs/preview/preview/previewOperation.js +3 -3
- package/dist/cjs/preview/preview/previewPoolOperation.js +6 -39
- package/dist/cjs/preview/simulate/simulatePoolOperation.js +2 -5
- package/dist/cjs/preview/types.js +16 -0
- package/dist/cjs/sdk/accounts/CreditAccountsServiceV310.js +6 -117
- package/dist/esm/abi/ierc4626Adapter.js +240 -0
- package/dist/esm/plugins/adapters/abi/actionAbi.js +1 -10
- package/dist/esm/plugins/adapters/abi/adapters/erc4626ReferralAdapter.js +308 -0
- package/dist/esm/plugins/adapters/abi/adapters/iBalancerV3RouterAdapter.js +412 -0
- package/dist/esm/plugins/adapters/abi/adapters/iBalancerV3WrapperAdapter.js +159 -0
- package/dist/esm/plugins/adapters/abi/adapters/iCamelotV3Adapter.js +562 -0
- package/dist/esm/plugins/adapters/abi/adapters/iConvexV1BaseRewardPoolAdapter.js +361 -0
- package/dist/esm/plugins/adapters/abi/adapters/iCurveV1StableNgAdapter.js +684 -0
- package/dist/esm/plugins/adapters/abi/adapters/iCurveV1_2AssetsAdapter.js +684 -0
- package/dist/esm/plugins/adapters/abi/adapters/iCurveV1_3AssetsAdapter.js +684 -0
- package/dist/esm/plugins/adapters/abi/adapters/iCurveV1_4AssetsAdapter.js +684 -0
- package/dist/esm/plugins/adapters/abi/adapters/iDaiUsdsAdapter.js +182 -0
- package/dist/esm/plugins/adapters/abi/adapters/iFluidDexAdapter.js +159 -0
- package/dist/esm/plugins/adapters/abi/adapters/iInfinifiGatewayAdapter.js +449 -0
- package/dist/esm/plugins/adapters/abi/adapters/iInfinifiUnwindingGateway.js +457 -0
- package/dist/esm/plugins/adapters/abi/adapters/iKelpLrtDepositPool.js +308 -0
- package/dist/esm/plugins/adapters/abi/adapters/iKelpLrtWithdrawalManager.js +463 -0
- package/dist/esm/plugins/adapters/abi/adapters/iLidoV1Adapter.js +147 -0
- package/dist/esm/plugins/adapters/abi/adapters/iMellow4626VaultAdapter.js +245 -0
- package/dist/esm/plugins/adapters/abi/adapters/iMellowClaimerAdapter.js +326 -0
- package/dist/esm/plugins/adapters/abi/adapters/iMellowWrapperAdapter.js +201 -0
- package/dist/esm/plugins/adapters/abi/adapters/iMidasIssuanceVaultAdapter.js +238 -0
- package/dist/esm/plugins/adapters/abi/adapters/iMidasRedemptionVault.js +597 -0
- package/dist/esm/plugins/adapters/abi/adapters/iPendleRouterAdapter.js +1763 -0
- package/dist/esm/plugins/adapters/abi/adapters/iStakingRewardsAdapter.js +264 -0
- package/dist/esm/plugins/adapters/abi/adapters/iTraderJoeRouterAdapter.js +435 -0
- package/dist/esm/plugins/adapters/abi/adapters/iUniswapV2Adapter.js +266 -0
- package/dist/esm/plugins/adapters/abi/adapters/iUniswapV3Adapter.js +481 -0
- package/dist/esm/plugins/adapters/abi/adapters/iUniswapV4Adapter.js +509 -0
- package/dist/esm/plugins/adapters/abi/adapters/iUpshiftVaultAdapter.js +450 -0
- package/dist/esm/plugins/adapters/abi/adapters/iVelodromeV2RouterAdapter.js +303 -0
- package/dist/esm/plugins/adapters/abi/adapters/index.js +32 -0
- package/dist/esm/plugins/adapters/abi/adapters/iwstEthv1Adapter.js +159 -0
- package/dist/esm/plugins/adapters/abi/adapters/mellowDvvAdapter.js +295 -0
- package/dist/esm/plugins/adapters/abi/conctructorAbi.js +1 -44
- package/dist/esm/plugins/adapters/abi/conctructorAbiPatterns.js +0 -14
- package/dist/esm/plugins/adapters/abi/index.js +1 -1
- package/dist/esm/plugins/adapters/abi/targetContractAbi.js +0 -289
- package/dist/esm/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +1 -1
- package/dist/esm/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +1 -1
- package/dist/esm/plugins/adapters/contracts/CamelotV3AdapterContract.js +1 -1
- package/dist/esm/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +1 -1
- package/dist/esm/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +1 -1
- package/dist/esm/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +1 -1
- package/dist/esm/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +1 -1
- package/dist/esm/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +1 -1
- package/dist/esm/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +1 -1
- package/dist/esm/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +1 -1
- package/dist/esm/plugins/adapters/contracts/DaiUsdsAdapterContract.js +1 -1
- package/dist/esm/plugins/adapters/contracts/ERC4626AdapterContract.js +10 -3
- package/dist/esm/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +1 -1
- package/dist/esm/plugins/adapters/contracts/FluidDexAdapterContract.js +1 -1
- package/dist/esm/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +1 -1
- package/dist/esm/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +4 -4
- package/dist/esm/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +4 -4
- package/dist/esm/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +4 -4
- package/dist/esm/plugins/adapters/contracts/LidoV1AdapterContract.js +1 -1
- package/dist/esm/plugins/adapters/contracts/MellowClaimerAdapterContract.js +1 -1
- package/dist/esm/plugins/adapters/contracts/MellowDVVAdapterContract.js +1 -1
- package/dist/esm/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +1 -1
- package/dist/esm/plugins/adapters/contracts/MellowWrapperAdapterContract.js +1 -1
- package/dist/esm/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +1 -1
- package/dist/esm/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +4 -4
- package/dist/esm/plugins/adapters/contracts/PendleRouterAdapterContract.js +1 -1
- package/dist/esm/plugins/adapters/contracts/StakingRewardsAdapterContract.js +1 -1
- package/dist/esm/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +1 -1
- package/dist/esm/plugins/adapters/contracts/UniswapV2AdapterContract.js +1 -1
- package/dist/esm/plugins/adapters/contracts/UniswapV3AdapterContract.js +1 -1
- package/dist/esm/plugins/adapters/contracts/UniswapV4AdapterContract.js +4 -4
- package/dist/esm/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +4 -4
- package/dist/esm/plugins/adapters/contracts/VelodromeV2AdapterContract.js +1 -1
- package/dist/esm/plugins/adapters/contracts/WstETHV1AdapterContract.js +1 -1
- package/dist/esm/plugins/adapters/contracts/index.js +0 -6
- package/dist/esm/plugins/adapters/createAdapter.js +1 -13
- package/dist/esm/plugins/adapters/types.js +1 -11
- package/dist/esm/preview/index.js +2 -0
- package/dist/esm/preview/parse/parseFacadeOperationCalldata.js +1 -2
- package/dist/esm/preview/parse/parseOperationCalldata.js +3 -11
- package/dist/esm/preview/parse/parsePoolOperationCalldata.js +1 -2
- package/dist/esm/preview/parse/parseRWAFactoryOperationCalldata.js +5 -6
- package/dist/esm/preview/prerequisites/AllowancePrerequisite.js +10 -27
- package/dist/esm/preview/prerequisites/BalancePrerequisite.js +10 -26
- package/dist/esm/preview/prerequisites/Prerequisite.js +1 -21
- package/dist/esm/preview/prerequisites/RWAOpenRequirementsPrerequisite.js +16 -32
- package/dist/esm/preview/prerequisites/buildCollateralPrerequisites.js +1 -3
- package/dist/esm/preview/prerequisites/buildPartialLiquidationPrerequisites.js +1 -3
- package/dist/esm/preview/prerequisites/buildPoolPrerequisites.js +8 -19
- package/dist/esm/preview/prerequisites/buildRWAPrerequisites.js +7 -5
- package/dist/esm/preview/prerequisites/checkPrerequisites.js +9 -11
- package/dist/esm/preview/prerequisites/helpers.js +5 -14
- package/dist/esm/preview/preview/applyInnerOperations.js +17 -3
- package/dist/esm/preview/preview/applyRWAWrapUnwrap.js +50 -0
- package/dist/esm/preview/preview/index.js +1 -1
- package/dist/esm/preview/preview/{previewCloseOrRepay.js → previewCloseOrRepayCreditAccount.js} +2 -2
- package/dist/esm/preview/preview/previewOperation.js +3 -3
- package/dist/esm/preview/preview/previewPoolOperation.js +7 -42
- package/dist/esm/preview/simulate/simulateOperation.js +1 -4
- package/dist/esm/preview/simulate/simulatePoolOperation.js +2 -5
- package/dist/esm/preview/types.js +0 -0
- package/dist/esm/sdk/accounts/CreditAccountsServiceV310.js +2 -113
- package/dist/types/abi/ierc4626Adapter.d.ts +179 -0
- package/dist/types/common-utils/utils/creditAccount/sort.d.ts +3 -3
- package/dist/types/common-utils/utils/strategies/eligibility/is-strategy-eligible.d.ts +1 -1
- package/dist/types/common-utils/utils/strategies/lists/get-available-and-disabled-strategies.d.ts +1 -1
- package/dist/types/dev/abi.d.ts +4 -4
- package/dist/types/dev/providers.d.ts +1 -1
- package/dist/types/permissionless/bindings/bytecode-repository.d.ts +9 -9
- package/dist/types/permissionless/bindings/treasury-splitter.d.ts +1 -1
- package/dist/types/plugins/adapters/abi/adapters/erc4626ReferralAdapter.d.ts +231 -0
- package/dist/types/plugins/adapters/abi/adapters/iBalancerV3RouterAdapter.d.ts +314 -0
- package/dist/types/plugins/adapters/abi/adapters/iBalancerV3WrapperAdapter.d.ts +117 -0
- package/dist/types/plugins/adapters/abi/adapters/iCamelotV3Adapter.d.ts +428 -0
- package/dist/types/plugins/adapters/abi/adapters/iConvexV1BaseRewardPoolAdapter.d.ts +271 -0
- package/dist/types/plugins/adapters/abi/adapters/iCurveV1StableNgAdapter.d.ts +519 -0
- package/dist/types/plugins/adapters/abi/adapters/iCurveV1_2AssetsAdapter.d.ts +519 -0
- package/dist/types/plugins/adapters/abi/adapters/iCurveV1_3AssetsAdapter.d.ts +519 -0
- package/dist/types/plugins/adapters/abi/adapters/iCurveV1_4AssetsAdapter.d.ts +519 -0
- package/dist/types/plugins/adapters/abi/adapters/iDaiUsdsAdapter.d.ts +135 -0
- package/dist/types/plugins/adapters/abi/adapters/iFluidDexAdapter.d.ts +119 -0
- package/dist/types/plugins/adapters/abi/adapters/iInfinifiGatewayAdapter.d.ts +338 -0
- package/dist/types/plugins/adapters/abi/adapters/iInfinifiUnwindingGateway.d.ts +346 -0
- package/dist/types/plugins/adapters/abi/adapters/iKelpLrtDepositPool.d.ts +233 -0
- package/dist/types/plugins/adapters/abi/adapters/iKelpLrtWithdrawalManager.d.ts +349 -0
- package/dist/types/plugins/adapters/abi/adapters/iLidoV1Adapter.d.ts +109 -0
- package/dist/types/plugins/adapters/abi/adapters/iMellow4626VaultAdapter.d.ts +183 -0
- package/dist/types/plugins/adapters/abi/adapters/iMellowClaimerAdapter.d.ts +247 -0
- package/dist/types/plugins/adapters/abi/adapters/iMellowWrapperAdapter.d.ts +151 -0
- package/dist/types/plugins/adapters/abi/adapters/iMidasIssuanceVaultAdapter.d.ts +180 -0
- package/dist/types/plugins/adapters/abi/adapters/iMidasRedemptionVault.d.ts +453 -0
- package/dist/types/plugins/adapters/abi/adapters/iPendleRouterAdapter.d.ts +1366 -0
- package/dist/types/plugins/adapters/abi/adapters/iStakingRewardsAdapter.d.ts +197 -0
- package/dist/types/plugins/adapters/abi/adapters/iTraderJoeRouterAdapter.d.ts +333 -0
- package/dist/types/plugins/adapters/abi/adapters/iUniswapV2Adapter.d.ts +202 -0
- package/dist/types/plugins/adapters/abi/adapters/iUniswapV3Adapter.d.ts +367 -0
- package/dist/types/plugins/adapters/abi/adapters/iUniswapV4Adapter.d.ts +390 -0
- package/dist/types/plugins/adapters/abi/adapters/iUpshiftVaultAdapter.d.ts +336 -0
- package/dist/types/plugins/adapters/abi/adapters/iVelodromeV2RouterAdapter.d.ts +232 -0
- package/dist/types/plugins/adapters/abi/adapters/index.d.ts +32 -0
- package/dist/types/plugins/adapters/abi/adapters/iwstEthv1Adapter.d.ts +117 -0
- package/dist/types/plugins/adapters/abi/adapters/mellowDvvAdapter.d.ts +221 -0
- package/dist/types/plugins/adapters/abi/conctructorAbiPatterns.d.ts +0 -26
- package/dist/types/plugins/adapters/abi/index.d.ts +1 -1
- package/dist/types/plugins/adapters/abi/targetContractAbi.d.ts +0 -476
- package/dist/types/plugins/adapters/contracts/BalancerV3RouterAdapterContract.d.ts +5 -5
- package/dist/types/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.d.ts +3 -3
- package/dist/types/plugins/adapters/contracts/CamelotV3AdapterContract.d.ts +5 -5
- package/dist/types/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.d.ts +5 -5
- package/dist/types/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.d.ts +5 -5
- package/dist/types/plugins/adapters/contracts/Curve2AssetsAdapterContract.d.ts +5 -5
- package/dist/types/plugins/adapters/contracts/Curve3AssetsAdapterContract.d.ts +5 -5
- package/dist/types/plugins/adapters/contracts/Curve4AssetsAdapterContract.d.ts +5 -5
- package/dist/types/plugins/adapters/contracts/CurveV1StableNGAdapterContract.d.ts +5 -5
- package/dist/types/plugins/adapters/contracts/DaiUsdsAdapterContract.d.ts +4 -4
- package/dist/types/plugins/adapters/contracts/ERC4626AdapterContract.d.ts +10 -4
- package/dist/types/plugins/adapters/contracts/ERC4626ReferralAdapterContract.d.ts +4 -4
- package/dist/types/plugins/adapters/contracts/FluidDexAdapterContract.d.ts +4 -4
- package/dist/types/plugins/adapters/contracts/InfinifiGatewayAdapterContract.d.ts +5 -5
- package/dist/types/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.d.ts +3 -3
- package/dist/types/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.d.ts +3 -3
- package/dist/types/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.d.ts +5 -5
- package/dist/types/plugins/adapters/contracts/LidoV1AdapterContract.d.ts +5 -5
- package/dist/types/plugins/adapters/contracts/MellowClaimerAdapterContract.d.ts +3 -3
- package/dist/types/plugins/adapters/contracts/MellowDVVAdapterContract.d.ts +4 -4
- package/dist/types/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.d.ts +5 -5
- package/dist/types/plugins/adapters/contracts/MellowWrapperAdapterContract.d.ts +3 -3
- package/dist/types/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.d.ts +5 -5
- package/dist/types/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +5 -5
- package/dist/types/plugins/adapters/contracts/PendleRouterAdapterContract.d.ts +5 -5
- package/dist/types/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.d.ts +4 -4
- package/dist/types/plugins/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.d.ts +5 -5
- package/dist/types/plugins/adapters/contracts/StakingRewardsAdapterContract.d.ts +5 -5
- package/dist/types/plugins/adapters/contracts/TraderJoeRouterAdapterContract.d.ts +5 -5
- package/dist/types/plugins/adapters/contracts/UniswapV2AdapterContract.d.ts +5 -5
- package/dist/types/plugins/adapters/contracts/UniswapV3AdapterContract.d.ts +5 -5
- package/dist/types/plugins/adapters/contracts/UniswapV4AdapterContract.d.ts +5 -5
- package/dist/types/plugins/adapters/contracts/UpshiftVaultAdapterContract.d.ts +5 -5
- package/dist/types/plugins/adapters/contracts/VelodromeV2AdapterContract.d.ts +5 -5
- package/dist/types/plugins/adapters/contracts/WstETHV1AdapterContract.d.ts +3 -3
- package/dist/types/plugins/adapters/contracts/index.d.ts +0 -6
- package/dist/types/plugins/adapters/types.d.ts +20 -13
- package/dist/types/preview/index.d.ts +2 -0
- package/dist/types/preview/parse/parseFacadeOperationCalldata.d.ts +6 -7
- package/dist/types/preview/parse/parseOperationCalldata.d.ts +5 -18
- package/dist/types/preview/parse/parsePoolOperationCalldata.d.ts +7 -12
- package/dist/types/preview/parse/parseRWAFactoryOperationCalldata.d.ts +5 -14
- package/dist/types/preview/parse/types.d.ts +0 -25
- package/dist/types/preview/prerequisites/AllowancePrerequisite.d.ts +13 -11
- package/dist/types/preview/prerequisites/BalancePrerequisite.d.ts +13 -11
- package/dist/types/preview/prerequisites/Prerequisite.d.ts +6 -19
- package/dist/types/preview/prerequisites/RWAOpenRequirementsPrerequisite.d.ts +27 -18
- package/dist/types/preview/prerequisites/buildCollateralPrerequisites.d.ts +2 -2
- package/dist/types/preview/prerequisites/buildPartialLiquidationPrerequisites.d.ts +2 -2
- package/dist/types/preview/prerequisites/buildPoolPrerequisites.d.ts +2 -2
- package/dist/types/preview/prerequisites/buildRWAPrerequisites.d.ts +2 -2
- package/dist/types/preview/prerequisites/checkPrerequisites.d.ts +8 -16
- package/dist/types/preview/prerequisites/helpers.d.ts +3 -11
- package/dist/types/preview/prerequisites/types.d.ts +14 -72
- package/dist/types/preview/preview/applyInnerOperations.d.ts +11 -4
- package/dist/types/preview/preview/applyRWAWrapUnwrap.d.ts +13 -0
- package/dist/types/preview/preview/index.d.ts +1 -1
- package/dist/types/preview/preview/previewAdjustCreditAccount.d.ts +2 -1
- package/dist/types/preview/preview/{previewCloseOrRepay.d.ts → previewCloseOrRepayCreditAccount.d.ts} +3 -2
- package/dist/types/preview/preview/previewOpenCreditAccount.d.ts +2 -1
- package/dist/types/preview/preview/previewOperation.d.ts +2 -1
- package/dist/types/preview/preview/previewPoolOperation.d.ts +3 -3
- package/dist/types/preview/preview/types.d.ts +7 -60
- package/dist/types/preview/simulate/index.d.ts +1 -4
- package/dist/types/preview/simulate/simulateFacadeOperation.d.ts +3 -14
- package/dist/types/preview/simulate/simulateOperation.d.ts +4 -16
- package/dist/types/preview/simulate/simulatePoolOperation.d.ts +7 -3
- package/dist/types/preview/simulate/simulateRWAOperation.d.ts +3 -14
- package/dist/types/preview/simulate/types.d.ts +13 -30
- package/dist/types/preview/types.d.ts +52 -0
- package/dist/types/sdk/accounts/CreditAccountsServiceV310.d.ts +1 -6
- package/dist/types/sdk/accounts/types.d.ts +4 -64
- package/dist/types/sdk/chain/chains.d.ts +8 -8
- package/dist/types/sdk/market/MarketConfiguratorContract.d.ts +5 -5
- package/dist/types/sdk/market/pricefeeds/PythPriceFeed.d.ts +1 -1
- package/package.json +11 -12
- package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterDeposit.js +0 -116
- package/dist/cjs/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +0 -76
- package/dist/cjs/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +0 -68
- package/dist/cjs/plugins/adapters/contracts/SecuritizeSwapAdapterContract.js +0 -89
- package/dist/esm/plugins/adapters/contracts/CurveV1AdapterDeposit.js +0 -94
- package/dist/esm/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +0 -54
- package/dist/esm/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +0 -46
- package/dist/esm/plugins/adapters/contracts/SecuritizeSwapAdapterContract.js +0 -69
- package/dist/types/plugins/adapters/contracts/CurveV1AdapterDeposit.d.ts +0 -1045
- package/dist/types/plugins/adapters/contracts/MellowDepositQueueAdapterContract.d.ts +0 -26
- package/dist/types/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.d.ts +0 -24
- package/dist/types/plugins/adapters/contracts/SecuritizeSwapAdapterContract.d.ts +0 -36
- /package/dist/cjs/plugins/adapters/abi/{iConvexV1BoosterAdapter.js → adapters/iConvexV1BoosterAdapter.js} +0 -0
- /package/dist/esm/plugins/adapters/abi/{iConvexV1BoosterAdapter.js → adapters/iConvexV1BoosterAdapter.js} +0 -0
- /package/dist/types/plugins/adapters/abi/{iConvexV1BoosterAdapter.d.ts → adapters/iConvexV1BoosterAdapter.d.ts} +0 -0
|
@@ -1,55 +1,47 @@
|
|
|
1
1
|
import type { AbiParameter, Address } from "viem";
|
|
2
|
+
import type { OnchainSDK, PluginsMap } from "../../sdk/index.js";
|
|
2
3
|
import type { BaseContractStateHuman } from "../../sdk/types/state-human.js";
|
|
4
|
+
import type { AdaptersPlugin } from "./AdaptersPlugin.js";
|
|
3
5
|
export type VersionedAbi = Record<number, readonly AbiParameter[]>;
|
|
4
|
-
export type AdapterContractType = "ADAPTER::ACCOUNT_MIGRATOR" | "ADAPTER::BALANCER_V3_ROUTER" | "ADAPTER::BALANCER_V3_WRAPPER" | "ADAPTER::
|
|
6
|
+
export type AdapterContractType = "ADAPTER::ACCOUNT_MIGRATOR" | "ADAPTER::BALANCER_V3_ROUTER" | "ADAPTER::BALANCER_V3_WRAPPER" | "ADAPTER::CAMELOT_V3_ROUTER" | "ADAPTER::CURVE_STABLE_NG" | "ADAPTER::CURVE_V1_2ASSETS" | "ADAPTER::CURVE_V1_3ASSETS" | "ADAPTER::CURVE_V1_4ASSETS" | "ADAPTER::CURVE_V1_STECRV_POOL" | "ADAPTER::CVX_V1_BASE_REWARD_POOL" | "ADAPTER::CVX_V1_BOOSTER" | "ADAPTER::DAI_USDS_EXCHANGE" | "ADAPTER::ERC4626_VAULT" | "ADAPTER::ERC4626_VAULT_REFERRAL" | "ADAPTER::FLUID_DEX" | "ADAPTER::INFINIFI_GATEWAY" | "ADAPTER::INFINIFI_UNWINDING" | "ADAPTER::KELP_DEPOSIT_POOL" | "ADAPTER::KELP_WITHDRAWAL" | "ADAPTER::LIDO_V1" | "ADAPTER::LIDO_WSTETH_V1" | "ADAPTER::MELLOW_CLAIMER" | "ADAPTER::MELLOW_DVV" | "ADAPTER::MELLOW_ERC4626_VAULT" | "ADAPTER::MELLOW_WRAPPER" | "ADAPTER::MIDAS_ISSUANCE_VAULT" | "ADAPTER::MIDAS_REDEMPTION_VAULT" | "ADAPTER::PENDLE_ROUTER" | "ADAPTER::SECURITIZE_ONRAMP" | "ADAPTER::SECURITIZE_REDEMPTION" | "ADAPTER::STAKING_REWARDS" | "ADAPTER::TRADERJOE_ROUTER" | "ADAPTER::UNISWAP_V2_ROUTER" | "ADAPTER::UNISWAP_V3_ROUTER" | "ADAPTER::UNISWAP_V4_GATEWAY" | "ADAPTER::UPSHIFT_VAULT" | "ADAPTER::VELODROME_V2_ROUTER";
|
|
5
7
|
export declare enum AdapterType {
|
|
6
8
|
ACCOUNT_MIGRATOR = "ACCOUNT_MIGRATOR",
|
|
7
9
|
BALANCER_V3_ROUTER = "BALANCER_V3_ROUTER",
|
|
8
10
|
BALANCER_V3_WRAPPER = "BALANCER_V3_WRAPPER",
|
|
9
|
-
BALANCER_VAULT = "BALANCER_VAULT",
|
|
10
11
|
CAMELOT_V3_ROUTER = "CAMELOT_V3_ROUTER",
|
|
11
12
|
CURVE_STABLE_NG = "CURVE_STABLE_NG",
|
|
12
13
|
CURVE_V1_2ASSETS = "CURVE_V1_2ASSETS",
|
|
13
14
|
CURVE_V1_3ASSETS = "CURVE_V1_3ASSETS",
|
|
14
15
|
CURVE_V1_4ASSETS = "CURVE_V1_4ASSETS",
|
|
15
16
|
CURVE_V1_STECRV_POOL = "CURVE_V1_STECRV_POOL",
|
|
16
|
-
CURVE_V1_WRAPPER = "CURVE_V1_WRAPPER",
|
|
17
17
|
CVX_V1_BASE_REWARD_POOL = "CVX_V1_BASE_REWARD_POOL",
|
|
18
18
|
CVX_V1_BOOSTER = "CVX_V1_BOOSTER",
|
|
19
19
|
DAI_USDS_EXCHANGE = "DAI_USDS_EXCHANGE",
|
|
20
|
-
EQUALIZER_ROUTER = "EQUALIZER_ROUTER",
|
|
21
20
|
ERC4626_VAULT = "ERC4626_VAULT",
|
|
22
21
|
ERC4626_VAULT_REFERRAL = "ERC4626_VAULT_REFERRAL",
|
|
23
22
|
FLUID_DEX = "FLUID_DEX",
|
|
24
23
|
INFINIFI_GATEWAY = "INFINIFI_GATEWAY",
|
|
25
24
|
INFINIFI_UNWINDING = "INFINIFI_UNWINDING",
|
|
26
|
-
INFRARED_VAULT = "INFRARED_VAULT",
|
|
27
25
|
KELP_DEPOSIT_POOL = "KELP_DEPOSIT_POOL",
|
|
28
26
|
KELP_WITHDRAWAL = "KELP_WITHDRAWAL",
|
|
29
|
-
KODIAK_ISLAND_GATEWAY = "KODIAK_ISLAND_GATEWAY",
|
|
30
27
|
LIDO_V1 = "LIDO_V1",
|
|
31
28
|
LIDO_WSTETH_V1 = "LIDO_WSTETH_V1",
|
|
32
29
|
MELLOW_CLAIMER = "MELLOW_CLAIMER",
|
|
33
30
|
MELLOW_DVV = "MELLOW_DVV",
|
|
34
31
|
MELLOW_ERC4626_VAULT = "MELLOW_ERC4626_VAULT",
|
|
35
|
-
MELLOW_LRT_VAULT = "MELLOW_LRT_VAULT",
|
|
36
32
|
MELLOW_WRAPPER = "MELLOW_WRAPPER",
|
|
37
|
-
MELLOW_DEPOSIT_QUEUE = "MELLOW_DEPOSIT_QUEUE",
|
|
38
|
-
MELLOW_REDEEM_QUEUE = "MELLOW_REDEEM_QUEUE",
|
|
39
33
|
MIDAS_ISSUANCE_VAULT = "MIDAS_ISSUANCE_VAULT",
|
|
40
34
|
MIDAS_REDEMPTION_VAULT = "MIDAS_REDEMPTION_VAULT",
|
|
41
35
|
PENDLE_ROUTER = "PENDLE_ROUTER",
|
|
42
36
|
SECURITIZE_ONRAMP = "SECURITIZE_ONRAMP",
|
|
43
37
|
SECURITIZE_REDEMPTION = "SECURITIZE_REDEMPTION",
|
|
44
|
-
SECURITIZE_SWAP = "SECURITIZE_SWAP",
|
|
45
38
|
STAKING_REWARDS = "STAKING_REWARDS",
|
|
46
|
-
|
|
39
|
+
TRADERJOE_ROUTER = "TRADERJOE_ROUTER",
|
|
47
40
|
UNISWAP_V2_ROUTER = "UNISWAP_V2_ROUTER",
|
|
48
41
|
UNISWAP_V3_ROUTER = "UNISWAP_V3_ROUTER",
|
|
49
42
|
UNISWAP_V4_GATEWAY = "UNISWAP_V4_GATEWAY",
|
|
50
43
|
UPSHIFT_VAULT = "UPSHIFT_VAULT",
|
|
51
|
-
VELODROME_V2_ROUTER = "VELODROME_V2_ROUTER"
|
|
52
|
-
YEARN_V2 = "YEARN_V2"
|
|
44
|
+
VELODROME_V2_ROUTER = "VELODROME_V2_ROUTER"
|
|
53
45
|
}
|
|
54
46
|
/**
|
|
55
47
|
* Diff-call semantics of a diff-style adapter call: the call spends the
|
|
@@ -85,3 +77,18 @@ export interface AdapterProtocolOperation {
|
|
|
85
77
|
*/
|
|
86
78
|
functionArgs: Record<string, unknown>;
|
|
87
79
|
}
|
|
80
|
+
/**
|
|
81
|
+
* True when the plugin map `P` contains the {@link AdaptersPlugin} under any key
|
|
82
|
+
*/
|
|
83
|
+
export type HasAdaptersPlugin<P extends PluginsMap> = Extract<P[keyof P], AdaptersPlugin> extends never ? false : true;
|
|
84
|
+
/**
|
|
85
|
+
* Compile-time guard for the adapters plugin
|
|
86
|
+
*/
|
|
87
|
+
export type RequireAdaptersPlugin<P extends PluginsMap> = HasAdaptersPlugin<P> extends true ? unknown : {
|
|
88
|
+
"OnchainSDK must be created with the AdaptersPlugin": never;
|
|
89
|
+
};
|
|
90
|
+
/**
|
|
91
|
+
* {@link OnchainSDK} whose plugin map is guaranteed at compile time to include
|
|
92
|
+
* the {@link AdaptersPlugin}.
|
|
93
|
+
*/
|
|
94
|
+
export type SdkWithAdapters<P extends PluginsMap = PluginsMap> = OnchainSDK<P> & RequireAdaptersPlugin<P>;
|
|
@@ -1,12 +1,6 @@
|
|
|
1
1
|
import { type Hex } from "viem";
|
|
2
2
|
import type { CreditFacadeV310Contract, OnchainSDK } from "../../sdk/index.js";
|
|
3
3
|
import type { OuterFacadeOperation } from "./types.js";
|
|
4
|
-
export interface ParseFacadeOperationCalldataProps {
|
|
5
|
-
sdk: OnchainSDK;
|
|
6
|
-
/** Resolved credit facade contract for the transaction target. */
|
|
7
|
-
facade: CreditFacadeV310Contract;
|
|
8
|
-
calldata: Hex;
|
|
9
|
-
}
|
|
10
4
|
/**
|
|
11
5
|
* Decodes a credit-facade entry-point call into the matching
|
|
12
6
|
* {@link OuterFacadeOperation}.
|
|
@@ -15,5 +9,10 @@ export interface ParseFacadeOperationCalldataProps {
|
|
|
15
9
|
* of the base `preview` operation: those values are only known once the
|
|
16
10
|
* transaction is mined and are added in `history` mode. `creditAccount` is
|
|
17
11
|
* `zeroAddress` for `openCreditAccount` (the address is assigned on-chain).
|
|
12
|
+
*
|
|
13
|
+
* @param sdk - The SDK instance.
|
|
14
|
+
* @param facade - The credit facade contract.
|
|
15
|
+
* @param calldata - The calldata to parse.
|
|
16
|
+
* @returns The parsed operation.
|
|
18
17
|
*/
|
|
19
|
-
export declare function parseFacadeOperationCalldata(
|
|
18
|
+
export declare function parseFacadeOperationCalldata(sdk: OnchainSDK, facade: CreditFacadeV310Contract, calldata: Hex): OuterFacadeOperation;
|
|
@@ -1,23 +1,10 @@
|
|
|
1
|
-
import type { Address, Hex } from "viem";
|
|
2
1
|
import { type PluginsMap } from "../../sdk/index.js";
|
|
3
|
-
import type {
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Already-attached SDK; chain, RPC and block are baked in at attach time.
|
|
7
|
-
* Must be created with the adapters plugin (enforced at compile time) so
|
|
8
|
-
* adapter contracts resolve during multicall classification.
|
|
9
|
-
*/
|
|
10
|
-
sdk: SdkWithAdapters<P>;
|
|
11
|
-
to: Address;
|
|
12
|
-
calldata: Hex;
|
|
13
|
-
/** Transaction sender, contextual only. */
|
|
14
|
-
sender: Address;
|
|
15
|
-
/** Transaction `msg.value`, required for native-token zapper deposits. */
|
|
16
|
-
value?: bigint;
|
|
17
|
-
}
|
|
2
|
+
import type { PreviewOperationInput } from "../types.js";
|
|
3
|
+
import type { Operation } from "./types.js";
|
|
18
4
|
/**
|
|
19
5
|
* Decodes raw operation calldata into an {@link Operation}.
|
|
20
6
|
*
|
|
21
|
-
* Support parsing of pool operations (including via zappers)
|
|
7
|
+
* Support parsing of pool operations (including via zappers),
|
|
8
|
+
* credit facade operations and RWA factory operations.
|
|
22
9
|
*/
|
|
23
|
-
export declare function parseOperationCalldata<P extends PluginsMap>(input:
|
|
10
|
+
export declare function parseOperationCalldata<P extends PluginsMap>(input: PreviewOperationInput<P>): Operation;
|
|
@@ -1,17 +1,12 @@
|
|
|
1
1
|
import type { Hex } from "viem";
|
|
2
2
|
import type { OnchainSDK, PoolV310Contract } from "../../sdk/index.js";
|
|
3
3
|
import type { PoolOperation } from "./types.js";
|
|
4
|
-
export interface ParsePoolOperationCalldataProps {
|
|
5
|
-
sdk: OnchainSDK;
|
|
6
|
-
/** Resolved pool contract for the transaction target. */
|
|
7
|
-
pool: PoolV310Contract;
|
|
8
|
-
calldata: Hex;
|
|
9
|
-
}
|
|
10
4
|
/**
|
|
11
|
-
* Decodes
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
5
|
+
* Decodes pool calldata into a {@link PoolOperation}.
|
|
6
|
+
*
|
|
7
|
+
* @param sdk - The SDK instance.
|
|
8
|
+
* @param pool - The pool contract.
|
|
9
|
+
* @param calldata - The calldata to parse.
|
|
10
|
+
* @returns The parsed operation.
|
|
16
11
|
*/
|
|
17
|
-
export declare function parsePoolOperationCalldata(
|
|
12
|
+
export declare function parsePoolOperationCalldata(sdk: OnchainSDK, pool: PoolV310Contract, calldata: Hex): PoolOperation;
|
|
@@ -1,22 +1,13 @@
|
|
|
1
1
|
import type { Hex } from "viem";
|
|
2
2
|
import { type IRWAFactory, type OnchainSDK } from "../../sdk/index.js";
|
|
3
3
|
import type { RWAOperation } from "./types-rwa.js";
|
|
4
|
-
export interface ParseRWAFactoryOperationCalldataProps {
|
|
5
|
-
sdk: OnchainSDK;
|
|
6
|
-
/** Resolved RWA factory contract for the transaction target. */
|
|
7
|
-
factory: IRWAFactory;
|
|
8
|
-
calldata: Hex;
|
|
9
|
-
}
|
|
10
4
|
/**
|
|
11
5
|
* Decodes a RWA-factory entry-point call into the matching
|
|
12
6
|
* {@link RWAOperation}.
|
|
13
7
|
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
* Dispatches on the factory's contract type; supporting a new factory type
|
|
20
|
-
* requires a new branch here.
|
|
8
|
+
* @param sdk - The SDK instance.
|
|
9
|
+
* @param factory - The RWA factory contract.
|
|
10
|
+
* @param calldata - The calldata to parse.
|
|
11
|
+
* @returns The parsed operation.
|
|
21
12
|
*/
|
|
22
|
-
export declare function parseRWAFactoryOperationCalldata(
|
|
13
|
+
export declare function parseRWAFactoryOperationCalldata(sdk: OnchainSDK, factory: IRWAFactory, calldata: Hex): RWAOperation;
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import type { AdaptersPlugin } from "../../plugins/adapters/index.js";
|
|
2
|
-
import type { OnchainSDK, PluginsMap } from "../../sdk/index.js";
|
|
3
1
|
import type { OuterFacadeOperation } from "./types-facades.js";
|
|
4
2
|
import type { PoolOperation } from "./types-pools.js";
|
|
5
3
|
import type { RWAOperation } from "./types-rwa.js";
|
|
@@ -7,29 +5,6 @@ export * from "./types-adapters.js";
|
|
|
7
5
|
export * from "./types-facades.js";
|
|
8
6
|
export * from "./types-pools.js";
|
|
9
7
|
export * from "./types-rwa.js";
|
|
10
|
-
/**
|
|
11
|
-
* True when the plugin map `P` contains the {@link AdaptersPlugin} under any
|
|
12
|
-
* key. Matched nominally (the plugin's private fields make it non-structural),
|
|
13
|
-
* so unrelated plugins never satisfy it.
|
|
14
|
-
*/
|
|
15
|
-
export type HasAdaptersPlugin<P extends PluginsMap> = Extract<P[keyof P], AdaptersPlugin> extends never ? false : true;
|
|
16
|
-
/**
|
|
17
|
-
* Compile-time guard for the adapters plugin. Resolves to a no-op (`unknown`)
|
|
18
|
-
* when `P` includes the {@link AdaptersPlugin}, otherwise to an error-shaped
|
|
19
|
-
* type that makes the surrounding call fail to type-check.
|
|
20
|
-
*
|
|
21
|
-
* Intended to be intersected with a function argument so callers must pass an
|
|
22
|
-
* SDK whose adapter contracts are registered (required for multicall
|
|
23
|
-
* classification).
|
|
24
|
-
*/
|
|
25
|
-
export type RequireAdaptersPlugin<P extends PluginsMap> = HasAdaptersPlugin<P> extends true ? unknown : {
|
|
26
|
-
"OnchainSDK must be created with the AdaptersPlugin": never;
|
|
27
|
-
};
|
|
28
|
-
/**
|
|
29
|
-
* {@link OnchainSDK} whose plugin map is guaranteed at compile time to include
|
|
30
|
-
* the {@link AdaptersPlugin}.
|
|
31
|
-
*/
|
|
32
|
-
export type SdkWithAdapters<P extends PluginsMap = PluginsMap> = OnchainSDK<P> & RequireAdaptersPlugin<P>;
|
|
33
8
|
/**
|
|
34
9
|
* Result of decoding a single raw operation calldata: a pool deposit/redeem,
|
|
35
10
|
* one of the credit-facade operations, or an RWA-factory operation.
|
|
@@ -1,21 +1,23 @@
|
|
|
1
1
|
import { type Address } from "viem";
|
|
2
2
|
import { Prerequisite } from "./Prerequisite.js";
|
|
3
|
-
import type { PrerequisiteContext,
|
|
4
|
-
|
|
3
|
+
import type { PrerequisiteContext, PrerequisiteError, PrerequisiteOutcome } from "./types.js";
|
|
4
|
+
/** ERC-20 allowance from `owner` to `spender` must cover `required`. */
|
|
5
|
+
export interface AllowanceDetail {
|
|
5
6
|
token: Address;
|
|
6
7
|
owner: Address;
|
|
7
8
|
spender: Address;
|
|
8
9
|
required: bigint;
|
|
9
|
-
|
|
10
|
-
|
|
10
|
+
/** On-chain allowance read; only present when the read succeeded. */
|
|
11
|
+
actual?: bigint;
|
|
11
12
|
}
|
|
13
|
+
export type AllowanceResult = PrerequisiteOutcome & {
|
|
14
|
+
kind: "allowance";
|
|
15
|
+
detail: AllowanceDetail;
|
|
16
|
+
};
|
|
12
17
|
/** Checks that `owner` granted `spender` an ERC-20 allowance >= `required`. */
|
|
13
|
-
export declare class AllowancePrerequisite extends Prerequisite
|
|
18
|
+
export declare class AllowancePrerequisite extends Prerequisite {
|
|
14
19
|
#private;
|
|
15
|
-
constructor(
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
get title(): string;
|
|
19
|
-
get detail(): PrerequisiteDetail<"allowance">;
|
|
20
|
-
protected check(ctx: PrerequisiteContext): Promise<PrerequisiteResult<"allowance">>;
|
|
20
|
+
constructor(detail: Omit<AllowanceDetail, "actual">);
|
|
21
|
+
protected check(ctx: PrerequisiteContext): Promise<AllowanceResult>;
|
|
22
|
+
protected errorResult(error: PrerequisiteError): AllowanceResult;
|
|
21
23
|
}
|
|
@@ -1,24 +1,26 @@
|
|
|
1
1
|
import { type Address } from "viem";
|
|
2
2
|
import { Prerequisite } from "./Prerequisite.js";
|
|
3
|
-
import type { PrerequisiteContext,
|
|
4
|
-
|
|
3
|
+
import type { PrerequisiteContext, PrerequisiteError, PrerequisiteOutcome } from "./types.js";
|
|
4
|
+
/** ERC-20 balance of `owner` must cover `required`. */
|
|
5
|
+
export interface BalanceDetail {
|
|
5
6
|
token: Address;
|
|
6
7
|
owner: Address;
|
|
7
8
|
required: bigint;
|
|
8
|
-
|
|
9
|
-
|
|
9
|
+
/** On-chain balance read; only present when the read succeeded. */
|
|
10
|
+
actual?: bigint;
|
|
10
11
|
}
|
|
12
|
+
export type BalanceResult = PrerequisiteOutcome & {
|
|
13
|
+
kind: "balance";
|
|
14
|
+
detail: BalanceDetail;
|
|
15
|
+
};
|
|
11
16
|
/**
|
|
12
17
|
* Checks that `owner` holds a token balance >= `required`. The token is read
|
|
13
18
|
* as an ERC-20, except for the native pseudo-address ({@link NATIVE_ADDRESS},
|
|
14
19
|
* e.g. ETH-zapper deposits) whose balance is read via `getBalance`.
|
|
15
20
|
*/
|
|
16
|
-
export declare class BalancePrerequisite extends Prerequisite
|
|
21
|
+
export declare class BalancePrerequisite extends Prerequisite {
|
|
17
22
|
#private;
|
|
18
|
-
constructor(
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
get title(): string;
|
|
22
|
-
get detail(): PrerequisiteDetail<"balance">;
|
|
23
|
-
protected check(ctx: PrerequisiteContext): Promise<PrerequisiteResult<"balance">>;
|
|
23
|
+
constructor(detail: Omit<BalanceDetail, "actual">);
|
|
24
|
+
protected check(ctx: PrerequisiteContext): Promise<BalanceResult>;
|
|
25
|
+
protected errorResult(error: PrerequisiteError): BalanceResult;
|
|
24
26
|
}
|
|
@@ -1,36 +1,23 @@
|
|
|
1
|
-
import type { PrerequisiteContext,
|
|
1
|
+
import type { PrerequisiteContext, PrerequisiteError, PrerequisiteResult } from "./types.js";
|
|
2
2
|
/**
|
|
3
3
|
* A single verifiable prerequisite for a transaction. Subclasses implement
|
|
4
4
|
* {@link check} to perform whatever async reads they need (an ERC-20
|
|
5
5
|
* `readContract`, a compressor call, ...) and map the outcome into a
|
|
6
6
|
* {@link PrerequisiteResult}.
|
|
7
|
-
*
|
|
8
7
|
*/
|
|
9
|
-
export declare abstract class Prerequisite
|
|
10
|
-
/** Stable identifier, used as a React key and for deduplication. */
|
|
11
|
-
abstract get id(): string;
|
|
12
|
-
/** Discriminant tying this check to its detail payload. */
|
|
13
|
-
abstract get kind(): K;
|
|
14
|
-
/** Human-readable label shown in the UI. */
|
|
15
|
-
abstract get title(): string;
|
|
16
|
-
/** Inputs known before reading the chain (no `actual` yet). */
|
|
17
|
-
abstract get detail(): PrerequisiteDetail<K>;
|
|
8
|
+
export declare abstract class Prerequisite {
|
|
18
9
|
/**
|
|
19
10
|
* Verifies this prerequisite. Never rejects: any error thrown by
|
|
20
11
|
* {@link check} (revert, RPC/network failure, compressor error) is
|
|
21
12
|
* normalized into an `error` result.
|
|
22
13
|
*/
|
|
23
|
-
verify(ctx: PrerequisiteContext): Promise<PrerequisiteResult
|
|
14
|
+
verify(ctx: PrerequisiteContext): Promise<PrerequisiteResult>;
|
|
24
15
|
/**
|
|
25
16
|
* Performs the reads this prerequisite needs and maps them into a result.
|
|
26
17
|
* May throw on read failure; {@link verify} converts throws into `error`
|
|
27
18
|
* results.
|
|
28
19
|
*/
|
|
29
|
-
protected abstract check(ctx: PrerequisiteContext): Promise<PrerequisiteResult
|
|
30
|
-
/** Builds
|
|
31
|
-
protected
|
|
32
|
-
/** Builds a failed result from a raw read error (normalized internally). */
|
|
33
|
-
protected errorResult(cause: unknown): PrerequisiteResult<K>;
|
|
20
|
+
protected abstract check(ctx: PrerequisiteContext): Promise<PrerequisiteResult>;
|
|
21
|
+
/** Builds this prerequisite's failed result from a normalized read error. */
|
|
22
|
+
protected abstract errorResult(error: PrerequisiteError): PrerequisiteResult;
|
|
34
23
|
}
|
|
35
|
-
/** Any prerequisite regardless of its kind, used for heterogeneous lists. */
|
|
36
|
-
export type AnyPrerequisite = Prerequisite<PrerequisiteKind>;
|
|
@@ -1,24 +1,36 @@
|
|
|
1
1
|
import type { Address } from "viem";
|
|
2
|
-
import type { RWAOperationArgs } from "../../sdk/index.js";
|
|
2
|
+
import type { RWAMissingOpenAccountRequirements, RWAOpenAccountRequirements, RWAOperationArgs } from "../../sdk/index.js";
|
|
3
3
|
import { Prerequisite } from "./Prerequisite.js";
|
|
4
|
-
import type { PrerequisiteContext,
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
import type { PrerequisiteContext, PrerequisiteError, PrerequisiteOutcome } from "./types.js";
|
|
5
|
+
/**
|
|
6
|
+
* RWA (e.g. Securitize) open-account requirements: off-chain token
|
|
7
|
+
* registration and/or EIP-712 signatures the borrower must provide before
|
|
8
|
+
* opening a credit account in an RWA market.
|
|
9
|
+
*/
|
|
10
|
+
export interface RWAOpenRequirementsDetail {
|
|
11
|
+
/** RWA token (e.g. Securitize DSToken) the requirements are checked for. */
|
|
7
12
|
token: Address;
|
|
8
13
|
/** Credit manager of the RWA market. */
|
|
9
14
|
creditManager: Address;
|
|
10
15
|
/** RWA factory that gates the token. */
|
|
11
16
|
factory: Address;
|
|
12
17
|
/**
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
|
|
18
|
+
* Full requirements fetched at verify time via
|
|
19
|
+
* `sdk.accounts.getOpenAccountRequirements`; only present when the read
|
|
20
|
+
* succeeded and the factory gates the token.
|
|
21
|
+
*/
|
|
22
|
+
requirements?: RWAOpenAccountRequirements;
|
|
23
|
+
/**
|
|
24
|
+
* Subset of `requirements` still unfulfilled, computed by the RWA
|
|
25
|
+
* factory at verify time (`IRWAFactory.getMissingRequirements`);
|
|
26
|
+
* `undefined` when everything is satisfied.
|
|
17
27
|
*/
|
|
18
|
-
|
|
19
|
-
title?: string;
|
|
20
|
-
id?: string;
|
|
28
|
+
missing?: RWAMissingOpenAccountRequirements;
|
|
21
29
|
}
|
|
30
|
+
export type RWAOpenRequirementsResult = PrerequisiteOutcome & {
|
|
31
|
+
kind: "rwaOpenRequirements";
|
|
32
|
+
detail: RWAOpenRequirementsDetail;
|
|
33
|
+
};
|
|
22
34
|
/**
|
|
23
35
|
* Checks that the borrower has fulfilled the RWA factory's open-account
|
|
24
36
|
* requirements (issuer-side token registration, EIP-712 signatures).
|
|
@@ -31,12 +43,9 @@ export interface RWAOpenRequirementsPrerequisiteProps {
|
|
|
31
43
|
* (`IRWAFactory.getMissingRequirements`) and exposed on the result's
|
|
32
44
|
* `detail.missing`; the full requirements are kept on `detail.requirements`.
|
|
33
45
|
*/
|
|
34
|
-
export declare class RWAOpenRequirementsPrerequisite extends Prerequisite
|
|
46
|
+
export declare class RWAOpenRequirementsPrerequisite extends Prerequisite {
|
|
35
47
|
#private;
|
|
36
|
-
constructor(
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
get title(): string;
|
|
40
|
-
get detail(): PrerequisiteDetail<"rwaOpenRequirements">;
|
|
41
|
-
protected check(ctx: PrerequisiteContext): Promise<PrerequisiteResult<"rwaOpenRequirements">>;
|
|
48
|
+
constructor(detail: Omit<RWAOpenRequirementsDetail, "requirements" | "missing">, providedArgs?: RWAOperationArgs);
|
|
49
|
+
protected check(ctx: PrerequisiteContext): Promise<RWAOpenRequirementsResult>;
|
|
50
|
+
protected errorResult(error: PrerequisiteError): RWAOpenRequirementsResult;
|
|
42
51
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type GetApprovalAddressProps } from "../../sdk/index.js";
|
|
2
2
|
import type { InnerOperation } from "../parse/index.js";
|
|
3
|
-
import type {
|
|
3
|
+
import type { Prerequisite } from "./Prerequisite.js";
|
|
4
4
|
import type { PrerequisiteContext } from "./types.js";
|
|
5
5
|
/**
|
|
6
6
|
* For every `addCollateral` inside a multicall, requires the wallet to approve
|
|
@@ -11,4 +11,4 @@ import type { PrerequisiteContext } from "./types.js";
|
|
|
11
11
|
* for RWA markets. The resolution happens at build time because the spender is
|
|
12
12
|
* part of the prerequisite's identity and UI detail.
|
|
13
13
|
*/
|
|
14
|
-
export declare function buildCollateralPrerequisites(spenderOptions: GetApprovalAddressProps, multicall: InnerOperation[], ctx: PrerequisiteContext): Promise<
|
|
14
|
+
export declare function buildCollateralPrerequisites(spenderOptions: GetApprovalAddressProps, multicall: InnerOperation[], ctx: PrerequisiteContext): Promise<Prerequisite[]>;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { PartialLiquidationOperation } from "../parse/index.js";
|
|
2
|
-
import type {
|
|
2
|
+
import type { Prerequisite } from "./Prerequisite.js";
|
|
3
3
|
import type { PrerequisiteContext } from "./types.js";
|
|
4
4
|
/**
|
|
5
5
|
* Partial liquidation pulls the repaid underlying from the liquidator: they
|
|
6
6
|
* must have approved it to the credit manager and hold enough of it.
|
|
7
7
|
*/
|
|
8
|
-
export declare function buildPartialLiquidationPrerequisites(tx: PartialLiquidationOperation, ctx: PrerequisiteContext):
|
|
8
|
+
export declare function buildPartialLiquidationPrerequisites(tx: PartialLiquidationOperation, ctx: PrerequisiteContext): Prerequisite[];
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { type Address } from "viem";
|
|
2
2
|
import type { PoolOperation } from "../parse/index.js";
|
|
3
|
-
import type {
|
|
3
|
+
import type { Prerequisite } from "./Prerequisite.js";
|
|
4
4
|
/**
|
|
5
5
|
* Prerequisites for ERC4626 pool operations (deposit, mint, withdraw, redeem),
|
|
6
6
|
* either direct or zapper-routed.
|
|
7
7
|
*/
|
|
8
|
-
export declare function buildPoolPrerequisites(tx: PoolOperation, wallet: Address):
|
|
8
|
+
export declare function buildPoolPrerequisites(tx: PoolOperation, wallet: Address): Prerequisite[];
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { Address } from "viem";
|
|
2
2
|
import { type RWAOperationArgs } from "../../sdk/index.js";
|
|
3
3
|
import type { InnerOperation } from "../parse/index.js";
|
|
4
|
-
import type {
|
|
4
|
+
import type { Prerequisite } from "./Prerequisite.js";
|
|
5
5
|
import type { PrerequisiteContext } from "./types.js";
|
|
6
6
|
/**
|
|
7
7
|
* For RWA-factory open-account operations (e.g. `RWAOpenCreditAccount`),
|
|
@@ -18,4 +18,4 @@ import type { PrerequisiteContext } from "./types.js";
|
|
|
18
18
|
*
|
|
19
19
|
* Returns nothing for non-RWA markets.
|
|
20
20
|
*/
|
|
21
|
-
export declare function buildRWAPrerequisites(multicall: InnerOperation[], creditManager: Address, providedArgs: RWAOperationArgs, ctx: PrerequisiteContext):
|
|
21
|
+
export declare function buildRWAPrerequisites(multicall: InnerOperation[], creditManager: Address, providedArgs: RWAOperationArgs, ctx: PrerequisiteContext): Prerequisite[];
|
|
@@ -1,27 +1,19 @@
|
|
|
1
1
|
import type { PluginsMap } from "../../sdk/index.js";
|
|
2
|
-
import {
|
|
3
|
-
import type {
|
|
4
|
-
/**
|
|
5
|
-
* Input of {@link checkPrerequisites}: the same raw-calldata input as the
|
|
6
|
-
* internal calldata parser, plus an optional block to read at.
|
|
7
|
-
*/
|
|
8
|
-
export type CheckPrerequisitesInput<P extends PluginsMap = PluginsMap> = ParseOperationCalldataInput<P> & {
|
|
9
|
-
/** Block to read at; defaults to latest. Only set for testnet forks. */
|
|
10
|
-
blockNumber?: bigint;
|
|
11
|
-
};
|
|
2
|
+
import type { PreviewOperationInput, PreviewOperationOptions } from "../types.js";
|
|
3
|
+
import type { PrerequisiteResult } from "./types.js";
|
|
12
4
|
/**
|
|
13
5
|
* Derives and verifies the on-chain prerequisites for an operation given its
|
|
14
6
|
* raw calldata: the conditions that must hold for the call not to revert and
|
|
15
7
|
* that we can verify with the SDK (token approvals, wallet balances, RWA
|
|
16
8
|
* open-account requirements).
|
|
17
9
|
*
|
|
18
|
-
* Each prerequisite performs its own reads and resolves into
|
|
19
|
-
* {@link
|
|
10
|
+
* Each prerequisite performs its own reads and resolves into a
|
|
11
|
+
* {@link PrerequisiteResult} (`satisfied` or `error`).
|
|
20
12
|
*
|
|
21
13
|
* Only *sender-actionable* prerequisites belong here: conditions the LP
|
|
22
14
|
* provider or borrower can fix themselves before retrying (e.g. approve a
|
|
23
|
-
* token,
|
|
24
|
-
*
|
|
25
|
-
*
|
|
15
|
+
* token, sign the RWA factory's messages). Non-actionable protocol/admin state
|
|
16
|
+
* (e.g. pool is paused) is intentionally out of scope, since the user cannot
|
|
17
|
+
* resolve it.
|
|
26
18
|
*/
|
|
27
|
-
export declare function checkPrerequisites<P extends PluginsMap>(input:
|
|
19
|
+
export declare function checkPrerequisites<P extends PluginsMap>(input: PreviewOperationInput<P>, options?: PreviewOperationOptions): Promise<PrerequisiteResult[]>;
|
|
@@ -1,15 +1,7 @@
|
|
|
1
|
-
import type
|
|
2
|
-
import type {
|
|
3
|
-
export interface AllowanceAndBalanceProps {
|
|
4
|
-
token: Address;
|
|
5
|
-
owner: Address;
|
|
6
|
-
spender: Address;
|
|
7
|
-
required: bigint;
|
|
8
|
-
allowanceTitle: string;
|
|
9
|
-
balanceTitle: string;
|
|
10
|
-
}
|
|
1
|
+
import { type AllowanceDetail } from "./AllowancePrerequisite.js";
|
|
2
|
+
import type { Prerequisite } from "./Prerequisite.js";
|
|
11
3
|
/**
|
|
12
4
|
* The most common prerequisite pair: `owner` must have approved `spender` for
|
|
13
5
|
* `required` of `token` and must hold at least that much of it.
|
|
14
6
|
*/
|
|
15
|
-
export declare function allowanceAndBalance(props:
|
|
7
|
+
export declare function allowanceAndBalance(props: Omit<AllowanceDetail, "actual">): Prerequisite[];
|