UNPKG

ag-grid-community

Version:

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

64 lines (63 loc) 2.97 kB
import type { NamedBean } from '../../context/bean'; import { BeanStub } from '../../context/beanStub'; import type { AgColumn } from '../../entities/agColumn'; import type { AgProvidedColumnGroup } from '../../entities/agProvidedColumnGroup'; import type { ColumnEventType } from '../../events'; import type { ContainerType } from '../../interfaces/iAfterGuiAttachedParams'; import type { Column } from '../../interfaces/iColumn'; interface BaseShowColumnMenuParams { column?: Column; onClosedCallback?: () => void; } interface BaseShowFilterMenuParams { column: Column; containerType: ContainerType; } interface MouseShowMenuParams { mouseEvent: MouseEvent | Touch; positionBy: 'mouse'; } interface ButtonShowMenuParams { buttonElement: HTMLElement; positionBy: 'button'; } interface AutoShowMenuParams { positionBy: 'auto'; } type ShowColumnMenuParams = (MouseShowMenuParams | ButtonShowMenuParams | AutoShowMenuParams) & BaseShowColumnMenuParams; type ShowFilterMenuParams = (MouseShowMenuParams | ButtonShowMenuParams | AutoShowMenuParams) & BaseShowFilterMenuParams; type ToggleColumnMenuParams = ButtonShowMenuParams & BaseShowColumnMenuParams; type ToggleFilterMenuParams = ButtonShowMenuParams & BaseShowFilterMenuParams; export type PopupToggleResult = 'opened' | 'closed' | 'declined'; /** @internal AG_GRID_INTERNAL - Not for public use. Can change / be removed at any time. */ export declare class MenuService extends BeanStub implements NamedBean { beanName: "menuSvc"; private activeMenuFactory?; private activeButtonMenu?; postConstruct(): void; destroy(): void; showColumnMenu(params: ShowColumnMenuParams): void; showFilterMenu(params: ShowFilterMenuParams): void; toggleColumnMenu(params: ToggleColumnMenuParams): PopupToggleResult; toggleFilterMenu(params: ToggleFilterMenuParams): PopupToggleResult; showHeaderContextMenu(column: AgColumn | AgProvidedColumnGroup | undefined, mouseEvent?: MouseEvent, touchEvent?: TouchEvent): void; hidePopupMenu(): void; hideFilterMenu(): void; private toggleMenu; private showButtonMenu; private setActiveButtonMenu; isColumnMenuInHeaderEnabled(column: AgColumn): boolean; isFilterMenuInHeaderEnabled(column: AgColumn): boolean; isHeaderContextMenuEnabled(column?: AgColumn | AgProvidedColumnGroup): boolean; isHeaderMenuButtonAlwaysShowEnabled(): boolean; isHeaderMenuButtonEnabled(): boolean; isHeaderFilterButtonEnabled(column: AgColumn): boolean; isFilterMenuItemEnabled(column: AgColumn): boolean; isFloatingFilterButtonEnabled(column: AgColumn): boolean; private isFloatingFilterButtonDisplayed; private isSuppressMenuHide; private showColumnMenuCommon; } /** @internal AG_GRID_INTERNAL - Not for public use. Can change / be removed at any time. */ export declare function _setColMenuVisible(column: AgColumn, visible: boolean, source: ColumnEventType): void; export {};