import { CollectionName, DBChanges, DBEntity, KVStoreTransaction, KVStoreOrTransaction, EntityStore, ApplyChangesOptions } from './types.js'; export declare class EntityDataStore implements EntityStore { storagePrefix: string[]; constructor(storagePrefix?: string[]); getEntity(storage: KVStoreOrTransaction, collection: string, id: string): Promise; getCollectionStats(storage: KVStoreOrTransaction, knownCollections: CollectionName[] | undefined): Promise>; applyChanges(tx: KVStoreTransaction, changes: DBChanges, options: ApplyChangesOptions): Promise; getEntitiesInCollection(storage: KVStoreOrTransaction, collection: CollectionName): AsyncIterable; } /** * This will apply the sets to the current value of the entity * without mutating the original and will return a filtered down set object * based on what was actually overwritten * @param curr current value of the entity * @param sets sets to apply * * @returns [new value, sets that were applied] */ export declare function applyChange | undefined>(curr: T, sets: Partial>, options?: { clone?: boolean; }): { prev: T; next: NonNullable; change: Partial>; };