import { z, ModelReference, Role, Part, MessageData, GenerateResponseData, GenerateRequest, StreamingCallback } from 'genkit'; import { ToolDefinition, CandidateData, GenerateResponseChunkData, ModelAction } from 'genkit/model'; import Anthropic from '@anthropic-ai/sdk'; import { MessageParam, TextBlockParam, ImageBlockParam, TextBlock, ToolUseBlockParam, ToolResultBlockParam, Tool, MessageStreamEvent, Message, MessageCreateParams } from '@anthropic-ai/sdk/resources/messages.mjs'; /** * Copyright 2024 Bloom Labs Inc * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ declare const AnthropicConfigSchema: z.ZodObject; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, "passthrough", z.ZodTypeAny, z.objectOutputType; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, z.ZodTypeAny, "passthrough">, z.objectInputType; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, z.ZodTypeAny, "passthrough">>; declare const claude4Sonnet: ModelReference; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, "passthrough", z.ZodTypeAny, z.objectOutputType; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, z.ZodTypeAny, "passthrough">, z.objectInputType; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, z.ZodTypeAny, "passthrough">>>; declare const claude37Sonnet: ModelReference; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, "passthrough", z.ZodTypeAny, z.objectOutputType; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, z.ZodTypeAny, "passthrough">, z.objectInputType; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, z.ZodTypeAny, "passthrough">>>; declare const claude35Sonnet: ModelReference; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, "passthrough", z.ZodTypeAny, z.objectOutputType; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, z.ZodTypeAny, "passthrough">, z.objectInputType; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, z.ZodTypeAny, "passthrough">>>; declare const claude3Opus: ModelReference; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, "passthrough", z.ZodTypeAny, z.objectOutputType; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, z.ZodTypeAny, "passthrough">, z.objectInputType; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, z.ZodTypeAny, "passthrough">>>; declare const claude3Sonnet: ModelReference; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, "passthrough", z.ZodTypeAny, z.objectOutputType; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, z.ZodTypeAny, "passthrough">, z.objectInputType; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, z.ZodTypeAny, "passthrough">>>; declare const claude3Haiku: ModelReference; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, "passthrough", z.ZodTypeAny, z.objectOutputType; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, z.ZodTypeAny, "passthrough">, z.objectInputType; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, z.ZodTypeAny, "passthrough">>>; declare const claude4Opus: ModelReference; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, "passthrough", z.ZodTypeAny, z.objectOutputType; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, z.ZodTypeAny, "passthrough">, z.objectInputType; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, z.ZodTypeAny, "passthrough">>>; declare const claude35Haiku: ModelReference; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, "passthrough", z.ZodTypeAny, z.objectOutputType; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, z.ZodTypeAny, "passthrough">, z.objectInputType; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, z.ZodTypeAny, "passthrough">>>; declare const claude45Sonnet: ModelReference; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, "passthrough", z.ZodTypeAny, z.objectOutputType; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, z.ZodTypeAny, "passthrough">, z.objectInputType; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, z.ZodTypeAny, "passthrough">>>; declare const claude45Haiku: ModelReference; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, "passthrough", z.ZodTypeAny, z.objectOutputType; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, z.ZodTypeAny, "passthrough">, z.objectInputType; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, z.ZodTypeAny, "passthrough">>>; declare const claude45Opus: ModelReference; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, "passthrough", z.ZodTypeAny, z.objectOutputType; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, z.ZodTypeAny, "passthrough">, z.objectInputType; temperature: z.ZodOptional; maxOutputTokens: z.ZodOptional; topK: z.ZodOptional; topP: z.ZodOptional; stopSequences: z.ZodOptional>; }, { tool_choice: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "auto"; }, { type: "auto"; }>, z.ZodObject<{ type: z.ZodLiteral<"any">; }, "strip", z.ZodTypeAny, { type: "any"; }, { type: "any"; }>, z.ZodObject<{ type: z.ZodLiteral<"tool">; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: "tool"; name: string; }, { type: "tool"; name: string; }>]>>; metadata: z.ZodOptional; }, "strip", z.ZodTypeAny, { user_id?: string | undefined; }, { user_id?: string | undefined; }>>; }>, z.ZodTypeAny, "passthrough">>>; declare const SUPPORTED_CLAUDE_MODELS: Record>; /** * Converts a Genkit role to the corresponding Anthropic role. */ declare function toAnthropicRole(role: Role, toolMessageType?: 'tool_use' | 'tool_result'): MessageParam['role']; /** * Converts a Genkit message Part to the corresponding Anthropic TextBlockParam or ImageBlockParam. */ declare function toAnthropicToolResponseContent(part: Part): TextBlockParam | ImageBlockParam; /** * Converts a Genkit Part to the corresponding Anthropic TextBlock, ImageBlockParam, etc. */ declare function toAnthropicMessageContent(part: Part): TextBlock | ImageBlockParam | ToolUseBlockParam | ToolResultBlockParam; /** * Converts a Genkit MessageData array to Anthropic system message and MessageParam array. * @param messages The Genkit MessageData array to convert. * @returns An object containing the optional Anthropic system message and the array of Anthropic MessageParam objects. */ declare function toAnthropicMessages(messages: MessageData[]): { system?: string; messages: MessageParam[]; }; /** * Converts a Genkit ToolDefinition to an Anthropic Tool object. * @param tool The Genkit ToolDefinition to convert. * @returns The converted Anthropic Tool object. */ declare function toAnthropicTool(tool: ToolDefinition): Tool; /** * Converts an Anthropic message stream event to a Genkit Part object. */ declare function fromAnthropicContentBlockChunk(event: MessageStreamEvent): Part | undefined; declare function fromAnthropicStopReason(reason: Message['stop_reason']): CandidateData['finishReason']; declare function fromAnthropicResponse(response: Message): GenerateResponseData; /** * Converts an Anthropic request to an Anthropic API request body. * @param modelName The name of the Anthropic model to use. * @param request The Genkit GenerateRequest to convert. * @param stream Whether to stream the response. * @param cacheSystemPrompt Whether to cache the system prompt. * @returns The converted Anthropic API request body. * @throws An error if the specified model is not supported or if an unsupported output format is requested. */ declare function toAnthropicRequestBody(modelName: string, request: GenerateRequest, stream?: boolean, cacheSystemPrompt?: boolean): MessageCreateParams; /** * Creates the runner used by Genkit to interact with the Claude model. * @param name The name of the Claude model. * @param client The Anthropic client instance. * @param cacheSystemPrompt Whether to cache the system prompt. * @returns The runner that Genkit will call when the model is invoked. */ declare function claudeRunner(name: string, client: Anthropic, cacheSystemPrompt?: boolean): (request: GenerateRequest, { streamingRequested, sendChunk, abortSignal, }: { streamingRequested: boolean; sendChunk: StreamingCallback; abortSignal: AbortSignal; }) => Promise; /** * Defines a Claude model with the given name and Anthropic client. */ declare function claudeModel(name: string, client: Anthropic, cacheSystemPrompt?: boolean): ModelAction; export { AnthropicConfigSchema, SUPPORTED_CLAUDE_MODELS, claude35Haiku, claude35Sonnet, claude37Sonnet, claude3Haiku, claude3Opus, claude3Sonnet, claude45Haiku, claude45Opus, claude45Sonnet, claude4Opus, claude4Sonnet, claudeModel, claudeRunner, fromAnthropicContentBlockChunk, fromAnthropicResponse, fromAnthropicStopReason, toAnthropicMessageContent, toAnthropicMessages, toAnthropicRequestBody, toAnthropicRole, toAnthropicTool, toAnthropicToolResponseContent };