/** * StyleTargetAnalyzer — measures a chapter's quantitative prose metrics and * compares them against the project's declared `style-targets.yml` (or the * built-in defaults). This is the deterministic counterpart to the qualitative * prose STYLE_GUIDE.md files: it turns the guide's numbers ("adverbs 3-5 per * 1000 words", "passive < 8%") into measured-vs-target verdicts. * * Reuses ProseAnalyzer for show/tell and sensory balance; everything else is * computed here with the same regex/heuristic style as the rest of the * analysis layer. Pure deterministic — no LLM. */ export type MetricStatus = 'ok' | 'low' | 'high' | 'na'; export interface MetricResult { key: string; label: string; /** Measured value, or null when not computable (e.g. no show/tell cues). */ measured: number | null; unit: string; min?: number; max?: number; status: MetricStatus; /** Optional caveat, e.g. "heuristic" or "no cues". */ note?: string; } export interface StyleTargetReport { chapter: string; wordCount: number; sentenceCount: number; source: 'file' | 'defaults'; metrics: MetricResult[]; /** Number of metrics outside their target band. */ warnings: number; } export declare class StyleTargetAnalyzer { private readonly projectPath; private readonly prose; constructor(projectPath: string); /** Analyze a single chapter file against the project's style targets. */ analyzeChapter(chapterFile: string): Promise; /** Analyze every `.md` file in `chapters/`. */ analyzeAll(): Promise; /** Core: measure metrics on raw chapter text and grade against targets. */ analyzeText(raw: string, chapter: string): StyleTargetReport; } //# sourceMappingURL=style-target-analyzer.d.ts.map