import { AudioToTextProps, ProcessImageMessageProps, ProcessMessageProps, RegisterFunctionCallingProps } from '../types'; import { AbstractAssistant } from './assistant'; export declare class GPTAssistant extends AbstractAssistant { private openai; private thread; private assistant; private cachedAssistantList; private mutex; private lastMessage; private customMessage; private static openAIKey; private static openAIModel; private static openAIAssistentBody; private static customFunctions; private static instance; private constructor(); private findAssistant; private createThread; /** * Check if the assistant is not latest using version in metadata * @param assistant * @returns */ private static needUpdateAssistant; private static checkOpenAIKey; private static checkOpenAIModel; private static checkOpenAIAssistantName; static getInstance(): Promise; stop(): Promise; close(): Promise; static configure({ model, apiKey, instructions, name, description, version, temperature, top_p, }: { name: string; model: string; apiKey: string; version?: string; instructions?: string; description?: string; temperature?: number; top_p?: number; }): void; static registerFunctionCalling({ name, description, properties, required, callbackFunction, callbackFunctionContext, callbackMessage, }: RegisterFunctionCallingProps): void; audioToText({ audioBlob, }: AudioToTextProps): Promise; /** * Add additional context to the conversation using OpenAI Assistants * Since OpenAI will maintain the context in a thread, so we can add additional context to the conversation * as a user message, and don't expect a response from the assistant. * * @param context String to be added to the conversation context */ addAdditionalContext({ context, callback, }: { context: string; callback?: () => void; }): Promise; processImageMessage({ imageMessage, textMessage, streamMessageCallback, }: ProcessImageMessageProps): Promise; processTextMessage({ textMessage, streamMessageCallback, }: ProcessMessageProps): Promise; private handleRequiresAction; private submitAllToolOutputs; } //# sourceMappingURL=chatgpt.d.ts.map