import type { MenuInstanceInfo } from '../../../ts-types';
import type { BaseTableAPI } from '../../../ts-types/base-table';
import type { MenuContainer } from './logic/MenuContainer';
import type { MenuElement } from './logic/MenuElement';
export declare abstract class BaseMenu {
    protected _table: BaseTableAPI;
    private _menuElement?;
    constructor(table: BaseTableAPI);
    release(): void;
    private _getMenuElement;
    abstract createMenuElementInternal(): MenuElement | MenuContainer;
    bindMenuElement(col: number, row: number, menuInstanceInfo: MenuInstanceInfo): boolean;
    unbindMenuElement(): void;
    pointInMenuElement(x: number, y: number): boolean;
    getRootElement(): HTMLElement;
}
