@electric-sql/d2ts
Version:
D2TS is a TypeScript implementation of Differential Dataflow.
33 lines (32 loc) • 1.2 kB
TypeScript
import { Version, Antichain } from '../order.js';
import { MultiSet } from '../multiset.js';
import { SQLiteDb } from './database.js';
import { DefaultMap } from '../utils.js';
type VersionMap<T> = DefaultMap<Version, T[]>;
export declare class SQLIndex<K, V> {
#private;
constructor(db: SQLiteDb, name: string, isTemp?: boolean);
get isTemp(): boolean;
get tableName(): string;
getCompactionFrontier(): Antichain | null;
setCompactionFrontier(frontier: Antichain): void;
reconstructAt(key: K, requestedVersion: Version): [V, number][];
get(key: K): VersionMap<[V, number]>;
entries(): [K, VersionMap<[V, number]>][];
versions(key: K): Version[];
addValue(key: K, version: Version, value: [V, number]): void;
addValues(items: [K, Version, [V, number]][]): void;
addModifiedKeys(keys: K[]): void;
append(other: SQLIndex<K, V>): void;
join<V2>(other: SQLIndex<K, V2>): [Version, MultiSet<[K, [V, V2]]>][];
compact(compactionFrontier: Antichain, keys?: K[]): void;
showAll(): {
key: K;
version: Version;
value: V;
multiplicity: number;
}[];
truncate(): void;
destroy(): void;
}
export {};