export interface BaseLogger { debug(message: string): void; info(message: string, guid?: string): void; warn(message: string): void; error(message: string): void; log(logLevel: LogLevel, message: string): void; } export declare enum LogLevel { Error = 0, Warn = 1, Info = 2, Debug = 3 } export interface LogOptions { logEnabled: boolean; logLevel?: LogLevel; logRequestAndResponseInfo?: boolean; logger?: BaseLogger; } export default class Logger implements BaseLogger { private logEnabled; private logLevel; private logger; logRequestAndResponseInfo: boolean; constructor({ logEnabled, logLevel, logRequestAndResponseInfo, logger }: LogOptions); debug(message: string): void; info(message: string): void; warn(message: string): void; error(message: string): void; log(logLevel: LogLevel, message: string): void; private isValidCustomLogger; }