import { IOidcTokenInfo, IOidcTokenError, ITokenInfo } from '../models/Authorization.js';
import { OAuth2Authorization, handleTokenInfo } from './OAuth2Authorization.js';
export declare class OidcAuthorization extends OAuth2Authorization {
    authorize(): Promise<(IOidcTokenInfo | IOidcTokenError)[]>;
    /**
     * @returns The parameters to build popup URL.
     */
    buildPopupUrlParams(): Promise<URL | null>;
    /**
     * @param params The instance of search params with the response from the auth dialog.
     * @returns true when the params qualify as an authorization popup redirect response.
     */
    validateTokenResponse(params: URLSearchParams): boolean;
    /**
     * Processes the response returned by the popup or the iframe.
     */
    processTokenResponse(params: URLSearchParams): Promise<void>;
    /**
     * Creates a token info object for each requested response type. These are created from the params received from the
     * redirect URI. This means that it might not be complete (for code response type).
     * @param params
     * @param time Timestamp when the tokens were created
     */
    prepareTokens(params: URLSearchParams, time: number): IOidcTokenInfo[] | null;
    /**
     * Finishes the authorization.
     */
    finish(tokens: (IOidcTokenInfo | IOidcTokenError)[]): void;
    /**
     * Processes token info object when it's ready.
     *
     * @param info Token info returned from the server.
     */
    [handleTokenInfo](info: ITokenInfo): void;
}
//# sourceMappingURL=OidcAuthorization.d.ts.map