import { Observable } from 'rxjs'; import { IChangeSet } from './IChangeSet'; import { ICacheUpdater } from './ICacheUpdater'; import { ChangeSet } from './ChangeSet'; import { ISourceUpdater } from './ISourceUpdater'; import { Change } from './Change'; import { IObservableCache } from './IObservableCache'; export declare class ObservableCache implements IObservableCache { private readonly _changes; private readonly _changesPreview; private readonly _countChanged; private readonly _readerWriter; private readonly _cleanUp; private _editLevel; private _keySelector?; constructor(keySelector?: (object: TObject) => TKey, deepEqual?: boolean); constructor(source?: Observable>, deepEqual?: boolean); constructor(deepEqual: boolean); constructor(); [Symbol.iterator](): IterableIterator<[TKey, TObject]>; /** * @internal */ updateFromIntermediate(updateAction: (updater: ICacheUpdater) => void): void; /** * @internal */ updateFromSource(updateAction: (updater: ISourceUpdater) => void): void; private invokePreview; private invokeNext; get countChanged(): Observable; watch(key: TKey): Observable>; connect(predicate?: (value: TObject) => boolean): Observable>; preview(predicate?: (value: TObject) => boolean): Observable>; /** * @internal */ getInitialUpdates(filter?: (value: TObject) => boolean): ChangeSet; get size(): number; entries(): IterableIterator<[TKey, TObject]>; values(): IterableIterator; keys(): IterableIterator; lookup(key: TKey): TObject | undefined; dispose(): void; getKey(item: TObject): NonNullable; readonly [Symbol.toStringTag]: "ObservableCache"; }