///
import { OperatorAsyncFunction, UnaryFunction } from '../interfaces';
import { Observable } from '../observer';
/**
* This class serves as the base for all operations which support [Symbol.asyncIterator].
*/
export declare abstract class AsyncIterableX implements AsyncIterable {
abstract [Symbol.asyncIterator](signal?: AbortSignal): AsyncIterator;
forEach(projection: (value: T, index: number, signal?: AbortSignal) => void | Promise, thisArg?: any, signal?: AbortSignal): Promise;
/** @nocollapse */
pipe(...operations: UnaryFunction, R>[]): R;
pipe(...operations: OperatorAsyncFunction[]): AsyncIterableX;
pipe(writable: R, options?: {
end?: boolean;
}): R;
}
export declare type AsyncIterableInput = AsyncIterable | AsyncIterator | Iterable> | ArrayLike | PromiseLike | Observable;
declare module '../asynciterable/asynciterablex' {
interface AsyncIterableX {
pipe(): AsyncIterableX;
pipe(op1: OperatorAsyncFunction): AsyncIterableX;
pipe(op1: OperatorAsyncFunction, op2: OperatorAsyncFunction): AsyncIterableX;
pipe(op1: OperatorAsyncFunction, op2: OperatorAsyncFunction, op3: OperatorAsyncFunction): AsyncIterableX;
pipe(op1: OperatorAsyncFunction, op2: OperatorAsyncFunction, op3: OperatorAsyncFunction, op4: OperatorAsyncFunction): AsyncIterableX;
pipe(op1: OperatorAsyncFunction, op2: OperatorAsyncFunction, op3: OperatorAsyncFunction, op4: OperatorAsyncFunction, op5: OperatorAsyncFunction): AsyncIterableX;
pipe(op1: OperatorAsyncFunction, op2: OperatorAsyncFunction, op3: OperatorAsyncFunction, op4: OperatorAsyncFunction, op5: OperatorAsyncFunction, op6: OperatorAsyncFunction): AsyncIterableX;
pipe(op1: OperatorAsyncFunction, op2: OperatorAsyncFunction, op3: OperatorAsyncFunction, op4: OperatorAsyncFunction, op5: OperatorAsyncFunction, op6: OperatorAsyncFunction, op7: OperatorAsyncFunction): AsyncIterableX;
pipe(op1: OperatorAsyncFunction, op2: OperatorAsyncFunction, op3: OperatorAsyncFunction, op4: OperatorAsyncFunction, op5: OperatorAsyncFunction, op6: OperatorAsyncFunction, op7: OperatorAsyncFunction, op8: OperatorAsyncFunction): AsyncIterableX;
pipe(op1: OperatorAsyncFunction, op2: OperatorAsyncFunction, op3: OperatorAsyncFunction, op4: OperatorAsyncFunction, op5: OperatorAsyncFunction, op6: OperatorAsyncFunction, op7: OperatorAsyncFunction, op8: OperatorAsyncFunction, op9: OperatorAsyncFunction): AsyncIterableX;
pipe(...operations: OperatorAsyncFunction[]): AsyncIterableX<{}>;
pipe(op1: A, options?: {
end?: boolean;
}): A;
}
}