import { LogLevel } from "../../model/logging/LogLevel"; import { ILogger, LogFormat } from "./ILogger"; /** * Logger implementation that uses the console for output. */ export declare class ConsoleLogger implements ILogger { private readonly clazz; readonly level: LogLevel; readonly format: LogFormat; readonly logTimestamp: boolean; private readonly useStringLogFormat; /** * Build a new logger. * * @param clazz The enclosing class that will use the new logger. * @param logLevel Lowest level to log, defaults to `info`. * @param logFormat Format to output log messages in, defaults to `string`. * @param logTimestamp Print an ISO 8601 timestamp before every log message? (string format only) */ constructor(clazz: string, level: LogLevel, format: LogFormat, logTimestamp: boolean); private formatMessage; /** * Log a message with a custom level. Ignores messages of a lower log * level than the current level. If [[Environment.UnderTest]] is enabled * then this method will only log info messages or higher. * * @param level Level of the log message. * @param message String which can contain `sprintf` style format placeholders. * @param formatArgs (Optional) Arguments which are passed to `sprintf` to format the message. */ log(level: LogLevel, message: string, ...formatArgs: any[]): void; /** * Log a trace level message. * * @param message String which can contain `sprintf` style format placeholders. * @param formatArgs (Optional) Arguments which are passed to `sprintf` to format the message. */ trace(message: string, ...formatArgs: any[]): void; /** * Log a debug level message. * * @param message String which can contain `sprintf` style format placeholders. * @param formatArgs (Optional) Arguments which are passed to `sprintf` to format the message. */ debug(message: string, ...formatArgs: any[]): void; /** * Log a info level message. * * @param message String which can contain `sprintf` style format placeholders. * @param formatArgs (Optional) Arguments which are passed to `sprintf` to format the message. */ info(message: string, ...formatArgs: any[]): void; /** * Log a warn trace level message. * * @param message String which can contain `sprintf` style format placeholders. * @param formatArgs (Optional) Arguments which are passed to `sprintf` to format the message. */ warn(message: string, ...formatArgs: any[]): void; /** * Log a error level message. * * @param message String which can contain `sprintf` style format placeholders. * @param formatArgs (Optional) Arguments which are passed to `sprintf` to format the message. */ error(message: string, ...formatArgs: any[]): void; /** * Log a error level message with an associated error and stack trace. * * @param message String which can contain `sprintf` style format placeholders. * @param ex Error object associated with this error message. * @param formatArgs (Optional) Arguments which are passed to `sprintf` to format the message. */ errorWithStack(message: string, ex: Error, ...formatArgs: any[]): void; /** * Log a fatal level message. * * @param message String which can contain `sprintf` style format placeholders. * @param formatArgs (Optional) Arguments which are passed to `sprintf` to format the message. */ fatal(message: string, ...formatArgs: any[]): void; /** * Is a given log level enabled? * * @param level Level to check. */ levelEnabled(level: LogLevel): boolean; /** * Is trace log level enabled? */ traceEnabled(): boolean; /** * Is debug log level enabled? */ debugEnabled(): boolean; /** * Is info log level enabled? */ infoEnabled(): boolean; /** * Is warn log level enabled? */ warnEnabled(): boolean; /** * Is error log level enabled? */ errorEnabled(): boolean; /** * Is fatal log level enabled? */ fatalEnabled(): boolean; /** * Is the current log level `off`? */ isOff(): boolean; }