UNPKG

@sheetxl/models

Version:

Models - A Headless javascript spreadsheet library.

67 lines 2.56 kB
import { CellRangeCoords, RemoveListener } from "@sheetxl/common"; import { SerializableProperties } from "../primitives"; import { TransactionStore, ITransaction } from "../transaction"; import { ISheetStyle, ITableStyle } from '..'; import { ITableModel, AutoFilter, TableColumn, TableStyleInfo, TableModelValues, UpdateTableModelOptions, ITableModelListener } from "./ITableModel"; export interface TableModelOptions { /** * A transaction store that can be used to undo/redo changes to the table. */ transactionStore?: TransactionStore; sheetStyle?: ISheetStyle; defaultTableStyle?: TableStyleInfo; initialJSON?: SerializableProperties<TableModelValues>; } /** * Default TableModel */ export declare class TableModel implements ITableModel { private _listeners; private _options; private _transactionStore; private _transactionStoreRemoveListener; private _closed; private _sheetStyle; private _sheetStyleRemoveListener; private _styleCache; constructor(options: TableModelOptions); getTableStyle(): ITableStyle; update(values: TableModelValues, options?: UpdateTableModelOptions): void; insertRows(_offset: number, count: number): void; removeRows(_offset: number, count: number): void; insertColumns(offset: number, count: number): void; removeColumns(offset: number, count: number): void; get name(): string; set name(newValue: string); get ref(): CellRangeCoords; set ref(newValue: CellRangeCoords); get displayName(): string; set displayName(newValue: string); get headerRowCount(): number; set headerRowCount(newValue: number); get totalsRowCount(): number; set totalsRowCount(newValue: number); get autoFilter(): AutoFilter; set autoFilter(newValue: AutoFilter); get sortState(): any; set sortState(newValue: any); get columns(): TableColumn[]; set columns(newValue: TableColumn[]); get styleInfo(): TableStyleInfo; set styleInfo(newValue: TableStyleInfo); private _modifyTable; pushTransaction(description?: string): ITransaction; private _getTransactionState; private _pushTransaction; private _updateTransactionState; toJSON(): SerializableProperties<ITableModel> | null; private _fromJSON; notifyOnTableChange(): void; notifyOnClose(): void; addListener(listener: ITableModelListener): RemoveListener; isClosed(): boolean; close(): void; get isModelTable(): true; } export default TableModel; //# sourceMappingURL=TableModel.d.ts.map