import { FocusMonitor, FocusOrigin } from '@angular/cdk/a11y';
import { Overlay } from '@angular/cdk/overlay';
import { ElementRef, EventEmitter, OnDestroy, ViewContainerRef } from '@angular/core';
import { MenuComponent } from './menu.component';
import { MenuItemComponent } from './menu-item.component';
export declare class MenuTriggerDirective implements OnDestroy {
    private _overlay;
    private _element;
    private _viewContainerRef;
    private _parentMenu;
    private _menuItemInstance;
    private _focusMonitor?;
    menu: MenuComponent;
    readonly menuOpened: EventEmitter<void>;
    readonly menuClosed: EventEmitter<void>;
    private _menu;
    private _menuOpen;
    private _openedBy;
    private _overlayRef;
    private _portal;
    private _closingActionsSubscription;
    private _menuCloseSubscription;
    constructor(_overlay: Overlay, _element: ElementRef<HTMLElement>, _viewContainerRef: ViewContainerRef, _parentMenu: MenuComponent, _menuItemInstance: MenuItemComponent, _focusMonitor?: FocusMonitor);
    ngOnDestroy(): void;
    readonly menuOpen: boolean;
    triggersSubmenu(): boolean;
    toggleMenu(): void;
    openMenu(): void;
    closeMenu(): void;
    focus(origin?: FocusOrigin): void;
    private _destroyMenu;
    private _initMenu;
    private _resetMenu;
    private _setIsMenuOpen;
    private _createOverlay;
    private _getOverlayConfig;
    private _subscribeToPositions;
    private _setArrowPosition;
    private _setPosition;
    private _cleanUpSubscriptions;
    private _menuClosingActions;
    onClick(event: MouseEvent): void;
    onKeydown(event: KeyboardEvent): void;
    onMousedown(event: MouseEvent): void;
    private _getPortal;
}
