diff --git a/jsend/jsend-tests.ts b/jsend/jsend-tests.ts
new file mode 100644
index 0000000000..72598c904b
--- /dev/null
+++ b/jsend/jsend-tests.ts
@@ -0,0 +1,10 @@
+///
+
+import jsend = require('jsend');
+
+var valid: boolean = jsend.isValid({ status: 'success' });
+
+var success = jsend.success('data');
+var error = jsend.error('some error');
+error = jsend.error({ message: 'nessage', code: 123 });
+
diff --git a/jsend/jsend.d.ts b/jsend/jsend.d.ts
new file mode 100644
index 0000000000..4c87aad340
--- /dev/null
+++ b/jsend/jsend.d.ts
@@ -0,0 +1,46 @@
+// Type definitions for jsend 1.0.2
+// Project: https://github.com/Prestaul/jsend
+// Definitions by: Federico Caselli
+// Definitions: https://github.com/borisyankov/DefinitelyTyped
+
+declare module Express {
+ export interface Response {
+ jsend: jsend.jsendExpress;
+ }
+}
+
+declare module jsend {
+ interface JSendObject {
+ status: string;
+ code?: number;
+ data?: any;
+ message?: string;
+ }
+
+ interface jsendCore {
+ success(data: Object): JSendObject;
+ fail(data: Object): JSendObject;
+ error(message: string | { message: string, code?: number, data?: Object }): JSendObject;
+ }
+
+ interface jsendExpress extends jsendCore {
+ (err: string | Object, json?: Object): void
+ }
+
+ interface jsend extends jsendCore {
+ isValid(json: Object): boolean;
+ forward(json: Object, done: (err: any, data: any) => any):void;
+ fromArguments(err: string | Object, json?: Object): JSendObject;
+ middleware(req: any, res: any, next: Function): any;
+ }
+
+ interface jsendExport extends jsend {
+ (config?: { strict: boolean }, host?: Object): jsend
+ }
+ var jsend: jsendExport;
+}
+
+declare module "jsend" {
+ export = jsend.jsend;
+}
+