import type { TotemConfig } from './config-schema.js'; export interface ProjectDescription { project: string; description?: string; tier: 'lite' | 'standard' | 'full'; /** * The ACTIVE compiled-rule count — the set `totem lint` enforces and * `totem status` reports, resolved through the same predicate as lint's * loader (`isActiveCompiledRule`, mmnto-ai/totem#2765). Before that fix this * was the raw file total, which no enforcement surface counts. */ rules: number; /** Every entry in `compiled-rules.json`, whatever its status — the raw total the banner used to print. */ rulesCompiled: number; /** Inert entries by status; `rules + rulesArchived + rulesUntested + rulesPendingVerification === rulesCompiled`. */ rulesArchived: number; rulesUntested: number; rulesPendingVerification: number; /** * Where the rule counts came from: the parsed `compiled-rules.json`, no such * file (`absent`), or a file the schema-validating loader refused * (`unreadable` — zeros above, and the banner says so rather than showing * an honestly-empty-looking 0; lint's loader names the fault). */ rulesSource: 'compiled-rules' | 'absent' | 'unreadable'; lessons: number; targets: string[]; partitions: Record; hooks: string[]; } /** * Gather project description from filesystem — no LLM, no embedder, fast. * Requires a pre-loaded config and the resolved config root directory. */ export declare function describeProject(config: TotemConfig, configRoot: string): ProjectDescription; //# sourceMappingURL=describe.d.ts.map