import { z } from "zod"; import type { FunctionDefinition, RegisteredFunction } from "../types/function.js"; export declare const FunctionUserInputOptionSchema: z.ZodObject<{ value: z.ZodString; label: z.ZodString; exclusive: z.ZodOptional; }, "strip", z.ZodTypeAny, { value: string; label: string; exclusive?: boolean | undefined; }, { value: string; label: string; exclusive?: boolean | undefined; }>; export declare const FunctionUserInputQuestionSchema: z.ZodDiscriminatedUnion<"inputType", [z.ZodObject<{ inputType: z.ZodLiteral<"singleSelect">; options: z.ZodArray; }, "strip", z.ZodTypeAny, { value: string; label: string; exclusive?: boolean | undefined; }, { value: string; label: string; exclusive?: boolean | undefined; }>, "many">; key: z.ZodString; label: z.ZodString; prompt: z.ZodString; required: z.ZodBoolean; }, "strip", z.ZodTypeAny, { options: { value: string; label: string; exclusive?: boolean | undefined; }[]; required: boolean; label: string; inputType: "singleSelect"; key: string; prompt: string; }, { options: { value: string; label: string; exclusive?: boolean | undefined; }[]; required: boolean; label: string; inputType: "singleSelect"; key: string; prompt: string; }>, z.ZodObject<{ inputType: z.ZodLiteral<"multiSelect">; minSelections: z.ZodOptional; maxSelections: z.ZodOptional; options: z.ZodArray; }, "strip", z.ZodTypeAny, { value: string; label: string; exclusive?: boolean | undefined; }, { value: string; label: string; exclusive?: boolean | undefined; }>, "many">; key: z.ZodString; label: z.ZodString; prompt: z.ZodString; required: z.ZodBoolean; }, "strip", z.ZodTypeAny, { options: { value: string; label: string; exclusive?: boolean | undefined; }[]; required: boolean; label: string; inputType: "multiSelect"; key: string; prompt: string; minSelections?: number | undefined; maxSelections?: number | undefined; }, { options: { value: string; label: string; exclusive?: boolean | undefined; }[]; required: boolean; label: string; inputType: "multiSelect"; key: string; prompt: string; minSelections?: number | undefined; maxSelections?: number | undefined; }>, z.ZodObject<{ inputType: z.ZodLiteral<"text">; placeholder: z.ZodOptional; minLength: z.ZodOptional; maxLength: z.ZodOptional; key: z.ZodString; label: z.ZodString; prompt: z.ZodString; required: z.ZodBoolean; }, "strip", z.ZodTypeAny, { required: boolean; label: string; inputType: "text"; key: string; prompt: string; minLength?: number | undefined; maxLength?: number | undefined; placeholder?: string | undefined; }, { required: boolean; label: string; inputType: "text"; key: string; prompt: string; minLength?: number | undefined; maxLength?: number | undefined; placeholder?: string | undefined; }>, z.ZodObject<{ inputType: z.ZodLiteral<"date">; min: z.ZodOptional; max: z.ZodOptional; key: z.ZodString; label: z.ZodString; prompt: z.ZodString; required: z.ZodBoolean; }, "strip", z.ZodTypeAny, { required: boolean; label: string; inputType: "date"; key: string; prompt: string; min?: string | undefined; max?: string | undefined; }, { required: boolean; label: string; inputType: "date"; key: string; prompt: string; min?: string | undefined; max?: string | undefined; }>, z.ZodObject<{ inputType: z.ZodLiteral<"number">; min: z.ZodOptional; max: z.ZodOptional; step: z.ZodOptional; placeholder: z.ZodOptional; key: z.ZodString; label: z.ZodString; prompt: z.ZodString; required: z.ZodBoolean; }, "strip", z.ZodTypeAny, { required: boolean; label: string; inputType: "number"; key: string; prompt: string; placeholder?: string | undefined; min?: number | undefined; max?: number | undefined; step?: number | undefined; }, { required: boolean; label: string; inputType: "number"; key: string; prompt: string; placeholder?: string | undefined; min?: number | undefined; max?: number | undefined; step?: number | undefined; }>]>; export declare const FunctionUserInputAnswerSchema: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodArray]>; export declare const FunctionUserInputAnswersSchema: z.ZodRecord]>>; export declare const NeedsUserInputResultSchema: z.ZodEffects; requestId: z.ZodString; questions: z.ZodArray; options: z.ZodArray; }, "strip", z.ZodTypeAny, { value: string; label: string; exclusive?: boolean | undefined; }, { value: string; label: string; exclusive?: boolean | undefined; }>, "many">; key: z.ZodString; label: z.ZodString; prompt: z.ZodString; required: z.ZodBoolean; }, "strip", z.ZodTypeAny, { options: { value: string; label: string; exclusive?: boolean | undefined; }[]; required: boolean; label: string; inputType: "singleSelect"; key: string; prompt: string; }, { options: { value: string; label: string; exclusive?: boolean | undefined; }[]; required: boolean; label: string; inputType: "singleSelect"; key: string; prompt: string; }>, z.ZodObject<{ inputType: z.ZodLiteral<"multiSelect">; minSelections: z.ZodOptional; maxSelections: z.ZodOptional; options: z.ZodArray; }, "strip", z.ZodTypeAny, { value: string; label: string; exclusive?: boolean | undefined; }, { value: string; label: string; exclusive?: boolean | undefined; }>, "many">; key: z.ZodString; label: z.ZodString; prompt: z.ZodString; required: z.ZodBoolean; }, "strip", z.ZodTypeAny, { options: { value: string; label: string; exclusive?: boolean | undefined; }[]; required: boolean; label: string; inputType: "multiSelect"; key: string; prompt: string; minSelections?: number | undefined; maxSelections?: number | undefined; }, { options: { value: string; label: string; exclusive?: boolean | undefined; }[]; required: boolean; label: string; inputType: "multiSelect"; key: string; prompt: string; minSelections?: number | undefined; maxSelections?: number | undefined; }>, z.ZodObject<{ inputType: z.ZodLiteral<"text">; placeholder: z.ZodOptional; minLength: z.ZodOptional; maxLength: z.ZodOptional; key: z.ZodString; label: z.ZodString; prompt: z.ZodString; required: z.ZodBoolean; }, "strip", z.ZodTypeAny, { required: boolean; label: string; inputType: "text"; key: string; prompt: string; minLength?: number | undefined; maxLength?: number | undefined; placeholder?: string | undefined; }, { required: boolean; label: string; inputType: "text"; key: string; prompt: string; minLength?: number | undefined; maxLength?: number | undefined; placeholder?: string | undefined; }>, z.ZodObject<{ inputType: z.ZodLiteral<"date">; min: z.ZodOptional; max: z.ZodOptional; key: z.ZodString; label: z.ZodString; prompt: z.ZodString; required: z.ZodBoolean; }, "strip", z.ZodTypeAny, { required: boolean; label: string; inputType: "date"; key: string; prompt: string; min?: string | undefined; max?: string | undefined; }, { required: boolean; label: string; inputType: "date"; key: string; prompt: string; min?: string | undefined; max?: string | undefined; }>, z.ZodObject<{ inputType: z.ZodLiteral<"number">; min: z.ZodOptional; max: z.ZodOptional; step: z.ZodOptional; placeholder: z.ZodOptional; key: z.ZodString; label: z.ZodString; prompt: z.ZodString; required: z.ZodBoolean; }, "strip", z.ZodTypeAny, { required: boolean; label: string; inputType: "number"; key: string; prompt: string; placeholder?: string | undefined; min?: number | undefined; max?: number | undefined; step?: number | undefined; }, { required: boolean; label: string; inputType: "number"; key: string; prompt: string; placeholder?: string | undefined; min?: number | undefined; max?: number | undefined; step?: number | undefined; }>]>, "many">; continuationToken: z.ZodString; message: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "needsUserInput"; requestId: string; questions: ({ options: { value: string; label: string; exclusive?: boolean | undefined; }[]; required: boolean; label: string; inputType: "singleSelect"; key: string; prompt: string; } | { options: { value: string; label: string; exclusive?: boolean | undefined; }[]; required: boolean; label: string; inputType: "multiSelect"; key: string; prompt: string; minSelections?: number | undefined; maxSelections?: number | undefined; } | { required: boolean; label: string; inputType: "text"; key: string; prompt: string; minLength?: number | undefined; maxLength?: number | undefined; placeholder?: string | undefined; } | { required: boolean; label: string; inputType: "date"; key: string; prompt: string; min?: string | undefined; max?: string | undefined; } | { required: boolean; label: string; inputType: "number"; key: string; prompt: string; placeholder?: string | undefined; min?: number | undefined; max?: number | undefined; step?: number | undefined; })[]; continuationToken: string; message?: string | undefined; }, { type: "needsUserInput"; requestId: string; questions: ({ options: { value: string; label: string; exclusive?: boolean | undefined; }[]; required: boolean; label: string; inputType: "singleSelect"; key: string; prompt: string; } | { options: { value: string; label: string; exclusive?: boolean | undefined; }[]; required: boolean; label: string; inputType: "multiSelect"; key: string; prompt: string; minSelections?: number | undefined; maxSelections?: number | undefined; } | { required: boolean; label: string; inputType: "text"; key: string; prompt: string; minLength?: number | undefined; maxLength?: number | undefined; placeholder?: string | undefined; } | { required: boolean; label: string; inputType: "date"; key: string; prompt: string; min?: string | undefined; max?: string | undefined; } | { required: boolean; label: string; inputType: "number"; key: string; prompt: string; placeholder?: string | undefined; min?: number | undefined; max?: number | undefined; step?: number | undefined; })[]; continuationToken: string; message?: string | undefined; }>, { type: "needsUserInput"; requestId: string; questions: ({ options: { value: string; label: string; exclusive?: boolean | undefined; }[]; required: boolean; label: string; inputType: "singleSelect"; key: string; prompt: string; } | { options: { value: string; label: string; exclusive?: boolean | undefined; }[]; required: boolean; label: string; inputType: "multiSelect"; key: string; prompt: string; minSelections?: number | undefined; maxSelections?: number | undefined; } | { required: boolean; label: string; inputType: "text"; key: string; prompt: string; minLength?: number | undefined; maxLength?: number | undefined; placeholder?: string | undefined; } | { required: boolean; label: string; inputType: "date"; key: string; prompt: string; min?: string | undefined; max?: string | undefined; } | { required: boolean; label: string; inputType: "number"; key: string; prompt: string; placeholder?: string | undefined; min?: number | undefined; max?: number | undefined; step?: number | undefined; })[]; continuationToken: string; message?: string | undefined; }, { type: "needsUserInput"; requestId: string; questions: ({ options: { value: string; label: string; exclusive?: boolean | undefined; }[]; required: boolean; label: string; inputType: "singleSelect"; key: string; prompt: string; } | { options: { value: string; label: string; exclusive?: boolean | undefined; }[]; required: boolean; label: string; inputType: "multiSelect"; key: string; prompt: string; minSelections?: number | undefined; maxSelections?: number | undefined; } | { required: boolean; label: string; inputType: "text"; key: string; prompt: string; minLength?: number | undefined; maxLength?: number | undefined; placeholder?: string | undefined; } | { required: boolean; label: string; inputType: "date"; key: string; prompt: string; min?: string | undefined; max?: string | undefined; } | { required: boolean; label: string; inputType: "number"; key: string; prompt: string; placeholder?: string | undefined; min?: number | undefined; max?: number | undefined; step?: number | undefined; })[]; continuationToken: string; message?: string | undefined; }>; export type FunctionUserInputOption = z.infer; export type FunctionUserInputQuestion = z.infer; export type FunctionUserInputAnswer = z.infer; export type FunctionUserInputAnswers = z.infer; export type NeedsUserInputResult = z.infer; /** * Create a registered function from a definition * @internal */ export declare function createRegisteredFunction(name: string, definition: FunctionDefinition): RegisteredFunction; //# sourceMappingURL=function.d.ts.map