import type { WorkflowDefinition, WorkflowEdge, WorkflowNodeResult } from "./types.js"; /** * Validate the full graph: shape, known start node, known edge targets, and * at most one outgoing edge per node. */ export declare function validateWorkflowDefinition(workflow: WorkflowDefinition): void; /** * Resolve the next node after `from` completed with `output`. Switch edges * route on a JSON path into the output (`$.field` or `$output.field`) or the * node result (`$result.outcome`). */ export declare function resolveNext(edges: WorkflowEdge[], from: string, output: unknown, result?: WorkflowNodeResult): string | null; /** * Resolve routing for a failed node. Only `$result.` switch edges apply, so a * workflow can explicitly route on outcomes like `failed` or `timed_out`. */ export declare function resolveNextForOutcome(edges: WorkflowEdge[], from: string, result: WorkflowNodeResult): string | null;