UNPKG

@hellocoop/web-identity

Version:

Functions for generating and verifying JWT tokens used in the Verified Email Autocomplete protocol

56 lines 2.18 kB
/** * Parses a JWT and returns its header and payload * @param token - JWT string to parse * @returns Object containing decoded header and payload * @throws TokenFormatError if JWT format is invalid */ export declare function parseJWT(token: string): { header: any; payload: any; }; /** * Validates that all required claims are present in a payload * @param payload - JWT payload to validate * @param requiredClaims - Array of required claim names * @throws MissingClaimError if any required claim is missing */ export declare function validateRequiredClaims(payload: any, requiredClaims: string[]): void; /** * Validates email claim in JWT payload * @param payload - JWT payload containing email claim * @throws MissingClaimError if email claim is missing * @throws EmailValidationError if email format is invalid */ export declare function validateEmailClaim(payload: any): void; /** * Validates email_verified claim in JWT payload * @param payload - JWT payload containing email_verified claim * @throws MissingClaimError if email_verified claim is missing * @throws EmailValidationError if email_verified is not true */ export declare function validateEmailVerifiedClaim(payload: any): void; /** * Validates JWT header contains required fields * @param header - JWT header to validate * @param requiredFields - Array of required header field names * @throws TokenFormatError if any required field is missing */ export declare function validateJWTHeader(header: any, requiredFields: string[]): void; /** * Validates that JWT type matches expected value * @param header - JWT header containing typ field * @param expectedType - Expected token type * @throws TokenFormatError if type doesn't match */ export declare function validateJWTType(header: any, expectedType: string): void; /** * Parses SD-JWT+KB token by splitting on tilde separator * @param token - SD-JWT+KB token string * @returns Object containing SD-JWT and KB-JWT parts * @throws TokenFormatError if format is invalid */ export declare function parsePresentationToken(token: string): { sdJwt: string; kbJwt: string; }; //# sourceMappingURL=validation.d.ts.map