From 7d467467b6ed4ab662ca4b32f43f7e257a5d55b9 Mon Sep 17 00:00:00 2001 From: PINGUET Julien Date: Fri, 2 Mar 2018 22:27:39 +0100 Subject: [PATCH] [swagger-express-validator] Typing for version 0.0 --- types/swagger-express-validator/index.d.ts | 24 ++++++++++++++++++ .../swagger-express-validator-tests.ts | 25 +++++++++++++++++++ types/swagger-express-validator/tsconfig.json | 23 +++++++++++++++++ types/swagger-express-validator/tslint.json | 3 +++ 4 files changed, 75 insertions(+) create mode 100644 types/swagger-express-validator/index.d.ts create mode 100644 types/swagger-express-validator/swagger-express-validator-tests.ts create mode 100644 types/swagger-express-validator/tsconfig.json create mode 100644 types/swagger-express-validator/tslint.json diff --git a/types/swagger-express-validator/index.d.ts b/types/swagger-express-validator/index.d.ts new file mode 100644 index 0000000000..e9e08347b9 --- /dev/null +++ b/types/swagger-express-validator/index.d.ts @@ -0,0 +1,24 @@ +// Type definitions for swagger-express-validator 0.0 +// Project: https://github.com/gargol/swagger-express-validator +// Definitions by: Pinguet62 +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.4 + +import { Request, RequestHandler } from "express"; + +declare function SwaggerExpressValidator(options: SwaggerExpressValidator.Options): RequestHandler; + +declare namespace SwaggerExpressValidator { + interface Options { + schema: string; + validateRequest?: boolean; + validateResponse?: boolean; + allowNullable?: boolean; + requestValidationFn?: (req: Request, data: any, errors: any) => void; + responseValidationFn?: (req: Request, data: any, errors: any) => void; + } + + function validator(options: Options): RequestHandler; +} + +export = SwaggerExpressValidator; diff --git a/types/swagger-express-validator/swagger-express-validator-tests.ts b/types/swagger-express-validator/swagger-express-validator-tests.ts new file mode 100644 index 0000000000..f41aa9e829 --- /dev/null +++ b/types/swagger-express-validator/swagger-express-validator-tests.ts @@ -0,0 +1,25 @@ +import { Request } from "express"; +import { Options } from "swagger-express-validator"; +import validator = require("swagger-express-validator"); + +const options: Options = { + schema: 'string' +}; +validator(options); + +// minimal required parameter +validator({ + schema: 'string' +}); + +// all parameters +validator({ + schema: 'string', + validateRequest: true, + validateResponse: true, + allowNullable: true, + requestValidationFn: (req: Request, data: any, errors: any) => { + }, + responseValidationFn: (req: Request, data: any, errors: any) => { + } +}); diff --git a/types/swagger-express-validator/tsconfig.json b/types/swagger-express-validator/tsconfig.json new file mode 100644 index 0000000000..a831b44ee7 --- /dev/null +++ b/types/swagger-express-validator/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "swagger-express-validator-tests.ts" + ] +} diff --git a/types/swagger-express-validator/tslint.json b/types/swagger-express-validator/tslint.json new file mode 100644 index 0000000000..f93cf8562a --- /dev/null +++ b/types/swagger-express-validator/tslint.json @@ -0,0 +1,3 @@ +{ + "extends": "dtslint/dt.json" +}