import type { AggregationType, CellAddress, CellRange, ColumnsDefine, DropDownMenuEventInfo, FieldData, FieldDef, FieldFormat, FieldKeyDef, FilterRules, IPagination, ListTableAPI, ListTableConstructorOptions, MaybePromiseOrUndefined, SortState } from './ts-types'; import { HierarchyState } from './ts-types'; import { BaseTable } from './core'; import type { ListTableProtected } from './ts-types/base-table'; import type { IEditor } from '@visactor/vtable-editors'; import type { ColumnDefine } from './ts-types/list-table/layout-map/api'; import type { ListTreeStickCellPlugin } from './plugins/list-tree-stick-cell'; export declare class ListTable extends BaseTable implements ListTableAPI { internalProps: ListTableProtected; options: ListTableConstructorOptions; showHeader: boolean; listTreeStickCellPlugin?: ListTreeStickCellPlugin; constructor(options: ListTableConstructorOptions); constructor(container: HTMLElement, options: ListTableConstructorOptions); isListTable(): true; isPivotTable(): false; isPivotChart(): false; get sortState(): SortState | SortState[]; get records(): any[]; get recordsCount(): number; updateColumns(columns: ColumnsDefine, options?: { clearColWidthCache?: boolean; clearRowHeightCache?: boolean; }): void; private _recreateSceneForStateChange; addColumns(toAddColumns: ColumnDefine[], colIndex?: number, isMaintainArrayData?: boolean): void; deleteColumns(deleteColIndexs: number[], isMaintainArrayData?: boolean): void; get columns(): ColumnsDefine; get header(): ColumnsDefine; set header(header: ColumnsDefine); get transpose(): boolean; set transpose(transpose: boolean); getCellValue(col: number, row: number, skipCustomMerge?: boolean): FieldData; getCellOriginValue(col: number, row: number): FieldData; getCellRawValue(col: number, row: number): FieldData; getRecordShowIndexByCell(col: number, row: number): number; getRecordIndexByCell(col: number, row: number): number | number[]; getTableIndexByRecordIndex(recordIndex: number | number[]): number; getTableIndexByField(field: FieldDef): number; getCellAddrByFieldRecord(field: FieldDef, recordIndex: number): CellAddress; getCellOriginRecord(col: number, row: number): MaybePromiseOrUndefined; getCellRawRecord(col: number, row: number): MaybePromiseOrUndefined; _canResizeColumn(col: number, row: number): boolean; updateOption(options: ListTableConstructorOptions, updateConfig?: { clearColWidthCache?: boolean; clearRowHeightCache?: boolean; }): Promise; updatePagination(pagination: IPagination): void; refreshHeader(): void; refreshRowColCount(): void; getFieldData(field: FieldDef | FieldFormat | undefined, col: number, row: number): FieldData; getRawFieldData(field: FieldDef | FieldFormat | undefined, col: number, row: number): FieldData; _moveHeaderPosition(source: CellAddress, target: CellAddress): { sourceIndex: number; targetIndex: number; sourceSize: number; targetSize: number; moveType: "row" | "column"; }; changeRecordOrder(sourceIndex: number, targetIndex: number): void; getCellAddress(findTargetRecord: any | ((record: any) => boolean), field: FieldDef): CellAddress; getCellRangeByField(field: FieldDef, index: number): CellRange | null; getHierarchyState(col: number, row: number): HierarchyState; getRecordHierarchyState(col: number, row: number): HierarchyState; toggleHierarchyState(col: number, row: number, recalculateColWidths?: boolean): void; setLoadingHierarchyState(col: number, row: number): void; _refreshHierarchyState(col: number, row: number, recalculateColWidths?: boolean): void; _hasHierarchyTreeHeader(): boolean; getMenuInfo(col: number, row: number, type: string): DropDownMenuEventInfo; _getSortFuncFromHeaderOption(columns: ColumnsDefine | undefined, field: FieldDef, fieldKey?: FieldKeyDef): SortState['orderFn'] | undefined; updateSortState(sortState: SortState[] | SortState | null, executeSort?: boolean): void; updateFilterRules(filterRules: FilterRules): void; getFilteredRecords(): any[]; getCheckboxState(field?: string | number): any[]; getCellCheckboxState(col: number, row: number): boolean | "indeterminate"; getRadioState(field?: string | number): number | boolean | Record>; getCellRadioState(col: number, row: number): boolean | number; setCellCheckboxState(col: number, row: number, checked: boolean | 'indeterminate'): void; setCellRadioState(col: number, row: number, index?: number): void; getSwitchState(field?: string | number): any[]; getCellSwitchState(col: number, row: number): boolean | "indeterminate"; setCellSwitchState(col: number, row: number, checked: boolean | 'indeterminate'): void; setRecords(records: Array, option?: { sortState?: SortState | SortState[] | null; }): void; setRecordChildren(records: any[], col: number, row: number, recalculateColWidths?: boolean): void; startEditCell(col?: number, row?: number, value?: string | number): void; completeEditCell(): void; getEditor(col: number, row: number): IEditor; isHasEditorDefine(col: number, row: number): boolean; changeCellValue(col: number, row: number, value: string | number | null, workOnEditableCell?: boolean, triggerEvent?: boolean): void; changeCellValues(startCol: number, startRow: number, values: (string | number)[][], workOnEditableCell?: boolean, triggerEvent?: boolean): Promise; addRecord(record: any, recordIndex?: number | number[]): void; addRecords(records: any[], recordIndex?: number | number[]): void; deleteRecords(recordIndexs: number[] | number[][]): void; updateRecords(records: any[], recordIndexs: (number | number[])[]): void; _hasCustomRenderOrLayout(): boolean; getAggregateValuesByField(field: string | number): { col: number; aggregateValue: { aggregationType: AggregationType; value: number | string; }[]; }[]; isAggregation(col: number, row: number): boolean; getGroupTitleLevel(col: number, row: number): number | undefined; getBodyRowIndexByRecordIndex(index: number | number[]): number; release(): void; expandAllTreeNode(): void; collapseAllTreeNode(): void; mergeCells(startCol: number, startRow: number, endCol: number, endRow: number): void; unmergeCells(startCol: number, startRow: number, endCol: number, endRow: number): void; }