import { SessionStorage } from './SessionStorage'; import { SessionInfo } from '../../types'; export interface LoginOptions { email?: string; password?: string; useSavedSession?: boolean; saveSession?: boolean; mfaSecretKey?: string; interactive?: boolean; maxCaptchaRetries?: number; } export interface MFAOptions { email: string; password: string; code: string; } export declare class AuthenticationService { private baseUrl; private sessionStorage; private lastRequestTime; private readonly minRequestInterval; private loginInProgress; constructor(baseUrl?: string, sessionStorage?: SessionStorage); login(options?: LoginOptions): Promise; interactiveLogin(options?: Omit): Promise; multiFactorAuthenticate(options: MFAOptions): Promise; validateSession(): Promise; isSessionStale(): boolean; ensureValidSession(): Promise; getSessionInfo(): SessionInfo; getToken(): string | null; getDeviceUuid(): string | null; saveSession(): void; loadSession(): boolean; deleteSession(): void; private rateLimit; private performLoginWithMFA; private performMFAAuth; private getUserAgent; private prompt; private promptPassword; } //# sourceMappingURL=AuthenticationService.d.ts.map