import { type Repository } from '../../core/repository'; import { ResolvedColumn } from './table-column-models.svelte'; import type { TableGroupAction } from './table-group-actions/types.svelte'; import type { TableItemAction, TableStyles, WithId, SelectionSettings, IAnyTableColumn } from './types'; type TableModelInit = { columns: IAnyTableColumn[]; items?: T[]; itemActions?: TableItemAction[]; itemGroupActions?: TableGroupAction[]; styles?: TableStyles; selectionSettings?: SelectionSettings; }; export declare class TableModel { private _init; private _items; private _columns; private _itemActions; private _itemGroupActions; private _styles; private _selection; private _preserveSelection; private _dataProvider; private _highlightedItemIds; constructor(init: TableModelInit); get items(): T[]; get columns(): ResolvedColumn[]; get itemActions(): TableItemAction[]; get itemGroupActions(): TableGroupAction[]; get styles(): Readonly; get selection(): Repository; get highlightedItemIds(): string[]; set items(value: T[]); set itemActions(value: TableItemAction[]); set columns(value: IAnyTableColumn[]); set highlightedItemIds(value: string[]); /** Reassign items as a pure reorder of the same set — preserves the current selection (unlike the `items` setter). */ reorderItems: (value: T[]) => void; updateStyles: (styles: Partial) => void; setResolvedColumns: (columns: ResolvedColumn[]) => void; private reconcileColumns; private mapColumn; } export {};