import { OnDestroy } from '@angular/core';
import { Observable } from 'rxjs';
import { ConfigurationService } from '../../../configuration/configuration.service';
import { HttpClient } from '@angular/common/http';
import { LoggerService } from '../../../logger/services/logger.service';
import { SessionIdleTimerService } from "./session-idle-timer.service";
import * as i0 from "@angular/core";
export declare class SessionService implements OnDestroy {
    private _config;
    private _log;
    private _http;
    private idleTimerService;
    static readonly SESSION_TOKEN_STORAGE_KEY = "naet";
    static readonly SESSION_BEARER_HEADER_DEFAULT = "X-Auth-Token";
    private _session$;
    private _storage;
    private _sessionHeader;
    private _verified;
    private _verifying;
    private _initialized;
    constructor(_config: ConfigurationService, _log: LoggerService, _http: HttpClient, idleTimerService: SessionIdleTimerService);
    ngOnDestroy(): void;
    get session$(): Observable<string>;
    set sessionToken(sessionToken: string);
    get sessionToken(): string;
    get sessionHeader(): string;
    get verified(): boolean;
    get verifying(): Observable<boolean>;
    get isVerifying(): boolean;
    get isInitialized(): boolean;
    get initializing(): Observable<boolean>;
    setVerifiedToken(sessionToken: string): void;
    clear(): void;
    verify(token?: string): Observable<boolean>;
    protected load(): string;
    private ensureConfigInitialized;
    private resolveToken;
    private resolveStorage;
    static ɵfac: i0.ɵɵFactoryDeclaration<SessionService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<SessionService>;
}
