import {AsyncIterator, MultiTransformIterator, MultiTransformOptions, SimpleTransformIterator} from 'asynciterator'; export class DynamicNestedLoopJoin extends MultiTransformIterator { constructor(left: AsyncIterator, funRight: (left: L) => AsyncIterator, funJoin: (left: L, right: R) => T); _createTransformer(leftItem: L): SimpleTransformIterator; } export class HashJoin extends AsyncIterator { constructor(left: AsyncIterator, right: AsyncIterator, funHash: (entry: S) => H, funJoin: (left: S, right: S) => T); protected hasResults(): boolean; close(): void; read(): T; } export class NestedLoopJoin extends MultiTransformIterator { constructor(left: AsyncIterator, right: AsyncIterator, funJoin: (left: L, right: R) => T, options?: MultiTransformOptions); close(): void; _createTransformer(leftItem: L): SimpleTransformIterator; } export class SymmetricHashJoin extends AsyncIterator { constructor(left: AsyncIterator, right: AsyncIterator, funHash: (entry: S) => H, funJoin: (left: S, right: S) => T); protected hasResults(): boolean; close(): void; read(): T; } export class MergeIterator extends AsyncIterator { constructor(streams: T[]); protected _removeStream(stream: T): void; close(): void; read(): T; }