import { CacheSnapshot, KeyFieldValue, ScrollAlign } from '../types'; export declare function getItemKey(item: unknown, index: number, keyField: KeyFieldValue | null): string | number; export declare function getItemKeys(items: unknown[], keyField: KeyFieldValue | null): Array; export declare function buildCacheSnapshot(items: unknown[], keyField: KeyFieldValue | null, getSize: (item: unknown, index: number, key: string | number) => number | undefined): CacheSnapshot; export declare function isCacheSnapshotCompatible(snapshot: CacheSnapshot | null | undefined, items: unknown[], keyField: KeyFieldValue | null): snapshot is CacheSnapshot; export declare function restoreCacheMap(snapshot: CacheSnapshot | null | undefined, items: unknown[], keyField: KeyFieldValue | null): Record; export declare function findPrependOffset(previousKeys: Array, nextKeys: Array): number; export declare function getAlignedScrollOffset(itemStart: number, itemSize: number, viewportStart: number, viewportSize: number, align: ScrollAlign | undefined, offset?: number): number | null;