import { AfterViewInit, OnDestroy } from '@angular/core';
import type { NoVncCredentials, default as NoVncClient } from '@novnc/novnc/lib/rfb';
import { RemoteAccessService } from '@c8y/ngx-components/remote-access/data';
import { ActivatedRoute } from '@angular/router';
import { BsModalService } from 'ngx-bootstrap/modal';
import { BehaviorSubject, Subscription } from 'rxjs';
import * as i0 from "@angular/core";
export declare class VncViewerComponent implements AfterViewInit, OnDestroy {
    private remoteAccess;
    private activatedRoute;
    private modalService;
    titlePrefix: "VNC viewer";
    title: string;
    container: HTMLElement | null;
    noVNCClient: NoVncClient;
    powerCapability: boolean;
    status: 'connecting' | 'connected' | 'disconnected';
    container$: BehaviorSubject<HTMLElement>;
    connectionSubscription: Subscription;
    constructor(remoteAccess: RemoteAccessService, activatedRoute: ActivatedRoute, modalService: BsModalService);
    ngOnDestroy(): void;
    ngAfterViewInit(): void;
    disconnectFromOldSession(): void;
    connect(container: HTMLElement, deviceId: string, configId: string, noVNC: typeof NoVncClient): void;
    downloadScreenshot(): void;
    changeStatus(status: 'connecting' | 'connected' | 'disconnected'): void;
    toggleFullscreen(): void;
    sendCtrlAltDel(): void;
    sendShutDown(): void;
    sendReset(): void;
    sendReboot(): void;
    getNoVNCClient(): Promise<typeof NoVncClient>;
    protected requestCredentials(types: Array<keyof NoVncCredentials>): Promise<void>;
    static ɵfac: i0.ɵɵFactoryDeclaration<VncViewerComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<VncViewerComponent, "c8y-vnc-viewer", never, {}, {}, never, never, true, never>;
}
//# sourceMappingURL=vnc-viewer.component.d.ts.map