diff --git a/chokidar/chokidar-tests.ts b/chokidar/chokidar-tests.ts
new file mode 100644
index 000000000..b89dd81a0
--- /dev/null
+++ b/chokidar/chokidar-tests.ts
@@ -0,0 +1,41 @@
+///
+
+import fs = require('fs');
+import chokidar = require('chokidar');
+
+var watcher = chokidar.watch('file, dir, or glob', {
+ ignored: /[\/\\]\./, persistent: true
+});
+
+var log = console.log.bind(console);
+
+watcher
+ .on('add', function(path:string) { log('File', path, 'has been added'); })
+ .on('addDir', function(path:string) { log('Directory', path, 'has been added'); })
+ .on('change', function(path:string) { log('File', path, 'has been changed'); })
+ .on('unlink', function(path:string) { log('File', path, 'has been removed'); })
+ .on('unlinkDir', function(path:string) { log('Directory', path, 'has been removed'); })
+ .on('error', function(error:any) { log('Error happened', error); })
+ .on('ready', function() { log('Initial scan complete. Ready for changes.'); })
+ .on('raw', function(event:Event, path:string, details:any) { log('Raw event info:', event, path, details); })
+
+// 'add', 'addDir' and 'change' events also receive stat() results as second
+// argument when available: http://nodejs.org/api/fs.html#fs_class_fs_stats
+watcher.on('change', function(path:string, stats:fs.Stats) {
+ if (stats) console.log('File', path, 'changed size to', stats.size);
+});
+
+// Watch new files.
+watcher.add('new-file');
+watcher.add(['new-file-2', 'new-file-3', '**/other-file*']);
+
+// Un-watch some files.
+watcher.unwatch('new-file*');
+
+// Only needed if watching is `persistent: true`.
+watcher.close();
+
+// One-liner
+require('chokidar').watch('.', {ignored: /[\/\\]\./}).on('all', function(event:string, path:string) {
+ console.log(event, path);
+});
\ No newline at end of file
diff --git a/chokidar/chokidar.d.ts b/chokidar/chokidar.d.ts
new file mode 100644
index 000000000..6a417ca72
--- /dev/null
+++ b/chokidar/chokidar.d.ts
@@ -0,0 +1,42 @@
+// Type definitions for chokidar 1.0.0
+// Project: https://github.com/paulmillr/chokidar
+// Definitions by: Stefan Steinhart
+// Definitions: https://github.com/borisyankov/DefinitelyTyped
+
+///
+
+declare module "fs"
+{
+ interface FSWatcher
+ {
+ add(fileDirOrGlob:string):void;
+ add(filesDirsOrGlobs:Array):void;
+ unwatch(fileDirOrGlob:string):void;
+ unwatch(filesDirsOrGlobs:Array):void;
+ }
+}
+
+declare module "chokidar"
+{
+ interface WatchOptions
+ {
+ persistent?:boolean;
+ ignored?:any;
+ ignoreInitial?:boolean;
+ followSymlinks?:boolean;
+ cwd?:string;
+ usePolling?:boolean;
+ useFsEvents?:boolean;
+ alwaysStat?:boolean;
+ depth?:number;
+ interval?:number;
+ binaryInterval?:number;
+ ignorePermissionErrors?:boolean;
+ atomic?:boolean;
+ }
+
+ import fs = require("fs");
+
+ function watch( fileDirOrGlob:string, options?:WatchOptions ):fs.FSWatcher;
+ function watch( filesDirsOrGlobs:Array, options?:WatchOptions ):fs.FSWatcher;
+}