import { RUN_STATES, type RunState } from "./workflow-types.js"; export { RUN_STATES, type RunState }; export interface RunGateFacts { readonly objective: { readonly evidenceComplete: boolean; readonly verifierPassed: boolean; readonly prerequisitesComplete: boolean; }; readonly workers: { readonly active: boolean; readonly uncertain: boolean; readonly detached: boolean; }; readonly cancellation: { readonly requested: boolean; readonly settled: boolean; }; readonly input: { readonly delivered: boolean; }; readonly reconciliation: { readonly recorded: boolean; readonly uncertaintyCleared: boolean; }; readonly attention: { readonly cleared: boolean; }; } export type RunGateGuard = "objective.evidence.complete" | "objective.verifier.passed" | "objective.prerequisites.complete" | "workers.none_active" | "workers.none_uncertain" | "workers.none_detached" | "cancellation.requested" | "cancellation.settled" | "input.delivered" | "reconciliation.recorded" | "reconciliation.uncertainty_cleared" | "attention.cleared"; export interface RunTransitionRule { readonly from: RunState; readonly to: RunState; readonly guards: readonly RunGateGuard[]; } export declare const RUN_LEGALITY_TABLE: readonly RunTransitionRule[]; export declare function evaluateRunTransition(from: RunState, to: RunState, facts: RunGateFacts): { readonly allowed: true; } | { readonly allowed: false; readonly reason: "undeclared-transition" | "guard-failed"; readonly blockers: readonly RunGateGuard[]; }; //# sourceMappingURL=run-gate.d.ts.map