import type { Binding, JsonValue, WorkflowNodeOutput } from './model.js'; import type { WorkflowError } from './runtime.js'; export interface WorkflowBindingContext { input: Record; /** `item`/`itemIndex` are set for a fan-out child and `round`/`maxRounds` for * an iteration round, both only while a Workflow Call maps its target's * inputs — which is where a round gets told which one it is. */ trigger: { kind: string; payload: Record; item?: JsonValue; itemIndex?: number; round?: number; maxRounds?: number; }; nodes: Record; run: { id: string; startedAt: string; todoId?: string; }; } type WorkflowBindingErrorCode = 'invalid-path' | 'missing-value' | 'type-mismatch' | 'unsafe-value'; export declare class WorkflowBindingError extends Error { readonly code: 'invalid-path' | 'missing-value' | 'type-mismatch' | 'unsafe-value'; constructor(code: WorkflowBindingErrorCode, message: string); } export declare function validateBindingPath(path: string): string[]; export declare function resolveBinding(binding: Binding, context: WorkflowBindingContext): T; export declare function interpolateWorkflowPrompt(template: string, context: WorkflowBindingContext): string; export {}; //# sourceMappingURL=bindings.d.ts.map