UNPKG

ramda-generators

Version:

A collection of lazily evaluated generators and functions to work with generators in Javascript and Typescript, following the style of Ramda's functions

196 lines (195 loc) 12.3 kB
declare const _default: { zip: { <T1, T2>(gen1: Generator<T1, void, unknown>, gen2: Generator<T2, void, unknown>): Generator<[T1, T2], void, unknown>; <T1_1>(gen1: Generator<T1_1, void, unknown>): <T2_1>(gen2: Generator<T2_1, void, unknown>) => Generator<[T1_1, T2_1], void, unknown>; }; zipAsync: { <T1_2, T2_2>(gen1: AsyncGenerator<T1_2, void, unknown>, gen2: AsyncGenerator<T2_2, void, unknown>): AsyncGenerator<[T1_2, T2_2], void, unknown>; <T1_3>(gen1: AsyncGenerator<T1_3, void, unknown>): <T2_3>(gen2: AsyncGenerator<T2_3, void, unknown>) => AsyncGenerator<[T1_3, T2_3], void, unknown>; }; zipWith: { <T1_4, T2_4, R>(fn: (t1: T1_4, t2: T2_4) => R, gen1: Generator<T1_4, void, unknown>, gen2: Generator<T2_4, void, unknown>): Generator<R, void, unknown>; <T1_5, T2_5, R_1>(fn: (t1: T1_5, t2: T2_5) => R_1, gen1: Generator<T1_5, void, unknown>): (gen2: Generator<T2_5, void, unknown>) => Generator<R_1, void, unknown>; <T1_6, T2_6, R_2>(fn: (t1: T1_6, t2: T2_6) => R_2): { (gen1: Generator<T1_6, void, unknown>, gen2: Generator<T2_6, void, unknown>): Generator<R_2, void, unknown>; (gen1: Generator<T1_6, void, unknown>): (gen2: Generator<T2_6, void, unknown>) => Generator<R_2, void, unknown>; }; }; zipWithAsync: { <T1_7, T2_7, R_3>(fn: (t1: T1_7, t2: T2_7) => R_3, gen1: AsyncGenerator<T1_7, void, unknown>, gen2: AsyncGenerator<T2_7, void, unknown>): AsyncGenerator<R_3, void, unknown>; <T1_8, T2_8, R_4>(fn: (t1: T1_8, t2: T2_8) => R_4, gen1: AsyncGenerator<T1_8, void, unknown>): (gen2: AsyncGenerator<T2_8, void, unknown>) => AsyncGenerator<R_4, void, unknown>; <T1_9, T2_9, R_5>(fn: (t1: T1_9, t2: T2_9) => R_5): { (gen1: AsyncGenerator<T1_9, void, unknown>, gen2: AsyncGenerator<T2_9, void, unknown>): AsyncGenerator<R_5, void, unknown>; (gen1: AsyncGenerator<T1_9, void, unknown>): (gen2: AsyncGenerator<T2_9, void, unknown>) => AsyncGenerator<R_5, void, unknown>; }; }; uniqBy: { <T, Key>(fn: (el: T) => Key, gen: Generator<T, void, unknown>): Generator<T, void, unknown>; <T_1, Key_1>(fn: (el: T_1) => Key_1): (gen: Generator<T_1, void, unknown>) => Generator<T_1, void, unknown>; }; uniqByAsync: { <T_2, Key_2>(fn: (el: T_2) => Key_2, gen: AsyncGenerator<T_2, void, unknown>): AsyncGenerator<T_2, void, unknown>; <T_3, Key_3>(fn: (el: T_3) => Key_3): (gen: AsyncGenerator<T_3, void, unknown>) => AsyncGenerator<T_3, void, unknown>; }; take: { <T_4>(amount: number, list: Generator<T_4, void, unknown>): T_4[]; <T_5>(amount: number): (list: Generator<T_5, void, unknown>) => T_5[]; }; takeAsync: { <T_6>(amount: number, list: AsyncGenerator<T_6, void, unknown>): Promise<T_6[]>; <T_7>(amount: number): (list: AsyncGenerator<T_7, void, unknown>) => Promise<T_7[]>; }; takeIterator: { <T_8>(amount: number, list: Generator<T_8, void, unknown>): Generator<T_8, void, unknown>; <T_9>(amount: number): (list: Generator<T_9, void, unknown>) => Generator<T_9, void, unknown>; }; takeAsyncIterator: { <T_10>(amount: number, list: AsyncGenerator<T_10, void, unknown>): AsyncGenerator<T_10, void, unknown>; <T_11>(amount: number): (list: AsyncGenerator<T_11, void, unknown>) => AsyncGenerator<T_11, void, unknown>; }; takeWhile: { <T_12>(cond: (el: T_12) => boolean, list: Generator<T_12, void, unknown>): Generator<T_12, void, unknown>; <T_13>(cond: (el: T_13) => boolean): (list: Generator<T_13, void, unknown>) => Generator<T_13, void, unknown>; }; takeWhileAsync: { <T_14>(cond: (el: T_14) => boolean, list: AsyncGenerator<T_14, void, unknown>): AsyncGenerator<T_14, void, unknown>; <T_15>(cond: (el: T_15) => boolean): (list: AsyncGenerator<T_15, void, unknown>) => AsyncGenerator<T_15, void, unknown>; }; takeAll<T_16>(generator: Generator<T_16, void, unknown>): T_16[]; takeAllAsync<T_17>(generator: AsyncGenerator<T_17, void, unknown>): Promise<T_17[]>; splitEvery: { <T_18>(size: number, gen: Generator<T_18, void, unknown>): Generator<T_18[], void, unknown>; (size: number): <T_19>(gen: Generator<T_19, void, unknown>) => Generator<T_19[], void, unknown>; }; splitEveryAsync: { <T_20>(size: number, gen: AsyncGenerator<T_20, void, unknown>): AsyncGenerator<T_20[], void, unknown>; (size: number): <T_21>(gen: AsyncGenerator<T_21, void, unknown>) => AsyncGenerator<T_21[], void, unknown>; }; scan: { <T_22, R_6>(fn: (acc: R_6, el: T_22) => R_6, init: R_6, gen: Generator<T_22, void, unknown>): Generator<R_6, void, unknown>; <T_23, R_7>(fn: (acc: R_7, el: T_23) => R_7, init: R_7): (gen: Generator<T_23, void, unknown>) => Generator<R_7, void, unknown>; <T_24, R_8>(fn: (acc: R_8, el: T_24) => R_8): { (init: R_8, gen: Generator<T_24, void, unknown>): Generator<R_8, void, unknown>; (init: R_8): (gen: Generator<T_24, void, unknown>) => Generator<R_8, void, unknown>; }; }; scanAsync: { <T_25, R_9>(fn: (acc: R_9, el: T_25) => R_9, init: R_9, gen: AsyncGenerator<T_25, void, unknown>): AsyncGenerator<R_9, void, unknown>; <T_26, R_10>(fn: (acc: R_10, el: T_26) => R_10, init: R_10): (gen: AsyncGenerator<T_26, void, unknown>) => AsyncGenerator<R_10, void, unknown>; <T_27, R_11>(fn: (acc: R_11, el: T_27) => R_11): { (init: R_11, gen: AsyncGenerator<T_27, void, unknown>): AsyncGenerator<R_11, void, unknown>; (init: R_11): (gen: AsyncGenerator<T_27, void, unknown>) => AsyncGenerator<R_11, void, unknown>; }; }; range: { (start: number, end: number): { start: () => Generator<number, void, unknown>; }; (start: number): (end: number) => { start: () => Generator<number, void, unknown>; }; }; periodicFrom: { <R_12>(ms: number, list: { start: () => Generator<R_12, void, unknown> | Generator<Promise<R_12>, void, unknown>; } | Generator<R_12, void, unknown> | (() => R_12) | R_12[]): { start: () => AsyncGenerator<R_12, void, unknown>; }; (ms: number): <R_13>(list: { start: () => Generator<R_13, void, unknown> | Generator<Promise<R_13>, void, unknown>; } | Generator<R_13, void, unknown> | (() => R_13) | R_13[]) => { start: () => AsyncGenerator<R_13, void, unknown>; }; }; periodic: (ms: number) => { start: () => AsyncGenerator<null, void, unknown>; }; map: { <T_28, R_14>(fn: (el: T_28) => R_14, gen: Generator<T_28, void, unknown>): Generator<R_14, void, unknown>; <T_29, R_15>(fn: (el: T_29) => R_15): (gen: Generator<T_29, void, unknown>) => Generator<R_15, void, unknown>; }; mapAsync: { <T_30, R_16>(fn: (el: T_30) => R_16, gen: AsyncGenerator<T_30, void, unknown>): AsyncGenerator<R_16, void, unknown>; <T_31, R_17>(fn: (el: T_31) => R_17): (gen: AsyncGenerator<T_31, void, unknown>) => AsyncGenerator<R_17, void, unknown>; }; last<T_32>(gen: Generator<T_32, void, unknown>): T_32 | undefined; lastAsync<T_33>(gen: AsyncGenerator<T_33, void, unknown>): Promise<T_33 | undefined>; head: <T_34>(gen: Generator<T_34, void, unknown>) => void | T_34; headAsync: <T_35>(gen: AsyncGenerator<T_35, void, unknown>) => Promise<void | T_35>; generate: <R_18>(fn: (index: number) => R_18, limit?: number | undefined) => { start: () => Generator<R_18, void, unknown>; }; generateAsync: <R_19>(fn: (index: number) => Promise<R_19>, limit?: number | undefined) => { start: () => AsyncGenerator<R_19, void, unknown>; }; generateFromArray: <R_20>(v: R_20[]) => { start: () => Generator<R_20, void, unknown>; }; flatMap: { <T_36, R_21>(fn: (el: T_36) => R_21[] | Generator<R_21, any, unknown>, gen: Generator<T_36, void, unknown>): Generator<R_21, void, unknown>; <T_37, R_22>(fn: (el: T_37) => R_22[] | Generator<R_22, any, unknown>): (gen: Generator<T_37, void, unknown>) => Generator<R_22, void, unknown>; }; flatMapAsync: { <T_38, R_23>(fn: (el: T_38) => R_23[] | Generator<R_23, any, unknown>, gen: AsyncGenerator<T_38, void, unknown>): AsyncGenerator<R_23, void, unknown>; <T_39, R_24>(fn: (el: T_39) => R_24[] | Generator<R_24, any, unknown>): (gen: AsyncGenerator<T_39, void, unknown>) => AsyncGenerator<R_24, void, unknown>; }; find: { <T_40>(cond: (el: T_40) => boolean, list: Generator<T_40, void, unknown>): T_40; <T_41>(cond: (el: T_41) => boolean): (list: Generator<T_41, void, unknown>) => T_41; }; findAsync: { <T_42>(cond: (el: T_42) => boolean, list: AsyncGenerator<T_42, void, unknown>): Promise<T_42>; <T_43>(cond: (el: T_43) => boolean): (list: AsyncGenerator<T_43, void, unknown>) => Promise<T_43>; }; filter: { <T_44>(cond: (el: T_44) => boolean, gen: Generator<T_44, void, unknown>): Generator<T_44, void, unknown>; <T_45>(cond: (el: T_45) => boolean): (gen: Generator<T_45, void, unknown>) => Generator<T_45, void, unknown>; }; filterAsync: { <T_46>(cond: (el: T_46) => boolean, gen: AsyncGenerator<T_46, void, unknown>): AsyncGenerator<T_46, void, unknown>; <T_47>(cond: (el: T_47) => boolean): (gen: AsyncGenerator<T_47, void, unknown>) => AsyncGenerator<T_47, void, unknown>; }; drop: { <T_48>(amount: number, gen: Generator<T_48, void, unknown>): Generator<T_48, void, unknown>; (amount: number): <T_49>(gen: Generator<T_49, void, unknown>) => Generator<T_49, void, unknown>; }; dropAsync: { <T_50>(amount: number, gen: AsyncGenerator<T_50, void, unknown>): AsyncGenerator<T_50, void, unknown>; (amount: number): <T_51>(gen: AsyncGenerator<T_51, void, unknown>) => AsyncGenerator<T_51, void, unknown>; }; dropWhile: { <T_52>(cond: (el: T_52) => boolean, gen: Generator<T_52, void, unknown>): Generator<T_52, void, unknown>; <T_53>(cond: (el: T_53) => boolean): (gen: Generator<T_53, void, unknown>) => Generator<T_53, void, unknown>; }; dropWhileAsync: { <T_54>(cond: (el: T_54) => boolean, gen: AsyncGenerator<T_54, void, unknown>): AsyncGenerator<T_54, void, unknown>; <T_55>(cond: (el: T_55) => boolean): (gen: AsyncGenerator<T_55, void, unknown>) => AsyncGenerator<T_55, void, unknown>; }; debounce: <T_56>(gen: Generator<T_56, void, unknown>) => Generator<T_56, void, unknown>; debounceAsync: <T_56>(gen: AsyncGenerator<T_56, void, unknown>) => AsyncGenerator<T_56, void, unknown>; debounceBy: { <T_57, K>(fn: (el: T_57) => K, gen: Generator<T_57, void, unknown>): Generator<K, void, unknown>; <T_58, K_1>(fn: (el: T_58) => K_1): (gen: Generator<T_58, void, unknown>) => Generator<K_1, void, unknown>; }; debounceByAsync: { <T_59, K_2>(fn: (el: T_59) => K_2, gen: AsyncGenerator<T_59, void, unknown>): AsyncGenerator<K_2, void, unknown>; <T_60, K_3>(fn: (el: T_60) => K_3): (gen: AsyncGenerator<T_60, void, unknown>) => AsyncGenerator<K_3, void, unknown>; }; countBy: { <T_61, R_25>(fn: (el: T_61) => string, gen: Generator<T_61, void, unknown>): Generator<{ [key: string]: number; }, void, unknown>; <T_62, R_26>(fn: (el: T_62) => string): (gen: Generator<T_62, void, unknown>) => Generator<{ [key: string]: number; }, void, unknown>; }; countByAsync: { <T_63, R_27>(fn: (el: T_63) => string, gen: AsyncGenerator<T_63, void, unknown>): AsyncGenerator<{ [key: string]: number; }, void, unknown>; <T_64, R_28>(fn: (el: T_64) => string): (gen: AsyncGenerator<T_64, void, unknown>) => AsyncGenerator<{ [key: string]: number; }, void, unknown>; }; }; export default _default;