import { ArrayOrIterable } from '../util/ArrayOrIterable'; import { IChangeSet } from './IChangeSet'; import { ICache } from './ICache'; import { ChangeSet } from './ChangeSet'; /** * A cache which captures all changes which are made to it. These changes are recorded until CaptureChanges() at which point thw changes are cleared. * * Used for creating custom operators */ export declare class ChangeAwareCache implements ICache { private _changes?; private _data; private readonly _deepEqual; private _mapAdapter; get size(): number; entries(): IterableIterator<[TKey, TObject]>; values(): IterableIterator; keys(): IterableIterator; /** Initializes a new instance of the class. */ constructor(deepEqual: boolean); constructor(data?: Map, deepEqual?: boolean); lookup(key: TKey): any; /** * Adds the item to the cache without checking whether there is an existing value in the cache */ add(item: TObject, key: TKey): void; addOrUpdate(item: TObject, key: TKey): void; /** * Raises an evaluate change for the specified keys */ refresh(): void; clear(): void; clone(changes: IChangeSet): void; private ensureInitialised; /** * Create a changeset from recorded changes and clears known changes. */ captureChanges(): ChangeSet; readonly [Symbol.toStringTag] = "Cache"; [Symbol.iterator](): IterableIterator<[TKey, TObject]>; refreshKey(key: TKey): void; refreshKeys(keys: ArrayOrIterable): void; removeKey(key: TKey): void; removeKeys(keys: ArrayOrIterable): void; }