import { ModelOptions, ModelOptionsInfo, ReasoningEffort } from "../types.js";
/**
 * @discriminator _option_id
 */
export type OpenAiOptions = OpenAiThinkingOptions | OpenAiTextOptions | OpenAiDalleOptions | OpenAiGptImageOptions;
export interface OpenAiThinkingOptions {
    _option_id: "openai-thinking";
    max_tokens?: number;
    stop_sequence?: string[];
    effort?: ReasoningEffort;
    reasoning_effort?: ReasoningEffort;
    image_detail?: "low" | "high" | "auto";
}
export interface OpenAiTextOptions {
    _option_id: "openai-text";
    max_tokens?: number;
    temperature?: number;
    top_p?: number;
    presence_penalty?: number;
    frequency_penalty?: number;
    stop_sequence?: string[];
    image_detail?: "low" | "high" | "auto";
}
export interface OpenAiDalleOptions {
    _option_id: "openai-dalle";
    size?: "256x256" | "512x512" | "1024x1024" | "1792x1024" | "1024x1792";
    image_quality?: "standard" | "hd";
    style?: "vivid" | "natural";
    response_format?: "url" | "b64_json";
    n?: number;
}
export interface OpenAiGptImageOptions {
    _option_id: "openai-gpt-image";
    size?: "1024x1024" | "1024x1536" | "1536x1024" | "auto";
    image_quality?: "low" | "medium" | "high" | "auto";
    background?: "transparent" | "opaque" | "auto";
    output_format?: "png" | "webp" | "jpeg";
}
export declare function getOpenAiOptions(model: string, _option?: ModelOptions): ModelOptionsInfo;
//# sourceMappingURL=openai.d.ts.map