import type { id } from '../../../types/typeAliases';
import type { ChatMessage } from '../types/ChatMessage';
/**
 * Props for the rating modal used in Chat.
 *
 * @private component of `<Chat/>`
 */
export type ChatRatingModalProps = {
    isOpen: boolean;
    selectedMessage: ChatMessage | null;
    postprocessedMessages: ReadonlyArray<ChatMessage>;
    messages: ReadonlyArray<ChatMessage>;
    hoveredRating: number;
    messageRatings: Map<id, number>;
    textRating: string;
    mode: 'LIGHT' | 'DARK';
    isMobile: boolean;
    onClose: () => void;
    setHoveredRating: (value: number) => void;
    setMessageRatings: (value: Map<id, number> | ((previous: Map<id, number>) => Map<id, number>)) => void;
    setSelectedMessage: (value: ChatMessage | null) => void;
    setTextRating: (value: string) => void;
    submitRating: () => Promise<void>;
};
/**
 * Modal that captures per-message rating feedback.
 *
 * @private component of `<Chat/>`
 */
export declare function ChatRatingModal(props: ChatRatingModalProps): import("react/jsx-runtime").JSX.Element | null;
