willow-cli
Version:
CLI for installing Willow Design System components
61 lines • 2.3 kB
TypeScript
export type LogLevel = 'info' | 'success' | 'warning' | 'error' | 'debug';
export interface LogOptions {
prefix?: string;
indent?: number;
timestamp?: boolean;
}
/**
* Enhanced logging utility with consistent formatting and context
*/
export declare class Logger {
private static indent;
private static debugMode;
static setDebugMode(enabled: boolean): void;
static increaseIndent(): void;
static decreaseIndent(): void;
static resetIndent(): void;
private static getIndent;
private static getTimestamp;
static info(message: string, options?: LogOptions): void;
static success(message: string, options?: LogOptions): void;
static warning(message: string, options?: LogOptions): void;
static error(message: string, options?: LogOptions): void;
static debug(message: string, options?: LogOptions): void;
static step(message: string): void;
static substep(message: string): void;
static title(message: string): void;
static section(message: string): void;
static spacer(): void;
static divider(): void;
static table(headers: string[], rows: string[][]): void;
static list(items: string[], options?: {
ordered?: boolean;
indent?: number;
}): void;
static group(title: string, callback: () => void): void;
}
/**
* Simple step logger for tracking progress
*/
export declare class StepLogger {
private currentStep;
private totalSteps;
private steps;
constructor(steps: string[]);
next(message?: string): void;
fail(message?: string): void;
skip(message?: string): void;
private logProgress;
complete(): void;
}
/**
* Utility functions for common logging patterns
*/
export declare function logFileOperation(operation: 'create' | 'update' | 'delete', filePath: string): void;
export declare function logDependencyInstall(deps: string[], manager?: string): void;
export declare function logComponentInstall(componentName: string, success: boolean): void;
export declare function logValidationResult(valid: boolean, issues?: string[], warnings?: string[]): void;
export declare function logEnvironmentInfo(info: Record<string, unknown>): void;
export declare const log: typeof Logger;
export { Logger as default };
//# sourceMappingURL=logger.d.ts.map