import { ChatContextDetails, ChatMessage, NlqMessage, NlqResponseData, TextMessage } from './api/types'; /** * Result of the useChatSession hook. * * @internal */ export interface UseChatSessionResult { chatId: string | undefined; history: ChatMessage[]; lastNlqResponse: NlqResponseData | null; sendMessage: (message: string) => void; isAwaitingResponse: boolean; isLoading: boolean; lastError: Error | null; } export declare const isNlqMessage: (message: ChatMessage | null | undefined) => message is NlqMessage; export declare const isTextMessage: (message: ChatMessage | null | undefined) => message is TextMessage; /** * React hook that returns a chat session object for the given data model or * perspective. * * Maintains chat history and updates when a message is sent/received or when * history is cleared. * * If a chat session does not already exist, then one is created. * * @param {string} contextTitle - the title of the data model or perspective * @param {ChatContextDetails} [contextDetails] - optional chat context details * @internal */ export declare const useChatSession: (contextTitle: string, contextDetails?: ChatContextDetails) => UseChatSessionResult;