import { IterableType } from "./utils"; /** * A collections of usefull generators. */ export declare class Generators extends null { /** * Concats the iterables. * @param iterables Iterables to concat. */ static concat[]>(...iterables: I): Generator>; /** * Iterates cyclically on the iterable. * @param iterable Iterable to iterate on. */ static cycle(iterable: Iterable): Generator; /** * Generates endlessly number from `start` (included). * @param start * @param step */ static infinity(start: number, step: number): Generator; /** * Generates number from `start` (included) to `end` (excluded). * @param start * @param end * @param step */ static range(start: number, end: number, step: number): Generator; /** * Repeats the value `count` time. * @param value The value to repeat. * @param count The number of time to repeat the value. */ static repeat(value: T, count: number): Generator; /** * Zips same range elements from iterables into a tuple. * * Similar to {@link https://www.w3schools.com/python/ref_func_zip.asp Python zip} * @param iterables Iterables to zip. */ static zip[]>(...iterables: I): Generator, void, unknown>; } declare type ZipResult[]> = { [K in keyof I]: I[K] extends Iterable ? U : never; }; export {};