import { AsyncIterableX } from '../asynciterablex.js'; type Flattened = Depth extends -1 ? FlattenInfinite : FlattenWithDepth; type FlattenInfinite = Arr extends AsyncIterable ? FlattenInfinite : Arr; type FlattenWithDepth = { done: Arr; recur: Arr extends AsyncIterable ? FlattenWithDepth : Arr; }[Depth extends -1 ? 'done' : 'recur']; /** * Flattens the nested async-iterable by the given depth. * * @template T The type of elements in the source sequence. * @param {number} [depth=Infinity] The depth to flatten the async-iterable sequence if specified, otherwise infinite. * @returns {MonoTypeOperatorAsyncFunction} An operator that flattens the async-iterable sequence. */ export declare function flat(depth?: D, concurrent?: number): (source: AsyncIterable) => AsyncIterableX>; export {};