/// import { Middleware } from './middleware'; import { Request, Response } from '../http'; /** * Logs requests and responses as JSON. * * @export * @class JSONLogger * @extends {Middleware} */ export declare class JSONLogger extends Middleware { /** * Reference to underlying bunyan logger. * * @private * @type {bunyan} * @memberof JSONLogger */ private log; /** * Reference to underlying log level. * * @private * @type {string} * @memberof JSONLogger */ private level; /** * Creates an instance of JSONLogger. * @param {string} name * @param {string} [level='info'] * @memberof JSONLogger */ constructor(name: string, level?: string); /** * Add a NodeJS.WriteStream stream to the list of log targets. * * @param {NodeJS.WriteStream} stream * @memberof JSONLogger */ addStream(stream: NodeJS.WriteStream): void; /** * Logs selected request values as JSON. * * @param {Request} req * @param {Response} res * @memberof JSONLogger */ processRequest: (req: Request, res: Response) => Promise; /** * Logs selected response values as JSON. * * @param {Request} req * @param {Response} res * @returns {Promise} * @memberof JSONLogger */ processResponse: (req: Request, res: Response) => Promise; }