import { AuthService } from './AuthService';
import { XHR } from '../../icc-api/api/XHR';
import { JwtBridgedAuthService } from './JwtBridgedAuthService';
import { NoAuthService } from './NoAuthService';
import { BasicAuthService } from './BasicAuthService';
import Header = XHR.Header;
import { JwtAuthService } from './JwtAuthService';
export declare class EnsembleAuthService implements AuthService {
    private readonly jwtAuth;
    private readonly sessionAuth;
    private readonly basicAuth;
    private currentState;
    private error;
    private stateMap;
    readonly jwtGetter: () => Promise<{
        token: string;
        refreshToken: string;
    } | undefined>;
    constructor(jwtAuth: JwtBridgedAuthService | JwtAuthService | null, sessionAuth: NoAuthService, basicAuth: BasicAuthService);
    getIcureTokens(): Promise<{
        token: string;
        refreshToken: string;
    } | undefined>;
    getAuthHeaders(minimumAuthenticationClass: number | undefined): Promise<Array<Header>>;
    invalidateHeader(error: Error): void;
}
