import { type ChannelReader } from "#execution/tools/workflow/owner-channels.js"; import type { WorkflowToolRunMessage, WorkflowToolRunControlMessage } from "#execution/tools/workflow/messages.js"; import type { WorkflowToolRunInput } from "#execution/tools/workflow/types.js"; export interface BlockingWorkflowOwner { /** The session's commands, from the run's control hook. */ readonly commands: ChannelReader<"control", WorkflowToolRunControlMessage>; handleMessage(message: WorkflowToolRunMessage): Promise; } /** The run's link to its session: commands arrive on its control hook, and its messages go to the session's inbox. */ export declare function createBlockingWorkflow(input: WorkflowToolRunInput): BlockingWorkflowOwner;