@gearbox-protocol/sdk 14.12.0-next.2 → 14.12.0-next.20
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/IWithdrawalCompressorV313.js +229 -0
- package/dist/cjs/abi/compressors/subcompressors/withdrawal/mellowWithdrawalSubcompressor.js +45 -1
- package/dist/cjs/abi/compressors/subcompressors/withdrawal/midasWithdrawalSubcompressor.js +45 -1
- package/dist/cjs/abi/compressors/subcompressors/withdrawal/securitizeRedemptionSubcompressor.js +45 -1
- package/dist/cjs/abi/compressors/withdrawalCompressor.js +45 -1
- package/dist/cjs/abi/ierc4626Adapter.js +264 -0
- package/dist/cjs/dev/AccountOpener.js +7 -13
- package/dist/cjs/dev/index.js +3 -1
- package/dist/cjs/dev/withdrawalAbi.js +2105 -0
- package/dist/cjs/dev/withdrawalUtils.js +271 -0
- package/dist/cjs/history/classifyMulticallOperations.js +2 -0
- package/dist/cjs/history/mapOperations.js +7 -0
- package/dist/cjs/{preview/simulate/holders.js → permissionless/bindings/factory/rate-keeper-factory.js} +11 -21
- package/dist/cjs/permissionless/bindings/market-configurator.js +11 -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/iConvexV1BoosterAdapter.js +143 -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/iMidasGatewayAdapterV311.js +1015 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iMidasIssuanceVaultAdapterV310.js +262 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iMidasRedemptionVaultAdapterV310.js +622 -0
- package/dist/cjs/plugins/adapters/abi/adapters/iPendleRouterAdapter.js +1787 -0
- package/dist/cjs/plugins/adapters/abi/{securitize/iSecuritizeOnRampAdapter.js → adapters/iSecuritizeOnRampAdapterV310.js} +6 -6
- package/dist/cjs/plugins/adapters/abi/{securitize/iSecuritizeRedemptionGatewayAdapter.js → adapters/iSecuritizeRedemptionGatewayAdapterV311.js} +26 -6
- 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 +90 -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 +4 -42
- package/dist/cjs/plugins/adapters/abi/conctructorAbiPatterns.js +0 -16
- package/dist/cjs/plugins/adapters/abi/index.js +2 -0
- package/dist/cjs/plugins/adapters/abi/securitize/{iSecuritizeRedemptionGateway.js → iSecuritizeRedemptionGatewayV311.js} +15 -7
- package/dist/cjs/plugins/adapters/abi/securitize/index.js +2 -6
- package/dist/cjs/plugins/adapters/abi/targetContractAbi.js +3 -296
- package/dist/cjs/plugins/adapters/contracts/AbstractAdapter.js +36 -0
- package/dist/cjs/plugins/adapters/contracts/AbstractCurveAdapter.js +66 -0
- package/dist/cjs/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +21 -2
- package/dist/cjs/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +17 -2
- package/dist/cjs/plugins/adapters/contracts/CamelotV3AdapterContract.js +22 -2
- package/dist/cjs/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +20 -2
- package/dist/cjs/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +28 -2
- package/dist/cjs/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +4 -9
- package/dist/cjs/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +4 -9
- package/dist/cjs/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +4 -9
- package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +4 -9
- package/dist/cjs/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +4 -9
- package/dist/cjs/plugins/adapters/contracts/DaiUsdsAdapterContract.js +16 -2
- package/dist/cjs/plugins/adapters/contracts/ERC4626AdapterContract.js +24 -2
- package/dist/cjs/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +16 -2
- package/dist/cjs/plugins/adapters/contracts/FluidDexAdapterContract.js +17 -2
- package/dist/cjs/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +23 -2
- package/dist/cjs/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +3 -3
- package/dist/cjs/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +13 -3
- package/dist/cjs/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +3 -3
- package/dist/cjs/plugins/adapters/contracts/LidoV1AdapterContract.js +13 -2
- package/dist/cjs/plugins/adapters/contracts/MellowClaimerAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/MellowDVVAdapterContract.js +17 -2
- package/dist/cjs/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +17 -2
- package/dist/cjs/plugins/adapters/contracts/MellowWrapperAdapterContract.js +13 -2
- package/dist/cjs/plugins/adapters/contracts/MidasGatewayAdapterContract.js +121 -0
- package/dist/cjs/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +13 -3
- package/dist/cjs/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +15 -3
- package/dist/cjs/plugins/adapters/contracts/PendleRouterAdapterContract.js +60 -2
- package/dist/cjs/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.js +13 -2
- package/dist/cjs/plugins/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.js +28 -4
- package/dist/cjs/plugins/adapters/contracts/StakingRewardsAdapterContract.js +19 -2
- package/dist/cjs/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +12 -2
- package/dist/cjs/plugins/adapters/contracts/UniswapV2AdapterContract.js +12 -2
- package/dist/cjs/plugins/adapters/contracts/UniswapV3AdapterContract.js +22 -2
- package/dist/cjs/plugins/adapters/contracts/UniswapV4AdapterContract.js +18 -3
- package/dist/cjs/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +17 -3
- package/dist/cjs/plugins/adapters/contracts/VelodromeV2AdapterContract.js +12 -2
- package/dist/cjs/plugins/adapters/contracts/WstETHV1AdapterContract.js +17 -2
- package/dist/cjs/plugins/adapters/contracts/index.js +2 -12
- package/dist/cjs/plugins/adapters/createAdapter.js +3 -10
- package/dist/cjs/plugins/adapters/types.js +2 -11
- package/dist/cjs/plugins/delayed-withdrawal/DelayedWithdrawalPlugin.js +20 -37
- package/dist/cjs/preview/index.js +5 -3
- package/dist/cjs/preview/parse/classifyInnerOperations.js +14 -1
- package/dist/cjs/preview/parse/index.js +2 -2
- package/dist/cjs/preview/parse/parseFacadeOperationCalldata.js +6 -14
- package/dist/cjs/preview/parse/parseOperationCalldata.js +11 -9
- package/dist/cjs/preview/parse/parsePoolOperationCalldata.js +5 -2
- package/dist/cjs/preview/parse/parseRWAFactoryOperationCalldata.js +104 -0
- package/dist/cjs/preview/parse/types-rwa.js +16 -0
- package/dist/cjs/preview/parse/types.js +9 -2
- package/dist/cjs/preview/prerequisites/AllowancePrerequisite.js +20 -43
- package/dist/cjs/preview/prerequisites/BalancePrerequisite.js +25 -39
- package/dist/cjs/preview/prerequisites/Prerequisite.js +10 -35
- package/dist/cjs/preview/prerequisites/RWAOpenRequirementsPrerequisite.js +71 -0
- package/dist/cjs/preview/prerequisites/buildCollateralPrerequisites.js +55 -0
- package/dist/cjs/preview/prerequisites/{prepareAction.js → buildPartialLiquidationPrerequisites.js} +16 -24
- package/dist/cjs/preview/prerequisites/buildPoolPrerequisites.js +114 -0
- package/dist/cjs/preview/prerequisites/buildRWAPrerequisites.js +59 -0
- package/dist/cjs/preview/prerequisites/checkPrerequisites.js +85 -0
- package/dist/cjs/preview/prerequisites/helpers.js +36 -0
- package/dist/cjs/preview/prerequisites/index.js +4 -6
- package/dist/cjs/preview/preview/applyInnerOperations.js +141 -0
- package/dist/cjs/preview/preview/applyRWAWrapUnwrap.js +74 -0
- package/dist/cjs/preview/preview/detectCloseOrRepay.js +51 -0
- package/dist/cjs/preview/preview/errors.js +52 -0
- package/dist/cjs/preview/preview/index.js +34 -0
- package/dist/cjs/preview/preview/previewAdjustCreditAccount.js +90 -0
- package/dist/cjs/preview/preview/previewCloseOrRepayCreditAccount.js +94 -0
- package/dist/cjs/preview/preview/previewOpenCreditAccount.js +67 -0
- package/dist/cjs/preview/preview/previewOperation.js +53 -0
- package/dist/cjs/preview/preview/previewPoolOperation.js +42 -0
- package/dist/cjs/preview/preview/types.js +16 -0
- package/dist/cjs/preview/preview/unwrapNativeCollateral.js +45 -0
- package/dist/cjs/preview/simulate/index.js +5 -2
- package/dist/cjs/preview/simulate/simulateOperation.js +4 -0
- package/dist/cjs/preview/simulate/simulatePoolOperation.js +20 -119
- package/dist/cjs/preview/simulate/simulateRWAOperation.js +30 -0
- package/dist/cjs/preview/types.js +16 -0
- package/dist/cjs/sdk/OnchainSDK.js +11 -0
- package/dist/cjs/sdk/accounts/CreditAccountsServiceV310.js +76 -149
- package/dist/cjs/sdk/accounts/index.js +3 -1
- package/dist/cjs/sdk/accounts/withdrawal-compressor/AbstractWithdrawalCompressorContract.js +224 -0
- package/dist/cjs/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV310Contract.js +40 -0
- package/dist/cjs/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV311Contract.js +40 -0
- package/dist/cjs/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV313Contract.js +40 -0
- package/dist/cjs/{preview/parse/extractExpectedBalanceChanges.js → sdk/accounts/withdrawal-compressor/addresses.js} +24 -20
- package/dist/cjs/sdk/accounts/withdrawal-compressor/createWithdrawalCompressor.js +53 -0
- package/dist/cjs/sdk/accounts/withdrawal-compressor/index.js +36 -0
- package/dist/cjs/sdk/accounts/withdrawal-compressor/intent-codec.js +118 -0
- package/dist/cjs/sdk/accounts/withdrawal-compressor/types.js +16 -0
- package/dist/cjs/sdk/base/BaseContract.js +4 -2
- package/dist/cjs/sdk/base/ChainContractsRegister.js +1 -0
- package/dist/cjs/sdk/market/rwa/securitize/SecuritizeRWAFactory.js +56 -4
- package/dist/cjs/sdk/market/rwa/types.js +5 -2
- package/dist/cjs/sdk/market/zapper/ZapperContract.js +0 -3
- package/dist/cjs/sdk/router/AbstractRouterContract.js +21 -27
- package/dist/cjs/sdk/router/RouterV310Contract.js +11 -12
- package/dist/cjs/sdk/router/helpers.js +0 -5
- package/dist/cjs/sdk/utils/AddressMap.js +6 -0
- package/dist/cjs/sdk/utils/AddressSet.js +7 -0
- package/dist/cjs/sdk/utils/AssetsMap.js +97 -0
- package/dist/cjs/sdk/utils/index.js +2 -0
- package/dist/esm/abi/IWithdrawalCompressorV313.js +205 -0
- package/dist/esm/abi/compressors/subcompressors/withdrawal/mellowWithdrawalSubcompressor.js +45 -1
- package/dist/esm/abi/compressors/subcompressors/withdrawal/midasWithdrawalSubcompressor.js +45 -1
- package/dist/esm/abi/compressors/subcompressors/withdrawal/securitizeRedemptionSubcompressor.js +45 -1
- package/dist/esm/abi/compressors/withdrawalCompressor.js +45 -1
- package/dist/esm/abi/ierc4626Adapter.js +240 -0
- package/dist/esm/dev/AccountOpener.js +8 -13
- package/dist/esm/dev/index.js +1 -0
- package/dist/esm/dev/withdrawalAbi.js +2074 -0
- package/dist/esm/dev/withdrawalUtils.js +259 -0
- package/dist/esm/history/classifyMulticallOperations.js +2 -0
- package/dist/esm/history/mapOperations.js +7 -0
- package/dist/esm/permissionless/bindings/factory/rate-keeper-factory.js +11 -0
- package/dist/esm/permissionless/bindings/market-configurator.js +11 -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/iConvexV1BoosterAdapter.js +119 -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/iMidasGatewayAdapterV311.js +990 -0
- package/dist/esm/plugins/adapters/abi/adapters/iMidasIssuanceVaultAdapterV310.js +238 -0
- package/dist/esm/plugins/adapters/abi/adapters/iMidasRedemptionVaultAdapterV310.js +597 -0
- package/dist/esm/plugins/adapters/abi/adapters/iPendleRouterAdapter.js +1763 -0
- package/dist/esm/plugins/adapters/abi/{securitize/iSecuritizeOnRampAdapter.js → adapters/iSecuritizeOnRampAdapterV310.js} +2 -2
- package/dist/esm/plugins/adapters/abi/{securitize/iSecuritizeRedemptionGatewayAdapter.js → adapters/iSecuritizeRedemptionGatewayAdapterV311.js} +22 -2
- 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 +35 -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 +4 -44
- package/dist/esm/plugins/adapters/abi/conctructorAbiPatterns.js +0 -14
- package/dist/esm/plugins/adapters/abi/index.js +1 -0
- package/dist/esm/plugins/adapters/abi/securitize/{iSecuritizeRedemptionGateway.js → iSecuritizeRedemptionGatewayV311.js} +11 -3
- package/dist/esm/plugins/adapters/abi/securitize/index.js +1 -3
- package/dist/esm/plugins/adapters/abi/targetContractAbi.js +2 -291
- package/dist/esm/plugins/adapters/contracts/AbstractAdapter.js +36 -0
- package/dist/esm/plugins/adapters/contracts/AbstractCurveAdapter.js +42 -0
- package/dist/esm/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +23 -2
- package/dist/esm/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +19 -2
- package/dist/esm/plugins/adapters/contracts/CamelotV3AdapterContract.js +24 -2
- package/dist/esm/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +23 -2
- package/dist/esm/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +30 -2
- package/dist/esm/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +3 -8
- package/dist/esm/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +3 -8
- package/dist/esm/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +3 -8
- package/dist/esm/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +3 -8
- package/dist/esm/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +3 -8
- package/dist/esm/plugins/adapters/contracts/DaiUsdsAdapterContract.js +18 -2
- package/dist/esm/plugins/adapters/contracts/ERC4626AdapterContract.js +27 -2
- package/dist/esm/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +18 -2
- package/dist/esm/plugins/adapters/contracts/FluidDexAdapterContract.js +19 -2
- package/dist/esm/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +25 -2
- package/dist/esm/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +4 -4
- package/dist/esm/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +16 -4
- package/dist/esm/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +4 -4
- package/dist/esm/plugins/adapters/contracts/LidoV1AdapterContract.js +15 -2
- package/dist/esm/plugins/adapters/contracts/MellowClaimerAdapterContract.js +1 -1
- package/dist/esm/plugins/adapters/contracts/MellowDVVAdapterContract.js +19 -2
- package/dist/esm/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +19 -2
- package/dist/esm/plugins/adapters/contracts/MellowWrapperAdapterContract.js +15 -2
- package/dist/esm/plugins/adapters/contracts/MidasGatewayAdapterContract.js +104 -0
- package/dist/esm/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +17 -5
- package/dist/esm/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +20 -6
- package/dist/esm/plugins/adapters/contracts/PendleRouterAdapterContract.js +62 -2
- package/dist/esm/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.js +16 -3
- package/dist/esm/plugins/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.js +31 -5
- package/dist/esm/plugins/adapters/contracts/StakingRewardsAdapterContract.js +21 -2
- package/dist/esm/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +14 -2
- package/dist/esm/plugins/adapters/contracts/UniswapV2AdapterContract.js +11 -1
- package/dist/esm/plugins/adapters/contracts/UniswapV3AdapterContract.js +21 -1
- package/dist/esm/plugins/adapters/contracts/UniswapV4AdapterContract.js +20 -3
- package/dist/esm/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +20 -4
- package/dist/esm/plugins/adapters/contracts/VelodromeV2AdapterContract.js +14 -2
- package/dist/esm/plugins/adapters/contracts/WstETHV1AdapterContract.js +19 -2
- package/dist/esm/plugins/adapters/contracts/index.js +1 -6
- package/dist/esm/plugins/adapters/createAdapter.js +4 -13
- package/dist/esm/plugins/adapters/types.js +2 -11
- package/dist/esm/plugins/delayed-withdrawal/DelayedWithdrawalPlugin.js +21 -39
- package/dist/esm/preview/index.js +2 -1
- package/dist/esm/preview/parse/classifyInnerOperations.js +14 -1
- package/dist/esm/preview/parse/index.js +1 -1
- package/dist/esm/preview/parse/parseFacadeOperationCalldata.js +6 -14
- package/dist/esm/preview/parse/parseOperationCalldata.js +12 -9
- package/dist/esm/preview/parse/parsePoolOperationCalldata.js +5 -2
- package/dist/esm/preview/parse/parseRWAFactoryOperationCalldata.js +85 -0
- package/dist/esm/preview/parse/types-rwa.js +0 -0
- package/dist/esm/preview/parse/types.js +6 -1
- package/dist/esm/preview/prerequisites/AllowancePrerequisite.js +21 -47
- package/dist/esm/preview/prerequisites/BalancePrerequisite.js +26 -43
- package/dist/esm/preview/prerequisites/Prerequisite.js +10 -37
- package/dist/esm/preview/prerequisites/RWAOpenRequirementsPrerequisite.js +47 -0
- package/dist/esm/preview/prerequisites/buildCollateralPrerequisites.js +33 -0
- package/dist/esm/preview/prerequisites/buildPartialLiquidationPrerequisites.js +16 -0
- package/dist/esm/preview/prerequisites/buildPoolPrerequisites.js +90 -0
- package/dist/esm/preview/prerequisites/buildRWAPrerequisites.js +35 -0
- package/dist/esm/preview/prerequisites/checkPrerequisites.js +61 -0
- package/dist/esm/preview/prerequisites/helpers.js +14 -0
- package/dist/esm/preview/prerequisites/index.js +2 -3
- package/dist/esm/preview/preview/applyInnerOperations.js +122 -0
- package/dist/esm/preview/preview/applyRWAWrapUnwrap.js +50 -0
- package/dist/esm/preview/preview/detectCloseOrRepay.js +26 -0
- package/dist/esm/preview/preview/errors.js +27 -0
- package/dist/esm/preview/preview/index.js +7 -0
- package/dist/esm/preview/preview/previewAdjustCreditAccount.js +74 -0
- package/dist/esm/preview/preview/previewCloseOrRepayCreditAccount.js +76 -0
- package/dist/esm/preview/preview/previewOpenCreditAccount.js +49 -0
- package/dist/esm/preview/preview/previewOperation.js +29 -0
- package/dist/esm/preview/preview/previewPoolOperation.js +18 -0
- package/dist/esm/preview/preview/types.js +0 -0
- package/dist/esm/preview/preview/unwrapNativeCollateral.js +21 -0
- package/dist/esm/preview/simulate/index.js +3 -1
- package/dist/esm/preview/simulate/simulateOperation.js +5 -1
- package/dist/esm/preview/simulate/simulatePoolOperation.js +21 -123
- package/dist/esm/preview/simulate/simulateRWAOperation.js +6 -0
- package/dist/esm/preview/types.js +0 -0
- package/dist/esm/sdk/OnchainSDK.js +13 -1
- package/dist/esm/sdk/accounts/CreditAccountsServiceV310.js +72 -144
- package/dist/esm/sdk/accounts/index.js +1 -0
- package/dist/esm/sdk/accounts/withdrawal-compressor/AbstractWithdrawalCompressorContract.js +200 -0
- package/dist/esm/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV310Contract.js +16 -0
- package/dist/esm/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV311Contract.js +16 -0
- package/dist/esm/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV313Contract.js +16 -0
- package/dist/esm/sdk/accounts/withdrawal-compressor/addresses.js +28 -0
- package/dist/esm/sdk/accounts/withdrawal-compressor/createWithdrawalCompressor.js +29 -0
- package/dist/esm/sdk/accounts/withdrawal-compressor/index.js +8 -0
- package/dist/esm/sdk/accounts/withdrawal-compressor/intent-codec.js +91 -0
- package/dist/esm/sdk/accounts/withdrawal-compressor/types.js +0 -0
- package/dist/esm/sdk/base/BaseContract.js +4 -2
- package/dist/esm/sdk/base/ChainContractsRegister.js +1 -0
- package/dist/esm/sdk/market/rwa/securitize/SecuritizeRWAFactory.js +59 -5
- package/dist/esm/sdk/market/rwa/types.js +5 -2
- package/dist/esm/sdk/market/zapper/ZapperContract.js +0 -3
- package/dist/esm/sdk/router/AbstractRouterContract.js +25 -29
- package/dist/esm/sdk/router/RouterV310Contract.js +11 -12
- package/dist/esm/sdk/router/helpers.js +0 -4
- package/dist/esm/sdk/utils/AddressMap.js +6 -0
- package/dist/esm/sdk/utils/AddressSet.js +7 -0
- package/dist/esm/sdk/utils/AssetsMap.js +73 -0
- package/dist/esm/sdk/utils/index.js +1 -0
- package/dist/types/abi/IWithdrawalCompressorV313.d.ts +289 -0
- package/dist/types/abi/compressors/subcompressors/withdrawal/mellowWithdrawalSubcompressor.d.ts +77 -0
- package/dist/types/abi/compressors/subcompressors/withdrawal/midasWithdrawalSubcompressor.d.ts +77 -0
- package/dist/types/abi/compressors/subcompressors/withdrawal/securitizeRedemptionSubcompressor.d.ts +77 -0
- package/dist/types/abi/compressors/withdrawalCompressor.d.ts +77 -0
- 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/assets/assets.d.ts +1 -1
- package/dist/types/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.d.ts +1 -1
- 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/common-utils/utils/strategies/strategy-info/calculate-total-apy.d.ts +1 -1
- package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-points.d.ts +1 -1
- package/dist/types/common-utils/utils/strategies/tokens/add-amount-in-target.d.ts +1 -1
- package/dist/types/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.d.ts +1 -1
- package/dist/types/common-utils/utils/strategies/types/strategy-earnings.d.ts +1 -1
- package/dist/types/common-utils/utils/validation/validate-balances.d.ts +1 -1
- package/dist/types/common-utils/utils/validation/validate-open-account.d.ts +1 -1
- package/dist/types/common-utils/utils/validation/validate-quota.d.ts +1 -1
- package/dist/types/common-utils/utils/validation/validate-token-to-obtain.d.ts +1 -1
- package/dist/types/dev/abi.d.ts +4 -4
- package/dist/types/dev/index.d.ts +1 -0
- package/dist/types/dev/providers.d.ts +1 -1
- package/dist/types/dev/withdrawalAbi.d.ts +1584 -0
- package/dist/types/dev/withdrawalUtils.d.ts +19 -0
- package/dist/types/history/types.d.ts +4 -4
- package/dist/types/permissionless/bindings/bytecode-repository.d.ts +9 -9
- package/dist/types/permissionless/bindings/compressors/withdrawal-compressor.d.ts +77 -0
- package/dist/types/permissionless/bindings/factory/rate-keeper-factory.d.ts +179 -0
- package/dist/types/permissionless/bindings/market-configurator.d.ts +2 -0
- 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/iConvexV1BoosterAdapter.d.ts +204 -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/iMidasGatewayAdapterV311.d.ts +754 -0
- package/dist/types/plugins/adapters/abi/adapters/iMidasIssuanceVaultAdapterV310.d.ts +180 -0
- package/dist/types/plugins/adapters/abi/adapters/iMidasRedemptionVaultAdapterV310.d.ts +453 -0
- package/dist/types/plugins/adapters/abi/adapters/iPendleRouterAdapter.d.ts +1366 -0
- package/dist/types/plugins/adapters/abi/{securitize/iSecuritizeOnRampAdapter.d.ts → adapters/iSecuritizeOnRampAdapterV310.d.ts} +1 -1
- package/dist/types/plugins/adapters/abi/{securitize/iSecuritizeRedemptionGatewayAdapter.d.ts → adapters/iSecuritizeRedemptionGatewayAdapterV311.d.ts} +37 -1
- 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 +35 -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 -0
- package/dist/types/plugins/adapters/abi/securitize/{iSecuritizeRedemptionGateway.d.ts → iSecuritizeRedemptionGatewayV311.d.ts} +15 -1
- package/dist/types/plugins/adapters/abi/securitize/index.d.ts +1 -3
- package/dist/types/plugins/adapters/abi/targetContractAbi.d.ts +1 -477
- package/dist/types/plugins/adapters/contracts/AbstractAdapter.d.ts +21 -3
- package/dist/types/plugins/adapters/contracts/AbstractCurveAdapter.d.ts +18 -0
- package/dist/types/plugins/adapters/contracts/BalancerV3RouterAdapterContract.d.ts +9 -7
- package/dist/types/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.d.ts +7 -5
- package/dist/types/plugins/adapters/contracts/CamelotV3AdapterContract.d.ts +9 -7
- package/dist/types/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.d.ts +9 -7
- package/dist/types/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.d.ts +13 -11
- package/dist/types/plugins/adapters/contracts/Curve2AssetsAdapterContract.d.ts +8 -11
- package/dist/types/plugins/adapters/contracts/Curve3AssetsAdapterContract.d.ts +8 -11
- package/dist/types/plugins/adapters/contracts/Curve4AssetsAdapterContract.d.ts +8 -11
- package/dist/types/plugins/adapters/contracts/CurveV1AdapterStETHContract.d.ts +3 -6
- package/dist/types/plugins/adapters/contracts/CurveV1StableNGAdapterContract.d.ts +8 -11
- package/dist/types/plugins/adapters/contracts/DaiUsdsAdapterContract.d.ts +8 -6
- package/dist/types/plugins/adapters/contracts/ERC4626AdapterContract.d.ts +14 -6
- package/dist/types/plugins/adapters/contracts/ERC4626ReferralAdapterContract.d.ts +8 -6
- package/dist/types/plugins/adapters/contracts/FluidDexAdapterContract.d.ts +8 -6
- package/dist/types/plugins/adapters/contracts/InfinifiGatewayAdapterContract.d.ts +9 -7
- package/dist/types/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.d.ts +3 -3
- package/dist/types/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.d.ts +7 -5
- package/dist/types/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.d.ts +5 -5
- package/dist/types/plugins/adapters/contracts/LidoV1AdapterContract.d.ts +9 -7
- package/dist/types/plugins/adapters/contracts/MellowClaimerAdapterContract.d.ts +3 -3
- package/dist/types/plugins/adapters/contracts/MellowDVVAdapterContract.d.ts +8 -6
- package/dist/types/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.d.ts +9 -7
- package/dist/types/plugins/adapters/contracts/MellowWrapperAdapterContract.d.ts +7 -5
- package/dist/types/plugins/adapters/contracts/MidasGatewayAdapterContract.d.ts +790 -0
- package/dist/types/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.d.ts +9 -7
- package/dist/types/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +9 -7
- package/dist/types/plugins/adapters/contracts/PendleRouterAdapterContract.d.ts +9 -7
- package/dist/types/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.d.ts +8 -6
- package/dist/types/plugins/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.d.ts +59 -7
- package/dist/types/plugins/adapters/contracts/StakingRewardsAdapterContract.d.ts +9 -7
- package/dist/types/plugins/adapters/contracts/TraderJoeRouterAdapterContract.d.ts +9 -7
- package/dist/types/plugins/adapters/contracts/UniswapV2AdapterContract.d.ts +8 -6
- package/dist/types/plugins/adapters/contracts/UniswapV3AdapterContract.d.ts +8 -6
- package/dist/types/plugins/adapters/contracts/UniswapV4AdapterContract.d.ts +9 -7
- package/dist/types/plugins/adapters/contracts/UpshiftVaultAdapterContract.d.ts +9 -7
- package/dist/types/plugins/adapters/contracts/VelodromeV2AdapterContract.d.ts +9 -7
- package/dist/types/plugins/adapters/contracts/WstETHV1AdapterContract.d.ts +7 -5
- package/dist/types/plugins/adapters/contracts/index.d.ts +1 -6
- package/dist/types/plugins/adapters/types.d.ts +31 -13
- package/dist/types/plugins/delayed-withdrawal/types.d.ts +4 -17
- package/dist/types/preview/index.d.ts +2 -1
- package/dist/types/preview/parse/classifyInnerOperations.d.ts +0 -2
- package/dist/types/preview/parse/index.d.ts +1 -1
- 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 +13 -0
- package/dist/types/preview/parse/types-adapters.d.ts +5 -1
- package/dist/types/preview/parse/types-facades.d.ts +23 -34
- package/dist/types/preview/parse/types-pools.d.ts +29 -1
- package/dist/types/preview/parse/types-rwa.d.ts +36 -0
- package/dist/types/preview/parse/types.d.ts +11 -31
- package/dist/types/preview/prerequisites/AllowancePrerequisite.d.ts +16 -17
- package/dist/types/preview/prerequisites/BalancePrerequisite.d.ts +21 -18
- package/dist/types/preview/prerequisites/Prerequisite.d.ts +18 -55
- package/dist/types/preview/prerequisites/RWAOpenRequirementsPrerequisite.d.ts +51 -0
- package/dist/types/preview/prerequisites/buildCollateralPrerequisites.d.ts +14 -0
- package/dist/types/preview/prerequisites/buildPartialLiquidationPrerequisites.d.ts +8 -0
- package/dist/types/preview/prerequisites/buildPoolPrerequisites.d.ts +8 -0
- package/dist/types/preview/prerequisites/buildRWAPrerequisites.d.ts +21 -0
- package/dist/types/preview/prerequisites/checkPrerequisites.d.ts +19 -0
- package/dist/types/preview/prerequisites/helpers.d.ts +7 -0
- package/dist/types/preview/prerequisites/index.d.ts +2 -3
- package/dist/types/preview/prerequisites/types.d.ts +13 -50
- package/dist/types/preview/preview/applyInnerOperations.d.ts +84 -0
- package/dist/types/preview/preview/applyRWAWrapUnwrap.d.ts +13 -0
- package/dist/types/preview/preview/detectCloseOrRepay.d.ts +18 -0
- package/dist/types/preview/preview/errors.d.ts +21 -0
- package/dist/types/preview/preview/index.d.ts +7 -0
- package/dist/types/preview/preview/previewAdjustCreditAccount.d.ts +12 -0
- package/dist/types/preview/preview/previewCloseOrRepayCreditAccount.d.ts +11 -0
- package/dist/types/preview/preview/previewOpenCreditAccount.d.ts +5 -0
- package/dist/types/preview/preview/previewOperation.d.ts +8 -0
- package/dist/types/preview/preview/previewPoolOperation.d.ts +5 -0
- package/dist/types/preview/preview/types.d.ts +181 -0
- package/dist/types/preview/preview/unwrapNativeCollateral.d.ts +20 -0
- package/dist/types/preview/simulate/index.d.ts +2 -3
- package/dist/types/preview/simulate/simulateFacadeOperation.d.ts +3 -16
- package/dist/types/preview/simulate/simulateOperation.d.ts +4 -18
- package/dist/types/preview/simulate/simulatePoolOperation.d.ts +10 -18
- package/dist/types/preview/simulate/simulateRWAOperation.d.ts +12 -0
- package/dist/types/preview/simulate/types.d.ts +20 -51
- package/dist/types/preview/types.d.ts +52 -0
- package/dist/types/sdk/OnchainSDK.d.ts +10 -1
- package/dist/types/sdk/accounts/CreditAccountsServiceV310.d.ts +15 -15
- package/dist/types/sdk/accounts/index.d.ts +1 -0
- package/dist/types/sdk/accounts/types.d.ts +100 -53
- package/dist/types/sdk/accounts/withdrawal-compressor/AbstractWithdrawalCompressorContract.d.ts +34 -0
- package/dist/types/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV310Contract.d.ts +334 -0
- package/dist/types/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV311Contract.d.ts +338 -0
- package/dist/types/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV313Contract.d.ts +300 -0
- package/dist/types/sdk/accounts/withdrawal-compressor/addresses.d.ts +21 -0
- package/dist/types/sdk/accounts/withdrawal-compressor/createWithdrawalCompressor.d.ts +11 -0
- package/dist/types/sdk/accounts/withdrawal-compressor/index.d.ts +8 -0
- package/dist/types/sdk/accounts/withdrawal-compressor/intent-codec.d.ts +26 -0
- package/dist/types/sdk/accounts/withdrawal-compressor/types.d.ts +283 -0
- package/dist/types/sdk/base/BaseContract.d.ts +1 -1
- package/dist/types/sdk/base/TokensMeta.d.ts +1 -1
- package/dist/types/sdk/base/types.d.ts +18 -0
- 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/dist/types/sdk/market/rwa/securitize/SecuritizeRWAFactory.d.ts +17 -4
- package/dist/types/sdk/market/rwa/securitize/types.d.ts +18 -2
- package/dist/types/sdk/market/rwa/types.d.ts +39 -14
- package/dist/types/sdk/market/zapper/types.d.ts +6 -6
- package/dist/types/sdk/pools/types.d.ts +1 -1
- package/dist/types/sdk/router/AbstractRouterContract.d.ts +5 -5
- package/dist/types/sdk/router/helpers.d.ts +1 -2
- package/dist/types/sdk/router/types.d.ts +1 -15
- package/dist/types/sdk/utils/AddressMap.d.ts +4 -0
- package/dist/types/sdk/utils/AddressSet.d.ts +1 -0
- package/dist/types/sdk/utils/AssetsMap.d.ts +44 -0
- package/dist/types/sdk/utils/index.d.ts +1 -0
- 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 -68
- package/dist/cjs/preview/prerequisites/buildPrerequisites.js +0 -221
- package/dist/cjs/preview/prerequisites/runPrerequisites.js +0 -71
- 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 -46
- package/dist/esm/preview/parse/extractExpectedBalanceChanges.js +0 -24
- package/dist/esm/preview/prerequisites/buildPrerequisites.js +0 -197
- package/dist/esm/preview/prerequisites/prepareAction.js +0 -23
- package/dist/esm/preview/prerequisites/runPrerequisites.js +0 -47
- package/dist/esm/preview/simulate/holders.js +0 -21
- 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 -24
- package/dist/types/preview/parse/extractExpectedBalanceChanges.d.ts +0 -22
- package/dist/types/preview/prerequisites/buildPrerequisites.d.ts +0 -16
- package/dist/types/preview/prerequisites/prepareAction.d.ts +0 -52
- package/dist/types/preview/prerequisites/runPrerequisites.d.ts +0 -12
- package/dist/types/preview/simulate/holders.d.ts +0 -7
|
@@ -7,8 +7,6 @@ export interface ClassifyInnerOperationsProps {
|
|
|
7
7
|
underlying: Address;
|
|
8
8
|
}
|
|
9
9
|
/**
|
|
10
|
-
* Calldata-only counterpart of the SDK's `classifyMulticallOperations`.
|
|
11
|
-
*
|
|
12
10
|
* Maps each inner multicall entry to an {@link InnerOperation}:
|
|
13
11
|
* - adapter and unknown targets become a pure-descriptor `Execute`
|
|
14
12
|
* {@link AdapterOperation};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export * from "./classifyInnerOperations.js";
|
|
2
2
|
export * from "./errors.js";
|
|
3
|
-
export * from "./extractExpectedBalanceChanges.js";
|
|
4
3
|
export * from "./parseFacadeOperationCalldata.js";
|
|
5
4
|
export * from "./parseOperationCalldata.js";
|
|
6
5
|
export * from "./parsePoolOperationCalldata.js";
|
|
6
|
+
export * from "./parseRWAFactoryOperationCalldata.js";
|
|
7
7
|
export * from "./types.js";
|
|
@@ -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;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Hex } from "viem";
|
|
2
|
+
import { type IRWAFactory, type OnchainSDK } from "../../sdk/index.js";
|
|
3
|
+
import type { RWAOperation } from "./types-rwa.js";
|
|
4
|
+
/**
|
|
5
|
+
* Decodes a RWA-factory entry-point call into the matching
|
|
6
|
+
* {@link RWAOperation}.
|
|
7
|
+
*
|
|
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.
|
|
12
|
+
*/
|
|
13
|
+
export declare function parseRWAFactoryOperationCalldata(sdk: OnchainSDK, factory: IRWAFactory, calldata: Hex): RWAOperation;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Address } from "viem";
|
|
1
|
+
import type { Address, Hex } from "viem";
|
|
2
2
|
import type { AdapterProtocolOperation } from "../../plugins/adapters/index.js";
|
|
3
3
|
/**
|
|
4
4
|
* A single ERC-20 Transfer event captured between Execute boundaries.
|
|
@@ -43,6 +43,10 @@ export interface AdapterOperationBase {
|
|
|
43
43
|
* Arguments of adapter contract
|
|
44
44
|
*/
|
|
45
45
|
adapterArgs: Record<string, unknown>;
|
|
46
|
+
/**
|
|
47
|
+
* Raw ABI-encoded adapter calldata
|
|
48
|
+
*/
|
|
49
|
+
calldata: Hex;
|
|
46
50
|
}
|
|
47
51
|
/**
|
|
48
52
|
* Adapter `Execute` operation, generic over the extra data added by consumers.
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { Address, Hex } from "viem";
|
|
2
|
+
import type { Asset } from "../../sdk/index.js";
|
|
2
3
|
import type { AdapterOperation } from "./types-adapters.js";
|
|
3
4
|
/**
|
|
4
5
|
* Increase debt (borrow more).
|
|
@@ -46,11 +47,32 @@ export interface UpdateQuotaOp {
|
|
|
46
47
|
token: Address;
|
|
47
48
|
change: bigint;
|
|
48
49
|
}
|
|
50
|
+
/**
|
|
51
|
+
* Router-generated slippage-control call that declares expected minimal
|
|
52
|
+
* balance changes for the adapter calls that follow, up to the matching
|
|
53
|
+
* {@link CompareBalancesOp}.
|
|
54
|
+
*/
|
|
55
|
+
export interface StoreExpectedBalancesOp {
|
|
56
|
+
operation: "StoreExpectedBalances";
|
|
57
|
+
/**
|
|
58
|
+
* Declared minimal balance changes (relative to balances at
|
|
59
|
+
* `storeExpectedBalances` time).
|
|
60
|
+
*/
|
|
61
|
+
deltas: Asset[];
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Router-generated slippage-control call that validates the balance changes
|
|
65
|
+
* declared by the preceding {@link StoreExpectedBalancesOp}. Pure validation
|
|
66
|
+
* marker, carries no data.
|
|
67
|
+
*/
|
|
68
|
+
export interface CompareBalancesOp {
|
|
69
|
+
operation: "CompareBalances";
|
|
70
|
+
}
|
|
49
71
|
/**
|
|
50
72
|
* Union of facade inner-call operation types (non-adapter credit account operations).
|
|
51
73
|
* Discriminated on the `operation` field.
|
|
52
74
|
*/
|
|
53
|
-
export type InnerFacadeOperation = IncreaseDebtOp | DecreaseDebtOp | AddCollateralOp | WithdrawCollateralOp | UpdateQuotaOp;
|
|
75
|
+
export type InnerFacadeOperation = IncreaseDebtOp | DecreaseDebtOp | AddCollateralOp | WithdrawCollateralOp | UpdateQuotaOp | StoreExpectedBalancesOp | CompareBalancesOp;
|
|
54
76
|
/**
|
|
55
77
|
* All operations that can happen within a CreditFacade's multicall and that we're interested in.
|
|
56
78
|
*
|
|
@@ -71,25 +93,10 @@ export interface FacadeOperationMetadata {
|
|
|
71
93
|
creditManager: Address;
|
|
72
94
|
creditFacade: Address;
|
|
73
95
|
}
|
|
74
|
-
/**
|
|
75
|
-
* Signed token balance delta recovered from a router-generated
|
|
76
|
-
* `storeExpectedBalances` call (the `BalanceDelta` struct). `amount` is the
|
|
77
|
-
* signed `int256` delta, so it may be negative.
|
|
78
|
-
*/
|
|
79
|
-
export interface ExpectedBalanceChange {
|
|
80
|
-
token: Address;
|
|
81
|
-
delta: bigint;
|
|
82
|
-
}
|
|
83
96
|
export interface MulticallOperation<Ext extends object = {}> extends FacadeOperationMetadata {
|
|
84
97
|
operation: "MultiCall" | "BotMulticall";
|
|
85
98
|
creditAccount: Address;
|
|
86
99
|
multicall: InnerOperation<Ext>[];
|
|
87
|
-
/**
|
|
88
|
-
* Potential balance changes declared by a router-generated
|
|
89
|
-
* `storeExpectedBalances`/`compareBalances` pair, or `undefined` when the
|
|
90
|
-
* multicall is not router-shaped. See {@link ExpectedBalanceChange}.
|
|
91
|
-
*/
|
|
92
|
-
expectedBalanceChanges?: ExpectedBalanceChange[];
|
|
93
100
|
}
|
|
94
101
|
export interface OpenCreditAccountOperation<Ext extends object = {}> extends FacadeOperationMetadata {
|
|
95
102
|
operation: "OpenCreditAccount";
|
|
@@ -97,23 +104,11 @@ export interface OpenCreditAccountOperation<Ext extends object = {}> extends Fac
|
|
|
97
104
|
onBehalfOf: Address;
|
|
98
105
|
referralCode: bigint;
|
|
99
106
|
multicall: InnerOperation<Ext>[];
|
|
100
|
-
/**
|
|
101
|
-
* Potential balance changes declared by a router-generated
|
|
102
|
-
* `storeExpectedBalances`/`compareBalances` pair, or `undefined` when the
|
|
103
|
-
* multicall is not router-shaped. See {@link ExpectedBalanceChange}.
|
|
104
|
-
*/
|
|
105
|
-
expectedBalanceChanges?: ExpectedBalanceChange[];
|
|
106
107
|
}
|
|
107
108
|
export interface CloseCreditAccountOperation<Ext extends object = {}> extends FacadeOperationMetadata {
|
|
108
109
|
operation: "CloseCreditAccount";
|
|
109
110
|
creditAccount: Address;
|
|
110
111
|
multicall: InnerOperation<Ext>[];
|
|
111
|
-
/**
|
|
112
|
-
* Potential balance changes declared by a router-generated
|
|
113
|
-
* `storeExpectedBalances`/`compareBalances` pair, or `undefined` when the
|
|
114
|
-
* multicall is not router-shaped. See {@link ExpectedBalanceChange}.
|
|
115
|
-
*/
|
|
116
|
-
expectedBalanceChanges?: ExpectedBalanceChange[];
|
|
117
112
|
}
|
|
118
113
|
export interface LiquidateCreditAccountOperation<Ext extends object = {}> extends FacadeOperationMetadata {
|
|
119
114
|
operation: "LiquidateCreditAccount";
|
|
@@ -122,12 +117,6 @@ export interface LiquidateCreditAccountOperation<Ext extends object = {}> extend
|
|
|
122
117
|
token: Address;
|
|
123
118
|
remainingFunds: bigint;
|
|
124
119
|
multicall: InnerOperation<Ext>[];
|
|
125
|
-
/**
|
|
126
|
-
* Potential balance changes declared by a router-generated
|
|
127
|
-
* `storeExpectedBalances`/`compareBalances` pair, or `undefined` when the
|
|
128
|
-
* multicall is not router-shaped. See {@link ExpectedBalanceChange}.
|
|
129
|
-
*/
|
|
130
|
-
expectedBalanceChanges?: ExpectedBalanceChange[];
|
|
131
120
|
}
|
|
132
121
|
export interface PartialLiquidationOperation extends FacadeOperationMetadata {
|
|
133
122
|
operation: "PartiallyLiquidateCreditAccount";
|
|
@@ -23,6 +23,12 @@ export interface PoolDepositOperation {
|
|
|
23
23
|
* deposits, or the zapper's input token for zapper-routed deposits.
|
|
24
24
|
*/
|
|
25
25
|
tokenIn: Address;
|
|
26
|
+
/**
|
|
27
|
+
* Token minted to the receiver: the pool's diesel token for direct
|
|
28
|
+
* deposits, or the zapper's output token (e.g. a farmed/staked diesel
|
|
29
|
+
* wrapper) for zapper-routed deposits.
|
|
30
|
+
*/
|
|
31
|
+
tokenOut: Address;
|
|
26
32
|
/** Zapper contract the call is sent to; `undefined` for direct deposits. */
|
|
27
33
|
zapper?: Address;
|
|
28
34
|
/** Referral code, present only for `depositWithReferral` calls. */
|
|
@@ -48,6 +54,11 @@ export interface PoolMintOperation {
|
|
|
48
54
|
* mints, or the zapper's input token for zapper-routed mints.
|
|
49
55
|
*/
|
|
50
56
|
tokenIn: Address;
|
|
57
|
+
/**
|
|
58
|
+
* Token minted to the receiver: the pool's diesel token for direct mints,
|
|
59
|
+
* or the zapper's output token for zapper-routed mints.
|
|
60
|
+
*/
|
|
61
|
+
tokenOut: Address;
|
|
51
62
|
/** Zapper contract the call is sent to; `undefined` for direct mints. */
|
|
52
63
|
zapper?: Address;
|
|
53
64
|
/** Referral code, present only for `mintWithReferral` calls. */
|
|
@@ -71,6 +82,12 @@ export interface PoolWithdrawOperation {
|
|
|
71
82
|
assets: bigint;
|
|
72
83
|
/** Underlying token of the source pool. */
|
|
73
84
|
underlying: Address;
|
|
85
|
+
/**
|
|
86
|
+
* Token burned from `owner`: the pool's diesel token for direct
|
|
87
|
+
* withdrawals, or the zapper's share-side token for zapper-routed
|
|
88
|
+
* withdrawals.
|
|
89
|
+
*/
|
|
90
|
+
tokenIn: Address;
|
|
74
91
|
/**
|
|
75
92
|
* Token actually returned to the receiver: the pool underlying for direct
|
|
76
93
|
* withdrawals, or the zapper's output token for zapper-routed withdrawals.
|
|
@@ -95,10 +112,20 @@ export interface PoolRedeemOperation {
|
|
|
95
112
|
receiver: Address;
|
|
96
113
|
/** Address whose pool shares are burned. */
|
|
97
114
|
owner: Address;
|
|
98
|
-
/**
|
|
115
|
+
/**
|
|
116
|
+
* Amount of {@link PoolRedeemOperation.tokenIn} burned: pool shares
|
|
117
|
+
* (diesel) for direct redeems, or the zapper's share-side token amount for
|
|
118
|
+
* zapper-routed redeems.
|
|
119
|
+
*/
|
|
99
120
|
shares: bigint;
|
|
100
121
|
/** Underlying token of the source pool. */
|
|
101
122
|
underlying: Address;
|
|
123
|
+
/**
|
|
124
|
+
* Token burned from `owner`: the pool's diesel token for direct redeems, or
|
|
125
|
+
* the zapper's share-side token (e.g. a farmed/staked diesel wrapper) for
|
|
126
|
+
* zapper-routed redeems.
|
|
127
|
+
*/
|
|
128
|
+
tokenIn: Address;
|
|
102
129
|
/**
|
|
103
130
|
* Token actually returned to the receiver: the pool underlying for direct
|
|
104
131
|
* redeems, or the zapper's output token for zapper-routed redeems.
|
|
@@ -113,3 +140,4 @@ export interface PoolRedeemOperation {
|
|
|
113
140
|
* field).
|
|
114
141
|
*/
|
|
115
142
|
export type PoolOperation = PoolDepositOperation | PoolMintOperation | PoolWithdrawOperation | PoolRedeemOperation;
|
|
143
|
+
export type PoolOperationType = PoolOperation["operation"];
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { Address } from "viem";
|
|
2
|
+
import type { RWAOperationArgs } from "../../sdk/index.js";
|
|
3
|
+
import type { InnerOperation } from "./types-facades.js";
|
|
4
|
+
/**
|
|
5
|
+
* Metadata shared by all RWA factory operations. RWA credit accounts are
|
|
6
|
+
* opened and managed through the market's RWA factory rather than the credit
|
|
7
|
+
* facade, but the inner `calls` still target the facade/adapters, so the
|
|
8
|
+
* credit suite is known.
|
|
9
|
+
*/
|
|
10
|
+
export interface RWAOperationMetadata {
|
|
11
|
+
/** RWA factory contract the transaction is sent to. */
|
|
12
|
+
factory: Address;
|
|
13
|
+
creditManager: Address;
|
|
14
|
+
creditFacade: Address;
|
|
15
|
+
}
|
|
16
|
+
export interface RWAOpenCreditAccountOperation<Ext extends object = {}> extends RWAOperationMetadata {
|
|
17
|
+
operation: "RWAOpenCreditAccount";
|
|
18
|
+
multicall: InnerOperation<Ext>[];
|
|
19
|
+
/**
|
|
20
|
+
* Factory-specific registration args decoded from calldata (for
|
|
21
|
+
* Securitize: `tokensToRegister`/`signaturesToCache`).
|
|
22
|
+
*/
|
|
23
|
+
args: RWAOperationArgs;
|
|
24
|
+
}
|
|
25
|
+
export interface RWAMulticallOperation<Ext extends object = {}> extends RWAOperationMetadata {
|
|
26
|
+
operation: "RWAMulticall";
|
|
27
|
+
creditAccount: Address;
|
|
28
|
+
multicall: InnerOperation<Ext>[];
|
|
29
|
+
/** Factory-specific registration args decoded from calldata. */
|
|
30
|
+
args: RWAOperationArgs;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Discriminated union of all RWA factory operation types. Extend it when
|
|
34
|
+
* adding support for a new RWA factory type.
|
|
35
|
+
*/
|
|
36
|
+
export type RWAOperation<Ext extends object = {}> = RWAOpenCreditAccountOperation<Ext> | RWAMulticallOperation<Ext>;
|
|
@@ -1,44 +1,24 @@
|
|
|
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";
|
|
3
|
+
import type { RWAOperation } from "./types-rwa.js";
|
|
5
4
|
export * from "./types-adapters.js";
|
|
6
5
|
export * from "./types-facades.js";
|
|
7
6
|
export * from "./types-pools.js";
|
|
7
|
+
export * from "./types-rwa.js";
|
|
8
8
|
/**
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
* so unrelated plugins never satisfy it.
|
|
9
|
+
* Result of decoding a single raw operation calldata: a pool deposit/redeem,
|
|
10
|
+
* one of the credit-facade operations, or an RWA-factory operation.
|
|
12
11
|
*/
|
|
13
|
-
export type
|
|
14
|
-
/**
|
|
15
|
-
* Compile-time guard for the adapters plugin. Resolves to a no-op (`unknown`)
|
|
16
|
-
* when `P` includes the {@link AdaptersPlugin}, otherwise to an error-shaped
|
|
17
|
-
* type that makes the surrounding call fail to type-check.
|
|
18
|
-
*
|
|
19
|
-
* Intended to be intersected with a function argument so callers must pass an
|
|
20
|
-
* SDK whose adapter contracts are registered (required for multicall
|
|
21
|
-
* classification).
|
|
22
|
-
*/
|
|
23
|
-
export type RequireAdaptersPlugin<P extends PluginsMap> = HasAdaptersPlugin<P> extends true ? unknown : {
|
|
24
|
-
"OnchainSDK must be created with the AdaptersPlugin": never;
|
|
25
|
-
};
|
|
26
|
-
/**
|
|
27
|
-
* {@link OnchainSDK} whose plugin map is guaranteed at compile time to include
|
|
28
|
-
* the {@link AdaptersPlugin}.
|
|
29
|
-
*/
|
|
30
|
-
export type SdkWithAdapters<P extends PluginsMap = PluginsMap> = OnchainSDK<P> & RequireAdaptersPlugin<P>;
|
|
31
|
-
/**
|
|
32
|
-
* Result of decoding a single raw operation calldata: either a pool
|
|
33
|
-
* deposit/redeem or one of the credit-facade operations.
|
|
34
|
-
*
|
|
35
|
-
* Calldata-only parse produces base (descriptor) adapter operations, so the
|
|
36
|
-
* facade operations are used with the default `Ext = {}`.
|
|
37
|
-
*/
|
|
38
|
-
export type Operation = PoolOperation | OuterFacadeOperation;
|
|
12
|
+
export type Operation = PoolOperation | OuterFacadeOperation | RWAOperation;
|
|
39
13
|
/**
|
|
40
14
|
* Narrows an {@link Operation} to a {@link PoolOperation} (deposit, mint,
|
|
41
15
|
* withdraw or redeem). Used by the UI to decide whether a custom view exists for
|
|
42
16
|
* the parsed result; everything else falls back to the raw JSON view.
|
|
43
17
|
*/
|
|
44
18
|
export declare function isPoolOperation(tx: Operation): tx is PoolOperation;
|
|
19
|
+
/**
|
|
20
|
+
* Narrows an {@link Operation} to an {@link RWAOperation} (an RWA-factory
|
|
21
|
+
* open-account or multicall). Used to route parsed operations to the
|
|
22
|
+
* RWA-specific simulation path.
|
|
23
|
+
*/
|
|
24
|
+
export declare function isRWAOperation(tx: Operation): tx is RWAOperation;
|
|
@@ -1,24 +1,23 @@
|
|
|
1
|
-
import { type Address
|
|
2
|
-
import {
|
|
3
|
-
import type {
|
|
4
|
-
|
|
1
|
+
import { type Address } from "viem";
|
|
2
|
+
import { Prerequisite } from "./Prerequisite.js";
|
|
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
|
|
14
|
-
private
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
get id(): string;
|
|
19
|
-
get kind(): "allowance";
|
|
20
|
-
get title(): string;
|
|
21
|
-
get detail(): PrerequisiteDetail<"allowance">;
|
|
22
|
-
calls(): ContractFunctionParameters[];
|
|
23
|
-
resolve(slice: MulticallCallResult[]): PrerequisiteResult<"allowance">;
|
|
18
|
+
export declare class AllowancePrerequisite extends Prerequisite {
|
|
19
|
+
#private;
|
|
20
|
+
constructor(detail: Omit<AllowanceDetail, "actual">);
|
|
21
|
+
protected check(ctx: PrerequisiteContext): Promise<AllowanceResult>;
|
|
22
|
+
protected errorResult(error: PrerequisiteError): AllowanceResult;
|
|
24
23
|
}
|
|
@@ -1,23 +1,26 @@
|
|
|
1
|
-
import { type Address
|
|
2
|
-
import {
|
|
3
|
-
import type {
|
|
4
|
-
|
|
1
|
+
import { type Address } from "viem";
|
|
2
|
+
import { Prerequisite } from "./Prerequisite.js";
|
|
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
|
}
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
12
|
+
export type BalanceResult = PrerequisiteOutcome & {
|
|
13
|
+
kind: "balance";
|
|
14
|
+
detail: BalanceDetail;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* Checks that `owner` holds a token balance >= `required`. The token is read
|
|
18
|
+
* as an ERC-20, except for the native pseudo-address ({@link NATIVE_ADDRESS},
|
|
19
|
+
* e.g. ETH-zapper deposits) whose balance is read via `getBalance`.
|
|
20
|
+
*/
|
|
21
|
+
export declare class BalancePrerequisite extends Prerequisite {
|
|
22
|
+
#private;
|
|
23
|
+
constructor(detail: Omit<BalanceDetail, "actual">);
|
|
24
|
+
protected check(ctx: PrerequisiteContext): Promise<BalanceResult>;
|
|
25
|
+
protected errorResult(error: PrerequisiteError): BalanceResult;
|
|
23
26
|
}
|
|
@@ -1,60 +1,23 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import type { PrerequisiteContext, PrerequisiteDetail, PrerequisiteError, PrerequisiteKind, PrerequisiteResult } from "./types.js";
|
|
1
|
+
import type { PrerequisiteContext, PrerequisiteError, PrerequisiteResult } from "./types.js";
|
|
3
2
|
/**
|
|
4
|
-
*
|
|
5
|
-
*
|
|
3
|
+
* A single verifiable prerequisite for a transaction. Subclasses implement
|
|
4
|
+
* {@link check} to perform whatever async reads they need (an ERC-20
|
|
5
|
+
* `readContract`, a compressor call, ...) and map the outcome into a
|
|
6
|
+
* {@link PrerequisiteResult}.
|
|
6
7
|
*/
|
|
7
|
-
export
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
error: Error;
|
|
15
|
-
};
|
|
16
|
-
/**
|
|
17
|
-
* Decodes an unknown error into a {@link PrerequisiteError} with a
|
|
18
|
-
* human-readable revert reason. Mirrors the SDK's `extractCallError`: walk the
|
|
19
|
-
* viem error chain for a {@link ContractFunctionRevertedError} and use its
|
|
20
|
-
* `errorName`, otherwise fall back to the error's short message / name.
|
|
21
|
-
*/
|
|
22
|
-
export declare function toPrerequisiteError(cause: unknown): PrerequisiteError;
|
|
23
|
-
/**
|
|
24
|
-
* A single verifiable prerequisite for a transaction. Subclasses describe the
|
|
25
|
-
* on-chain reads they need ({@link calls}) and how to turn the multicall slice
|
|
26
|
-
* into a {@link PrerequisiteResult} ({@link resolve}).
|
|
27
|
-
*
|
|
28
|
-
* Identity (`id`, `kind`, `title`) and build-time `detail` are exposed as
|
|
29
|
-
* read-only accessors; subclasses back them with private fields. The shared
|
|
30
|
-
* {@link satisfiedResult}/{@link errorResult} helpers are `protected` so each
|
|
31
|
-
* subclass builds results consistently.
|
|
32
|
-
*
|
|
33
|
-
* The same instance can be verified standalone via {@link verify} or batched
|
|
34
|
-
* together with others by `verifyPrerequisites`.
|
|
35
|
-
*/
|
|
36
|
-
export declare abstract class Prerequisite<K extends PrerequisiteKind> {
|
|
37
|
-
/** Stable identifier, used as a React key and for deduplication. */
|
|
38
|
-
abstract get id(): string;
|
|
39
|
-
/** Discriminant tying this check to its detail payload. */
|
|
40
|
-
abstract get kind(): K;
|
|
41
|
-
/** Human-readable label shown in the UI. */
|
|
42
|
-
abstract get title(): string;
|
|
43
|
-
/** Inputs known before reading the chain (no `actual` yet). */
|
|
44
|
-
abstract get detail(): PrerequisiteDetail<K>;
|
|
45
|
-
/** Contract reads this check needs (usually one). */
|
|
46
|
-
abstract calls(ctx: PrerequisiteContext): ContractFunctionParameters[];
|
|
47
|
-
/** Maps this check's slice of the multicall response into a result. */
|
|
48
|
-
abstract resolve(slice: MulticallCallResult[]): PrerequisiteResult<K>;
|
|
8
|
+
export declare abstract class Prerequisite {
|
|
9
|
+
/**
|
|
10
|
+
* Verifies this prerequisite. Never rejects: any error thrown by
|
|
11
|
+
* {@link check} (revert, RPC/network failure, compressor error) is
|
|
12
|
+
* normalized into an `error` result.
|
|
13
|
+
*/
|
|
14
|
+
verify(ctx: PrerequisiteContext): Promise<PrerequisiteResult>;
|
|
49
15
|
/**
|
|
50
|
-
*
|
|
51
|
-
*
|
|
16
|
+
* Performs the reads this prerequisite needs and maps them into a result.
|
|
17
|
+
* May throw on read failure; {@link verify} converts throws into `error`
|
|
18
|
+
* results.
|
|
52
19
|
*/
|
|
53
|
-
|
|
54
|
-
/** Builds
|
|
55
|
-
protected
|
|
56
|
-
/** Builds a failed result from a decoded read error. */
|
|
57
|
-
protected errorResult(error: PrerequisiteError): 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;
|
|
58
23
|
}
|
|
59
|
-
/** Any prerequisite regardless of its kind, used for heterogeneous lists. */
|
|
60
|
-
export type AnyPrerequisite = Prerequisite<PrerequisiteKind>;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import type { Address } from "viem";
|
|
2
|
+
import type { RWAMissingOpenAccountRequirements, RWAOpenAccountRequirements, RWAOperationArgs } from "../../sdk/index.js";
|
|
3
|
+
import { Prerequisite } from "./Prerequisite.js";
|
|
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. */
|
|
12
|
+
token: Address;
|
|
13
|
+
/** Credit manager of the RWA market. */
|
|
14
|
+
creditManager: Address;
|
|
15
|
+
/** RWA factory that gates the token. */
|
|
16
|
+
factory: Address;
|
|
17
|
+
/**
|
|
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.
|
|
27
|
+
*/
|
|
28
|
+
missing?: RWAMissingOpenAccountRequirements;
|
|
29
|
+
}
|
|
30
|
+
export type RWAOpenRequirementsResult = PrerequisiteOutcome & {
|
|
31
|
+
kind: "rwaOpenRequirements";
|
|
32
|
+
detail: RWAOpenRequirementsDetail;
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* Checks that the borrower has fulfilled the RWA factory's open-account
|
|
36
|
+
* requirements (issuer-side token registration, EIP-712 signatures).
|
|
37
|
+
*
|
|
38
|
+
* The requirements are fetched at verify time via
|
|
39
|
+
* `sdk.accounts.getOpenAccountRequirements`, so re-running verification picks
|
|
40
|
+
* up off-chain progress (the borrower registering on the issuer's website or
|
|
41
|
+
* signing the factory's message) without rebuilding the prerequisites. The
|
|
42
|
+
* unfulfilled subset is computed by the factory itself
|
|
43
|
+
* (`IRWAFactory.getMissingRequirements`) and exposed on the result's
|
|
44
|
+
* `detail.missing`; the full requirements are kept on `detail.requirements`.
|
|
45
|
+
*/
|
|
46
|
+
export declare class RWAOpenRequirementsPrerequisite extends Prerequisite {
|
|
47
|
+
#private;
|
|
48
|
+
constructor(detail: Omit<RWAOpenRequirementsDetail, "requirements" | "missing">, providedArgs?: RWAOperationArgs);
|
|
49
|
+
protected check(ctx: PrerequisiteContext): Promise<RWAOpenRequirementsResult>;
|
|
50
|
+
protected errorResult(error: PrerequisiteError): RWAOpenRequirementsResult;
|
|
51
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type GetApprovalAddressProps } from "../../sdk/index.js";
|
|
2
|
+
import type { InnerOperation } from "../parse/index.js";
|
|
3
|
+
import type { Prerequisite } from "./Prerequisite.js";
|
|
4
|
+
import type { PrerequisiteContext } from "./types.js";
|
|
5
|
+
/**
|
|
6
|
+
* For every `addCollateral` inside a multicall, requires the wallet to approve
|
|
7
|
+
* and hold the collateral token for the collateral spender.
|
|
8
|
+
*
|
|
9
|
+
* The approval spender is resolved via {@link OnchainSDK.accounts.getApprovalAddress}:
|
|
10
|
+
* the credit manager for classic markets, but a per-investor "special wallet"
|
|
11
|
+
* for RWA markets. The resolution happens at build time because the spender is
|
|
12
|
+
* part of the prerequisite's identity and UI detail.
|
|
13
|
+
*/
|
|
14
|
+
export declare function buildCollateralPrerequisites(spenderOptions: GetApprovalAddressProps, multicall: InnerOperation[], ctx: PrerequisiteContext): Promise<Prerequisite[]>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { PartialLiquidationOperation } from "../parse/index.js";
|
|
2
|
+
import type { Prerequisite } from "./Prerequisite.js";
|
|
3
|
+
import type { PrerequisiteContext } from "./types.js";
|
|
4
|
+
/**
|
|
5
|
+
* Partial liquidation pulls the repaid underlying from the liquidator: they
|
|
6
|
+
* must have approved it to the credit manager and hold enough of it.
|
|
7
|
+
*/
|
|
8
|
+
export declare function buildPartialLiquidationPrerequisites(tx: PartialLiquidationOperation, ctx: PrerequisiteContext): Prerequisite[];
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type Address } from "viem";
|
|
2
|
+
import type { PoolOperation } from "../parse/index.js";
|
|
3
|
+
import type { Prerequisite } from "./Prerequisite.js";
|
|
4
|
+
/**
|
|
5
|
+
* Prerequisites for ERC4626 pool operations (deposit, mint, withdraw, redeem),
|
|
6
|
+
* either direct or zapper-routed.
|
|
7
|
+
*/
|
|
8
|
+
export declare function buildPoolPrerequisites(tx: PoolOperation, wallet: Address): Prerequisite[];
|