import { AudioFiles } from './microphone';
import { ServiceCallConfig } from './requestSettings';
import { ImageFiles } from './camera';
import { MessageLimits } from './chatLimits';
export interface OpenAIMessage {
    role: 'user' | 'system' | 'ai';
    content: string;
}
export type OpenAIAudioType = {
    type?: 'transcriptions' | 'translations';
};
export type OpenAIAudio = {
    model?: 'whisper-1';
    temperature?: number;
    language?: string;
} & OpenAIAudioType;
export interface OpenAIImages {
    n?: number;
    size?: '256x256' | '512x512' | '1024x1024';
    response_format?: 'url' | 'b64_json';
    user?: string;
}
export type OpenAIChat = {
    systemPrompt?: string;
} & MessageLimits;
export interface OpenAIConverse {
    model?: string;
    max_tokens?: number;
    temperature?: number;
    top_p?: number;
    n?: number;
    stream?: boolean;
}
export interface OpenAI {
    chat?: true | (ServiceCallConfig & OpenAIConverse & OpenAIChat);
    completions?: true | (ServiceCallConfig & OpenAIConverse);
    images?: true | (ServiceCallConfig & OpenAIImages & ImageFiles);
    audio?: true | (ServiceCallConfig & OpenAIAudio & AudioFiles);
}
//# sourceMappingURL=openAI.d.ts.map