@gearbox-protocol/sdk 16.2.0 → 16.3.0-next.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/abi/rwa/iMidasAccessControl.js +23 -0
- package/dist/cjs/abi/rwa/iMidasDegenNFT.js +92 -0
- package/dist/cjs/history/assembleOperations.js +3 -3
- package/dist/cjs/history/classifyMulticallOperations.js +7 -7
- package/dist/cjs/history/index.js +13 -0
- package/dist/cjs/history/parseCreditAccountTransaction.js +5 -5
- package/dist/cjs/{preview → history}/trace/errors.js +1 -1
- package/dist/cjs/{preview → history}/trace/extractAdapterCallTraces.js +1 -1
- package/dist/cjs/{preview → history}/trace/extractTransfers.js +3 -3
- package/dist/cjs/{preview → history}/trace/findFacadeCalls.js +3 -3
- package/dist/cjs/history/trace/index.js +14 -0
- package/dist/cjs/model/errors/index.js +37 -0
- package/dist/cjs/model/errors/liquidation-errors.js +32 -0
- package/dist/cjs/model/errors/operation-errors.js +135 -0
- package/dist/cjs/{onchain/market/oracle/errors.js → model/errors/oracle-errors.js} +1 -1
- package/dist/cjs/model/errors/prepare-errors.js +108 -0
- package/dist/cjs/model/errors/preview-errors.js +12 -0
- package/dist/cjs/model/index.js +45 -2
- package/dist/cjs/model/opportunities.schema.js +3 -1
- package/dist/cjs/model/positions.js +1 -1
- package/dist/cjs/model/result.js +0 -8
- package/dist/cjs/model/rwa.js +53 -0
- package/dist/cjs/model/rwa.schema.js +20 -0
- package/dist/cjs/offchain/opportunities/OffchainOpportunities.js +1 -1
- package/dist/cjs/onchain/accounts/index.js +0 -2
- package/dist/cjs/onchain/accounts/intents/guards.js +42 -66
- package/dist/cjs/onchain/accounts/intents/index.js +38 -35
- package/dist/cjs/onchain/accounts/intents/leverage-band.js +1 -1
- package/dist/cjs/onchain/accounts/intents/math.js +19 -15
- package/dist/cjs/onchain/accounts/intents/open-strategy.js +6 -4
- package/dist/cjs/onchain/accounts/intents/plan.js +52 -48
- package/dist/cjs/onchain/accounts/intents/realize.js +26 -24
- package/dist/cjs/onchain/accounts/intents/tail.js +15 -12
- package/dist/cjs/onchain/accounts/intents/testing/sdk-mock.js +7 -0
- package/dist/cjs/onchain/accounts/intents/tests/finish-withdraw.fixtures.js +6 -6
- package/dist/cjs/onchain/accounts/intents/tests/withdraw.fixtures.js +12 -12
- package/dist/cjs/onchain/accounts/intents/view.js +1 -1
- package/dist/cjs/onchain/accounts/liquidations/LiquidationsService.js +2 -2
- package/dist/cjs/onchain/accounts/withdrawal-compressor/index.js +0 -1
- package/dist/cjs/onchain/index.js +130 -38
- package/dist/cjs/onchain/market/MarketSuite.js +10 -4
- package/dist/cjs/onchain/market/adapters/index.js +1 -0
- package/dist/cjs/onchain/market/credit/CreditSuite.js +77 -15
- package/dist/cjs/onchain/market/index.js +8 -8
- package/dist/cjs/onchain/market/oracle/PriceOracleBaseContract.js +6 -6
- package/dist/cjs/onchain/market/oracle/index.js +0 -2
- package/dist/cjs/onchain/market/pool/PoolQuotaKeeperV310Contract.js +8 -0
- package/dist/cjs/onchain/market/rwa/RWARegistry.js +3 -2
- package/dist/cjs/onchain/market/rwa/createDegenNFT.js +53 -0
- package/dist/cjs/onchain/market/rwa/index.js +7 -5
- package/dist/cjs/onchain/market/rwa/midas/MidasDegenNFT.js +56 -0
- package/dist/cjs/onchain/market/rwa/midas/constants.js +2 -0
- package/dist/cjs/onchain/market/rwa/midas/index.js +3 -0
- package/dist/cjs/onchain/market/rwa/securitize/SecuritizeDegenNFT.js +22 -3
- package/dist/cjs/onchain/market/rwa/securitize/SecuritizeRWAFactory.js +9 -9
- package/dist/cjs/onchain/market/rwa/securitize/constants.js +2 -2
- package/dist/cjs/onchain/market/rwa/securitize/index.js +4 -3
- package/dist/cjs/onchain/market/rwa/securitize/types.js +0 -29
- package/dist/cjs/onchain/market/rwa/types.js +0 -7
- package/dist/cjs/onchain/market/zapper/index.js +0 -1
- package/dist/cjs/onchain/opportunities/MultichainOpportunitiesService.js +2 -2
- package/dist/cjs/onchain/opportunities/OpportunitiesService.js +11 -3
- package/dist/cjs/onchain/pools/PoolService.js +10 -16
- package/dist/cjs/onchain/preview/index.js +41 -0
- package/dist/cjs/{preview → onchain/preview}/parse/classifyInnerOperations.js +2 -3
- package/dist/cjs/onchain/preview/parse/index.js +14 -0
- package/dist/cjs/{preview → onchain/preview}/parse/parseFacadeOperationCalldata.js +3 -3
- package/dist/cjs/{preview → onchain/preview}/parse/parseOperationCalldata.js +16 -17
- package/dist/cjs/{preview → onchain/preview}/parse/parsePoolOperationCalldata.js +3 -3
- package/dist/cjs/{preview → onchain/preview}/parse/parseRWAFactoryOperationCalldata.js +11 -12
- package/dist/cjs/{preview → onchain/preview}/parse/types.js +1 -1
- package/dist/cjs/{preview → onchain/preview}/preview/CreditAccountState.js +3 -4
- package/dist/cjs/{preview → onchain/preview}/preview/buildDelayedStrategyPositionOperationPreview.js +10 -11
- package/dist/cjs/{preview → onchain/preview}/preview/detectCloseOrRepay.js +2 -3
- package/dist/cjs/{preview → onchain/preview}/preview/detectDelayedClaim.js +4 -5
- package/dist/cjs/{preview → onchain/preview}/preview/detectDelayedOperation.js +5 -6
- package/dist/cjs/{preview → onchain/preview}/preview/estimateClaimableAt.js +1 -1
- package/dist/cjs/onchain/preview/preview/index.js +26 -0
- package/dist/cjs/{preview → onchain/preview}/preview/previewAdjustStrategyPosition.js +18 -22
- package/dist/cjs/{preview → onchain/preview}/preview/previewExitOrRepayStrategyPosition.js +22 -28
- package/dist/cjs/onchain/preview/preview/previewOpenStrategyPosition.js +60 -0
- package/dist/cjs/onchain/preview/preview/previewOperation.js +119 -0
- package/dist/cjs/{preview/simulate/simulatePoolOperation.js → onchain/preview/preview/previewPoolPositionOperation.js} +46 -32
- package/dist/cjs/onchain/preview/preview/replayInnerOperations.js +109 -0
- package/dist/cjs/onchain/preview/preview/replayMulticall.js +22 -0
- package/dist/cjs/{preview → onchain/preview}/preview/unwrapNativeCollateral.js +11 -14
- package/dist/cjs/onchain/validation/bundles/checkAccountQuotas.js +20 -0
- package/dist/cjs/onchain/validation/bundles/checkCollateralFunding.js +59 -0
- package/dist/cjs/onchain/validation/bundles/checkCreditOperation.js +65 -0
- package/dist/cjs/onchain/validation/bundles/checkDraw.js +28 -0
- package/dist/cjs/onchain/validation/bundles/checkHealthFactors.js +27 -0
- package/dist/cjs/onchain/validation/bundles/checkLiquidationEligibility.js +33 -0
- package/dist/cjs/onchain/validation/bundles/checkLiquidationFunding.js +29 -0
- package/dist/cjs/onchain/validation/bundles/checkMarket.js +24 -0
- package/dist/cjs/onchain/validation/bundles/checkObtained.js +13 -0
- package/dist/cjs/onchain/validation/bundles/checkPoolFunding.js +22 -0
- package/dist/cjs/onchain/validation/bundles/checkPoolOperation.js +35 -0
- package/dist/cjs/onchain/validation/bundles/checkQuotasAsked.js +20 -0
- package/dist/cjs/onchain/validation/bundles/checkRWAOpenRequirements.js +33 -0
- package/dist/cjs/onchain/validation/bundles/checkRWAOpening.js +24 -0
- package/dist/cjs/onchain/validation/bundles/checkWallet.js +22 -0
- package/dist/cjs/onchain/validation/bundles/checkWalletAllowance.js +32 -0
- package/dist/cjs/onchain/validation/bundles/checkWalletBalance.js +41 -0
- package/dist/cjs/onchain/validation/bundles/index.js +35 -0
- package/dist/cjs/onchain/validation/checkLiquidation.js +22 -0
- package/dist/cjs/onchain/validation/checkOperation.js +62 -0
- package/dist/cjs/onchain/validation/checkSimulation.js +60 -0
- package/dist/cjs/onchain/validation/checks/checkBorrowLimit.js +25 -0
- package/dist/cjs/onchain/validation/checks/checkCollateralised.js +26 -0
- package/dist/cjs/onchain/validation/checks/checkCreditAccountFrozen.js +10 -0
- package/dist/cjs/onchain/validation/checks/checkCreditManagerPaused.js +10 -0
- package/dist/cjs/onchain/validation/checks/checkDebtLimits.js +18 -0
- package/dist/cjs/onchain/validation/checks/checkEmergencyLiquidator.js +13 -0
- package/dist/cjs/onchain/validation/checks/checkForbiddenToken.js +10 -0
- package/dist/cjs/onchain/validation/checks/checkLeverage.js +13 -0
- package/dist/cjs/onchain/validation/checks/checkLiquidatorEligible.js +10 -0
- package/dist/cjs/onchain/validation/checks/checkMarketExpired.js +10 -0
- package/dist/cjs/onchain/validation/checks/checkPoolLiquidity.js +25 -0
- package/dist/cjs/onchain/validation/checks/checkPoolPaused.js +10 -0
- package/dist/cjs/onchain/validation/checks/checkPoolSunset.js +10 -0
- package/dist/cjs/onchain/validation/checks/checkQuotaCount.js +10 -0
- package/dist/cjs/onchain/validation/checks/checkQuotaLimit.js +18 -0
- package/dist/cjs/onchain/validation/checks/index.js +31 -0
- package/dist/cjs/onchain/validation/helpers/amount.js +12 -0
- package/dist/cjs/onchain/validation/helpers/health-factor-limits.js +25 -0
- package/dist/cjs/onchain/validation/helpers/index.js +11 -0
- package/dist/cjs/onchain/validation/{token.js → helpers/token.js} +4 -4
- package/dist/cjs/onchain/validation/index.js +85 -27
- package/dist/cjs/onchain/validation/raise.js +33 -0
- package/dist/cjs/sdk/index.js +6 -11
- package/dist/cjs/sdk/liquidations/LiquidationsNamespace.js +9 -0
- package/dist/cjs/sdk/opportunities/OpportunitiesNamespace.js +19 -4
- package/dist/cjs/sdk/prepare/PrepareApi.js +40 -50
- package/dist/cjs/sdk/prepare/index.js +7 -11
- package/dist/cjs/sdk/prepare/types.js +0 -4
- package/dist/cjs/sdk/preview/PreviewNamespace.js +24 -13
- package/dist/esm/abi/rwa/iMidasAccessControl.js +22 -0
- package/dist/esm/abi/rwa/iMidasDegenNFT.js +91 -0
- package/dist/esm/dev/AccountOpener.js +1 -1
- package/dist/esm/dev/withdrawalUtils.js +1 -1
- package/dist/esm/history/assembleOperations.js +2 -2
- package/dist/esm/history/classifyMulticallOperations.js +2 -2
- package/dist/esm/history/index.js +6 -1
- package/dist/esm/history/parseCreditAccountTransaction.js +3 -3
- package/dist/esm/{preview → history}/trace/errors.js +1 -1
- package/dist/esm/{preview → history}/trace/extractAdapterCallTraces.js +1 -1
- package/dist/esm/{preview → history}/trace/extractTransfers.js +2 -2
- package/dist/esm/{preview → history}/trace/findFacadeCalls.js +1 -1
- package/dist/esm/model/errors/index.js +7 -0
- package/dist/esm/model/errors/liquidation-errors.js +29 -0
- package/dist/esm/model/errors/operation-errors.js +121 -0
- package/dist/esm/{onchain/market/oracle/errors.js → model/errors/oracle-errors.js} +1 -1
- package/dist/esm/model/errors/prepare-errors.js +97 -0
- package/dist/esm/model/errors/preview-errors.js +11 -0
- package/dist/esm/model/index.js +10 -3
- package/dist/esm/model/opportunities.schema.js +3 -1
- package/dist/esm/model/positions.js +1 -1
- package/dist/esm/model/result.js +1 -8
- package/dist/esm/model/rwa.js +48 -0
- package/dist/esm/model/rwa.schema.js +18 -0
- package/dist/esm/offchain/opportunities/OffchainOpportunities.js +1 -1
- package/dist/esm/onchain/accounts/CreditAccountsServiceV310.js +2 -2
- package/dist/esm/onchain/accounts/index.js +1 -2
- package/dist/esm/onchain/accounts/intents/guards.js +29 -52
- package/dist/esm/onchain/accounts/intents/index.js +39 -35
- package/dist/esm/onchain/accounts/intents/leverage-band.js +1 -1
- package/dist/esm/onchain/accounts/intents/math.js +18 -14
- package/dist/esm/onchain/accounts/intents/open-strategy.js +8 -6
- package/dist/esm/onchain/accounts/intents/plan.js +51 -47
- package/dist/esm/onchain/accounts/intents/realize.js +26 -24
- package/dist/esm/onchain/accounts/intents/tail.js +14 -11
- package/dist/esm/onchain/accounts/intents/testing/sdk-mock.js +7 -0
- package/dist/esm/onchain/accounts/intents/tests/finish-withdraw.fixtures.js +6 -6
- package/dist/esm/onchain/accounts/intents/tests/withdraw.fixtures.js +12 -12
- package/dist/esm/onchain/accounts/intents/view.js +1 -1
- package/dist/esm/onchain/accounts/liquidations/LiquidationsService.js +3 -3
- package/dist/esm/onchain/accounts/withdrawal-compressor/RedemptionLoggerV310Contract.js +1 -1
- package/dist/esm/onchain/accounts/withdrawal-compressor/WithdrawalCompressorV310Contract.js +1 -1
- package/dist/esm/onchain/accounts/withdrawal-compressor/WithdrawalCompressorV311Contract.js +1 -1
- package/dist/esm/onchain/accounts/withdrawal-compressor/WithdrawalCompressorV313Contract.js +1 -1
- package/dist/esm/onchain/accounts/withdrawal-compressor/index.js +0 -1
- package/dist/esm/onchain/base/TokensMeta.js +3 -3
- package/dist/esm/onchain/core/createAddressProvider.js +1 -1
- package/dist/esm/onchain/index.js +64 -11
- package/dist/esm/onchain/market/MarketSuite.js +10 -4
- package/dist/esm/onchain/market/adapters/contracts/AccountMigratorAdapterContract.js +1 -1
- package/dist/esm/onchain/market/adapters/contracts/ERC4626AdapterContract.js +1 -1
- package/dist/esm/onchain/market/adapters/index.js +1 -0
- package/dist/esm/onchain/market/credit/CreditFacadeV310BaseContract.js +1 -1
- package/dist/esm/onchain/market/credit/CreditSuite.js +77 -15
- package/dist/esm/onchain/market/index.js +6 -6
- package/dist/esm/onchain/market/oracle/PriceOracleBaseContract.js +1 -1
- package/dist/esm/onchain/market/oracle/index.js +1 -2
- package/dist/esm/onchain/market/pool/PoolQuotaKeeperV310Contract.js +8 -0
- package/dist/esm/onchain/market/pool/PoolV310Contract.js +1 -1
- package/dist/esm/onchain/market/rwa/RWARegistry.js +2 -1
- package/dist/esm/onchain/market/rwa/createDegenNFT.js +52 -0
- package/dist/esm/onchain/market/rwa/index.js +6 -5
- package/dist/esm/onchain/market/rwa/midas/MidasDegenNFT.js +55 -0
- package/dist/esm/onchain/market/rwa/midas/constants.js +2 -1
- package/dist/esm/onchain/market/rwa/midas/index.js +3 -2
- package/dist/esm/onchain/market/rwa/securitize/SecuritizeDegenNFT.js +20 -2
- package/dist/esm/onchain/market/rwa/securitize/SecuritizeRWAFactory.js +4 -4
- package/dist/esm/onchain/market/rwa/securitize/constants.js +2 -2
- package/dist/esm/onchain/market/rwa/securitize/index.js +4 -3
- package/dist/esm/onchain/market/rwa/securitize/types.js +1 -29
- package/dist/esm/onchain/market/rwa/types.js +1 -7
- package/dist/esm/onchain/market/zapper/IETHZapperContract.js +1 -1
- package/dist/esm/onchain/market/zapper/ZapperContract.js +1 -1
- package/dist/esm/onchain/market/zapper/index.js +0 -1
- package/dist/esm/onchain/opportunities/MultichainOpportunitiesService.js +2 -2
- package/dist/esm/onchain/opportunities/OpportunitiesService.js +11 -3
- package/dist/esm/onchain/pools/PoolService.js +10 -16
- package/dist/esm/onchain/preview/index.js +20 -0
- package/dist/esm/{preview → onchain/preview}/parse/classifyInnerOperations.js +2 -3
- package/dist/esm/{preview → onchain/preview}/parse/index.js +0 -1
- package/dist/esm/{preview → onchain/preview}/parse/parseFacadeOperationCalldata.js +1 -1
- package/dist/esm/{preview → onchain/preview}/parse/parseOperationCalldata.js +10 -11
- package/dist/esm/{preview → onchain/preview}/parse/parsePoolOperationCalldata.js +3 -3
- package/dist/esm/{preview → onchain/preview}/parse/parseRWAFactoryOperationCalldata.js +8 -9
- package/dist/esm/{preview → onchain/preview}/parse/types.js +1 -1
- package/dist/esm/{preview → onchain/preview}/preview/CreditAccountState.js +3 -4
- package/dist/esm/{preview → onchain/preview}/preview/buildDelayedStrategyPositionOperationPreview.js +10 -11
- package/dist/esm/{preview → onchain/preview}/preview/detectCloseOrRepay.js +2 -3
- package/dist/esm/{preview → onchain/preview}/preview/detectDelayedClaim.js +4 -5
- package/dist/esm/{preview → onchain/preview}/preview/detectDelayedOperation.js +5 -6
- package/dist/esm/{preview → onchain/preview}/preview/estimateClaimableAt.js +1 -1
- package/dist/esm/{preview → onchain/preview}/preview/index.js +3 -4
- package/dist/esm/{preview → onchain/preview}/preview/previewAdjustStrategyPosition.js +17 -21
- package/dist/esm/{preview → onchain/preview}/preview/previewExitOrRepayStrategyPosition.js +20 -26
- package/dist/esm/{preview → onchain/preview}/preview/previewOpenStrategyPosition.js +25 -15
- package/dist/esm/{preview → onchain/preview}/preview/previewOperation.js +54 -35
- package/dist/esm/{preview/simulate/simulatePoolOperation.js → onchain/preview/preview/previewPoolPositionOperation.js} +46 -30
- package/dist/esm/onchain/preview/preview/replayInnerOperations.js +107 -0
- package/dist/esm/onchain/preview/preview/replayMulticall.js +21 -0
- package/dist/esm/{preview → onchain/preview}/preview/unwrapNativeCollateral.js +11 -14
- package/dist/esm/onchain/utils/viem/simulateWithPriceUpdates.js +1 -1
- package/dist/esm/onchain/validation/bundles/checkAccountQuotas.js +19 -0
- package/dist/esm/onchain/validation/bundles/checkCollateralFunding.js +58 -0
- package/dist/esm/onchain/validation/bundles/checkCreditOperation.js +64 -0
- package/dist/esm/onchain/validation/bundles/checkDraw.js +27 -0
- package/dist/esm/onchain/validation/bundles/checkHealthFactors.js +26 -0
- package/dist/esm/onchain/validation/bundles/checkLiquidationEligibility.js +32 -0
- package/dist/esm/onchain/validation/bundles/checkLiquidationFunding.js +28 -0
- package/dist/esm/onchain/validation/bundles/checkMarket.js +23 -0
- package/dist/esm/onchain/validation/bundles/checkObtained.js +12 -0
- package/dist/esm/onchain/validation/bundles/checkPoolFunding.js +21 -0
- package/dist/esm/onchain/validation/bundles/checkPoolOperation.js +34 -0
- package/dist/esm/onchain/validation/bundles/checkQuotasAsked.js +19 -0
- package/dist/esm/onchain/validation/bundles/checkRWAOpenRequirements.js +32 -0
- package/dist/esm/onchain/validation/bundles/checkRWAOpening.js +23 -0
- package/dist/esm/onchain/validation/bundles/checkWallet.js +21 -0
- package/dist/esm/onchain/validation/bundles/checkWalletAllowance.js +31 -0
- package/dist/esm/onchain/validation/bundles/checkWalletBalance.js +40 -0
- package/dist/esm/onchain/validation/bundles/index.js +18 -0
- package/dist/esm/onchain/validation/checkLiquidation.js +21 -0
- package/dist/esm/onchain/validation/checkOperation.js +61 -0
- package/dist/esm/onchain/validation/checkSimulation.js +59 -0
- package/dist/esm/onchain/validation/checks/checkBorrowLimit.js +24 -0
- package/dist/esm/onchain/validation/checks/checkCollateralised.js +25 -0
- package/dist/esm/onchain/validation/checks/checkCreditAccountFrozen.js +9 -0
- package/dist/esm/onchain/validation/checks/checkCreditManagerPaused.js +9 -0
- package/dist/esm/onchain/validation/checks/checkDebtLimits.js +17 -0
- package/dist/esm/onchain/validation/checks/checkEmergencyLiquidator.js +12 -0
- package/dist/esm/onchain/validation/checks/checkForbiddenToken.js +9 -0
- package/dist/esm/onchain/validation/checks/checkLeverage.js +12 -0
- package/dist/esm/onchain/validation/checks/checkLiquidatorEligible.js +9 -0
- package/dist/esm/onchain/validation/checks/checkMarketExpired.js +9 -0
- package/dist/esm/onchain/validation/checks/checkPoolLiquidity.js +24 -0
- package/dist/esm/onchain/validation/checks/checkPoolPaused.js +9 -0
- package/dist/esm/onchain/validation/checks/checkPoolSunset.js +9 -0
- package/dist/esm/onchain/validation/checks/checkQuotaCount.js +9 -0
- package/dist/esm/onchain/validation/checks/checkQuotaLimit.js +17 -0
- package/dist/esm/onchain/validation/checks/index.js +16 -0
- package/dist/esm/onchain/validation/helpers/amount.js +11 -0
- package/dist/esm/onchain/validation/helpers/health-factor-limits.js +21 -0
- package/dist/esm/onchain/validation/helpers/index.js +4 -0
- package/dist/esm/onchain/validation/{token.js → helpers/token.js} +3 -3
- package/dist/esm/onchain/validation/index.js +43 -4
- package/dist/esm/onchain/validation/raise.js +31 -0
- package/dist/esm/sdk/index.js +2 -3
- package/dist/esm/sdk/liquidations/LiquidationsNamespace.js +9 -0
- package/dist/esm/sdk/opportunities/OpportunitiesNamespace.js +19 -4
- package/dist/esm/sdk/prepare/PrepareApi.js +25 -35
- package/dist/esm/sdk/prepare/index.js +3 -3
- package/dist/esm/sdk/prepare/types.js +1 -2
- package/dist/esm/sdk/preview/PreviewNamespace.js +24 -13
- package/dist/types/abi/rwa/iMidasAccessControl.d.ts +22 -0
- package/dist/types/abi/rwa/iMidasDegenNFT.d.ts +82 -0
- package/dist/types/history/assembleOperations.d.ts +4 -5
- package/dist/types/history/classifyMulticallOperations.d.ts +3 -4
- package/dist/types/history/index.d.ts +8 -2
- package/dist/types/history/mapOperations.d.ts +1 -1
- package/dist/types/{preview → history}/trace/errors.d.ts +1 -1
- package/dist/types/{preview → history}/trace/extractAdapterCallTraces.d.ts +1 -1
- package/dist/types/{preview → history}/trace/extractTransfers.d.ts +2 -3
- package/dist/types/{preview → history}/trace/findFacadeCalls.d.ts +1 -1
- package/dist/types/{preview → history}/trace/types.d.ts +1 -1
- package/dist/types/history/types.d.ts +2 -3
- package/dist/types/model/errors/base.d.ts +28 -0
- package/dist/types/model/errors/index.d.ts +7 -0
- package/dist/types/model/errors/liquidation-errors.d.ts +45 -0
- package/dist/types/model/errors/operation-errors.d.ts +216 -0
- package/dist/types/{onchain/market/oracle/errors.d.ts → model/errors/oracle-errors.d.ts} +3 -5
- package/dist/types/model/errors/prepare-errors.d.ts +131 -0
- package/dist/types/model/errors/preview-errors.d.ts +72 -0
- package/dist/types/model/index.d.ts +12 -4
- package/dist/types/model/opportunities.d.ts +12 -2
- package/dist/types/model/opportunities.schema.d.ts +30 -0
- package/dist/types/model/positions.d.ts +2 -2
- package/dist/types/model/previews.d.ts +52 -113
- package/dist/types/model/result.d.ts +4 -8
- package/dist/types/model/rwa.d.ts +167 -0
- package/dist/types/model/rwa.schema.d.ts +29 -0
- package/dist/types/offchain/opportunities/OffchainOpportunities.d.ts +2 -1
- package/dist/types/offchain/opportunities/types.d.ts +4 -1
- package/dist/types/onchain/accounts/CreditAccountsServiceV310.d.ts +3 -1
- package/dist/types/onchain/accounts/index.d.ts +2 -4
- package/dist/types/onchain/accounts/intents/guards.d.ts +8 -18
- package/dist/types/onchain/accounts/intents/index.d.ts +20 -19
- package/dist/types/onchain/accounts/intents/leverage-band.d.ts +1 -1
- package/dist/types/onchain/accounts/intents/math.d.ts +6 -6
- package/dist/types/onchain/accounts/intents/operations.d.ts +2 -2
- package/dist/types/onchain/accounts/intents/plan.d.ts +9 -9
- package/dist/types/onchain/accounts/intents/tail.d.ts +2 -2
- package/dist/types/onchain/accounts/intents/testing/expect.d.ts +3 -3
- package/dist/types/onchain/accounts/intents/tests/finish-withdraw.fixtures.d.ts +6 -6
- package/dist/types/onchain/accounts/intents/tests/withdraw.fixtures.d.ts +12 -12
- package/dist/types/onchain/accounts/intents/types.d.ts +32 -30
- package/dist/types/onchain/accounts/types.d.ts +2 -1
- package/dist/types/onchain/accounts/withdrawal-compressor/RedemptionLoggerV310Contract.d.ts +1 -1
- package/dist/types/onchain/accounts/withdrawal-compressor/index.d.ts +1 -2
- package/dist/types/onchain/accounts/withdrawal-compressor/types.d.ts +1 -1
- package/dist/types/onchain/index.d.ts +73 -16
- package/dist/types/onchain/market/MarketSuite.d.ts +5 -1
- package/dist/types/onchain/market/adapters/index.d.ts +2 -1
- package/dist/types/onchain/market/adapters/transfers.d.ts +0 -7
- package/dist/types/onchain/market/credit/CreditSuite.d.ts +30 -8
- package/dist/types/onchain/market/credit/index.d.ts +2 -2
- package/dist/types/onchain/market/credit/types.d.ts +11 -1
- package/dist/types/onchain/market/index.d.ts +11 -10
- package/dist/types/onchain/market/oracle/PriceOracleBaseContract.d.ts +1 -1
- package/dist/types/onchain/market/oracle/index.d.ts +1 -2
- package/dist/types/onchain/market/oracle/types.d.ts +1 -1
- package/dist/types/onchain/market/pool/PoolQuotaKeeperV310Contract.d.ts +5 -0
- package/dist/types/onchain/market/rwa/RWARegistry.d.ts +1 -1
- package/dist/types/onchain/market/rwa/createDegenNFT.d.ts +12 -0
- package/dist/types/onchain/market/rwa/index.d.ts +10 -8
- package/dist/types/onchain/market/rwa/midas/MidasDegenNFT.d.ts +98 -0
- package/dist/types/onchain/market/rwa/midas/constants.d.ts +2 -1
- package/dist/types/onchain/market/rwa/midas/index.d.ts +3 -2
- package/dist/types/onchain/market/rwa/securitize/SecuritizeDegenNFT.d.ts +8 -2
- package/dist/types/onchain/market/rwa/securitize/SecuritizeRWAFactory.d.ts +4 -3
- package/dist/types/onchain/market/rwa/securitize/constants.d.ts +2 -2
- package/dist/types/onchain/market/rwa/securitize/index.d.ts +5 -4
- package/dist/types/onchain/market/rwa/securitize/types.d.ts +4 -110
- package/dist/types/onchain/market/rwa/types.d.ts +24 -32
- package/dist/types/onchain/market/zapper/ZapperContract.d.ts +1 -1
- package/dist/types/onchain/market/zapper/index.d.ts +1 -2
- package/dist/types/onchain/market/zapper/types.d.ts +1 -1
- package/dist/types/onchain/opportunities/MultichainOpportunitiesService.d.ts +2 -1
- package/dist/types/onchain/opportunities/OpportunitiesService.d.ts +5 -1
- package/dist/types/onchain/opportunities/types.d.ts +3 -2
- package/dist/types/onchain/pools/types.d.ts +2 -2
- package/dist/types/onchain/preview/index.d.ts +24 -0
- package/dist/types/{preview → onchain/preview}/parse/classifyInnerOperations.d.ts +4 -4
- package/dist/types/{preview → onchain/preview}/parse/index.d.ts +2 -4
- package/dist/types/{preview → onchain/preview}/parse/parseFacadeOperationCalldata.d.ts +4 -4
- package/dist/types/onchain/preview/parse/parseOperationCalldata.d.ts +18 -0
- package/dist/types/{preview → onchain/preview}/parse/parsePoolOperationCalldata.d.ts +7 -7
- package/dist/types/{preview → onchain/preview}/parse/parseRWAFactoryOperationCalldata.d.ts +4 -4
- package/dist/types/{preview → onchain/preview}/parse/types-adapters.d.ts +5 -16
- package/dist/types/{preview → onchain/preview}/parse/types-facades.d.ts +3 -3
- package/dist/types/{preview → onchain/preview}/parse/types-pools.d.ts +1 -1
- package/dist/types/{preview → onchain/preview}/parse/types-rwa.d.ts +3 -3
- package/dist/types/{preview → onchain/preview}/parse/types.d.ts +3 -3
- package/dist/types/{preview → onchain/preview}/preview/CreditAccountState.d.ts +5 -5
- package/dist/types/{preview → onchain/preview}/preview/buildDelayedStrategyPositionOperationPreview.d.ts +5 -5
- package/dist/types/{preview → onchain/preview}/preview/detectCloseOrRepay.d.ts +1 -1
- package/dist/types/{preview → onchain/preview}/preview/detectDelayedClaim.d.ts +8 -8
- package/dist/types/{preview → onchain/preview}/preview/detectDelayedOperation.d.ts +9 -9
- package/dist/types/{preview → onchain/preview}/preview/estimateClaimableAt.d.ts +6 -6
- package/dist/types/{preview → onchain/preview}/preview/index.d.ts +3 -4
- package/dist/types/onchain/preview/preview/previewAdjustStrategyPosition.d.ts +20 -0
- package/dist/types/onchain/preview/preview/previewExitOrRepayStrategyPosition.d.ts +21 -0
- package/dist/types/onchain/preview/preview/previewOpenStrategyPosition.d.ts +14 -0
- package/dist/types/onchain/preview/preview/previewOperation.d.ts +32 -0
- package/dist/types/onchain/preview/preview/previewPoolPositionOperation.d.ts +13 -0
- package/dist/types/{preview → onchain/preview}/preview/replayInnerOperations.d.ts +11 -11
- package/dist/types/{preview → onchain/preview}/preview/replayMulticall.d.ts +10 -10
- package/dist/types/{preview → onchain/preview}/preview/unwrapNativeCollateral.d.ts +10 -20
- package/dist/types/onchain/validation/bundles/checkAccountQuotas.d.ts +16 -0
- package/dist/types/onchain/validation/bundles/checkCollateralFunding.d.ts +22 -0
- package/dist/types/onchain/validation/bundles/checkCreditOperation.d.ts +31 -0
- package/dist/types/onchain/validation/bundles/checkDraw.d.ts +20 -0
- package/dist/types/onchain/validation/bundles/checkHealthFactors.d.ts +39 -0
- package/dist/types/onchain/validation/bundles/checkLiquidationEligibility.d.ts +20 -0
- package/dist/types/onchain/validation/bundles/checkLiquidationFunding.d.ts +18 -0
- package/dist/types/onchain/validation/bundles/checkMarket.d.ts +15 -0
- package/dist/types/onchain/validation/bundles/checkObtained.d.ts +9 -0
- package/dist/types/onchain/validation/bundles/checkPoolFunding.d.ts +19 -0
- package/dist/types/onchain/validation/bundles/checkPoolOperation.d.ts +31 -0
- package/dist/types/onchain/validation/bundles/checkQuotasAsked.d.ts +10 -0
- package/dist/types/onchain/validation/bundles/checkRWAOpenRequirements.d.ts +21 -0
- package/dist/types/onchain/validation/bundles/checkRWAOpening.d.ts +19 -0
- package/dist/types/onchain/validation/bundles/checkWallet.d.ts +23 -0
- package/dist/types/onchain/validation/bundles/checkWalletAllowance.d.ts +18 -0
- package/dist/types/onchain/validation/bundles/checkWalletBalance.d.ts +17 -0
- package/dist/types/onchain/validation/bundles/index.d.ts +18 -0
- package/dist/types/onchain/validation/checkLiquidation.d.ts +23 -0
- package/dist/types/onchain/validation/checkOperation.d.ts +32 -0
- package/dist/types/onchain/validation/checkSimulation.d.ts +56 -0
- package/dist/types/onchain/validation/checks/checkBorrowLimit.d.ts +21 -0
- package/dist/types/onchain/validation/checks/checkCollateralised.d.ts +25 -0
- package/dist/types/onchain/validation/checks/checkCreditAccountFrozen.d.ts +12 -0
- package/dist/types/onchain/validation/checks/checkCreditManagerPaused.d.ts +12 -0
- package/dist/types/onchain/validation/checks/checkDebtLimits.d.ts +21 -0
- package/dist/types/onchain/validation/checks/checkEmergencyLiquidator.d.ts +17 -0
- package/dist/types/onchain/validation/checks/checkForbiddenToken.d.ts +12 -0
- package/dist/types/onchain/validation/checks/checkLeverage.d.ts +12 -0
- package/dist/types/onchain/validation/checks/checkLiquidatorEligible.d.ts +13 -0
- package/dist/types/onchain/validation/checks/checkMarketExpired.d.ts +14 -0
- package/dist/types/onchain/validation/checks/checkPoolLiquidity.d.ts +20 -0
- package/dist/types/onchain/validation/checks/checkPoolPaused.d.ts +12 -0
- package/dist/types/onchain/validation/checks/checkPoolSunset.d.ts +13 -0
- package/dist/types/onchain/validation/checks/checkQuotaCount.d.ts +11 -0
- package/dist/types/onchain/validation/checks/checkQuotaLimit.d.ts +18 -0
- package/dist/types/onchain/validation/checks/index.d.ts +16 -0
- package/dist/types/onchain/validation/helpers/amount.d.ts +7 -0
- package/dist/types/onchain/validation/helpers/health-factor-limits.d.ts +21 -0
- package/dist/types/onchain/validation/helpers/index.d.ts +4 -0
- package/dist/types/onchain/validation/{token.d.ts → helpers/token.d.ts} +4 -4
- package/dist/types/onchain/validation/index.d.ts +43 -4
- package/dist/types/onchain/validation/raise.d.ts +33 -0
- package/dist/types/sdk/execute/types.d.ts +2 -2
- package/dist/types/sdk/index.d.ts +5 -6
- package/dist/types/sdk/liquidations/LiquidationsNamespace.d.ts +5 -0
- package/dist/types/sdk/liquidations/types.d.ts +8 -0
- package/dist/types/sdk/opportunities/OpportunitiesNamespace.d.ts +2 -1
- package/dist/types/sdk/opportunities/types.d.ts +8 -2
- package/dist/types/sdk/prepare/PrepareApi.d.ts +5 -4
- package/dist/types/sdk/prepare/index.d.ts +5 -5
- package/dist/types/sdk/prepare/types.d.ts +41 -22
- package/dist/types/sdk/preview/PreviewNamespace.d.ts +13 -3
- package/dist/types/sdk/preview/index.d.ts +2 -2
- package/dist/types/sdk/preview/types.d.ts +30 -7
- package/package.json +1 -6
- package/dist/cjs/onchain/accounts/withdrawal-compressor/errors.js +0 -1
- package/dist/cjs/onchain/market/zapper/errors.js +0 -1
- package/dist/cjs/onchain/validation/checks.js +0 -258
- package/dist/cjs/onchain/validation/refusal.js +0 -39
- package/dist/cjs/preview/index.js +0 -86
- package/dist/cjs/preview/package.json +0 -1
- package/dist/cjs/preview/parse/errors.js +0 -1
- package/dist/cjs/preview/parse/index.js +0 -15
- package/dist/cjs/preview/prerequisites/AllowancePrerequisite.js +0 -38
- package/dist/cjs/preview/prerequisites/BalancePrerequisite.js +0 -52
- package/dist/cjs/preview/prerequisites/Prerequisite.js +0 -52
- package/dist/cjs/preview/prerequisites/RWAOpenRequirementsPrerequisite.js +0 -53
- package/dist/cjs/preview/prerequisites/buildCollateralPrerequisites.js +0 -63
- package/dist/cjs/preview/prerequisites/buildPartialLiquidationPrerequisites.js +0 -19
- package/dist/cjs/preview/prerequisites/buildPoolPrerequisites.js +0 -76
- package/dist/cjs/preview/prerequisites/buildRWAPrerequisites.js +0 -39
- package/dist/cjs/preview/prerequisites/checkPrerequisites.js +0 -74
- package/dist/cjs/preview/prerequisites/helpers.js +0 -23
- package/dist/cjs/preview/prerequisites/index.js +0 -12
- package/dist/cjs/preview/preview/errors.js +0 -85
- package/dist/cjs/preview/preview/index.js +0 -33
- package/dist/cjs/preview/preview/previewOpenStrategyPosition.js +0 -50
- package/dist/cjs/preview/preview/previewOperation.js +0 -100
- package/dist/cjs/preview/preview/previewPoolPositionOperation.js +0 -49
- package/dist/cjs/preview/preview/replayInnerOperations.js +0 -109
- package/dist/cjs/preview/preview/replayMulticall.js +0 -19
- package/dist/cjs/preview/simulate/errors.js +0 -73
- package/dist/cjs/preview/simulate/index.js +0 -11
- package/dist/cjs/preview/simulate/simulateFacadeOperation.js +0 -15
- package/dist/cjs/preview/simulate/simulateOperation.js +0 -29
- package/dist/cjs/preview/simulate/simulateRWAOperation.js +0 -15
- package/dist/cjs/preview/simulate/types.js +0 -1
- package/dist/cjs/preview/trace/index.js +0 -14
- package/dist/cjs/preview/trace/types.js +0 -1
- package/dist/cjs/preview/types.js +0 -1
- package/dist/cjs/preview/validate/checkOperation.js +0 -187
- package/dist/cjs/preview/validate/checkSimulation.js +0 -39
- package/dist/cjs/preview/validate/index.js +0 -8
- package/dist/cjs/sdk/prepare/errors.js +0 -114
- package/dist/esm/onchain/accounts/withdrawal-compressor/errors.js +0 -1
- package/dist/esm/onchain/market/zapper/errors.js +0 -1
- package/dist/esm/onchain/validation/checks.js +0 -238
- package/dist/esm/onchain/validation/refusal.js +0 -36
- package/dist/esm/preview/index.js +0 -38
- package/dist/esm/preview/package.json +0 -1
- package/dist/esm/preview/parse/errors.js +0 -1
- package/dist/esm/preview/prerequisites/AllowancePrerequisite.js +0 -37
- package/dist/esm/preview/prerequisites/BalancePrerequisite.js +0 -51
- package/dist/esm/preview/prerequisites/Prerequisite.js +0 -51
- package/dist/esm/preview/prerequisites/RWAOpenRequirementsPrerequisite.js +0 -52
- package/dist/esm/preview/prerequisites/buildCollateralPrerequisites.js +0 -62
- package/dist/esm/preview/prerequisites/buildPartialLiquidationPrerequisites.js +0 -18
- package/dist/esm/preview/prerequisites/buildPoolPrerequisites.js +0 -75
- package/dist/esm/preview/prerequisites/buildRWAPrerequisites.js +0 -38
- package/dist/esm/preview/prerequisites/checkPrerequisites.js +0 -73
- package/dist/esm/preview/prerequisites/helpers.js +0 -22
- package/dist/esm/preview/prerequisites/index.js +0 -7
- package/dist/esm/preview/preview/errors.js +0 -79
- package/dist/esm/preview/preview/previewPoolPositionOperation.js +0 -48
- package/dist/esm/preview/preview/replayInnerOperations.js +0 -107
- package/dist/esm/preview/preview/replayMulticall.js +0 -18
- package/dist/esm/preview/simulate/errors.js +0 -71
- package/dist/esm/preview/simulate/index.js +0 -6
- package/dist/esm/preview/simulate/simulateFacadeOperation.js +0 -14
- package/dist/esm/preview/simulate/simulateOperation.js +0 -28
- package/dist/esm/preview/simulate/simulateRWAOperation.js +0 -14
- package/dist/esm/preview/simulate/types.js +0 -1
- package/dist/esm/preview/trace/types.js +0 -1
- package/dist/esm/preview/types.js +0 -1
- package/dist/esm/preview/validate/checkOperation.js +0 -183
- package/dist/esm/preview/validate/checkSimulation.js +0 -38
- package/dist/esm/preview/validate/index.js +0 -3
- package/dist/esm/sdk/prepare/errors.js +0 -108
- package/dist/types/model/errors.d.ts +0 -46
- package/dist/types/onchain/accounts/withdrawal-compressor/errors.d.ts +0 -20
- package/dist/types/onchain/market/zapper/errors.d.ts +0 -18
- package/dist/types/onchain/validation/checks.d.ts +0 -164
- package/dist/types/onchain/validation/refusal.d.ts +0 -242
- package/dist/types/preview/index.d.ts +0 -47
- package/dist/types/preview/parse/errors.d.ts +0 -29
- package/dist/types/preview/parse/parseOperationCalldata.d.ts +0 -18
- package/dist/types/preview/prerequisites/AllowancePrerequisite.d.ts +0 -26
- package/dist/types/preview/prerequisites/BalancePrerequisite.d.ts +0 -29
- package/dist/types/preview/prerequisites/Prerequisite.d.ts +0 -26
- package/dist/types/preview/prerequisites/RWAOpenRequirementsPrerequisite.d.ts +0 -55
- package/dist/types/preview/prerequisites/buildCollateralPrerequisites.d.ts +0 -20
- package/dist/types/preview/prerequisites/buildPartialLiquidationPrerequisites.d.ts +0 -12
- package/dist/types/preview/prerequisites/buildPoolPrerequisites.d.ts +0 -12
- package/dist/types/preview/prerequisites/buildRWAPrerequisites.d.ts +0 -26
- package/dist/types/preview/prerequisites/checkPrerequisites.d.ts +0 -28
- package/dist/types/preview/prerequisites/helpers.d.ts +0 -10
- package/dist/types/preview/prerequisites/index.d.ts +0 -7
- package/dist/types/preview/prerequisites/types.d.ts +0 -53
- package/dist/types/preview/preview/errors.d.ts +0 -44
- package/dist/types/preview/preview/previewAdjustStrategyPosition.d.ts +0 -19
- package/dist/types/preview/preview/previewExitOrRepayStrategyPosition.d.ts +0 -18
- package/dist/types/preview/preview/previewOpenStrategyPosition.d.ts +0 -12
- package/dist/types/preview/preview/previewOperation.d.ts +0 -32
- package/dist/types/preview/preview/previewPoolPositionOperation.d.ts +0 -13
- package/dist/types/preview/simulate/errors.d.ts +0 -52
- package/dist/types/preview/simulate/index.d.ts +0 -7
- package/dist/types/preview/simulate/simulateFacadeOperation.d.ts +0 -16
- package/dist/types/preview/simulate/simulateOperation.d.ts +0 -12
- package/dist/types/preview/simulate/simulatePoolOperation.d.ts +0 -42
- package/dist/types/preview/simulate/simulateRWAOperation.d.ts +0 -16
- package/dist/types/preview/simulate/types.d.ts +0 -48
- package/dist/types/preview/types.d.ts +0 -65
- package/dist/types/preview/validate/checkOperation.d.ts +0 -71
- package/dist/types/preview/validate/checkSimulation.d.ts +0 -32
- package/dist/types/preview/validate/index.d.ts +0 -3
- package/dist/types/sdk/prepare/errors.d.ts +0 -343
- /package/dist/cjs/{preview/prerequisites → history/trace}/types.js +0 -0
- /package/dist/cjs/model/{errors.js → errors/base.js} +0 -0
- /package/dist/cjs/{preview → onchain/preview}/parse/types-adapters.js +0 -0
- /package/dist/cjs/{preview → onchain/preview}/parse/types-facades.js +0 -0
- /package/dist/cjs/{preview → onchain/preview}/parse/types-pools.js +0 -0
- /package/dist/cjs/{preview → onchain/preview}/parse/types-rwa.js +0 -0
- /package/dist/esm/{preview → history}/trace/index.js +0 -0
- /package/dist/esm/{preview/prerequisites → history/trace}/types.js +0 -0
- /package/dist/esm/model/{errors.js → errors/base.js} +0 -0
- /package/dist/esm/{preview → onchain/preview}/parse/types-adapters.js +0 -0
- /package/dist/esm/{preview → onchain/preview}/parse/types-facades.js +0 -0
- /package/dist/esm/{preview → onchain/preview}/parse/types-pools.js +0 -0
- /package/dist/esm/{preview → onchain/preview}/parse/types-rwa.js +0 -0
- /package/dist/types/{preview → history}/trace/index.d.ts +0 -0
|
@@ -1,15 +1,16 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import "
|
|
3
|
-
import
|
|
4
|
-
import {
|
|
5
|
-
import "../../
|
|
1
|
+
import { MalformedTransactionError } from "../../../model/errors/preview-errors.js";
|
|
2
|
+
import { SDKReturn } from "../../../model/result.js";
|
|
3
|
+
import "../../../model/index.js";
|
|
4
|
+
import { CreditAccountData } from "../../base/types.js";
|
|
5
|
+
import { PluginsMap } from "../../plugins/types.js";
|
|
6
|
+
import { OnchainSDK } from "../../OnchainSDK.js";
|
|
6
7
|
import { InnerOperation } from "../parse/types-facades.js";
|
|
7
|
-
import { PreviewOperationOptions } from "../types.js";
|
|
8
8
|
import "../parse/index.js";
|
|
9
9
|
import { CreditAccountState } from "./CreditAccountState.js";
|
|
10
10
|
import { ReplayState } from "./replayInnerOperations.js";
|
|
11
|
+
import "../../index.js";
|
|
11
12
|
import { Address } from "viem";
|
|
12
|
-
//#region src/preview/preview/replayMulticall.d.ts
|
|
13
|
+
//#region src/onchain/preview/preview/replayMulticall.d.ts
|
|
13
14
|
/**
|
|
14
15
|
* Parsed operation on an existing credit account whose multicall can be
|
|
15
16
|
* replayed: the facade `closeCreditAccount` entry point and
|
|
@@ -33,12 +34,11 @@ interface ReplayMulticallResult {
|
|
|
33
34
|
* replay in facade execution order
|
|
34
35
|
*/
|
|
35
36
|
after: ReplayState;
|
|
36
|
-
warning?: OperationPreviewError;
|
|
37
37
|
}
|
|
38
38
|
/**
|
|
39
39
|
* Replays the operation's multicall over the account's pre-resolved
|
|
40
|
-
* pre-state
|
|
40
|
+
* pre-state via {@link replayInnerOperations}.
|
|
41
41
|
*/
|
|
42
|
-
declare function replayMulticall<P extends PluginsMap>(sdk: OnchainSDK<P>, operation: ReplayableOperation,
|
|
42
|
+
declare function replayMulticall<P extends PluginsMap>(sdk: OnchainSDK<P>, operation: ReplayableOperation, creditAccount: CreditAccountData): SDKReturn<ReplayMulticallResult, MalformedTransactionError>;
|
|
43
43
|
//#endregion
|
|
44
44
|
export { ReplayMulticallResult, ReplayableOperation, replayMulticall };
|
|
@@ -1,19 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import "
|
|
3
|
-
import
|
|
4
|
-
import "../../
|
|
1
|
+
import { MalformedTransactionError } from "../../../model/errors/preview-errors.js";
|
|
2
|
+
import { SDKReturn } from "../../../model/result.js";
|
|
3
|
+
import "../../../model/index.js";
|
|
4
|
+
import { Asset } from "../../base/types.js";
|
|
5
|
+
import "../../index.js";
|
|
5
6
|
import { Address } from "viem";
|
|
6
|
-
//#region src/preview/preview/unwrapNativeCollateral.d.ts
|
|
7
|
-
interface UnwrapNativeCollateralResult {
|
|
8
|
-
/**
|
|
9
|
-
* Collateral with the native amount unwrapped from the WETH entry.
|
|
10
|
-
*/
|
|
11
|
-
assets: Asset[];
|
|
12
|
-
/**
|
|
13
|
-
* Warning set when the transaction value is malformed.
|
|
14
|
-
*/
|
|
15
|
-
warning?: OperationPreviewError;
|
|
16
|
-
}
|
|
7
|
+
//#region src/onchain/preview/preview/unwrapNativeCollateral.d.ts
|
|
17
8
|
/**
|
|
18
9
|
* Represents the transaction's attached native value as a `NATIVE_ADDRESS`
|
|
19
10
|
* entry in the collateral list.
|
|
@@ -25,15 +16,14 @@ interface UnwrapNativeCollateralResult {
|
|
|
25
16
|
* reaches zero). Other entries are preserved.
|
|
26
17
|
*
|
|
27
18
|
* When `nativeAmount` is positive but the WETH collateral is missing or
|
|
28
|
-
* smaller than it, the transaction is malformed
|
|
29
|
-
* as-is (no unwrapping) together with an `invalidTransactionValue` warning.
|
|
19
|
+
* smaller than it, the transaction is malformed.
|
|
30
20
|
*
|
|
31
21
|
* @param collateral - Collateral assets as declared by the multicall.
|
|
32
22
|
* @param nativeAmount - Transaction `msg.value`.
|
|
33
23
|
* @param wethToken - Wrapped native token address.
|
|
34
24
|
* @returns Collateral with the native amount unwrapped from the WETH entry,
|
|
35
|
-
*
|
|
25
|
+
* or `malformedTransaction` when `msg.value` does not fit the declared WETH.
|
|
36
26
|
*/
|
|
37
|
-
declare function unwrapNativeCollateral(collateral: Asset[], nativeAmount: bigint, wethToken: Address):
|
|
27
|
+
declare function unwrapNativeCollateral(collateral: Asset[], nativeAmount: bigint, wethToken: Address): SDKReturn<Asset[], MalformedTransactionError>;
|
|
38
28
|
//#endregion
|
|
39
|
-
export {
|
|
29
|
+
export { unwrapNativeCollateral };
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { QuotaCountExceededError } from "../../../model/errors/operation-errors.js";
|
|
2
|
+
import { AccountProjection } from "../../../model/previews.js";
|
|
3
|
+
import "../../../model/index.js";
|
|
4
|
+
import { CreditSuite } from "../../market/credit/CreditSuite.js";
|
|
5
|
+
//#region src/onchain/validation/bundles/checkAccountQuotas.d.ts
|
|
6
|
+
/**
|
|
7
|
+
* How many quoted tokens the account would end up holding, against the number
|
|
8
|
+
* the facade enables at once.
|
|
9
|
+
*
|
|
10
|
+
* Reads nothing but the projected account, so a parsed transaction and a
|
|
11
|
+
* simulated one are held to it by the same code — including the reading that a
|
|
12
|
+
* quota the operation zeroed out is no longer held.
|
|
13
|
+
*/
|
|
14
|
+
declare function checkAccountQuotas(suite: CreditSuite, account: Pick<AccountProjection, "quotas">): QuotaCountExceededError[];
|
|
15
|
+
//#endregion
|
|
16
|
+
export { checkAccountQuotas };
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { AdjustStrategyPositionPreview, OpenStrategyPositionPreview, RepayStrategyPositionPreview } from "../../../model/previews.js";
|
|
2
|
+
import "../../../model/index.js";
|
|
3
|
+
import { OnchainSDK } from "../../OnchainSDK.js";
|
|
4
|
+
import { WalletFundingError } from "./checkWallet.js";
|
|
5
|
+
import { Address } from "viem";
|
|
6
|
+
//#region src/onchain/validation/bundles/checkCollateralFunding.d.ts
|
|
7
|
+
type CollateralFundingPreview = OpenStrategyPositionPreview | AdjustStrategyPositionPreview | RepayStrategyPositionPreview;
|
|
8
|
+
interface CheckCollateralFundingInput {
|
|
9
|
+
sdk: OnchainSDK;
|
|
10
|
+
preview: CollateralFundingPreview;
|
|
11
|
+
sender: Address;
|
|
12
|
+
blockNumber?: bigint;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* What the wallet must hold and have approved for the collateral the
|
|
16
|
+
* operation adds. Native value is already split out of `collateralAdded` as a
|
|
17
|
+
* `NATIVE_ADDRESS` entry; the facade wraps it into WETH, so the WETH allowance
|
|
18
|
+
* covers both halves.
|
|
19
|
+
*/
|
|
20
|
+
declare function checkCollateralFunding(input: CheckCollateralFundingInput): Promise<WalletFundingError[]>;
|
|
21
|
+
//#endregion
|
|
22
|
+
export { CheckCollateralFundingInput, CollateralFundingPreview, checkCollateralFunding };
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { DebtOutOfRangeError, ForbiddenTokenError, InsufficientCollateralError, InsufficientPoolLiquidityError, QuotaCountExceededError, QuotaLimitReachedError, RWAOpenRequirementsError } from "../../../model/errors/operation-errors.js";
|
|
2
|
+
import { AdjustStrategyPositionPreview, OpenStrategyPositionPreview } from "../../../model/previews.js";
|
|
3
|
+
import "../../../model/index.js";
|
|
4
|
+
import { OnchainSDK } from "../../OnchainSDK.js";
|
|
5
|
+
import { WalletFundingError } from "./checkWallet.js";
|
|
6
|
+
import { HealthFactorThresholds } from "./checkHealthFactors.js";
|
|
7
|
+
import { MarketStateError } from "./checkMarket.js";
|
|
8
|
+
import { Address } from "viem";
|
|
9
|
+
//#region src/onchain/validation/bundles/checkCreditOperation.d.ts
|
|
10
|
+
/** {@inheritDoc checkCreditOperation} */
|
|
11
|
+
type CreditOperationError = MarketStateError | DebtOutOfRangeError | InsufficientPoolLiquidityError | ForbiddenTokenError | QuotaCountExceededError | QuotaLimitReachedError | InsufficientCollateralError | WalletFundingError | RWAOpenRequirementsError;
|
|
12
|
+
/** The two previews that carry a position for the thresholds to weigh. */
|
|
13
|
+
type CreditOperationPreview = OpenStrategyPositionPreview | AdjustStrategyPositionPreview;
|
|
14
|
+
interface CreditOperationArgs extends HealthFactorThresholds {
|
|
15
|
+
sdk: OnchainSDK;
|
|
16
|
+
preview: CreditOperationPreview;
|
|
17
|
+
/** The wallet that signs. Its balances, allowances and RWA standing are read on-chain. */
|
|
18
|
+
sender: Address;
|
|
19
|
+
blockNumber?: bigint;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* What the protocol stops a credit operation for, then what the wallet still
|
|
23
|
+
* has to hold, approve or sign.
|
|
24
|
+
*
|
|
25
|
+
* The array is in check order, most fundamental first: the market's own state,
|
|
26
|
+
* then what the facade would revert on, then what the operation asks the
|
|
27
|
+
* market for, then the account it leaves behind, and last the wallet's side.
|
|
28
|
+
*/
|
|
29
|
+
declare function checkCreditOperation(args: CreditOperationArgs): Promise<CreditOperationError[]>;
|
|
30
|
+
//#endregion
|
|
31
|
+
export { CreditOperationArgs, CreditOperationError, CreditOperationPreview, checkCreditOperation };
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Token } from "../../../model/primitives.js";
|
|
2
|
+
import { InsufficientPoolLiquidityError } from "../../../model/errors/operation-errors.js";
|
|
3
|
+
import "../../../model/index.js";
|
|
4
|
+
import { CreditSuite } from "../../market/credit/CreditSuite.js";
|
|
5
|
+
import { CreditOperationPreview } from "./checkCreditOperation.js";
|
|
6
|
+
//#region src/onchain/validation/bundles/checkDraw.d.ts
|
|
7
|
+
/**
|
|
8
|
+
* What the transaction draws, against what the market can lend right now.
|
|
9
|
+
*
|
|
10
|
+
* Only a draw is weighed: repaying, or leaving the debt alone, can never exceed
|
|
11
|
+
* a ceiling. Opening borrows the whole debt; adjusting borrows
|
|
12
|
+
* `totalDebtChange`.
|
|
13
|
+
*
|
|
14
|
+
* The engine holds every simulation to this already (`assertCanBorrow`), so
|
|
15
|
+
* this is here for the transactions it never saw — a pasted calldata reaches
|
|
16
|
+
* the confirm screen with nothing else standing between it and a revert.
|
|
17
|
+
*/
|
|
18
|
+
declare function checkDraw(suite: CreditSuite, preview: CreditOperationPreview, underlying: Token): InsufficientPoolLiquidityError[];
|
|
19
|
+
//#endregion
|
|
20
|
+
export { checkDraw };
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { Bps } from "../../../model/primitives.js";
|
|
2
|
+
import { InsufficientCollateralError } from "../../../model/errors/operation-errors.js";
|
|
3
|
+
import { AccountHoldings, AccountMetrics } from "../../../model/previews.js";
|
|
4
|
+
import "../../../model/index.js";
|
|
5
|
+
//#region src/onchain/validation/bundles/checkHealthFactors.d.ts
|
|
6
|
+
/**
|
|
7
|
+
* The factors a caller holds an account to. Omitting a threshold switches its
|
|
8
|
+
* check off — there is no single right one.
|
|
9
|
+
*/
|
|
10
|
+
interface HealthFactorThresholds {
|
|
11
|
+
/** Lowest acceptable health factor at main prices, in bps. */
|
|
12
|
+
minHealthFactor?: Bps;
|
|
13
|
+
/** Lowest acceptable health factor at safe prices, in bps. */
|
|
14
|
+
minSafeHealthFactor?: Bps;
|
|
15
|
+
/**
|
|
16
|
+
* The factor the account stands at now. Given, an operation that raises it
|
|
17
|
+
* passes even from under the required factor — the top-ups that rescue a
|
|
18
|
+
* position would otherwise be stopped by the very check meant to protect it.
|
|
19
|
+
*/
|
|
20
|
+
currentHealthFactor?: Bps;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* An account's factors, in whichever branch of a routed leg the caller means to
|
|
24
|
+
* be held to: `prepare` reports the outcome the router expects, `preview` the
|
|
25
|
+
* floor its calldata guarantees. The check is indifferent — it weighs the
|
|
26
|
+
* numbers it is handed — and passing them one by one is what makes the choice
|
|
27
|
+
* visible where it is made.
|
|
28
|
+
*/
|
|
29
|
+
interface WeighedFactors extends Pick<AccountHoldings, "totalDebt">, Pick<AccountMetrics, "healthFactor" | "safeHealthFactor"> {}
|
|
30
|
+
/**
|
|
31
|
+
* The account against whichever thresholds the caller holds it to, so a parsed
|
|
32
|
+
* transaction and a simulated one are weighed by the same code.
|
|
33
|
+
*
|
|
34
|
+
* A loan-free account is nothing to weigh: the health factor reports its
|
|
35
|
+
* zero-debt sentinel and no threshold applies.
|
|
36
|
+
*/
|
|
37
|
+
declare function checkHealthFactors(account: WeighedFactors, thresholds: HealthFactorThresholds): InsufficientCollateralError[];
|
|
38
|
+
//#endregion
|
|
39
|
+
export { HealthFactorThresholds, WeighedFactors, checkHealthFactors };
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { CreditAccountFrozenError, LiquidatorNotEligibleError, NotEmergencyLiquidatorError } from "../../../model/errors/liquidation-errors.js";
|
|
2
|
+
import { LiquidationDetails } from "../../../model/liquidations.js";
|
|
3
|
+
import "../../../model/index.js";
|
|
4
|
+
import { OnchainSDK } from "../../OnchainSDK.js";
|
|
5
|
+
import { Address } from "viem";
|
|
6
|
+
//#region src/onchain/validation/bundles/checkLiquidationEligibility.d.ts
|
|
7
|
+
interface CheckLiquidationEligibilityInput {
|
|
8
|
+
sdk: OnchainSDK;
|
|
9
|
+
details: LiquidationDetails;
|
|
10
|
+
liquidator: Address;
|
|
11
|
+
}
|
|
12
|
+
/** {@inheritDoc checkLiquidationEligibility} */
|
|
13
|
+
type LiquidationEligibilityError = CreditAccountFrozenError | NotEmergencyLiquidatorError | LiquidatorNotEligibleError;
|
|
14
|
+
/**
|
|
15
|
+
* Whether this wallet may liquidate this account, from the facts the
|
|
16
|
+
* compressor already reported and the market's emergency-liquidator list.
|
|
17
|
+
*/
|
|
18
|
+
declare function checkLiquidationEligibility(input: CheckLiquidationEligibilityInput): LiquidationEligibilityError[];
|
|
19
|
+
//#endregion
|
|
20
|
+
export { CheckLiquidationEligibilityInput, LiquidationEligibilityError, checkLiquidationEligibility };
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { LiquidationDetails } from "../../../model/liquidations.js";
|
|
2
|
+
import "../../../model/index.js";
|
|
3
|
+
import { OnchainSDK } from "../../OnchainSDK.js";
|
|
4
|
+
import { WalletFundingError } from "./checkWallet.js";
|
|
5
|
+
import { Address } from "viem";
|
|
6
|
+
//#region src/onchain/validation/bundles/checkLiquidationFunding.d.ts
|
|
7
|
+
interface CheckLiquidationFundingInput {
|
|
8
|
+
sdk: OnchainSDK;
|
|
9
|
+
details: LiquidationDetails;
|
|
10
|
+
liquidator: Address;
|
|
11
|
+
blockNumber?: bigint;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* What the liquidator wallet must hold and have approved.
|
|
15
|
+
*/
|
|
16
|
+
declare function checkLiquidationFunding(input: CheckLiquidationFundingInput): Promise<WalletFundingError[]>;
|
|
17
|
+
//#endregion
|
|
18
|
+
export { CheckLiquidationFundingInput, checkLiquidationFunding };
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { CreditManagerPausedError, MarketExpiredError } from "../../../model/errors/operation-errors.js";
|
|
2
|
+
import "../../../model/index.js";
|
|
3
|
+
import { CreditSuite } from "../../market/credit/CreditSuite.js";
|
|
4
|
+
//#region src/onchain/validation/bundles/checkMarket.d.ts
|
|
5
|
+
/** {@inheritDoc checkMarket} */
|
|
6
|
+
type MarketStateError = CreditManagerPausedError | MarketExpiredError;
|
|
7
|
+
/**
|
|
8
|
+
* What the market itself stops, whatever the operation does.
|
|
9
|
+
*
|
|
10
|
+
* Neither state is anything the sender can fix, which is why it comes first
|
|
11
|
+
* wherever it is composed in.
|
|
12
|
+
*/
|
|
13
|
+
declare function checkMarket(suite: CreditSuite): MarketStateError[];
|
|
14
|
+
//#endregion
|
|
15
|
+
export { MarketStateError, checkMarket };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ForbiddenTokenError } from "../../../model/errors/operation-errors.js";
|
|
2
|
+
import "../../../model/index.js";
|
|
3
|
+
import { CreditSuite } from "../../market/credit/CreditSuite.js";
|
|
4
|
+
import { CreditOperationPreview } from "./checkCreditOperation.js";
|
|
5
|
+
//#region src/onchain/validation/bundles/checkObtained.d.ts
|
|
6
|
+
/** Every token the operation buys more of, against what the market forbids. */
|
|
7
|
+
declare function checkObtained(suite: CreditSuite, preview: CreditOperationPreview): ForbiddenTokenError[];
|
|
8
|
+
//#endregion
|
|
9
|
+
export { checkObtained };
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { PoolPositionOperationPreview } from "../../../model/previews.js";
|
|
2
|
+
import "../../../model/index.js";
|
|
3
|
+
import { OnchainSDK } from "../../OnchainSDK.js";
|
|
4
|
+
import { WalletFundingError } from "./checkWallet.js";
|
|
5
|
+
import { Address } from "viem";
|
|
6
|
+
//#region src/onchain/validation/bundles/checkPoolFunding.d.ts
|
|
7
|
+
interface CheckPoolFundingInput {
|
|
8
|
+
sdk: OnchainSDK;
|
|
9
|
+
preview: PoolPositionOperationPreview;
|
|
10
|
+
sender: Address;
|
|
11
|
+
blockNumber?: bigint;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* What the wallet must hold (and approve) for a pool deposit, mint, withdraw
|
|
15
|
+
* or redeem, read off the preview's `tokenIn`, `zapper` and `holder`.
|
|
16
|
+
*/
|
|
17
|
+
declare function checkPoolFunding(input: CheckPoolFundingInput): Promise<WalletFundingError[]>;
|
|
18
|
+
//#endregion
|
|
19
|
+
export { CheckPoolFundingInput, checkPoolFunding };
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { TokenAmount } from "../../../model/primitives.js";
|
|
2
|
+
import { InsufficientPoolLiquidityError, PoolPausedError, PoolSunsetError } from "../../../model/errors/operation-errors.js";
|
|
3
|
+
import "../../../model/index.js";
|
|
4
|
+
import { OnchainSDK } from "../../OnchainSDK.js";
|
|
5
|
+
import { Address } from "viem";
|
|
6
|
+
//#region src/onchain/validation/bundles/checkPoolOperation.d.ts
|
|
7
|
+
/** {@inheritDoc checkPoolOperation} */
|
|
8
|
+
type PoolOperationError = PoolPausedError | PoolSunsetError | InsufficientPoolLiquidityError;
|
|
9
|
+
interface PoolOperationArgs {
|
|
10
|
+
sdk: OnchainSDK;
|
|
11
|
+
/** Pool the liquidity moves through. */
|
|
12
|
+
pool: Address;
|
|
13
|
+
/** Whether the operation puts liquidity in rather than taking it out. */
|
|
14
|
+
isDeposit: boolean;
|
|
15
|
+
/**
|
|
16
|
+
* What the wallet receives. Weighed against the pool's liquidity on a
|
|
17
|
+
* withdrawal, where it is the underlying leaving the pool; on a deposit it
|
|
18
|
+
* is the shares the pool mints and nothing weighs it.
|
|
19
|
+
*/
|
|
20
|
+
tokenOut: TokenAmount;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* What the pool's own state stops, whichever side of it the wallet is on.
|
|
24
|
+
*
|
|
25
|
+
* The liquidity read is the market's rather than the trimmed figure a
|
|
26
|
+
* simulation carries: a withdrawal sized against that figure has to pass the
|
|
27
|
+
* check that follows it.
|
|
28
|
+
*/
|
|
29
|
+
declare function checkPoolOperation(args: PoolOperationArgs): PoolOperationError[];
|
|
30
|
+
//#endregion
|
|
31
|
+
export { PoolOperationArgs, PoolOperationError, checkPoolOperation };
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Token } from "../../../model/primitives.js";
|
|
2
|
+
import { QuotaLimitReachedError } from "../../../model/errors/operation-errors.js";
|
|
3
|
+
import "../../../model/index.js";
|
|
4
|
+
import { MarketSuite } from "../../market/MarketSuite.js";
|
|
5
|
+
import { CreditOperationPreview } from "./checkCreditOperation.js";
|
|
6
|
+
//#region src/onchain/validation/bundles/checkQuotasAsked.d.ts
|
|
7
|
+
/** Every quota the operation raises, against the room the keeper has left. */
|
|
8
|
+
declare function checkQuotasAsked(market: MarketSuite, preview: CreditOperationPreview, underlying: Token): QuotaLimitReachedError[];
|
|
9
|
+
//#endregion
|
|
10
|
+
export { checkQuotasAsked };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { RWAOperationArgs } from "../../../model/rwa.js";
|
|
2
|
+
import { RWAOpenRequirementsError } from "../../../model/errors/operation-errors.js";
|
|
3
|
+
import { UnexpectedFailureError } from "../../../model/errors/prepare-errors.js";
|
|
4
|
+
import "../../../model/index.js";
|
|
5
|
+
import { OnchainSDK } from "../../OnchainSDK.js";
|
|
6
|
+
import { Address } from "viem";
|
|
7
|
+
//#region src/onchain/validation/bundles/checkRWAOpenRequirements.d.ts
|
|
8
|
+
interface CheckRWAOpenRequirementsInput {
|
|
9
|
+
sdk: OnchainSDK;
|
|
10
|
+
wallet: Address;
|
|
11
|
+
creditManager: Address;
|
|
12
|
+
token: Address;
|
|
13
|
+
providedArgs: RWAOperationArgs;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* The RWA factory is satisfied that `wallet` may open on `token` with the
|
|
17
|
+
* registration args already on the transaction.
|
|
18
|
+
*/
|
|
19
|
+
declare function checkRWAOpenRequirements(input: CheckRWAOpenRequirementsInput): Promise<(RWAOpenRequirementsError | UnexpectedFailureError)[]>;
|
|
20
|
+
//#endregion
|
|
21
|
+
export { CheckRWAOpenRequirementsInput, checkRWAOpenRequirements };
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { RWAOpenRequirementsError } from "../../../model/errors/operation-errors.js";
|
|
2
|
+
import { UnexpectedFailureError } from "../../../model/errors/prepare-errors.js";
|
|
3
|
+
import { OpenRWAStrategyPositionPreview } from "../../../model/previews.js";
|
|
4
|
+
import "../../../model/index.js";
|
|
5
|
+
import { OnchainSDK } from "../../OnchainSDK.js";
|
|
6
|
+
import { Address } from "viem";
|
|
7
|
+
//#region src/onchain/validation/bundles/checkRWAOpening.d.ts
|
|
8
|
+
interface CheckRWAOpeningInput {
|
|
9
|
+
sdk: OnchainSDK;
|
|
10
|
+
preview: OpenRWAStrategyPositionPreview;
|
|
11
|
+
sender: Address;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Per factory-gated token among `collateralAdded ∪ quotas`, whether the
|
|
15
|
+
* borrower still has to register or sign before this opening can land.
|
|
16
|
+
*/
|
|
17
|
+
declare function checkRWAOpening(input: CheckRWAOpeningInput): Promise<(RWAOpenRequirementsError | UnexpectedFailureError)[]>;
|
|
18
|
+
//#endregion
|
|
19
|
+
export { CheckRWAOpeningInput, checkRWAOpening };
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { InsufficientAllowanceError, InsufficientBalanceError } from "../../../model/errors/operation-errors.js";
|
|
2
|
+
import { UnexpectedFailureError } from "../../../model/errors/prepare-errors.js";
|
|
3
|
+
import "../../../model/index.js";
|
|
4
|
+
import { OnchainSDK } from "../../OnchainSDK.js";
|
|
5
|
+
import { Address } from "viem";
|
|
6
|
+
//#region src/onchain/validation/bundles/checkWallet.d.ts
|
|
7
|
+
/** {@inheritDoc checkWallet} */
|
|
8
|
+
type WalletFundingError = InsufficientBalanceError | InsufficientAllowanceError | UnexpectedFailureError;
|
|
9
|
+
interface CheckWalletInput {
|
|
10
|
+
sdk: OnchainSDK;
|
|
11
|
+
token: Address;
|
|
12
|
+
holder: Address;
|
|
13
|
+
required: bigint;
|
|
14
|
+
spender?: Address;
|
|
15
|
+
blockNumber?: bigint;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* The wallet's whole side for one token: always the balance; the allowance
|
|
19
|
+
* only when it can matter (an ERC-20, with a spender who is not the holder).
|
|
20
|
+
*/
|
|
21
|
+
declare function checkWallet(input: CheckWalletInput): Promise<WalletFundingError[]>;
|
|
22
|
+
//#endregion
|
|
23
|
+
export { CheckWalletInput, WalletFundingError, checkWallet };
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { InsufficientAllowanceError } from "../../../model/errors/operation-errors.js";
|
|
2
|
+
import { UnexpectedFailureError } from "../../../model/errors/prepare-errors.js";
|
|
3
|
+
import "../../../model/index.js";
|
|
4
|
+
import { OnchainSDK } from "../../OnchainSDK.js";
|
|
5
|
+
import { Address } from "viem";
|
|
6
|
+
//#region src/onchain/validation/bundles/checkWalletAllowance.d.ts
|
|
7
|
+
interface CheckWalletAllowanceInput {
|
|
8
|
+
sdk: OnchainSDK;
|
|
9
|
+
token: Address;
|
|
10
|
+
owner: Address;
|
|
11
|
+
spender: Address;
|
|
12
|
+
required: bigint;
|
|
13
|
+
blockNumber?: bigint;
|
|
14
|
+
}
|
|
15
|
+
/** `owner` has approved `spender` for at least `required` of `token`. */
|
|
16
|
+
declare function checkWalletAllowance(input: CheckWalletAllowanceInput): Promise<(InsufficientAllowanceError | UnexpectedFailureError)[]>;
|
|
17
|
+
//#endregion
|
|
18
|
+
export { CheckWalletAllowanceInput, checkWalletAllowance };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { InsufficientBalanceError } from "../../../model/errors/operation-errors.js";
|
|
2
|
+
import { UnexpectedFailureError } from "../../../model/errors/prepare-errors.js";
|
|
3
|
+
import "../../../model/index.js";
|
|
4
|
+
import { OnchainSDK } from "../../OnchainSDK.js";
|
|
5
|
+
import { Address } from "viem";
|
|
6
|
+
//#region src/onchain/validation/bundles/checkWalletBalance.d.ts
|
|
7
|
+
interface CheckWalletBalanceInput {
|
|
8
|
+
sdk: OnchainSDK;
|
|
9
|
+
token: Address;
|
|
10
|
+
holder: Address;
|
|
11
|
+
required: bigint;
|
|
12
|
+
blockNumber?: bigint;
|
|
13
|
+
}
|
|
14
|
+
/** `holder` holds at least `required` of `token` (ERC-20 or native). */
|
|
15
|
+
declare function checkWalletBalance(input: CheckWalletBalanceInput): Promise<(InsufficientBalanceError | UnexpectedFailureError)[]>;
|
|
16
|
+
//#endregion
|
|
17
|
+
export { CheckWalletBalanceInput, checkWalletBalance };
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { checkAccountQuotas } from "./checkAccountQuotas.js";
|
|
2
|
+
import { CheckWalletInput, WalletFundingError, checkWallet } from "./checkWallet.js";
|
|
3
|
+
import { CheckCollateralFundingInput, CollateralFundingPreview, checkCollateralFunding } from "./checkCollateralFunding.js";
|
|
4
|
+
import { HealthFactorThresholds, WeighedFactors, checkHealthFactors } from "./checkHealthFactors.js";
|
|
5
|
+
import { MarketStateError, checkMarket } from "./checkMarket.js";
|
|
6
|
+
import { CreditOperationArgs, CreditOperationError, CreditOperationPreview, checkCreditOperation } from "./checkCreditOperation.js";
|
|
7
|
+
import { checkDraw } from "./checkDraw.js";
|
|
8
|
+
import { CheckLiquidationEligibilityInput, LiquidationEligibilityError, checkLiquidationEligibility } from "./checkLiquidationEligibility.js";
|
|
9
|
+
import { CheckLiquidationFundingInput, checkLiquidationFunding } from "./checkLiquidationFunding.js";
|
|
10
|
+
import { checkObtained } from "./checkObtained.js";
|
|
11
|
+
import { CheckPoolFundingInput, checkPoolFunding } from "./checkPoolFunding.js";
|
|
12
|
+
import { PoolOperationArgs, PoolOperationError, checkPoolOperation } from "./checkPoolOperation.js";
|
|
13
|
+
import { checkQuotasAsked } from "./checkQuotasAsked.js";
|
|
14
|
+
import { CheckRWAOpeningInput, checkRWAOpening } from "./checkRWAOpening.js";
|
|
15
|
+
import { CheckRWAOpenRequirementsInput, checkRWAOpenRequirements } from "./checkRWAOpenRequirements.js";
|
|
16
|
+
import { CheckWalletAllowanceInput, checkWalletAllowance } from "./checkWalletAllowance.js";
|
|
17
|
+
import { CheckWalletBalanceInput, checkWalletBalance } from "./checkWalletBalance.js";
|
|
18
|
+
export { CheckCollateralFundingInput, CheckLiquidationEligibilityInput, CheckLiquidationFundingInput, CheckPoolFundingInput, CheckRWAOpenRequirementsInput, CheckRWAOpeningInput, CheckWalletAllowanceInput, CheckWalletBalanceInput, CheckWalletInput, CollateralFundingPreview, CreditOperationArgs, CreditOperationError, CreditOperationPreview, HealthFactorThresholds, LiquidationEligibilityError, MarketStateError, PoolOperationArgs, PoolOperationError, WalletFundingError, WeighedFactors, checkAccountQuotas, checkCollateralFunding, checkCreditOperation, checkDraw, checkHealthFactors, checkLiquidationEligibility, checkLiquidationFunding, checkMarket, checkObtained, checkPoolFunding, checkPoolOperation, checkQuotasAsked, checkRWAOpenRequirements, checkRWAOpening, checkWallet, checkWalletAllowance, checkWalletBalance };
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { LiquidationDetails } from "../../model/liquidations.js";
|
|
2
|
+
import "../../model/index.js";
|
|
3
|
+
import { OnchainSDK } from "../OnchainSDK.js";
|
|
4
|
+
import { WalletFundingError } from "./bundles/checkWallet.js";
|
|
5
|
+
import { LiquidationEligibilityError } from "./bundles/checkLiquidationEligibility.js";
|
|
6
|
+
import { Address } from "viem";
|
|
7
|
+
//#region src/onchain/validation/checkLiquidation.d.ts
|
|
8
|
+
interface CheckLiquidationInput {
|
|
9
|
+
details: LiquidationDetails;
|
|
10
|
+
liquidator: Address;
|
|
11
|
+
}
|
|
12
|
+
interface CheckLiquidationOptions {
|
|
13
|
+
/** Block to read at; defaults to latest. Only set for testnet forks. */
|
|
14
|
+
blockNumber?: bigint;
|
|
15
|
+
}
|
|
16
|
+
/** {@inheritDoc checkLiquidation} */
|
|
17
|
+
type LiquidationValidationError = LiquidationEligibilityError | WalletFundingError;
|
|
18
|
+
/**
|
|
19
|
+
* Whether `liquidator` may send a full liquidation of this account
|
|
20
|
+
*/
|
|
21
|
+
declare function checkLiquidation(sdk: OnchainSDK, input: CheckLiquidationInput, options?: CheckLiquidationOptions): Promise<LiquidationValidationError[]>;
|
|
22
|
+
//#endregion
|
|
23
|
+
export { CheckLiquidationInput, CheckLiquidationOptions, LiquidationValidationError, checkLiquidation };
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { OperationPreview } from "../../model/previews.js";
|
|
2
|
+
import "../../model/index.js";
|
|
3
|
+
import { OnchainSDK } from "../OnchainSDK.js";
|
|
4
|
+
import { WalletFundingError } from "./bundles/checkWallet.js";
|
|
5
|
+
import { HealthFactorThresholds } from "./bundles/checkHealthFactors.js";
|
|
6
|
+
import { CreditOperationError } from "./bundles/checkCreditOperation.js";
|
|
7
|
+
import { PoolOperationError } from "./bundles/checkPoolOperation.js";
|
|
8
|
+
import { Address } from "viem";
|
|
9
|
+
//#region src/onchain/validation/checkOperation.d.ts
|
|
10
|
+
interface CheckOperationOptions extends HealthFactorThresholds {
|
|
11
|
+
/** Block to read at; defaults to latest. Only set for testnet forks. */
|
|
12
|
+
blockNumber?: bigint;
|
|
13
|
+
}
|
|
14
|
+
interface CheckOperationInput {
|
|
15
|
+
sdk: OnchainSDK;
|
|
16
|
+
preview: OperationPreview;
|
|
17
|
+
/** The wallet that signs. Its allowances, balances and RWA standing are read on-chain. */
|
|
18
|
+
sender: Address;
|
|
19
|
+
}
|
|
20
|
+
/** {@inheritDoc checkOperation} */
|
|
21
|
+
type OperationValidationError = CreditOperationError | PoolOperationError | WalletFundingError;
|
|
22
|
+
/**
|
|
23
|
+
* Whether a parsed operation may be signed by `sender`: protocol state first,
|
|
24
|
+
* then what the wallet has to approve, hold or sign.
|
|
25
|
+
*
|
|
26
|
+
* The array is in check order, most fundamental first, so a caller with room
|
|
27
|
+
* for one verdict reports the first entry. Approve and sign errors are picked
|
|
28
|
+
* out by `code`, not by position.
|
|
29
|
+
*/
|
|
30
|
+
declare function checkOperation(input: CheckOperationInput, options?: CheckOperationOptions): Promise<OperationValidationError[]>;
|
|
31
|
+
//#endregion
|
|
32
|
+
export { CheckOperationInput, CheckOperationOptions, OperationValidationError, checkOperation };
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { ChainId } from "../../model/primitives.js";
|
|
2
|
+
import { DebtOutOfRangeError, InsufficientCollateralError, QuotaCountExceededError } from "../../model/errors/operation-errors.js";
|
|
3
|
+
import "../../model/index.js";
|
|
4
|
+
import { PoolSimulation } from "../pools/types.js";
|
|
5
|
+
import { OnchainSDK } from "../OnchainSDK.js";
|
|
6
|
+
import { OperationState } from "../accounts/intents/types.js";
|
|
7
|
+
import { HealthFactorThresholds } from "./bundles/checkHealthFactors.js";
|
|
8
|
+
import { MarketStateError } from "./bundles/checkMarket.js";
|
|
9
|
+
import { PoolOperationError } from "./bundles/checkPoolOperation.js";
|
|
10
|
+
import { Address } from "viem";
|
|
11
|
+
//#region src/onchain/validation/checkSimulation.d.ts
|
|
12
|
+
/** A simulated credit operation, as the intents engine reports one. */
|
|
13
|
+
interface CreditSimulationInput {
|
|
14
|
+
chainId: ChainId;
|
|
15
|
+
state: OperationState;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* A simulated pool operation. The pool comes alongside the state, which names
|
|
19
|
+
* the tokens moving through it but not the market they belong to.
|
|
20
|
+
*/
|
|
21
|
+
interface PoolSimulationInput {
|
|
22
|
+
chainId: ChainId;
|
|
23
|
+
pool: Address;
|
|
24
|
+
state: PoolSimulation;
|
|
25
|
+
/** Whether the operation puts liquidity in rather than taking it out. */
|
|
26
|
+
isDeposit: boolean;
|
|
27
|
+
}
|
|
28
|
+
type CheckSimulationInput = CreditSimulationInput | PoolSimulationInput;
|
|
29
|
+
/** {@inheritDoc checkSimulation} */
|
|
30
|
+
type SimulationValidationError = MarketStateError | DebtOutOfRangeError | QuotaCountExceededError | InsufficientCollateralError | PoolOperationError;
|
|
31
|
+
/**
|
|
32
|
+
* Whether a simulated operation clears the caller's own thresholds.
|
|
33
|
+
*
|
|
34
|
+
* The engine holds an account to the facade's `1.0`, because its guards answer
|
|
35
|
+
* "would this revert". A form is wiser to ask for more, and the engine's own
|
|
36
|
+
* note says so — a caller wanting the stricter threshold applies it itself.
|
|
37
|
+
* This is that second opinion, over the numbers the engine already reported.
|
|
38
|
+
*
|
|
39
|
+
* Three of the checks on a credit account the engine does not make at all:
|
|
40
|
+
* both health-factor thresholds are its own `1.0`, and the quota count it never
|
|
41
|
+
* weighs. The other two run against the same numbers the engine used, and are
|
|
42
|
+
* here so that a change in the engine cannot pass silently.
|
|
43
|
+
*
|
|
44
|
+
* What is deliberately absent: the forbidden-token, quota-limit and funding
|
|
45
|
+
* checks all need the *delta* an operation applies, and `OperationState` reports
|
|
46
|
+
* only the state after it. Weighing them against absolutes would stop a
|
|
47
|
+
* forbidden token the account merely holds, or a quota the operation never
|
|
48
|
+
* touched. The engine performed all three during the walk, so a simulation that
|
|
49
|
+
* came back `ok` has already passed them.
|
|
50
|
+
*
|
|
51
|
+
* A pool operation has no account to weigh, so what is left is the pool's own
|
|
52
|
+
* state — which the engine does not read either.
|
|
53
|
+
*/
|
|
54
|
+
declare function checkSimulation(sdk: OnchainSDK, input: CheckSimulationInput, options?: HealthFactorThresholds): SimulationValidationError[];
|
|
55
|
+
//#endregion
|
|
56
|
+
export { CheckSimulationInput, CreditSimulationInput, PoolSimulationInput, SimulationValidationError, checkSimulation };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Token } from "../../../model/primitives.js";
|
|
2
|
+
import { BorrowLimitCause, InsufficientPoolLiquidityError } from "../../../model/errors/operation-errors.js";
|
|
3
|
+
import "../../../model/index.js";
|
|
4
|
+
//#region src/onchain/validation/checks/checkBorrowLimit.d.ts
|
|
5
|
+
interface BorrowLimitArgs {
|
|
6
|
+
requested: bigint;
|
|
7
|
+
available: bigint;
|
|
8
|
+
limit: BorrowLimitCause;
|
|
9
|
+
underlying: Token;
|
|
10
|
+
maxBorrowAmount?: bigint;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* What the pool will hand over, against what is asked for.
|
|
14
|
+
*
|
|
15
|
+
* `available` and `limit` are the caller's reading of which limit is in the
|
|
16
|
+
* way; this check only compares. `maxBorrowAmount` is the largest debt still
|
|
17
|
+
* takeable, left out when none is.
|
|
18
|
+
*/
|
|
19
|
+
declare function checkBorrowLimit(args: BorrowLimitArgs): InsufficientPoolLiquidityError[];
|
|
20
|
+
//#endregion
|
|
21
|
+
export { BorrowLimitArgs, checkBorrowLimit };
|