/* eslint-disable */
//@ts-nocheck
import type * as _Types from '../types';

import type { DocumentNode } from 'graphql';
import * as Apollo from '@apollo/client';
const defaultOptions = {} as const;
export type CopyUsersAssignmentVariables = _Types.Exact<{
  fromExerciseId: _Types.Scalars['ID']['input'];
  toExerciseId: _Types.Scalars['ID']['input'];
}>;


export type CopyUsersAssignment = { copyUsersAssignment: { operationDone: boolean | null } | null };


export const CopyUsersAssignmentDocument = /*#__PURE__*/ {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"CopyUsersAssignment"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"fromExerciseId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"ID"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"toExerciseId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"ID"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"copyUsersAssignment"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"fromExerciseId"},"value":{"kind":"Variable","name":{"kind":"Name","value":"fromExerciseId"}}},{"kind":"Argument","name":{"kind":"Name","value":"toExerciseId"},"value":{"kind":"Variable","name":{"kind":"Name","value":"toExerciseId"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"operationDone"}}]}}]}}]} as unknown as DocumentNode;
export type CopyUsersAssignmentMutationFn = Apollo.MutationFunction<CopyUsersAssignment, CopyUsersAssignmentVariables>;

/**
 * __useCopyUsersAssignment__
 *
 * To run a mutation, you first call `useCopyUsersAssignment` within a React component and pass it any options that fit your needs.
 * When your component renders, `useCopyUsersAssignment` 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 [copyUsersAssignment, { data, loading, error }] = useCopyUsersAssignment({
 *   variables: {
 *      fromExerciseId: // value for 'fromExerciseId'
 *      toExerciseId: // value for 'toExerciseId'
 *   },
 * });
 */
export function useCopyUsersAssignment(baseOptions?: Apollo.MutationHookOptions<CopyUsersAssignment, CopyUsersAssignmentVariables>) {
        const options = {...defaultOptions, ...baseOptions}
        return Apollo.useMutation<CopyUsersAssignment, CopyUsersAssignmentVariables>(CopyUsersAssignmentDocument, options);
      }
export type CopyUsersAssignmentHookResult = ReturnType<typeof useCopyUsersAssignment>;
export type CopyUsersAssignmentMutationResult = Apollo.MutationResult<CopyUsersAssignment>;
export type CopyUsersAssignmentMutationOptions = Apollo.BaseMutationOptions<CopyUsersAssignment, CopyUsersAssignmentVariables>;