import { ToolResponse, Part } from './parts.js'; import { z, Action, ActionFnArg, ActionMetadata } from '@genkit-ai/core'; import { Registry } from '@genkit-ai/core/registry'; /** * A batch (array) of embeddings. */ type EmbeddingBatch = { embedding: number[]; }[]; /** * EmbeddingSchema includes the embedding and also metadata so you know * which of multiple embeddings corresponds to which part of a document. */ declare const EmbeddingSchema: z.ZodObject<{ embedding: z.ZodArray; metadata: z.ZodOptional>; }, "strip", z.ZodTypeAny, { embedding: number[]; metadata?: Record | undefined; }, { embedding: number[]; metadata?: Record | undefined; }>; type Embedding = z.infer; /** * A function used for embedder definition, encapsulates embedder implementation. */ type EmbedderFn = (input: Document[], embedderOpts?: z.infer) => Promise; /** * Zod schema of an embed request. */ declare const EmbedRequestSchema: z.ZodObject<{ input: z.ZodArray; toolRequest: z.ZodOptional; toolResponse: z.ZodOptional; data: z.ZodOptional; metadata: z.ZodOptional>; custom: z.ZodOptional>; reasoning: z.ZodOptional; resource: z.ZodOptional; } & { text: z.ZodString; }, "strip", z.ZodTypeAny, { text: string; custom?: Record | undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; }, { text: string; custom?: Record | undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; }>, z.ZodObject<{ text: z.ZodOptional; toolRequest: z.ZodOptional; toolResponse: z.ZodOptional; data: z.ZodOptional; metadata: z.ZodOptional>; custom: z.ZodOptional>; reasoning: z.ZodOptional; resource: z.ZodOptional; } & { media: z.ZodObject<{ contentType: z.ZodOptional; url: z.ZodString; }, "strip", z.ZodTypeAny, { url: string; contentType?: string | undefined; }, { url: string; contentType?: string | undefined; }>; }, "strip", z.ZodTypeAny, { media: { url: string; contentType?: string | undefined; }; custom?: Record | undefined; text?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; }, { media: { url: string; contentType?: string | undefined; }; custom?: Record | undefined; text?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; }>, z.ZodObject<{ text: z.ZodOptional; media: z.ZodOptional; toolResponse: z.ZodOptional; data: z.ZodOptional; metadata: z.ZodOptional>; custom: z.ZodOptional>; reasoning: z.ZodOptional; resource: z.ZodOptional; } & { toolRequest: z.ZodObject<{ ref: z.ZodOptional; name: z.ZodString; input: z.ZodOptional; partial: z.ZodOptional; }, "strip", z.ZodTypeAny, { name: string; ref?: string | undefined; input?: unknown; partial?: boolean | undefined; }, { name: string; ref?: string | undefined; input?: unknown; partial?: boolean | undefined; }>; }, "strip", z.ZodTypeAny, { toolRequest: { name: string; ref?: string | undefined; input?: unknown; partial?: boolean | undefined; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; }, { toolRequest: { name: string; ref?: string | undefined; input?: unknown; partial?: boolean | undefined; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; }>, z.ZodObject<{ text: z.ZodOptional; media: z.ZodOptional; toolRequest: z.ZodOptional; data: z.ZodOptional; metadata: z.ZodOptional>; custom: z.ZodOptional>; reasoning: z.ZodOptional; resource: z.ZodOptional; } & { toolResponse: z.ZodType; }, "strip", z.ZodTypeAny, { toolResponse: { name: string; ref?: string | undefined; output?: unknown; } & { content?: Part[]; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; }, { toolResponse: { name: string; ref?: string | undefined; output?: unknown; } & { content?: Part[]; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; }>, z.ZodObject<{ text: z.ZodOptional; media: z.ZodOptional; toolRequest: z.ZodOptional; toolResponse: z.ZodOptional; metadata: z.ZodOptional>; custom: z.ZodOptional>; reasoning: z.ZodOptional; resource: z.ZodOptional; } & { data: z.ZodUnknown; }, "strip", z.ZodTypeAny, { custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; }, { custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; }>, z.ZodObject<{ text: z.ZodOptional; media: z.ZodOptional; toolRequest: z.ZodOptional; toolResponse: z.ZodOptional; data: z.ZodOptional; metadata: z.ZodOptional>; reasoning: z.ZodOptional; resource: z.ZodOptional; } & { custom: z.ZodRecord; }, "strip", z.ZodTypeAny, { custom: Record; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; }, { custom: Record; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; }>, z.ZodObject<{ text: z.ZodOptional; media: z.ZodOptional; toolRequest: z.ZodOptional; toolResponse: z.ZodOptional; data: z.ZodOptional; metadata: z.ZodOptional>; custom: z.ZodOptional>; resource: z.ZodOptional; } & { reasoning: z.ZodString; }, "strip", z.ZodTypeAny, { reasoning: string; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; resource?: undefined; }, { reasoning: string; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; resource?: undefined; }>, z.ZodObject<{ text: z.ZodOptional; media: z.ZodOptional; toolRequest: z.ZodOptional; toolResponse: z.ZodOptional; data: z.ZodOptional; metadata: z.ZodOptional>; custom: z.ZodOptional>; reasoning: z.ZodOptional; } & { resource: z.ZodObject<{ uri: z.ZodString; }, "strip", z.ZodTypeAny, { uri: string; }, { uri: string; }>; }, "strip", z.ZodTypeAny, { resource: { uri: string; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; }, { resource: { uri: string; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; }>]>, "many">; metadata: z.ZodOptional>; }, "strip", z.ZodTypeAny, { content: ({ text: string; custom?: Record | undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { media: { url: string; contentType?: string | undefined; }; custom?: Record | undefined; text?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { toolRequest: { name: string; ref?: string | undefined; input?: unknown; partial?: boolean | undefined; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { toolResponse: { name: string; ref?: string | undefined; output?: unknown; } & { content?: Part[]; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { custom: Record; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { reasoning: string; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; resource?: undefined; } | { resource: { uri: string; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; })[]; metadata?: Record | undefined; }, { content: ({ text: string; custom?: Record | undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { media: { url: string; contentType?: string | undefined; }; custom?: Record | undefined; text?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { toolRequest: { name: string; ref?: string | undefined; input?: unknown; partial?: boolean | undefined; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { toolResponse: { name: string; ref?: string | undefined; output?: unknown; } & { content?: Part[]; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { custom: Record; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { reasoning: string; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; resource?: undefined; } | { resource: { uri: string; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; })[]; metadata?: Record | undefined; }>, "many">; options: z.ZodOptional; }, "strip", z.ZodTypeAny, { input: { content: ({ text: string; custom?: Record | undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { media: { url: string; contentType?: string | undefined; }; custom?: Record | undefined; text?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { toolRequest: { name: string; ref?: string | undefined; input?: unknown; partial?: boolean | undefined; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { toolResponse: { name: string; ref?: string | undefined; output?: unknown; } & { content?: Part[]; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { custom: Record; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { reasoning: string; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; resource?: undefined; } | { resource: { uri: string; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; })[]; metadata?: Record | undefined; }[]; options?: any; }, { input: { content: ({ text: string; custom?: Record | undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { media: { url: string; contentType?: string | undefined; }; custom?: Record | undefined; text?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { toolRequest: { name: string; ref?: string | undefined; input?: unknown; partial?: boolean | undefined; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { toolResponse: { name: string; ref?: string | undefined; output?: unknown; } & { content?: Part[]; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { custom: Record; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { reasoning: string; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; resource?: undefined; } | { resource: { uri: string; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; })[]; metadata?: Record | undefined; }[]; options?: any; }>; interface EmbedRequest { input: Document[]; options?: O; } /** * Zod schema of an embed response. */ declare const EmbedResponseSchema: z.ZodObject<{ embeddings: z.ZodArray; metadata: z.ZodOptional>; }, "strip", z.ZodTypeAny, { embedding: number[]; metadata?: Record | undefined; }, { embedding: number[]; metadata?: Record | undefined; }>, "many">; }, "strip", z.ZodTypeAny, { embeddings: { embedding: number[]; metadata?: Record | undefined; }[]; }, { embeddings: { embedding: number[]; metadata?: Record | undefined; }[]; }>; type EmbedResponse = z.infer; /** * Embedder action -- a subtype of {@link Action} with input/output types for embedders. */ type EmbedderAction = Action & { __configSchema?: CustomOptions; }; /** * Options of an `embed` function. */ interface EmbedderParams { embedder: EmbedderArgument; content: string | DocumentData; metadata?: Record; options?: z.infer; } interface EmbedderOptions { name: string; configSchema?: ConfigSchema; info?: EmbedderInfo; } /** * Creates embedder model for the provided {@link EmbedderFn} model implementation. * * Unlike `defineEmbedder` this function does not register the embedder in the reigistry. */ declare function embedder(options: EmbedderOptions, runner: (input: EmbedRequest>, opts: ActionFnArg) => Promise): EmbedderAction; /** * Creates embedder model for the provided {@link EmbedderFn} model implementation. */ declare function defineEmbedder(registry: Registry, options: EmbedderOptions, runner: EmbedderFn): EmbedderAction; /** * A union type representing all the types that can refer to an embedder. */ type EmbedderArgument = string | EmbedderAction | EmbedderReference; /** * A veneer for interacting with embedder models. */ declare function embed(registry: Registry, params: EmbedderParams): Promise; /** * A veneer for interacting with embedder models in bulk. */ declare function embedMany(registry: Registry, params: { embedder: EmbedderArgument; content: string[] | DocumentData[]; metadata?: Record; options?: z.infer; }): Promise; /** * Zod schema of embedder info object. */ declare const EmbedderInfoSchema: z.ZodObject<{ /** Friendly label for this model (e.g. "Google AI - Gemini Pro") */ label: z.ZodOptional; /** Supported model capabilities. */ supports: z.ZodOptional, "many">>; /** Model can support multiple languages */ multilingual: z.ZodOptional; }, "strip", z.ZodTypeAny, { input?: ("text" | "image" | "video")[] | undefined; multilingual?: boolean | undefined; }, { input?: ("text" | "image" | "video")[] | undefined; multilingual?: boolean | undefined; }>>; /** Embedding dimension */ dimensions: z.ZodOptional; }, "strip", z.ZodTypeAny, { label?: string | undefined; supports?: { input?: ("text" | "image" | "video")[] | undefined; multilingual?: boolean | undefined; } | undefined; dimensions?: number | undefined; }, { label?: string | undefined; supports?: { input?: ("text" | "image" | "video")[] | undefined; multilingual?: boolean | undefined; } | undefined; dimensions?: number | undefined; }>; type EmbedderInfo = z.infer; /** * A reference object that can used to resolve an embedder instance. Include additional type information * about the specific embedder, e.g. custom config options schema. */ interface EmbedderReference { name: string; configSchema?: CustomOptions; info?: EmbedderInfo; config?: z.infer; version?: string; } /** * Helper method to configure a {@link EmbedderReference} to a plugin. */ declare function embedderRef(options: EmbedderReference & { namespace?: string; }): EmbedderReference; /** * Packages embedder information into ActionMetadata object. */ declare function embedderActionMetadata({ name, info, configSchema, }: { name: string; info?: EmbedderInfo; configSchema?: z.ZodTypeAny; }): ActionMetadata; declare const DocumentDataSchema: z.ZodObject<{ content: z.ZodArray; toolRequest: z.ZodOptional; toolResponse: z.ZodOptional; data: z.ZodOptional; metadata: z.ZodOptional>; custom: z.ZodOptional>; reasoning: z.ZodOptional; resource: z.ZodOptional; } & { text: z.ZodString; }, "strip", z.ZodTypeAny, { text: string; custom?: Record | undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; }, { text: string; custom?: Record | undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; }>, z.ZodObject<{ text: z.ZodOptional; toolRequest: z.ZodOptional; toolResponse: z.ZodOptional; data: z.ZodOptional; metadata: z.ZodOptional>; custom: z.ZodOptional>; reasoning: z.ZodOptional; resource: z.ZodOptional; } & { media: z.ZodObject<{ contentType: z.ZodOptional; url: z.ZodString; }, "strip", z.ZodTypeAny, { url: string; contentType?: string | undefined; }, { url: string; contentType?: string | undefined; }>; }, "strip", z.ZodTypeAny, { media: { url: string; contentType?: string | undefined; }; custom?: Record | undefined; text?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; }, { media: { url: string; contentType?: string | undefined; }; custom?: Record | undefined; text?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; }>, z.ZodObject<{ text: z.ZodOptional; media: z.ZodOptional; toolResponse: z.ZodOptional; data: z.ZodOptional; metadata: z.ZodOptional>; custom: z.ZodOptional>; reasoning: z.ZodOptional; resource: z.ZodOptional; } & { toolRequest: z.ZodObject<{ ref: z.ZodOptional; name: z.ZodString; input: z.ZodOptional; partial: z.ZodOptional; }, "strip", z.ZodTypeAny, { name: string; ref?: string | undefined; input?: unknown; partial?: boolean | undefined; }, { name: string; ref?: string | undefined; input?: unknown; partial?: boolean | undefined; }>; }, "strip", z.ZodTypeAny, { toolRequest: { name: string; ref?: string | undefined; input?: unknown; partial?: boolean | undefined; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; }, { toolRequest: { name: string; ref?: string | undefined; input?: unknown; partial?: boolean | undefined; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; }>, z.ZodObject<{ text: z.ZodOptional; media: z.ZodOptional; toolRequest: z.ZodOptional; data: z.ZodOptional; metadata: z.ZodOptional>; custom: z.ZodOptional>; reasoning: z.ZodOptional; resource: z.ZodOptional; } & { toolResponse: z.ZodType; }, "strip", z.ZodTypeAny, { toolResponse: { name: string; ref?: string | undefined; output?: unknown; } & { content?: Part[]; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; }, { toolResponse: { name: string; ref?: string | undefined; output?: unknown; } & { content?: Part[]; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; }>, z.ZodObject<{ text: z.ZodOptional; media: z.ZodOptional; toolRequest: z.ZodOptional; toolResponse: z.ZodOptional; metadata: z.ZodOptional>; custom: z.ZodOptional>; reasoning: z.ZodOptional; resource: z.ZodOptional; } & { data: z.ZodUnknown; }, "strip", z.ZodTypeAny, { custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; }, { custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; }>, z.ZodObject<{ text: z.ZodOptional; media: z.ZodOptional; toolRequest: z.ZodOptional; toolResponse: z.ZodOptional; data: z.ZodOptional; metadata: z.ZodOptional>; reasoning: z.ZodOptional; resource: z.ZodOptional; } & { custom: z.ZodRecord; }, "strip", z.ZodTypeAny, { custom: Record; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; }, { custom: Record; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; }>, z.ZodObject<{ text: z.ZodOptional; media: z.ZodOptional; toolRequest: z.ZodOptional; toolResponse: z.ZodOptional; data: z.ZodOptional; metadata: z.ZodOptional>; custom: z.ZodOptional>; resource: z.ZodOptional; } & { reasoning: z.ZodString; }, "strip", z.ZodTypeAny, { reasoning: string; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; resource?: undefined; }, { reasoning: string; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; resource?: undefined; }>, z.ZodObject<{ text: z.ZodOptional; media: z.ZodOptional; toolRequest: z.ZodOptional; toolResponse: z.ZodOptional; data: z.ZodOptional; metadata: z.ZodOptional>; custom: z.ZodOptional>; reasoning: z.ZodOptional; } & { resource: z.ZodObject<{ uri: z.ZodString; }, "strip", z.ZodTypeAny, { uri: string; }, { uri: string; }>; }, "strip", z.ZodTypeAny, { resource: { uri: string; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; }, { resource: { uri: string; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; }>]>, "many">; metadata: z.ZodOptional>; }, "strip", z.ZodTypeAny, { content: ({ text: string; custom?: Record | undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { media: { url: string; contentType?: string | undefined; }; custom?: Record | undefined; text?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { toolRequest: { name: string; ref?: string | undefined; input?: unknown; partial?: boolean | undefined; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { toolResponse: { name: string; ref?: string | undefined; output?: unknown; } & { content?: Part[]; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { custom: Record; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { reasoning: string; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; resource?: undefined; } | { resource: { uri: string; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; })[]; metadata?: Record | undefined; }, { content: ({ text: string; custom?: Record | undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { media: { url: string; contentType?: string | undefined; }; custom?: Record | undefined; text?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { toolRequest: { name: string; ref?: string | undefined; input?: unknown; partial?: boolean | undefined; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { toolResponse: { name: string; ref?: string | undefined; output?: unknown; } & { content?: Part[]; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { custom: Record; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; resource?: undefined; } | { reasoning: string; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; resource?: undefined; } | { resource: { uri: string; }; custom?: Record | undefined; text?: undefined; media?: undefined; toolRequest?: undefined; toolResponse?: undefined; data?: unknown; metadata?: Record | undefined; reasoning?: undefined; })[]; metadata?: Record | undefined; }>; type DocumentData = z.infer; /** * Document represents document content along with its metadata that can be embedded, indexed or * retrieved. Each document can contain multiple parts (for example text and an image) */ declare class Document implements DocumentData { content: Part[]; metadata?: Record; constructor(data: DocumentData); static fromParts(content: Part[], metadata?: Record): Document; static fromText(text: string, metadata?: Record): Document; static fromMedia(url: string, contentType?: string, metadata?: Record): Document; static fromData(data: string, dataType?: string, metadata?: Record): Document; /** * Concatenates all `text` parts present in the document with no delimiter. * @returns A string of all concatenated text parts. */ get text(): string; /** * Media array getter. * @returns the array of media parts. */ get media(): { url: string; contentType?: string; }[]; /** * Gets the first item in the document. Either text or media url. */ get data(): string; /** * Gets the contentType of the data that is returned by data() */ get dataType(): string | undefined; toJSON(): DocumentData; /** * Embedders may return multiple embeddings for a single document. * But storage still requires a 1:1 relationship. So we create an * array of Documents from a single document - one per embedding. * @param embeddings The embeddings to create the documents from. * @returns an array of documents based on this document and the embeddings. */ getEmbeddingDocuments(embeddings: Embedding[]): Document[]; } declare function checkUniqueDocuments(documents: Document[]): boolean; export { Document as D, type EmbedderAction as E, type DocumentData as a, DocumentDataSchema as b, type EmbedderArgument as c, type EmbedderInfo as d, type EmbedderParams as e, type EmbedderReference as f, type Embedding as g, embed as h, embedderActionMetadata as i, embedderRef as j, type EmbeddingBatch as k, type EmbedRequest as l, type EmbedderFn as m, EmbedderInfoSchema as n, type EmbedderOptions as o, EmbeddingSchema as p, defineEmbedder as q, embedMany as r, embedder as s, checkUniqueDocuments as t };