// Type definitions for streamjs 1.4.0 // Project: http://streamjs.org/ // Definitions by: Bence Eros // Definitions: https://github.com/borisyankov/DefinitelyTyped declare class Stream { // static make (...elems: T[]): Stream; static make (elems: T[]): Stream; static range (startInclusive: number, endExclusive: number): Stream; static rangeClosed (startInclusive: number, endInclusive: number): Stream; static generate (supplier: () => T): Stream; distinct(): Stream; dropWhile(predicate: (elem: T) => boolean): Stream; dropWhile(regexp: RegExp): Stream; filter(predicate: (T) => boolean): Stream; map (mapper: (T) => U): Stream; flatMap (mapper: (T) => U[]): Stream; limit(limit: number): Stream; peek(consumer: (elem: T) => void ): Stream; reverse(): Stream; sorted(): Stream; sorted(comparator: (e1: T, e2: T) => number): Stream; sort(): Stream; sort(comparator: (e1: T, e2: T) => number): Stream; shuffle(): Stream; skip(n: number): Stream; slice(begin, end): Stream; takeWhile(predicate: (elem: T) => boolean): Stream; takeWhile(regexp: RegExp): Stream; toArray(): T[]; }