/** * @author jasonHzq * @description Logger 工具函数 * * 提供时间格式化、JSON 序列化、日志级别解析等工具函数 */ import { LogLevel } from './types.d.ts'; /** * 格式化当前时间 * 格式: HH:MM:SS * * @returns 格式化的时间字符串 */ export declare function formatTime(): string; /** * 安全地序列化对象为 JSON * 如果序列化失败,返回字符串形式 * * @param obj - 要序列化的对象 * @param indent - 缩进空格数 * @returns JSON 字符串 */ export declare function formatJson(obj: any, indent?: number): string; /** * 检查字符串是否是有效的日志级别 * * @param level - 待检查的字符串 * @returns 是否是有效的日志级别 */ export declare function isValidLogLevel(level: string): level is LogLevel; /** * 从环境变量获取日志级别 * * 优先级: * 1. PONTX_LOG_LEVEL - 显式指定日志级别 * 2. DEBUG - 包含 'pontx' 时启用 debug * 3. PONTX_DEBUG - 设置为 'true' 时启用 debug * 4. NODE_ENV - development 启用 debug,test 启用 warn * 5. 默认 - info * * @returns 解析出的日志级别 */ export declare function getLogLevelFromEnv(): LogLevel; /** * 比较两个日志级别 * * @param level1 - 第一个日志级别 * @param level2 - 第二个日志级别 * @returns level1 >= level2 返回 true */ export declare function shouldLog(level1: LogLevel, level2: LogLevel): boolean; /** * 截断长文本 * * @param text - 原始文本 * @param maxLength - 最大长度 * @returns 截断后的文本 */ export declare function truncate(text: string, maxLength: number): string; /** * 格式化错误堆栈 * 移除无关的堆栈信息,保留有用部分 * * @param stack - 错误堆栈字符串 * @param maxLines - 最大保留行数 * @returns 格式化后的堆栈 */ export declare function formatErrorStack(stack: string | undefined, maxLines?: number): string; /** * 从 Error 对象提取关键信息 * * @param error - Error 对象 * @returns 提取的错误信息 */ export declare function extractErrorInfo(error: Error): { message: string; stack?: string; name?: string; code?: string; [key: string]: any; };