import type { ChatCompletionTool, ChatCompletionToolChoiceOption } from 'openai/resources/chat/completions'; export interface LLMResponse { content: string; role: string; tool_calls?: Array<{ id: string; type: string; function: { name: string; arguments: string; }; }>; } type ChatRole = 'system' | 'user' | 'assistant' | 'tool'; interface ChatMessage { role: ChatRole; content: string | null; tool_call_id?: string; tool_calls?: Array<{ id: string; type: string; function: { name: string; arguments: string; }; }>; } export declare class OpenAIService { private model; private client; constructor(model?: string); private getClient; generateText(prompt: string, systemPrompt?: string, temperature?: number, tools?: ChatCompletionTool[], tool_choice?: ChatCompletionToolChoiceOption): Promise; generateChat(messages: ChatMessage[], temperature?: number, tools?: ChatCompletionTool[], tool_choice?: ChatCompletionToolChoiceOption): Promise; streamText(prompt: string, systemPrompt: string | undefined, temperature: number | undefined, onToken: (token: string) => void, tools?: ChatCompletionTool[], tool_choice?: ChatCompletionToolChoiceOption, onToolCall?: (toolCall: any) => void): Promise; streamChat(messages: ChatMessage[], temperature: number | undefined, onToken: (token: string) => void): Promise; chatCompletion(messages: ChatMessage[], temperature?: number, tools?: ChatCompletionTool[], tool_choice?: ChatCompletionToolChoiceOption): Promise; } export {};