import type { AgencyNode } from "../types.js"; import type { ScopeInfo, TypeCheckError, TypeCheckerContext } from "./types.js"; /** * The `?` operator is refused where it cannot do what it says. It is lowered * to an early return by the hoist pass, so it is refused where that pass * cannot lift from (AG1021 to AG1023, the same statuses a pausing cast is * refused in), in a function whose declared return type cannot hold a * failure (AG2024), at the top level of a `parallel` arm, which cannot return * early (AG1024), and in a write target (AG1025). */ export declare function checkUnwraps(scopes: ScopeInfo[], ctx: TypeCheckerContext): void; /** The refusals that need no types, only the tree: AG1021 to AG1025. The * compile path calls this before codegen even when the type checker is off, * because each one marks a `?` the hoist pass would leave for the tripwire. */ export declare function unwrapRefusals(programNodes: AgencyNode[]): TypeCheckError[];