import { AbstractComponent } from '../core/base';
import type { TableSeriesNumberAttributes } from './type';
import { TableSeriesNumberEventManager } from './event-manager';
import type { IGroup } from '@visactor/vrender-core';
import type { ComponentOptions } from '../interface';
export declare class TableSeriesNumber extends AbstractComponent<Required<TableSeriesNumberAttributes>> {
    static defaultAttributes: Partial<TableSeriesNumberAttributes>;
    name: string;
    protected _tableSeriesNumberContainer: IGroup;
    _cornerGroup: IGroup;
    _rowSeriesNumberGroup: IGroup;
    _colSeriesNumberGroup: IGroup;
    _frozenTopRowSeriesNumberGroup: IGroup;
    _frozenLeftColSeriesNumberGroup: IGroup;
    _frozenRightColSeriesNumberGroup: IGroup;
    _frozenBottomRowSeriesNumberGroup: IGroup;
    _firstRowSeriesNumberIndex: number;
    _firstColSeriesNumberIndex: number;
    _maxTextWidth: number;
    _changeRowSeriesNumberWidthTimer: number;
    interactionState: {
        _lastHoverItem: IGroup;
        _lastClickItem: IGroup;
        selectIndexs?: Set<string>;
    };
    _parsedRowSeriesNumberCellPadding: number[];
    _parsedColSeriesNumberCellPadding: number[];
    initRenderAll: boolean;
    _eventManager: TableSeriesNumberEventManager;
    constructor(attributes: TableSeriesNumberAttributes, options?: ComponentOptions & {
        initRenderAll?: boolean;
    });
    get rowSeriesNumberWidth(): number;
    get colSeriesNumberHeight(): number;
    get rowCount(): number;
    get colCount(): number;
    protected bindEvents(): void;
    dispatchTableSeriesNumberEvent(event: any, ...args: any): void;
    render(): void;
    _renderContent(): void;
    _renderCorner(): void;
    _renderRowSeriesNumber(): void;
    _renderColSeriesNumber(): void;
    _renderFrozenTopRowSeriesNumber(): void;
    _renderFrozenLeftColSeriesNumber(): void;
    recreateCellsToRowSeriesNumberGroup(startIndex: number, endIndex: number): void;
    recreateCellsToColSeriesNumberGroup(startIndex: number, endIndex: number): void;
    changeRowSeriesNumberWidth(newWidth: number): void;
    getRowSeriesNumberCellGroup(index: number): any;
    getColSeriesNumberCellGroup(index: number): any;
    getRowSeriesNumberCellAttributes(index: number): any;
    getColSeriesNumberCellAttributes(index: number): any;
    setRowSeriesNumberCellAttributes(index: number, attributes: TableSeriesNumberAttributes): void;
    setColSeriesNumberCellAttributes(index: number, attributes: TableSeriesNumberAttributes): void;
    setRowSeriesNumberGroupAttributes(attributes: TableSeriesNumberAttributes): void;
    setColSeriesNumberGroupAttributes(attributes: TableSeriesNumberAttributes): void;
    addSelectedIndex(isRow: boolean, index: number): void;
    addRowSelectedRanges(ranges: {
        startIndex: number;
        endIndex: number;
    }[]): void;
    addColSelectedRanges(ranges: {
        startIndex: number;
        endIndex: number;
    }[]): void;
    addCornderSelected(): void;
    resetAllSelectedIndexs({ rowIndexs, colIndexs }: {
        rowIndexs?: number[];
        colIndexs?: number[];
    }): void;
    removeSelectedIndex(isRow: boolean, index: number): void;
    removeAllSelectedIndexs(): void;
    removeOneGroupSelected(group: IGroup): void;
    addOneGroupSelected(group: IGroup): void;
    renderSelectedIndexsState(): void;
}
