import type { Expr } from "./ast.ts"; /** * Enforce `$match` query-operator placement (only meaningful for a raw object * body — an expression body can't contain these). `isTopLevel`/`isFirstStage` * gate the `$text`-must-be-first rule; the disallowed-operator rule always fires. */ export declare function validateMatchPlacement(body: Expr, opts: { isTopLevel: boolean; isFirstStage: boolean; }): void; /** * Validate a stage's body against the 100%-static-certain shape rules. A no-op * for stages with no validator, and (per the literal-gating invariant) a no-op * whenever the checked slot isn't a fully-static literal. */ export declare function validateStageBody(stageName: string, body: Expr): void; //# sourceMappingURL=stage-validation.d.ts.map