import { ToolCallEngine, MultimodalToolCallResult, ChatCompletionMessageParam, StreamProcessingState, StreamChunkResult, ChatCompletionChunk } from '@multimodal/agent-interface'; /** * Base implementation of ToolCallEngine with common functionality * * This abstract base class provides shared implementations for common operations * across different tool call engines, reducing code duplication and improving maintainability. */ export declare abstract class BaseToolCallEngine extends ToolCallEngine { /** * Build historical tool call result messages for non-native engines * * This is the common implementation used by both PromptEngineering and StructuredOutputs engines * since they both format tool results as user messages rather than tool messages. */ protected buildNonNativeToolCallResultMessages(toolResults: MultimodalToolCallResult[]): ChatCompletionMessageParam[]; /** * Build historical tool call result messages for native engines * * This implementation is used by native engines that support OpenAI's tool protocol * with separate tool and user message roles. */ protected buildNativeToolCallResultMessages(toolResults: MultimodalToolCallResult[]): ChatCompletionMessageParam[]; /** * Create a basic streaming processing state * * Provides a default implementation that can be extended by specific engines */ initStreamProcessingState(): StreamProcessingState; /** * Extract reasoning content from chunk delta * * Common logic for processing reasoning content across different engines */ protected extractReasoningContent(delta: any): string; /** * Update finish reason from chunk * * Common logic for updating finish reason from streaming chunks */ protected updateFinishReason(chunk: ChatCompletionChunk, state: StreamProcessingState): void; /** * Create a basic stream chunk result * * Helper method to create StreamChunkResult with common structure */ protected createStreamChunkResult(content?: string, reasoningContent?: string, hasToolCallUpdate?: boolean, toolCalls?: any[], streamingToolCallUpdates?: any): StreamChunkResult; } //# sourceMappingURL=ToolCallEngine.d.ts.map