import type { RepoProfile, HarnessPlan } from './analyze-repo.js'; export interface ConstraintResult { id: string; label: string; /** hard = must pass (a failing hard constraint should block scaffolding); * soft = advisory (a missing nicety worth flagging). */ severity: 'hard' | 'soft'; passed: boolean; detail?: string; } /** * Check a recommended harness design against the constraint set. Pure + * deterministic — every check reads only the profile + plan. */ export declare function checkConstraints(profile: RepoProfile, plan: HarnessPlan): ConstraintResult[]; export interface ConstraintSummary { hardPassed: number; hardTotal: number; softPassed: number; softTotal: number; /** true iff every HARD constraint passed (the scaffold gate). */ allHardPass: boolean; failures: ConstraintResult[]; } export declare function summarise(results: ConstraintResult[]): ConstraintSummary; /** Format the constraint report as lines. */ export declare function formatConstraints(results: ConstraintResult[]): string[]; //# sourceMappingURL=constraints.d.ts.map