import { Agent } from 'node:http';
import { APIClient, DefaultQuery, Fetch, FinalRequestOptions, Headers } from 'openai/core';

import * as API from './resources';
export interface GeminiAIOptions {
    baseURL?: string;
    apiKey?: string;
    timeout?: number | undefined;
    httpAgent?: Agent;
    fetch?: Fetch | undefined;
    defaultHeaders?: Headers;
    defaultQuery?: DefaultQuery;
}
export declare class GeminiAI extends APIClient {
    apiKey: string;
    private _options;
    constructor(options?: GeminiAIOptions);
    chat: API.Chat;
    models: API.Models;
    protected defaultHeaders(opts: FinalRequestOptions): Headers;
    protected defaultQuery(): DefaultQuery | undefined;
}
export declare namespace GeminiAI {
    type ChatModel = API.ChatModel;
    type ChatCompletionCreateParams = API.ChatCompletionCreateParams;
    type ChatCompletionCreateParamsStreaming = API.ChatCompletionCreateParamsStreaming;
    type ChatCompletionCreateParamsNonStreaming = API.ChatCompletionCreateParamsNonStreaming;
}
export default GeminiAI;
