diff --git a/streamjs/README.md b/streamjs/README.md
new file mode 100644
index 000000000..ae3fcfc97
--- /dev/null
+++ b/streamjs/README.md
@@ -0,0 +1,22 @@
+# StreamJS Type Definitions
+
+Unsupported StreamJS function / method signatures:
+ * Stream(collection)
+ * Stream(string)
+ * Stream.empty()
+ * filter(sample)
+ * map(path)
+ * flatMap(path)
+ * sorted(path)
+ * takeWhile(sample)
+ * dropWhile(sample)
+ * min(path)
+ * max(path)
+ * sum(path)
+ * average(path)
+ * allMatch(sample)
+ * anyMatch(sample)
+ * groupingBy(path)
+ * toMap(path, mergeFunction)
+ * partitioningBy(sample);
+ * Optional.empty()
diff --git a/streamjs/streamjs-tests.ts b/streamjs/streamjs-tests.ts
index 083940311..c5f1ea862 100644
--- a/streamjs/streamjs-tests.ts
+++ b/streamjs/streamjs-tests.ts
@@ -1,11 +1,9 @@
//
var numStream: Stream;
-// numStream = Stream.make(10, 20);
-numStream = Stream.make([10, 20]);
+numStream = Stream.of(1, 2, 3);
numStream = Stream.range(1, 5);
numStream = Stream.rangeClosed(1, 5);
-// numStream = Stream.empty();
Stream.generate(function() {
return 1;
@@ -37,7 +35,9 @@ var strStream = numStream
;
var strArray = strStream.toArray();
-
+strArray = strStream.toList();
+strStream.each(s => console.log(s));
+strStream.filter(/^$/);
strStream.forEach(s => console.log(s));
var opt: Stream.Optional = strStream.findFirst();
opt = strStream.findAny();
diff --git a/streamjs/streamjs.d.ts b/streamjs/streamjs.d.ts
index 3b82680df..17889ff2f 100644
--- a/streamjs/streamjs.d.ts
+++ b/streamjs/streamjs.d.ts
@@ -6,6 +6,7 @@
declare class Stream {
// static make (...elems: T[]): Stream;
static make (elems: T[]): Stream;
+ static of(...elems: T[]): Stream;
static range (startInclusive: number, endExclusive: number): Stream;
static rangeClosed (startInclusive: number, endInclusive: number): Stream;
static generate (supplier: Stream.Supplier): Stream;
@@ -23,7 +24,9 @@ declare class Stream {
distinct(): Stream;
dropWhile(predicate: Stream.Predicate): Stream;
dropWhile(regexp: RegExp): Stream;
+ each(consumer: Stream.Consumer): void;
filter(predicate: Stream.Predicate): Stream;
+ filter(regexp: RegExp): Stream;
findAny(): Stream.Optional;
findFirst(): Stream.Optional;
forEach(consumer: Stream.Consumer): void;
@@ -69,6 +72,7 @@ declare class Stream {
takeWhile(predicate: Stream.Predicate): Stream;
takeWhile(regexp: RegExp): Stream;
toArray(): T[];
+ toList(): T[];
toMap(keyMapper: Stream.Function, mergeFunction?: Stream.Accumulator): T[];
}