import type { OAuth2Client } from "google-auth-library"; import type { LLMProvider, Message, ProviderValidateResult } from "./provider.js"; import { type GoogleOAuthTokens } from "./google-oauth.js"; type GoogleAuthMethod = "apiKey" | "oauth"; type GoogleProviderOptions = { apiKey?: string; authMethod?: GoogleAuthMethod; model?: string; validateTimeoutMs?: number; oauthClient?: OAuth2Client; onOAuthTokens?: (tokens: GoogleOAuthTokens) => void; }; export declare class GoogleProvider implements LLMProvider { readonly name = "Google"; private client; private model; private authMethod; private validateTimeoutMs; private oauthClient?; private onOAuthTokens; constructor(apiKeyOrOptions: string | GoogleProviderOptions, model?: string); chat(messages: Message[], systemPrompt: string, maxTokens?: number): Promise; chatStream(messages: Message[], systemPrompt: string, onToken: (token: string) => void): Promise; chatJSON(messages: Message[], systemPrompt: string, schema?: object): Promise; validate(): Promise; private withOAuthRetry; } export {}; //# sourceMappingURL=google.d.ts.map