import { Optional } from '@guarani/types'; import { JsonWebKeyParams } from '../jwk/jsonwebkey.params'; import { SupportedJsonWebSignatureAlgorithm } from './algorithms/types/supported-jsonwebsignature-algorithm'; import { JsonWebSignatureHeaderParams } from './jsonwebsignature-header.params'; /** * Implementation of {@link https://www.rfc-editor.org/rfc/rfc7515.html#section-4 RFC 7515 Section 4}. */ export declare class JsonWebSignatureHeader implements JsonWebSignatureHeaderParams { /** * 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?: Optional; /** * JSON Web Key used to Sign the Token. */ readonly jwk?: Optional; /** * Identifier of the JSON Web Key used to Sign the Token. */ readonly kid?: Optional; /** * URI of the X.509 certificate of the JSON Web Key used to Sign the Token. */ readonly x5u?: Optional; /** * Chain of X.509 certificates of the JSON Web Key used to Sign the Token. */ readonly x5c?: Optional; /** * SHA-1 Thumbprint of the X.509 certificate of the JSON Web Key used to Sign the Token. */ readonly x5t?: Optional; /** * SHA-256 Thumbprint of the X.509 certificate of the JSON Web Key used to Sign the Token. */ readonly 'x5t#S256'?: Optional; /** * Defines the type of the Token. */ readonly typ?: Optional; /** * Defines the type of the Payload of the Token. */ readonly cty?: Optional; /** * Defines the parameters that MUST be present in the JOSE Header. */ readonly crit?: Optional; /** * Instantiates a JSON Web Signature Header for Compact Serialization. * * @param params Parameters of the JSON Web Signature Header. */ constructor(params: JsonWebSignatureHeaderParams); /** * Checks if the provided object conforms to the JSON Web Signature Header Specification. * * @param data Object to be inspected. */ static isJsonWebSignatureHeader(data: unknown): data is JsonWebSignatureHeaderParams; /** * Returns the JSON Encoded String representation of the JSON Web Signature Header. */ toString(): string; }