import { type ChatMessage, type ReasoningArtifactReplayObserver, type ReasoningArtifactReplayTarget, type ToolDefinition } from "../../types.js"; import { type ToolChoice } from "../tool-protocol.js"; import "../../tools/definitions.js"; export { parseAnthropicToolUseBlocks } from "./anthropic-wire-blocks.js"; export { finalizeAnthropicToolStream, handleAnthropicStreamEvent, } from "./anthropic-stream-events.js"; export declare function toAnthropicTools(defs: ToolDefinition[]): Array<{ name: string; description: string; input_schema: ToolDefinition["parameters"]; }>; type AnthropicContentBlock = { type: "text"; text: string; } | ({ type: "thinking"; thinking: string; signature: string; } & Record) | { type: "image"; source: { type: "base64"; media_type: string; data: string; }; } | { type: "tool_use"; id: string; name: string; input: Record; } | { type: "tool_result"; tool_use_id: string; content: string; is_error?: boolean; }; interface AnthropicReasoningReplayOptions { readonly target: ReasoningArtifactReplayTarget; readonly observe?: ReasoningArtifactReplayObserver | undefined; readonly cacheConversation?: boolean | undefined; readonly cacheTtl?: "1h" | undefined; } export declare function toAnthropicToolMessages(messages: ChatMessage[], replay?: AnthropicReasoningReplayOptions): Array<{ role: "user" | "assistant"; content: string | AnthropicContentBlock[]; }>; export declare function anthropicToolBodyFields(options: { tools?: ToolDefinition[] | undefined; toolChoice?: ToolChoice | undefined; }): Record; export interface AnthropicThinkingBlock { readonly sequence: number; readonly thinking: string; readonly signature?: string | undefined; readonly raw: Record; readonly toolCallIndex?: number | undefined; } export type AnthropicWireContentBlock = { type: string; text?: string; thinking?: string; signature?: string; id?: string; name?: string; input?: unknown; [key: string]: unknown; }; export interface AnthropicStreamBlock { kind: "text" | "thinking" | "tool_use"; id?: string; name?: string; json: string; text: string; signature: string; } export interface AnthropicToolStreamState { text: string; thinking: string; thinkingSignature: string; blocks: Map; } export declare function createAnthropicToolStreamState(): AnthropicToolStreamState;