import type { Account, Address, Chain, ContractFunctionArgs, PublicClient, SimulateContractReturnType, Transport } from 'viem'; import type { L2SimulateContractParameters } from '../../../types/l2Actions.js'; import { ABI, FUNCTION, type WithdrawToParameters } from '../../../types/withdrawTo.js'; export type SimulateWithdrawERC20Parameters = { args: WithdrawToParameters; } & L2SimulateContractParameters, TChain, TChainOverride, TAccountOverride>; export type SimulateWithdrawERC20ReturnType = SimulateContractReturnType, TChain, TAccount, TChainOverride, TAccountOverride>; /** * Simulates a withdrawal of ERC20 tokens to an L1 address. * * @param {Address} l2Token the address of the ERC20 token on L2 * @param {Address} to the address to withdraw to on L1 * @param {Bigint} amount the amount of tokens to withdraw * @param {Bigint} minGasLimit the minimum gas limit for the withdrawal * @param {Hex} [extraData] the extra data for the withdrawal */ export declare function simulateWithdrawERC20(client: PublicClient, { args: { l2Token, to, amount, minGasLimit, extraData }, ...rest }: SimulateWithdrawERC20Parameters): Promise>; //# sourceMappingURL=simulateWithdrawERC20.d.ts.map