import type { AskQuestionInput, AskQuestionOutput } from "#execution/tools/ask-question.js";
import type { ToolInputRequest, ToolInputResponse } from "#tools/definition.js";
import type { WorkflowToolContext } from "#tools/workflow-definition.js";
/** Asks the session's user one question in a workflow dedicated to this tool call. */
export declare function executeAskQuestionTool(input: AskQuestionInput, ctx: WorkflowToolContext): Promise<AskQuestionOutput>;
/**
 * Free text is always allowed, so the model never needs an "Other" option.
 * Labels double as option ids so a late answer still reads as the label.
 */
export declare function toAskQuestionRequest(input: AskQuestionInput): ToolInputRequest;
export declare function toAskQuestionOutput(answer: ToolInputResponse): AskQuestionOutput;
