UNPKG

@himorishige/noren-devtools

Version:

Development and testing tools for Noren PII detection library

61 lines (60 loc) 2.49 kB
/** * Common report generation utilities for noren-devtools * Unified formatting and output generation to eliminate duplication */ import type { ConfidenceInterval, SummaryStats } from './stats-common.js'; export interface ReportSection { title: string; content: string; metadata?: Record<string, unknown>; } export interface PerformanceMetrics { duration: number; throughput: number; memoryUsage: number; errorRate?: number; } export interface AccuracyMetrics { precision: number; recall: number; f1Score: number; truePositives: number; falsePositives: number; falseNegatives: number; } export declare function formatPerformanceSection(name: string, metrics: PerformanceMetrics, confidence?: ConfidenceInterval): ReportSection; export declare function formatAccuracySection(name: string, metrics: AccuracyMetrics): ReportSection; export declare function formatSummaryStatsSection(name: string, stats: SummaryStats): ReportSection; export declare class ReportBuilder { private sections; title(text: string): this; section(section: ReportSection): this; performance(name: string, metrics: PerformanceMetrics, confidence?: ConfidenceInterval): this; accuracy(name: string, metrics: AccuracyMetrics): this; summaryStats(name: string, stats: SummaryStats): this; comparison(winner: string, improvement: number, significance: number): this; summary(testName: string, sampleCount: number, duration: number, completed: string): this; text(content: string): this; build(): string; private formatHeader; } export declare function createBenchmarkReport(name: string, results: Array<{ name: string; metrics: PerformanceMetrics; confidence?: ConfidenceInterval; }>): string; export declare function createABTestReport(testName: string, variantA: { name: string; performance: PerformanceMetrics; accuracy?: AccuracyMetrics; }, variantB: { name: string; performance: PerformanceMetrics; accuracy?: AccuracyMetrics; }, winner: string, improvement: number, significance: number, sampleCount: number, duration: number): string; export declare function createEvaluationReport(name: string, accuracy: AccuracyMetrics, performanceStats?: SummaryStats): string; export declare function printReport(report: string, options?: { timestamp?: boolean; prefix?: string; }): void; export declare function printProgress(current: number, total: number, operation?: string): void;