import { ColCell, DataCell, MergedCell, RowCell } from '../cell'; import { InteractionStateName, InterceptType } from '../common/constant'; import type { InteractionStateInfo, Intercept, MergedCellInfo, S2CellType, SelectHeaderCellInfo } from '../common/interface'; import { Node } from '../facet/layout/node'; import type { SpreadSheet } from '../sheet-type'; import type { BaseEvent } from './base-event'; import { EventController } from './event-controller'; export declare class RootInteraction { spreadsheet: SpreadSheet; interactions: Map; intercepts: Set; private hoverTimer; eventController: EventController; private defaultState; constructor(spreadsheet: SpreadSheet); destroy(): void; reset(): void; setState(interactionStateInfo: InteractionStateInfo): void; getState(): InteractionStateInfo; setInteractedCells(cell: S2CellType): void; getInteractedCells(): S2CellType[]; resetState(): void; getCurrentStateName(): InteractionStateName; isEqualStateName(stateName: InteractionStateName): boolean; private isStateOf; isSelectedState(): boolean; isAllSelectedState(): boolean; isHoverFocusState(): boolean; isHoverState(): boolean; isActiveCell(cell: S2CellType): boolean; isSelectedCell(cell: S2CellType): boolean; getCells(): import("../common/interface").CellMeta[]; getActiveCells(): S2CellType[]; clearStyleIndependent(): void; getPanelGroupAllUnSelectedDataCells(): DataCell[]; getPanelGroupAllDataCells(): DataCell[]; getAllRowHeaderCells(): RowCell[]; getAllColHeaderCells(): ColCell[]; getRowColActiveCells(ids: string[]): S2CellType[]; getAllCells(): S2CellType[]; selectAll: () => void; getCellChildrenNodes: (cell: S2CellType) => Node[]; selectHeaderCell: (selectHeaderCellInfo?: SelectHeaderCellInfo) => boolean; highlightNodes: (nodes?: Node[]) => void; mergeCells: (cellsInfo?: MergedCellInfo[], hideData?: boolean) => void; unmergeCell: (removedCells: MergedCell) => void; hideColumns(hiddenColumnFields?: string[], forceRender?: boolean): void; private getDefaultInteractions; private registerInteractions; private registerEventController; draw(): void; clearState(): void; changeState(interactionStateInfo: InteractionStateInfo): void; updatePanelGroupAllDataCells(): void; updateCells(cells?: S2CellType[]): void; addIntercepts(interceptTypes?: InterceptType[]): void; hasIntercepts(interceptTypes?: InterceptType[]): boolean; removeIntercepts(interceptTypes?: InterceptType[]): void; clearHoverTimer(): void; setHoverTimer(timer: number): void; getHoverTimer(): number; }