import { OIDCProviderMetadata } from './types';
type FetchFn = typeof fetch;
/**
 * Set the fetch function (for testing)
 */
export declare function setFetchFunction(fn: FetchFn): void;
/**
 * Reset the fetch function to the default
 */
export declare function resetFetchFunction(): void;
/**
 * Fetch the OpenID Connect discovery document from an issuer
 * @param issuer The OIDC issuer URL
 * @returns The parsed discovery document
 * @throws OIDCError if fetch fails or document is invalid
 */
export declare function fetchDiscoveryDocument(issuer: string): Promise<OIDCProviderMetadata>;
/**
 * Get the discovery document for an issuer, using cache if available
 * @param issuer The OIDC issuer URL
 * @returns The discovery document
 */
export declare function getDiscoveryDocument(issuer: string): Promise<OIDCProviderMetadata>;
/**
 * Clear the discovery document cache
 * Useful for testing and when re-configuring OIDC
 */
export declare function clearDiscoveryCache(): void;
export {};
//# sourceMappingURL=discovery.d.ts.map