import type OpenAI from 'openai'; import type { ClientOptions } from 'openai'; import type { SpeechCreateParams } from 'openai/resources/audio/speech'; import type { ReasoningEffort } from 'openai/resources/shared'; export declare enum OpenAIModelNames { GPT_4_1 = "gpt-4.1", GPT_4_1_MINI = "gpt-4.1-mini", GPT_4_1_NANO = "gpt-4.1-nano", GPT_5 = "gpt-5", GPT_5_1 = "gpt-5.1", GPT_5_2 = "gpt-5.2", GPT_5_4 = "gpt-5.4", GPT_5_MINI = "gpt-5-mini", GPT_5_NANO = "gpt-5-nano", GPT_4_OMNI_TRANSCRIBE = "gpt-4o-transcribe", GPT_4_OMNI_MINI_TRANSCRIBE = "gpt-4o-mini-transcribe", TTS_1 = "tts-1", GPT_4_OMNI_MINI_TTS = "gpt-4o-mini-tts" } export declare enum OpenAIRoles { User = "user", Assistant = "assistant", Developer = "developer" } export type OpenAIClient = OpenAI; export type OpenAIClientOptions = ClientOptions; export type OpenAIModelConfigOverrides = (ModelName extends (OpenAIModelNames.GPT_5 | OpenAIModelNames.GPT_5_MINI | OpenAIModelNames.GPT_5_NANO) ? Partial<{ temperature: 1; reasoning_effort: Exclude | null; verbosity: 'low' | 'medium' | 'high' | null; }> : ModelName extends (OpenAIModelNames.GPT_5_1 | OpenAIModelNames.GPT_5_2 | OpenAIModelNames.GPT_5_4) ? Partial<{ temperature: 1; reasoning_effort: ReasoningEffort | null; verbosity: 'low' | 'medium' | 'high' | null; }> : {}); export type OpenAISpeechOptions = Pick; export interface OpenAIResponsesAPIConfig { previousResponseId?: string; tools?: OpenAITool[]; instructions?: string; } export type OpenAITool = OpenAI.Responses.Tool; export type ResponseInput = OpenAI.Responses.ResponseInput; export type ResponseInputContent = OpenAI.Responses.ResponseInputContent; /** * The trace-only transcript of one Responses-API turn: the items sent as * input, the items the model produced, and the tool outputs handed back to it. * Wider than `ResponseInput` because output items — narration, reasoning, tool * calls — are exactly what makes a round readable, and safe to widen because * this array is never sent to the provider. */ export type TracedResponseConversation = (OpenAI.Responses.ResponseInputItem | OpenAI.Responses.ResponseOutputItem)[]; export declare enum OpenAIErrorType { InvalidRequestError = "invalid_request_error" } export declare enum OpenAIErrorCode { InvalidValue = "invalid_value" } export declare enum OpenAIErrorParam { File = "file" }