import { type Chain, type Hex, type PublicClient, type Transport } from 'viem'; import type { MessagePassedEvent } from '../../../types/withdrawal.js'; import { type GetL2OutputReturnType } from 'viem/op-stack'; export type OutputRootProof = { version: Hex; stateRoot: Hex; messagePasserStorageRoot: Hex; latestBlockhash: Hex; }; export type GetProveWithdrawalTransactionArgsParams = { message: MessagePassedEvent; output: GetL2OutputReturnType; }; export type GetProveWithdrawalTransactionArgsReturnType = { withdrawalTransaction: Omit; L2OutputIndex: bigint; outputRootProof: OutputRootProof; withdrawalProof: Hex[]; }; /** * For a given L2 message and output proposal, generates the args needed to call proveWithdrawalTransaction * on the OptimismPortal contract * * @param {MessagePassedEvent} message the MessagePassed event emitted from the withdrawal transaction * @param {GetOutputForL2BlockReturnType} output the output proposal and index for the L2 block that contained the withdrawal transaction * @returns {getProveWithdrawalTransactionArgsReturnType} The arguments required by proveWithdrawalTransaction */ export declare function getProveWithdrawalTransactionArgs(client: PublicClient, { message, output }: GetProveWithdrawalTransactionArgsParams): Promise; //# sourceMappingURL=getProveWithdrawalTransactionArgs.d.ts.map