@theoptimalpartner/jwt-auth-validator
Version:
JWT token validation package with offline JWKS validation and Redis-based token revocation support
30 lines • 1.45 kB
TypeScript
import { DecodedToken, ValidationResult, ValidatorConfig } from './types.js';
export declare class JWTValidator {
private jwksService;
private blacklistService?;
private redisService?;
private config;
private initialized;
constructor(config: ValidatorConfig);
initialize(): Promise<void>;
validateToken(token: string, forceSecure?: boolean): Promise<ValidationResult>;
validateTokenSecure(token: string): Promise<ValidationResult>;
validateTokenBasic(token: string): Promise<ValidationResult>;
validateAccessToken(token: string): Promise<ValidationResult>;
validateIdToken(token: string): Promise<ValidationResult>;
extractTokenFromHeader(authHeader: string): string | null;
getTokenInfo(token: string): object | null;
isTokenExpired(token: string): boolean;
getTimeToExpiry(token: string): number;
validateMultipleTokens(tokens: string[]): Promise<ValidationResult[]>;
decodeToken(token: string): DecodedToken | null;
revokeToken(token: string): Promise<void>;
revokeUserTokens(userId: string, tokens: string[]): Promise<void>;
getCacheStats(): import("./types.js").JWKSStats;
getBlacklistStats(): Promise<import("./types.js").TokenBlacklistStats | null>;
getClientSecret(): string | undefined;
hasClientSecret(): boolean;
calculateSecretHash(identifier: string): string;
disconnect(): Promise<void>;
}
//# sourceMappingURL=jwt-validator.d.ts.map