import type { MultiModalContent } from '@lasercat/homogenaize'; import { z } from 'zod'; import type { JSONValue } from './types'; /** * Zod schema for JSON-serializable values. */ export declare const jsonValueSchema: z.ZodType; /** * Zod schema for multi-modal content parts (text or image). */ export declare const multiModalContentSchema: z.ZodPipe; text: z.ZodString; }, z.core.$strip>, z.ZodObject<{ type: z.ZodLiteral<"image">; url: z.ZodString; mimeType: z.ZodOptional; text: z.ZodOptional; }, z.core.$strip>], "type">, z.ZodTransform>; /** * Zod schema for valid message roles. */ export declare const messageRoleSchema: z.ZodEnum<{ user: "user"; assistant: "assistant"; system: "system"; developer: "developer"; "tool-use": "tool-use"; "tool-result": "tool-result"; snapshot: "snapshot"; }>; /** * Zod schema for tool call metadata. */ export declare const toolCallSchema: z.ZodObject<{ id: z.ZodString; name: z.ZodString; arguments: z.ZodType>; }, z.core.$strict>; /** * Zod schema for tool result metadata. */ export declare const toolResultSchema: z.ZodObject<{ callId: z.ZodString; outcome: z.ZodEnum<{ success: "success"; error: "error"; }>; content: z.ZodType>; }, z.core.$strict>; /** * Zod schema for token usage accounting. */ export declare const tokenUsageSchema: z.ZodObject<{ prompt: z.ZodNumber; completion: z.ZodNumber; total: z.ZodNumber; }, z.core.$strip>; /** * Zod schema for message input payloads. */ export declare const messageInputSchema: z.ZodObject<{ role: z.ZodEnum<{ user: "user"; assistant: "assistant"; system: "system"; developer: "developer"; "tool-use": "tool-use"; "tool-result": "tool-result"; snapshot: "snapshot"; }>; content: z.ZodUnion; text: z.ZodString; }, z.core.$strip>, z.ZodObject<{ type: z.ZodLiteral<"image">; url: z.ZodString; mimeType: z.ZodOptional; text: z.ZodOptional; }, z.core.$strip>], "type">, z.ZodTransform>>]>; metadata: z.ZodOptional>>>; hidden: z.ZodOptional; toolCall: z.ZodOptional>; }, z.core.$strict>>; toolResult: z.ZodOptional; content: z.ZodType>; }, z.core.$strict>>; tokenUsage: z.ZodOptional>; goalCompleted: z.ZodOptional; }, z.core.$strict>; /** * Zod schema for messages. */ export declare const messageSchema: z.ZodObject<{ id: z.ZodString; role: z.ZodEnum<{ user: "user"; assistant: "assistant"; system: "system"; developer: "developer"; "tool-use": "tool-use"; "tool-result": "tool-result"; snapshot: "snapshot"; }>; content: z.ZodUnion; text: z.ZodString; }, z.core.$strip>, z.ZodObject<{ type: z.ZodLiteral<"image">; url: z.ZodString; mimeType: z.ZodOptional; text: z.ZodOptional; }, z.core.$strip>], "type">, z.ZodTransform>>]>; position: z.ZodNumber; createdAt: z.ZodString; metadata: z.ZodRecord>>; hidden: z.ZodBoolean; toolCall: z.ZodOptional>; }, z.core.$strict>>; toolResult: z.ZodOptional; content: z.ZodType>; }, z.core.$strict>>; tokenUsage: z.ZodOptional>; goalCompleted: z.ZodOptional; }, z.core.$strict>; /** * Zod schema for conversation status values. */ export declare const conversationStatusSchema: z.ZodEnum<{ active: "active"; archived: "archived"; deleted: "deleted"; }>; /** * Raw conversation shape for storage systems that need direct access to fields. */ export declare const conversationShape: { readonly schemaVersion: z.ZodNumber; readonly id: z.ZodString; readonly title: z.ZodOptional; readonly status: z.ZodEnum<{ active: "active"; archived: "archived"; deleted: "deleted"; }>; readonly metadata: z.ZodRecord>>; readonly ids: z.ZodArray; readonly messages: z.ZodRecord; content: z.ZodUnion; text: z.ZodString; }, z.core.$strip>, z.ZodObject<{ type: z.ZodLiteral<"image">; url: z.ZodString; mimeType: z.ZodOptional; text: z.ZodOptional; }, z.core.$strip>], "type">, z.ZodTransform>>]>; position: z.ZodNumber; createdAt: z.ZodString; metadata: z.ZodRecord>>; hidden: z.ZodBoolean; toolCall: z.ZodOptional>; }, z.core.$strict>>; toolResult: z.ZodOptional; content: z.ZodType>; }, z.core.$strict>>; tokenUsage: z.ZodOptional>; goalCompleted: z.ZodOptional; }, z.core.$strict>>; readonly createdAt: z.ZodString; readonly updatedAt: z.ZodString; }; /** * Zod schema for serialized conversations. */ export declare const conversationSchema: z.ZodObject<{ schemaVersion: z.ZodNumber; id: z.ZodString; title: z.ZodOptional; status: z.ZodEnum<{ active: "active"; archived: "archived"; deleted: "deleted"; }>; metadata: z.ZodRecord>>; ids: z.ZodArray; messages: z.ZodRecord; content: z.ZodUnion; text: z.ZodString; }, z.core.$strip>, z.ZodObject<{ type: z.ZodLiteral<"image">; url: z.ZodString; mimeType: z.ZodOptional; text: z.ZodOptional; }, z.core.$strip>], "type">, z.ZodTransform>>]>; position: z.ZodNumber; createdAt: z.ZodString; metadata: z.ZodRecord>>; hidden: z.ZodBoolean; toolCall: z.ZodOptional>; }, z.core.$strict>>; toolResult: z.ZodOptional; content: z.ZodType>; }, z.core.$strict>>; tokenUsage: z.ZodOptional>; goalCompleted: z.ZodOptional; }, z.core.$strict>>; createdAt: z.ZodString; updatedAt: z.ZodString; }, z.core.$strict>; //# sourceMappingURL=schemas.d.ts.map