import { ChatCompletionRequest, EmbeddingRequest, ImageEditRequest, CreateImageRequest, CreateSpeechRequest, CreateTranscriptionRequest } from './OpenAITypes'; declare class OpenAIClient { private userAuth?; private projectId; private userId; private jwt; private baseURL; private headers; private subscription; constructor(projectId: string, userId?: string | null, userAuth?: { type: string; object: any; } | undefined, baseURL?: string); private initializeHeaders; private initializeSupabaseAuth; private handleAuthEvent; private updateJWT; ensureJWT(): Promise; private clearJWT; destroy(): void; getCompletion(body: ChatCompletionRequest): Promise; getCompletionStream(body: ChatCompletionRequest, onData: (data: string) => void, config?: { timeout?: number; }): Promise; getEmbedding(body: EmbeddingRequest): Promise; getImage(body: CreateImageRequest): Promise; getImageEdit(body: ImageEditRequest): Promise; getSpeech(body: CreateSpeechRequest): Promise; getTranscription(body: CreateTranscriptionRequest): Promise; } export default OpenAIClient;