///
import { AsyncIterableX } from './asynciterablex';
import { OperatorAsyncFunction, UnaryFunction } from '../interfaces';
import { Transform, TransformCallback } from 'stream';
export interface TransformOptions {
highWaterMark?: number;
objectMode?: boolean;
autoDestroy?: boolean;
encoding?: string;
decodeStrings?: boolean;
defaultEncoding?: string;
emitClose?: boolean;
allowHalfOpen?: boolean;
readableObjectMode?: boolean;
writableObjectMode?: boolean;
readableHighWaterMark?: number;
writableHighWaterMark?: number;
writableCorked?: number;
}
export interface AsyncIterableTransform extends AsyncIterableX, Transform {
pipe(...operations: UnaryFunction, R>[]): R;
pipe(...operations: OperatorAsyncFunction[]): AsyncIterableX;
pipe(writable: R, options?: {
end?: boolean;
}): R;
[Symbol.asyncIterator](): AsyncIterableIterator;
}
declare const asyncIterableMixin: unique symbol;
export declare class AsyncIterableTransform extends Transform {
private static [asyncIterableMixin];
constructor(options?: TransformOptions);
/** @nocollapse */
_flush(callback: TransformCallback): void;
/** @nocollapse */
_transform(chunk: any, _encoding: string, callback: TransformCallback): void;
}
export declare function asAsyncIterable(options?: TransformOptions): AsyncIterableTransform;
export {};