import type { Address, EntryPointParameter, SmartContractAccount, ToSmartContractAccountParams } from "@alchemy/aa-core";
import type { Chain, Hex, Transport } from "viem";
export declare const MULTISIG_ACCOUNT_SOURCE = "MultiSigSmartAccount";
export type MultiSigSmartAccount = SmartContractAccount<typeof MULTISIG_ACCOUNT_SOURCE, "0.6.0">;
export type CreateMultiSigSmartAccountParams<TTransport extends Transport = Transport, TEntryPointVersion extends "0.6.0" = "0.6.0"> = Pick<ToSmartContractAccountParams<typeof MULTISIG_ACCOUNT_SOURCE, TTransport, Chain, TEntryPointVersion>, "transport" | "chain"> & {
    salt?: Hex;
    factoryAddress?: Address;
    initCode?: Hex;
    combinedAddress?: Address[];
    accountAddress?: Address;
} & EntryPointParameter<TEntryPointVersion, Chain>;
export declare function createMultiSigSmartAccount<TTransport extends Transport = Transport>(config: CreateMultiSigSmartAccountParams<TTransport>): Promise<MultiSigSmartAccount>;
