/** * Logger * * Sistema de logging estruturado para o framework RW-UC. */ /** * Níveis de log */ export type LogLevel = 'debug' | 'info' | 'warn' | 'error'; /** * Entrada de log */ export interface LogEntry { timestamp: string; level: LogLevel; message: string; context?: Record | undefined; pipelineId?: string; taskId?: string; } /** * Opções do logger */ export interface LoggerOptions { level?: LogLevel; enableConsole?: boolean; enableFile?: boolean; filePath?: string; json?: boolean; colors?: boolean; prefix?: string; } /** * Logger class */ export declare class Logger { private options; constructor(options?: LoggerOptions); /** * Log de debug */ debug(message: string, context?: Record): void; /** * Log de info */ info(message: string, context?: Record): void; /** * Log de warning */ warn(message: string, context?: Record): void; /** * Log de error */ error(message: string, context?: Record): void; /** * Log genérico */ private log; /** * Escreve no console */ private writeConsole; /** * Escreve no arquivo */ private writeFile; /** * Cria um logger filho com contexto adicional */ child(context: { pipelineId?: string; taskId?: string; }): ChildLogger; /** * Define o nível de log */ setLevel(level: LogLevel): void; /** * Obtém o nível de log atual */ getLevel(): LogLevel; } /** * Logger filho com contexto */ export declare class ChildLogger { private parent; private context; constructor(parent: Logger, context: { pipelineId?: string; taskId?: string; }); debug(message: string, context?: Record): void; info(message: string, context?: Record): void; warn(message: string, context?: Record): void; error(message: string, context?: Record): void; private mergeContext; } /** * Obtém ou cria o logger global */ export declare function getLogger(options?: LoggerOptions): Logger; /** * Cria um novo logger */ export declare function createLogger(options?: LoggerOptions): Logger; /** * Funções de conveniência usando logger global */ export declare const log: { debug: (message: string, context?: Record) => void; info: (message: string, context?: Record) => void; warn: (message: string, context?: Record) => void; error: (message: string, context?: Record) => void; }; //# sourceMappingURL=logger.d.ts.map