/* 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 StartExerciseVariables = _Types.Exact<{
  id: _Types.Scalars['ID']['input'];
}>;


export type StartExercise = { startExercise: { exercise: { id: string } | null } | null };


export const StartExerciseDocument = /*#__PURE__*/ {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"StartExercise"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"id"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"ID"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"startExercise"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"exerciseId"},"value":{"kind":"Variable","name":{"kind":"Name","value":"id"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"exercise"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}}]}}]}}]} as unknown as DocumentNode;
export type StartExerciseMutationFn = Apollo.MutationFunction<StartExercise, StartExerciseVariables>;

/**
 * __useStartExercise__
 *
 * To run a mutation, you first call `useStartExercise` within a React component and pass it any options that fit your needs.
 * When your component renders, `useStartExercise` 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 [startExercise, { data, loading, error }] = useStartExercise({
 *   variables: {
 *      id: // value for 'id'
 *   },
 * });
 */
export function useStartExercise(baseOptions?: Apollo.MutationHookOptions<StartExercise, StartExerciseVariables>) {
        const options = {...defaultOptions, ...baseOptions}
        return Apollo.useMutation<StartExercise, StartExerciseVariables>(StartExerciseDocument, options);
      }
export type StartExerciseHookResult = ReturnType<typeof useStartExercise>;
export type StartExerciseMutationResult = Apollo.MutationResult<StartExercise>;
export type StartExerciseMutationOptions = Apollo.BaseMutationOptions<StartExercise, StartExerciseVariables>;