import { Injector, ElementRef } from '@angular/core';
import { Observable } from 'rxjs';
import { BsModalService } from 'ngx-bootstrap/modal';
import { ViewModel } from '../config';
import { Size } from '../model';
import { ViewResizeMode } from '../settings';
import { PopupViewService } from '../view/popup-view.service';
import { GuiContext } from './gui-context';
import { GuiOptions } from './interfaces/gui-options';
export declare class GuiView implements PopupViewService {
    private readonly injector;
    private readonly bsModalService;
    private readonly context;
    private readonly parentView?;
    get element(): HTMLElement;
    get rawWidth(): number;
    get rawHeight(): number;
    private readonly logger;
    private readonly childViews;
    private readonly viewId;
    private mainElement;
    private muskElement;
    private openVariableStatesSubscription;
    private requestVirtualDeviceState;
    private virtualDeviceStatesChanged;
    private openVariablesSubscription;
    private openedVariableNames;
    private perViewVariableCommunicator;
    private svgRootClass;
    private isMobileMode;
    private signalRAppId;
    constructor(injector: Injector, bsModalService: BsModalService, context: GuiContext, parentView?: GuiView);
    resize(size: Size, resizeMode: ViewResizeMode, svgRootClass: string): void;
    load(config: ViewModel, guiOptions: GuiOptions): void;
    loadElementState(): void;
    popView(viewIndex: number, hostContainerId: string, el: ElementRef): Observable<void>;
    closeView(): void;
    moveView(movementX: number, movementY: number): void;
    showMusk(): void;
    showShadow(): void;
    hideMusk(): void;
    dispose(): void;
    private normalOpenedVariableNames;
}
