import { CallbackFunction, CustomFunctionContext, CustomMessageCallback, StreamMessageCallback } from '../types'; /** * Props for the Assistant UI and useAssistant hook. * * @param name - The name of the assistant. * @param modelProvider - The model provider. * @param model - The model. * @param apiKey - The API key. * @param version - The version. * @param description - The description. * @param temperature - The temperature. * @param topP - The topP. * @param instructions - The instructions. * @param functions - The functions. * @param functions.name - The name of the function. * @param functions.description - The description of the function. * @param functions.properties - The properties of the function. * @param functions.required - The required properties of the function. * @param functions.callbackFunction - The callback function of the function. See {@link CallbackFunction} for more details. * @param functions.callbackFunctionContext - The context of the callback function. See {@link CustomFunctionContext} for more details. * @param functions.callbackMessage - The message of the callback function. See {@link CustomMessageCallback} for more details. */ export type UseAssistantProps = { name: string; modelProvider: string; model: string; apiKey: string; version: string; baseUrl?: string; description?: string; temperature?: number; topP?: number; instructions: string; functions: { name: string; description: string; properties: { [key: string]: { type: string; description: string; }; }; required: string[]; callbackFunction: CallbackFunction; callbackFunctionContext?: CustomFunctionContext; callbackMessage?: CustomMessageCallback; }[]; }; /** * Type of SendTextMessageProps * * @param message - The message to be sent. * @param streamMessageCallback - The stream message callback to stream the message back to the UI. See {@link StreamMessageCallback} for more details. */ export type SendTextMessageProps = { message: string; streamMessageCallback: StreamMessageCallback; }; /** * Type of SendImageMessageProps * * @param imageBase64String - The image base64 string to be sent. * @param message - The message to be sent. * @param streamMessageCallback - The stream message callback to stream the message back to the UI. See {@link StreamMessageCallback} for more details. */ export type SendImageMessageProps = { imageBase64String: string; message: string; streamMessageCallback: StreamMessageCallback; }; /** * A custom hook for managing an AI assistant. * This hook provides functionality to initialize, send messages to, and control an AI assistant. * * @param {UseAssistantProps} props - Configuration options for the assistant. * @returns {Object} An object containing methods to interact with the assistant and its current status. */ export declare function useAssistant({ modelProvider, model, apiKey, baseUrl, temperature, topP, instructions, functions, name, description, version, }: UseAssistantProps): { initializeAssistant: () => Promise; sendTextMessage: ({ message, streamMessageCallback, }: SendTextMessageProps) => Promise; sendImageMessage: ({ imageBase64String, message, streamMessageCallback, }: SendImageMessageProps) => Promise; audioToText: (audioBlob: Blob) => Promise; addAdditionalContext: ({ context, callback, }: { context: string; callback?: () => void; }) => Promise; stopChat: () => void; restartChat: () => Promise; apiKeyStatus: string; }; //# sourceMappingURL=use-assistant.d.ts.map