import { AuthSession } from '../telegram/models/session.model'; export type AuthMode = 'customer' | 'admin'; export type AuthMethod = 'qr' | 'credentials' | 'yandex'; export interface CredentialLogin { login: string; password: string; } export interface AuthResult { method: AuthMethod; mode: AuthMode; session: AuthSession; accessToken?: string; refreshToken?: string; } export interface ExternalAuthStart { attemptId: string; authorizationUrl: string; } export interface AuthFailure { method: AuthMethod; code: 'configuration' | 'invalid_credentials' | 'backend' | 'popup_blocked' | 'expired'; message: string; cause?: unknown; }