@naturalcycles/js-lib
Version:
Standard library for universal (browser + Node.js) javascript
25 lines (24 loc) • 938 B
TypeScript
import type { AbortableMapper, AbortablePredicate } from '../types.js';
import { END } from '../types.js';
/**
* Iterable2 is a wrapper around Iterable that implements "Iterator Helpers proposal":
* https://github.com/tc39/proposal-iterator-helpers
*
* Iterable2 can be removed after the proposal is widely implemented in Node & browsers.
*
* @experimental
*/
export declare class Iterable2<T> implements Iterable<T> {
private it;
private constructor();
static of<T>(it: Iterable<T>): Iterable2<T>;
static empty<T>(): Iterable2<T>;
[Symbol.iterator](): Iterator<T>;
toArray(): T[];
forEach(cb: (v: T, i: number) => any | typeof END): void;
some(cb: AbortablePredicate<T>): boolean;
every(cb: AbortablePredicate<T>): boolean;
find(cb: AbortablePredicate<T>): T | undefined;
filter(cb: AbortablePredicate<T>): Iterable2<T>;
map<OUT>(mapper: AbortableMapper<T, OUT>): Iterable2<OUT>;
}