import React from 'react';
import { ApolloError } from '@apollo/client/errors';
import { OnNewSessionChatResultSubscription } from '../../../__generated__/graphql';
import { ChatMode } from '../../InkeepWidgetProps';
import { type MessageArray } from './AIChatPage';
export declare function cleanMessage(isEnd: boolean, messageContent: string, chatMode: ChatMode): string;
export declare const ON_RECEIVE_RESPONSE_TO_LAST_QUESTION: import("@graphql-typed-document-node/core").TypedDocumentNode<OnNewSessionChatResultSubscription, import("../../../__generated__/graphql").Exact<{
    messageInput: string;
    organizationId: string;
    integrationId?: import("../../../__generated__/graphql").InputMaybe<string> | undefined;
    chatMode?: import("../../../__generated__/graphql").InputMaybe<import("../../../__generated__/graphql").ChatMode> | undefined;
    filters?: import("../../../__generated__/graphql").InputMaybe<import("../../../__generated__/graphql").ChatFiltersInput> | undefined;
}>>;
interface SubscribeToNewMessageForNewChatProps {
    messages: MessageArray;
    setMessages: React.Dispatch<React.SetStateAction<MessageArray>>;
    sessionId: string;
    setSessionId: (newSessionId: string) => void;
    setIsListeningForResponseNewChat: React.Dispatch<React.SetStateAction<boolean>>;
    setResponseError: React.Dispatch<React.SetStateAction<ApolloError | string | null>>;
    setIsResponseTruncated: React.Dispatch<React.SetStateAction<boolean>>;
    setPostChatResultSignals: React.Dispatch<React.SetStateAction<PostChatResultSignals>>;
}
export type PostChatResultSignals = OnNewSessionChatResultSubscription['newSessionChatResult']['postChatResultSignals'];
declare const SubscribeToNewMessageForNewChat: React.MemoExoticComponent<({ messages, setMessages, setIsListeningForResponseNewChat, sessionId, setSessionId, setResponseError, setIsResponseTruncated, setPostChatResultSignals, }: SubscribeToNewMessageForNewChatProps) => import("react/jsx-runtime").JSX.Element>;
export default SubscribeToNewMessageForNewChat;
