import { UseQueryOptions } from "../types/queries.js";
import { SimulateTransactionResult, SimulateTransactionParameters } from "@aptos-labs/js-pro";
import { AccountAddress, AnyRawTransaction, InputGenerateTransactionOptions, InputGenerateTransactionPayloadData, InputSimulateTransactionOptions, PublicKey } from "@aptos-labs/ts-sdk";
export declare const getUseSimulateTransactionQueryKey: (params: {
    network: string;
    options?: InputSimulateTransactionOptions;
    feePayerPublicKey?: PublicKey;
    signerPublicKey?: PublicKey;
    secondarySignersPublicKeys?: (PublicKey | undefined)[];
    transactionOptions?: InputGenerateTransactionOptions;
    withFeePayer?: boolean;
    transaction?: AnyRawTransaction;
    data?: InputGenerateTransactionPayloadData | ((sender: AccountAddress) => Promise<InputGenerateTransactionPayloadData>);
    sender?: AccountAddress;
}) => (string | PublicKey | InputSimulateTransactionOptions | (PublicKey | undefined)[] | (string | boolean | AccountAddress | import("@aptos-labs/ts-sdk").InputEntryFunctionData | import("@aptos-labs/ts-sdk").InputScriptData | InputGenerateTransactionOptions | undefined)[] | (AnyRawTransaction | undefined)[] | undefined)[];
export type UseSimulateTransactionQueryParameters = Partial<SimulateTransactionParameters & {
    data?: InputGenerateTransactionPayloadData | ((sender: AccountAddress) => Promise<InputGenerateTransactionPayloadData>);
    sender?: AccountAddress;
    transactionOptions?: InputGenerateTransactionOptions;
    withFeePayer?: boolean;
}> & UseQueryOptions<SimulateTransactionResult>;
export declare function useSimulateTransaction({ network, data, transaction, options, feePayerPublicKey, signerPublicKey, transactionOptions, withFeePayer, sender, ...queryOptions }: UseSimulateTransactionQueryParameters): import("@tanstack/react-query").UseQueryResult<import("@aptos-labs/ts-sdk").UserTransactionResponse, Error>;
//# sourceMappingURL=useSimulateTransaction.d.ts.map