UNPKG

@electric-sql/d2ts

Version:

D2TS is a TypeScript implementation of Differential Dataflow.

32 lines (31 loc) 1.12 kB
import { IStreamBuilder } from '../types.js'; import { DifferenceStreamReader, DifferenceStreamWriter, UnaryOperator } from '../graph.js'; import { Antichain } from '../order.js'; /** * Operator that moves data into a new iteration scope */ export declare class IngressOperator<T> extends UnaryOperator<T> { run(): void; } /** * Operator that moves data out of an iteration scope */ export declare class EgressOperator<T> extends UnaryOperator<T> { run(): void; } /** * Operator that handles feedback in iteration loops. * This operator is responsible for: * 1. Incrementing versions for feedback data * 2. Managing the iteration state * 3. Determining when iterations are complete */ export declare class FeedbackOperator<T> extends UnaryOperator<T> { #private; constructor(id: number, inputA: DifferenceStreamReader<T>, step: number, output: DifferenceStreamWriter<T>, initialFrontier: Antichain); run(): void; } /** * Iterates over the stream */ export declare function iterate<T>(f: (stream: IStreamBuilder<T>) => IStreamBuilder<T>): (stream: IStreamBuilder<T>) => IStreamBuilder<T>;