export type LogLevel = 'debug' | 'info' | 'warn' | 'error' | 'silent'; 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; } export declare class WingmanLogger implements Logger { private level; private output; constructor(level?: LogLevel, output?: NodeJS.WriteStream); private shouldLog; private log; debug(message: string, ...args: any[]): void; info(message: string, ...args: any[]): void; warn(message: string, ...args: any[]): void; error(message: string, ...args: any[]): void; } export declare class SilentLogger implements Logger { debug(): void; info(): void; warn(): void; error(): void; } export declare function createLogger(level?: LogLevel): Logger; export interface SerializableLoggerConfig { level: LogLevel; } export declare function createLoggerFromConfig(config: SerializableLoggerConfig): Logger;