@ctrl/ngx-rightclick
Version:
GitHub Buttons for Angular. Star, Like, Follow and more
38 lines (37 loc) • 1.48 kB
TypeScript
import { Overlay, OverlayRef, ScrollStrategyOptions } from '@angular/cdk/overlay';
import { Injector, EventEmitter } from '@angular/core';
import { BehaviorSubject } from 'rxjs';
export interface ActiveContextMenuSub {
id: number;
isTriggerHovered: BehaviorSubject<boolean>;
isMenuHovered: BehaviorSubject<boolean>;
submenu: boolean;
}
export interface ActiveContextMenu extends ActiveContextMenuSub {
overlayRef: OverlayRef;
component: any;
menuClose: EventEmitter<void>;
menuAction: EventEmitter<any>;
}
export declare class ContextMenuService {
private overlay;
private scrollStrategy;
private injector;
menus: ActiveContextMenu[];
id: number;
constructor(overlay: Overlay, scrollStrategy: ScrollStrategyOptions, injector: Injector);
/**
*
* @param $event triggering event
* @param menuComponent the component to be shown
* @param submenu is a menu within a menu
* @param level if submenu, what level
*/
show($event: MouseEvent, menuComponent: any, context: any, menuClose: EventEmitter<any>, menuAction: EventEmitter<any>, submenu?: boolean, level?: number): ActiveContextMenu;
getCurrentLevel(): number;
closeAll(context?: any, idx?: number): void;
destroyMenu(menu: ActiveContextMenu, context?: any): void;
close(menu: ActiveContextMenu, menuIndex: number, context?: any): void;
checkOutsideClick($event: MouseEvent): void;
closeSubMenu(id: number): void;
}