diff --git a/types/qs-middleware/index.d.ts b/types/qs-middleware/index.d.ts new file mode 100644 index 0000000000..9817c7bd79 --- /dev/null +++ b/types/qs-middleware/index.d.ts @@ -0,0 +1,14 @@ +// Type definitions for qs-middleware 1.0 +// Project: https://github.com/springernature/qs-middleware +// Definitions by: Dave Cardwell +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.2 + +import express = require("express"); +import qs = require("qs"); + +declare function qsMiddleware( + options?: qs.IParseOptions +): express.RequestHandler; + +export = qsMiddleware; diff --git a/types/qs-middleware/qs-middleware-tests.ts b/types/qs-middleware/qs-middleware-tests.ts new file mode 100644 index 0000000000..b77d265756 --- /dev/null +++ b/types/qs-middleware/qs-middleware-tests.ts @@ -0,0 +1,23 @@ +import express = require("express"); +import query = require("qs-middleware"); + +const app = express(); + +app.use(query()); +app.use(query({})); +app.use( + query({ + delimiter: "string", + depth: 123, + decoder: str => str.toLowerCase(), + arrayLimit: 123, + parseArrays: true, + allowDots: true, + plainObjects: true, + allowPrototypes: true, + parameterLimit: 123, + strictNullHandling: true, + ignoreQueryPrefix: true + }) +); +app.use(query({ delimiter: /regexp/ })); diff --git a/types/qs-middleware/tsconfig.json b/types/qs-middleware/tsconfig.json new file mode 100644 index 0000000000..b984b327ed --- /dev/null +++ b/types/qs-middleware/tsconfig.json @@ -0,0 +1,16 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": ["es6"], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": ["../"], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": ["index.d.ts", "qs-middleware-tests.ts"] +} diff --git a/types/qs-middleware/tslint.json b/types/qs-middleware/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/qs-middleware/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" }