import BaseUI from './_base'; /** * Represents a selection item from the context menu callback. */ interface ContextMenuSelection { start: { row: number; }; end: { row: number; }; } /** * Represents a context menu item. */ interface ContextMenuItem { key: string; callback?: (key: string, selection: ContextMenuSelection[]) => void; name?: string | (() => string); disabled?: () => boolean; [key: string]: unknown; } /** * Context menu default options with items array. */ interface ContextMenuDefaultOptions { items: ContextMenuItem[]; [key: string]: unknown; } /** * Class responsible for the Context Menu entries for the Nested Rows plugin. * * @private * @class ContextMenuUI * @augments BaseUI */ declare class ContextMenuUI extends BaseUI { #private; /** * Reference to the DataManager instance connected with the Nested Rows plugin. * * @type {DataManager} */ dataManager: import("../data/dataManager").default | null; /** * Append options to the context menu. (Propagated from the `afterContextMenuDefaultOptions` hook callback) * f. * * @private * @param {object} defaultOptions Default context menu options. * @returns {*} */ appendOptions(defaultOptions: ContextMenuDefaultOptions): ContextMenuDefaultOptions; /** * Modify how the row inserting options work. * * @private * @param {object} defaultOptions Default context menu items. * @returns {*} */ modifyRowInsertingOptions(defaultOptions: ContextMenuDefaultOptions): ContextMenuDefaultOptions; } export default ContextMenuUI;