UNPKG

llmforge

Version:

One API, every AI model, instant switching. Change from GPT-4 to Gemini to local models with a single config update. LLMForge is the lightweight, TypeScript-first solution for multi-provider AI applications with zero vendor lock-in.

38 lines (37 loc) 1.22 kB
import { StreamChunk, GenerateContentResponse } from '../../types'; export interface streamResponse { type: 'delta' | 'done' | 'completed'; token: string; } export interface streamResponseComplete extends streamResponse { completeOutput?: string; thinkingOutput?: string; model?: string; usage?: { input_tokens?: number; output_tokens?: number; total_tokens?: number; }; status?: string; fallback?: { isUsed: boolean; reason?: string; } | null; } export interface StreamOptions { onChunk?: (chunk: StreamChunk) => void; onComplete?: (response: GenerateContentResponse) => void; onError?: (error: Error) => void; onThinking?: (thinking: string) => void; } export declare class GoogleStreamProcessor { private decoder; processStream(response: Response, options?: StreamOptions): Promise<GenerateContentResponse>; private extractCompleteJsonObjects; private parseStreamChunk; private hasThinkingContent; private extractThinkingContent; private aggregateChunk; createAsyncGenerator(response: Response): AsyncGenerator<streamResponse | streamResponseComplete>; private extractAllCandidateText; }