UNPKG

jwt-token-pair-generator

Version:

A secure RSA token pair generator CLI and library for generating and storing RSA keys for JWT

50 lines (49 loc) 1.1 kB
import pino from "pino"; /** * Interface representing a key pair with its passphrase. */ export interface KeyPair { publicKey: string; privateKey: string; } /** * Interface representing token key pairs for access and refresh tokens. */ export interface TokenKeyPairs { access: KeyPair; refresh: KeyPair; } /** * Options for generating RSA keys. */ export interface KeyGenerationOptions { modulusLength: number; publicKeyEncoding: { type: "spki"; format: "pem"; }; privateKeyEncoding: { type: "pkcs8"; format: "pem"; }; } /** * Configuration options for SecureKeyGenerator. */ export interface SecureKeyGeneratorConfig { keyDirectory?: string; filePermissions?: number; envFileName?: string; modulusLength?: number; logLevel?: string; } export interface LogEntry { time: string; logLevel: string; logMessage: string; } export type LogFn = (msg: string, ...args: any[]) => void; export interface StepLogger extends pino.Logger { step: LogFn; } export type LogLevels = pino.Level | "step";