/** * Per-file simplicity signals for KISS violation detection. * * Computes structural metrics (class count, avg method complexity/lines) per file * so the LLM can detect over-abstraction even when no single function exceeds * a complexity threshold. */ import type { CodeChunk } from '../types.js'; export interface FileSimplicitySignal { file: string; classCount: number; functionCount: number; methodCount: number; avgMethodComplexity: number; maxMethodComplexity: number; avgMethodLines: number; flagged: boolean; reason: string; } /** * Compute per-file simplicity signals from indexed chunks. * Only returns signals for files with classCount >= 2 or flagged === true. * Only processes files present in filesToAnalyze. */ export declare function computeSimplicitySignals(chunks: CodeChunk[], filesToAnalyze: string[]): FileSimplicitySignal[]; /** * Serialize simplicity signals to markdown for prompt injection. * Returns empty string when there are no signals. */ export declare function serializeSimplicitySignals(signals: FileSimplicitySignal[]): string; //# sourceMappingURL=simplicity-signals.d.ts.map