@gearbox-protocol/sdk 14.12.0-next.2 → 14.12.0-next.21
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 +108 -165
- 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 +104 -160
- 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 +19 -15
- package/dist/types/sdk/accounts/index.d.ts +1 -0
- package/dist/types/sdk/accounts/types.d.ts +128 -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
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { Address } from "viem";
|
|
2
|
+
import { type RWAOperationArgs } from "../../sdk/index.js";
|
|
3
|
+
import type { InnerOperation } from "../parse/index.js";
|
|
4
|
+
import type { Prerequisite } from "./Prerequisite.js";
|
|
5
|
+
import type { PrerequisiteContext } from "./types.js";
|
|
6
|
+
/**
|
|
7
|
+
* For RWA-factory open-account operations (e.g. `RWAOpenCreditAccount`),
|
|
8
|
+
* builds a prerequisite per RWA token the multicall touches; each one checks
|
|
9
|
+
* the factory's open-account requirements (issuer-side token registration,
|
|
10
|
+
* EIP-712 signatures) at verify time.
|
|
11
|
+
*
|
|
12
|
+
* The `providedArgs` params are the registration values decoded from the
|
|
13
|
+
* transaction calldata itself: signatures already included there satisfy the
|
|
14
|
+
* signature requirement, so a fully built transaction is not reported as
|
|
15
|
+
* missing signatures. In the template flow they are empty and the verified
|
|
16
|
+
* result's `detail.missing` describes what is still unfulfilled; acting on it
|
|
17
|
+
* (signing, rebuilding calldata) is up to the consumer.
|
|
18
|
+
*
|
|
19
|
+
* Returns nothing for non-RWA markets.
|
|
20
|
+
*/
|
|
21
|
+
export declare function buildRWAPrerequisites(multicall: InnerOperation[], creditManager: Address, providedArgs: RWAOperationArgs, ctx: PrerequisiteContext): Prerequisite[];
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { PluginsMap } from "../../sdk/index.js";
|
|
2
|
+
import type { PreviewOperationInput, PreviewOperationOptions } from "../types.js";
|
|
3
|
+
import type { PrerequisiteResult } from "./types.js";
|
|
4
|
+
/**
|
|
5
|
+
* Derives and verifies the on-chain prerequisites for an operation given its
|
|
6
|
+
* raw calldata: the conditions that must hold for the call not to revert and
|
|
7
|
+
* that we can verify with the SDK (token approvals, wallet balances, RWA
|
|
8
|
+
* open-account requirements).
|
|
9
|
+
*
|
|
10
|
+
* Each prerequisite performs its own reads and resolves into a
|
|
11
|
+
* {@link PrerequisiteResult} (`satisfied` or `error`).
|
|
12
|
+
*
|
|
13
|
+
* Only *sender-actionable* prerequisites belong here: conditions the LP
|
|
14
|
+
* provider or borrower can fix themselves before retrying (e.g. approve a
|
|
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.
|
|
18
|
+
*/
|
|
19
|
+
export declare function checkPrerequisites<P extends PluginsMap>(input: PreviewOperationInput<P>, options?: PreviewOperationOptions): Promise<PrerequisiteResult[]>;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type AllowanceDetail } from "./AllowancePrerequisite.js";
|
|
2
|
+
import type { Prerequisite } from "./Prerequisite.js";
|
|
3
|
+
/**
|
|
4
|
+
* The most common prerequisite pair: `owner` must have approved `spender` for
|
|
5
|
+
* `required` of `token` and must hold at least that much of it.
|
|
6
|
+
*/
|
|
7
|
+
export declare function allowanceAndBalance(props: Omit<AllowanceDetail, "actual">): Prerequisite[];
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
export * from "./AllowancePrerequisite.js";
|
|
2
2
|
export * from "./BalancePrerequisite.js";
|
|
3
|
-
export * from "./
|
|
3
|
+
export * from "./checkPrerequisites.js";
|
|
4
4
|
export * from "./Prerequisite.js";
|
|
5
|
-
export * from "./
|
|
6
|
-
export * from "./runPrerequisites.js";
|
|
5
|
+
export * from "./RWAOpenRequirementsPrerequisite.js";
|
|
7
6
|
export * from "./types.js";
|
|
@@ -1,40 +1,8 @@
|
|
|
1
1
|
import type { Address } from "viem";
|
|
2
2
|
import type { OnchainSDK } from "../../sdk/index.js";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
* Adding a new prerequisite kind only requires a new entry here: the generic
|
|
7
|
-
* machinery below and the UI renderer registry both key off this map, so TS
|
|
8
|
-
* forces every consumer to handle the new kind.
|
|
9
|
-
*
|
|
10
|
-
* IMPORTANT: only add prerequisites that are *actionable by the transaction
|
|
11
|
-
* sender* (the LP provider or borrower). A valid prerequisite is one the user
|
|
12
|
-
* can resolve themselves before retrying, e.g. approve a token (`allowance`)
|
|
13
|
-
* or acquire/free up funds (`balance`). Do NOT add protocol- or admin-level
|
|
14
|
-
* state the user cannot change, such as pool pause status or available pool
|
|
15
|
-
* liquidity; those are not actionable and must not be listed as prerequisites.
|
|
16
|
-
*/
|
|
17
|
-
export interface PrerequisiteDetailMap {
|
|
18
|
-
/** ERC-20 allowance from `owner` to `spender` must cover `required`. */
|
|
19
|
-
allowance: {
|
|
20
|
-
token: Address;
|
|
21
|
-
owner: Address;
|
|
22
|
-
spender: Address;
|
|
23
|
-
required: bigint;
|
|
24
|
-
/** On-chain allowance read; only present when the read succeeded. */
|
|
25
|
-
actual?: bigint;
|
|
26
|
-
};
|
|
27
|
-
/** ERC-20 balance of `owner` must cover `required`. */
|
|
28
|
-
balance: {
|
|
29
|
-
token: Address;
|
|
30
|
-
owner: Address;
|
|
31
|
-
required: bigint;
|
|
32
|
-
/** On-chain balance read; only present when the read succeeded. */
|
|
33
|
-
actual?: bigint;
|
|
34
|
-
};
|
|
35
|
-
}
|
|
36
|
-
export type PrerequisiteKind = keyof PrerequisiteDetailMap;
|
|
37
|
-
export type PrerequisiteDetail<K extends PrerequisiteKind = PrerequisiteKind> = PrerequisiteDetailMap[K];
|
|
3
|
+
import type { AllowanceResult } from "./AllowancePrerequisite.js";
|
|
4
|
+
import type { BalanceResult } from "./BalancePrerequisite.js";
|
|
5
|
+
import type { RWAOpenRequirementsResult } from "./RWAOpenRequirementsPrerequisite.js";
|
|
38
6
|
/** Failure of the underlying on-chain read (revert, decode error, RPC error). */
|
|
39
7
|
export interface PrerequisiteError {
|
|
40
8
|
/** Decoded revert reason / error name, human-readable. */
|
|
@@ -42,32 +10,27 @@ export interface PrerequisiteError {
|
|
|
42
10
|
/** Original error, kept for debugging. */
|
|
43
11
|
cause?: unknown;
|
|
44
12
|
}
|
|
45
|
-
export interface PrerequisiteBase<K extends PrerequisiteKind> {
|
|
46
|
-
id: string;
|
|
47
|
-
kind: K;
|
|
48
|
-
title: string;
|
|
49
|
-
detail: PrerequisiteDetail<K>;
|
|
50
|
-
}
|
|
51
13
|
/**
|
|
52
14
|
* Outcome of verifying a single prerequisite: either the read succeeded (a
|
|
53
15
|
* `satisfied` boolean) or it reverted/failed (an `error` with the revert
|
|
54
|
-
* reason).
|
|
16
|
+
* reason).
|
|
55
17
|
*/
|
|
56
|
-
export type
|
|
18
|
+
export type PrerequisiteOutcome = {
|
|
57
19
|
satisfied: boolean;
|
|
58
20
|
error?: undefined;
|
|
59
21
|
} | {
|
|
60
22
|
satisfied?: undefined;
|
|
61
23
|
error: PrerequisiteError;
|
|
62
|
-
}
|
|
24
|
+
};
|
|
63
25
|
/**
|
|
64
|
-
* Discriminated union over every prerequisite kind
|
|
65
|
-
*
|
|
66
|
-
*
|
|
26
|
+
* Discriminated union over every prerequisite kind
|
|
27
|
+
*
|
|
28
|
+
* Only add prerequisites that are actionable by tx sender.
|
|
29
|
+
* A valid prerequisite is one the user can resolve themselves before retrying,
|
|
30
|
+
* e.g. approve a token (`allowance`) or perform offchain KYC verification.
|
|
67
31
|
*/
|
|
68
|
-
export type
|
|
69
|
-
|
|
70
|
-
}[PrerequisiteKind];
|
|
32
|
+
export type PrerequisiteResult = AllowanceResult | BalanceResult | RWAOpenRequirementsResult;
|
|
33
|
+
export type PrerequisiteKind = PrerequisiteResult["kind"];
|
|
71
34
|
/** Shared inputs for building and verifying prerequisites. */
|
|
72
35
|
export interface PrerequisiteContext {
|
|
73
36
|
sdk: OnchainSDK;
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { type SdkWithAdapters } from "../../plugins/adapters/index.js";
|
|
2
|
+
import { type Asset, AssetsMap, type PluginsMap } from "../../sdk/index.js";
|
|
3
|
+
import type { InnerOperation } from "../parse/index.js";
|
|
4
|
+
/**
|
|
5
|
+
* Running state threaded through a credit-facade multicall by
|
|
6
|
+
* {@link applyInnerOperations}. Seeded by the caller:
|
|
7
|
+
* - account opening: everything zero/empty (the account doesn't exist yet);
|
|
8
|
+
* - account adjustment: `balances` from the account's current token balances,
|
|
9
|
+
* `debt` from the principal, `totalDebt` from principal + accrued interest +
|
|
10
|
+
* accrued fees.
|
|
11
|
+
*/
|
|
12
|
+
export interface InnerOperationsState {
|
|
13
|
+
/**
|
|
14
|
+
* Cumulative credit-account balances, mutated in facade execution order.
|
|
15
|
+
*/
|
|
16
|
+
balances: AssetsMap;
|
|
17
|
+
/**
|
|
18
|
+
* Debt principal
|
|
19
|
+
*/
|
|
20
|
+
debt: bigint;
|
|
21
|
+
/**
|
|
22
|
+
* Total debt: principal + accrued interest + accrued fees.
|
|
23
|
+
* `decreaseDebt` amounts operate on total debt (interest and fees are repaid
|
|
24
|
+
* before principal), so principal alone is not enough to resolve either the
|
|
25
|
+
* underlying balance decrement or the final principal.
|
|
26
|
+
*/
|
|
27
|
+
totalDebt: bigint;
|
|
28
|
+
/**
|
|
29
|
+
* Cumulative amounts added via `addCollateral`.
|
|
30
|
+
*/
|
|
31
|
+
collateralAdded: AssetsMap;
|
|
32
|
+
/**
|
|
33
|
+
* Cumulative amounts withdrawn via `withdrawCollateral`, with `MAX_UINT256`
|
|
34
|
+
* resolved against the running balance at the point of the call.
|
|
35
|
+
*/
|
|
36
|
+
collateralWithdrawn: AssetsMap;
|
|
37
|
+
/**
|
|
38
|
+
* Raw `updateQuota` changes, one entry per op. Entries are relative signed
|
|
39
|
+
* changes (with the `MIN_INT96` "disable" sentinel kept as-is), not final
|
|
40
|
+
* quotas: folding them requires pre-state quotas, see
|
|
41
|
+
* {@link applyQuotaChanges}.
|
|
42
|
+
*/
|
|
43
|
+
quotaChanges: Asset[];
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Creates an all-zero {@link InnerOperationsState} (the account-opening seed).
|
|
47
|
+
*/
|
|
48
|
+
export declare function makeInnerOperationsState(): InnerOperationsState;
|
|
49
|
+
/**
|
|
50
|
+
* Replays a credit-facade multicall over `state`, mutating it in place in
|
|
51
|
+
* facade execution order. The result is the *minimal guaranteed* post-state:
|
|
52
|
+
* exact deltas for explicit facade calls, exact leftovers for diff-style
|
|
53
|
+
* adapter calls inside `storeExpectedBalances`/`compareBalances` brackets and
|
|
54
|
+
* enforced minimums for bracket targets. Adapter calls outside a bracket are
|
|
55
|
+
* ignored: nothing enforces their outcome on-chain (e.g. reward claims), so
|
|
56
|
+
* their guaranteed balance change is zero.
|
|
57
|
+
*
|
|
58
|
+
* The exception is RWA wrap/unwrap calls emitted by
|
|
59
|
+
* `CreditAccountsServiceV310`: out-of-bracket ERC4626 adapter calls whose
|
|
60
|
+
* share token is an RWA underlying. Their outcome is essential to the preview
|
|
61
|
+
* (the conversion between the market underlying and its asset); RWA
|
|
62
|
+
* underlyings always convert 1-to-1 with their vault asset, so the conversion
|
|
63
|
+
* is applied directly, see {@link applyRWAWrapUnwrap}.
|
|
64
|
+
*
|
|
65
|
+
* @throws On malformed `storeExpectedBalances`/`compareBalances` brackets and
|
|
66
|
+
* on bracketed calls to non-adapter targets.
|
|
67
|
+
*/
|
|
68
|
+
export declare function applyInnerOperations<P extends PluginsMap>(sdk: SdkWithAdapters<P>, multicall: InnerOperation[], state: InnerOperationsState): void;
|
|
69
|
+
/**
|
|
70
|
+
* Applies raw `updateQuota` changes to the account's initial quotas.
|
|
71
|
+
*
|
|
72
|
+
* Each change is applied sequentially: `MIN_INT96` disables the quota, other
|
|
73
|
+
* changes are added to the running quota with the result clamped at zero
|
|
74
|
+
* (quotas cannot go negative on-chain).
|
|
75
|
+
*
|
|
76
|
+
* @param initialQuotas - Per-token quotas before the operation.
|
|
77
|
+
* @param changes - Raw changes recorded by {@link applyInnerOperations}.
|
|
78
|
+
* @returns `quotas` - final non-zero per-token quotas; `quotasChange` -
|
|
79
|
+
* applied (post-clamp) per-token deltas, non-zero entries only.
|
|
80
|
+
*/
|
|
81
|
+
export declare function applyQuotaChanges(initialQuotas: AssetsMap, changes: Asset[]): {
|
|
82
|
+
quotas: Asset[];
|
|
83
|
+
quotasChange: Asset[];
|
|
84
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { type Hex } from "viem";
|
|
2
|
+
import type { ERC4626AdapterContract } from "../../plugins/adapters/index.js";
|
|
3
|
+
import type { AssetsMap } from "../../sdk/index.js";
|
|
4
|
+
/**
|
|
5
|
+
* Applies an RWA wrap/unwrap adapter call (ERC4626 `deposit`/`redeem` and
|
|
6
|
+
* their diff variants, as emitted by `CreditAccountsServiceV310`) to the
|
|
7
|
+
* running credit-account balances.
|
|
8
|
+
*
|
|
9
|
+
* RWA underlyings always convert 1-to-1 with their vault asset, so the
|
|
10
|
+
* counterpart amount equals the input amount and no on-chain preview read is
|
|
11
|
+
* needed.
|
|
12
|
+
*/
|
|
13
|
+
export declare function applyRWAWrapUnwrap(adapter: ERC4626AdapterContract, calldata: Hex, balances: AssetsMap): void;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { Address } from "viem";
|
|
2
|
+
import type { InnerOperation } from "../parse/index.js";
|
|
3
|
+
/**
|
|
4
|
+
* Detects whether a credit-facade multicall fully closes or repays the
|
|
5
|
+
* account.
|
|
6
|
+
*
|
|
7
|
+
* Note that closing/repaying an account whose debt is already zero emits no
|
|
8
|
+
* `decreaseDebt` call at all and is not detected (previews as an adjustment).
|
|
9
|
+
*/
|
|
10
|
+
export declare function isCloseOrRepay(multicall: InnerOperation[]): boolean;
|
|
11
|
+
/**
|
|
12
|
+
* Distinguishes a closure from a repayment by how collateral leaves the
|
|
13
|
+
* account:
|
|
14
|
+
* - close swaps all assets into underlying and withdraws only the underlying
|
|
15
|
+
* - repay returns collateral in-kind: it adds collateral from the wallet to
|
|
16
|
+
* cover the debt and/or withdraws non-underlying tokens.
|
|
17
|
+
*/
|
|
18
|
+
export declare function classifyCloseOrRepay(multicall: InnerOperation[], underlying: Address): "close" | "repay";
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Thrown when a transaction's attached native value (`msg.value`) does not fit
|
|
3
|
+
* into the WETH collateral declared by the multicall: such a transaction is
|
|
4
|
+
* malformed and would not execute successfully.
|
|
5
|
+
*/
|
|
6
|
+
export declare class InvalidTransactionValueError extends Error {
|
|
7
|
+
/** Transaction `msg.value`. */
|
|
8
|
+
readonly value: bigint;
|
|
9
|
+
/** Amount of wrapped native token added as collateral. */
|
|
10
|
+
readonly wethCollateral: bigint;
|
|
11
|
+
constructor(value: bigint, wethCollateral: bigint);
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Thrown by `previewOperation` for parsed operations it cannot preview yet.
|
|
15
|
+
* Currently only pool operations and credit account opening are supported.
|
|
16
|
+
*/
|
|
17
|
+
export declare class UnsupportedOperationError extends Error {
|
|
18
|
+
/** The parsed operation kind (the `operation` discriminant). */
|
|
19
|
+
readonly operation: string;
|
|
20
|
+
constructor(operation: string);
|
|
21
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export * from "./applyInnerOperations.js";
|
|
2
|
+
export * from "./detectCloseOrRepay.js";
|
|
3
|
+
export * from "./errors.js";
|
|
4
|
+
export * from "./previewAdjustCreditAccount.js";
|
|
5
|
+
export * from "./previewCloseOrRepayCreditAccount.js";
|
|
6
|
+
export * from "./previewOperation.js";
|
|
7
|
+
export * from "./types.js";
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type PluginsMap } from "../../sdk/index.js";
|
|
2
|
+
import type { MulticallOperation, RWAMulticallOperation } from "../parse/index.js";
|
|
3
|
+
import type { PreviewOperationInput, PreviewOperationOptions } from "../types.js";
|
|
4
|
+
import type { AdjustCreditAccountPreview } from "./types.js";
|
|
5
|
+
/**
|
|
6
|
+
* Previews a `multicall`/`botMulticall` operation on an existing credit
|
|
7
|
+
* account: fetches the account's pre-state (unless provided via options),
|
|
8
|
+
* threads the multicall through {@link applyInnerOperations} and reports the
|
|
9
|
+
* minimal guaranteed post-state alongside the changes relative to the
|
|
10
|
+
* pre-state.
|
|
11
|
+
*/
|
|
12
|
+
export declare function previewAdjustCreditAccount<P extends PluginsMap>(input: PreviewOperationInput<P>, operation: MulticallOperation | RWAMulticallOperation, options?: PreviewOperationOptions): Promise<AdjustCreditAccountPreview>;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { type PluginsMap } from "../../sdk/index.js";
|
|
2
|
+
import type { CloseCreditAccountOperation, MulticallOperation, RWAMulticallOperation } from "../parse/index.js";
|
|
3
|
+
import type { PreviewOperationInput, PreviewOperationOptions } from "../types.js";
|
|
4
|
+
import type { OperationPreview } from "./types.js";
|
|
5
|
+
/**
|
|
6
|
+
* Any parsed operation that fully closes or repays a credit account: the
|
|
7
|
+
* facade `closeCreditAccount` entry point (permanent closure) or a plain
|
|
8
|
+
* multicall detected by `isCloseOrRepay` (zero-debt closure/repay).
|
|
9
|
+
*/
|
|
10
|
+
export type CloseOrRepayOperation = CloseCreditAccountOperation | MulticallOperation | RWAMulticallOperation;
|
|
11
|
+
export declare function previewCloseOrRepayCreditAccount<P extends PluginsMap>(input: PreviewOperationInput<P>, operation: CloseOrRepayOperation, permanent: boolean, options?: PreviewOperationOptions): Promise<OperationPreview>;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { type PluginsMap } from "../../sdk/index.js";
|
|
2
|
+
import type { OpenCreditAccountOperation, RWAOpenCreditAccountOperation } from "../parse/index.js";
|
|
3
|
+
import type { PreviewOperationInput } from "../types.js";
|
|
4
|
+
import type { OpenCreditAccountPreview } from "./types.js";
|
|
5
|
+
export declare function previewOpenCreditAccount<P extends PluginsMap>(input: PreviewOperationInput<P>, operation: OpenCreditAccountOperation | RWAOpenCreditAccountOperation): OpenCreditAccountPreview;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { PluginsMap } from "../../sdk/index.js";
|
|
2
|
+
import type { PreviewOperationInput, PreviewOperationOptions } from "../types.js";
|
|
3
|
+
import type { OperationPreview } from "./types.js";
|
|
4
|
+
/**
|
|
5
|
+
* Previews a raw operation calldata: decodes it into a typed operation and
|
|
6
|
+
* assembles an operation-specific, human-displayable preview.
|
|
7
|
+
*/
|
|
8
|
+
export declare function previewOperation<P extends PluginsMap = PluginsMap>(input: PreviewOperationInput<P>, options?: PreviewOperationOptions): Promise<OperationPreview>;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { PluginsMap } from "../../sdk/index.js";
|
|
2
|
+
import type { PoolOperation } from "../parse/index.js";
|
|
3
|
+
import type { PreviewOperationInput, PreviewOperationOptions } from "../types.js";
|
|
4
|
+
import type { PoolOperationPreview } from "./types.js";
|
|
5
|
+
export declare function previewPoolOperation<P extends PluginsMap>(input: PreviewOperationInput<P>, operation: PoolOperation, options?: PreviewOperationOptions): Promise<PoolOperationPreview>;
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
import type { Address } from "viem";
|
|
2
|
+
import type { Asset } from "../../sdk/index.js";
|
|
3
|
+
import type { PoolOperationType } from "../parse/index.js";
|
|
4
|
+
export interface PoolOperationPreview {
|
|
5
|
+
operation: PoolOperationType;
|
|
6
|
+
/**
|
|
7
|
+
* Pool address
|
|
8
|
+
*/
|
|
9
|
+
pool: Address;
|
|
10
|
+
/**
|
|
11
|
+
* Token that goes from user to pool
|
|
12
|
+
* In case of deposit, underlying for direct deposit, zapper input for zapper-routed deposit
|
|
13
|
+
* In case of withdraw, pool shares (diesel token) for direct withdraw or zapper token out
|
|
14
|
+
*
|
|
15
|
+
* For mint/withdraw the amount of tokenIn cannot be determined from
|
|
16
|
+
* transaction calldata alone and requires an additional async call
|
|
17
|
+
* (previewMint/previewWithdraw).
|
|
18
|
+
*/
|
|
19
|
+
tokenIn: Asset;
|
|
20
|
+
/**
|
|
21
|
+
* Token that goes from pool to user
|
|
22
|
+
* In case of deposit, pool shares (diesel token) for direct deposit or zapper token out
|
|
23
|
+
* In case of withdraw, underlying for direct withdraw or zapper token in
|
|
24
|
+
*
|
|
25
|
+
* For deposit/redeem the amount of tokenOut cannot be determined from
|
|
26
|
+
* transaction calldata alone and requires an additional async call
|
|
27
|
+
* (previewDeposit/previewRedeem).
|
|
28
|
+
*/
|
|
29
|
+
tokenOut: Asset;
|
|
30
|
+
}
|
|
31
|
+
export interface OpenCreditAccountPreview {
|
|
32
|
+
operation: "OpenCreditAccount" | "RWAOpenCreditAccount";
|
|
33
|
+
/**
|
|
34
|
+
* Credit manager the account is opened in
|
|
35
|
+
*/
|
|
36
|
+
creditManager: Address;
|
|
37
|
+
/**
|
|
38
|
+
* Target token of strategy: the first quoted token, with its balance taken
|
|
39
|
+
* from `assets`. Undefined when nothing is quoted.
|
|
40
|
+
*/
|
|
41
|
+
target?: Asset;
|
|
42
|
+
/**
|
|
43
|
+
* Tokens that were added as collateral during account opening.
|
|
44
|
+
*
|
|
45
|
+
* When the transaction has native value attached, it is represented as a
|
|
46
|
+
* `NATIVE_ADDRESS` entry, with the wrapped native token amount reduced
|
|
47
|
+
* accordingly (omitted entirely when it reaches zero).
|
|
48
|
+
*/
|
|
49
|
+
collateral: Asset[];
|
|
50
|
+
/**
|
|
51
|
+
* Sum of collateral tokens in underlying
|
|
52
|
+
*/
|
|
53
|
+
collateralValue: bigint;
|
|
54
|
+
/**
|
|
55
|
+
* Borrowed amount in underlying
|
|
56
|
+
*/
|
|
57
|
+
debt: bigint;
|
|
58
|
+
/**
|
|
59
|
+
* Desired quotas
|
|
60
|
+
*/
|
|
61
|
+
quotas: Asset[];
|
|
62
|
+
/**
|
|
63
|
+
* Minimum amount of assets on credit account after it's opened,
|
|
64
|
+
* as estimated by router
|
|
65
|
+
*/
|
|
66
|
+
assets: Asset[];
|
|
67
|
+
}
|
|
68
|
+
export interface AdjustCreditAccountPreview {
|
|
69
|
+
operation: "AdjustCreditAccount";
|
|
70
|
+
/**
|
|
71
|
+
* Credit manager the account is opened in
|
|
72
|
+
*/
|
|
73
|
+
creditManager: Address;
|
|
74
|
+
/**
|
|
75
|
+
* Credit account that is being adjusted
|
|
76
|
+
*/
|
|
77
|
+
creditAccount: Address;
|
|
78
|
+
/**
|
|
79
|
+
* Tokens that were added as collateral during account opening.
|
|
80
|
+
*
|
|
81
|
+
* When the transaction has native value attached, it is represented as a
|
|
82
|
+
* `NATIVE_ADDRESS` entry, with the wrapped native token amount reduced
|
|
83
|
+
* accordingly (omitted entirely when it reaches zero).
|
|
84
|
+
*/
|
|
85
|
+
collateralAdded: Asset[];
|
|
86
|
+
/**
|
|
87
|
+
* Tokens that were withdrawn as collateral during account adjustment.
|
|
88
|
+
*/
|
|
89
|
+
collateralWithdrawn: Asset[];
|
|
90
|
+
/**
|
|
91
|
+
* Sum of collateral tokens in underlying
|
|
92
|
+
*/
|
|
93
|
+
totalValue: bigint;
|
|
94
|
+
/**
|
|
95
|
+
* Borrowed amount in underlying
|
|
96
|
+
*/
|
|
97
|
+
debt: bigint;
|
|
98
|
+
/**
|
|
99
|
+
* Debt after minus debt before
|
|
100
|
+
*/
|
|
101
|
+
debtChange: bigint;
|
|
102
|
+
/**
|
|
103
|
+
* Desired quotas
|
|
104
|
+
*/
|
|
105
|
+
quotas: Asset[];
|
|
106
|
+
/**
|
|
107
|
+
* Quotas after minus quotas before
|
|
108
|
+
*/
|
|
109
|
+
quotasChange: Asset[];
|
|
110
|
+
/**
|
|
111
|
+
* Minimum amount of assets on credit account after the operation,
|
|
112
|
+
* as estimated by router
|
|
113
|
+
*/
|
|
114
|
+
assets: Asset[];
|
|
115
|
+
/**
|
|
116
|
+
* Assets after minus assets before
|
|
117
|
+
*/
|
|
118
|
+
assetsChange: Asset[];
|
|
119
|
+
}
|
|
120
|
+
export interface CloseCreditAccountPreview {
|
|
121
|
+
operation: "CloseCreditAccount";
|
|
122
|
+
/**
|
|
123
|
+
* True when the account is closed permanently (facade `closeCreditAccount`
|
|
124
|
+
* entry point), false when the debt is zeroed but the account stays open
|
|
125
|
+
* (plain multicall).
|
|
126
|
+
*/
|
|
127
|
+
permanent: boolean;
|
|
128
|
+
/**
|
|
129
|
+
* Credit manager the account belongs to
|
|
130
|
+
*/
|
|
131
|
+
creditManager: Address;
|
|
132
|
+
/**
|
|
133
|
+
* Credit account that is being closed
|
|
134
|
+
*/
|
|
135
|
+
creditAccount: Address;
|
|
136
|
+
/**
|
|
137
|
+
* Underlying withdrawn to the user: minimal guaranteed amount, from the
|
|
138
|
+
* multicall replay (all collateral is swapped into underlying before
|
|
139
|
+
* withdrawal)
|
|
140
|
+
*/
|
|
141
|
+
receivedAmount: bigint;
|
|
142
|
+
}
|
|
143
|
+
export interface RepayCreditAccountPreview {
|
|
144
|
+
operation: "RepayCreditAccount";
|
|
145
|
+
/**
|
|
146
|
+
* True when the account is closed permanently (facade `closeCreditAccount`
|
|
147
|
+
* entry point), false when the debt is zeroed but the account stays open
|
|
148
|
+
* (plain multicall).
|
|
149
|
+
*/
|
|
150
|
+
permanent: boolean;
|
|
151
|
+
/**
|
|
152
|
+
* Credit manager the account belongs to
|
|
153
|
+
*/
|
|
154
|
+
creditManager: Address;
|
|
155
|
+
/**
|
|
156
|
+
* Credit account that is being repaid
|
|
157
|
+
*/
|
|
158
|
+
creditAccount: Address;
|
|
159
|
+
/**
|
|
160
|
+
* Tokens added from the wallet to cover the debt (`addCollateral` calls).
|
|
161
|
+
*
|
|
162
|
+
* When the transaction has native value attached, it is represented as a
|
|
163
|
+
* `NATIVE_ADDRESS` entry, with the wrapped native token amount reduced
|
|
164
|
+
* accordingly (omitted entirely when it reaches zero).
|
|
165
|
+
*/
|
|
166
|
+
collateralAdded: Asset[];
|
|
167
|
+
/**
|
|
168
|
+
* Tokens returned to the user in-kind (`withdrawCollateral` calls, with the
|
|
169
|
+
* MAX_UINT256 sentinel resolved against replayed balances)
|
|
170
|
+
*/
|
|
171
|
+
collateralWithdrawn: Asset[];
|
|
172
|
+
/**
|
|
173
|
+
* Total debt repaid: principal + accrued interest + fees, in underlying
|
|
174
|
+
*/
|
|
175
|
+
debtRepaid: bigint;
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* Result of previewing a raw operation calldata: currently pool operations and
|
|
179
|
+
* credit account opening, adjustment, closure and repayment are supported.
|
|
180
|
+
*/
|
|
181
|
+
export type OperationPreview = PoolOperationPreview | OpenCreditAccountPreview | AdjustCreditAccountPreview | CloseCreditAccountPreview | RepayCreditAccountPreview;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { Address } from "viem";
|
|
2
|
+
import { type Asset } from "../../sdk/index.js";
|
|
3
|
+
/**
|
|
4
|
+
* Represents the transaction's attached native value as a `NATIVE_ADDRESS`
|
|
5
|
+
* entry in the collateral list.
|
|
6
|
+
*
|
|
7
|
+
* The credit facade wraps `msg.value` into WETH before `AddCollateral(WETH)`
|
|
8
|
+
* pulls it, so the WETH collateral amount already includes the attached native
|
|
9
|
+
* value. This helper splits the WETH entry back: the native amount is shown as
|
|
10
|
+
* `NATIVE_ADDRESS` and the WETH entry is reduced accordingly (dropped when it
|
|
11
|
+
* reaches zero). Other entries are preserved.
|
|
12
|
+
*
|
|
13
|
+
* @param collateral - Collateral assets as declared by the multicall.
|
|
14
|
+
* @param nativeAmount - Transaction `msg.value`.
|
|
15
|
+
* @param wethToken - Wrapped native token address.
|
|
16
|
+
* @returns Collateral with the native amount unwrapped from the WETH entry.
|
|
17
|
+
* @throws InvalidTransactionValueError when `nativeAmount` is positive but the
|
|
18
|
+
* WETH collateral is missing or smaller than it.
|
|
19
|
+
*/
|
|
20
|
+
export declare function unwrapNativeCollateral(collateral: Asset[], nativeAmount: bigint, wethToken: Address): Asset[];
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
export type { SimulationError, SimulationFlowFailure, SimulationFlowSource, } from "./errors.js";
|
|
2
2
|
export { PreviewSimulationError } from "./errors.js";
|
|
3
|
-
export type { SimulateFacadeOperationInput } from "./simulateFacadeOperation.js";
|
|
4
3
|
export { simulateFacadeOperation } from "./simulateFacadeOperation.js";
|
|
5
|
-
export type { SimulateOperationInput } from "./simulateOperation.js";
|
|
6
4
|
export { simulateOperation } from "./simulateOperation.js";
|
|
7
5
|
export { simulatePoolOperation } from "./simulatePoolOperation.js";
|
|
8
|
-
export
|
|
6
|
+
export { simulateRWAOperation } from "./simulateRWAOperation.js";
|
|
7
|
+
export type { PoolOperationSimulationResult, SimulationInput, } from "./types.js";
|
|
@@ -1,19 +1,6 @@
|
|
|
1
|
-
import type { Address, Hex } from "viem";
|
|
2
|
-
import type { OnchainSDK } from "../../sdk/index.js";
|
|
3
1
|
import type { OuterFacadeOperation } from "../parse/index.js";
|
|
4
|
-
import type {
|
|
5
|
-
|
|
6
|
-
/** Only `client`/`networkType` are used, so any OnchainSDK works. */
|
|
7
|
-
sdk: OnchainSDK;
|
|
8
|
-
/** Parsed credit-facade operation to simulate. */
|
|
9
|
-
operation: OuterFacadeOperation;
|
|
10
|
-
/** Target contract the calldata is sent to (the credit facade). */
|
|
11
|
-
to: Address;
|
|
12
|
-
/** Raw credit-facade calldata to simulate. */
|
|
13
|
-
calldata: Hex;
|
|
14
|
-
/** Wallet whose balance changes and transfers we track. */
|
|
15
|
-
wallet: Address;
|
|
16
|
-
}
|
|
2
|
+
import type { PreviewOperationOptions } from "../types.js";
|
|
3
|
+
import type { PoolOperationSimulationResult, SimulationInput } from "./types.js";
|
|
17
4
|
/**
|
|
18
5
|
* Simulates a credit-facade operation.
|
|
19
6
|
*
|
|
@@ -22,4 +9,4 @@ export interface SimulateFacadeOperationInput {
|
|
|
22
9
|
* signature mirrors {@link simulatePoolOperation} so the
|
|
23
10
|
* {@link simulateOperation} wrapper can delegate uniformly once implemented.
|
|
24
11
|
*/
|
|
25
|
-
export declare function simulateFacadeOperation(_input:
|
|
12
|
+
export declare function simulateFacadeOperation(_input: SimulationInput<OuterFacadeOperation>, _options?: PreviewOperationOptions): Promise<PoolOperationSimulationResult>;
|
|
@@ -1,20 +1,6 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type {
|
|
3
|
-
import { type Operation } from "../parse/index.js";
|
|
4
|
-
import type { OperationSimulationOptions, PoolOperationSimulation } from "./types.js";
|
|
5
|
-
export interface SimulateOperationInput {
|
|
6
|
-
/** Gearbox SDK instance. */
|
|
7
|
-
sdk: OnchainSDK;
|
|
8
|
-
/** Parsed pool or credit account operation */
|
|
9
|
-
operation: Operation;
|
|
10
|
-
/** Target contract the calldata is sent to. */
|
|
11
|
-
to: Address;
|
|
12
|
-
/** Raw operation calldata to simulate. */
|
|
13
|
-
calldata: Hex;
|
|
14
|
-
/** Wallet whose balance changes and transfers we track. */
|
|
15
|
-
wallet: Address;
|
|
16
|
-
}
|
|
1
|
+
import type { PreviewOperationOptions } from "../types.js";
|
|
2
|
+
import type { PoolOperationSimulationResult, SimulationInput } from "./types.js";
|
|
17
3
|
/**
|
|
18
|
-
* Simulates a parsed pool or credit account operation
|
|
4
|
+
* Simulates a parsed pool or credit account operation
|
|
19
5
|
*/
|
|
20
|
-
export declare function simulateOperation(input:
|
|
6
|
+
export declare function simulateOperation(input: SimulationInput, options?: PreviewOperationOptions): Promise<PoolOperationSimulationResult>;
|