import { IdentityKitAuthType, IdentityKitAccountsSignerClientOptions, IdentityKitDelegationSignerClientOptions } from "../../../lib";
import { Signer } from "@slide-computer/signer";
import { Principal } from "@dfinity/principal";
import { SubAccount } from "@dfinity/ledger-icp";
export declare function useCreateIdentityKit<T extends IdentityKitAuthType = typeof IdentityKitAuthType.ACCOUNTS>({ selectedSigner, clearSigner, signerClientOptions, authType, onConnectFailure, onConnectSuccess, realConnectDisabled, ...props }: {
    selectedSigner?: {
        value: Signer;
        id?: string;
    };
    clearSigner: () => Promise<unknown>;
    authType: T;
    signerClientOptions?: T extends typeof IdentityKitAuthType.DELEGATION ? Omit<IdentityKitDelegationSignerClientOptions, "signer" | "onLogout"> : Omit<IdentityKitAccountsSignerClientOptions, "signer" | "onLogout">;
    onConnectFailure?: (e: Error) => unknown;
    onConnectSuccess?: () => unknown;
    onDisconnect?: () => unknown;
    realConnectDisabled?: boolean;
}): {
    user: {
        principal: Principal;
        subaccount?: SubAccount;
    } | undefined;
    disconnect: () => Promise<void | undefined>;
    icpBalance: number | undefined;
    signerClient: import("../../../lib").IdentityKitAccountsSignerClient | undefined;
    fetchIcpBalance: (() => Promise<void>) | undefined;
};
