import { OnDestroy } from '@angular/core';
import { ShContextMenuComponent } from './sh-context-menu.component';
import { Overlay } from '@angular/cdk/overlay';
import { ShContextMenuEvent, ShContextSubMenuEvent } from './sh-context-menu.models';
import { OverlayRef } from '@angular/cdk/overlay';
import { Subscription } from 'rxjs';
export declare class ShContextMenuService implements OnDestroy {
    private overlay;
    activeOverlays: OverlayRef[];
    subs: Subscription;
    activeMenu: ShContextMenuComponent;
    anchorElement: HTMLElement;
    constructor(overlay: Overlay);
    openMenu(ctxEvent: ShContextMenuEvent): void;
    openSubMenu(ctxEvent: ShContextSubMenuEvent): any;
    destroy(): void;
    ngOnDestroy(): void;
    closeSubMenus(menu: ShContextMenuComponent): void;
    private registerDetachEvents;
    private createAndAttachOverlay;
    private buildScrollStrategy;
    private buildPositionStrategy;
    private buildPositionStrategyForSubMenu;
    private closeCurrentOverlays;
    private attachContextToItems;
    private attachThisContext;
    private attachOverlayRef;
    private createAnchorElement;
    private buildSubMenuPositions;
    private buildPositions;
}
