import { z } from "zod";
export declare const ConvoFormItemTypeScheme: z.ZodEnum<["question", "multi-choice-question"]>;
export type ConvoFormItemType = z.infer<typeof ConvoFormItemTypeScheme>;
export declare const ConvoFormItemScheme: z.ZodObject<{
    id: z.ZodString;
    type: z.ZodEnum<["question", "multi-choice-question"]>;
    question: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    type: "question" | "multi-choice-question";
    id: string;
    question?: string | undefined;
}, {
    type: "question" | "multi-choice-question";
    id: string;
    question?: string | undefined;
}>;
export type ConvoFormItem = z.infer<typeof ConvoFormItemScheme>;
export declare const ConvoFormScheme: z.ZodObject<{
    id: z.ZodString;
    name: z.ZodString;
    disabled: z.ZodOptional<z.ZodBoolean>;
    description: z.ZodString;
    items: z.ZodArray<z.ZodObject<{
        id: z.ZodString;
        type: z.ZodEnum<["question", "multi-choice-question"]>;
        question: z.ZodOptional<z.ZodString>;
    }, "strip", z.ZodTypeAny, {
        type: "question" | "multi-choice-question";
        id: string;
        question?: string | undefined;
    }, {
        type: "question" | "multi-choice-question";
        id: string;
        question?: string | undefined;
    }>, "many">;
}, "strip", z.ZodTypeAny, {
    name: string;
    id: string;
    description: string;
    items: {
        type: "question" | "multi-choice-question";
        id: string;
        question?: string | undefined;
    }[];
    disabled?: boolean | undefined;
}, {
    name: string;
    id: string;
    description: string;
    items: {
        type: "question" | "multi-choice-question";
        id: string;
        question?: string | undefined;
    }[];
    disabled?: boolean | undefined;
}>;
export type ConvoForm = z.infer<typeof ConvoFormScheme>;
export declare const ConvoFormItemResponseScheme: z.ZodObject<{
    itemId: z.ZodString;
    textResponse: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    itemId: string;
    textResponse?: string | undefined;
}, {
    itemId: string;
    textResponse?: string | undefined;
}>;
export type ConvoFormItemResponse = z.infer<typeof ConvoFormItemResponseScheme>;
export declare const ConvoFormSubmissionResponseScheme: z.ZodObject<{
    formId: z.ZodString;
    responses: z.ZodArray<z.ZodObject<{
        itemId: z.ZodString;
        textResponse: z.ZodOptional<z.ZodString>;
    }, "strip", z.ZodTypeAny, {
        itemId: string;
        textResponse?: string | undefined;
    }, {
        itemId: string;
        textResponse?: string | undefined;
    }>, "many">;
}, "strip", z.ZodTypeAny, {
    formId: string;
    responses: {
        itemId: string;
        textResponse?: string | undefined;
    }[];
}, {
    formId: string;
    responses: {
        itemId: string;
        textResponse?: string | undefined;
    }[];
}>;
export type ConvoFormSubmissionResponse = z.infer<typeof ConvoFormSubmissionResponseScheme>;
