import z from "zod";
export declare const vercelAIChatPartTextSchema: z.ZodObject<{
    type: z.ZodLiteral<"text">;
    text: z.ZodString;
}, "strip", z.ZodTypeAny, {
    text: string;
    type: "text";
}, {
    text: string;
    type: "text";
}>;
export type VercelAIChatPartText = z.infer<typeof vercelAIChatPartTextSchema>;
export declare const vercelAIChatPartImageSchema: z.ZodObject<{
    type: z.ZodLiteral<"image">;
    image: z.ZodString;
    mimeType: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    type: "image";
    image: string;
    mimeType?: string | undefined;
}, {
    type: "image";
    image: string;
    mimeType?: string | undefined;
}>;
export type VercelAIChatPartImage = z.infer<typeof vercelAIChatPartImageSchema>;
export declare const vercelAIChatPartToolCallSchema: z.ZodObject<{
    type: z.ZodLiteral<"tool-call">;
    toolCallId: z.ZodString;
    toolName: z.ZodString;
    args: z.ZodType<import("../../jsonLiteralSchema").JSONLiteral, z.ZodTypeDef, import("../../jsonLiteralSchema").JSONLiteral>;
}, "strip", z.ZodTypeAny, {
    type: "tool-call";
    toolName: string;
    toolCallId: string;
    args: import("../../jsonLiteralSchema").JSONLiteral;
}, {
    type: "tool-call";
    toolName: string;
    toolCallId: string;
    args: import("../../jsonLiteralSchema").JSONLiteral;
}>;
export type VercelAIChatPartToolCall = z.infer<typeof vercelAIChatPartToolCallSchema>;
export declare const vercelAIChatPartToolResultSchema: z.ZodObject<{
    type: z.ZodLiteral<"tool-result">;
    toolCallId: z.ZodString;
    toolName: z.ZodString;
    result: z.ZodType<import("../../jsonLiteralSchema").JSONLiteral, z.ZodTypeDef, import("../../jsonLiteralSchema").JSONLiteral>;
}, "strip", z.ZodTypeAny, {
    type: "tool-result";
    toolName: string;
    toolCallId: string;
    result: import("../../jsonLiteralSchema").JSONLiteral;
}, {
    type: "tool-result";
    toolName: string;
    toolCallId: string;
    result: import("../../jsonLiteralSchema").JSONLiteral;
}>;
export type VercelAIChatPartToolResult = z.infer<typeof vercelAIChatPartToolResultSchema>;
export declare const vercelAIChatPartSchema: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
    type: z.ZodLiteral<"text">;
    text: z.ZodString;
}, "strip", z.ZodTypeAny, {
    text: string;
    type: "text";
}, {
    text: string;
    type: "text";
}>, z.ZodObject<{
    type: z.ZodLiteral<"image">;
    image: z.ZodString;
    mimeType: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    type: "image";
    image: string;
    mimeType?: string | undefined;
}, {
    type: "image";
    image: string;
    mimeType?: string | undefined;
}>, z.ZodObject<{
    type: z.ZodLiteral<"tool-call">;
    toolCallId: z.ZodString;
    toolName: z.ZodString;
    args: z.ZodType<import("../../jsonLiteralSchema").JSONLiteral, z.ZodTypeDef, import("../../jsonLiteralSchema").JSONLiteral>;
}, "strip", z.ZodTypeAny, {
    type: "tool-call";
    toolName: string;
    toolCallId: string;
    args: import("../../jsonLiteralSchema").JSONLiteral;
}, {
    type: "tool-call";
    toolName: string;
    toolCallId: string;
    args: import("../../jsonLiteralSchema").JSONLiteral;
}>, z.ZodObject<{
    type: z.ZodLiteral<"tool-result">;
    toolCallId: z.ZodString;
    toolName: z.ZodString;
    result: z.ZodType<import("../../jsonLiteralSchema").JSONLiteral, z.ZodTypeDef, import("../../jsonLiteralSchema").JSONLiteral>;
}, "strip", z.ZodTypeAny, {
    type: "tool-result";
    toolName: string;
    toolCallId: string;
    result: import("../../jsonLiteralSchema").JSONLiteral;
}, {
    type: "tool-result";
    toolName: string;
    toolCallId: string;
    result: import("../../jsonLiteralSchema").JSONLiteral;
}>]>;
export type VercelAIChatPart = z.infer<typeof vercelAIChatPartSchema>;
//# sourceMappingURL=messagePartSchemas.d.ts.map