From 8b6adacbc13889d3bde7e9af49750cf28ea54a0d Mon Sep 17 00:00:00 2001 From: CaselIT Date: Mon, 25 Jan 2016 19:10:08 +0100 Subject: [PATCH 1/2] Added jsend type definitions Added typing for the jsend library https://github.com/Prestaul/jsend --- jsend/jsend-test.ts | 10 ++++++++++ jsend/jsend.d.ts | 46 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 56 insertions(+) create mode 100644 jsend/jsend-test.ts create mode 100644 jsend/jsend.d.ts diff --git a/jsend/jsend-test.ts b/jsend/jsend-test.ts new file mode 100644 index 0000000000..72598c904b --- /dev/null +++ b/jsend/jsend-test.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; +} + From 3b0dcba4d946149d94383ce6a0ee0a60d6f82090 Mon Sep 17 00:00:00 2001 From: Federico Caselli Date: Wed, 27 Jan 2016 11:04:27 +0100 Subject: [PATCH 2/2] Rename jsend-test.ts to jsend-tests.ts --- jsend/{jsend-test.ts => jsend-tests.ts} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename jsend/{jsend-test.ts => jsend-tests.ts} (100%) diff --git a/jsend/jsend-test.ts b/jsend/jsend-tests.ts similarity index 100% rename from jsend/jsend-test.ts rename to jsend/jsend-tests.ts