[@types/restify] Fix Callback Typing on Restify Metrics Plugin (#29785)

* fix typing on restify metrics plugin

* should be a function with typed arguments

* adding some comments to get another build to move the PR along
This commit is contained in:
Erik Kristensen
2018-12-31 10:03:22 -08:00
committed by Sheetal Nandi
parent 3095a0a266
commit 703965fef5
2 changed files with 21 additions and 11 deletions
+19 -9
View File
@@ -1417,22 +1417,32 @@ export namespace plugins {
*/
function throttle(options?: ThrottleOptions): RequestHandler;
interface MetricsCallback {
type MetricsCallback = (
/**
* An error if the request had an error
*/
err: Error;
err: Error,
metrics: MetricsCallbackOptions;
/**
* Object that contains the various metrics that are returned
*/
metrics: MetricsCallbackOptions,
req: Request;
res: Response;
/**
* The request obj
*/
req: Request,
/**
* The response obj
*/
res: Response,
/**
* The route obj that serviced the request
*/
route: Route;
}
route: Route,
) => void;
type TMetricsCallback = 'close' | 'aborted' | undefined;
@@ -1495,13 +1505,13 @@ export namespace plugins {
* Listens to the server's after event and emits information about that request (5.x compatible only).
*
* ```
* server.on('after', plugins.metrics( (err, metrics) =>
* server.on('after', plugins.metrics({ server }, (err, metrics, req, res, route) =>
* {
* // metrics is an object containing information about the request
* }));
* ```
*/
function metrics(opts: { server: Server }, callback: (options: MetricsCallback) => any): (...args: any[]) => void;
function metrics(opts: { server: Server }, callback: MetricsCallback): (...args: any[]) => void;
/**
* Parse the client's request for an OAUTH2 access tokensTable
+2 -2
View File
@@ -1251,13 +1251,13 @@ export namespace plugins {
* Listens to the server's after event and emits information about that request (5.x compatible only).
*
* ```
* server.on('after', plugins.metrics( (err, metrics) =>
* server.on('after', plugins.metrics({ server }, (err, metrics, req, res, route) =>
* {
* // metrics is an object containing information about the request
* }));
* ```
*/
function metrics(opts: { server: Server }, callback: (options: MetricsCallback) => any): (...args: any[]) => void;
function metrics(opts: { server: Server }, callback: MetricsCallback): (...args: any[]) => void;
/**
* Parse the client's request for an OAUTH2 access tokensTable