import { GoogleGenAI } from '@google/genai'; import { ModelCapabilities, ChatModel, EmbeddingModel, ImageModel } from '@core-ai/core-ai'; import { z } from 'zod'; type GoogleModelCapabilities = Omit & { reasoning: ModelCapabilities['reasoning'] & { thinkingParam: 'thinkingLevel' | 'thinkingBudget'; }; }; declare function getGoogleModelCapabilities(modelId: string): GoogleModelCapabilities; /** * Thought signature Google attaches under the `google` provider metadata key. * Used on reasoning parts today, and on tool-call parts so Gemini 3 function * calls can be replayed without a missing-`thought_signature` 400. */ type GoogleReasoningMetadata = { thoughtSignature?: string; }; type GoogleGenAIClient = { models: GoogleGenAI['models']; }; type GoogleGenAIProviderBaseOptions = { apiKey?: string; apiVersion?: string; baseUrl?: string; client?: GoogleGenAIClient; }; type GoogleGenAIProviderFactoryOptions = { providerId?: string; }; type GoogleGenAIProviderOptions = GoogleGenAIProviderBaseOptions; type GoogleGenAIProvider = { chatModel(modelId: string): ChatModel; embeddingModel(modelId: string): EmbeddingModel; imageModel(modelId: string): ImageModel; }; declare function createGoogleGenAIProvider(options?: GoogleGenAIProviderBaseOptions, factoryOptions?: GoogleGenAIProviderFactoryOptions): GoogleGenAIProvider; declare function createGoogleGenAI(options?: GoogleGenAIProviderOptions): GoogleGenAIProvider; declare const googleGenerateProviderOptionsSchema: z.ZodObject<{ stopSequences: z.ZodOptional>; frequencyPenalty: z.ZodOptional; presencePenalty: z.ZodOptional; seed: z.ZodOptional; topK: z.ZodOptional; }, z.core.$strict>; type GoogleGenerateProviderOptions = z.infer; declare const googleEmbedProviderOptionsSchema: z.ZodObject<{ taskType: z.ZodOptional; title: z.ZodOptional; mimeType: z.ZodOptional; autoTruncate: z.ZodOptional; }, z.core.$strict>; type GoogleEmbedProviderOptions = z.infer; declare const googleImageProviderOptionsSchema: z.ZodObject<{ outputGcsUri: z.ZodOptional; negativePrompt: z.ZodOptional; aspectRatio: z.ZodOptional; guidanceScale: z.ZodOptional; seed: z.ZodOptional; safetyFilterLevel: z.ZodOptional>; personGeneration: z.ZodOptional>; includeSafetyAttributes: z.ZodOptional; includeRaiReason: z.ZodOptional; language: z.ZodOptional; outputMimeType: z.ZodOptional; outputCompressionQuality: z.ZodOptional; addWatermark: z.ZodOptional; labels: z.ZodOptional>; imageSize: z.ZodOptional; enhancePrompt: z.ZodOptional; }, z.core.$strict>; type GoogleImageProviderOptions = z.infer; declare module '@core-ai/core-ai' { interface GenerateProviderOptions { google?: GoogleGenerateProviderOptions; } interface EmbedProviderOptions { google?: GoogleEmbedProviderOptions; } interface ImageProviderOptions { google?: GoogleImageProviderOptions; } } declare const googleProviderOptionsSchema: z.ZodObject<{ stopSequences: z.ZodOptional>; frequencyPenalty: z.ZodOptional; presencePenalty: z.ZodOptional; seed: z.ZodOptional; topK: z.ZodOptional; }, z.core.$strict>; type GoogleProviderOptions = GoogleGenerateProviderOptions; export { type GoogleEmbedProviderOptions, type GoogleGenAIClient, type GoogleGenAIProvider, type GoogleGenAIProviderBaseOptions, type GoogleGenAIProviderFactoryOptions, type GoogleGenAIProviderOptions, type GoogleGenerateProviderOptions, type GoogleImageProviderOptions, type GoogleModelCapabilities, type GoogleProviderOptions as GoogleModelProviderOptions, type GoogleReasoningMetadata, createGoogleGenAI, createGoogleGenAIProvider, getGoogleModelCapabilities, googleEmbedProviderOptionsSchema, googleGenerateProviderOptionsSchema, googleImageProviderOptionsSchema, googleProviderOptionsSchema };