import { BaseSocialLogin } from './base'; import type { AuthorizationCode, GoogleLoginOptions, LoginResult, ProviderResponseMap } from './definitions'; export declare class GoogleSocialLogin extends BaseSocialLogin { private clientId; private hostedDomain?; private loginType; private redirectUrl?; private GOOGLE_TOKEN_REQUEST_URL; private readonly GOOGLE_STATE_KEY; initialize(clientId: string | null, mode?: 'online' | 'offline', hostedDomain?: string | null, redirectUrl?: string): Promise; login(options: GoogleLoginOptions): Promise<{ provider: T; result: ProviderResponseMap[T]; }>; logout(): Promise; isLoggedIn(): Promise<{ isLoggedIn: boolean; }>; getAuthorizationCode(): Promise; refresh(): Promise; handleOAuthRedirect(url: URL): LoginResult | { error: string; } | null; private accessTokenIsValid; private idTokenValid; private rawLogoutGoogle; private persistStateGoogle; private clearStateGoogle; private getGoogleState; private traditionalOAuth; }