import type { IDataSelectionService } from './dataSelectionServiceTypes'; import { DataSet } from './dataSet'; /** * @returns A deep clone of the DataSet. Selection state is preserved only when * `dataIdKey` is set (transferred via key mapping). Without `dataIdKey`, selections * are dropped because index-based transfer cannot guarantee correctness after the * clone's data is independently mutated. */ export declare function deepCloneDataSet(service: IDataSelectionService | undefined, src: DataSet): DataSet; /** * Create a new DataSet, transferring persistent state from a predecessor. * For subclasses that take additional constructor args (e.g. HierarchyDataSet), * use the two-phase pattern: construct, then call `transferFrom()` explicitly. */ export declare function replaceDataSet(service: IDataSelectionService | undefined, src: DataSet | undefined, data: T[], dataIdKey: string | undefined): DataSet;