import type { ChatCitation } from '../../../__generated__/graphql';
import { type MessageArray } from './AIChatPage';
import { ChatCitationWithDisplayOrder } from './chatCitationHelperFunctions';
import { CitationNumberToDisplayOrderMap } from './markdownCitationHelperFunctions';
export interface ChatBubbleProps {
    message: MessageArray[number];
    isListeningForResponse?: boolean;
    loading?: boolean;
    isLast?: boolean;
    ind: number;
    setShowFeedbackModal?: (ind: number) => void;
    setShowResponseEditor?: (ind: number) => void;
    submitPositiveFeedback?: (ind: number) => void;
    onLoadedCitations?: (ind: number) => void;
    chatSessionId: string;
    isMdContainer?: boolean;
}
export declare const useStableCitationNumberToDisplayOrderMap: (usedCitations: ChatCitationWithDisplayOrder[]) => CitationNumberToDisplayOrderMap;
export declare const stableUsedCitations: (message: MessageArray[number], citations: ChatCitation[]) => ChatCitationWithDisplayOrder[];
declare const ChatBubble: ({ message, loading, isListeningForResponse, ind, isLast, setShowFeedbackModal, setShowResponseEditor, submitPositiveFeedback, onLoadedCitations, isMdContainer, chatSessionId, }: ChatBubbleProps) => import("react/jsx-runtime").JSX.Element;
export default ChatBubble;
