import type { DataModel, DataModelOptions, UngroupedData } from './dataModel';
import type { DataSet } from './dataSet';
interface CachedDataItem<D extends object, K extends keyof D & string = keyof D & string> {
    ids: string[];
    opts: DataModelOptions<K, any>;
    dataSet: DataSet<D>;
    dataLength: number;
    dataModel: DataModel<any, any, any>;
    processedData: UngroupedData<any> | undefined;
}
export type CachedData = CachedDataItem<any, any>[];
export declare function canReuseCachedData<D extends object, K extends keyof D & string = keyof D & string>(cachedDataItem: CachedDataItem<any, any>, dataSet: DataSet<D>, ids: string[], opts: DataModelOptions<K, any>): boolean;
export {};
