import './oauth-popup-redirect'; import type { AuthorizationCode, AuthorizationCodeOptions, InitializeOptions, LoginOptions, OpenSecureWindowOptions, OpenSecureWindowResponse, OAuth2LoginResponse, ProviderResponseMap, RefreshTokenOptions, ProviderSpecificCall, ProviderSpecificCallOptionsMap, ProviderSpecificCallResponseMap, SocialLoginPlugin, isLoggedInOptions } from './definitions'; declare class SocialLoginClient implements SocialLoginPlugin { private initializeOptions?; private normalizeInitializeOptions; constructor(); initialize(options: InitializeOptions): Promise; login(options: Extract): Promise<{ provider: T; result: ProviderResponseMap[T]; }>; logout(options: { provider: 'apple' | 'google' | 'facebook' | 'twitter' | 'telegram' | 'linkedin' | 'tiktok' | 'oauth2'; providerId?: string; }): Promise; isLoggedIn(options: isLoggedInOptions): Promise<{ isLoggedIn: boolean; }>; getAuthorizationCode(options: AuthorizationCodeOptions): Promise; refresh(options: LoginOptions): Promise; refreshToken(options: RefreshTokenOptions): Promise; handleRedirectCallback(): Promise<{ provider: "facebook"; result: import("./definitions").FacebookLoginResponse; } | { provider: "google"; result: import("./definitions").GoogleLoginResponse; } | { provider: "apple"; result: import("./definitions").AppleProviderResponse; } | { provider: "twitter"; result: import("./definitions").TwitterLoginResponse; } | { provider: "telegram"; result: import("./definitions").TelegramLoginResponse; } | { provider: "linkedin"; result: import("./definitions").LinkedInLoginResponse; } | { provider: "tiktok"; result: import("./definitions").TikTokLoginResponse; } | null>; decodeIdToken(options: { idToken?: string; token?: string; }): Promise<{ claims: Record; }>; getAccessTokenExpirationDate(options: { accessTokenExpirationDate: number; }): Promise<{ date: string; }>; isAccessTokenAvailable(options: { accessToken: string | null; }): Promise<{ isAvailable: boolean; }>; isAccessTokenExpired(options: { accessTokenExpirationDate: number; }): Promise<{ isExpired: boolean; }>; isRefreshTokenAvailable(options: { refreshToken: string | null; }): Promise<{ isAvailable: boolean; }>; providerSpecificCall(options: { call: T; options: ProviderSpecificCallOptionsMap[T]; }): Promise; getPluginVersion(): Promise<{ version: string; }>; openSecureWindow(options: OpenSecureWindowOptions): Promise; } export declare const SocialLoginBase: SocialLoginPlugin; export declare const SocialLogin: SocialLoginClient; export {};