import { GetIdTokenConfiguration, MagicUserMetadata, GenerateIdTokenConfiguration, UserInfo, RequestUserInfoScope, RecoverAccountConfiguration, ShowSettingsConfiguration, EnableMFAConfiguration, EnableMFAEventHandlers, DisableMFAConfiguration, DisableMFAEventHandlers, RecoverAccountEventHandlers } from '@magic-sdk/types'; import { BaseModule } from './base-module'; type UserLoggedOutCallback = (loggedOut: boolean) => void; export declare class UserModule extends BaseModule { getIdToken(configuration?: GetIdTokenConfiguration): import("../util").PromiEvent void; error: (reason: any) => void; settled: () => void; "closed-by-user": () => void; }>; generateIdToken(configuration?: GenerateIdTokenConfiguration): import("../util").PromiEvent void; error: (reason: any) => void; settled: () => void; "closed-by-user": () => void; }>; getInfo(): import("../util").PromiEvent void; error: (reason: any) => void; settled: () => void; "closed-by-user": () => void; }>; isLoggedIn(): import("../util").PromiEvent; logout(): import("../util").PromiEvent; requestInfoWithUI(scope?: RequestUserInfoScope): import("../util").PromiEvent void; error: (reason: any) => void; settled: () => void; "closed-by-user": () => void; }>; showSettings(configuration?: ShowSettingsConfiguration): import("../util").PromiEvent void; "send-otp-code": (otp: string) => void; "start-edit-phone-number": () => void; cancel: () => void; "enter-new-phone-number": () => void; "enter-otp-code": () => void; "recovery-factor-already-exists": () => void; "malformed-phone-number": () => void; "invalid-otp-code": () => void; "recovery-factor-updated": (updatedFactor: { type: string; value: string; }) => void; "recovery-factor-deleted": () => void; } & import("@magic-sdk/types").RecencyCheckEventHandlers & { done: (result: string | null) => void; error: (reason: any) => void; settled: () => void; "closed-by-user": () => void; }>; recoverAccount(configuration: RecoverAccountConfiguration): import("../util").PromiEvent void; "UpdateEmail/email-updated": () => void; "UpdateEmail/new-email-invalid-email-otp": () => void; "UpdateEmail/new-email-verification-email-not-deliverable": () => void; "UpdateEmail/new-email-verification-email-expired": () => void; "UpdateEmail/new-email-verification-email-sent": () => void; "UpdateEmail/new-email-invalid": () => void; "UpdateEmail/new-email-already-exists": () => void; "UpdateEmail/new-email-verification-cancel": () => void; "UpdateEmail/retry-with-new-email": (email?: string) => void; "UpdateEmail/new-email-verify-otp": (otp: string) => void; } & import("@magic-sdk/types").RecencyCheckEventHandlers & { done: (result: string | boolean | null) => void; error: (reason: any) => void; settled: () => void; "closed-by-user": () => void; }>; revealEVMPrivateKey(): import("../util").PromiEvent void; error: (reason: any) => void; settled: () => void; "closed-by-user": () => void; }>; revealPrivateKey(): void; onUserLoggedOut(callback: UserLoggedOutCallback): void; enableMFA(configuration: EnableMFAConfiguration): import("../util").PromiEvent void; error: (reason: any) => void; settled: () => void; "closed-by-user": () => void; }>; disableMFA(configuration: DisableMFAConfiguration): import("../util").PromiEvent void; error: (reason: any) => void; settled: () => void; "closed-by-user": () => void; }>; private emitUserLoggedOut; private localForageIsLoggedInKey; private userLoggedOutCallbacks; } export {};