import { type LogEntry, LogLevel } from "./log-formatter"; export type LogTransport = (entry: LogEntry, formatted: string) => void; export declare class Logger { private formatter; private filter; private transports; private defaultChannel; addTransport(transport: LogTransport): void; removeTransport(transport: LogTransport): void; setMinLevel(level: LogLevel): void; setChannelLevel(channel: string, level: LogLevel): void; setModuleTracking(enabled: boolean): void; setModuleIncludes(modules: string[]): void; setModuleExcludes(modules: string[]): void; setTemplate(level: LogLevel, template: string): void; setDateFormat(format: string): void; createChannel(name: string): LogChannel; error(...args: unknown[]): void; warn(...args: unknown[]): void; info(...args: unknown[]): void; debug(...args: unknown[]): void; trace(...args: unknown[]): void; write(level: LogLevel, channel: string, args: unknown[], module?: string): void; private log; } export declare class LogChannel { private logger; private name; constructor(logger: Logger, name: string); error(...args: unknown[]): void; warn(...args: unknown[]): void; info(...args: unknown[]): void; debug(...args: unknown[]): void; trace(...args: unknown[]): void; } export { LogEntry, LogLevel } from "./log-formatter";