import { Tuple } from './codec.js'; import { DBChanges, Entity, CollectionName, Triple, KVStoreOrTransaction, KVStoreTransaction, EntitySyncStore, ApplyChangesOptions } from './types.js'; import { Timestamp } from './hybrid-clock.js'; import { EntityMetadataStore } from './entity-metadata-store.js'; import { EntityDataStore } from './entity-data-store.js'; export declare class EntityStoreKV implements EntitySyncStore { storagePrefix: string[]; readonly metadataStore: EntityMetadataStore; readonly dataStore: EntityDataStore; constructor(storagePrefix?: string[]); onChange(callback: (changes: DBChanges) => void): () => void; applyChanges(tx: KVStoreTransaction, buffer: DBChanges, options: ApplyChangesOptions): Promise; applyChangesWithTimestamp(tx: KVStoreTransaction, buffer: DBChanges, timestamp: Timestamp, options: ApplyChangesOptions): Promise; insertTriples(tx: KVStoreTransaction, triples: Triple[]): Promise; getEntity(storage: KVStoreOrTransaction, collection: string, id: string): Promise; getChanges(storage: KVStoreOrTransaction): Promise; getEntitiesInCollection(storage: KVStoreOrTransaction, collection: CollectionName): AsyncIterable<[Tuple, Entity]>; getCollectionStats(storage: KVStoreOrTransaction, knownCollections: CollectionName[] | undefined): Promise>; }