/** * Ollama native provider adapter * * Handles Ollama's /api/chat endpoint for request building, * response parsing (NDJSON streaming), and message formatting. */ import type { ContentPart, PromptContent } from '../types.js'; import type { TooledPromptEmitter } from '../events.js'; import type { ProviderAdapter, ToolCallInfo, ToolResultInfo, ParsedResponse, BuildRequestParams, BuildRequestResult } from './types.js'; type OllamaToolCall = { function: { name: string; arguments: string | Record; }; }; export type OllamaMessage = { role: 'system'; content: string; } | { role: 'user'; content: string; images?: string[]; } | { role: 'assistant'; content: string; tool_calls?: OllamaToolCall[]; } | { role: 'tool'; content: string; images?: string[]; }; export declare class OllamaProvider implements ProviderAdapter { buildRequest(params: BuildRequestParams): BuildRequestResult; formatUserMessage(content: PromptContent, prependImages?: ContentPart[]): OllamaMessage; formatAssistantMessage(content: string, toolCalls: ToolCallInfo[]): OllamaMessage; formatToolResults(results: ToolResultInfo[]): OllamaMessage[]; parseResponse(response: Response, streaming: boolean, emitter: TooledPromptEmitter, chunkTimeoutMs?: number, signal?: AbortSignal): Promise; } export {}; //# sourceMappingURL=ollama.d.ts.map