import * as Types from '../../../../../api/types';
import * as ApolloReactCommon from '@apollo/client';
import * as ApolloReactHooks from '@apollo/client';
export declare type CreateConversationMutationVariables = Types.Exact<{
    [key: string]: never;
}>;
export declare type CreateConversationMutation = {
    __typename?: 'Mutation';
    CreateConversation: {
        __typename?: 'Conversation';
        _id: string;
        done: boolean;
        answered: boolean;
        createdAt: string;
        visitor: {
            __typename?: 'Visitor';
            name?: string | null;
            email?: string | null;
            image?: string | null;
        };
        lastItem?: {
            __typename?: 'ConversationItem';
            _id: string;
            conversationId: string;
            createdAt: string;
            senderType: Types.ConversationSenderType;
            card?: {
                __typename?: 'ConversationCard';
                type: Types.ConversationCardType;
                title?: string | null;
                appTitle?: string | null;
                description?: string | null;
            } | null;
            buttons: Array<{
                __typename?: 'ConversationItemButton';
                _id: string;
                text: string;
            }>;
            content: {
                __typename?: 'ConversationContent';
                type: Types.ConversationContentType;
                messageString?: string | null;
                message: Array<{
                    __typename?: 'ParagraphElement';
                    _id: string;
                    type: string;
                    children: Array<{
                        __typename?: 'InlineLinkElement';
                        _id: string;
                        url: string;
                        type: string;
                        children?: Array<{
                            __typename?: 'InlineTextElement';
                            _id: string;
                            text: string;
                            bold?: boolean | null;
                            italic?: boolean | null;
                            underline?: boolean | null;
                        }> | null;
                    } | {
                        __typename?: 'InlineTextElement';
                        _id: string;
                        text: string;
                        bold?: boolean | null;
                        italic?: boolean | null;
                        underline?: boolean | null;
                    }>;
                }>;
            };
            sender: {
                __typename?: 'APIIntegration';
                logoURL?: string | null;
                displayName?: string | null;
                displayDescription?: string | null;
            } | {
                __typename?: 'MemberUser';
                name?: string | null;
                lastName: string;
                firstName: string;
                logoURL?: string | null;
            } | {
                __typename?: 'Visitor';
                _id: string;
                name?: string | null;
                image?: string | null;
            };
        } | null;
    };
};
export declare const CreateConversationDocument: ApolloReactCommon.DocumentNode;
export declare type CreateConversationMutationFn = ApolloReactCommon.MutationFunction<CreateConversationMutation, CreateConversationMutationVariables>;
/**
 * __useCreateConversationMutation__
 *
 * To run a mutation, you first call `useCreateConversationMutation` within a React component and pass it any options that fit your needs.
 * When your component renders, `useCreateConversationMutation` returns a tuple that includes:
 * - A mutate function that you can call at any time to execute the mutation
 * - An object with fields that represent the current status of the mutation's execution
 *
 * @param baseOptions options that will be passed into the mutation, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options-2;
 *
 * @example
 * const [createConversationMutation, { data, loading, error }] = useCreateConversationMutation({
 *   variables: {
 *   },
 * });
 */
export declare function useCreateConversationMutation(baseOptions?: ApolloReactHooks.MutationHookOptions<CreateConversationMutation, CreateConversationMutationVariables>): ApolloReactCommon.MutationTuple<CreateConversationMutation, Types.Exact<{
    [key: string]: never;
}>, ApolloReactCommon.DefaultContext, ApolloReactCommon.ApolloCache<any>>;
export declare type CreateConversationMutationHookResult = ReturnType<typeof useCreateConversationMutation>;
export declare type CreateConversationMutationResult = ApolloReactCommon.MutationResult<CreateConversationMutation>;
export declare type CreateConversationMutationOptions = ApolloReactCommon.BaseMutationOptions<CreateConversationMutation, CreateConversationMutationVariables>;
