import type { TableColumn } from '../../table-column/base'; import { type TableRecord, TableRowSelectionMode, type TableSetRecordHierarchyOptions, type TableValidity } from '../types'; /** * Helper class for the nimble-table to validate that the table's configuration * is valid and report which aspects of the configuration are valid or invalid. */ export declare class TableValidator { private duplicateRecordId; private missingRecordId; private invalidRecordId; private duplicateColumnId; private missingColumnId; private duplicateSortIndex; private duplicateGroupIndex; private idFieldNameNotConfigured; private invalidColumnConfiguration; private invalidParentIdConfiguration; private readonly recordIds; getValidity(): TableValidity; isValid(): boolean; areRecordIdsValid(): boolean; validateIdFieldConfiguration(selectionMode: TableRowSelectionMode, idFieldName: string | undefined, parentIdFieldName: string | undefined): boolean; validateRecordIds(data: readonly TData[], idFieldName: string | undefined): boolean; validateColumnIds(columnIds: readonly (string | undefined)[]): boolean; validateColumnSortIndices(sortIndices: readonly number[]): boolean; validateColumnGroupIndices(groupIndices: readonly number[]): boolean; validateColumnConfigurations(columns: readonly TableColumn[]): boolean; getPresentRecordIds(requestedRecordIds: readonly string[]): string[]; getOptionsWithPresentIds(requestedOptions: readonly TableSetRecordHierarchyOptions[]): TableSetRecordHierarchyOptions[]; setParentIdConfigurationValidity(valid: boolean): void; private validateIndicesAreUnique; }