import type { Infer, Validator, Value } from "convex/values"; export declare const vProviderOptions: import("convex/values").VRecord>, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "required", string>; declare const providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; export type ProviderOptions = Infer; export declare const vProviderMetadata: import("convex/values").VRecord>, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "required", string>; declare const providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; export type ProviderMetadata = Infer; export declare const vThreadStatus: import("convex/values").VUnion<"active" | "archived", [import("convex/values").VLiteral<"active", "required">, import("convex/values").VLiteral<"archived", "required">], "required", never>; export declare const vMessageStatus: import("convex/values").VUnion<"pending" | "success" | "failed", [import("convex/values").VLiteral<"pending", "required">, import("convex/values").VLiteral<"success", "required">, import("convex/values").VLiteral<"failed", "required">], "required", never>; export type MessageStatus = Infer; export declare const vRole: import("convex/values").VUnion<"user" | "assistant" | "tool" | "system", [import("convex/values").VLiteral<"system", "required">, import("convex/values").VLiteral<"user", "required">, import("convex/values").VLiteral<"assistant", "required">, import("convex/values").VLiteral<"tool", "required">], "required", never>; export declare const vTextPart: import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}`>; export declare const vImagePart: import("convex/values").VObject<{ providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"image", "required">; image: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "image" | "mediaType" | "mimeType">; export declare const vFilePart: import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"file", "required">; data: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; filename: import("convex/values").VString; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "mimeType" | "data" | "filename">; export declare const vUserContent: import("convex/values").VUnion> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[], [import("convex/values").VString, import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"image", "required">; image: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "image" | "mediaType" | "mimeType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"file", "required">; data: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; filename: import("convex/values").VString; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "mimeType" | "data" | "filename">], "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "image" | "mediaType" | "mimeType" | "data" | "filename">, "required">], "required", never>; export declare const vReasoningPart: import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; }, { type: import("convex/values").VLiteral<"reasoning", "required">; text: import("convex/values").VString; signature: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "signature">; export declare const vRedactedReasoningPart: import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; }, { type: import("convex/values").VLiteral<"redacted-reasoning", "required">; data: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "data">; export declare const vReasoningDetails: import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { signature?: string | undefined; type: "text"; text: string; } | { type: "redacted"; data: string; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { signature?: string | undefined; type: "text"; text: string; } | { type: "redacted"; data: string; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; }, { type: import("convex/values").VLiteral<"reasoning", "required">; text: import("convex/values").VString; signature: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "signature">, import("convex/values").VObject<{ signature?: string | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; signature: import("convex/values").VString; }, "required", "type" | "text" | "signature">, import("convex/values").VObject<{ type: "redacted"; data: string; }, { type: import("convex/values").VLiteral<"redacted", "required">; data: import("convex/values").VString; }, "required", "type" | "data">], "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "data" | "signature">, "required">; export declare const vSourcePart: import("convex/values").VUnion<{ title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; }, [import("convex/values").VObject<{ title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; }, { type: import("convex/values").VLiteral<"source", "required">; sourceType: import("convex/values").VLiteral<"url", "required">; id: import("convex/values").VString; url: import("convex/values").VString; title: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "url" | "sourceType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; }, { type: import("convex/values").VLiteral<"source", "required">; sourceType: import("convex/values").VLiteral<"document", "required">; id: import("convex/values").VString; mediaType: import("convex/values").VString; title: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "filename" | "sourceType">], "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "filename" | "url" | "sourceType">; export type SourcePart = Infer; export declare const vToolCallPart: import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; }, { type: import("convex/values").VLiteral<"tool-call", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; input: import("convex/values").VAny; /** @deprecated Use `input` instead. */ args: import("convex/values").VAny; providerExecuted: import("convex/values").VBoolean; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; }, { type: import("convex/values").VLiteral<"tool-call", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; /** @deprecated Use `input` instead. */ args: import("convex/values").VAny; input: import("convex/values").VAny; providerExecuted: import("convex/values").VBoolean; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>], "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>; export declare const vToolResultOutput: import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; value: string; }, { type: import("convex/values").VLiteral<"text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "json"; value: any; }, { type: import("convex/values").VLiteral<"json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-text"; value: string; }, { type: import("convex/values").VLiteral<"error-text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-json"; value: any; }, { type: import("convex/values").VLiteral<"error-json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; }, { type: import("convex/values").VLiteral<"execution-denied", "required">; reason: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "reason">, import("convex/values").VObject<{ type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; }, { type: import("convex/values").VLiteral<"content", "required">; value: import("convex/values").VArray<({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | `providerOptions.${string}`>, import("convex/values").VObject<{ type: "media"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"media", "required">; data: import("convex/values").VString; mediaType: import("convex/values").VString; }, "required", "type" | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"file-data", "required">; /** Base-64 encoded */ data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-url"; url: string; }, { type: import("convex/values").VLiteral<"file-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; }, { type: import("convex/values").VLiteral<"file-id", "required">; /** * ID of the file. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"image-data", "required">; data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-url"; url: string; }, { type: import("convex/values").VLiteral<"image-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; }, { /** * Images that are referenced using a provider file id. */ type: import("convex/values").VLiteral<"image-file-id", "required">; /** * Image that is referenced using a provider file id. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "custom"; }, { /** * Custom content part. This can be used to implement * provider-specific content parts. */ type: import("convex/values").VLiteral<"custom", "required">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}`>], "required", "type" | "providerOptions" | "text" | `providerOptions.${string}` | "mediaType" | "data" | "filename" | "url" | "fileId" | `fileId.${string}`>, "required">; }, "required", "type" | "value">], "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}` | "reason">; /** * Tool approval request prompt part. */ export declare const vToolApprovalRequest: import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; }, { type: import("convex/values").VLiteral<"tool-approval-request", "required">; /** * ID of the tool approval. */ approvalId: import("convex/values").VString; /** * ID of the tool call that the approval request is for. */ toolCallId: import("convex/values").VString; /** @todo Should we continue to include? */ providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; /** @todo Should we continue to include? */ providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "approvalId">; /** * Tool approval response prompt part. */ export declare const vToolApprovalResponse: import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; }, { type: import("convex/values").VLiteral<"tool-approval-response", "required">; /** * ID of the tool approval. */ approvalId: import("convex/values").VString; /** * Flag indicating whether the approval was granted or denied. */ approved: import("convex/values").VBoolean; /** * Optional reason for the approval or denial. */ reason: import("convex/values").VString; /** * Flag indicating whether the tool call is provider-executed. * Only provider-executed tool approval responses should be sent to the model. */ providerExecuted: import("convex/values").VBoolean; /** @todo Should we continue to include? */ providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; /** @todo Should we continue to include? */ providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "providerExecuted" | "reason" | "approvalId" | "approved">; export declare const vToolResultPart: import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; }, { type: import("convex/values").VLiteral<"tool-result", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; output: import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; value: string; }, { type: import("convex/values").VLiteral<"text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "json"; value: any; }, { type: import("convex/values").VLiteral<"json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-text"; value: string; }, { type: import("convex/values").VLiteral<"error-text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-json"; value: any; }, { type: import("convex/values").VLiteral<"error-json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; }, { type: import("convex/values").VLiteral<"execution-denied", "required">; reason: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "reason">, import("convex/values").VObject<{ type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; }, { type: import("convex/values").VLiteral<"content", "required">; value: import("convex/values").VArray<({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | `providerOptions.${string}`>, import("convex/values").VObject<{ type: "media"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"media", "required">; data: import("convex/values").VString; mediaType: import("convex/values").VString; }, "required", "type" | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"file-data", "required">; /** Base-64 encoded */ data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-url"; url: string; }, { type: import("convex/values").VLiteral<"file-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; }, { type: import("convex/values").VLiteral<"file-id", "required">; /** * ID of the file. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"image-data", "required">; data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-url"; url: string; }, { type: import("convex/values").VLiteral<"image-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; }, { /** * Images that are referenced using a provider file id. */ type: import("convex/values").VLiteral<"image-file-id", "required">; /** * Image that is referenced using a provider file id. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "custom"; }, { /** * Custom content part. This can be used to implement * provider-specific content parts. */ type: import("convex/values").VLiteral<"custom", "required">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}`>], "required", "type" | "providerOptions" | "text" | `providerOptions.${string}` | "mediaType" | "data" | "filename" | "url" | "fileId" | `fileId.${string}`>, "required">; }, "required", "type" | "value">], "optional", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}` | "reason">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerExecuted: import("convex/values").VBoolean; result: import("convex/values").VAny; isError: import("convex/values").VBoolean; args: import("convex/values").VAny; experimental_content: import("convex/values").VArray<({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined, import("convex/values").VUnion<{ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; }, [import("convex/values").VObject<{ type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; }, "required", "type" | "text">, import("convex/values").VObject<{ mimeType?: string | undefined; type: "image"; data: string; }, { type: import("convex/values").VLiteral<"image", "required">; data: import("convex/values").VString; mimeType: import("convex/values").VString; }, "required", "type" | "mimeType" | "data">], "required", "type" | "text" | "mimeType" | "data">, "optional">; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "args" | "providerExecuted" | `args.${string}` | "output" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}`>; export declare const vToolContent: import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; }, { type: import("convex/values").VLiteral<"tool-result", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; output: import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; value: string; }, { type: import("convex/values").VLiteral<"text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "json"; value: any; }, { type: import("convex/values").VLiteral<"json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-text"; value: string; }, { type: import("convex/values").VLiteral<"error-text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-json"; value: any; }, { type: import("convex/values").VLiteral<"error-json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; }, { type: import("convex/values").VLiteral<"execution-denied", "required">; reason: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "reason">, import("convex/values").VObject<{ type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; }, { type: import("convex/values").VLiteral<"content", "required">; value: import("convex/values").VArray<({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | `providerOptions.${string}`>, import("convex/values").VObject<{ type: "media"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"media", "required">; data: import("convex/values").VString; mediaType: import("convex/values").VString; }, "required", "type" | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"file-data", "required">; /** Base-64 encoded */ data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-url"; url: string; }, { type: import("convex/values").VLiteral<"file-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; }, { type: import("convex/values").VLiteral<"file-id", "required">; /** * ID of the file. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"image-data", "required">; data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-url"; url: string; }, { type: import("convex/values").VLiteral<"image-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; }, { /** * Images that are referenced using a provider file id. */ type: import("convex/values").VLiteral<"image-file-id", "required">; /** * Image that is referenced using a provider file id. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "custom"; }, { /** * Custom content part. This can be used to implement * provider-specific content parts. */ type: import("convex/values").VLiteral<"custom", "required">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}`>], "required", "type" | "providerOptions" | "text" | `providerOptions.${string}` | "mediaType" | "data" | "filename" | "url" | "fileId" | `fileId.${string}`>, "required">; }, "required", "type" | "value">], "optional", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}` | "reason">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerExecuted: import("convex/values").VBoolean; result: import("convex/values").VAny; isError: import("convex/values").VBoolean; args: import("convex/values").VAny; experimental_content: import("convex/values").VArray<({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined, import("convex/values").VUnion<{ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; }, [import("convex/values").VObject<{ type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; }, "required", "type" | "text">, import("convex/values").VObject<{ mimeType?: string | undefined; type: "image"; data: string; }, { type: import("convex/values").VLiteral<"image", "required">; data: import("convex/values").VString; mimeType: import("convex/values").VString; }, "required", "type" | "mimeType" | "data">], "required", "type" | "text" | "mimeType" | "data">, "optional">; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "args" | "providerExecuted" | `args.${string}` | "output" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; }, { type: import("convex/values").VLiteral<"tool-approval-response", "required">; /** * ID of the tool approval. */ approvalId: import("convex/values").VString; /** * Flag indicating whether the approval was granted or denied. */ approved: import("convex/values").VBoolean; /** * Optional reason for the approval or denial. */ reason: import("convex/values").VString; /** * Flag indicating whether the tool call is provider-executed. * Only provider-executed tool approval responses should be sent to the model. */ providerExecuted: import("convex/values").VBoolean; /** @todo Should we continue to include? */ providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; /** @todo Should we continue to include? */ providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "providerExecuted" | "reason" | "approvalId" | "approved">], "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "args" | "providerExecuted" | `args.${string}` | "output" | "reason" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}` | "approvalId" | "approved">, "required">; export declare const vAssistantContent: import("convex/values").VUnion> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[], [import("convex/values").VString, import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"file", "required">; data: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; filename: import("convex/values").VString; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "mimeType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; }, { type: import("convex/values").VLiteral<"reasoning", "required">; text: import("convex/values").VString; signature: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "signature">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; }, { type: import("convex/values").VLiteral<"redacted-reasoning", "required">; data: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "data">, import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; }, { type: import("convex/values").VLiteral<"tool-call", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; input: import("convex/values").VAny; /** @deprecated Use `input` instead. */ args: import("convex/values").VAny; providerExecuted: import("convex/values").VBoolean; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; }, { type: import("convex/values").VLiteral<"tool-call", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; /** @deprecated Use `input` instead. */ args: import("convex/values").VAny; input: import("convex/values").VAny; providerExecuted: import("convex/values").VBoolean; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>], "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; }, { type: import("convex/values").VLiteral<"tool-result", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; output: import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; value: string; }, { type: import("convex/values").VLiteral<"text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "json"; value: any; }, { type: import("convex/values").VLiteral<"json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-text"; value: string; }, { type: import("convex/values").VLiteral<"error-text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-json"; value: any; }, { type: import("convex/values").VLiteral<"error-json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; }, { type: import("convex/values").VLiteral<"execution-denied", "required">; reason: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "reason">, import("convex/values").VObject<{ type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; }, { type: import("convex/values").VLiteral<"content", "required">; value: import("convex/values").VArray<({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | `providerOptions.${string}`>, import("convex/values").VObject<{ type: "media"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"media", "required">; data: import("convex/values").VString; mediaType: import("convex/values").VString; }, "required", "type" | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"file-data", "required">; /** Base-64 encoded */ data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-url"; url: string; }, { type: import("convex/values").VLiteral<"file-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; }, { type: import("convex/values").VLiteral<"file-id", "required">; /** * ID of the file. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"image-data", "required">; data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-url"; url: string; }, { type: import("convex/values").VLiteral<"image-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; }, { /** * Images that are referenced using a provider file id. */ type: import("convex/values").VLiteral<"image-file-id", "required">; /** * Image that is referenced using a provider file id. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "custom"; }, { /** * Custom content part. This can be used to implement * provider-specific content parts. */ type: import("convex/values").VLiteral<"custom", "required">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}`>], "required", "type" | "providerOptions" | "text" | `providerOptions.${string}` | "mediaType" | "data" | "filename" | "url" | "fileId" | `fileId.${string}`>, "required">; }, "required", "type" | "value">], "optional", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}` | "reason">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerExecuted: import("convex/values").VBoolean; result: import("convex/values").VAny; isError: import("convex/values").VBoolean; args: import("convex/values").VAny; experimental_content: import("convex/values").VArray<({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined, import("convex/values").VUnion<{ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; }, [import("convex/values").VObject<{ type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; }, "required", "type" | "text">, import("convex/values").VObject<{ mimeType?: string | undefined; type: "image"; data: string; }, { type: import("convex/values").VLiteral<"image", "required">; data: import("convex/values").VString; mimeType: import("convex/values").VString; }, "required", "type" | "mimeType" | "data">], "required", "type" | "text" | "mimeType" | "data">, "optional">; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "args" | "providerExecuted" | `args.${string}` | "output" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}`>, import("convex/values").VUnion<{ title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; }, [import("convex/values").VObject<{ title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; }, { type: import("convex/values").VLiteral<"source", "required">; sourceType: import("convex/values").VLiteral<"url", "required">; id: import("convex/values").VString; url: import("convex/values").VString; title: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "url" | "sourceType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; }, { type: import("convex/values").VLiteral<"source", "required">; sourceType: import("convex/values").VLiteral<"document", "required">; id: import("convex/values").VString; mediaType: import("convex/values").VString; title: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "filename" | "sourceType">], "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "filename" | "url" | "sourceType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; }, { type: import("convex/values").VLiteral<"tool-approval-request", "required">; /** * ID of the tool approval. */ approvalId: import("convex/values").VString; /** * ID of the tool call that the approval request is for. */ toolCallId: import("convex/values").VString; /** @todo Should we continue to include? */ providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; /** @todo Should we continue to include? */ providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "approvalId">], "required", "id" | "title" | "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "mimeType" | "data" | "filename" | "signature" | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}` | "output" | "url" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}` | "sourceType" | "approvalId">, "required">], "required", never>; export declare const vContent: import("convex/values").VUnion> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[] | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[] | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[], [import("convex/values").VUnion> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[], [import("convex/values").VString, import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"image", "required">; image: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "image" | "mediaType" | "mimeType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"file", "required">; data: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; filename: import("convex/values").VString; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "mimeType" | "data" | "filename">], "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "image" | "mediaType" | "mimeType" | "data" | "filename">, "required">], "required", never>, import("convex/values").VUnion> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[], [import("convex/values").VString, import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"file", "required">; data: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; filename: import("convex/values").VString; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "mimeType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; }, { type: import("convex/values").VLiteral<"reasoning", "required">; text: import("convex/values").VString; signature: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "signature">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; }, { type: import("convex/values").VLiteral<"redacted-reasoning", "required">; data: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "data">, import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; }, { type: import("convex/values").VLiteral<"tool-call", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; input: import("convex/values").VAny; /** @deprecated Use `input` instead. */ args: import("convex/values").VAny; providerExecuted: import("convex/values").VBoolean; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; }, { type: import("convex/values").VLiteral<"tool-call", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; /** @deprecated Use `input` instead. */ args: import("convex/values").VAny; input: import("convex/values").VAny; providerExecuted: import("convex/values").VBoolean; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>], "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; }, { type: import("convex/values").VLiteral<"tool-result", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; output: import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; value: string; }, { type: import("convex/values").VLiteral<"text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "json"; value: any; }, { type: import("convex/values").VLiteral<"json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-text"; value: string; }, { type: import("convex/values").VLiteral<"error-text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-json"; value: any; }, { type: import("convex/values").VLiteral<"error-json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; }, { type: import("convex/values").VLiteral<"execution-denied", "required">; reason: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "reason">, import("convex/values").VObject<{ type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; }, { type: import("convex/values").VLiteral<"content", "required">; value: import("convex/values").VArray<({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | `providerOptions.${string}`>, import("convex/values").VObject<{ type: "media"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"media", "required">; data: import("convex/values").VString; mediaType: import("convex/values").VString; }, "required", "type" | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"file-data", "required">; /** Base-64 encoded */ data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-url"; url: string; }, { type: import("convex/values").VLiteral<"file-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; }, { type: import("convex/values").VLiteral<"file-id", "required">; /** * ID of the file. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"image-data", "required">; data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-url"; url: string; }, { type: import("convex/values").VLiteral<"image-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; }, { /** * Images that are referenced using a provider file id. */ type: import("convex/values").VLiteral<"image-file-id", "required">; /** * Image that is referenced using a provider file id. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "custom"; }, { /** * Custom content part. This can be used to implement * provider-specific content parts. */ type: import("convex/values").VLiteral<"custom", "required">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}`>], "required", "type" | "providerOptions" | "text" | `providerOptions.${string}` | "mediaType" | "data" | "filename" | "url" | "fileId" | `fileId.${string}`>, "required">; }, "required", "type" | "value">], "optional", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}` | "reason">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerExecuted: import("convex/values").VBoolean; result: import("convex/values").VAny; isError: import("convex/values").VBoolean; args: import("convex/values").VAny; experimental_content: import("convex/values").VArray<({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined, import("convex/values").VUnion<{ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; }, [import("convex/values").VObject<{ type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; }, "required", "type" | "text">, import("convex/values").VObject<{ mimeType?: string | undefined; type: "image"; data: string; }, { type: import("convex/values").VLiteral<"image", "required">; data: import("convex/values").VString; mimeType: import("convex/values").VString; }, "required", "type" | "mimeType" | "data">], "required", "type" | "text" | "mimeType" | "data">, "optional">; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "args" | "providerExecuted" | `args.${string}` | "output" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}`>, import("convex/values").VUnion<{ title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; }, [import("convex/values").VObject<{ title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; }, { type: import("convex/values").VLiteral<"source", "required">; sourceType: import("convex/values").VLiteral<"url", "required">; id: import("convex/values").VString; url: import("convex/values").VString; title: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "url" | "sourceType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; }, { type: import("convex/values").VLiteral<"source", "required">; sourceType: import("convex/values").VLiteral<"document", "required">; id: import("convex/values").VString; mediaType: import("convex/values").VString; title: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "filename" | "sourceType">], "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "filename" | "url" | "sourceType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; }, { type: import("convex/values").VLiteral<"tool-approval-request", "required">; /** * ID of the tool approval. */ approvalId: import("convex/values").VString; /** * ID of the tool call that the approval request is for. */ toolCallId: import("convex/values").VString; /** @todo Should we continue to include? */ providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; /** @todo Should we continue to include? */ providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "approvalId">], "required", "id" | "title" | "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "mimeType" | "data" | "filename" | "signature" | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}` | "output" | "url" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}` | "sourceType" | "approvalId">, "required">], "required", never>, import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; }, { type: import("convex/values").VLiteral<"tool-result", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; output: import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; value: string; }, { type: import("convex/values").VLiteral<"text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "json"; value: any; }, { type: import("convex/values").VLiteral<"json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-text"; value: string; }, { type: import("convex/values").VLiteral<"error-text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-json"; value: any; }, { type: import("convex/values").VLiteral<"error-json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; }, { type: import("convex/values").VLiteral<"execution-denied", "required">; reason: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "reason">, import("convex/values").VObject<{ type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; }, { type: import("convex/values").VLiteral<"content", "required">; value: import("convex/values").VArray<({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | `providerOptions.${string}`>, import("convex/values").VObject<{ type: "media"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"media", "required">; data: import("convex/values").VString; mediaType: import("convex/values").VString; }, "required", "type" | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"file-data", "required">; /** Base-64 encoded */ data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-url"; url: string; }, { type: import("convex/values").VLiteral<"file-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; }, { type: import("convex/values").VLiteral<"file-id", "required">; /** * ID of the file. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"image-data", "required">; data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-url"; url: string; }, { type: import("convex/values").VLiteral<"image-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; }, { /** * Images that are referenced using a provider file id. */ type: import("convex/values").VLiteral<"image-file-id", "required">; /** * Image that is referenced using a provider file id. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "custom"; }, { /** * Custom content part. This can be used to implement * provider-specific content parts. */ type: import("convex/values").VLiteral<"custom", "required">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}`>], "required", "type" | "providerOptions" | "text" | `providerOptions.${string}` | "mediaType" | "data" | "filename" | "url" | "fileId" | `fileId.${string}`>, "required">; }, "required", "type" | "value">], "optional", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}` | "reason">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerExecuted: import("convex/values").VBoolean; result: import("convex/values").VAny; isError: import("convex/values").VBoolean; args: import("convex/values").VAny; experimental_content: import("convex/values").VArray<({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined, import("convex/values").VUnion<{ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; }, [import("convex/values").VObject<{ type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; }, "required", "type" | "text">, import("convex/values").VObject<{ mimeType?: string | undefined; type: "image"; data: string; }, { type: import("convex/values").VLiteral<"image", "required">; data: import("convex/values").VString; mimeType: import("convex/values").VString; }, "required", "type" | "mimeType" | "data">], "required", "type" | "text" | "mimeType" | "data">, "optional">; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "args" | "providerExecuted" | `args.${string}` | "output" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; }, { type: import("convex/values").VLiteral<"tool-approval-response", "required">; /** * ID of the tool approval. */ approvalId: import("convex/values").VString; /** * Flag indicating whether the approval was granted or denied. */ approved: import("convex/values").VBoolean; /** * Optional reason for the approval or denial. */ reason: import("convex/values").VString; /** * Flag indicating whether the tool call is provider-executed. * Only provider-executed tool approval responses should be sent to the model. */ providerExecuted: import("convex/values").VBoolean; /** @todo Should we continue to include? */ providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; /** @todo Should we continue to include? */ providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "providerExecuted" | "reason" | "approvalId" | "approved">], "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "args" | "providerExecuted" | `args.${string}` | "output" | "reason" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}` | "approvalId" | "approved">, "required">], "required", never>; export type Content = Infer; export declare const vUserMessage: import("convex/values").VObject<{ providerOptions?: Record> | undefined; role: "user"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[]; }, { role: import("convex/values").VLiteral<"user", "required">; content: import("convex/values").VUnion> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[], [import("convex/values").VString, import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"image", "required">; image: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "image" | "mediaType" | "mimeType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"file", "required">; data: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; filename: import("convex/values").VString; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "mimeType" | "data" | "filename">], "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "image" | "mediaType" | "mimeType" | "data" | "filename">, "required">], "required", never>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">; export declare const vAssistantMessage: import("convex/values").VObject<{ providerOptions?: Record> | undefined; role: "assistant"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[]; }, { role: import("convex/values").VLiteral<"assistant", "required">; content: import("convex/values").VUnion> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[], [import("convex/values").VString, import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"file", "required">; data: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; filename: import("convex/values").VString; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "mimeType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; }, { type: import("convex/values").VLiteral<"reasoning", "required">; text: import("convex/values").VString; signature: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "signature">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; }, { type: import("convex/values").VLiteral<"redacted-reasoning", "required">; data: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "data">, import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; }, { type: import("convex/values").VLiteral<"tool-call", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; input: import("convex/values").VAny; /** @deprecated Use `input` instead. */ args: import("convex/values").VAny; providerExecuted: import("convex/values").VBoolean; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; }, { type: import("convex/values").VLiteral<"tool-call", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; /** @deprecated Use `input` instead. */ args: import("convex/values").VAny; input: import("convex/values").VAny; providerExecuted: import("convex/values").VBoolean; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>], "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; }, { type: import("convex/values").VLiteral<"tool-result", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; output: import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; value: string; }, { type: import("convex/values").VLiteral<"text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "json"; value: any; }, { type: import("convex/values").VLiteral<"json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-text"; value: string; }, { type: import("convex/values").VLiteral<"error-text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-json"; value: any; }, { type: import("convex/values").VLiteral<"error-json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; }, { type: import("convex/values").VLiteral<"execution-denied", "required">; reason: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "reason">, import("convex/values").VObject<{ type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; }, { type: import("convex/values").VLiteral<"content", "required">; value: import("convex/values").VArray<({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | `providerOptions.${string}`>, import("convex/values").VObject<{ type: "media"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"media", "required">; data: import("convex/values").VString; mediaType: import("convex/values").VString; }, "required", "type" | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"file-data", "required">; /** Base-64 encoded */ data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-url"; url: string; }, { type: import("convex/values").VLiteral<"file-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; }, { type: import("convex/values").VLiteral<"file-id", "required">; /** * ID of the file. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"image-data", "required">; data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-url"; url: string; }, { type: import("convex/values").VLiteral<"image-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; }, { /** * Images that are referenced using a provider file id. */ type: import("convex/values").VLiteral<"image-file-id", "required">; /** * Image that is referenced using a provider file id. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "custom"; }, { /** * Custom content part. This can be used to implement * provider-specific content parts. */ type: import("convex/values").VLiteral<"custom", "required">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}`>], "required", "type" | "providerOptions" | "text" | `providerOptions.${string}` | "mediaType" | "data" | "filename" | "url" | "fileId" | `fileId.${string}`>, "required">; }, "required", "type" | "value">], "optional", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}` | "reason">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerExecuted: import("convex/values").VBoolean; result: import("convex/values").VAny; isError: import("convex/values").VBoolean; args: import("convex/values").VAny; experimental_content: import("convex/values").VArray<({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined, import("convex/values").VUnion<{ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; }, [import("convex/values").VObject<{ type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; }, "required", "type" | "text">, import("convex/values").VObject<{ mimeType?: string | undefined; type: "image"; data: string; }, { type: import("convex/values").VLiteral<"image", "required">; data: import("convex/values").VString; mimeType: import("convex/values").VString; }, "required", "type" | "mimeType" | "data">], "required", "type" | "text" | "mimeType" | "data">, "optional">; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "args" | "providerExecuted" | `args.${string}` | "output" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}`>, import("convex/values").VUnion<{ title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; }, [import("convex/values").VObject<{ title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; }, { type: import("convex/values").VLiteral<"source", "required">; sourceType: import("convex/values").VLiteral<"url", "required">; id: import("convex/values").VString; url: import("convex/values").VString; title: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "url" | "sourceType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; }, { type: import("convex/values").VLiteral<"source", "required">; sourceType: import("convex/values").VLiteral<"document", "required">; id: import("convex/values").VString; mediaType: import("convex/values").VString; title: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "filename" | "sourceType">], "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "filename" | "url" | "sourceType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; }, { type: import("convex/values").VLiteral<"tool-approval-request", "required">; /** * ID of the tool approval. */ approvalId: import("convex/values").VString; /** * ID of the tool call that the approval request is for. */ toolCallId: import("convex/values").VString; /** @todo Should we continue to include? */ providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; /** @todo Should we continue to include? */ providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "approvalId">], "required", "id" | "title" | "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "mimeType" | "data" | "filename" | "signature" | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}` | "output" | "url" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}` | "sourceType" | "approvalId">, "required">], "required", never>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">; export declare const vToolMessage: import("convex/values").VObject<{ providerOptions?: Record> | undefined; role: "tool"; content: ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[]; }, { role: import("convex/values").VLiteral<"tool", "required">; content: import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; }, { type: import("convex/values").VLiteral<"tool-result", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; output: import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; value: string; }, { type: import("convex/values").VLiteral<"text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "json"; value: any; }, { type: import("convex/values").VLiteral<"json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-text"; value: string; }, { type: import("convex/values").VLiteral<"error-text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-json"; value: any; }, { type: import("convex/values").VLiteral<"error-json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; }, { type: import("convex/values").VLiteral<"execution-denied", "required">; reason: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "reason">, import("convex/values").VObject<{ type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; }, { type: import("convex/values").VLiteral<"content", "required">; value: import("convex/values").VArray<({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | `providerOptions.${string}`>, import("convex/values").VObject<{ type: "media"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"media", "required">; data: import("convex/values").VString; mediaType: import("convex/values").VString; }, "required", "type" | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"file-data", "required">; /** Base-64 encoded */ data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-url"; url: string; }, { type: import("convex/values").VLiteral<"file-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; }, { type: import("convex/values").VLiteral<"file-id", "required">; /** * ID of the file. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"image-data", "required">; data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-url"; url: string; }, { type: import("convex/values").VLiteral<"image-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; }, { /** * Images that are referenced using a provider file id. */ type: import("convex/values").VLiteral<"image-file-id", "required">; /** * Image that is referenced using a provider file id. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "custom"; }, { /** * Custom content part. This can be used to implement * provider-specific content parts. */ type: import("convex/values").VLiteral<"custom", "required">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}`>], "required", "type" | "providerOptions" | "text" | `providerOptions.${string}` | "mediaType" | "data" | "filename" | "url" | "fileId" | `fileId.${string}`>, "required">; }, "required", "type" | "value">], "optional", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}` | "reason">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerExecuted: import("convex/values").VBoolean; result: import("convex/values").VAny; isError: import("convex/values").VBoolean; args: import("convex/values").VAny; experimental_content: import("convex/values").VArray<({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined, import("convex/values").VUnion<{ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; }, [import("convex/values").VObject<{ type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; }, "required", "type" | "text">, import("convex/values").VObject<{ mimeType?: string | undefined; type: "image"; data: string; }, { type: import("convex/values").VLiteral<"image", "required">; data: import("convex/values").VString; mimeType: import("convex/values").VString; }, "required", "type" | "mimeType" | "data">], "required", "type" | "text" | "mimeType" | "data">, "optional">; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "args" | "providerExecuted" | `args.${string}` | "output" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; }, { type: import("convex/values").VLiteral<"tool-approval-response", "required">; /** * ID of the tool approval. */ approvalId: import("convex/values").VString; /** * Flag indicating whether the approval was granted or denied. */ approved: import("convex/values").VBoolean; /** * Optional reason for the approval or denial. */ reason: import("convex/values").VString; /** * Flag indicating whether the tool call is provider-executed. * Only provider-executed tool approval responses should be sent to the model. */ providerExecuted: import("convex/values").VBoolean; /** @todo Should we continue to include? */ providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; /** @todo Should we continue to include? */ providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "providerExecuted" | "reason" | "approvalId" | "approved">], "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "args" | "providerExecuted" | `args.${string}` | "output" | "reason" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}` | "approvalId" | "approved">, "required">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">; export declare const vSystemMessage: import("convex/values").VObject<{ providerOptions?: Record> | undefined; role: "system"; content: string; }, { role: import("convex/values").VLiteral<"system", "required">; content: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">; export declare const vMessage: import("convex/values").VUnion<{ providerOptions?: Record> | undefined; role: "user"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[]; } | { providerOptions?: Record> | undefined; role: "assistant"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[]; } | { providerOptions?: Record> | undefined; role: "tool"; content: ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[]; } | { providerOptions?: Record> | undefined; role: "system"; content: string; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; role: "user"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[]; }, { role: import("convex/values").VLiteral<"user", "required">; content: import("convex/values").VUnion> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[], [import("convex/values").VString, import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"image", "required">; image: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "image" | "mediaType" | "mimeType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"file", "required">; data: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; filename: import("convex/values").VString; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "mimeType" | "data" | "filename">], "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "image" | "mediaType" | "mimeType" | "data" | "filename">, "required">], "required", never>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; role: "assistant"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[]; }, { role: import("convex/values").VLiteral<"assistant", "required">; content: import("convex/values").VUnion> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[], [import("convex/values").VString, import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"file", "required">; data: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; filename: import("convex/values").VString; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "mimeType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; }, { type: import("convex/values").VLiteral<"reasoning", "required">; text: import("convex/values").VString; signature: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "signature">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; }, { type: import("convex/values").VLiteral<"redacted-reasoning", "required">; data: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "data">, import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; }, { type: import("convex/values").VLiteral<"tool-call", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; input: import("convex/values").VAny; /** @deprecated Use `input` instead. */ args: import("convex/values").VAny; providerExecuted: import("convex/values").VBoolean; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; }, { type: import("convex/values").VLiteral<"tool-call", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; /** @deprecated Use `input` instead. */ args: import("convex/values").VAny; input: import("convex/values").VAny; providerExecuted: import("convex/values").VBoolean; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>], "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; }, { type: import("convex/values").VLiteral<"tool-result", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; output: import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; value: string; }, { type: import("convex/values").VLiteral<"text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "json"; value: any; }, { type: import("convex/values").VLiteral<"json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-text"; value: string; }, { type: import("convex/values").VLiteral<"error-text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-json"; value: any; }, { type: import("convex/values").VLiteral<"error-json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; }, { type: import("convex/values").VLiteral<"execution-denied", "required">; reason: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "reason">, import("convex/values").VObject<{ type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; }, { type: import("convex/values").VLiteral<"content", "required">; value: import("convex/values").VArray<({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | `providerOptions.${string}`>, import("convex/values").VObject<{ type: "media"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"media", "required">; data: import("convex/values").VString; mediaType: import("convex/values").VString; }, "required", "type" | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"file-data", "required">; /** Base-64 encoded */ data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-url"; url: string; }, { type: import("convex/values").VLiteral<"file-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; }, { type: import("convex/values").VLiteral<"file-id", "required">; /** * ID of the file. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"image-data", "required">; data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-url"; url: string; }, { type: import("convex/values").VLiteral<"image-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; }, { /** * Images that are referenced using a provider file id. */ type: import("convex/values").VLiteral<"image-file-id", "required">; /** * Image that is referenced using a provider file id. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "custom"; }, { /** * Custom content part. This can be used to implement * provider-specific content parts. */ type: import("convex/values").VLiteral<"custom", "required">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}`>], "required", "type" | "providerOptions" | "text" | `providerOptions.${string}` | "mediaType" | "data" | "filename" | "url" | "fileId" | `fileId.${string}`>, "required">; }, "required", "type" | "value">], "optional", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}` | "reason">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerExecuted: import("convex/values").VBoolean; result: import("convex/values").VAny; isError: import("convex/values").VBoolean; args: import("convex/values").VAny; experimental_content: import("convex/values").VArray<({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined, import("convex/values").VUnion<{ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; }, [import("convex/values").VObject<{ type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; }, "required", "type" | "text">, import("convex/values").VObject<{ mimeType?: string | undefined; type: "image"; data: string; }, { type: import("convex/values").VLiteral<"image", "required">; data: import("convex/values").VString; mimeType: import("convex/values").VString; }, "required", "type" | "mimeType" | "data">], "required", "type" | "text" | "mimeType" | "data">, "optional">; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "args" | "providerExecuted" | `args.${string}` | "output" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}`>, import("convex/values").VUnion<{ title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; }, [import("convex/values").VObject<{ title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; }, { type: import("convex/values").VLiteral<"source", "required">; sourceType: import("convex/values").VLiteral<"url", "required">; id: import("convex/values").VString; url: import("convex/values").VString; title: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "url" | "sourceType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; }, { type: import("convex/values").VLiteral<"source", "required">; sourceType: import("convex/values").VLiteral<"document", "required">; id: import("convex/values").VString; mediaType: import("convex/values").VString; title: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "filename" | "sourceType">], "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "filename" | "url" | "sourceType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; }, { type: import("convex/values").VLiteral<"tool-approval-request", "required">; /** * ID of the tool approval. */ approvalId: import("convex/values").VString; /** * ID of the tool call that the approval request is for. */ toolCallId: import("convex/values").VString; /** @todo Should we continue to include? */ providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; /** @todo Should we continue to include? */ providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "approvalId">], "required", "id" | "title" | "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "mimeType" | "data" | "filename" | "signature" | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}` | "output" | "url" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}` | "sourceType" | "approvalId">, "required">], "required", never>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; role: "tool"; content: ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[]; }, { role: import("convex/values").VLiteral<"tool", "required">; content: import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; }, { type: import("convex/values").VLiteral<"tool-result", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; output: import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; value: string; }, { type: import("convex/values").VLiteral<"text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "json"; value: any; }, { type: import("convex/values").VLiteral<"json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-text"; value: string; }, { type: import("convex/values").VLiteral<"error-text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-json"; value: any; }, { type: import("convex/values").VLiteral<"error-json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; }, { type: import("convex/values").VLiteral<"execution-denied", "required">; reason: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "reason">, import("convex/values").VObject<{ type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; }, { type: import("convex/values").VLiteral<"content", "required">; value: import("convex/values").VArray<({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | `providerOptions.${string}`>, import("convex/values").VObject<{ type: "media"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"media", "required">; data: import("convex/values").VString; mediaType: import("convex/values").VString; }, "required", "type" | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"file-data", "required">; /** Base-64 encoded */ data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-url"; url: string; }, { type: import("convex/values").VLiteral<"file-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; }, { type: import("convex/values").VLiteral<"file-id", "required">; /** * ID of the file. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"image-data", "required">; data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-url"; url: string; }, { type: import("convex/values").VLiteral<"image-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; }, { /** * Images that are referenced using a provider file id. */ type: import("convex/values").VLiteral<"image-file-id", "required">; /** * Image that is referenced using a provider file id. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "custom"; }, { /** * Custom content part. This can be used to implement * provider-specific content parts. */ type: import("convex/values").VLiteral<"custom", "required">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}`>], "required", "type" | "providerOptions" | "text" | `providerOptions.${string}` | "mediaType" | "data" | "filename" | "url" | "fileId" | `fileId.${string}`>, "required">; }, "required", "type" | "value">], "optional", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}` | "reason">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerExecuted: import("convex/values").VBoolean; result: import("convex/values").VAny; isError: import("convex/values").VBoolean; args: import("convex/values").VAny; experimental_content: import("convex/values").VArray<({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined, import("convex/values").VUnion<{ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; }, [import("convex/values").VObject<{ type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; }, "required", "type" | "text">, import("convex/values").VObject<{ mimeType?: string | undefined; type: "image"; data: string; }, { type: import("convex/values").VLiteral<"image", "required">; data: import("convex/values").VString; mimeType: import("convex/values").VString; }, "required", "type" | "mimeType" | "data">], "required", "type" | "text" | "mimeType" | "data">, "optional">; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "args" | "providerExecuted" | `args.${string}` | "output" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; }, { type: import("convex/values").VLiteral<"tool-approval-response", "required">; /** * ID of the tool approval. */ approvalId: import("convex/values").VString; /** * Flag indicating whether the approval was granted or denied. */ approved: import("convex/values").VBoolean; /** * Optional reason for the approval or denial. */ reason: import("convex/values").VString; /** * Flag indicating whether the tool call is provider-executed. * Only provider-executed tool approval responses should be sent to the model. */ providerExecuted: import("convex/values").VBoolean; /** @todo Should we continue to include? */ providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; /** @todo Should we continue to include? */ providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "providerExecuted" | "reason" | "approvalId" | "approved">], "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "args" | "providerExecuted" | `args.${string}` | "output" | "reason" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}` | "approvalId" | "approved">, "required">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; role: "system"; content: string; }, { role: import("convex/values").VLiteral<"system", "required">; content: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">], "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">; export type Message = Infer; export type MessageContentParts = Infer | Infer | Infer | Infer | Infer | Infer | Infer | Infer | Infer | Infer; export declare const vSource: import("convex/values").VUnion<{ title?: string | undefined; type?: "source" | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; }, [import("convex/values").VObject<{ title?: string | undefined; type?: "source" | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; url: string; sourceType: "url"; }, { type: import("convex/values").VLiteral<"source" | undefined, "optional">; sourceType: import("convex/values").VLiteral<"url", "required">; id: import("convex/values").VString; url: import("convex/values").VString; title: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "url" | "sourceType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; }, { type: import("convex/values").VLiteral<"source", "required">; sourceType: import("convex/values").VLiteral<"document", "required">; id: import("convex/values").VString; mediaType: import("convex/values").VString; title: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "filename" | "sourceType">], "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "filename" | "url" | "sourceType">; export declare const vRequest: import("convex/values").VObject<{ url?: string | undefined; body?: any; headers?: Record | undefined; method?: string | undefined; }, { body: import("convex/values").VAny; headers: import("convex/values").VRecord | undefined, import("convex/values").VString, import("convex/values").VString, "optional", string>; method: import("convex/values").VString; url: import("convex/values").VString; }, "required", "url" | "body" | "headers" | "method" | `body.${string}` | `headers.${string}`>; export declare const vFinishReason: import("convex/values").VUnion<"error" | "length" | "other" | "stop" | "content-filter" | "tool-calls" | "unknown", [import("convex/values").VLiteral<"stop", "required">, import("convex/values").VLiteral<"length", "required">, import("convex/values").VLiteral<"content-filter", "required">, import("convex/values").VLiteral<"tool-calls", "required">, import("convex/values").VLiteral<"error", "required">, import("convex/values").VLiteral<"other", "required">, import("convex/values").VLiteral<"unknown", "required">], "required", never>; export declare const vUsage: import("convex/values").VObject<{ reasoningTokens?: number | undefined; cachedInputTokens?: number | undefined; promptTokens: number; completionTokens: number; totalTokens: number; }, { promptTokens: import("convex/values").VFloat64; completionTokens: import("convex/values").VFloat64; totalTokens: import("convex/values").VFloat64; reasoningTokens: import("convex/values").VFloat64; cachedInputTokens: import("convex/values").VFloat64; }, "required", "promptTokens" | "completionTokens" | "totalTokens" | "reasoningTokens" | "cachedInputTokens">; export type Usage = Infer; export declare const vLanguageModelCallWarning: import("convex/values").VUnion<{ details?: string | undefined; type: "unsupported-setting"; setting: string; } | { details?: string | undefined; type: "unsupported-tool"; tool: any; } | { type: "other"; message: string; }, [import("convex/values").VObject<{ details?: string | undefined; type: "unsupported-setting"; setting: string; }, { type: import("convex/values").VLiteral<"unsupported-setting", "required">; setting: import("convex/values").VString; details: import("convex/values").VString; }, "required", "type" | "setting" | "details">, import("convex/values").VObject<{ details?: string | undefined; type: "unsupported-tool"; tool: any; }, { type: import("convex/values").VLiteral<"unsupported-tool", "required">; tool: import("convex/values").VAny; details: import("convex/values").VString; }, "required", "type" | "tool" | "details" | `tool.${string}`>, import("convex/values").VObject<{ type: "other"; message: string; }, { type: import("convex/values").VLiteral<"other", "required">; message: import("convex/values").VString; }, "required", "type" | "message">], "required", "type" | "message" | "tool" | "setting" | "details" | `tool.${string}`>; export declare const vMessageWithMetadataInternal: import("convex/values").VObject<{ status?: "pending" | "success" | "failed" | undefined; fileIds?: import("convex/values").GenericId<"files">[] | undefined; error?: string | undefined; model?: string | undefined; provider?: string | undefined; text?: string | undefined; providerMetadata?: Record> | undefined; reasoning?: string | undefined; usage?: { reasoningTokens?: number | undefined; cachedInputTokens?: number | undefined; promptTokens: number; completionTokens: number; totalTokens: number; } | undefined; sources?: ({ title?: string | undefined; type?: "source" | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; })[] | undefined; warnings?: ({ details?: string | undefined; type: "unsupported-setting"; setting: string; } | { details?: string | undefined; type: "unsupported-tool"; tool: any; } | { type: "other"; message: string; })[] | undefined; finishReason?: "error" | "length" | "other" | "stop" | "content-filter" | "tool-calls" | "unknown" | undefined; reasoningDetails?: ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { signature?: string | undefined; type: "text"; text: string; } | { type: "redacted"; data: string; })[] | undefined; message: { providerOptions?: Record> | undefined; role: "user"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[]; } | { providerOptions?: Record> | undefined; role: "assistant"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[]; } | { providerOptions?: Record> | undefined; role: "tool"; content: ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[]; } | { providerOptions?: Record> | undefined; role: "system"; content: string; }; }, { message: import("convex/values").VUnion<{ providerOptions?: Record> | undefined; role: "user"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[]; } | { providerOptions?: Record> | undefined; role: "assistant"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[]; } | { providerOptions?: Record> | undefined; role: "tool"; content: ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[]; } | { providerOptions?: Record> | undefined; role: "system"; content: string; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; role: "user"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[]; }, { role: import("convex/values").VLiteral<"user", "required">; content: import("convex/values").VUnion> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[], [import("convex/values").VString, import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"image", "required">; image: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "image" | "mediaType" | "mimeType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"file", "required">; data: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; filename: import("convex/values").VString; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "mimeType" | "data" | "filename">], "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "image" | "mediaType" | "mimeType" | "data" | "filename">, "required">], "required", never>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; role: "assistant"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[]; }, { role: import("convex/values").VLiteral<"assistant", "required">; content: import("convex/values").VUnion> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[], [import("convex/values").VString, import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"file", "required">; data: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; filename: import("convex/values").VString; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "mimeType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; }, { type: import("convex/values").VLiteral<"reasoning", "required">; text: import("convex/values").VString; signature: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "signature">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; }, { type: import("convex/values").VLiteral<"redacted-reasoning", "required">; data: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "data">, import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; }, { type: import("convex/values").VLiteral<"tool-call", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; input: import("convex/values").VAny; /** @deprecated Use `input` instead. */ args: import("convex/values").VAny; providerExecuted: import("convex/values").VBoolean; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; }, { type: import("convex/values").VLiteral<"tool-call", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; /** @deprecated Use `input` instead. */ args: import("convex/values").VAny; input: import("convex/values").VAny; providerExecuted: import("convex/values").VBoolean; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>], "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; }, { type: import("convex/values").VLiteral<"tool-result", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; output: import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; value: string; }, { type: import("convex/values").VLiteral<"text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "json"; value: any; }, { type: import("convex/values").VLiteral<"json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-text"; value: string; }, { type: import("convex/values").VLiteral<"error-text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-json"; value: any; }, { type: import("convex/values").VLiteral<"error-json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; }, { type: import("convex/values").VLiteral<"execution-denied", "required">; reason: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "reason">, import("convex/values").VObject<{ type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; }, { type: import("convex/values").VLiteral<"content", "required">; value: import("convex/values").VArray<({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | `providerOptions.${string}`>, import("convex/values").VObject<{ type: "media"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"media", "required">; data: import("convex/values").VString; mediaType: import("convex/values").VString; }, "required", "type" | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"file-data", "required">; /** Base-64 encoded */ data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-url"; url: string; }, { type: import("convex/values").VLiteral<"file-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; }, { type: import("convex/values").VLiteral<"file-id", "required">; /** * ID of the file. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"image-data", "required">; data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-url"; url: string; }, { type: import("convex/values").VLiteral<"image-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; }, { /** * Images that are referenced using a provider file id. */ type: import("convex/values").VLiteral<"image-file-id", "required">; /** * Image that is referenced using a provider file id. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "custom"; }, { /** * Custom content part. This can be used to implement * provider-specific content parts. */ type: import("convex/values").VLiteral<"custom", "required">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}`>], "required", "type" | "providerOptions" | "text" | `providerOptions.${string}` | "mediaType" | "data" | "filename" | "url" | "fileId" | `fileId.${string}`>, "required">; }, "required", "type" | "value">], "optional", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}` | "reason">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerExecuted: import("convex/values").VBoolean; result: import("convex/values").VAny; isError: import("convex/values").VBoolean; args: import("convex/values").VAny; experimental_content: import("convex/values").VArray<({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined, import("convex/values").VUnion<{ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; }, [import("convex/values").VObject<{ type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; }, "required", "type" | "text">, import("convex/values").VObject<{ mimeType?: string | undefined; type: "image"; data: string; }, { type: import("convex/values").VLiteral<"image", "required">; data: import("convex/values").VString; mimeType: import("convex/values").VString; }, "required", "type" | "mimeType" | "data">], "required", "type" | "text" | "mimeType" | "data">, "optional">; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "args" | "providerExecuted" | `args.${string}` | "output" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}`>, import("convex/values").VUnion<{ title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; }, [import("convex/values").VObject<{ title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; }, { type: import("convex/values").VLiteral<"source", "required">; sourceType: import("convex/values").VLiteral<"url", "required">; id: import("convex/values").VString; url: import("convex/values").VString; title: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "url" | "sourceType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; }, { type: import("convex/values").VLiteral<"source", "required">; sourceType: import("convex/values").VLiteral<"document", "required">; id: import("convex/values").VString; mediaType: import("convex/values").VString; title: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "filename" | "sourceType">], "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "filename" | "url" | "sourceType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; }, { type: import("convex/values").VLiteral<"tool-approval-request", "required">; /** * ID of the tool approval. */ approvalId: import("convex/values").VString; /** * ID of the tool call that the approval request is for. */ toolCallId: import("convex/values").VString; /** @todo Should we continue to include? */ providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; /** @todo Should we continue to include? */ providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "approvalId">], "required", "id" | "title" | "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "mimeType" | "data" | "filename" | "signature" | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}` | "output" | "url" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}` | "sourceType" | "approvalId">, "required">], "required", never>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; role: "tool"; content: ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[]; }, { role: import("convex/values").VLiteral<"tool", "required">; content: import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; }, { type: import("convex/values").VLiteral<"tool-result", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; output: import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; value: string; }, { type: import("convex/values").VLiteral<"text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "json"; value: any; }, { type: import("convex/values").VLiteral<"json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-text"; value: string; }, { type: import("convex/values").VLiteral<"error-text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-json"; value: any; }, { type: import("convex/values").VLiteral<"error-json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; }, { type: import("convex/values").VLiteral<"execution-denied", "required">; reason: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "reason">, import("convex/values").VObject<{ type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; }, { type: import("convex/values").VLiteral<"content", "required">; value: import("convex/values").VArray<({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | `providerOptions.${string}`>, import("convex/values").VObject<{ type: "media"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"media", "required">; data: import("convex/values").VString; mediaType: import("convex/values").VString; }, "required", "type" | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"file-data", "required">; /** Base-64 encoded */ data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-url"; url: string; }, { type: import("convex/values").VLiteral<"file-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; }, { type: import("convex/values").VLiteral<"file-id", "required">; /** * ID of the file. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"image-data", "required">; data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-url"; url: string; }, { type: import("convex/values").VLiteral<"image-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; }, { /** * Images that are referenced using a provider file id. */ type: import("convex/values").VLiteral<"image-file-id", "required">; /** * Image that is referenced using a provider file id. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "custom"; }, { /** * Custom content part. This can be used to implement * provider-specific content parts. */ type: import("convex/values").VLiteral<"custom", "required">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}`>], "required", "type" | "providerOptions" | "text" | `providerOptions.${string}` | "mediaType" | "data" | "filename" | "url" | "fileId" | `fileId.${string}`>, "required">; }, "required", "type" | "value">], "optional", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}` | "reason">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerExecuted: import("convex/values").VBoolean; result: import("convex/values").VAny; isError: import("convex/values").VBoolean; args: import("convex/values").VAny; experimental_content: import("convex/values").VArray<({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined, import("convex/values").VUnion<{ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; }, [import("convex/values").VObject<{ type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; }, "required", "type" | "text">, import("convex/values").VObject<{ mimeType?: string | undefined; type: "image"; data: string; }, { type: import("convex/values").VLiteral<"image", "required">; data: import("convex/values").VString; mimeType: import("convex/values").VString; }, "required", "type" | "mimeType" | "data">], "required", "type" | "text" | "mimeType" | "data">, "optional">; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "args" | "providerExecuted" | `args.${string}` | "output" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; }, { type: import("convex/values").VLiteral<"tool-approval-response", "required">; /** * ID of the tool approval. */ approvalId: import("convex/values").VString; /** * Flag indicating whether the approval was granted or denied. */ approved: import("convex/values").VBoolean; /** * Optional reason for the approval or denial. */ reason: import("convex/values").VString; /** * Flag indicating whether the tool call is provider-executed. * Only provider-executed tool approval responses should be sent to the model. */ providerExecuted: import("convex/values").VBoolean; /** @todo Should we continue to include? */ providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; /** @todo Should we continue to include? */ providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "providerExecuted" | "reason" | "approvalId" | "approved">], "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "args" | "providerExecuted" | `args.${string}` | "output" | "reason" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}` | "approvalId" | "approved">, "required">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; role: "system"; content: string; }, { role: import("convex/values").VLiteral<"system", "required">; content: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">], "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">; text: import("convex/values").VString; fileIds: import("convex/values").VArray[] | undefined, import("convex/values").VId, "required">, "optional">; status: import("convex/values").VUnion<"pending" | "success" | "failed" | undefined, [import("convex/values").VLiteral<"pending", "required">, import("convex/values").VLiteral<"success", "required">, import("convex/values").VLiteral<"failed", "required">], "optional", never>; finishReason: import("convex/values").VUnion<"error" | "length" | "other" | "stop" | "content-filter" | "tool-calls" | "unknown" | undefined, [import("convex/values").VLiteral<"stop", "required">, import("convex/values").VLiteral<"length", "required">, import("convex/values").VLiteral<"content-filter", "required">, import("convex/values").VLiteral<"tool-calls", "required">, import("convex/values").VLiteral<"error", "required">, import("convex/values").VLiteral<"other", "required">, import("convex/values").VLiteral<"unknown", "required">], "optional", never>; model: import("convex/values").VString; provider: import("convex/values").VString; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; sources: import("convex/values").VArray<({ title?: string | undefined; type?: "source" | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; })[] | undefined, import("convex/values").VUnion<{ title?: string | undefined; type?: "source" | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; }, [import("convex/values").VObject<{ title?: string | undefined; type?: "source" | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; url: string; sourceType: "url"; }, { type: import("convex/values").VLiteral<"source" | undefined, "optional">; sourceType: import("convex/values").VLiteral<"url", "required">; id: import("convex/values").VString; url: import("convex/values").VString; title: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "url" | "sourceType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; }, { type: import("convex/values").VLiteral<"source", "required">; sourceType: import("convex/values").VLiteral<"document", "required">; id: import("convex/values").VString; mediaType: import("convex/values").VString; title: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "filename" | "sourceType">], "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "filename" | "url" | "sourceType">, "optional">; reasoning: import("convex/values").VString; reasoningDetails: import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { signature?: string | undefined; type: "text"; text: string; } | { type: "redacted"; data: string; })[] | undefined, import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { signature?: string | undefined; type: "text"; text: string; } | { type: "redacted"; data: string; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; }, { type: import("convex/values").VLiteral<"reasoning", "required">; text: import("convex/values").VString; signature: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "signature">, import("convex/values").VObject<{ signature?: string | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; signature: import("convex/values").VString; }, "required", "type" | "text" | "signature">, import("convex/values").VObject<{ type: "redacted"; data: string; }, { type: import("convex/values").VLiteral<"redacted", "required">; data: import("convex/values").VString; }, "required", "type" | "data">], "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "data" | "signature">, "optional">; usage: import("convex/values").VObject<{ reasoningTokens?: number | undefined; cachedInputTokens?: number | undefined; promptTokens: number; completionTokens: number; totalTokens: number; } | undefined, { promptTokens: import("convex/values").VFloat64; completionTokens: import("convex/values").VFloat64; totalTokens: import("convex/values").VFloat64; reasoningTokens: import("convex/values").VFloat64; cachedInputTokens: import("convex/values").VFloat64; }, "optional", "promptTokens" | "completionTokens" | "totalTokens" | "reasoningTokens" | "cachedInputTokens">; warnings: import("convex/values").VArray<({ details?: string | undefined; type: "unsupported-setting"; setting: string; } | { details?: string | undefined; type: "unsupported-tool"; tool: any; } | { type: "other"; message: string; })[] | undefined, import("convex/values").VUnion<{ details?: string | undefined; type: "unsupported-setting"; setting: string; } | { details?: string | undefined; type: "unsupported-tool"; tool: any; } | { type: "other"; message: string; }, [import("convex/values").VObject<{ details?: string | undefined; type: "unsupported-setting"; setting: string; }, { type: import("convex/values").VLiteral<"unsupported-setting", "required">; setting: import("convex/values").VString; details: import("convex/values").VString; }, "required", "type" | "setting" | "details">, import("convex/values").VObject<{ details?: string | undefined; type: "unsupported-tool"; tool: any; }, { type: import("convex/values").VLiteral<"unsupported-tool", "required">; tool: import("convex/values").VAny; details: import("convex/values").VString; }, "required", "type" | "tool" | "details" | `tool.${string}`>, import("convex/values").VObject<{ type: "other"; message: string; }, { type: import("convex/values").VLiteral<"other", "required">; message: import("convex/values").VString; }, "required", "type" | "message">], "required", "type" | "message" | "tool" | "setting" | "details" | `tool.${string}`>, "optional">; error: import("convex/values").VString; }, "required", "status" | "fileIds" | "error" | "model" | "provider" | "message" | "text" | "providerMetadata" | `providerMetadata.${string}` | "reasoning" | "usage" | "sources" | "warnings" | "finishReason" | "reasoningDetails" | "message.providerOptions" | "message.role" | `message.providerOptions.${string}` | "message.content" | "usage.promptTokens" | "usage.completionTokens" | "usage.totalTokens" | "usage.reasoningTokens" | "usage.cachedInputTokens">; export type MessageWithMetadataInternal = Infer; export declare const vMessageWithMetadata: import("convex/values").VObject<{ status?: "pending" | "success" | "failed" | undefined; fileIds?: string[] | undefined; error?: string | undefined; model?: string | undefined; provider?: string | undefined; text?: string | undefined; providerMetadata?: Record> | undefined; reasoning?: string | undefined; usage?: { reasoningTokens?: number | undefined; cachedInputTokens?: number | undefined; promptTokens: number; completionTokens: number; totalTokens: number; } | undefined; sources?: ({ title?: string | undefined; type?: "source" | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; })[] | undefined; warnings?: ({ details?: string | undefined; type: "unsupported-setting"; setting: string; } | { details?: string | undefined; type: "unsupported-tool"; tool: any; } | { type: "other"; message: string; })[] | undefined; finishReason?: "error" | "length" | "other" | "stop" | "content-filter" | "tool-calls" | "unknown" | undefined; reasoningDetails?: ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { signature?: string | undefined; type: "text"; text: string; } | { type: "redacted"; data: string; })[] | undefined; message: { providerOptions?: Record> | undefined; role: "user"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[]; } | { providerOptions?: Record> | undefined; role: "assistant"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[]; } | { providerOptions?: Record> | undefined; role: "tool"; content: ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[]; } | { providerOptions?: Record> | undefined; role: "system"; content: string; }; }, { fileIds: import("convex/values").VArray, "optional">; message: import("convex/values").VUnion<{ providerOptions?: Record> | undefined; role: "user"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[]; } | { providerOptions?: Record> | undefined; role: "assistant"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[]; } | { providerOptions?: Record> | undefined; role: "tool"; content: ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[]; } | { providerOptions?: Record> | undefined; role: "system"; content: string; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; role: "user"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[]; }, { role: import("convex/values").VLiteral<"user", "required">; content: import("convex/values").VUnion> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[], [import("convex/values").VString, import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"image", "required">; image: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "image" | "mediaType" | "mimeType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"file", "required">; data: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; filename: import("convex/values").VString; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "mimeType" | "data" | "filename">], "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "image" | "mediaType" | "mimeType" | "data" | "filename">, "required">], "required", never>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; role: "assistant"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[]; }, { role: import("convex/values").VLiteral<"assistant", "required">; content: import("convex/values").VUnion> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[], [import("convex/values").VString, import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"file", "required">; data: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; filename: import("convex/values").VString; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "mimeType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; }, { type: import("convex/values").VLiteral<"reasoning", "required">; text: import("convex/values").VString; signature: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "signature">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; }, { type: import("convex/values").VLiteral<"redacted-reasoning", "required">; data: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "data">, import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; }, { type: import("convex/values").VLiteral<"tool-call", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; input: import("convex/values").VAny; /** @deprecated Use `input` instead. */ args: import("convex/values").VAny; providerExecuted: import("convex/values").VBoolean; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; }, { type: import("convex/values").VLiteral<"tool-call", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; /** @deprecated Use `input` instead. */ args: import("convex/values").VAny; input: import("convex/values").VAny; providerExecuted: import("convex/values").VBoolean; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>], "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; }, { type: import("convex/values").VLiteral<"tool-result", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; output: import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; value: string; }, { type: import("convex/values").VLiteral<"text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "json"; value: any; }, { type: import("convex/values").VLiteral<"json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-text"; value: string; }, { type: import("convex/values").VLiteral<"error-text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-json"; value: any; }, { type: import("convex/values").VLiteral<"error-json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; }, { type: import("convex/values").VLiteral<"execution-denied", "required">; reason: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "reason">, import("convex/values").VObject<{ type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; }, { type: import("convex/values").VLiteral<"content", "required">; value: import("convex/values").VArray<({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | `providerOptions.${string}`>, import("convex/values").VObject<{ type: "media"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"media", "required">; data: import("convex/values").VString; mediaType: import("convex/values").VString; }, "required", "type" | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"file-data", "required">; /** Base-64 encoded */ data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-url"; url: string; }, { type: import("convex/values").VLiteral<"file-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; }, { type: import("convex/values").VLiteral<"file-id", "required">; /** * ID of the file. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"image-data", "required">; data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-url"; url: string; }, { type: import("convex/values").VLiteral<"image-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; }, { /** * Images that are referenced using a provider file id. */ type: import("convex/values").VLiteral<"image-file-id", "required">; /** * Image that is referenced using a provider file id. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "custom"; }, { /** * Custom content part. This can be used to implement * provider-specific content parts. */ type: import("convex/values").VLiteral<"custom", "required">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}`>], "required", "type" | "providerOptions" | "text" | `providerOptions.${string}` | "mediaType" | "data" | "filename" | "url" | "fileId" | `fileId.${string}`>, "required">; }, "required", "type" | "value">], "optional", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}` | "reason">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerExecuted: import("convex/values").VBoolean; result: import("convex/values").VAny; isError: import("convex/values").VBoolean; args: import("convex/values").VAny; experimental_content: import("convex/values").VArray<({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined, import("convex/values").VUnion<{ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; }, [import("convex/values").VObject<{ type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; }, "required", "type" | "text">, import("convex/values").VObject<{ mimeType?: string | undefined; type: "image"; data: string; }, { type: import("convex/values").VLiteral<"image", "required">; data: import("convex/values").VString; mimeType: import("convex/values").VString; }, "required", "type" | "mimeType" | "data">], "required", "type" | "text" | "mimeType" | "data">, "optional">; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "args" | "providerExecuted" | `args.${string}` | "output" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}`>, import("convex/values").VUnion<{ title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; }, [import("convex/values").VObject<{ title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; }, { type: import("convex/values").VLiteral<"source", "required">; sourceType: import("convex/values").VLiteral<"url", "required">; id: import("convex/values").VString; url: import("convex/values").VString; title: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "url" | "sourceType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; }, { type: import("convex/values").VLiteral<"source", "required">; sourceType: import("convex/values").VLiteral<"document", "required">; id: import("convex/values").VString; mediaType: import("convex/values").VString; title: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "filename" | "sourceType">], "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "filename" | "url" | "sourceType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; }, { type: import("convex/values").VLiteral<"tool-approval-request", "required">; /** * ID of the tool approval. */ approvalId: import("convex/values").VString; /** * ID of the tool call that the approval request is for. */ toolCallId: import("convex/values").VString; /** @todo Should we continue to include? */ providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; /** @todo Should we continue to include? */ providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "approvalId">], "required", "id" | "title" | "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "mimeType" | "data" | "filename" | "signature" | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}` | "output" | "url" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}` | "sourceType" | "approvalId">, "required">], "required", never>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; role: "tool"; content: ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[]; }, { role: import("convex/values").VLiteral<"tool", "required">; content: import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; }, { type: import("convex/values").VLiteral<"tool-result", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; output: import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; value: string; }, { type: import("convex/values").VLiteral<"text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "json"; value: any; }, { type: import("convex/values").VLiteral<"json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-text"; value: string; }, { type: import("convex/values").VLiteral<"error-text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-json"; value: any; }, { type: import("convex/values").VLiteral<"error-json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; }, { type: import("convex/values").VLiteral<"execution-denied", "required">; reason: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "reason">, import("convex/values").VObject<{ type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; }, { type: import("convex/values").VLiteral<"content", "required">; value: import("convex/values").VArray<({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | `providerOptions.${string}`>, import("convex/values").VObject<{ type: "media"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"media", "required">; data: import("convex/values").VString; mediaType: import("convex/values").VString; }, "required", "type" | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"file-data", "required">; /** Base-64 encoded */ data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-url"; url: string; }, { type: import("convex/values").VLiteral<"file-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; }, { type: import("convex/values").VLiteral<"file-id", "required">; /** * ID of the file. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"image-data", "required">; data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-url"; url: string; }, { type: import("convex/values").VLiteral<"image-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; }, { /** * Images that are referenced using a provider file id. */ type: import("convex/values").VLiteral<"image-file-id", "required">; /** * Image that is referenced using a provider file id. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "custom"; }, { /** * Custom content part. This can be used to implement * provider-specific content parts. */ type: import("convex/values").VLiteral<"custom", "required">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}`>], "required", "type" | "providerOptions" | "text" | `providerOptions.${string}` | "mediaType" | "data" | "filename" | "url" | "fileId" | `fileId.${string}`>, "required">; }, "required", "type" | "value">], "optional", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}` | "reason">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerExecuted: import("convex/values").VBoolean; result: import("convex/values").VAny; isError: import("convex/values").VBoolean; args: import("convex/values").VAny; experimental_content: import("convex/values").VArray<({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined, import("convex/values").VUnion<{ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; }, [import("convex/values").VObject<{ type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; }, "required", "type" | "text">, import("convex/values").VObject<{ mimeType?: string | undefined; type: "image"; data: string; }, { type: import("convex/values").VLiteral<"image", "required">; data: import("convex/values").VString; mimeType: import("convex/values").VString; }, "required", "type" | "mimeType" | "data">], "required", "type" | "text" | "mimeType" | "data">, "optional">; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "args" | "providerExecuted" | `args.${string}` | "output" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; }, { type: import("convex/values").VLiteral<"tool-approval-response", "required">; /** * ID of the tool approval. */ approvalId: import("convex/values").VString; /** * Flag indicating whether the approval was granted or denied. */ approved: import("convex/values").VBoolean; /** * Optional reason for the approval or denial. */ reason: import("convex/values").VString; /** * Flag indicating whether the tool call is provider-executed. * Only provider-executed tool approval responses should be sent to the model. */ providerExecuted: import("convex/values").VBoolean; /** @todo Should we continue to include? */ providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; /** @todo Should we continue to include? */ providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "providerExecuted" | "reason" | "approvalId" | "approved">], "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "args" | "providerExecuted" | `args.${string}` | "output" | "reason" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}` | "approvalId" | "approved">, "required">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; role: "system"; content: string; }, { role: import("convex/values").VLiteral<"system", "required">; content: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">], "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">; text: import("convex/values").VString; status: import("convex/values").VUnion<"pending" | "success" | "failed" | undefined, [import("convex/values").VLiteral<"pending", "required">, import("convex/values").VLiteral<"success", "required">, import("convex/values").VLiteral<"failed", "required">], "optional", never>; finishReason: import("convex/values").VUnion<"error" | "length" | "other" | "stop" | "content-filter" | "tool-calls" | "unknown" | undefined, [import("convex/values").VLiteral<"stop", "required">, import("convex/values").VLiteral<"length", "required">, import("convex/values").VLiteral<"content-filter", "required">, import("convex/values").VLiteral<"tool-calls", "required">, import("convex/values").VLiteral<"error", "required">, import("convex/values").VLiteral<"other", "required">, import("convex/values").VLiteral<"unknown", "required">], "optional", never>; model: import("convex/values").VString; provider: import("convex/values").VString; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; sources: import("convex/values").VArray<({ title?: string | undefined; type?: "source" | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; })[] | undefined, import("convex/values").VUnion<{ title?: string | undefined; type?: "source" | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; }, [import("convex/values").VObject<{ title?: string | undefined; type?: "source" | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; url: string; sourceType: "url"; }, { type: import("convex/values").VLiteral<"source" | undefined, "optional">; sourceType: import("convex/values").VLiteral<"url", "required">; id: import("convex/values").VString; url: import("convex/values").VString; title: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "url" | "sourceType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; }, { type: import("convex/values").VLiteral<"source", "required">; sourceType: import("convex/values").VLiteral<"document", "required">; id: import("convex/values").VString; mediaType: import("convex/values").VString; title: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "filename" | "sourceType">], "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "filename" | "url" | "sourceType">, "optional">; reasoning: import("convex/values").VString; reasoningDetails: import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { signature?: string | undefined; type: "text"; text: string; } | { type: "redacted"; data: string; })[] | undefined, import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { signature?: string | undefined; type: "text"; text: string; } | { type: "redacted"; data: string; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; }, { type: import("convex/values").VLiteral<"reasoning", "required">; text: import("convex/values").VString; signature: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "signature">, import("convex/values").VObject<{ signature?: string | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; signature: import("convex/values").VString; }, "required", "type" | "text" | "signature">, import("convex/values").VObject<{ type: "redacted"; data: string; }, { type: import("convex/values").VLiteral<"redacted", "required">; data: import("convex/values").VString; }, "required", "type" | "data">], "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "data" | "signature">, "optional">; usage: import("convex/values").VObject<{ reasoningTokens?: number | undefined; cachedInputTokens?: number | undefined; promptTokens: number; completionTokens: number; totalTokens: number; } | undefined, { promptTokens: import("convex/values").VFloat64; completionTokens: import("convex/values").VFloat64; totalTokens: import("convex/values").VFloat64; reasoningTokens: import("convex/values").VFloat64; cachedInputTokens: import("convex/values").VFloat64; }, "optional", "promptTokens" | "completionTokens" | "totalTokens" | "reasoningTokens" | "cachedInputTokens">; warnings: import("convex/values").VArray<({ details?: string | undefined; type: "unsupported-setting"; setting: string; } | { details?: string | undefined; type: "unsupported-tool"; tool: any; } | { type: "other"; message: string; })[] | undefined, import("convex/values").VUnion<{ details?: string | undefined; type: "unsupported-setting"; setting: string; } | { details?: string | undefined; type: "unsupported-tool"; tool: any; } | { type: "other"; message: string; }, [import("convex/values").VObject<{ details?: string | undefined; type: "unsupported-setting"; setting: string; }, { type: import("convex/values").VLiteral<"unsupported-setting", "required">; setting: import("convex/values").VString; details: import("convex/values").VString; }, "required", "type" | "setting" | "details">, import("convex/values").VObject<{ details?: string | undefined; type: "unsupported-tool"; tool: any; }, { type: import("convex/values").VLiteral<"unsupported-tool", "required">; tool: import("convex/values").VAny; details: import("convex/values").VString; }, "required", "type" | "tool" | "details" | `tool.${string}`>, import("convex/values").VObject<{ type: "other"; message: string; }, { type: import("convex/values").VLiteral<"other", "required">; message: import("convex/values").VString; }, "required", "type" | "message">], "required", "type" | "message" | "tool" | "setting" | "details" | `tool.${string}`>, "optional">; error: import("convex/values").VString; }, "required", "status" | "fileIds" | "error" | "model" | "provider" | "message" | "text" | "providerMetadata" | `providerMetadata.${string}` | "reasoning" | "usage" | "sources" | "warnings" | "finishReason" | "reasoningDetails" | "message.providerOptions" | "message.role" | `message.providerOptions.${string}` | "message.content" | "usage.promptTokens" | "usage.completionTokens" | "usage.totalTokens" | "usage.reasoningTokens" | "usage.cachedInputTokens">; export type MessageWithMetadata = Infer; export declare const vMessageEmbeddingsWithDimension: import("convex/values").VObject<{ model: string; dimension: 128 | 256 | 512 | 768 | 1024 | 1408 | 1536 | 2048 | 3072 | 4096; vectors: (number[] | null)[]; }, { model: import("convex/values").VString; dimension: import("convex/values").VUnion<128 | 256 | 512 | 768 | 1024 | 1408 | 1536 | 2048 | 3072 | 4096, NoInfer<[import("convex/values").VLiteral<128, "required">, import("convex/values").VLiteral<256, "required">, import("convex/values").VLiteral<512, "required">, import("convex/values").VLiteral<768, "required">, import("convex/values").VLiteral<1024, "required">, import("convex/values").VLiteral<1408, "required">, import("convex/values").VLiteral<1536, "required">, import("convex/values").VLiteral<2048, "required">, import("convex/values").VLiteral<3072, "required">, import("convex/values").VLiteral<4096, "required">]>, "required", never>; vectors: import("convex/values").VArray<(number[] | null)[], import("convex/values").VUnion, "required">, import("convex/values").VNull], "required", never>, "required">; }, "required", "model" | "dimension" | "vectors">; export type MessageEmbeddingsWithDimension = Infer; export declare const vMessageEmbeddings: import("convex/values").VObject<{ model: string; vectors: (number[] | null)[]; }, { model: import("convex/values").VString; vectors: import("convex/values").VArray<(number[] | null)[], import("convex/values").VUnion, "required">, import("convex/values").VNull], "required", never>, "required">; }, "required", "model" | "vectors">; export type MessageEmbeddings = Infer; export declare const vContextOptionsSearchOptions: import("convex/values").VObject<{ textSearch?: boolean | undefined; vectorSearch?: boolean | undefined; vectorScoreThreshold?: number | undefined; messageRange?: { before: number; after: number; } | undefined; limit: number; }, { limit: import("convex/values").VFloat64; textSearch: import("convex/values").VBoolean; vectorSearch: import("convex/values").VBoolean; vectorScoreThreshold: import("convex/values").VFloat64; messageRange: import("convex/values").VObject<{ before: number; after: number; } | undefined, { before: import("convex/values").VFloat64; after: import("convex/values").VFloat64; }, "optional", "before" | "after">; }, "required", "limit" | "textSearch" | "vectorSearch" | "vectorScoreThreshold" | "messageRange" | "messageRange.before" | "messageRange.after">; export declare const vContextOptions: import("convex/values").VObject<{ excludeToolMessages?: boolean | undefined; recentMessages?: number | undefined; searchOptions?: { textSearch?: boolean | undefined; vectorSearch?: boolean | undefined; vectorScoreThreshold?: number | undefined; messageRange?: { before: number; after: number; } | undefined; limit: number; } | undefined; searchOtherThreads?: boolean | undefined; }, { excludeToolMessages: import("convex/values").VBoolean; recentMessages: import("convex/values").VFloat64; searchOptions: import("convex/values").VObject<{ textSearch?: boolean | undefined; vectorSearch?: boolean | undefined; vectorScoreThreshold?: number | undefined; messageRange?: { before: number; after: number; } | undefined; limit: number; } | undefined, { limit: import("convex/values").VFloat64; textSearch: import("convex/values").VBoolean; vectorSearch: import("convex/values").VBoolean; vectorScoreThreshold: import("convex/values").VFloat64; messageRange: import("convex/values").VObject<{ before: number; after: number; } | undefined, { before: import("convex/values").VFloat64; after: import("convex/values").VFloat64; }, "optional", "before" | "after">; }, "optional", "limit" | "textSearch" | "vectorSearch" | "vectorScoreThreshold" | "messageRange" | "messageRange.before" | "messageRange.after">; searchOtherThreads: import("convex/values").VBoolean; }, "required", "excludeToolMessages" | "recentMessages" | "searchOptions" | "searchOtherThreads" | "searchOptions.limit" | "searchOptions.textSearch" | "searchOptions.vectorSearch" | "searchOptions.vectorScoreThreshold" | "searchOptions.messageRange" | "searchOptions.messageRange.before" | "searchOptions.messageRange.after">; export declare const vStorageOptions: import("convex/values").VObject<{ saveMessages?: "all" | "none" | "promptAndOutput" | undefined; }, { saveMessages: import("convex/values").VUnion<"all" | "none" | "promptAndOutput" | undefined, [import("convex/values").VLiteral<"all", "required">, import("convex/values").VLiteral<"none", "required">, import("convex/values").VLiteral<"promptAndOutput", "required">], "optional", never>; }, "required", "saveMessages">; export declare const vCallSettings: import("convex/values").VObject<{ headers?: Record | undefined; maxOutputTokens?: number | undefined; temperature?: number | undefined; topP?: number | undefined; topK?: number | undefined; presencePenalty?: number | undefined; frequencyPenalty?: number | undefined; stopSequences?: string[] | undefined; seed?: number | undefined; maxRetries?: number | undefined; }, { maxOutputTokens: import("convex/values").VFloat64; temperature: import("convex/values").VFloat64; topP: import("convex/values").VFloat64; topK: import("convex/values").VFloat64; presencePenalty: import("convex/values").VFloat64; frequencyPenalty: import("convex/values").VFloat64; stopSequences: import("convex/values").VArray, "optional">; seed: import("convex/values").VFloat64; maxRetries: import("convex/values").VFloat64; headers: import("convex/values").VRecord | undefined, import("convex/values").VString, import("convex/values").VString, "optional", string>; }, "required", "headers" | `headers.${string}` | "maxOutputTokens" | "temperature" | "topP" | "topK" | "presencePenalty" | "frequencyPenalty" | "stopSequences" | "seed" | "maxRetries">; export type CallSettings = Infer; export declare const vTextArgs: import("convex/values").VObject<{ userId?: string | undefined; threadId?: string | undefined; providerOptions?: Record> | undefined; system?: string | undefined; messages?: ({ providerOptions?: Record> | undefined; role: "user"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[]; } | { providerOptions?: Record> | undefined; role: "assistant"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[]; } | { providerOptions?: Record> | undefined; role: "tool"; content: ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[]; } | { providerOptions?: Record> | undefined; role: "system"; content: string; })[] | undefined; stream?: boolean | undefined; toolChoice?: "required" | "none" | "auto" | { type: "tool"; toolName: string; } | undefined; maxSteps?: number | undefined; experimental_continueSteps?: boolean | undefined; prompt?: string | undefined; promptMessageId?: string | undefined; contextOptions?: { excludeToolMessages?: boolean | undefined; recentMessages?: number | undefined; searchOptions?: { textSearch?: boolean | undefined; vectorSearch?: boolean | undefined; vectorScoreThreshold?: number | undefined; messageRange?: { before: number; after: number; } | undefined; limit: number; } | undefined; searchOtherThreads?: boolean | undefined; } | undefined; storageOptions?: { saveMessages?: "all" | "none" | "promptAndOutput" | undefined; } | undefined; callSettings?: { headers?: Record | undefined; maxOutputTokens?: number | undefined; temperature?: number | undefined; topP?: number | undefined; topK?: number | undefined; presencePenalty?: number | undefined; frequencyPenalty?: number | undefined; stopSequences?: string[] | undefined; seed?: number | undefined; maxRetries?: number | undefined; } | undefined; }, { stream: import("convex/values").VBoolean; toolChoice: import("convex/values").VUnion<"required" | "none" | "auto" | { type: "tool"; toolName: string; } | undefined, [import("convex/values").VLiteral<"auto", "required">, import("convex/values").VLiteral<"none", "required">, import("convex/values").VLiteral<"required", "required">, import("convex/values").VObject<{ type: "tool"; toolName: string; }, { type: import("convex/values").VLiteral<"tool", "required">; toolName: import("convex/values").VString; }, "required", "type" | "toolName">], "optional", "type" | "toolName">; maxSteps: import("convex/values").VFloat64; experimental_continueSteps: import("convex/values").VBoolean; system: import("convex/values").VString; prompt: import("convex/values").VString; messages: import("convex/values").VArray<({ providerOptions?: Record> | undefined; role: "user"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[]; } | { providerOptions?: Record> | undefined; role: "assistant"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[]; } | { providerOptions?: Record> | undefined; role: "tool"; content: ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[]; } | { providerOptions?: Record> | undefined; role: "system"; content: string; })[] | undefined, import("convex/values").VUnion<{ providerOptions?: Record> | undefined; role: "user"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[]; } | { providerOptions?: Record> | undefined; role: "assistant"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[]; } | { providerOptions?: Record> | undefined; role: "tool"; content: ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[]; } | { providerOptions?: Record> | undefined; role: "system"; content: string; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; role: "user"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[]; }, { role: import("convex/values").VLiteral<"user", "required">; content: import("convex/values").VUnion> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[], [import("convex/values").VString, import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"image", "required">; image: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "image" | "mediaType" | "mimeType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"file", "required">; data: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; filename: import("convex/values").VString; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "mimeType" | "data" | "filename">], "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "image" | "mediaType" | "mimeType" | "data" | "filename">, "required">], "required", never>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; role: "assistant"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[]; }, { role: import("convex/values").VLiteral<"assistant", "required">; content: import("convex/values").VUnion> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[], [import("convex/values").VString, import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"file", "required">; data: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; filename: import("convex/values").VString; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "mimeType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; }, { type: import("convex/values").VLiteral<"reasoning", "required">; text: import("convex/values").VString; signature: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "signature">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; }, { type: import("convex/values").VLiteral<"redacted-reasoning", "required">; data: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "data">, import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; }, { type: import("convex/values").VLiteral<"tool-call", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; input: import("convex/values").VAny; /** @deprecated Use `input` instead. */ args: import("convex/values").VAny; providerExecuted: import("convex/values").VBoolean; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; }, { type: import("convex/values").VLiteral<"tool-call", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; /** @deprecated Use `input` instead. */ args: import("convex/values").VAny; input: import("convex/values").VAny; providerExecuted: import("convex/values").VBoolean; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>], "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; }, { type: import("convex/values").VLiteral<"tool-result", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; output: import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; value: string; }, { type: import("convex/values").VLiteral<"text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "json"; value: any; }, { type: import("convex/values").VLiteral<"json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-text"; value: string; }, { type: import("convex/values").VLiteral<"error-text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-json"; value: any; }, { type: import("convex/values").VLiteral<"error-json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; }, { type: import("convex/values").VLiteral<"execution-denied", "required">; reason: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "reason">, import("convex/values").VObject<{ type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; }, { type: import("convex/values").VLiteral<"content", "required">; value: import("convex/values").VArray<({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | `providerOptions.${string}`>, import("convex/values").VObject<{ type: "media"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"media", "required">; data: import("convex/values").VString; mediaType: import("convex/values").VString; }, "required", "type" | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"file-data", "required">; /** Base-64 encoded */ data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-url"; url: string; }, { type: import("convex/values").VLiteral<"file-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; }, { type: import("convex/values").VLiteral<"file-id", "required">; /** * ID of the file. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"image-data", "required">; data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-url"; url: string; }, { type: import("convex/values").VLiteral<"image-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; }, { /** * Images that are referenced using a provider file id. */ type: import("convex/values").VLiteral<"image-file-id", "required">; /** * Image that is referenced using a provider file id. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "custom"; }, { /** * Custom content part. This can be used to implement * provider-specific content parts. */ type: import("convex/values").VLiteral<"custom", "required">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}`>], "required", "type" | "providerOptions" | "text" | `providerOptions.${string}` | "mediaType" | "data" | "filename" | "url" | "fileId" | `fileId.${string}`>, "required">; }, "required", "type" | "value">], "optional", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}` | "reason">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerExecuted: import("convex/values").VBoolean; result: import("convex/values").VAny; isError: import("convex/values").VBoolean; args: import("convex/values").VAny; experimental_content: import("convex/values").VArray<({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined, import("convex/values").VUnion<{ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; }, [import("convex/values").VObject<{ type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; }, "required", "type" | "text">, import("convex/values").VObject<{ mimeType?: string | undefined; type: "image"; data: string; }, { type: import("convex/values").VLiteral<"image", "required">; data: import("convex/values").VString; mimeType: import("convex/values").VString; }, "required", "type" | "mimeType" | "data">], "required", "type" | "text" | "mimeType" | "data">, "optional">; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "args" | "providerExecuted" | `args.${string}` | "output" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}`>, import("convex/values").VUnion<{ title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; }, [import("convex/values").VObject<{ title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; }, { type: import("convex/values").VLiteral<"source", "required">; sourceType: import("convex/values").VLiteral<"url", "required">; id: import("convex/values").VString; url: import("convex/values").VString; title: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "url" | "sourceType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; }, { type: import("convex/values").VLiteral<"source", "required">; sourceType: import("convex/values").VLiteral<"document", "required">; id: import("convex/values").VString; mediaType: import("convex/values").VString; title: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "filename" | "sourceType">], "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "filename" | "url" | "sourceType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; }, { type: import("convex/values").VLiteral<"tool-approval-request", "required">; /** * ID of the tool approval. */ approvalId: import("convex/values").VString; /** * ID of the tool call that the approval request is for. */ toolCallId: import("convex/values").VString; /** @todo Should we continue to include? */ providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; /** @todo Should we continue to include? */ providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "approvalId">], "required", "id" | "title" | "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "mimeType" | "data" | "filename" | "signature" | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}` | "output" | "url" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}` | "sourceType" | "approvalId">, "required">], "required", never>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; role: "tool"; content: ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[]; }, { role: import("convex/values").VLiteral<"tool", "required">; content: import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; }, { type: import("convex/values").VLiteral<"tool-result", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; output: import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; value: string; }, { type: import("convex/values").VLiteral<"text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "json"; value: any; }, { type: import("convex/values").VLiteral<"json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-text"; value: string; }, { type: import("convex/values").VLiteral<"error-text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-json"; value: any; }, { type: import("convex/values").VLiteral<"error-json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; }, { type: import("convex/values").VLiteral<"execution-denied", "required">; reason: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "reason">, import("convex/values").VObject<{ type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; }, { type: import("convex/values").VLiteral<"content", "required">; value: import("convex/values").VArray<({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | `providerOptions.${string}`>, import("convex/values").VObject<{ type: "media"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"media", "required">; data: import("convex/values").VString; mediaType: import("convex/values").VString; }, "required", "type" | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"file-data", "required">; /** Base-64 encoded */ data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-url"; url: string; }, { type: import("convex/values").VLiteral<"file-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; }, { type: import("convex/values").VLiteral<"file-id", "required">; /** * ID of the file. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"image-data", "required">; data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-url"; url: string; }, { type: import("convex/values").VLiteral<"image-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; }, { /** * Images that are referenced using a provider file id. */ type: import("convex/values").VLiteral<"image-file-id", "required">; /** * Image that is referenced using a provider file id. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "custom"; }, { /** * Custom content part. This can be used to implement * provider-specific content parts. */ type: import("convex/values").VLiteral<"custom", "required">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}`>], "required", "type" | "providerOptions" | "text" | `providerOptions.${string}` | "mediaType" | "data" | "filename" | "url" | "fileId" | `fileId.${string}`>, "required">; }, "required", "type" | "value">], "optional", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}` | "reason">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerExecuted: import("convex/values").VBoolean; result: import("convex/values").VAny; isError: import("convex/values").VBoolean; args: import("convex/values").VAny; experimental_content: import("convex/values").VArray<({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined, import("convex/values").VUnion<{ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; }, [import("convex/values").VObject<{ type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; }, "required", "type" | "text">, import("convex/values").VObject<{ mimeType?: string | undefined; type: "image"; data: string; }, { type: import("convex/values").VLiteral<"image", "required">; data: import("convex/values").VString; mimeType: import("convex/values").VString; }, "required", "type" | "mimeType" | "data">], "required", "type" | "text" | "mimeType" | "data">, "optional">; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "args" | "providerExecuted" | `args.${string}` | "output" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; }, { type: import("convex/values").VLiteral<"tool-approval-response", "required">; /** * ID of the tool approval. */ approvalId: import("convex/values").VString; /** * Flag indicating whether the approval was granted or denied. */ approved: import("convex/values").VBoolean; /** * Optional reason for the approval or denial. */ reason: import("convex/values").VString; /** * Flag indicating whether the tool call is provider-executed. * Only provider-executed tool approval responses should be sent to the model. */ providerExecuted: import("convex/values").VBoolean; /** @todo Should we continue to include? */ providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; /** @todo Should we continue to include? */ providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "providerExecuted" | "reason" | "approvalId" | "approved">], "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "args" | "providerExecuted" | `args.${string}` | "output" | "reason" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}` | "approvalId" | "approved">, "required">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; role: "system"; content: string; }, { role: import("convex/values").VLiteral<"system", "required">; content: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">], "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">, "optional">; promptMessageId: import("convex/values").VString; userId: import("convex/values").VString; threadId: import("convex/values").VString; contextOptions: import("convex/values").VObject<{ excludeToolMessages?: boolean | undefined; recentMessages?: number | undefined; searchOptions?: { textSearch?: boolean | undefined; vectorSearch?: boolean | undefined; vectorScoreThreshold?: number | undefined; messageRange?: { before: number; after: number; } | undefined; limit: number; } | undefined; searchOtherThreads?: boolean | undefined; } | undefined, { excludeToolMessages: import("convex/values").VBoolean; recentMessages: import("convex/values").VFloat64; searchOptions: import("convex/values").VObject<{ textSearch?: boolean | undefined; vectorSearch?: boolean | undefined; vectorScoreThreshold?: number | undefined; messageRange?: { before: number; after: number; } | undefined; limit: number; } | undefined, { limit: import("convex/values").VFloat64; textSearch: import("convex/values").VBoolean; vectorSearch: import("convex/values").VBoolean; vectorScoreThreshold: import("convex/values").VFloat64; messageRange: import("convex/values").VObject<{ before: number; after: number; } | undefined, { before: import("convex/values").VFloat64; after: import("convex/values").VFloat64; }, "optional", "before" | "after">; }, "optional", "limit" | "textSearch" | "vectorSearch" | "vectorScoreThreshold" | "messageRange" | "messageRange.before" | "messageRange.after">; searchOtherThreads: import("convex/values").VBoolean; }, "optional", "excludeToolMessages" | "recentMessages" | "searchOptions" | "searchOtherThreads" | "searchOptions.limit" | "searchOptions.textSearch" | "searchOptions.vectorSearch" | "searchOptions.vectorScoreThreshold" | "searchOptions.messageRange" | "searchOptions.messageRange.before" | "searchOptions.messageRange.after">; storageOptions: import("convex/values").VObject<{ saveMessages?: "all" | "none" | "promptAndOutput" | undefined; } | undefined, { saveMessages: import("convex/values").VUnion<"all" | "none" | "promptAndOutput" | undefined, [import("convex/values").VLiteral<"all", "required">, import("convex/values").VLiteral<"none", "required">, import("convex/values").VLiteral<"promptAndOutput", "required">], "optional", never>; }, "optional", "saveMessages">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; callSettings: import("convex/values").VObject<{ headers?: Record | undefined; maxOutputTokens?: number | undefined; temperature?: number | undefined; topP?: number | undefined; topK?: number | undefined; presencePenalty?: number | undefined; frequencyPenalty?: number | undefined; stopSequences?: string[] | undefined; seed?: number | undefined; maxRetries?: number | undefined; } | undefined, { maxOutputTokens: import("convex/values").VFloat64; temperature: import("convex/values").VFloat64; topP: import("convex/values").VFloat64; topK: import("convex/values").VFloat64; presencePenalty: import("convex/values").VFloat64; frequencyPenalty: import("convex/values").VFloat64; stopSequences: import("convex/values").VArray, "optional">; seed: import("convex/values").VFloat64; maxRetries: import("convex/values").VFloat64; headers: import("convex/values").VRecord | undefined, import("convex/values").VString, import("convex/values").VString, "optional", string>; }, "optional", "headers" | `headers.${string}` | "maxOutputTokens" | "temperature" | "topP" | "topK" | "presencePenalty" | "frequencyPenalty" | "stopSequences" | "seed" | "maxRetries">; }, "required", "userId" | "threadId" | "providerOptions" | `providerOptions.${string}` | "system" | "messages" | "stream" | "toolChoice" | "maxSteps" | "experimental_continueSteps" | "prompt" | "promptMessageId" | "contextOptions" | "storageOptions" | "callSettings" | "toolChoice.type" | "toolChoice.toolName" | "contextOptions.excludeToolMessages" | "contextOptions.recentMessages" | "contextOptions.searchOptions" | "contextOptions.searchOtherThreads" | "contextOptions.searchOptions.limit" | "contextOptions.searchOptions.textSearch" | "contextOptions.searchOptions.vectorSearch" | "contextOptions.searchOptions.vectorScoreThreshold" | "contextOptions.searchOptions.messageRange" | "contextOptions.searchOptions.messageRange.before" | "contextOptions.searchOptions.messageRange.after" | "storageOptions.saveMessages" | "callSettings.headers" | `callSettings.headers.${string}` | "callSettings.maxOutputTokens" | "callSettings.temperature" | "callSettings.topP" | "callSettings.topK" | "callSettings.presencePenalty" | "callSettings.frequencyPenalty" | "callSettings.stopSequences" | "callSettings.seed" | "callSettings.maxRetries">; export type TextArgs = Infer; export declare const vSafeObjectArgs: import("convex/values").VObject<{ userId?: string | undefined; threadId?: string | undefined; providerOptions?: Record> | undefined; system?: string | undefined; messages?: ({ providerOptions?: Record> | undefined; role: "user"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[]; } | { providerOptions?: Record> | undefined; role: "assistant"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[]; } | { providerOptions?: Record> | undefined; role: "tool"; content: ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[]; } | { providerOptions?: Record> | undefined; role: "system"; content: string; })[] | undefined; prompt?: string | undefined; promptMessageId?: string | undefined; contextOptions?: { excludeToolMessages?: boolean | undefined; recentMessages?: number | undefined; searchOptions?: { textSearch?: boolean | undefined; vectorSearch?: boolean | undefined; vectorScoreThreshold?: number | undefined; messageRange?: { before: number; after: number; } | undefined; limit: number; } | undefined; searchOtherThreads?: boolean | undefined; } | undefined; storageOptions?: { saveMessages?: "all" | "none" | "promptAndOutput" | undefined; } | undefined; callSettings?: { headers?: Record | undefined; maxOutputTokens?: number | undefined; temperature?: number | undefined; topP?: number | undefined; topK?: number | undefined; presencePenalty?: number | undefined; frequencyPenalty?: number | undefined; stopSequences?: string[] | undefined; seed?: number | undefined; maxRetries?: number | undefined; } | undefined; }, { system: import("convex/values").VString; prompt: import("convex/values").VString; messages: import("convex/values").VArray<({ providerOptions?: Record> | undefined; role: "user"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[]; } | { providerOptions?: Record> | undefined; role: "assistant"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[]; } | { providerOptions?: Record> | undefined; role: "tool"; content: ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[]; } | { providerOptions?: Record> | undefined; role: "system"; content: string; })[] | undefined, import("convex/values").VUnion<{ providerOptions?: Record> | undefined; role: "user"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[]; } | { providerOptions?: Record> | undefined; role: "assistant"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[]; } | { providerOptions?: Record> | undefined; role: "tool"; content: ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[]; } | { providerOptions?: Record> | undefined; role: "system"; content: string; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; role: "user"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[]; }, { role: import("convex/values").VLiteral<"user", "required">; content: import("convex/values").VUnion> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[], [import("convex/values").VString, import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"image", "required">; image: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "image" | "mediaType" | "mimeType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"file", "required">; data: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; filename: import("convex/values").VString; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "mimeType" | "data" | "filename">], "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "image" | "mediaType" | "mimeType" | "data" | "filename">, "required">], "required", never>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; role: "assistant"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[]; }, { role: import("convex/values").VLiteral<"assistant", "required">; content: import("convex/values").VUnion> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[], [import("convex/values").VString, import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"file", "required">; data: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; filename: import("convex/values").VString; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "mimeType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; }, { type: import("convex/values").VLiteral<"reasoning", "required">; text: import("convex/values").VString; signature: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "signature">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; }, { type: import("convex/values").VLiteral<"redacted-reasoning", "required">; data: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "data">, import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; }, { type: import("convex/values").VLiteral<"tool-call", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; input: import("convex/values").VAny; /** @deprecated Use `input` instead. */ args: import("convex/values").VAny; providerExecuted: import("convex/values").VBoolean; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; }, { type: import("convex/values").VLiteral<"tool-call", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; /** @deprecated Use `input` instead. */ args: import("convex/values").VAny; input: import("convex/values").VAny; providerExecuted: import("convex/values").VBoolean; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>], "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; }, { type: import("convex/values").VLiteral<"tool-result", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; output: import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; value: string; }, { type: import("convex/values").VLiteral<"text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "json"; value: any; }, { type: import("convex/values").VLiteral<"json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-text"; value: string; }, { type: import("convex/values").VLiteral<"error-text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-json"; value: any; }, { type: import("convex/values").VLiteral<"error-json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; }, { type: import("convex/values").VLiteral<"execution-denied", "required">; reason: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "reason">, import("convex/values").VObject<{ type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; }, { type: import("convex/values").VLiteral<"content", "required">; value: import("convex/values").VArray<({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | `providerOptions.${string}`>, import("convex/values").VObject<{ type: "media"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"media", "required">; data: import("convex/values").VString; mediaType: import("convex/values").VString; }, "required", "type" | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"file-data", "required">; /** Base-64 encoded */ data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-url"; url: string; }, { type: import("convex/values").VLiteral<"file-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; }, { type: import("convex/values").VLiteral<"file-id", "required">; /** * ID of the file. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"image-data", "required">; data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-url"; url: string; }, { type: import("convex/values").VLiteral<"image-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; }, { /** * Images that are referenced using a provider file id. */ type: import("convex/values").VLiteral<"image-file-id", "required">; /** * Image that is referenced using a provider file id. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "custom"; }, { /** * Custom content part. This can be used to implement * provider-specific content parts. */ type: import("convex/values").VLiteral<"custom", "required">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}`>], "required", "type" | "providerOptions" | "text" | `providerOptions.${string}` | "mediaType" | "data" | "filename" | "url" | "fileId" | `fileId.${string}`>, "required">; }, "required", "type" | "value">], "optional", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}` | "reason">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerExecuted: import("convex/values").VBoolean; result: import("convex/values").VAny; isError: import("convex/values").VBoolean; args: import("convex/values").VAny; experimental_content: import("convex/values").VArray<({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined, import("convex/values").VUnion<{ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; }, [import("convex/values").VObject<{ type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; }, "required", "type" | "text">, import("convex/values").VObject<{ mimeType?: string | undefined; type: "image"; data: string; }, { type: import("convex/values").VLiteral<"image", "required">; data: import("convex/values").VString; mimeType: import("convex/values").VString; }, "required", "type" | "mimeType" | "data">], "required", "type" | "text" | "mimeType" | "data">, "optional">; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "args" | "providerExecuted" | `args.${string}` | "output" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}`>, import("convex/values").VUnion<{ title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; }, [import("convex/values").VObject<{ title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; }, { type: import("convex/values").VLiteral<"source", "required">; sourceType: import("convex/values").VLiteral<"url", "required">; id: import("convex/values").VString; url: import("convex/values").VString; title: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "url" | "sourceType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; }, { type: import("convex/values").VLiteral<"source", "required">; sourceType: import("convex/values").VLiteral<"document", "required">; id: import("convex/values").VString; mediaType: import("convex/values").VString; title: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "filename" | "sourceType">], "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "filename" | "url" | "sourceType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; }, { type: import("convex/values").VLiteral<"tool-approval-request", "required">; /** * ID of the tool approval. */ approvalId: import("convex/values").VString; /** * ID of the tool call that the approval request is for. */ toolCallId: import("convex/values").VString; /** @todo Should we continue to include? */ providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; /** @todo Should we continue to include? */ providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "approvalId">], "required", "id" | "title" | "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "mimeType" | "data" | "filename" | "signature" | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}` | "output" | "url" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}` | "sourceType" | "approvalId">, "required">], "required", never>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; role: "tool"; content: ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[]; }, { role: import("convex/values").VLiteral<"tool", "required">; content: import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; }, { type: import("convex/values").VLiteral<"tool-result", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; output: import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; value: string; }, { type: import("convex/values").VLiteral<"text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "json"; value: any; }, { type: import("convex/values").VLiteral<"json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-text"; value: string; }, { type: import("convex/values").VLiteral<"error-text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-json"; value: any; }, { type: import("convex/values").VLiteral<"error-json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; }, { type: import("convex/values").VLiteral<"execution-denied", "required">; reason: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "reason">, import("convex/values").VObject<{ type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; }, { type: import("convex/values").VLiteral<"content", "required">; value: import("convex/values").VArray<({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | `providerOptions.${string}`>, import("convex/values").VObject<{ type: "media"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"media", "required">; data: import("convex/values").VString; mediaType: import("convex/values").VString; }, "required", "type" | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"file-data", "required">; /** Base-64 encoded */ data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-url"; url: string; }, { type: import("convex/values").VLiteral<"file-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; }, { type: import("convex/values").VLiteral<"file-id", "required">; /** * ID of the file. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"image-data", "required">; data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-url"; url: string; }, { type: import("convex/values").VLiteral<"image-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; }, { /** * Images that are referenced using a provider file id. */ type: import("convex/values").VLiteral<"image-file-id", "required">; /** * Image that is referenced using a provider file id. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "custom"; }, { /** * Custom content part. This can be used to implement * provider-specific content parts. */ type: import("convex/values").VLiteral<"custom", "required">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}`>], "required", "type" | "providerOptions" | "text" | `providerOptions.${string}` | "mediaType" | "data" | "filename" | "url" | "fileId" | `fileId.${string}`>, "required">; }, "required", "type" | "value">], "optional", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}` | "reason">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerExecuted: import("convex/values").VBoolean; result: import("convex/values").VAny; isError: import("convex/values").VBoolean; args: import("convex/values").VAny; experimental_content: import("convex/values").VArray<({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined, import("convex/values").VUnion<{ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; }, [import("convex/values").VObject<{ type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; }, "required", "type" | "text">, import("convex/values").VObject<{ mimeType?: string | undefined; type: "image"; data: string; }, { type: import("convex/values").VLiteral<"image", "required">; data: import("convex/values").VString; mimeType: import("convex/values").VString; }, "required", "type" | "mimeType" | "data">], "required", "type" | "text" | "mimeType" | "data">, "optional">; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "args" | "providerExecuted" | `args.${string}` | "output" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; }, { type: import("convex/values").VLiteral<"tool-approval-response", "required">; /** * ID of the tool approval. */ approvalId: import("convex/values").VString; /** * Flag indicating whether the approval was granted or denied. */ approved: import("convex/values").VBoolean; /** * Optional reason for the approval or denial. */ reason: import("convex/values").VString; /** * Flag indicating whether the tool call is provider-executed. * Only provider-executed tool approval responses should be sent to the model. */ providerExecuted: import("convex/values").VBoolean; /** @todo Should we continue to include? */ providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; /** @todo Should we continue to include? */ providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "providerExecuted" | "reason" | "approvalId" | "approved">], "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "args" | "providerExecuted" | `args.${string}` | "output" | "reason" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}` | "approvalId" | "approved">, "required">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; role: "system"; content: string; }, { role: import("convex/values").VLiteral<"system", "required">; content: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">], "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">, "optional">; promptMessageId: import("convex/values").VString; userId: import("convex/values").VString; threadId: import("convex/values").VString; contextOptions: import("convex/values").VObject<{ excludeToolMessages?: boolean | undefined; recentMessages?: number | undefined; searchOptions?: { textSearch?: boolean | undefined; vectorSearch?: boolean | undefined; vectorScoreThreshold?: number | undefined; messageRange?: { before: number; after: number; } | undefined; limit: number; } | undefined; searchOtherThreads?: boolean | undefined; } | undefined, { excludeToolMessages: import("convex/values").VBoolean; recentMessages: import("convex/values").VFloat64; searchOptions: import("convex/values").VObject<{ textSearch?: boolean | undefined; vectorSearch?: boolean | undefined; vectorScoreThreshold?: number | undefined; messageRange?: { before: number; after: number; } | undefined; limit: number; } | undefined, { limit: import("convex/values").VFloat64; textSearch: import("convex/values").VBoolean; vectorSearch: import("convex/values").VBoolean; vectorScoreThreshold: import("convex/values").VFloat64; messageRange: import("convex/values").VObject<{ before: number; after: number; } | undefined, { before: import("convex/values").VFloat64; after: import("convex/values").VFloat64; }, "optional", "before" | "after">; }, "optional", "limit" | "textSearch" | "vectorSearch" | "vectorScoreThreshold" | "messageRange" | "messageRange.before" | "messageRange.after">; searchOtherThreads: import("convex/values").VBoolean; }, "optional", "excludeToolMessages" | "recentMessages" | "searchOptions" | "searchOtherThreads" | "searchOptions.limit" | "searchOptions.textSearch" | "searchOptions.vectorSearch" | "searchOptions.vectorScoreThreshold" | "searchOptions.messageRange" | "searchOptions.messageRange.before" | "searchOptions.messageRange.after">; storageOptions: import("convex/values").VObject<{ saveMessages?: "all" | "none" | "promptAndOutput" | undefined; } | undefined, { saveMessages: import("convex/values").VUnion<"all" | "none" | "promptAndOutput" | undefined, [import("convex/values").VLiteral<"all", "required">, import("convex/values").VLiteral<"none", "required">, import("convex/values").VLiteral<"promptAndOutput", "required">], "optional", never>; }, "optional", "saveMessages">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; callSettings: import("convex/values").VObject<{ headers?: Record | undefined; maxOutputTokens?: number | undefined; temperature?: number | undefined; topP?: number | undefined; topK?: number | undefined; presencePenalty?: number | undefined; frequencyPenalty?: number | undefined; stopSequences?: string[] | undefined; seed?: number | undefined; maxRetries?: number | undefined; } | undefined, { maxOutputTokens: import("convex/values").VFloat64; temperature: import("convex/values").VFloat64; topP: import("convex/values").VFloat64; topK: import("convex/values").VFloat64; presencePenalty: import("convex/values").VFloat64; frequencyPenalty: import("convex/values").VFloat64; stopSequences: import("convex/values").VArray, "optional">; seed: import("convex/values").VFloat64; maxRetries: import("convex/values").VFloat64; headers: import("convex/values").VRecord | undefined, import("convex/values").VString, import("convex/values").VString, "optional", string>; }, "optional", "headers" | `headers.${string}` | "maxOutputTokens" | "temperature" | "topP" | "topK" | "presencePenalty" | "frequencyPenalty" | "stopSequences" | "seed" | "maxRetries">; }, "required", "userId" | "threadId" | "providerOptions" | `providerOptions.${string}` | "system" | "messages" | "prompt" | "promptMessageId" | "contextOptions" | "storageOptions" | "callSettings" | "contextOptions.excludeToolMessages" | "contextOptions.recentMessages" | "contextOptions.searchOptions" | "contextOptions.searchOtherThreads" | "contextOptions.searchOptions.limit" | "contextOptions.searchOptions.textSearch" | "contextOptions.searchOptions.vectorSearch" | "contextOptions.searchOptions.vectorScoreThreshold" | "contextOptions.searchOptions.messageRange" | "contextOptions.searchOptions.messageRange.before" | "contextOptions.searchOptions.messageRange.after" | "storageOptions.saveMessages" | "callSettings.headers" | `callSettings.headers.${string}` | "callSettings.maxOutputTokens" | "callSettings.temperature" | "callSettings.topP" | "callSettings.topK" | "callSettings.presencePenalty" | "callSettings.frequencyPenalty" | "callSettings.stopSequences" | "callSettings.seed" | "callSettings.maxRetries">; export type SafeObjectArgs = Infer; export declare const vEmbeddingsWithMetadata: import("convex/values").VObject<{ model: string; dimension: 128 | 256 | 512 | 768 | 1024 | 1408 | 1536 | 2048 | 3072 | 4096; vectors: (number[] | null)[]; }, { vectors: import("convex/values").VArray<(number[] | null)[], import("convex/values").VUnion, "required">, import("convex/values").VNull], "required", never>, "required">; dimension: import("convex/values").VUnion<128 | 256 | 512 | 768 | 1024 | 1408 | 1536 | 2048 | 3072 | 4096, NoInfer<[import("convex/values").VLiteral<128, "required">, import("convex/values").VLiteral<256, "required">, import("convex/values").VLiteral<512, "required">, import("convex/values").VLiteral<768, "required">, import("convex/values").VLiteral<1024, "required">, import("convex/values").VLiteral<1408, "required">, import("convex/values").VLiteral<1536, "required">, import("convex/values").VLiteral<2048, "required">, import("convex/values").VLiteral<3072, "required">, import("convex/values").VLiteral<4096, "required">]>, "required", never>; model: import("convex/values").VString; }, "required", "model" | "dimension" | "vectors">; export type EmbeddingsWithMetadata = Infer; export declare function vPaginationResult>(itemValidator: T): import("convex/values").VObject<{ splitCursor?: string | null | undefined; pageStatus?: "SplitRecommended" | "SplitRequired" | null | undefined; page: T["type"][]; continueCursor: string; isDone: boolean; }, { page: import("convex/values").VArray; continueCursor: import("convex/values").VString; isDone: import("convex/values").VBoolean; splitCursor: import("convex/values").VUnion, import("convex/values").VNull], "optional", never>; pageStatus: import("convex/values").VUnion<"SplitRecommended" | "SplitRequired" | null | undefined, [import("convex/values").VLiteral<"SplitRecommended", "required">, import("convex/values").VLiteral<"SplitRequired", "required">, import("convex/values").VNull], "optional", never>; }, "required", "page" | "continueCursor" | "isDone" | "splitCursor" | "pageStatus">; export declare const vStreamCursor: import("convex/values").VObject<{ streamId: string; cursor: number; }, { streamId: import("convex/values").VString; cursor: import("convex/values").VFloat64; }, "required", "streamId" | "cursor">; export type StreamCursor = Infer; export declare const vStreamArgs: import("convex/values").VUnion<{ startOrder?: number | undefined; kind: "list"; } | { kind: "deltas"; cursors: { streamId: string; cursor: number; }[]; } | undefined, [import("convex/values").VObject<{ startOrder?: number | undefined; kind: "list"; }, { kind: import("convex/values").VLiteral<"list", "required">; startOrder: import("convex/values").VFloat64; }, "required", "kind" | "startOrder">, import("convex/values").VObject<{ kind: "deltas"; cursors: { streamId: string; cursor: number; }[]; }, { kind: import("convex/values").VLiteral<"deltas", "required">; cursors: import("convex/values").VArray<{ streamId: string; cursor: number; }[], import("convex/values").VObject<{ streamId: string; cursor: number; }, { streamId: import("convex/values").VString; cursor: import("convex/values").VFloat64; }, "required", "streamId" | "cursor">, "required">; }, "required", "kind" | "cursors">], "optional", "kind" | "startOrder" | "cursors">; export type StreamArgs = Infer; export declare const vStreamMessage: import("convex/values").VObject<{ userId?: string | undefined; agentName?: string | undefined; model?: string | undefined; provider?: string | undefined; providerOptions?: Record> | undefined; format?: "UIMessageChunk" | "TextStreamPart" | undefined; status: "streaming" | "finished" | "aborted"; order: number; stepOrder: number; streamId: string; }, { streamId: import("convex/values").VString; status: import("convex/values").VUnion<"streaming" | "finished" | "aborted", [import("convex/values").VLiteral<"streaming", "required">, import("convex/values").VLiteral<"finished", "required">, import("convex/values").VLiteral<"aborted", "required">], "required", never>; format: import("convex/values").VUnion<"UIMessageChunk" | "TextStreamPart" | undefined, [import("convex/values").VLiteral<"UIMessageChunk", "required">, import("convex/values").VLiteral<"TextStreamPart", "required">], "optional", never>; order: import("convex/values").VFloat64; stepOrder: import("convex/values").VFloat64; userId: import("convex/values").VString; agentName: import("convex/values").VString; model: import("convex/values").VString; provider: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "status" | "userId" | "order" | "stepOrder" | "agentName" | "model" | "provider" | "providerOptions" | `providerOptions.${string}` | "format" | "streamId">; export type StreamMessage = Infer; export declare const vStreamDelta: import("convex/values").VObject<{ streamId: string; start: number; end: number; parts: any[]; }, { streamId: import("convex/values").VString; start: import("convex/values").VFloat64; end: import("convex/values").VFloat64; parts: import("convex/values").VArray, "required">; }, "required", "streamId" | "start" | "end" | "parts">; export type StreamDelta = Infer; export declare const vMessageDoc: import("convex/values").VObject<{ id?: string | undefined; userId?: string | undefined; embeddingId?: string | undefined; fileIds?: string[] | undefined; error?: string | undefined; agentName?: string | undefined; model?: string | undefined; provider?: string | undefined; providerOptions?: Record> | undefined; message?: { providerOptions?: Record> | undefined; role: "user"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[]; } | { providerOptions?: Record> | undefined; role: "assistant"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[]; } | { providerOptions?: Record> | undefined; role: "tool"; content: ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[]; } | { providerOptions?: Record> | undefined; role: "system"; content: string; } | undefined; text?: string | undefined; providerMetadata?: Record> | undefined; reasoning?: string | undefined; usage?: { reasoningTokens?: number | undefined; cachedInputTokens?: number | undefined; promptTokens: number; completionTokens: number; totalTokens: number; } | undefined; sources?: ({ title?: string | undefined; type?: "source" | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; })[] | undefined; warnings?: ({ details?: string | undefined; type: "unsupported-setting"; setting: string; } | { details?: string | undefined; type: "unsupported-tool"; tool: any; } | { type: "other"; message: string; })[] | undefined; finishReason?: "error" | "length" | "other" | "stop" | "content-filter" | "tool-calls" | "unknown" | undefined; reasoningDetails?: ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { signature?: string | undefined; type: "text"; text: string; } | { type: "redacted"; data: string; })[] | undefined; status: "pending" | "success" | "failed"; order: number; _creationTime: number; threadId: string; stepOrder: number; tool: boolean; _id: string; }, { _id: import("convex/values").VString; _creationTime: import("convex/values").VFloat64; userId: import("convex/values").VString; threadId: import("convex/values").VString; order: import("convex/values").VFloat64; stepOrder: import("convex/values").VFloat64; embeddingId: import("convex/values").VString; fileIds: import("convex/values").VArray, "optional">; error: import("convex/values").VString; status: import("convex/values").VUnion<"pending" | "success" | "failed", [import("convex/values").VLiteral<"pending", "required">, import("convex/values").VLiteral<"success", "required">, import("convex/values").VLiteral<"failed", "required">], "required", never>; agentName: import("convex/values").VString; model: import("convex/values").VString; provider: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; message: import("convex/values").VUnion<{ providerOptions?: Record> | undefined; role: "user"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[]; } | { providerOptions?: Record> | undefined; role: "assistant"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[]; } | { providerOptions?: Record> | undefined; role: "tool"; content: ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[]; } | { providerOptions?: Record> | undefined; role: "system"; content: string; } | undefined, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; role: "user"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[]; }, { role: import("convex/values").VLiteral<"user", "required">; content: import("convex/values").VUnion> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[], [import("convex/values").VString, import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; type: "image"; image: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"image", "required">; image: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "image" | "mediaType" | "mimeType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"file", "required">; data: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; filename: import("convex/values").VString; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "mimeType" | "data" | "filename">], "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "image" | "mediaType" | "mimeType" | "data" | "filename">, "required">], "required", never>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; role: "assistant"; content: string | ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[]; }, { role: import("convex/values").VLiteral<"assistant", "required">; content: import("convex/values").VUnion> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[], [import("convex/values").VString, import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; mediaType?: string | undefined; mimeType?: string | undefined; filename?: string | undefined; type: "file"; data: string | ArrayBuffer; }, { type: import("convex/values").VLiteral<"file", "required">; data: import("convex/values").VUnion, import("convex/values").VBytes], "required", never>; filename: import("convex/values").VString; mediaType: import("convex/values").VString; /** @deprecated Use `mediaType` instead. */ mimeType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "mimeType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; }, { type: import("convex/values").VLiteral<"reasoning", "required">; text: import("convex/values").VString; signature: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "signature">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "redacted-reasoning"; data: string; }, { type: import("convex/values").VLiteral<"redacted-reasoning", "required">; data: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "data">, import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; input: any; }, { type: import("convex/values").VLiteral<"tool-call", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; input: import("convex/values").VAny; /** @deprecated Use `input` instead. */ args: import("convex/values").VAny; providerExecuted: import("convex/values").VBoolean; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; input?: any; providerExecuted?: boolean | undefined; type: "tool-call"; toolCallId: string; toolName: string; args: any; }, { type: import("convex/values").VLiteral<"tool-call", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; /** @deprecated Use `input` instead. */ args: import("convex/values").VAny; input: import("convex/values").VAny; providerExecuted: import("convex/values").VBoolean; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>], "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; }, { type: import("convex/values").VLiteral<"tool-result", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; output: import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; value: string; }, { type: import("convex/values").VLiteral<"text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "json"; value: any; }, { type: import("convex/values").VLiteral<"json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-text"; value: string; }, { type: import("convex/values").VLiteral<"error-text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-json"; value: any; }, { type: import("convex/values").VLiteral<"error-json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; }, { type: import("convex/values").VLiteral<"execution-denied", "required">; reason: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "reason">, import("convex/values").VObject<{ type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; }, { type: import("convex/values").VLiteral<"content", "required">; value: import("convex/values").VArray<({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | `providerOptions.${string}`>, import("convex/values").VObject<{ type: "media"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"media", "required">; data: import("convex/values").VString; mediaType: import("convex/values").VString; }, "required", "type" | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"file-data", "required">; /** Base-64 encoded */ data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-url"; url: string; }, { type: import("convex/values").VLiteral<"file-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; }, { type: import("convex/values").VLiteral<"file-id", "required">; /** * ID of the file. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"image-data", "required">; data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-url"; url: string; }, { type: import("convex/values").VLiteral<"image-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; }, { /** * Images that are referenced using a provider file id. */ type: import("convex/values").VLiteral<"image-file-id", "required">; /** * Image that is referenced using a provider file id. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "custom"; }, { /** * Custom content part. This can be used to implement * provider-specific content parts. */ type: import("convex/values").VLiteral<"custom", "required">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}`>], "required", "type" | "providerOptions" | "text" | `providerOptions.${string}` | "mediaType" | "data" | "filename" | "url" | "fileId" | `fileId.${string}`>, "required">; }, "required", "type" | "value">], "optional", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}` | "reason">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerExecuted: import("convex/values").VBoolean; result: import("convex/values").VAny; isError: import("convex/values").VBoolean; args: import("convex/values").VAny; experimental_content: import("convex/values").VArray<({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined, import("convex/values").VUnion<{ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; }, [import("convex/values").VObject<{ type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; }, "required", "type" | "text">, import("convex/values").VObject<{ mimeType?: string | undefined; type: "image"; data: string; }, { type: import("convex/values").VLiteral<"image", "required">; data: import("convex/values").VString; mimeType: import("convex/values").VString; }, "required", "type" | "mimeType" | "data">], "required", "type" | "text" | "mimeType" | "data">, "optional">; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "args" | "providerExecuted" | `args.${string}` | "output" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}`>, import("convex/values").VUnion<{ title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; }, [import("convex/values").VObject<{ title?: string | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; type: "source"; url: string; sourceType: "url"; }, { type: import("convex/values").VLiteral<"source", "required">; sourceType: import("convex/values").VLiteral<"url", "required">; id: import("convex/values").VString; url: import("convex/values").VString; title: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "url" | "sourceType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; }, { type: import("convex/values").VLiteral<"source", "required">; sourceType: import("convex/values").VLiteral<"document", "required">; id: import("convex/values").VString; mediaType: import("convex/values").VString; title: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "filename" | "sourceType">], "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "filename" | "url" | "sourceType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; type: "tool-approval-request"; toolCallId: string; approvalId: string; }, { type: import("convex/values").VLiteral<"tool-approval-request", "required">; /** * ID of the tool approval. */ approvalId: import("convex/values").VString; /** * ID of the tool call that the approval request is for. */ toolCallId: import("convex/values").VString; /** @todo Should we continue to include? */ providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; /** @todo Should we continue to include? */ providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "approvalId">], "required", "id" | "title" | "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "mimeType" | "data" | "filename" | "signature" | "toolCallId" | "toolName" | "input" | "args" | "providerExecuted" | `input.${string}` | `args.${string}` | "output" | "url" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}` | "sourceType" | "approvalId">, "required">], "required", never>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; role: "tool"; content: ({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[]; }, { role: import("convex/values").VLiteral<"tool", "required">; content: import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; args?: any; providerExecuted?: boolean | undefined; output?: { providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined; result?: any; isError?: boolean | undefined; experimental_content?: ({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined; type: "tool-result"; toolCallId: string; toolName: string; }, { type: import("convex/values").VLiteral<"tool-result", "required">; toolCallId: import("convex/values").VString; toolName: import("convex/values").VString; output: import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; value: string; } | { providerOptions?: Record> | undefined; type: "json"; value: any; } | { providerOptions?: Record> | undefined; type: "error-text"; value: string; } | { providerOptions?: Record> | undefined; type: "error-json"; value: any; } | { providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; } | { type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; } | undefined, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; value: string; }, { type: import("convex/values").VLiteral<"text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "json"; value: any; }, { type: import("convex/values").VLiteral<"json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-text"; value: string; }, { type: import("convex/values").VLiteral<"error-text", "required">; value: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "error-json"; value: any; }, { type: import("convex/values").VLiteral<"error-json", "required">; value: import("convex/values").VAny; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; reason?: string | undefined; type: "execution-denied"; }, { type: import("convex/values").VLiteral<"execution-denied", "required">; reason: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "reason">, import("convex/values").VObject<{ type: "content"; value: ({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[]; }, { type: import("convex/values").VLiteral<"content", "required">; value: import("convex/values").VArray<({ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; })[], import("convex/values").VUnion<{ providerOptions?: Record> | undefined; type: "text"; text: string; } | { type: "media"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "file-url"; url: string; } | { providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; } | { providerOptions?: Record> | undefined; type: "image-url"; url: string; } | { providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; } | { providerOptions?: Record> | undefined; type: "custom"; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | `providerOptions.${string}`>, import("convex/values").VObject<{ type: "media"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"media", "required">; data: import("convex/values").VString; mediaType: import("convex/values").VString; }, "required", "type" | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; filename?: string | undefined; type: "file-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"file-data", "required">; /** Base-64 encoded */ data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data" | "filename">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-url"; url: string; }, { type: import("convex/values").VLiteral<"file-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "file-id"; fileId: string | Record; }, { type: import("convex/values").VLiteral<"file-id", "required">; /** * ID of the file. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-data"; mediaType: string; data: string; }, { type: import("convex/values").VLiteral<"image-data", "required">; data: import("convex/values").VString; /** * IANA media type. * @see https://www.iana.org/assignments/media-types/media-types.xhtml */ mediaType: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "mediaType" | "data">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-url"; url: string; }, { type: import("convex/values").VLiteral<"image-url", "required">; url: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "url">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "image-file-id"; fileId: string | Record; }, { /** * Images that are referenced using a provider file id. */ type: import("convex/values").VLiteral<"image-file-id", "required">; /** * Image that is referenced using a provider file id. * * If you use multiple providers, you need to * specify the provider specific ids using * the Record option. The key is the provider * name, e.g. 'openai' or 'anthropic'. */ fileId: import("convex/values").VUnion, [import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VString, "required", string>], "required", string>; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}` | "fileId" | `fileId.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; type: "custom"; }, { /** * Custom content part. This can be used to implement * provider-specific content parts. */ type: import("convex/values").VLiteral<"custom", "required">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | `providerOptions.${string}`>], "required", "type" | "providerOptions" | "text" | `providerOptions.${string}` | "mediaType" | "data" | "filename" | "url" | "fileId" | `fileId.${string}`>, "required">; }, "required", "type" | "value">], "optional", "type" | "providerOptions" | `providerOptions.${string}` | "value" | `value.${string}` | "reason">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerExecuted: import("convex/values").VBoolean; result: import("convex/values").VAny; isError: import("convex/values").VBoolean; args: import("convex/values").VAny; experimental_content: import("convex/values").VArray<({ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; })[] | undefined, import("convex/values").VUnion<{ type: "text"; text: string; } | { mimeType?: string | undefined; type: "image"; data: string; }, [import("convex/values").VObject<{ type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; }, "required", "type" | "text">, import("convex/values").VObject<{ mimeType?: string | undefined; type: "image"; data: string; }, { type: import("convex/values").VLiteral<"image", "required">; data: import("convex/values").VString; mimeType: import("convex/values").VString; }, "required", "type" | "mimeType" | "data">], "required", "type" | "text" | "mimeType" | "data">, "optional">; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "args" | "providerExecuted" | `args.${string}` | "output" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}`>, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; providerExecuted?: boolean | undefined; reason?: string | undefined; type: "tool-approval-response"; approvalId: string; approved: boolean; }, { type: import("convex/values").VLiteral<"tool-approval-response", "required">; /** * ID of the tool approval. */ approvalId: import("convex/values").VString; /** * Flag indicating whether the approval was granted or denied. */ approved: import("convex/values").VBoolean; /** * Optional reason for the approval or denial. */ reason: import("convex/values").VString; /** * Flag indicating whether the tool call is provider-executed. * Only provider-executed tool approval responses should be sent to the model. */ providerExecuted: import("convex/values").VBoolean; /** @todo Should we continue to include? */ providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; /** @todo Should we continue to include? */ providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "providerExecuted" | "reason" | "approvalId" | "approved">], "required", "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "toolCallId" | "toolName" | "args" | "providerExecuted" | `args.${string}` | "output" | "reason" | "result" | "isError" | "experimental_content" | "output.type" | "output.providerOptions" | `output.providerOptions.${string}` | "output.value" | `output.value.${string}` | "output.reason" | `result.${string}` | "approvalId" | "approved">, "required">; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; role: "system"; content: string; }, { role: import("convex/values").VLiteral<"system", "required">; content: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "providerOptions" | "role" | `providerOptions.${string}` | "content">], "optional", "providerOptions" | "role" | `providerOptions.${string}` | "content">; tool: import("convex/values").VBoolean; text: import("convex/values").VString; usage: import("convex/values").VObject<{ reasoningTokens?: number | undefined; cachedInputTokens?: number | undefined; promptTokens: number; completionTokens: number; totalTokens: number; } | undefined, { promptTokens: import("convex/values").VFloat64; completionTokens: import("convex/values").VFloat64; totalTokens: import("convex/values").VFloat64; reasoningTokens: import("convex/values").VFloat64; cachedInputTokens: import("convex/values").VFloat64; }, "optional", "promptTokens" | "completionTokens" | "totalTokens" | "reasoningTokens" | "cachedInputTokens">; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; sources: import("convex/values").VArray<({ title?: string | undefined; type?: "source" | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; })[] | undefined, import("convex/values").VUnion<{ title?: string | undefined; type?: "source" | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; url: string; sourceType: "url"; } | { providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; }, [import("convex/values").VObject<{ title?: string | undefined; type?: "source" | undefined; providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; id: string; url: string; sourceType: "url"; }, { type: import("convex/values").VLiteral<"source" | undefined, "optional">; sourceType: import("convex/values").VLiteral<"url", "required">; id: import("convex/values").VString; url: import("convex/values").VString; title: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "url" | "sourceType">, import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; filename?: string | undefined; id: string; title: string; type: "source"; mediaType: string; sourceType: "document"; }, { type: import("convex/values").VLiteral<"source", "required">; sourceType: import("convex/values").VLiteral<"document", "required">; id: import("convex/values").VString; mediaType: import("convex/values").VString; title: import("convex/values").VString; filename: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "filename" | "sourceType">], "required", "id" | "title" | "type" | "providerOptions" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "mediaType" | "filename" | "url" | "sourceType">, "optional">; warnings: import("convex/values").VArray<({ details?: string | undefined; type: "unsupported-setting"; setting: string; } | { details?: string | undefined; type: "unsupported-tool"; tool: any; } | { type: "other"; message: string; })[] | undefined, import("convex/values").VUnion<{ details?: string | undefined; type: "unsupported-setting"; setting: string; } | { details?: string | undefined; type: "unsupported-tool"; tool: any; } | { type: "other"; message: string; }, [import("convex/values").VObject<{ details?: string | undefined; type: "unsupported-setting"; setting: string; }, { type: import("convex/values").VLiteral<"unsupported-setting", "required">; setting: import("convex/values").VString; details: import("convex/values").VString; }, "required", "type" | "setting" | "details">, import("convex/values").VObject<{ details?: string | undefined; type: "unsupported-tool"; tool: any; }, { type: import("convex/values").VLiteral<"unsupported-tool", "required">; tool: import("convex/values").VAny; details: import("convex/values").VString; }, "required", "type" | "tool" | "details" | `tool.${string}`>, import("convex/values").VObject<{ type: "other"; message: string; }, { type: import("convex/values").VLiteral<"other", "required">; message: import("convex/values").VString; }, "required", "type" | "message">], "required", "type" | "message" | "tool" | "setting" | "details" | `tool.${string}`>, "optional">; finishReason: import("convex/values").VUnion<"error" | "length" | "other" | "stop" | "content-filter" | "tool-calls" | "unknown" | undefined, [import("convex/values").VLiteral<"stop", "required">, import("convex/values").VLiteral<"length", "required">, import("convex/values").VLiteral<"content-filter", "required">, import("convex/values").VLiteral<"tool-calls", "required">, import("convex/values").VLiteral<"error", "required">, import("convex/values").VLiteral<"other", "required">, import("convex/values").VLiteral<"unknown", "required">], "optional", never>; reasoning: import("convex/values").VString; reasoningDetails: import("convex/values").VArray<({ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { signature?: string | undefined; type: "text"; text: string; } | { type: "redacted"; data: string; })[] | undefined, import("convex/values").VUnion<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; } | { signature?: string | undefined; type: "text"; text: string; } | { type: "redacted"; data: string; }, [import("convex/values").VObject<{ providerOptions?: Record> | undefined; providerMetadata?: Record> | undefined; signature?: string | undefined; type: "reasoning"; text: string; }, { type: import("convex/values").VLiteral<"reasoning", "required">; text: import("convex/values").VString; signature: import("convex/values").VString; providerOptions: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; providerMetadata: import("convex/values").VRecord> | undefined, import("convex/values").VString, import("convex/values").VRecord, import("convex/values").VString, import("convex/values").VAny, "required", string>, "optional", string>; }, "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "signature">, import("convex/values").VObject<{ signature?: string | undefined; type: "text"; text: string; }, { type: import("convex/values").VLiteral<"text", "required">; text: import("convex/values").VString; signature: import("convex/values").VString; }, "required", "type" | "text" | "signature">, import("convex/values").VObject<{ type: "redacted"; data: string; }, { type: import("convex/values").VLiteral<"redacted", "required">; data: import("convex/values").VString; }, "required", "type" | "data">], "required", "type" | "providerOptions" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "data" | "signature">, "optional">; id: import("convex/values").VString; }, "required", "id" | "status" | "userId" | "order" | "_creationTime" | "threadId" | "stepOrder" | "embeddingId" | "fileIds" | "error" | "agentName" | "model" | "provider" | "providerOptions" | "message" | "text" | "providerMetadata" | `providerOptions.${string}` | `providerMetadata.${string}` | "reasoning" | "tool" | "usage" | "sources" | "warnings" | "finishReason" | "reasoningDetails" | "message.providerOptions" | "message.role" | `message.providerOptions.${string}` | "message.content" | "usage.promptTokens" | "usage.completionTokens" | "usage.totalTokens" | "usage.reasoningTokens" | "usage.cachedInputTokens" | "_id">; export type MessageDoc = Infer; export declare const vThreadDoc: import("convex/values").VObject<{ userId?: string | undefined; title?: string | undefined; summary?: string | undefined; status: "active" | "archived"; _creationTime: number; _id: string; }, { _id: import("convex/values").VString; _creationTime: import("convex/values").VFloat64; userId: import("convex/values").VString; title: import("convex/values").VString; summary: import("convex/values").VString; status: import("convex/values").VUnion<"active" | "archived", [import("convex/values").VLiteral<"active", "required">, import("convex/values").VLiteral<"archived", "required">], "required", never>; }, "required", "status" | "userId" | "title" | "summary" | "_creationTime" | "_id">; export type ThreadDoc = Infer; export {}; //# sourceMappingURL=validators.d.ts.map