diff --git a/browserify/browserify-tests.ts b/browserify/browserify-tests.ts
new file mode 100644
index 000000000..219ab0b77
--- /dev/null
+++ b/browserify/browserify-tests.ts
@@ -0,0 +1,7 @@
+import browserify = require("browserify");
+import fs = require("fs");
+
+var b = browserify();
+b.add('./browser/main.js');
+b.transform('deamdify');
+b.bundle().pipe(fs.createWriteStream('bundle.js'));
\ No newline at end of file
diff --git a/browserify/browserify.d.ts b/browserify/browserify.d.ts
new file mode 100644
index 000000000..cfdce2da2
--- /dev/null
+++ b/browserify/browserify.d.ts
@@ -0,0 +1,39 @@
+// Type definitions for Browserify
+// Project: http://browserify.org/
+// Definitions by: Andrew Gaspar
+// Definitions: https://github.com/borisyankov/DefinitelyTyped
+
+///
+
+interface BrowserifyObject {
+ add(file: string);
+ require(file: string, opts?: {
+ expose: string;
+ });
+ bundle(opts?: {
+ insertGlobals?: boolean;
+ detectGlobals?: boolean;
+ debug?: boolean;
+ standalone?: string;
+ insertGlobalVars? ;
+ }, cb?: (err, src) => void): ReadableStream;
+
+ external(file: string);
+ ignore(file: string);
+ transform(tr: string);
+ transform(tr: Function);
+
+ on(event: string, action: Function): void;
+ on(event: "file", action: (file, id, parent) => void);
+}
+
+declare module "browserify" {
+ function browserify(): BrowserifyObject;
+ function browserify(files: string[]): BrowserifyObject;
+ function browserify(opts: {
+ entries?: string[];
+ noParse?: string[];
+ }): BrowserifyObject;
+
+ export = browserify;
+}
\ No newline at end of file