import { JWTClaims } from './types'; import * as i0 from "@angular/core"; /** * Servicio para manejo de tokens JWT. * Parseo y validación de tokens sin dependencias externas. */ export declare class TokenService { /** * Parsea un token JWT y extrae los claims. * @param token - Token JWT * @returns Claims del token o null si es inválido */ parseToken(token: string): JWTClaims | null; /** * Verifica si un token es válido (no expirado). * @param token - Token JWT * @returns true si el token es válido */ isTokenValid(token: string): boolean; /** * Obtiene el tiempo restante del token en segundos. * @param token - Token JWT * @returns Segundos restantes o 0 si expirado */ getTimeToExpiry(token: string): number; /** * Obtiene el timestamp de expiración del token. * @param token - Token JWT * @returns Timestamp en milisegundos o null */ getExpirationTime(token: string): number | null; /** * Extrae el user ID del token. * @param token - Token JWT * @returns User ID o null */ getUserId(token: string): string | null; /** * Extrae el email del token. * @param token - Token JWT * @returns Email o null */ getEmail(token: string): string | null; /** * Extrae el estado premium del token. * @param token - Token JWT * @returns true si el usuario es premium */ isPremium(token: string): boolean; /** * Decodifica base64url a string. * Base64url usa - y _ en lugar de + y / */ private base64UrlDecode; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }