Public declaration syntax from forge-ts/packages/forge-agent/src/workflow.ts Original source SHA-256: fca44a1ad9c288097814295e175f0b0afeb9d65c6cb671778b9f0a7673d839c1 Function bodies and constant values are omitted. This is not the complete implementation. Source line 28 export interface WorkflowStep { /** The name of the agent that executed this step. */ readonly agentName: string; /** The output from the agent's tool loop. */ readonly output: ToolLoopOutput; /** The wall-clock duration of this step in milliseconds. */ readonly durationMs: number; } Source line 49 export interface WorkflowResult { /** The workflow identifier. */ readonly workflowId: string; /** All steps executed in the workflow. */ readonly steps: readonly WorkflowStep[]; /** The total wall-clock duration of the workflow in milliseconds. */ readonly totalDurationMs: number; } Source line 74 export class SequentialWorkflow { readonly workflowId: string; constructor(workflowId: string, agents: readonly ToolLoopAgent[]); async run(initialMessage: string): Promise; } Source line 166 export class ParallelWorkflow { readonly workflowId: string; constructor(workflowId: string, agents: readonly ToolLoopAgent[]); async run(message: string): Promise; } Source line 256 export type RouterFn = ( message: string, agents: readonly ToolLoopAgent[] ) => number | Promise; Source line 281 export class RouterWorkflow { readonly workflowId: string; constructor( workflowId: string, agents: readonly ToolLoopAgent[], router: RouterFn ); async run(message: string): Promise; }