UNPKG

ag-grid-enterprise

Version:

Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue

27 lines (26 loc) 2.28 kB
import type { _AgCoreBeanCollection, _BaseEvents, _BaseProperties, _IPropertiesService, _WithoutCommon } from 'ag-grid-community'; import { _AgBeanStub } from 'ag-grid-community'; import type { AgMenuItemCallbacks, AgMenuItemDef } from './agMenuItemComponent'; export interface AgContextMenuServiceParams<TBeanCollection, TCommon, TMenuActionParams extends TCommon, TDefaultMenuItem extends string> { menuItemCallbacks: AgMenuItemCallbacks<TBeanCollection, TMenuActionParams, TCommon>; getMenuItems(menuActionParams: _WithoutCommon<TCommon, TMenuActionParams>, mouseEvent: MouseEvent | Touch): (TDefaultMenuItem | AgMenuItemDef<TMenuActionParams, TCommon>)[] | Promise<(TDefaultMenuItem | AgMenuItemDef<TMenuActionParams, TCommon>)[]> | undefined; mapMenuItems?(menuItems: (TDefaultMenuItem | AgMenuItemDef<TMenuActionParams, TCommon>)[], menuActionParams: _WithoutCommon<TCommon, TMenuActionParams>, getGui: () => HTMLElement): (TDefaultMenuItem | AgMenuItemDef<TMenuActionParams, TCommon>)[]; shouldBlockMenuOpen?(): boolean; beforeMenuOpen?(menuActionParams: _WithoutCommon<TCommon, TMenuActionParams>): void; onMenuOpen?(): void; onMenuClose?(): void; afterMenuDestroyed?(): void; onVisibleChanged?(visible: boolean, source: 'api' | 'ui'): void; } export declare class AgContextMenuService<TBeanCollection extends _AgCoreBeanCollection<TProperties, TGlobalEvents, TCommon, TPropertiesService>, TProperties extends _BaseProperties, TGlobalEvents extends _BaseEvents, TCommon, TPropertiesService extends _IPropertiesService<TProperties, TCommon>, TComponentSelectorType extends string, TMenuActionParams extends TCommon, TDefaultMenuItem extends string> extends _AgBeanStub<TBeanCollection, TProperties, TGlobalEvents, TCommon, TPropertiesService> { private readonly params; private destroyLoadingSpinner; private lastPromise; private activeMenu; constructor(params: AgContextMenuServiceParams<TBeanCollection, TCommon, TMenuActionParams, TDefaultMenuItem>); hideActiveMenu(): void; showMenu(menuActionParams: _WithoutCommon<TCommon, TMenuActionParams>, mouseEvent: MouseEvent | Touch, anchorToElement?: HTMLElement): boolean; private createLoadingIcon; private createContextMenu; destroy(): void; }