import { SsoConfigService } from './sso-config.service';
export declare class SsoOidcClientService {
    private readonly ssoConfig;
    private readonly logger;
    private readonly TOKEN_ENDPOINT_TIMEOUT_MS;
    private configPromise;
    private lastDiscoveryError;
    private readonly DISCOVERY_FAIL_COOLDOWN_MS;
    constructor(ssoConfig: SsoConfigService);
    private getConfig;
    buildAuthorizationUrl(params: {
        state: string;
        nonce: string;
        codeVerifier: string;
        redirectUri?: string;
    }): Promise<string>;
    exchangeCodeForTokens(params: {
        callbackUrl: URL;
        codeVerifier: string;
        expectedNonce: string;
        expectedState: string;
    }): Promise<{
        idTokenClaims: Record<string, any>;
        accessToken: string;
        rawIdToken: string;
    }>;
}
