import { Direction } from '@angular/cdk/bidi';
import { EventEmitter, OnDestroy, OnInit } from '@angular/core';
import { SafeHtml } from '@angular/platform-browser';
import { Menu, MenuInner } from '@delon/theme';
import * as i0 from "@angular/core";
export interface Nav extends MenuInner {
    _needIcon?: boolean;
    _text?: SafeHtml;
}
export declare class LayoutDefaultNavComponent implements OnInit, OnDestroy {
    private readonly doc;
    private readonly win;
    private readonly router;
    private readonly render;
    private readonly menuSrv;
    private readonly settings;
    private readonly cdr;
    private readonly ngZone;
    private readonly sanitizer;
    private readonly directionality;
    private bodyEl;
    private destroy$;
    private floatingEl;
    dir?: Direction;
    list: Nav[];
    disabledAcl: boolean;
    autoCloseUnderPad: boolean;
    recursivePath: boolean;
    hideEmptyChildren: boolean;
    set openStrictly(value: boolean);
    maxLevelIcon: number;
    readonly select: EventEmitter<Menu>;
    get collapsed(): boolean;
    private getLinkNode;
    private floatingClickHandle;
    private clearFloating;
    private genFloating;
    private genSubNode;
    private hideAll;
    private calPos;
    showSubMenu(e: MouseEvent, item: Nav): void;
    to(item: Menu): void;
    toggleOpen(item: Nav): void;
    _click(): void;
    closeSubMenu(): void;
    private openByUrl;
    ngOnInit(): void;
    private fixHide;
    ngOnDestroy(): void;
    private get isPad();
    private underPad;
    private openAside;
    static ɵfac: i0.ɵɵFactoryDeclaration<LayoutDefaultNavComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<LayoutDefaultNavComponent, "layout-default-nav", never, { "disabledAcl": { "alias": "disabledAcl"; "required": false; }; "autoCloseUnderPad": { "alias": "autoCloseUnderPad"; "required": false; }; "recursivePath": { "alias": "recursivePath"; "required": false; }; "hideEmptyChildren": { "alias": "hideEmptyChildren"; "required": false; }; "openStrictly": { "alias": "openStrictly"; "required": false; }; "maxLevelIcon": { "alias": "maxLevelIcon"; "required": false; }; }, { "select": "select"; }, never, never, false, never>;
    static ngAcceptInputType_disabledAcl: unknown;
    static ngAcceptInputType_autoCloseUnderPad: unknown;
    static ngAcceptInputType_recursivePath: unknown;
    static ngAcceptInputType_hideEmptyChildren: unknown;
    static ngAcceptInputType_openStrictly: unknown;
    static ngAcceptInputType_maxLevelIcon: unknown;
}
