import { ToolKind, ToolCallContent } from '@agentclientprotocol/sdk';
import { z } from 'zod';
import { PermissionOption } from '../permissions/permission-options.js';
import '@anthropic-ai/claude-agent-sdk';

declare const OPTION_PREFIX = "option_";
declare const QuestionOptionSchema: z.ZodObject<{
    label: z.ZodString;
    description: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
declare const QuestionItemSchema: z.ZodObject<{
    question: z.ZodString;
    header: z.ZodOptional<z.ZodString>;
    options: z.ZodArray<z.ZodObject<{
        label: z.ZodString;
        description: z.ZodOptional<z.ZodString>;
    }, z.core.$strip>>;
    multiSelect: z.ZodOptional<z.ZodBoolean>;
    completed: z.ZodOptional<z.ZodBoolean>;
}, z.core.$strip>;
declare const QuestionMetaSchema: z.ZodObject<{
    questions: z.ZodArray<z.ZodObject<{
        question: z.ZodString;
        header: z.ZodOptional<z.ZodString>;
        options: z.ZodArray<z.ZodObject<{
            label: z.ZodString;
            description: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>>;
        multiSelect: z.ZodOptional<z.ZodBoolean>;
        completed: z.ZodOptional<z.ZodBoolean>;
    }, z.core.$strip>>;
}, z.core.$strip>;
type QuestionOption = z.infer<typeof QuestionOptionSchema>;
type QuestionItem = z.infer<typeof QuestionItemSchema>;
type QuestionMeta = z.infer<typeof QuestionMetaSchema>;
interface AskUserQuestionInput {
    questions?: QuestionItem[];
    question?: string;
    header?: string;
    options?: QuestionOption[];
    multiSelect?: boolean;
}
declare function normalizeAskUserQuestionInput(input: AskUserQuestionInput): QuestionItem[] | null;
interface QuestionToolCallData {
    toolCallId: string;
    title: string;
    kind: ToolKind;
    content: ToolCallContent[];
    _meta: {
        codeToolKind: "question";
        questions: QuestionItem[];
    };
}
declare function buildQuestionToolCallData(questions: QuestionItem[]): QuestionToolCallData;
declare function buildQuestionOptions(question: QuestionItem): PermissionOption[];

export { type AskUserQuestionInput, OPTION_PREFIX, type QuestionItem, QuestionItemSchema, type QuestionMeta, QuestionMetaSchema, type QuestionOption, QuestionOptionSchema, buildQuestionOptions, buildQuestionToolCallData, normalizeAskUserQuestionInput };
