import { BaseSocialLogin } from './base'; import type { LoginResult, ProviderResponseMap, TelegramLoginOptions } from './definitions'; export declare class TelegramSocialLogin extends BaseSocialLogin { private botId; private redirectUrl; private origin; private requestAccess; private languageCode; private readonly TOKENS_KEY; private readonly STATE_PREFIX; private readonly SESSION_TTL_MS; initialize(botId: string, requestAccess?: 'read' | 'write', redirectUrl?: string | null, origin?: string | null, languageCode?: string | null): void; login(options: TelegramLoginOptions): Promise<{ provider: T; result: ProviderResponseMap[T]; }>; logout(): Promise; isLoggedIn(): Promise<{ isLoggedIn: boolean; }>; getAuthorizationCode(): Promise; refresh(): Promise; handleOAuthRedirect(url: URL, expectedState?: string): Promise; private buildAuthUrl; private openPopup; private appendStateToRedirect; private isHttpOrigin; private getOriginFromRedirect; private persistSession; private getStoredSession; private persistPendingLogin; private consumePendingLogin; private clearPendingTelegramState; private generateState; }