import { HttpClient, HttpHeaders } from '@angular/common/http';
import { TccET_IAM } from '../../models/iam.model';
import { Observable } from 'rxjs';
import { TccODataSettings } from '../../tccodatasettings.token';
import { TccErrorResponse } from '../../interceptors/tcc-error-translation/tcc-error-translation.interceptor';
import { TccManageSingletonsService } from '../../../core/services/tcc-manage-singletons/tcc-manage-singletons.service';
import { LocaleService } from '../../../core/services/tcc-locale/tcc-locale.service';
import { DateAdapter } from '@angular/material/core';
import { Router } from '@angular/router';
export declare class TccAuthService {
    private http;
    private manageSingletonsService;
    private dateAdapter;
    private localeService;
    private router;
    private odatasettings;
    private baseurl;
    Headers: HttpHeaders;
    private useLocalStorage;
    _LoginResponse: TccET_IAM.LoginResponse;
    private get LoginResponse();
    private set LoginResponse(value);
    constructor(http: HttpClient, manageSingletonsService: TccManageSingletonsService, dateAdapter: DateAdapter<any>, localeService: LocaleService, router: Router, odatasettings: TccODataSettings);
    get loggedIn(): boolean;
    get User(): TccET_IAM.UserResponse;
    get Tenant(): TccET_IAM.TenantResponse;
    get LoginLanguage(): string;
    get FailedLogins(): TccET_IAM.SessionHistory;
    get SessionToken(): string;
    get System(): TccET_IAM.SystemResponse;
    get Version(): TccET_IAM.VersionResponse;
    setAuthHeader(headers: HttpHeaders): HttpHeaders;
    login: (cred: TccET_IAM.Credentials, throwError?: boolean) => Observable<boolean | TccErrorResponse>;
    login2: (cred: TccET_IAM.Credentials) => Observable<string>;
    setRedirectLoginData(loginResponse: TccET_IAM.LoginResponse): void;
    logout: () => Observable<boolean>;
    triggerHeartbeat: () => Observable<any>;
    private handleError;
}
