mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2025-10-16 12:05:41 +00:00
Create types for express-routes-versioning (#30419)
* Add types for express-routes-versioning * Remove incorrect root package.json change * Remove unused package.json * Add TypeScript Version comment to top of file * Add strictFunctionTypes to tsconfig * Fix lint errors * Update test file * Fix type definitions
This commit is contained in:
parent
86f630dad1
commit
393c74c1d8
@ -0,0 +1,21 @@
|
||||
import * as express from 'express';
|
||||
import * as routesVersioning from 'express-routes-versioning';
|
||||
|
||||
const app = express();
|
||||
|
||||
const routesVersioningMiddleware: routesVersioning.RoutesVersioningMiddleware = routesVersioning();
|
||||
|
||||
const versioningOptions: routesVersioning.VersionOptions = {
|
||||
"1.0.0": respondV1,
|
||||
"~2.2.1": respondV2
|
||||
};
|
||||
|
||||
app.get('/test', routesVersioningMiddleware(versioningOptions));
|
||||
|
||||
function respondV1(req: express.Request, res: express.Response, next: express.NextFunction) {
|
||||
res.status(200).send('ok v1');
|
||||
}
|
||||
|
||||
function respondV2(req: express.Request, res: express.Response, next: express.NextFunction) {
|
||||
res.status(200).send('ok v2');
|
||||
}
|
||||
19
types/express-routes-versioning/index.d.ts
vendored
Normal file
19
types/express-routes-versioning/index.d.ts
vendored
Normal file
@ -0,0 +1,19 @@
|
||||
// Type definitions for express-routes-versioning 1.0
|
||||
// Project: https://github.com/Prasanna-sr/express-routes-versioning
|
||||
// Definitions by: Rogelio Negrete <https://github.com/weffe>
|
||||
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
||||
// TypeScript Version: 2.2
|
||||
|
||||
import { Handler } from 'express';
|
||||
|
||||
declare namespace routesVersioning {
|
||||
interface VersionOptions {
|
||||
[versionKey: string]: Handler;
|
||||
}
|
||||
|
||||
type RoutesVersioningMiddleware = (args: VersionOptions, notFoundMiddleware?: Handler) => Handler;
|
||||
}
|
||||
|
||||
declare function routesVersioning(): routesVersioning.RoutesVersioningMiddleware;
|
||||
|
||||
export = routesVersioning;
|
||||
23
types/express-routes-versioning/tsconfig.json
Normal file
23
types/express-routes-versioning/tsconfig.json
Normal file
@ -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",
|
||||
"express-routes-versioning-tests.ts"
|
||||
]
|
||||
}
|
||||
1
types/express-routes-versioning/tslint.json
Normal file
1
types/express-routes-versioning/tslint.json
Normal file
@ -0,0 +1 @@
|
||||
{ "extends": "dtslint/dt.json" }
|
||||
Loading…
Reference in New Issue
Block a user