import { ISourceUpdater } from './ISourceUpdater'; import { ArrayOrIterable } from '../util/ArrayOrIterable'; import { EqualityComparer } from '../util/isEqualityComparer'; import { IChangeSet } from './IChangeSet'; import { ICache } from './ICache'; export declare class CacheUpdater implements ISourceUpdater { private readonly _cache; private readonly _keySelector?; constructor(cache: ICache, keySelector?: (object: TObject) => TKey); constructor(data: Map, keySelector?: (object: TObject) => TKey, deepEqual?: boolean); get size(): number; entries(items: ArrayOrIterable): IterableIterator<[TKey, TObject]>; values(): IterableIterator; keys(): IterableIterator; lookup(key: TKey): TObject | undefined; load(entry: ArrayOrIterable): void; addOrUpdate(item: TObject, key: TKey): void; addOrUpdate(item: TObject): void; addOrUpdate(item: TObject, comparer: EqualityComparer): void; addOrUpdatePairs(entries: ArrayOrIterable<[TKey, TObject]>): void; refreshKeys(keys: ArrayOrIterable): void; refreshKey(key: TKey): void; removeKeys(keys: ArrayOrIterable): void; removeKey(key: TKey): void; removePairs(entries: ArrayOrIterable<[TKey, TObject]>): void; clone(changes: IChangeSet): void; clear(): void; [Symbol.iterator](): IterableIterator<[TKey, TObject]>; addOrUpdateValues(entries: ArrayOrIterable): void; refreshValues(entries: ArrayOrIterable): void; removeValues(entries: ArrayOrIterable): void; getKey(item: TObject): TKey; refresh(): void; remove(value: TObject): void; }