/** * Log levels in ascending order of severity */ export declare enum LogLevel { DEBUG = 0, INFO = 1, WARN = 2, ERROR = 3 } /** * Logger interface for structured logging */ export interface Logger { /** * Log an error message with optional context */ error(message: string, context?: Record): void; /** * Log a warning message with optional context */ warn(message: string, context?: Record): void; /** * Log an informational message with optional context */ info(message: string, context?: Record): void; /** * Log a debug message with optional context */ debug(message: string, context?: Record): void; } /** * Console-based logger implementation * Respects the configured log level and outputs to console */ export declare class ConsoleLogger implements Logger { private level; constructor(level?: LogLevel); /** * Set the minimum log level */ setLevel(level: LogLevel): void; /** * Get the current log level */ getLevel(): LogLevel; error(message: string, context?: Record): void; warn(message: string, context?: Record): void; info(message: string, context?: Record): void; debug(message: string, context?: Record): void; } /** * No-op logger implementation that produces no output * Useful for production environments or when logging should be disabled */ export declare class NoOpLogger implements Logger { error(_message: string, _context?: Record): void; warn(_message: string, _context?: Record): void; info(_message: string, _context?: Record): void; debug(_message: string, _context?: Record): void; } /** * Create a default logger instance * Uses ConsoleLogger with INFO level by default */ export declare function createDefaultLogger(): Logger; //# sourceMappingURL=logger.d.ts.map