import type { WowClient, WowTransactionBlockResponse, WowTransactionBlockResponseOptions } from "../../client/index.js";
import type { Signer } from "../../cryptography/index.js";
import type { ObjectCacheOptions } from "../ObjectCache.js";
import { Transaction } from "../Transaction.js";
export interface ParallelTransactionExecutorOptions extends Omit<ObjectCacheOptions, "address"> {
    client: WowClient;
    signer: Signer;
    coinBatchSize?: number;
    initialCoinBalance?: bigint;
    minimumCoinBalance?: bigint;
    defaultGasBudget?: bigint;
    epochBoundaryWindow?: number;
    maxPoolSize?: number;
    sourceCoins?: string[];
}
export declare class ParallelTransactionExecutor {
    #private;
    constructor(options: ParallelTransactionExecutorOptions);
    resetCache(): Promise<void>;
    waitForLastTransaction(): Promise<void>;
    executeTransaction(transaction: Transaction, options?: WowTransactionBlockResponseOptions, additionalSignatures?: string[]): Promise<{
        digest: string;
        effects: string;
        data: WowTransactionBlockResponse;
    }>;
}
