import type { WithId } from './types'; export declare class RepositoryNotifier { private _changeSubscribers; private _addSubscribers; private _removeSubscribers; private _clearSubscribers; private _isChangeNotificationPending; private _pendingAddItems; private _pendingRemoveItems; private _isClearNotificationPending; notifyChange(getItems: () => T[]): void; notifyAdd(items: T[]): void; notifyRemove(items: T[]): void; notifyClear(): void; subscribeOnChange(callback: (item: T[]) => void): () => void; subscribeOnAdd(callback: (item: T[]) => void): () => void; subscribeOnRemove(callback: (item: T[]) => void): () => void; subscribeOnClear(callback: () => void): () => void; }