/** * Checking the structural nodes that open branches, and the type of what each * hands on once its branches join. * * `choice` outputs `{ case, output? }`, `parallel` an object of its branches * by name, `map` a list of its items, and a failed branch stays in each, so a * block never drops what went wrong. Branches that run together and write * need copies of the repository; that rule is computed from the files alone, * the flows they call unrolled, and errs only on the safe side. */ import type { CheckedOne, Checker } from "./check.ts"; import type { ChoiceNode, MapNode, ParallelNode } from "./node.ts"; import type { Scope } from "./scope.ts"; /** A `choice`: each case's condition in the choice's scope, each case's nodes in a scope of their own. */ export declare function checkChoice(checker: Checker, node: ChoiceNode, scope: Scope): CheckedOne; /** A `parallel`: each branch in a scope of its own, joined into an object by branch name. */ export declare function checkParallel(checker: Checker, node: ParallelNode, scope: Scope): CheckedOne; /** A `map`: its list typed, its body in a scope that lends `item`, joined into a list in item order. */ export declare function checkMap(checker: Checker, node: MapNode, scope: Scope): CheckedOne; //# sourceMappingURL=check-blocks.d.ts.map