import { PrivacyConfig } from "../core/privacy.js"; import { AmplitudeOrAI } from "../types.js"; import { BaseAIProvider } from "./base.js"; //#region src/providers/google-genai.d.ts declare const GOOGLE_GENAI_AVAILABLE: boolean; declare const _GoogleGenAIModule: Record | null; interface GoogleGenAIOptions { amplitude: AmplitudeOrAI; apiKey?: string; privacyConfig?: PrivacyConfig | null; /** * Adopt an already-constructed `GoogleGenAI` client instead of building a * fresh one from `apiKey`/`clientOptions`. Used by `wrap()` so the caller's * configured client (Vertex AI, project, location, etc.) is preserved. */ client?: unknown; /** Pass the `@google/genai` module directly to bypass `tryRequire` (required in bundler environments). */ googleGenAIModule?: unknown; /** Additional constructor options forwarded to `new GoogleGenAI(...)` (e.g. `vertexai`, `project`, `location`). */ clientOptions?: Record; } declare class GoogleGenAI extends BaseAIProvider { private _client; constructor(options: GoogleGenAIOptions); private _models; generateContent(params: Record): Promise; generateContentStream(params: Record): Promise>; get client(): unknown; private _wrapStream; } declare function extractGoogleGenAIResponse(response: unknown): { text: string; inputTokens?: number; outputTokens?: number; totalTokens?: number; cacheReadTokens?: number; finishReason?: string; functionCalls?: Array>; responseId?: string; }; //#endregion export { GOOGLE_GENAI_AVAILABLE, GoogleGenAI, GoogleGenAIOptions, _GoogleGenAIModule, extractGoogleGenAIResponse }; //# sourceMappingURL=google-genai.d.ts.map