import type { RectProps } from '../../ts-types';
import type { Placement } from '../../ts-types';
import type { BaseTooltip } from './BaseTooltip';
import type { TooltipOptions } from '../../ts-types/tooltip';
import type { BaseTableAPI } from '../../ts-types/base-table';
export interface ITooltipHandler {
    new (table: BaseTableAPI, confine: boolean): TooltipHandler;
}
export declare class TooltipHandler {
    private _table;
    private _tooltipInstances?;
    private _attachInfo?;
    private confine?;
    constructor(table: BaseTableAPI, confine: boolean);
    release(): void;
    _bindToCell(col: number, row: number, tooltipOptions?: TooltipOptions): void;
    _move(col: number, row: number, tooltipOptions: TooltipOptions): void;
    moveToPosition(col: number, row: number, position?: {
        x: number;
        y: number;
    }, referencePosition?: {
        rect: RectProps;
        placement?: Placement;
    }): void;
    _unbindFromCell(): void;
    _isBindCell(col: number, row: number): boolean;
    _bindTableEvent(table: BaseTableAPI): void;
    showTooltip(col: number, row: number): void;
    _getTooltipInstanceInfo(col: number, row: number): BaseTooltip | null;
    isBinded(tooltipOptions: TooltipOptions): boolean;
}
