import { attachConsole, unattachConsole } from "./feat/attachConsole.js"; import { toJson } from "./feat/toJson.js"; import { ILogRecord, LogLv } from "./types.js"; export interface ILoggerOptions { /** 启用日志记录 */ enableRec?: boolean; /** 启用日志格式化打印(当打开日志时会格式化输出,不影响记录格式) */ enableFmt?: boolean; /** 日志记录的最长数量(内存中的限制,非文件的限制) */ recMaxLength?: number; /** 日志记录保存到文件,需要调用者实现,提供一个接口 */ recToFile?: (log: ILogRecord, options: ILoggerOptions) => any; /** 单个日志对象保存深度 */ logObjectMaxDepth?: number; /** 单个日志对象保存最大字节数 */ logObjectMaxBytes?: number | string; /** 开发追踪模式(在控制台使用 warn 都可以全部日志,以检查调用堆栈) */ isDevTrace?: boolean; /** 关闭日志显示输出 */ disableDisplay?: boolean; /** 异步显示日志输出 */ asyncDisplay?: boolean; /** 要记录的日志级别,记录大小于等于此等级的日志,默认为 LogLv.Log (1) */ recLv?: LogLv; } /** * 日志记录工具 * - 可以记录日志到内存或文件 * - 可以自动进行格式化日志输出 * - 给日志附带上下文信息 * - 支持异步显示日志输出 * - 支持劫持控制台日志输出(隐藏日志) */ export declare class Logger> { #private; options: ILoggerOptions; ctx?: TCtx; rootLogger?: Logger; recLogs: ILogRecord[]; constructor(ctx?: TCtx, options?: Partial, rootLogger?: Logger); attachConsole: typeof attachConsole; unattachConsole: typeof unattachConsole; toJson: typeof toJson; log(...args: any[]): void; info(...args: any[]): void; warn(...args: any[]): void; error(...args: any[]): void; debug(...args: any[]): void; group(...args: any[]): void; groupEnd(...args: any[]): void; __raw_console__: Record void>; } //# sourceMappingURL=Logger.d.ts.map