import { Operator } from '../core/types'; /** * @short * *Flattens* nested iterables. * * @categories * operator * * @description * Yields values from within inner iterables. The iterables are being “unwinded” as many times as the given * depth argument. * * @since * 0.0.1 * * @parameter [optional] [default = 1] * depth * number * * @returns * Operator * * @throws * `RangeError` when the given `depth` parameter is not an integer, or is less than zero. * * @example * j.pipe( * [[1, 2], [3], [4, 5, 6]], * j.flatten(1), * ) * // => [1, 2, 3, 4, 5, 6] * * @example * j.pipe( * [ * [ * [111, 112], * [121], * [131, 132], * ], * [ * [211, 212, 213], * [], * ] * ], * j.flatten(2), * ) * // => [111, 112, 121, 131, 132, 211, 212, 213] */ export declare function flatten(): Operator, T>; export declare function flatten(depth: 0): Operator; export declare function flatten(depth: 1): Operator, T>; export declare function flatten(depth: 2): Operator>, T>; export declare function flatten(depth: 3): Operator>>, T>; export declare function flatten(depth: 4): Operator>>>, T>; export declare function flatten(depth: 5): Operator>>>>, T>; export declare function flatten(depth: 6): Operator>>>>>, T>; export declare function flatten(depth: 7): Operator>>>>>>, T>; export declare function flatten(depth: 8): Operator>>>>>>>, T>; export declare function flatten(depth: 9): Operator>>>>>>>>, T>; export declare function flatten(depth: number): Operator; export declare function flattenDeep(): Operator;