import type { ExtendedChain } from '@lifi/types';
import type { Client, Hash } from 'viem';
import { BaseStepExecutor } from '../BaseStepExecutor';
import type { LiFiStepExtended, Process, StepExecutorOptions } from '../types';
import type { TransactionMethodType } from './types';
export interface EVMStepExecutorOptions extends StepExecutorOptions {
    client: Client;
}
export declare class EVMStepExecutor extends BaseStepExecutor {
    private client;
    constructor(options: EVMStepExecutorOptions);
    checkClient: (step: LiFiStepExtended, process?: Process) => Promise<Client | undefined>;
    waitForTransaction: ({ step, process, fromChain, toChain, txType, txHash, isBridgeExecution, }: {
        step: LiFiStepExtended;
        process: Process;
        fromChain: ExtendedChain;
        toChain: ExtendedChain;
        txType: TransactionMethodType;
        txHash: Hash;
        isBridgeExecution: boolean;
    }) => Promise<void>;
    executeStep: (step: LiFiStepExtended, atomicityNotReady?: boolean) => Promise<LiFiStepExtended>;
}
//# sourceMappingURL=EVMStepExecutor.d.ts.map