/** * @author jasonHzq * @description Logger 兼容层 * * 保留旧版 Logger 接口,内部使用新版实现 * 确保现有代码无需修改即可使用新 Logger * * @deprecated 推荐直接使用 ./logger 模块中的新版 Logger */ import { createLogger as createNewLogger } from './logger/logger.d.ts'; /** * @deprecated 使用新版 LogLevel (trace/debug/info/warn/error/fatal/silent) */ export type LogType = "error" | "warn" | "info"; /** * @deprecated 使用新版 LogLevel */ export type LogLevel = LogType | "silent"; /** * @deprecated 新版使用不同的权重映射 */ export declare const LogLevels: Record; /** * @deprecated 使用新版 LogMeta */ export interface LogOptions { timestamp?: boolean; } /** * @deprecated 使用新版 LogMeta */ export interface LogErrorOptions extends LogOptions { error?: Error | null; prefix?: string; } /** * @deprecated 使用新版 Logger 接口 */ export interface Logger { info(msg: string, options?: LogOptions): void; warn(msg: string, options?: LogOptions): void; warnOnce(msg: string, options?: LogOptions): void; error(msg: string, options?: LogErrorOptions): void; hasErrorLogged(error: Error): boolean; hasWarned: boolean; } /** * @deprecated 使用新版 LoggerOptions */ export interface LoggerOptions { prefix?: string; customLogger?: Logger; console?: Console; } /** * 创建 Logger 实例(兼容旧版 API) * * @param level - 日志级别 (silent/error/warn/info) * @param options - Logger 配置选项 * @returns Logger 实例 * * @deprecated 推荐使用 ./logger 中的 createLogger * * @example * ```typescript * // 旧版用法(仍然可用) * const logger = createLogger('info', { prefix: '[app]' }); * logger.info('message'); * logger.error('error', { error: new Error('fail') }); * * // 推荐新版用法 * import { createLogger } from './logger.d.ts'; * const logger = createLogger('info', { prefix: '[app]' }); * logger.info('message'); * logger.error('error', new Error('fail')); * logger.debug('debug info'); // 新增 * ``` */ export declare function createLogger(level?: LogLevel, options?: LoggerOptions): Logger; /** * 推荐直接导入新版 Logger * * @example * ```typescript * // 推荐方式 * import { createNewLogger, PontxLogger } from './logger.d.ts'; * * const logger = createNewLogger('debug', { * prefix: '[app]', * json: false * }); * * logger.trace('trace'); * logger.debug('debug'); * logger.info('info'); * logger.warn('warn'); * logger.error('error', error); * logger.fatal('fatal', error); * ``` */ export { createNewLogger }; export { PontxLogger } from './logger/logger.d.ts'; export { ConsoleLogger, createConsoleLogger } from './logger/console-logger.d.ts'; export { getLogLevelFromEnv } from './logger/utils.d.ts'; export type { Logger as NewLogger, LogLevel as NewLogLevel, LogMeta, LoggerOptions as NewLoggerOptions, } from './logger/types.d.ts';