Skip to content

Commit

Permalink
fix: Pino options have a generic type (#304)
Browse files Browse the repository at this point in the history
  • Loading branch information
UndefinedBehaviour committed Oct 28, 2023
1 parent 9bf0802 commit f19ed45
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 3 deletions.
6 changes: 3 additions & 3 deletions index.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,13 @@ import { IncomingMessage, ServerResponse } from 'http';
import pino from 'pino';
import { err, req, res, SerializedError, SerializedRequest, SerializedResponse } from 'pino-std-serializers';

declare function PinoHttp<IM = IncomingMessage, SR = ServerResponse>(opts?: Options<IM, SR>, stream?: pino.DestinationStream): HttpLogger<IM, SR>;
declare function PinoHttp<IM = IncomingMessage, SR = ServerResponse, Opts = Options<IM, SR>>(opts?: Opts, stream?: pino.DestinationStream): HttpLogger<IM, SR, Opts>;

declare function PinoHttp<IM = IncomingMessage, SR = ServerResponse>(stream?: pino.DestinationStream): HttpLogger<IM, SR>;

export interface HttpLogger<IM = IncomingMessage, SR = ServerResponse> {
export interface HttpLogger<IM = IncomingMessage, SR = ServerResponse, Opts = Options<IM, SR>> {
(req: IM, res: SR, next?: () => void): void;
logger: pino.Logger;
logger: pino.Logger<Opts>;
}
export type ReqId = number | string | object;

Expand Down
8 changes: 8 additions & 0 deletions index.test-d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -205,3 +205,11 @@ const httpServerListener: RequestListener = (request, response) => {
request.allLogs[0].info("allLogs available on response");
response.end("Hello world");
};

// custom levels added in the options should be available
// on the logger returned by pino-http
pinoHttp({
customLevels: {
bark: 25,
}
}).logger.bark("arf arf");

0 comments on commit f19ed45

Please sign in to comment.