@himorishige/noren-devtools
Version:
Development and testing tools for Noren PII detection library
61 lines (60 loc) • 2.49 kB
TypeScript
/**
* 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;