import type { Check, CheckInput, CheckingLayer, Finding } from "./types.js"; export interface CheckingLayerOptions { /** Checks plugged in through `createVendo({ apps: { checks } })`, plus the * ones a mounted subsystem brings. APPENDED — they can add findings, never * remove or replace a built-in. */ checks?: readonly Check[]; } /** A judgment rule is the only thing the floor does NOT run. `kind` is optional * on a fact check, so absence means "run it": a safety floor never opts a check * out by omission. */ export declare const isJudgment: (check: Check) => check is Extract; /** The judgment rules over a set of checks, one sentence each, in registration * order. Exported because the reviewer is handed exactly this list — the layer * and the reviewer must never compute it two different ways. */ export declare const judgmentRules: (checks: readonly Check[]) => string[]; /** * Run a list of checks over one app, with the discipline no caller should * re-implement: judgment rules are not code and are skipped, the fact checks run * in parallel, and one that throws or answers in a shape this floor cannot read * degrades to a `warn` naming it. * * Exported for the one caller whose artifact the BUILT-IN checks cannot read: a * component screen's mechanical floor is its own gauntlet * (`checking/component-screen.ts`) and the built-ins measure a wire tree, so the * paint gate runs the host's plugged checks through this and nothing else * (`floor.ts` `component`). Every other caller wants {@link createCheckingLayer}, * which always carries the built-in floor — that list is never optional. */ export declare const runChecks: (checks: readonly Check[], input: CheckInput) => Promise; export declare const createCheckingLayer: ({ checks }?: CheckingLayerOptions) => CheckingLayer; //# sourceMappingURL=layer.d.ts.map