/** * CliReporting - format reports and send them to output sinks. */ import type { CheckResult } from './types.js'; export type OutputFormat = 'text' | 'json' | 'csv'; export interface UsernameReport { username: string; results: CheckResult[]; } export interface OutputWrite { filePath: string; content: string; } export declare function formatJson(results: CheckResult[]): string; export declare function formatJsonReport(reports: UsernameReport[]): string; export declare function formatCsv(results: CheckResult[]): string; export declare function formatCsvReport(reports: UsernameReport[]): string; export declare function formatText(results: CheckResult[]): string; export declare function formatTextReport(reports: UsernameReport[]): string; export declare function formatDebugReport(reports: UsernameReport[]): string; export declare function formatReport(reports: UsernameReport[], format: OutputFormat): string; export declare function formatSingleReport(results: CheckResult[], format: OutputFormat): string; export declare function sanitizeOutputBasename(username: string): string; export declare function getOutputExtension(format: OutputFormat): string; export declare function buildOutputBasenames(usernames: string[]): string[]; export declare function buildPrimaryOutputWrites(reports: UsernameReport[], options: { format: OutputFormat; outputFile?: string; outputDir?: string; }): OutputWrite[]; export declare function buildAdditionalOutputWrites(reports: UsernameReport[], options: { jsonFile?: string; csvFile?: string; }): OutputWrite[]; export declare function ensureParentDirectory(filePath: string): void; export declare function writeOutputWrites(writes: OutputWrite[]): string[]; export declare function writeStdout(output: string): void;