import { BlueNode } from '@blue-labs/language'; import { ContractProcessorContext } from '../../types.js'; import { SequentialWorkflow } from '../../../model/index.js'; export type StepResultMap = Record; export interface StepExecutionArgs { readonly workflow: SequentialWorkflow; readonly stepNode: BlueNode; readonly eventNode: BlueNode; readonly context: ContractProcessorContext; readonly stepResults: StepResultMap; readonly stepIndex: number; readonly contractNode: BlueNode | null; } export interface SequentialWorkflowStepExecutor { readonly supportedBlueIds: readonly string[]; execute(args: StepExecutionArgs): unknown | Promise; } export declare const DEFAULT_STEP_EXECUTORS: readonly SequentialWorkflowStepExecutor[]; export declare class WorkflowStepRunner { private readonly executorIndex; constructor(executors?: readonly SequentialWorkflowStepExecutor[]); run(args: { workflow: SequentialWorkflow; eventNode: BlueNode; context: ContractProcessorContext; contractNode: BlueNode | null; }): Promise; private stepResultKey; } //# sourceMappingURL=step-runner.d.ts.map