import { PrivacyConfig } from "../core/privacy.js"; import { AmplitudeOrAI } from "../types.js"; import { BaseAIProvider } from "./base.js"; //#region src/providers/gemini.d.ts declare const GEMINI_AVAILABLE: boolean; declare const _GeminiModule: Record | null; interface GeminiOptions { amplitude: AmplitudeOrAI; apiKey?: string; privacyConfig?: PrivacyConfig | null; /** * Adopt an already-constructed `GoogleGenerativeAI` client instead of * building a fresh one from `apiKey`. Used by `wrap()` so the caller's * configured client (custom transport, base URL, etc.) is preserved. */ client?: unknown; /** Pass the `@google/generative-ai` module directly to bypass `tryRequire` (required in bundler environments). */ geminiModule?: unknown; } declare class Gemini extends BaseAIProvider { private _client; constructor(options: GeminiOptions); generateContent(model: string, params: Record): Promise; generateContentStream(model: string, params: Record): Promise; get client(): unknown; private _wrapStream; } declare function extractGeminiResponse(response: unknown): { text: string; inputTokens?: number; outputTokens?: number; totalTokens?: number; cacheReadTokens?: number; finishReason?: string; functionCalls?: Array>; responseId?: string; }; //#endregion export { GEMINI_AVAILABLE, Gemini, GeminiOptions, _GeminiModule, extractGeminiResponse }; //# sourceMappingURL=gemini.d.ts.map