import type { CapabilityBaselineRow } from '../../capability-baseline/types.js'; import type { GuardContext, GuardRunResult } from '../types.js'; /** * The frozen baseline row this contract is bound to. Throws when the baseline * is unreadable or the row is absent — a contract with no baseline behind it * must not be able to report green. */ export declare function requireBaselineRow(ctx: GuardContext): CapabilityBaselineRow; /** * Every `sourceFiles` entry of the row must still exist. The baseline names the * files that carry the journey; a vanished file is drift, so this returns the * missing ones rather than filtering them out. */ export declare function missingSourceFiles(ctx: GuardContext, row: CapabilityBaselineRow): ReadonlyArray; export declare function pass(ctx: GuardContext, artifactPath: string): GuardRunResult; export declare function fail(ctx: GuardContext, artifactPath: string, before: string, after: string, reason: string): GuardRunResult; /** Result of a source-level probe; `ok` drives pass/fail, `detail` the diff. */ export interface Probe { readonly ok: boolean; readonly detail: string; } export declare function combineProbes(probes: ReadonlyArray): Probe; /** Convenience: build a probe whose ok-ness is a boolean and a label. */ export declare function probe(ok: boolean, detail: string): Probe;