/** * SMI-1189: Logger * SMI-XXX: Improved output format with progress bars and tables * * Logging utilities for the security scanner. */ import type { SecurityFinding } from '../../security/index.js'; import type { SkillScanResult } from './types.js'; /** * Formats a duration in milliseconds to human-readable string * * @param ms - Duration in milliseconds * @returns Formatted duration string */ export declare function formatDuration(ms: number): string; /** * Log a section header * * @param title - Header title */ export declare function logHeader(title: string): void; /** * Log a security finding * * @param finding - The security finding to log * @param skillId - The skill ID associated with the finding */ export declare function logFinding(finding: SecurityFinding, skillId: string): void; /** * Log a list of findings with truncation * * @param findings - Array of findings with skill context * @param maxDisplay - Maximum number of findings to display * @param title - Section title */ export declare function logFindings(findings: Array, maxDisplay: number, title: string): void; /** * Log progress update * * @param processed - Number of items processed * @param total - Total number of items */ export declare function logProgress(processed: number, total: number): void; /** * Log completion message * * @param processed - Number of items processed * @param total - Total number of items */ export declare function logCompletion(processed: number, total: number): void; /** * Log file output success * * @param filename - Name of the file * @param count - Number of items in the file * @param description - Optional description of the file */ export declare function logFileOutput(filename: string, count: number, description?: string): void; /** * Log the initial scan summary banner * * @param skillCount - Total number of skills to scan * @param inputPath - Path to input file * @param outputDir - Output directory */ export declare function logScanStart(skillCount: number, inputPath: string, outputDir: string): void; /** * Create a progress bar string * * @param current - Current progress value * @param total - Total value * @param width - Width of the progress bar in characters * @returns Progress bar string */ export declare function createProgressBar(current: number, total: number, width?: number): string; /** * Log progress with a visual progress bar * * @param processed - Number of items processed * @param total - Total number of items * @param inPlace - Whether to update in place (overwrite previous line) */ export declare function logProgressBar(processed: number, total: number, inPlace?: boolean): void; /** * Clear the progress line and move to new line */ export declare function clearProgressLine(): void; /** * Log a table of quarantined skills * * @param results - Array of quarantined scan results * @param maxRows - Maximum number of rows to display */ export declare function logQuarantineTable(results: SkillScanResult[], maxRows?: number): void; /** * Log a summary of safe skills * * @param results - Array of safe scan results * @param maxDisplay - Maximum number to display */ export declare function logSafeSkillsSummary(results: SkillScanResult[], maxDisplay?: number): void; /** * Log categorized results by severity * * @param results - Array of scan results */ export declare function logCategorizedResults(results: SkillScanResult[]): void; //# sourceMappingURL=logger.d.ts.map