import { BaseProvider } from './base';
import { TextGenerationParams, TextGenerationResponse, ImageGenerationParams, ImageGenerationResponse, ProviderOptions, ChatCompletionParams, AudioTranscriptionParams, AudioTranscriptionResponse, TextToSpeechParams, TextToSpeechResponse, EmbeddingParams, EmbeddingResponse, ImageEditParams, ImageVariationParams, ModelsResponse, ModelInfo } from '../types';
/**
 * OpenAI专用配置选项
 */
export interface OpenAIOptions extends ProviderOptions {
    model?: string;
    organization?: string;
}
/**
 * OpenAI服务接口实现
 */
export declare class OpenAIProvider extends BaseProvider {
    readonly name = "OpenAI";
    private model;
    private organization?;
    /**
     * 创建一个新的OpenAI服务实例
     */
    constructor(options?: OpenAIOptions);
    /**
     * 获取默认API地址
     */
    protected getDefaultBaseUrl(): string;
    /**
     * 准备API请求头
     */
    protected getHeaders(): Record<string, string>;
    /**
     * 生成文本（旧版API，保留是为了兼容）
     */
    generateText(params: TextGenerationParams): Promise<TextGenerationResponse>;
    /**
     * 对话聊天接口（推荐使用这个）
     */
    chatCompletion(params: ChatCompletionParams): Promise<TextGenerationResponse>;
    /**
     * 生成图片 - 调用DALL·E
     */
    generateImage(params: ImageGenerationParams): Promise<ImageGenerationResponse>;
    /**
     * 图片编辑 - 上传并修改现有图片
     */
    editImage(params: ImageEditParams): Promise<ImageGenerationResponse>;
    /**
     * 图片变体 - 基于上传图片生成相似但不同的版本
     */
    createImageVariation(params: ImageVariationParams): Promise<ImageGenerationResponse>;
    /**
     * 语音识别 - 把录音转成文字
     */
    transcribeAudio(params: AudioTranscriptionParams): Promise<AudioTranscriptionResponse>;
    /**
     * 语音合成 - 把文字转成自然语音
     */
    textToSpeech(params: TextToSpeechParams): Promise<TextToSpeechResponse>;
    /**
     * 生成向量嵌入 - 把文本转为AI可理解的数值向量
     */
    createEmbedding(params: EmbeddingParams): Promise<EmbeddingResponse>;
    /**
     * 测试API密钥是否有效
     */
    validateApiKey(): Promise<boolean>;
    /**
     * 获取可用的模型列表
     */
    listModels(): Promise<ModelsResponse>;
    /**
     * 获取特定模型的详细信息
     */
    getModel(modelId: string): Promise<ModelInfo>;
    /**
     * 直接获取JSON格式的回复
     */
    generateJSON(params: TextGenerationParams): Promise<any>;
    /**
     * 创建流式对话 - 即时获取生成中的回复
     * 返回可监听的数据流
     */
    createStreamingChatCompletion(params: ChatCompletionParams): Promise<ReadableStream<any>>;
}
//# sourceMappingURL=openai.d.ts.map