import { OnDestroy } from '@angular/core';
import { Observable } from 'rxjs';
import { OpenIdConfiguration } from '../config/openid-configuration';
import * as i0 from "@angular/core";
export declare class CheckSessionService implements OnDestroy {
    private checkSessionReceived;
    private scheduledHeartBeatRunning;
    private lastIFrameRefresh;
    private outstandingMessages;
    private iframeMessageEventListener?;
    private readonly loggerService;
    private readonly storagePersistenceService;
    private readonly iFrameService;
    private readonly eventService;
    private readonly zone;
    private readonly document;
    private readonly heartBeatInterval;
    private readonly iframeRefreshInterval;
    private readonly checkSessionChangedInternal$;
    get checkSessionChanged$(): Observable<boolean>;
    ngOnDestroy(): void;
    isCheckSessionConfigured(configuration: OpenIdConfiguration): boolean;
    start(configuration: OpenIdConfiguration): void;
    stop(): void;
    serverStateChanged(configuration: OpenIdConfiguration): boolean;
    getExistingIframe(): HTMLIFrameElement | null;
    private init;
    private pollServerSession;
    private clearScheduledHeartBeat;
    private messageHandler;
    private bindMessageEventToIframe;
    private getOrCreateIframe;
    static ɵfac: i0.ɵɵFactoryDeclaration<CheckSessionService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<CheckSessionService>;
}
