mp-lens
Version:
微信小程序分析工具 (Unused Code, Dependencies, Visualization)
89 lines (88 loc) • 2.43 kB
TypeScript
/**
* Verbosity levels for logging:
* 0 = ESSENTIAL: Only critical information (errors, warnings, final results)
* 1 = NORMAL: Basic debug information (DEFAULT with --verbose flag)
* 2 = VERBOSE: Detailed debug information (configuration, processing steps)
* 3 = TRACE: Extremely detailed information (path resolution, all file operations)
*/
export declare enum LogLevel {
ESSENTIAL = 0,
NORMAL = 1,
VERBOSE = 2,
TRACE = 3
}
interface LoggerOptions {
/** The verbosity level (0-3) */
level: LogLevel;
/** Project root path for path normalization */
projectRoot?: string;
/** Whether to use relative paths in logs */
useRelativePaths?: boolean;
/** Whether to colorize log output */
useColors?: boolean;
/** Language for logs (defaults to English) */
language?: 'en' | 'zh';
}
/**
* Debug logger utility for the analyzer
*/
declare class DebugLogger {
private options;
/**
* Create a new debug logger
*/
constructor(options?: Partial<LoggerOptions>);
/**
* Update logger options
*/
setOptions(options: Partial<LoggerOptions>): void;
/**
* Set the verbosity level
*/
setLevel(level: LogLevel | boolean): void;
/**
* Get the current verbosity level
*/
getLevel(): LogLevel;
/**
* Set the project root for path normalization
*/
setProjectRoot(projectRoot: string): void;
/**
* Log a message at ESSENTIAL level (always shown)
*/
info(message: string, ...args: any[]): void;
/**
* Log a warning message (always shown)
*/
warn(message: string, ...args: any[]): void;
/**
* Log an error message (always shown)
*/
error(message: string, ...args: any[]): void;
/**
* Log a message at NORMAL level
* Only shown when verbose flag is enabled
*/
debug(message: string, ...args: any[]): void;
/**
* Log a message at VERBOSE level
* Requires verbosity level of 2 or higher
*/
verbose(message: string, ...args: any[]): void;
/**
* Log a message at TRACE level
* Requires verbosity level of 3
*/
trace(message: string, ...args: any[]): void;
/**
* Normalize paths in log messages if needed
*/
private normalizePath;
/**
* Internal logging implementation
*/
private _log;
}
export declare const logger: DebugLogger;
export {};