/** * Log levels */ export declare enum LogLevel { DEBUG = "debug", INFO = "info", WARN = "warn", ERROR = "error" } /** * Logger interface */ export interface Logger { debug(message: string, ...args: any[]): void; info(message: string, ...args: any[]): void; warn(message: string, ...args: any[]): void; error(message: string, ...args: any[]): void; child(fields: Record): Logger; } /** * Console logger implementation */ export declare class ConsoleLogger implements Logger { private readonly isDevelopment; private readonly fields; constructor(fields?: Record); /** * Format log message with timestamp and level */ private formatMessage; /** * Create a child logger with additional fields */ child(fields: Record): Logger; /** * Log a debug message (only in development) */ debug(message: string, ...args: any[]): void; /** * Log an info message */ info(message: string, ...args: any[]): void; /** * Log a warning message */ warn(message: string, ...args: any[]): void; /** * Log an error message */ error(message: string, ...args: any[]): void; /** * Process args and add fields */ private processArgs; } /** * Get the logger instance * @returns Logger instance */ export declare function getLogger(): Logger; /** * Set a custom logger implementation * @param customLogger The custom logger to use */ export declare function setLogger(customLogger: Logger): void;