diff --git a/recursive-readdir/recursive-readdir-tests.ts b/recursive-readdir/recursive-readdir-tests.ts
new file mode 100644
index 0000000000..2d3e1d7c92
--- /dev/null
+++ b/recursive-readdir/recursive-readdir-tests.ts
@@ -0,0 +1,6 @@
+///
+
+import recursiveReaddir = require("recursive-readdir");
+
+recursiveReaddir("some/path", (err, files) => {});
+recursiveReaddir("some/path", ["foo.cs", "*.html"], (err, files) => {});
diff --git a/recursive-readdir/recursive-readdir.d.ts b/recursive-readdir/recursive-readdir.d.ts
new file mode 100644
index 0000000000..5e7ecee0a5
--- /dev/null
+++ b/recursive-readdir/recursive-readdir.d.ts
@@ -0,0 +1,11 @@
+// Type definitions for recursive-readdir v1.2.1
+// Project: https://github.com/jergason/recursive-readdir/
+// Definitions by: Elisée Maurer
+// Definitions: https://github.com/borisyankov/DefinitelyTyped
+
+declare module "recursive-readdir" {
+ function readdir(path: string, callback: (error: Error, files: string[]) => any): void;
+ // ignorePattern supports glob syntax via https://github.com/isaacs/minimatch
+ function readdir(path: string, ignorePattern: string[], callback: (error: Error, files: string[]) => any): void;
+ export = readdir;
+}