UNPKG

1.51 kBTypeScriptView Raw
1/// <reference types="node" />
2import { AsyncIterableX } from './asynciterablex';
3import { OperatorAsyncFunction, UnaryFunction } from '../interfaces';
4import { Transform, TransformCallback } from 'stream';
5export interface TransformOptions {
6 highWaterMark?: number;
7 objectMode?: boolean;
8 autoDestroy?: boolean;
9 encoding?: string;
10 decodeStrings?: boolean;
11 defaultEncoding?: string;
12 emitClose?: boolean;
13 allowHalfOpen?: boolean;
14 readableObjectMode?: boolean;
15 writableObjectMode?: boolean;
16 readableHighWaterMark?: number;
17 writableHighWaterMark?: number;
18 writableCorked?: number;
19}
20export interface AsyncIterableTransform<T> extends AsyncIterableX<T>, Transform {
21 pipe<R>(...operations: UnaryFunction<AsyncIterable<T>, R>[]): R;
22 pipe<R>(...operations: OperatorAsyncFunction<T, R>[]): AsyncIterableX<R>;
23 pipe<R extends NodeJS.WritableStream>(writable: R, options?: {
24 end?: boolean;
25 }): R;
26 [Symbol.asyncIterator](): AsyncIterableIterator<T>;
27}
28declare const asyncIterableMixin: unique symbol;
29export declare class AsyncIterableTransform<T> extends Transform {
30 private static [asyncIterableMixin];
31 constructor(options?: TransformOptions);
32 /** @nocollapse */
33 _flush(callback: TransformCallback): void;
34 /** @nocollapse */
35 _transform(chunk: any, _encoding: string, callback: TransformCallback): void;
36}
37export declare function asAsyncIterable<T>(options?: TransformOptions): AsyncIterableTransform<T>;
38export {};