UNPKG

@unvision/jose

Version:

Implementation of the RFCs of the JOSE Working Group.

74 lines (73 loc) 2.47 kB
import { JsonWebKeyParameters } from '../jwk/jsonwebkey.parameters'; import { JsonWebSignatureAlgorithm } from './algorithms/jsonwebsignature.algorithm'; import { SupportedJsonWebSignatureAlgorithm } from './algorithms/types/supported-jsonwebsignature-algorithm'; import { JsonWebSignatureHeaderParameters } from './jsonwebsignature.header.parameters'; /** * Implementation of the JSON Web Signature Header. * * @see https://www.rfc-editor.org/rfc/rfc7515.html#section-4 */ export declare class JsonWebSignatureHeader implements JsonWebSignatureHeaderParameters { /** * Supported JSON Web Signature Algorithms. */ private static readonly algorithms; /** * JSON Web Signature Algorithm used by the JSON Web Signature Header. */ readonly algorithm: JsonWebSignatureAlgorithm; /** * JSON Web Signature Algorithm used to Sign and Verify the Token. */ readonly alg: SupportedJsonWebSignatureAlgorithm; /** * URI of a Set of Public JSON Web Keys that contains the JSON Web Key used to Sign the Token. */ readonly jku?: string; /** * JSON Web Key used to Sign the Token. */ readonly jwk?: JsonWebKeyParameters; /** * Identifier of the JSON Web Key used to Sign the Token. */ readonly kid?: string; /** * URI of the X.509 certificate of the JSON Web Key used to Sign the Token. */ readonly x5u?: string; /** * Chain of X.509 certificates of the JSON Web Key used to Sign the Token. */ readonly x5c?: string[]; /** * SHA-1 Thumbprint of the X.509 certificate of the JSON Web Key used to Sign the Token. */ readonly x5t?: string; /** * SHA-256 Thumbprint of the X.509 certificate of the JSON Web Key used to Sign the Token. */ readonly 'x5t#S256'?: string; /** * Defines the type of the Token. */ readonly typ?: string; /** * Defines the type of the Payload of the Token. */ readonly cty?: string; /** * Defines the parameters that MUST be present in the JOSE Header. */ readonly crit?: string[]; /** * Additional JSON Web Signature Header Parameters. */ readonly [parameter: string]: any; /** * Instantiates a new JSON Web Signature Header based on the provided Parameters. * * @param parameters JSON Web Signature Header Parameters. */ constructor(parameters: JsonWebSignatureHeaderParameters); }