export declare type OpenIDConfiguration = { client_id: string; issuer: string; jwks_uri: string; authorization_endpoint: string; token_endpoint: string; userinfo_endpoint: string; end_session_endpoint: string; response_types_supported: string[]; response_modes_supported: string[]; subject_types_supported: string[]; acr_values_supported: string[]; id_token_signing_alg_values_supported: string[]; pushed_authorization_request_endpoint?: string; }; export declare class Cache { storage: Storage; lifetimeMs: number; constructor(storage: Storage, lifetimeMs: number); add(key: string, entry: T): void; get(key: string): T | null; } export declare class OpenIDConfigurationManager { authority: string; clientID: string; cache: Cache | undefined; private _fetch; constructor(authority: string, clientID: string, options?: { cacheStorage?: Storage; fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise; }); fetch(): Promise; }