UNPKG

@vfarcic/dot-ai

Version:

AI-powered development productivity platform that enhances software development workflows through intelligent automation and AI-driven assistance

55 lines 1.75 kB
/** * Answer Question Tool - Process user answers and return remaining questions */ import { z } from 'zod'; import { DotAI } from '../core/index'; import { Logger } from '../core/error-handling'; interface QuestionValidation { required?: boolean; message?: string; min?: number; max?: number; pattern?: string; options?: string[]; } interface Question { id?: string; question: string; type?: 'text' | 'number' | 'boolean' | 'select' | 'multiSelect'; validation?: QuestionValidation; answer?: unknown; options?: string[]; } export declare const ANSWERQUESTION_TOOL_NAME = "answerQuestion"; export declare const ANSWERQUESTION_TOOL_DESCRIPTION = "Process user answers and return remaining questions or completion status. For open stage, use \"open\" as the answer key."; export declare const ANSWERQUESTION_TOOL_INPUT_SCHEMA: { solutionId: z.ZodString; stage: z.ZodEnum<{ required: "required"; open: "open"; basic: "basic"; advanced: "advanced"; }>; answers: z.ZodRecord<z.ZodString, z.ZodAny>; interaction_id: z.ZodOptional<z.ZodString>; }; /** * Validate answer against question schema */ export declare function validateAnswer(answer: unknown, question: Question): string | null; /** * Direct MCP tool handler for answerQuestion functionality */ export declare function handleAnswerQuestionTool(args: { solutionId: string; stage: 'required' | 'basic' | 'advanced' | 'open'; answers: Record<string, unknown>; interaction_id?: string; }, dotAI: DotAI, logger: Logger, requestId: string): Promise<{ content: { type: 'text'; text: string; }[]; }>; export {}; //# sourceMappingURL=answer-question.d.ts.map