import { CdkConnectedOverlay, ConnectedOverlayPositionChange, ConnectionPositionPair } from '@angular/cdk/overlay';
import { ChangeDetectorRef, ElementRef, EventEmitter, OnInit, QueryList, Renderer2, TemplateRef, ViewContainerRef } from '@angular/core';
import { BehaviorSubject } from 'rxjs';
import { MenuComponent } from '../menu.component';
import { AtDropSubmenuComponent } from '../../dropdown/at-drop-submenu/at-drop-submenu.component';
export declare class SubMenuComponent implements OnInit {
    _elementRef: ElementRef;
    cd: ChangeDetectorRef;
    subMenuComponent: SubMenuComponent;
    parent: MenuComponent;
    _renderer: Renderer2;
    _el: any;
    nativeElement: any;
    _active: boolean;
    _isOpen: boolean;
    _popoverCss: {
        left: string;
        right: string;
        top: string;
    };
    triggerWidth: any;
    isInSubMenu: boolean;
    level: number;
    cdkOverlay: CdkConnectedOverlay;
    subMenus: QueryList<SubMenuComponent> | QueryList<AtDropSubmenuComponent>;
    readonly openChange: EventEmitter<boolean>;
    arrowIcon: TemplateRef<void>;
    readonly overlayPositions: ConnectionPositionPair[];
    icon: string | TemplateRef<void>;
    placement: string;
    onPositionChange($event: ConnectedOverlayPositionChange): void;
    readonly expandState: string;
    isOpen: boolean;
    open: boolean;
    constructor(_elementRef: ElementRef, cd: ChangeDetectorRef, subMenuComponent: SubMenuComponent, parent: MenuComponent, _renderer: Renderer2);
    ngOnInit(): void;
    item_class: boolean;
    setActive(): void;
    readonly activeCls: boolean;
    readonly OpenCls: boolean;
    active: boolean;
    popover: ViewContainerRef;
    readonly onHoverClass: {};
    readonly levelPaddingLeft: number | null;
    show(): void;
    $subOpen: BehaviorSubject<boolean>;
    private $mouseSubject;
    private unsubscribe$;
    handleOpenEvent: (data: boolean) => void;
    hoverOn: boolean;
    ngAfterViewInit(): void;
    readonly subMenuType: string;
    onMouseEnterEvent(e: MouseEvent): void;
    onMouseLeaveEvent(e: MouseEvent): void;
    setTriggerWidth(): void;
    readonly themeClass: string;
}
