/// <reference types="node" />
/// <reference types="node" />
import { AsyncIterableX } from './asynciterablex.js';
import { OperatorAsyncFunction, UnaryFunction } from '../interfaces.js';
import { TransformOptions } from 'stream';
/** @ignore */
export interface AsyncIterableTransform<T> extends AsyncIterableX<T>, NodeJS.ReadableStream, NodeJS.WritableStream {
    new (options?: TransformOptions): AsyncIterableTransform<T>;
    pipe<R>(...operations: UnaryFunction<AsyncIterable<T>, R>[]): R;
    pipe<R>(...operations: OperatorAsyncFunction<T, R>[]): AsyncIterableX<R>;
    pipe<R extends NodeJS.WritableStream>(writable: R, options?: {
        end?: boolean;
    }): R;
    [Symbol.asyncIterator](): AsyncIterableIterator<any>;
}
/** @ignore */
export declare function AsyncIterableTransform<T>(this: AsyncIterableTransform<T>, options?: TransformOptions): void;
export declare namespace AsyncIterableTransform {
    var prototype: any;
}
/** @ignore */
export declare function asAsyncIterable<T>(options?: TransformOptions): AsyncIterableTransform<T>;
