import * as Types from '../../api/types';
import * as ApolloReactCommon from '@apollo/client';
import * as ApolloReactHooks from '@apollo/client';
export declare type SetUserMutationVariables = Types.Exact<{
    data: Types.VisitorInput;
}>;
export declare type SetUserMutation = {
    __typename?: 'Mutation';
    SetUser?: {
        __typename?: 'Visitor';
        name?: string | null;
        email?: string | null;
        image?: string | null;
        attributes?: Array<{
            __typename?: 'VisitorAttributeCategory';
            name: string;
            attributes?: Array<{
                __typename?: 'VisitorAttribute';
                name: string;
                value: string;
                type: Types.VisitorAttributeType;
            } | null> | null;
        } | null> | null;
    } | null;
};
export declare const SetUserDocument: ApolloReactCommon.DocumentNode;
export declare type SetUserMutationFn = ApolloReactCommon.MutationFunction<SetUserMutation, SetUserMutationVariables>;
/**
 * __useSetUserMutation__
 *
 * To run a mutation, you first call `useSetUserMutation` within a React component and pass it any options that fit your needs.
 * When your component renders, `useSetUserMutation` 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 [setUserMutation, { data, loading, error }] = useSetUserMutation({
 *   variables: {
 *      data: // value for 'data'
 *   },
 * });
 */
export declare function useSetUserMutation(baseOptions?: ApolloReactHooks.MutationHookOptions<SetUserMutation, SetUserMutationVariables>): ApolloReactCommon.MutationTuple<SetUserMutation, Types.Exact<{
    data: Types.VisitorInput;
}>, ApolloReactCommon.DefaultContext, ApolloReactCommon.ApolloCache<any>>;
export declare type SetUserMutationHookResult = ReturnType<typeof useSetUserMutation>;
export declare type SetUserMutationResult = ApolloReactCommon.MutationResult<SetUserMutation>;
export declare type SetUserMutationOptions = ApolloReactCommon.BaseMutationOptions<SetUserMutation, SetUserMutationVariables>;
