import { Cell, Row, Tabulator } from '../../../../../hybrid/table-core/src/index.ts';
import { default as Module } from '../../../../../hybrid/table-core/src/tabulator-tables/core/Module';
import { IHoverMenu } from '../../../../../types/src/table';
import { CxTableRowActions } from '../components';

export default class HoverMenu extends Module implements IHoverMenu {
    static readonly moduleName = "hoverMenu";
    private static readonly placementDataAttribute;
    hoverMenuField: string;
    constructor(table: Tabulator);
    initialize(): void;
    handleRowMouseEnter(e: Event, row: Row): void;
    handleRowMouseLeave(e: Event, row: Row): void;
    handleCellMouseEnter(e: Event, cell: Cell): void;
    handleCellMouseLeave(e: Event, cell: Cell): void;
    createHoverMenuElement(): CxTableRowActions;
    layoutRow(row: Row): void;
    private getMenuPlacement;
    private applyMenuPosition;
    layoutCell(cell: Cell): void;
}
