import { OnInit, ElementRef, OnDestroy, TemplateRef } from "@angular/core";
import { Router, Params } from "@angular/router";
import { NgxSidePanelsService } from "./ngx-side-panels.service";
import { ComponentType } from "@angular/cdk/overlay";
export declare class NgxSidePanelsComponent implements OnInit, OnDestroy {
    private router;
    private sidePanelService;
    constructor(router: Router, sidePanelService: NgxSidePanelsService);
    container: ElementRef;
    width: string;
    title: string;
    label: string;
    saveConfirm: boolean;
    justAuth: boolean;
    skipLocationChange: boolean;
    firstWidth: number;
    stepWidth: number;
    startZIndex: number;
    mainDivPanels: ElementRef;
    private subscriber;
    panels: SidePanel[];
    private allRoutes;
    private subSidePanelAuthComponent;
    openPanel(sidePanel: SidePanel): void;
    ngOnInit(): void;
    closeWindow(key: number): Promise<any>;
    onCloseWindow(key: number): Promise<any>;
    configRoute(key: number, mainId: string, zIndex: number, sidePanel: SidePanel): Promise<any>;
    routeTo(key: number, path: string, queryParams?: any): void;
    private changeHtmlOverFlow;
    private configLabelTop;
    sidePanelSubscription(): void;
    private populate;
    private closeCurrentPanel;
    ngOnDestroy(): void;
}
export declare class SidePanelConfig {
    width?: number | string;
    refreshPrev?: false;
    refreshFunc?: () => {};
    queryParams?: Params;
    routePath?: string;
    canActivate?: [];
    permission?: string;
}
export declare class SidePanel {
    componentOrTemplateRef: ComponentType<any> | TemplateRef<any>;
    sidePanelConfig: SidePanelConfig;
    key: number;
    hidden?: boolean;
    show?: boolean;
    isNew?: boolean;
    mainId?: string;
    zIndex?: number;
    width?: any;
    routePath: string;
}
