import type * as ElevenLabs from "../index"; export interface WorkflowSayNodeModelOutput { /** Position of the node in the workflow. */ position: ElevenLabs.PositionOutput; /** The ids of outgoing edges in the order they should be evaluated. */ edgeOrder: string[]; /** Configuration overrides applied while this node speaks, such as the voice or, for prompt messages, the LLM and system prompt. */ conversationConfig: ElevenLabs.ConversationalConfigApiModelWorkflowOverrideOutput; /** Accepted for consistency with subagent nodes but not used. Describe the message in `message.prompt`, or replace the system prompt with `conversation_config.agent.prompt.prompt`. */ additionalPrompt: string; /** Knowledge base documents available to the LLM while this node generates its message, in addition to the agent's documents. */ additionalKnowledgeBase: ElevenLabs.KnowledgeBaseLocator[]; /** Accepted for consistency with subagent nodes but not used. A say node cannot call tools. */ additionalToolIds: string[]; /** Human-readable label for the node used throughout the UI. */ label: string; /** Message spoken by this node. Use `literal` for exact text or `prompt` to have the LLM generate the message from a description. */ message: ElevenLabs.WorkflowSayNodeModelOutputMessage; /** When true, the workflow only moves to the next node after the message has been fully spoken. */ waitForSpeechCompletion: boolean; /** When true, the node speaks its message and then waits for the user to reply before evaluating outgoing edges, so edges can branch on the reply. If the user stays silent, the workflow advances after the turn timeout. */ waitForUserResponse: boolean; }