import { ElementRef, AfterViewInit, ChangeDetectorRef, Renderer2 } from '@angular/core';
import { Router } from '@angular/router';
import { Subject } from 'rxjs';
import { SubMenuService } from '../../../services/submenu.service';
export declare class TlAdvancedSubMenu implements AfterViewInit {
    private router;
    private change;
    private renderer;
    icon: string;
    label: string;
    subItem: string;
    items: any[];
    docked: boolean;
    width: string;
    dockWidth: string;
    itemHeight: string;
    group: string;
    operationMode: string;
    anchorElements: any[];
    parentNode: any;
    callBack: Function;
    previousMenu: any;
    visibilitySubMenu: boolean;
    leftPosition: string;
    listMenuElements: any[];
    fixed: boolean;
    menuService: any;
    onSubMenuLoad: Subject<boolean>;
    private index;
    private link;
    private relativeWindowPosition;
    subMenuList: ElementRef;
    constructor(router: Router, change: ChangeDetectorRef, renderer: Renderer2);
    ngAfterViewInit(): void;
    setMenuService(menuService: SubMenuService): void;
    setDataSubMenu(items: any): void;
    setProperties(properties: any): void;
    setAnchorElement(item: any, element: any): void;
    toggleSubMenu(element: any): void;
    onHoverSubMenu(element: any): void;
    onLeaveSubMenu(element: any): void;
    isOperationModeHover(): boolean;
    isContentMath(element: any): any[];
    toggleVisibility(element?: any): void;
    callbackListElement($event: any, item: any): Promise<boolean>;
    handleCallbackItem(item: any, $event: any): void;
    handleNextSubMenuVisibility(element: any): void;
    getListMenuElements(): void;
    setFocusFirstElement(): void;
    onArrowDown($event: any): void;
    onArrowLeft(): void;
    onArrowRight($event: any, element: any): void;
    onArrowUp($event: any): void;
    setFocusElement(): void;
    alreadyTaken(element: any): any[];
    close(): void;
    setPosition(): void;
    isPreviousRootMenu(): boolean;
}
