/** * 令牌管理器 * 支持令牌过期、刷新、轮换等功能 */ export interface TokenInfo { token: string; expiresAt?: number; refreshToken?: string; refreshExpiresAt?: number; metadata?: Record; } export interface TokenManagerOptions { /** 默认令牌过期时间(毫秒) */ defaultExpiration?: number; /** 刷新令牌过期时间(毫秒) */ refreshExpiration?: number; /** 是否自动刷新 */ autoRefresh?: boolean; /** 刷新阈值(在过期前多久刷新,毫秒) */ refreshThreshold?: number; } /** * 令牌管理器 */ export declare class TokenManager { private tokens; private options; private nextCleanupAt; constructor(options?: TokenManagerOptions); /** * 生成新令牌 */ generateToken(metadata?: Record): TokenInfo; /** * 验证令牌 */ validateToken(token: string): { valid: boolean; expired?: boolean; info?: TokenInfo; }; /** * 刷新令牌 */ refreshToken(refreshToken: string): TokenInfo | null; /** * 撤销令牌 */ revokeToken(token: string): boolean; /** 撤销全部访问令牌与刷新令牌,用于管理凭据轮换。 */ revokeAll(): number; /** * 获取令牌信息 */ getTokenInfo(token: string): TokenInfo | undefined; /** * 清理过期令牌 */ cleanup(): number; /** * 获取统计信息 */ getStats(): { total: number; active: number; expired: number; }; } /** * 初始化全局令牌管理器 */ export declare function initTokenManager(options?: TokenManagerOptions): TokenManager; /** * 获取全局令牌管理器 */ export declare function getTokenManager(): TokenManager | null;