import { AxiosRequestConfig } from "axios"; import { OpenAI } from "openai"; import { ChatCompletionCreateParamsNonStreaming, ChatCompletionCreateParamsStreaming } from "openai/resources"; import { IOutputConfig } from "./Common"; export type StreamResult = { id: string; chunks: Promise[]; }; export type ChatGptResult = { id: string; content: any; }; export type UpdateCallback = (params: Partial) => void; export type TransformCallback = (params: Partial) => Promise; export type EndCallback = (params: Partial) => void; export type UpdateCallbackParams = { id: string; data: any; progress?: number; }; export type TransformCallbackParams = { item: any; }; export type EndCallbackParams = { id: string; data?: any; error?: Error; }; export declare class Formatter { private openai; private outputParsers; constructor(openai: OpenAI); createChatCompletion(request: ChatCompletionCreateParamsNonStreaming, options: AxiosRequestConfig | undefined, output?: IOutputConfig): Promise; createChatCompletionStream(request: ChatCompletionCreateParamsStreaming, options: AxiosRequestConfig | undefined, output?: IOutputConfig, onUpdate?: UpdateCallback, onTransform?: TransformCallback, onEnd?: EndCallback, signal?: AbortSignal): Promise; }