import { type Address, type Client, type GetContractReturnType, type PublicClient } from 'viem'; import { priceAndFeeCalculatorV2Abi } from '../abis/priceAndFeeCalculatorV2'; import type { ContractVersion } from '../types'; export type PriceAndFeeCalculatorContract = GetContractReturnType; export declare function getPriceAndFeeCalculator(client: T, address: Address): PriceAndFeeCalculatorContract; type SyncRedeemReadOptions = { blockNumber?: bigint; blockTimestamp?: bigint; }; /** Breakdown of the effective sync redeem multiplier, in basis points. */ export interface SyncRedeemRate { /** Base sync redeem multiplier (tokensDetails.syncRedeemMultiplier). */ baseMultiplierBps: bigint; /** Dynamic premium charged for the current oracle price age. */ dynamicPremiumBps: bigint; /** Multiplier actually applied to size the redemption (base - dynamic premium). */ effectiveMultiplierBps: bigint; } /** * Reads the live sync redeem rate, replicating the provisioner's effective-multiplier * derivation (base multiplier minus a price-age-proportional dynamic premium). * * @throws {StalePriceError} If the oracle price is older than the configured max age, * in which case the on-chain sync redeem would revert. */ export declare function getSyncRedeemRate(client: PublicClient, provisioner: Address, vault: Address, token: Address, feeCalculator: Address, options?: SyncRedeemReadOptions): Promise; export declare function getSyncRedeemTokenOut(client: PublicClient, provisioner: Address, feeCalculator: Address, feeCalculatorVersion: ContractVersion, vault: Address, token: Address, unitsIn: bigint, effectiveMultiplierBps?: bigint, options?: SyncRedeemReadOptions): Promise; export declare function getAsyncDepositUnitsOut(client: PublicClient, provisioner: Address, feeCalculator: Address, feeCalculatorVersion: ContractVersion, vault: Address, token: Address, tokensIn: bigint): Promise; export declare function getSyncDepositUnitsOut(client: PublicClient, provisioner: Address, feeCalculator: Address, feeCalculatorVersion: ContractVersion, vault: Address, token: Address, tokensIn: bigint): Promise; export declare function getAsyncRedeemTokenOut(client: PublicClient, provisioner: Address, feeCalculator: Address, feeCalculatorVersion: ContractVersion, vault: Address, token: Address, unitsIn: bigint): Promise; export declare function getAsyncWithdrawUnitsIn(client: PublicClient, provisioner: Address, feeCalculator: Address, feeCalculatorVersion: ContractVersion, vault: Address, token: Address, tokensOut: bigint): Promise; export declare function getSyncWithdrawUnitsIn(client: PublicClient, provisioner: Address, feeCalculator: Address, feeCalculatorVersion: ContractVersion, vault: Address, token: Address, tokensOut: bigint, effectiveMultiplierBps?: bigint, options?: SyncRedeemReadOptions): Promise; /** Current sync redeem epoch accounting, in numeraire (all values uint256). */ export interface SyncRedeemEpochState { epochTimestamp: bigint; epochStartTvlNumeraire: bigint; epochRedeemedNumeraire: bigint; epochCapNumeraire: bigint; } export declare function getSyncRedeemEpochState(client: PublicClient, provisioner: Address, options?: SyncRedeemReadOptions): Promise; /** * Raw expiry timestamp for the user's latest sync-deposit lock (0 if none was recorded). * The user is locked while this value is greater than or equal to the relevant block timestamp. */ export declare function getUserUnitsRefundableUntil(client: PublicClient, provisioner: Address, user: Address, options?: SyncRedeemReadOptions): Promise; export declare function depositTxRequest(provisioner: Address, token: Address, tokensIn: bigint, minUnitsOut: bigint, receiver: Address, account: Address): { address: `0x${string}`; abi: readonly [{ readonly type: "function"; readonly inputs: readonly []; readonly name: "SOLVING_GATE_ENABLED"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "bool"; readonly type: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "tokensIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "minUnitsOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "deposit"; readonly outputs: readonly [{ readonly name: "unitsOut"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "depositor"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "depositReceiverApprovals"; readonly outputs: readonly [{ readonly name: "approved"; readonly internalType: "bool"; readonly type: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "tokensIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "minUnitsOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "solverTip"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "deadline"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "maxPriceAge"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "isFixedPrice"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "requestDeposit"; readonly outputs: readonly [{ readonly name: "depositRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "getSyncRedeemDetails"; readonly outputs: readonly [{ readonly name: "maxPriceAge"; readonly internalType: "uint24"; readonly type: "uint24"; }, { readonly name: "relativeCapBps"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "maxDynamicPremiumBps"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "epochTimestamp"; readonly internalType: "uint32"; readonly type: "uint32"; }, { readonly name: "absoluteCapNumeraire"; readonly internalType: "uint80"; readonly type: "uint80"; }, { readonly name: "epochRedeemedNumeraire"; readonly internalType: "uint80"; readonly type: "uint80"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "getSyncRedeemEpochState"; readonly outputs: readonly [{ readonly name: "epochTimestamp"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "epochStartTvlNumeraire"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "epochRedeemedNumeraire"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "epochCapNumeraire"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "user"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "userUnitsRefundableUntil"; readonly outputs: readonly [{ readonly name: "unitsLockedUntil"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "depositor"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "approved"; readonly internalType: "bool"; readonly type: "bool"; }]; readonly name: "setDepositReceiverApproval"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "solvingGate"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "address"; readonly type: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }]; readonly name: "tokensDetails"; readonly outputs: readonly [{ readonly name: "asyncDepositEnabled"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "asyncRedeemEnabled"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "syncDepositEnabled"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "syncRedeemEnabled"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "asyncDepositMultiplier"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "asyncRedeemMultiplier"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "syncDepositMultiplier"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "syncRedeemMultiplier"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "pushFundsSubmitDataPointer"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "pullFundsSubmitDataPointer"; readonly internalType: "address"; readonly type: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "minTokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "solverTip"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "deadline"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "maxPriceAge"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "isFixedPrice"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "requestRedeem"; readonly outputs: readonly [{ readonly name: "redeemRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "minTokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "redeem"; readonly outputs: readonly [{ readonly name: "tokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "tokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "maxUnitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "withdraw"; readonly outputs: readonly [{ readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "asyncRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; }]; readonly name: "asyncRequestHashes"; readonly outputs: readonly [{ readonly name: "exists"; readonly internalType: "bool"; readonly type: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "version"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "string"; readonly type: "string"; }]; readonly stateMutability: "pure"; }, { readonly type: "event"; readonly inputs: readonly [{ readonly name: "user"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; readonly indexed: true; }, { readonly name: "tokensIn"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "minUnitsOut"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "solverTip"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "deadline"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "maxPriceAge"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "isFixedPrice"; readonly internalType: "bool"; readonly type: "bool"; readonly indexed: false; }, { readonly name: "depositRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; readonly indexed: false; }]; readonly name: "DepositRequested"; readonly anonymous: false; }, { readonly type: "event"; readonly inputs: readonly [{ readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "depositor"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "approved"; readonly internalType: "bool"; readonly type: "bool"; readonly indexed: false; }]; readonly name: "DepositReceiverApprovalSet"; readonly anonymous: false; }, { readonly type: "event"; readonly inputs: readonly [{ readonly name: "user"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; readonly indexed: true; }, { readonly name: "minTokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "solverTip"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "deadline"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "maxPriceAge"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "isFixedPrice"; readonly internalType: "bool"; readonly type: "bool"; readonly indexed: false; }, { readonly name: "redeemRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; readonly indexed: false; }]; readonly name: "RedeemRequested"; readonly anonymous: false; }, { readonly type: "event"; readonly inputs: readonly [{ readonly name: "user"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; readonly indexed: true; }, { readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "tokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }]; readonly name: "Redeemed"; readonly anonymous: false; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__AsyncDepositDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__AsyncRedeemDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__AutoPriceSolveNotAllowed"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__CallerIsNotRequestUser"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__CallerIsVault"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__CancellationFeeExceedsRequestAmount"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DeadlineInFutureAndUnauthorized"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DeadlineInPast"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DeadlineTooFarInFuture"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositCancellationDetailsNotZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositCapExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositCapZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositHashNotFound"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositRequestCancellationDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__FixedPriceSolverTipNotAllowed"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__HashCollision"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__HashNotFound"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__InvalidToken"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MaxDepositRefundTimeoutExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MaxTokensInExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MaxUnitsInExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MinTokensOutNotMet"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MinUnitsOutNotMet"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MultiplierOutOfRange"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__PriceAndFeeCalculatorVaultPaused"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__PullFundsSubmitDataNotSet"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ReceiverNotApproved"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RedeemCancellationCapNumeraireZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RedeemCancellationDetailsNotZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RedeemRequestCancellationDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RefundPeriodExpired"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RequestAmountExceedsRefundCap"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SolvingGateDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SolvingPaused"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncDepositDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemAbsoluteCapNumeraireZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemEpochCapExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemMaxDynamicPremiumBpsTooHigh"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemMaxPriceAgeExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemMaxPriceAgeZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemNotConfigured"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemRelativeCapBpsTooHigh"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemRelativeCapBpsZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__TokenCantBePriced"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__TokensZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__Unauthorized"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__UnitsLocked"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__UnitsZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ZeroAddressAuthority"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ZeroAddressMultiDepositorVault"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ZeroAddressPriceAndFeeCalculator"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ZeroAddressReceiver"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "ReentrancyGuardReentrantCall"; }, { readonly type: "error"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "SafeERC20FailedOperation"; }]; functionName: "deposit"; args: readonly [`0x${string}`, bigint, bigint, `0x${string}`]; account: `0x${string}`; }; export declare function requestDepositTxRequest(provisioner: Address, token: Address, tokensIn: bigint, minUnitsOut: bigint, solverTip: bigint, deadline: bigint, maxPriceAge: bigint, isFixedPrice: boolean, receiver: Address, account: Address): { address: `0x${string}`; abi: readonly [{ readonly type: "function"; readonly inputs: readonly []; readonly name: "SOLVING_GATE_ENABLED"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "bool"; readonly type: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "tokensIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "minUnitsOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "deposit"; readonly outputs: readonly [{ readonly name: "unitsOut"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "depositor"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "depositReceiverApprovals"; readonly outputs: readonly [{ readonly name: "approved"; readonly internalType: "bool"; readonly type: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "tokensIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "minUnitsOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "solverTip"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "deadline"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "maxPriceAge"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "isFixedPrice"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "requestDeposit"; readonly outputs: readonly [{ readonly name: "depositRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "getSyncRedeemDetails"; readonly outputs: readonly [{ readonly name: "maxPriceAge"; readonly internalType: "uint24"; readonly type: "uint24"; }, { readonly name: "relativeCapBps"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "maxDynamicPremiumBps"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "epochTimestamp"; readonly internalType: "uint32"; readonly type: "uint32"; }, { readonly name: "absoluteCapNumeraire"; readonly internalType: "uint80"; readonly type: "uint80"; }, { readonly name: "epochRedeemedNumeraire"; readonly internalType: "uint80"; readonly type: "uint80"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "getSyncRedeemEpochState"; readonly outputs: readonly [{ readonly name: "epochTimestamp"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "epochStartTvlNumeraire"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "epochRedeemedNumeraire"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "epochCapNumeraire"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "user"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "userUnitsRefundableUntil"; readonly outputs: readonly [{ readonly name: "unitsLockedUntil"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "depositor"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "approved"; readonly internalType: "bool"; readonly type: "bool"; }]; readonly name: "setDepositReceiverApproval"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "solvingGate"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "address"; readonly type: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }]; readonly name: "tokensDetails"; readonly outputs: readonly [{ readonly name: "asyncDepositEnabled"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "asyncRedeemEnabled"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "syncDepositEnabled"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "syncRedeemEnabled"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "asyncDepositMultiplier"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "asyncRedeemMultiplier"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "syncDepositMultiplier"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "syncRedeemMultiplier"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "pushFundsSubmitDataPointer"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "pullFundsSubmitDataPointer"; readonly internalType: "address"; readonly type: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "minTokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "solverTip"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "deadline"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "maxPriceAge"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "isFixedPrice"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "requestRedeem"; readonly outputs: readonly [{ readonly name: "redeemRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "minTokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "redeem"; readonly outputs: readonly [{ readonly name: "tokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "tokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "maxUnitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "withdraw"; readonly outputs: readonly [{ readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "asyncRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; }]; readonly name: "asyncRequestHashes"; readonly outputs: readonly [{ readonly name: "exists"; readonly internalType: "bool"; readonly type: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "version"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "string"; readonly type: "string"; }]; readonly stateMutability: "pure"; }, { readonly type: "event"; readonly inputs: readonly [{ readonly name: "user"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; readonly indexed: true; }, { readonly name: "tokensIn"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "minUnitsOut"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "solverTip"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "deadline"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "maxPriceAge"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "isFixedPrice"; readonly internalType: "bool"; readonly type: "bool"; readonly indexed: false; }, { readonly name: "depositRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; readonly indexed: false; }]; readonly name: "DepositRequested"; readonly anonymous: false; }, { readonly type: "event"; readonly inputs: readonly [{ readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "depositor"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "approved"; readonly internalType: "bool"; readonly type: "bool"; readonly indexed: false; }]; readonly name: "DepositReceiverApprovalSet"; readonly anonymous: false; }, { readonly type: "event"; readonly inputs: readonly [{ readonly name: "user"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; readonly indexed: true; }, { readonly name: "minTokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "solverTip"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "deadline"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "maxPriceAge"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "isFixedPrice"; readonly internalType: "bool"; readonly type: "bool"; readonly indexed: false; }, { readonly name: "redeemRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; readonly indexed: false; }]; readonly name: "RedeemRequested"; readonly anonymous: false; }, { readonly type: "event"; readonly inputs: readonly [{ readonly name: "user"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; readonly indexed: true; }, { readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "tokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }]; readonly name: "Redeemed"; readonly anonymous: false; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__AsyncDepositDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__AsyncRedeemDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__AutoPriceSolveNotAllowed"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__CallerIsNotRequestUser"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__CallerIsVault"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__CancellationFeeExceedsRequestAmount"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DeadlineInFutureAndUnauthorized"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DeadlineInPast"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DeadlineTooFarInFuture"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositCancellationDetailsNotZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositCapExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositCapZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositHashNotFound"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositRequestCancellationDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__FixedPriceSolverTipNotAllowed"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__HashCollision"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__HashNotFound"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__InvalidToken"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MaxDepositRefundTimeoutExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MaxTokensInExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MaxUnitsInExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MinTokensOutNotMet"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MinUnitsOutNotMet"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MultiplierOutOfRange"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__PriceAndFeeCalculatorVaultPaused"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__PullFundsSubmitDataNotSet"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ReceiverNotApproved"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RedeemCancellationCapNumeraireZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RedeemCancellationDetailsNotZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RedeemRequestCancellationDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RefundPeriodExpired"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RequestAmountExceedsRefundCap"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SolvingGateDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SolvingPaused"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncDepositDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemAbsoluteCapNumeraireZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemEpochCapExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemMaxDynamicPremiumBpsTooHigh"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemMaxPriceAgeExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemMaxPriceAgeZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemNotConfigured"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemRelativeCapBpsTooHigh"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemRelativeCapBpsZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__TokenCantBePriced"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__TokensZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__Unauthorized"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__UnitsLocked"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__UnitsZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ZeroAddressAuthority"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ZeroAddressMultiDepositorVault"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ZeroAddressPriceAndFeeCalculator"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ZeroAddressReceiver"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "ReentrancyGuardReentrantCall"; }, { readonly type: "error"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "SafeERC20FailedOperation"; }]; functionName: "requestDeposit"; args: readonly [`0x${string}`, bigint, bigint, bigint, bigint, bigint, boolean, `0x${string}`]; account: `0x${string}`; }; export declare function setDepositReceiverApprovalTxRequest(provisioner: Address, depositor: Address, approved: boolean, receiver: Address): { address: `0x${string}`; abi: readonly [{ readonly type: "function"; readonly inputs: readonly []; readonly name: "SOLVING_GATE_ENABLED"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "bool"; readonly type: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "tokensIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "minUnitsOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "deposit"; readonly outputs: readonly [{ readonly name: "unitsOut"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "depositor"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "depositReceiverApprovals"; readonly outputs: readonly [{ readonly name: "approved"; readonly internalType: "bool"; readonly type: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "tokensIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "minUnitsOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "solverTip"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "deadline"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "maxPriceAge"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "isFixedPrice"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "requestDeposit"; readonly outputs: readonly [{ readonly name: "depositRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "getSyncRedeemDetails"; readonly outputs: readonly [{ readonly name: "maxPriceAge"; readonly internalType: "uint24"; readonly type: "uint24"; }, { readonly name: "relativeCapBps"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "maxDynamicPremiumBps"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "epochTimestamp"; readonly internalType: "uint32"; readonly type: "uint32"; }, { readonly name: "absoluteCapNumeraire"; readonly internalType: "uint80"; readonly type: "uint80"; }, { readonly name: "epochRedeemedNumeraire"; readonly internalType: "uint80"; readonly type: "uint80"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "getSyncRedeemEpochState"; readonly outputs: readonly [{ readonly name: "epochTimestamp"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "epochStartTvlNumeraire"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "epochRedeemedNumeraire"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "epochCapNumeraire"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "user"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "userUnitsRefundableUntil"; readonly outputs: readonly [{ readonly name: "unitsLockedUntil"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "depositor"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "approved"; readonly internalType: "bool"; readonly type: "bool"; }]; readonly name: "setDepositReceiverApproval"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "solvingGate"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "address"; readonly type: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }]; readonly name: "tokensDetails"; readonly outputs: readonly [{ readonly name: "asyncDepositEnabled"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "asyncRedeemEnabled"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "syncDepositEnabled"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "syncRedeemEnabled"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "asyncDepositMultiplier"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "asyncRedeemMultiplier"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "syncDepositMultiplier"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "syncRedeemMultiplier"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "pushFundsSubmitDataPointer"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "pullFundsSubmitDataPointer"; readonly internalType: "address"; readonly type: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "minTokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "solverTip"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "deadline"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "maxPriceAge"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "isFixedPrice"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "requestRedeem"; readonly outputs: readonly [{ readonly name: "redeemRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "minTokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "redeem"; readonly outputs: readonly [{ readonly name: "tokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "tokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "maxUnitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "withdraw"; readonly outputs: readonly [{ readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "asyncRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; }]; readonly name: "asyncRequestHashes"; readonly outputs: readonly [{ readonly name: "exists"; readonly internalType: "bool"; readonly type: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "version"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "string"; readonly type: "string"; }]; readonly stateMutability: "pure"; }, { readonly type: "event"; readonly inputs: readonly [{ readonly name: "user"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; readonly indexed: true; }, { readonly name: "tokensIn"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "minUnitsOut"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "solverTip"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "deadline"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "maxPriceAge"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "isFixedPrice"; readonly internalType: "bool"; readonly type: "bool"; readonly indexed: false; }, { readonly name: "depositRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; readonly indexed: false; }]; readonly name: "DepositRequested"; readonly anonymous: false; }, { readonly type: "event"; readonly inputs: readonly [{ readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "depositor"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "approved"; readonly internalType: "bool"; readonly type: "bool"; readonly indexed: false; }]; readonly name: "DepositReceiverApprovalSet"; readonly anonymous: false; }, { readonly type: "event"; readonly inputs: readonly [{ readonly name: "user"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; readonly indexed: true; }, { readonly name: "minTokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "solverTip"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "deadline"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "maxPriceAge"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "isFixedPrice"; readonly internalType: "bool"; readonly type: "bool"; readonly indexed: false; }, { readonly name: "redeemRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; readonly indexed: false; }]; readonly name: "RedeemRequested"; readonly anonymous: false; }, { readonly type: "event"; readonly inputs: readonly [{ readonly name: "user"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; readonly indexed: true; }, { readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "tokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }]; readonly name: "Redeemed"; readonly anonymous: false; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__AsyncDepositDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__AsyncRedeemDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__AutoPriceSolveNotAllowed"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__CallerIsNotRequestUser"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__CallerIsVault"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__CancellationFeeExceedsRequestAmount"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DeadlineInFutureAndUnauthorized"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DeadlineInPast"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DeadlineTooFarInFuture"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositCancellationDetailsNotZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositCapExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositCapZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositHashNotFound"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositRequestCancellationDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__FixedPriceSolverTipNotAllowed"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__HashCollision"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__HashNotFound"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__InvalidToken"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MaxDepositRefundTimeoutExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MaxTokensInExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MaxUnitsInExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MinTokensOutNotMet"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MinUnitsOutNotMet"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MultiplierOutOfRange"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__PriceAndFeeCalculatorVaultPaused"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__PullFundsSubmitDataNotSet"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ReceiverNotApproved"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RedeemCancellationCapNumeraireZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RedeemCancellationDetailsNotZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RedeemRequestCancellationDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RefundPeriodExpired"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RequestAmountExceedsRefundCap"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SolvingGateDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SolvingPaused"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncDepositDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemAbsoluteCapNumeraireZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemEpochCapExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemMaxDynamicPremiumBpsTooHigh"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemMaxPriceAgeExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemMaxPriceAgeZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemNotConfigured"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemRelativeCapBpsTooHigh"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemRelativeCapBpsZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__TokenCantBePriced"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__TokensZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__Unauthorized"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__UnitsLocked"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__UnitsZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ZeroAddressAuthority"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ZeroAddressMultiDepositorVault"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ZeroAddressPriceAndFeeCalculator"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ZeroAddressReceiver"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "ReentrancyGuardReentrantCall"; }, { readonly type: "error"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "SafeERC20FailedOperation"; }]; functionName: "setDepositReceiverApproval"; args: readonly [`0x${string}`, boolean]; account: `0x${string}`; }; export declare function requestRedeemTxRequest(provisioner: Address, token: Address, unitsIn: bigint, minTokenOut: bigint, solverTip: bigint, deadline: bigint, maxPriceAge: bigint, isFixedPrice: boolean, receiver: Address, account: Address): { address: `0x${string}`; abi: readonly [{ readonly type: "function"; readonly inputs: readonly []; readonly name: "SOLVING_GATE_ENABLED"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "bool"; readonly type: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "tokensIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "minUnitsOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "deposit"; readonly outputs: readonly [{ readonly name: "unitsOut"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "depositor"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "depositReceiverApprovals"; readonly outputs: readonly [{ readonly name: "approved"; readonly internalType: "bool"; readonly type: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "tokensIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "minUnitsOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "solverTip"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "deadline"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "maxPriceAge"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "isFixedPrice"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "requestDeposit"; readonly outputs: readonly [{ readonly name: "depositRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "getSyncRedeemDetails"; readonly outputs: readonly [{ readonly name: "maxPriceAge"; readonly internalType: "uint24"; readonly type: "uint24"; }, { readonly name: "relativeCapBps"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "maxDynamicPremiumBps"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "epochTimestamp"; readonly internalType: "uint32"; readonly type: "uint32"; }, { readonly name: "absoluteCapNumeraire"; readonly internalType: "uint80"; readonly type: "uint80"; }, { readonly name: "epochRedeemedNumeraire"; readonly internalType: "uint80"; readonly type: "uint80"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "getSyncRedeemEpochState"; readonly outputs: readonly [{ readonly name: "epochTimestamp"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "epochStartTvlNumeraire"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "epochRedeemedNumeraire"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "epochCapNumeraire"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "user"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "userUnitsRefundableUntil"; readonly outputs: readonly [{ readonly name: "unitsLockedUntil"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "depositor"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "approved"; readonly internalType: "bool"; readonly type: "bool"; }]; readonly name: "setDepositReceiverApproval"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "solvingGate"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "address"; readonly type: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }]; readonly name: "tokensDetails"; readonly outputs: readonly [{ readonly name: "asyncDepositEnabled"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "asyncRedeemEnabled"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "syncDepositEnabled"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "syncRedeemEnabled"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "asyncDepositMultiplier"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "asyncRedeemMultiplier"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "syncDepositMultiplier"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "syncRedeemMultiplier"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "pushFundsSubmitDataPointer"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "pullFundsSubmitDataPointer"; readonly internalType: "address"; readonly type: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "minTokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "solverTip"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "deadline"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "maxPriceAge"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "isFixedPrice"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "requestRedeem"; readonly outputs: readonly [{ readonly name: "redeemRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "minTokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "redeem"; readonly outputs: readonly [{ readonly name: "tokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "tokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "maxUnitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "withdraw"; readonly outputs: readonly [{ readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "asyncRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; }]; readonly name: "asyncRequestHashes"; readonly outputs: readonly [{ readonly name: "exists"; readonly internalType: "bool"; readonly type: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "version"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "string"; readonly type: "string"; }]; readonly stateMutability: "pure"; }, { readonly type: "event"; readonly inputs: readonly [{ readonly name: "user"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; readonly indexed: true; }, { readonly name: "tokensIn"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "minUnitsOut"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "solverTip"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "deadline"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "maxPriceAge"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "isFixedPrice"; readonly internalType: "bool"; readonly type: "bool"; readonly indexed: false; }, { readonly name: "depositRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; readonly indexed: false; }]; readonly name: "DepositRequested"; readonly anonymous: false; }, { readonly type: "event"; readonly inputs: readonly [{ readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "depositor"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "approved"; readonly internalType: "bool"; readonly type: "bool"; readonly indexed: false; }]; readonly name: "DepositReceiverApprovalSet"; readonly anonymous: false; }, { readonly type: "event"; readonly inputs: readonly [{ readonly name: "user"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; readonly indexed: true; }, { readonly name: "minTokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "solverTip"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "deadline"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "maxPriceAge"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "isFixedPrice"; readonly internalType: "bool"; readonly type: "bool"; readonly indexed: false; }, { readonly name: "redeemRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; readonly indexed: false; }]; readonly name: "RedeemRequested"; readonly anonymous: false; }, { readonly type: "event"; readonly inputs: readonly [{ readonly name: "user"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; readonly indexed: true; }, { readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "tokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }]; readonly name: "Redeemed"; readonly anonymous: false; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__AsyncDepositDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__AsyncRedeemDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__AutoPriceSolveNotAllowed"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__CallerIsNotRequestUser"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__CallerIsVault"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__CancellationFeeExceedsRequestAmount"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DeadlineInFutureAndUnauthorized"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DeadlineInPast"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DeadlineTooFarInFuture"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositCancellationDetailsNotZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositCapExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositCapZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositHashNotFound"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositRequestCancellationDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__FixedPriceSolverTipNotAllowed"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__HashCollision"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__HashNotFound"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__InvalidToken"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MaxDepositRefundTimeoutExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MaxTokensInExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MaxUnitsInExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MinTokensOutNotMet"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MinUnitsOutNotMet"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MultiplierOutOfRange"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__PriceAndFeeCalculatorVaultPaused"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__PullFundsSubmitDataNotSet"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ReceiverNotApproved"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RedeemCancellationCapNumeraireZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RedeemCancellationDetailsNotZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RedeemRequestCancellationDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RefundPeriodExpired"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RequestAmountExceedsRefundCap"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SolvingGateDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SolvingPaused"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncDepositDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemAbsoluteCapNumeraireZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemEpochCapExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemMaxDynamicPremiumBpsTooHigh"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemMaxPriceAgeExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemMaxPriceAgeZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemNotConfigured"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemRelativeCapBpsTooHigh"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemRelativeCapBpsZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__TokenCantBePriced"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__TokensZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__Unauthorized"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__UnitsLocked"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__UnitsZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ZeroAddressAuthority"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ZeroAddressMultiDepositorVault"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ZeroAddressPriceAndFeeCalculator"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ZeroAddressReceiver"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "ReentrancyGuardReentrantCall"; }, { readonly type: "error"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "SafeERC20FailedOperation"; }]; functionName: "requestRedeem"; args: readonly [`0x${string}`, bigint, bigint, bigint, bigint, bigint, boolean, `0x${string}`]; account: `0x${string}`; }; export declare function redeemTxRequest(provisioner: Address, token: Address, unitsIn: bigint, minTokenOut: bigint, receiver: Address, account: Address): { address: `0x${string}`; abi: readonly [{ readonly type: "function"; readonly inputs: readonly []; readonly name: "SOLVING_GATE_ENABLED"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "bool"; readonly type: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "tokensIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "minUnitsOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "deposit"; readonly outputs: readonly [{ readonly name: "unitsOut"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "depositor"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "depositReceiverApprovals"; readonly outputs: readonly [{ readonly name: "approved"; readonly internalType: "bool"; readonly type: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "tokensIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "minUnitsOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "solverTip"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "deadline"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "maxPriceAge"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "isFixedPrice"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "requestDeposit"; readonly outputs: readonly [{ readonly name: "depositRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "getSyncRedeemDetails"; readonly outputs: readonly [{ readonly name: "maxPriceAge"; readonly internalType: "uint24"; readonly type: "uint24"; }, { readonly name: "relativeCapBps"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "maxDynamicPremiumBps"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "epochTimestamp"; readonly internalType: "uint32"; readonly type: "uint32"; }, { readonly name: "absoluteCapNumeraire"; readonly internalType: "uint80"; readonly type: "uint80"; }, { readonly name: "epochRedeemedNumeraire"; readonly internalType: "uint80"; readonly type: "uint80"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "getSyncRedeemEpochState"; readonly outputs: readonly [{ readonly name: "epochTimestamp"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "epochStartTvlNumeraire"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "epochRedeemedNumeraire"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "epochCapNumeraire"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "user"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "userUnitsRefundableUntil"; readonly outputs: readonly [{ readonly name: "unitsLockedUntil"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "depositor"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "approved"; readonly internalType: "bool"; readonly type: "bool"; }]; readonly name: "setDepositReceiverApproval"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "solvingGate"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "address"; readonly type: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }]; readonly name: "tokensDetails"; readonly outputs: readonly [{ readonly name: "asyncDepositEnabled"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "asyncRedeemEnabled"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "syncDepositEnabled"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "syncRedeemEnabled"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "asyncDepositMultiplier"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "asyncRedeemMultiplier"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "syncDepositMultiplier"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "syncRedeemMultiplier"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "pushFundsSubmitDataPointer"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "pullFundsSubmitDataPointer"; readonly internalType: "address"; readonly type: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "minTokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "solverTip"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "deadline"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "maxPriceAge"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "isFixedPrice"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "requestRedeem"; readonly outputs: readonly [{ readonly name: "redeemRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "minTokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "redeem"; readonly outputs: readonly [{ readonly name: "tokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "tokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "maxUnitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "withdraw"; readonly outputs: readonly [{ readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "asyncRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; }]; readonly name: "asyncRequestHashes"; readonly outputs: readonly [{ readonly name: "exists"; readonly internalType: "bool"; readonly type: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "version"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "string"; readonly type: "string"; }]; readonly stateMutability: "pure"; }, { readonly type: "event"; readonly inputs: readonly [{ readonly name: "user"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; readonly indexed: true; }, { readonly name: "tokensIn"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "minUnitsOut"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "solverTip"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "deadline"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "maxPriceAge"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "isFixedPrice"; readonly internalType: "bool"; readonly type: "bool"; readonly indexed: false; }, { readonly name: "depositRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; readonly indexed: false; }]; readonly name: "DepositRequested"; readonly anonymous: false; }, { readonly type: "event"; readonly inputs: readonly [{ readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "depositor"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "approved"; readonly internalType: "bool"; readonly type: "bool"; readonly indexed: false; }]; readonly name: "DepositReceiverApprovalSet"; readonly anonymous: false; }, { readonly type: "event"; readonly inputs: readonly [{ readonly name: "user"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; readonly indexed: true; }, { readonly name: "minTokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "solverTip"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "deadline"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "maxPriceAge"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "isFixedPrice"; readonly internalType: "bool"; readonly type: "bool"; readonly indexed: false; }, { readonly name: "redeemRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; readonly indexed: false; }]; readonly name: "RedeemRequested"; readonly anonymous: false; }, { readonly type: "event"; readonly inputs: readonly [{ readonly name: "user"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; readonly indexed: true; }, { readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "tokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }]; readonly name: "Redeemed"; readonly anonymous: false; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__AsyncDepositDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__AsyncRedeemDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__AutoPriceSolveNotAllowed"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__CallerIsNotRequestUser"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__CallerIsVault"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__CancellationFeeExceedsRequestAmount"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DeadlineInFutureAndUnauthorized"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DeadlineInPast"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DeadlineTooFarInFuture"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositCancellationDetailsNotZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositCapExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositCapZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositHashNotFound"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositRequestCancellationDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__FixedPriceSolverTipNotAllowed"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__HashCollision"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__HashNotFound"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__InvalidToken"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MaxDepositRefundTimeoutExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MaxTokensInExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MaxUnitsInExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MinTokensOutNotMet"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MinUnitsOutNotMet"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MultiplierOutOfRange"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__PriceAndFeeCalculatorVaultPaused"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__PullFundsSubmitDataNotSet"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ReceiverNotApproved"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RedeemCancellationCapNumeraireZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RedeemCancellationDetailsNotZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RedeemRequestCancellationDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RefundPeriodExpired"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RequestAmountExceedsRefundCap"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SolvingGateDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SolvingPaused"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncDepositDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemAbsoluteCapNumeraireZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemEpochCapExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemMaxDynamicPremiumBpsTooHigh"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemMaxPriceAgeExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemMaxPriceAgeZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemNotConfigured"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemRelativeCapBpsTooHigh"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemRelativeCapBpsZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__TokenCantBePriced"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__TokensZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__Unauthorized"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__UnitsLocked"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__UnitsZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ZeroAddressAuthority"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ZeroAddressMultiDepositorVault"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ZeroAddressPriceAndFeeCalculator"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ZeroAddressReceiver"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "ReentrancyGuardReentrantCall"; }, { readonly type: "error"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "SafeERC20FailedOperation"; }]; functionName: "redeem"; args: readonly [`0x${string}`, bigint, bigint, `0x${string}`]; account: `0x${string}`; }; export declare function withdrawTxRequest(provisioner: Address, token: Address, tokensOut: bigint, maxUnitsIn: bigint, receiver: Address, account: Address): { address: `0x${string}`; abi: readonly [{ readonly type: "function"; readonly inputs: readonly []; readonly name: "SOLVING_GATE_ENABLED"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "bool"; readonly type: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "tokensIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "minUnitsOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "deposit"; readonly outputs: readonly [{ readonly name: "unitsOut"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "depositor"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "depositReceiverApprovals"; readonly outputs: readonly [{ readonly name: "approved"; readonly internalType: "bool"; readonly type: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "tokensIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "minUnitsOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "solverTip"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "deadline"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "maxPriceAge"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "isFixedPrice"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "requestDeposit"; readonly outputs: readonly [{ readonly name: "depositRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "getSyncRedeemDetails"; readonly outputs: readonly [{ readonly name: "maxPriceAge"; readonly internalType: "uint24"; readonly type: "uint24"; }, { readonly name: "relativeCapBps"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "maxDynamicPremiumBps"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "epochTimestamp"; readonly internalType: "uint32"; readonly type: "uint32"; }, { readonly name: "absoluteCapNumeraire"; readonly internalType: "uint80"; readonly type: "uint80"; }, { readonly name: "epochRedeemedNumeraire"; readonly internalType: "uint80"; readonly type: "uint80"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "getSyncRedeemEpochState"; readonly outputs: readonly [{ readonly name: "epochTimestamp"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "epochStartTvlNumeraire"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "epochRedeemedNumeraire"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "epochCapNumeraire"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "user"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "userUnitsRefundableUntil"; readonly outputs: readonly [{ readonly name: "unitsLockedUntil"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "depositor"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "approved"; readonly internalType: "bool"; readonly type: "bool"; }]; readonly name: "setDepositReceiverApproval"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "solvingGate"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "address"; readonly type: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }]; readonly name: "tokensDetails"; readonly outputs: readonly [{ readonly name: "asyncDepositEnabled"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "asyncRedeemEnabled"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "syncDepositEnabled"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "syncRedeemEnabled"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "asyncDepositMultiplier"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "asyncRedeemMultiplier"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "syncDepositMultiplier"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "syncRedeemMultiplier"; readonly internalType: "uint16"; readonly type: "uint16"; }, { readonly name: "pushFundsSubmitDataPointer"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "pullFundsSubmitDataPointer"; readonly internalType: "address"; readonly type: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "minTokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "solverTip"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "deadline"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "maxPriceAge"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "isFixedPrice"; readonly internalType: "bool"; readonly type: "bool"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "requestRedeem"; readonly outputs: readonly [{ readonly name: "redeemRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "minTokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "redeem"; readonly outputs: readonly [{ readonly name: "tokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; }, { readonly name: "tokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "maxUnitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "withdraw"; readonly outputs: readonly [{ readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "asyncRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; }]; readonly name: "asyncRequestHashes"; readonly outputs: readonly [{ readonly name: "exists"; readonly internalType: "bool"; readonly type: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "version"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "string"; readonly type: "string"; }]; readonly stateMutability: "pure"; }, { readonly type: "event"; readonly inputs: readonly [{ readonly name: "user"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; readonly indexed: true; }, { readonly name: "tokensIn"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "minUnitsOut"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "solverTip"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "deadline"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "maxPriceAge"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "isFixedPrice"; readonly internalType: "bool"; readonly type: "bool"; readonly indexed: false; }, { readonly name: "depositRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; readonly indexed: false; }]; readonly name: "DepositRequested"; readonly anonymous: false; }, { readonly type: "event"; readonly inputs: readonly [{ readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "depositor"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "approved"; readonly internalType: "bool"; readonly type: "bool"; readonly indexed: false; }]; readonly name: "DepositReceiverApprovalSet"; readonly anonymous: false; }, { readonly type: "event"; readonly inputs: readonly [{ readonly name: "user"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; readonly indexed: true; }, { readonly name: "minTokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "solverTip"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "deadline"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "maxPriceAge"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "isFixedPrice"; readonly internalType: "bool"; readonly type: "bool"; readonly indexed: false; }, { readonly name: "redeemRequestHash"; readonly internalType: "bytes32"; readonly type: "bytes32"; readonly indexed: false; }]; readonly name: "RedeemRequested"; readonly anonymous: false; }, { readonly type: "event"; readonly inputs: readonly [{ readonly name: "user"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "receiver"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "token"; readonly internalType: "contract IERC20"; readonly type: "address"; readonly indexed: true; }, { readonly name: "unitsIn"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }, { readonly name: "tokensOut"; readonly internalType: "uint256"; readonly type: "uint256"; readonly indexed: false; }]; readonly name: "Redeemed"; readonly anonymous: false; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__AsyncDepositDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__AsyncRedeemDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__AutoPriceSolveNotAllowed"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__CallerIsNotRequestUser"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__CallerIsVault"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__CancellationFeeExceedsRequestAmount"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DeadlineInFutureAndUnauthorized"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DeadlineInPast"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DeadlineTooFarInFuture"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositCancellationDetailsNotZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositCapExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositCapZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositHashNotFound"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__DepositRequestCancellationDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__FixedPriceSolverTipNotAllowed"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__HashCollision"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__HashNotFound"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__InvalidToken"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MaxDepositRefundTimeoutExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MaxTokensInExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MaxUnitsInExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MinTokensOutNotMet"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MinUnitsOutNotMet"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__MultiplierOutOfRange"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__PriceAndFeeCalculatorVaultPaused"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__PullFundsSubmitDataNotSet"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ReceiverNotApproved"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RedeemCancellationCapNumeraireZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RedeemCancellationDetailsNotZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RedeemRequestCancellationDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RefundPeriodExpired"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__RequestAmountExceedsRefundCap"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SolvingGateDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SolvingPaused"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncDepositDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemAbsoluteCapNumeraireZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemDisabled"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemEpochCapExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemMaxDynamicPremiumBpsTooHigh"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemMaxPriceAgeExceeded"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemMaxPriceAgeZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemNotConfigured"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemRelativeCapBpsTooHigh"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__SyncRedeemRelativeCapBpsZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__TokenCantBePriced"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__TokensZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__Unauthorized"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__UnitsLocked"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__UnitsZero"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ZeroAddressAuthority"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ZeroAddressMultiDepositorVault"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ZeroAddressPriceAndFeeCalculator"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "Aera__ZeroAddressReceiver"; }, { readonly type: "error"; readonly inputs: readonly []; readonly name: "ReentrancyGuardReentrantCall"; }, { readonly type: "error"; readonly inputs: readonly [{ readonly name: "token"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "SafeERC20FailedOperation"; }]; functionName: "withdraw"; args: readonly [`0x${string}`, bigint, bigint, `0x${string}`]; account: `0x${string}`; }; export {}; //# sourceMappingURL=v2.d.ts.map