import {
  Training,
  BlockInstance,
  Block,
  ExerciseInstance,
  Exercise
} from '../gql'

export type TTraining = Pick<Training, 'id' | 'type'> &
  Partial<Omit<Training, 'id' | 'type'>>
export type TBlockInstance = Pick<BlockInstance, 'id' | 'block' | 'order'> &
  Partial<Omit<BlockInstance, 'id' | 'block' | 'order'>>
export type TBlock = Pick<
  Block,
  | 'id'
  | 'title'
  | 'exercises'
  | 'videos'
  | 'blocks'
  | 'tracks'
  | 'pictures'
  | 'format'
> &
  Partial<
    Omit<
      Block,
      | 'id'
      | 'title'
      | 'exercises'
      | 'videos'
      | 'blocks'
      | 'tracks'
      | 'pictures'
      | 'format'
    >
  >
export type TExerciseInstance = Pick<ExerciseInstance, 'id' | 'exercise'> &
  Partial<Omit<ExerciseInstance, 'id' | 'exercise'>>
export type TExercise = Pick<
  Exercise,
  'id' | 'name' | 'pictures' | 'videos' | 'targets' | 'baseExercise'
> &
  Partial<
    Omit<
      Exercise,
      'id' | 'name' | 'pictures' | 'videos' | 'targets' | 'baseExercise'
    >
  >
export type TRating = { value: number }
