export const ErrorCode: Readonly<{ INVALID_ARGUMENT: "INVALID_ARGUMENT"; INVALID_TOKEN: "INVALID_TOKEN"; INVALID_HEADER: "INVALID_HEADER"; INVALID_PAYLOAD: "INVALID_PAYLOAD"; INVALID_SIGNATURE: "INVALID_SIGNATURE"; INVALID_KEY: "INVALID_KEY"; UNSUPPORTED_ALGORITHM: "UNSUPPORTED_ALGORITHM"; ALGORITHM_MISMATCH: "ALGORITHM_MISMATCH"; ALGORITHM_NONE_FORBIDDEN: "ALGORITHM_NONE_FORBIDDEN"; MISSING_ALG_ALLOWLIST: "MISSING_ALG_ALLOWLIST"; TOKEN_EXPIRED: "TOKEN_EXPIRED"; TOKEN_NOT_YET_VALID: "TOKEN_NOT_YET_VALID"; TOKEN_TOO_OLD: "TOKEN_TOO_OLD"; TOKEN_TOO_LARGE: "TOKEN_TOO_LARGE"; INVALID_ISSUER: "INVALID_ISSUER"; INVALID_AUDIENCE: "INVALID_AUDIENCE"; INVALID_SUBJECT: "INVALID_SUBJECT"; INVALID_NONCE: "INVALID_NONCE"; INVALID_TYP: "INVALID_TYP"; INSUFFICIENT_SCOPE: "INSUFFICIENT_SCOPE"; MISSING_CLAIM: "MISSING_CLAIM"; CRIT_UNSUPPORTED: "CRIT_UNSUPPORTED"; KEY_NOT_FOUND: "KEY_NOT_FOUND"; REFRESH_REUSED: "REFRESH_REUSED"; REVOKED: "REVOKED"; STORE_ERROR: "STORE_ERROR"; }>; /** * Every recoverable failure raised by this package. Carries a stable * `code` (from {@link ErrorCode}) and a `status` — the HTTP response * status a middleware layer would use when translating the error. */ export class JwtError extends BaseError { static statuses: { INVALID_ARGUMENT: number; UNSUPPORTED_ALGORITHM: number; MISSING_ALG_ALLOWLIST: number; INVALID_TOKEN: number; INVALID_HEADER: number; INVALID_PAYLOAD: number; INVALID_SIGNATURE: number; INVALID_KEY: number; ALGORITHM_MISMATCH: number; ALGORITHM_NONE_FORBIDDEN: number; CRIT_UNSUPPORTED: number; KEY_NOT_FOUND: number; TOKEN_EXPIRED: number; TOKEN_NOT_YET_VALID: number; TOKEN_TOO_OLD: number; INVALID_ISSUER: number; INVALID_AUDIENCE: number; INVALID_SUBJECT: number; INVALID_NONCE: number; INVALID_TYP: number; MISSING_CLAIM: number; REFRESH_REUSED: number; REVOKED: number; INSUFFICIENT_SCOPE: number; TOKEN_TOO_LARGE: number; STORE_ERROR: number; }; } import { BaseError } from '@exortek/shared/errors';