import { Group } from '@antv/g';
import { TableSeriesNumberCell } from '../cell';
import type { CellCallbackParams, LayoutResult, ViewMeta } from '../common/interface';
import type { SpreadSheet } from '../sheet-type';
import { FrozenFacet } from './frozen-facet';
export declare class TableFacet extends FrozenFacet {
    emptyPlaceholderGroup: Group;
    private lastRowOffset;
    constructor(spreadsheet: SpreadSheet);
    protected getCornerCellInstance(): null;
    protected getRowCellInstance(node: ViewMeta): import("../cell").DataCell;
    protected getColCellInstance(...args: CellCallbackParams): import("../cell").ColCell;
    protected initGroups(): void;
    protected shouldRender(): boolean;
    render(): void;
    clearAllGroup(): void;
    private initEmptyPlaceholderGroup;
    private renderEmptyPlaceholder;
    private getDataCellAdaptiveHeight;
    private getCellHeightByRowIndex;
    /**
     * 开启换行后, 需要自适应调整高度, 明细表通过 rowCell.heightByField 调整, 同时还有一个 rowOffsets 控制行高, 所以要提前设置好, 保证渲染正确.
     */
    private presetRowCellHeightIfNeeded;
    protected calculateRowOffsets(): void;
    private onSortHandler;
    private onFilterHandler;
    destroy(): void;
    protected calculateCornerBBox(): void;
    protected doLayout(): LayoutResult;
    private buildColHeaderHierarchy;
    getCellMeta(rowIndex?: number, colIndex?: number): ViewMeta | null;
    private getAdaptiveColWidth;
    private calculateColLeafNodesWidth;
    private calculateColNodesHeight;
    private calculateColNodesCoordinate;
    private getCompactColNodeWidth;
    private getColLeafNodesWidth;
    getViewCellHeights(): {
        getTotalHeight: () => number;
        getCellOffsetY: (offset: number) => number;
        getTotalLength: () => number;
        getIndexRange: (minHeight: number, maxHeight: number) => {
            start: number;
            end: number;
        };
    };
    protected renderRowResizeArea(): void;
    protected getRowHeader(): null;
    protected getColHeader(): import("./header").ColHeader;
    protected getSeriesNumberHeader(): null;
    protected getScrollbarPosition(): {
        maxY: number;
        maxX: number;
    };
    /**
     * 获取序号单元格
     * @description 明细表序号单元格是基于 DataCell 实现
     */
    getSeriesNumberCells(): TableSeriesNumberCell[];
    getContentWidth(): number;
    getContentHeight(): number;
}
