/** * Log levels in order of verbosity */ export declare enum LogLevel { SILENT = 0, ERROR = 1, WARN = 2, INFO = 3, DEBUG = 4, TRACE = 5 } /** * Logger configuration options */ export interface LoggerOptions { level?: LogLevel; prefix?: string; timestamp?: boolean; } /** * A simple, colorful logger with support for log levels */ export default class Logger { private level; private prefix; private timestamp; /** * Create a new logger * @param options Logger options */ constructor(options?: LoggerOptions); /** * Set the log level * @param level The log level to set */ setLevel(level: LogLevel): void; /** * Get the current log level */ getLevel(): LogLevel; /** * Format a log message with timestamp and prefix * @param message The message to format */ private format; /** * Log a trace level message * @param message The message to log * @param args Additional arguments to log */ trace(message: string, ...args: any[]): void; /** * Log a debug level message * @param message The message to log * @param args Additional arguments to log */ debug(message: string, ...args: any[]): void; /** * Log an info level message * @param message The message to log * @param args Additional arguments to log */ info(message: string, ...args: any[]): void; /** * Log a warning level message * @param message The message to log * @param args Additional arguments to log */ warn(message: string, ...args: any[]): void; /** * Log an error level message * @param message The message to log * @param args Additional arguments to log */ error(message: string, ...args: any[]): void; /** * Create a child logger with a specific prefix * @param prefix The prefix for the child logger */ child(prefix: string): Logger; }