/** * @since 0.0.1 */ import * as E from "fp-ts/Either"; import * as Interceptor from "../Interceptor.js"; /** * @since 0.0.1 * @category model */ export declare enum Level { /** No logs. */ NONE = 0, /** * Logs request and response lines. * * Example: * ``` * --> POST /greeting http/1.1 (3-byte body) * * <-- 200 OK (22ms, 6-byte body) * ``` */ BASIC = 1, /** * Logs request and response lines and their respective headers. * * Example: * ``` * --> POST /greeting http/1.1 * Host: example.com * Content-Type: plain/text * Content-Length: 3 * --> END POST * * <-- 200 OK (22ms) * Content-Type: plain/text * Content-Length: 6 * <-- END HTTP * ``` */ HEADERS = 2, /** * Logs request and response lines and their respective headers and bodies (if present). * * Example: * ``` * --> POST /greeting http/1.1 * Host: example.com * Content-Type: plain/text * Content-Length: 3 * * Hi? * --> END POST * * <-- 200 OK (22ms) * Content-Type: plain/text * Content-Length: 6 * * Hello! * <-- END HTTP * ``` */ BODY = 3 } declare const logger: (level: Level, headersToRedact?: string[]) => (context: Interceptor.Chain) => Promise>; export { /** * @since 0.0.1 * @category interceptor */ logger as Logger };