import type { Config } from './config.js'; export type KeyState = 'cold' | 'fresh' | 'stale'; export interface KeyStatus { state: KeyState; since?: number; lastError?: string; keyCount: number; } export declare const base64urlDecode: (segment: string) => Uint8Array | null; export declare class KeySource { private readonly cfg; private snap; private inflight; private lastForced; private lastAttempt; private lastError; constructor(cfg: Config); key(kid: string): Promise; prefetch(): Promise; status(): KeyStatus; private error; private tryForceRefetch; private refresh; private fetch; }