|  | @@ -0,0 +1,4413 @@
 | 
	
		
			
				|  |  | +// Code generated by Prisma (prisma@1.34.10). DO NOT EDIT.
 | 
	
		
			
				|  |  | +// Please don't change this file manually but run `prisma generate` to update it.
 | 
	
		
			
				|  |  | +// For more information, please read the docs: https://www.prisma.io/docs/prisma-client/
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +import { DocumentNode } from "graphql";
 | 
	
		
			
				|  |  | +import {
 | 
	
		
			
				|  |  | +  makePrismaClientClass,
 | 
	
		
			
				|  |  | +  BaseClientOptions,
 | 
	
		
			
				|  |  | +  Model
 | 
	
		
			
				|  |  | +} from "prisma-client-lib";
 | 
	
		
			
				|  |  | +import { typeDefs } from "./prisma-schema";
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export type AtLeastOne<T, U = { [K in keyof T]: Pick<T, K> }> = Partial<T> &
 | 
	
		
			
				|  |  | +  U[keyof U];
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export type Maybe<T> = T | undefined | null;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface Exists {
 | 
	
		
			
				|  |  | +  block: (where?: BlockWhereInput) => Promise<boolean>;
 | 
	
		
			
				|  |  | +  comment: (where?: CommentWhereInput) => Promise<boolean>;
 | 
	
		
			
				|  |  | +  exercise: (where?: ExerciseWhereInput) => Promise<boolean>;
 | 
	
		
			
				|  |  | +  exerciseInstance: (where?: ExerciseInstanceWhereInput) => Promise<boolean>;
 | 
	
		
			
				|  |  | +  format: (where?: FormatWhereInput) => Promise<boolean>;
 | 
	
		
			
				|  |  | +  rating: (where?: RatingWhereInput) => Promise<boolean>;
 | 
	
		
			
				|  |  | +  track: (where?: TrackWhereInput) => Promise<boolean>;
 | 
	
		
			
				|  |  | +  training: (where?: TrainingWhereInput) => Promise<boolean>;
 | 
	
		
			
				|  |  | +  trainingType: (where?: TrainingTypeWhereInput) => Promise<boolean>;
 | 
	
		
			
				|  |  | +  user: (where?: UserWhereInput) => Promise<boolean>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface Node {}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export type FragmentableArray<T> = Promise<Array<T>> & Fragmentable;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface Fragmentable {
 | 
	
		
			
				|  |  | +  $fragment<T>(fragment: string | DocumentNode): Promise<T>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface Prisma {
 | 
	
		
			
				|  |  | +  $exists: Exists;
 | 
	
		
			
				|  |  | +  $graphql: <T = any>(
 | 
	
		
			
				|  |  | +    query: string,
 | 
	
		
			
				|  |  | +    variables?: { [key: string]: any }
 | 
	
		
			
				|  |  | +  ) => Promise<T>;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  /**
 | 
	
		
			
				|  |  | +   * Queries
 | 
	
		
			
				|  |  | +   */
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  block: (where: BlockWhereUniqueInput) => BlockNullablePromise;
 | 
	
		
			
				|  |  | +  blocks: (args?: {
 | 
	
		
			
				|  |  | +    where?: BlockWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: BlockOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => FragmentableArray<Block>;
 | 
	
		
			
				|  |  | +  blocksConnection: (args?: {
 | 
	
		
			
				|  |  | +    where?: BlockWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: BlockOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => BlockConnectionPromise;
 | 
	
		
			
				|  |  | +  comment: (where: CommentWhereUniqueInput) => CommentNullablePromise;
 | 
	
		
			
				|  |  | +  comments: (args?: {
 | 
	
		
			
				|  |  | +    where?: CommentWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: CommentOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => FragmentableArray<Comment>;
 | 
	
		
			
				|  |  | +  commentsConnection: (args?: {
 | 
	
		
			
				|  |  | +    where?: CommentWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: CommentOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => CommentConnectionPromise;
 | 
	
		
			
				|  |  | +  exercise: (where: ExerciseWhereUniqueInput) => ExerciseNullablePromise;
 | 
	
		
			
				|  |  | +  exercises: (args?: {
 | 
	
		
			
				|  |  | +    where?: ExerciseWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: ExerciseOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => FragmentableArray<Exercise>;
 | 
	
		
			
				|  |  | +  exercisesConnection: (args?: {
 | 
	
		
			
				|  |  | +    where?: ExerciseWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: ExerciseOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => ExerciseConnectionPromise;
 | 
	
		
			
				|  |  | +  exerciseInstance: (
 | 
	
		
			
				|  |  | +    where: ExerciseInstanceWhereUniqueInput
 | 
	
		
			
				|  |  | +  ) => ExerciseInstanceNullablePromise;
 | 
	
		
			
				|  |  | +  exerciseInstances: (args?: {
 | 
	
		
			
				|  |  | +    where?: ExerciseInstanceWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: ExerciseInstanceOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => FragmentableArray<ExerciseInstance>;
 | 
	
		
			
				|  |  | +  exerciseInstancesConnection: (args?: {
 | 
	
		
			
				|  |  | +    where?: ExerciseInstanceWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: ExerciseInstanceOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => ExerciseInstanceConnectionPromise;
 | 
	
		
			
				|  |  | +  format: (where: FormatWhereUniqueInput) => FormatNullablePromise;
 | 
	
		
			
				|  |  | +  formats: (args?: {
 | 
	
		
			
				|  |  | +    where?: FormatWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: FormatOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => FragmentableArray<Format>;
 | 
	
		
			
				|  |  | +  formatsConnection: (args?: {
 | 
	
		
			
				|  |  | +    where?: FormatWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: FormatOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => FormatConnectionPromise;
 | 
	
		
			
				|  |  | +  rating: (where: RatingWhereUniqueInput) => RatingNullablePromise;
 | 
	
		
			
				|  |  | +  ratings: (args?: {
 | 
	
		
			
				|  |  | +    where?: RatingWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: RatingOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => FragmentableArray<Rating>;
 | 
	
		
			
				|  |  | +  ratingsConnection: (args?: {
 | 
	
		
			
				|  |  | +    where?: RatingWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: RatingOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => RatingConnectionPromise;
 | 
	
		
			
				|  |  | +  track: (where: TrackWhereUniqueInput) => TrackNullablePromise;
 | 
	
		
			
				|  |  | +  tracks: (args?: {
 | 
	
		
			
				|  |  | +    where?: TrackWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: TrackOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => FragmentableArray<Track>;
 | 
	
		
			
				|  |  | +  tracksConnection: (args?: {
 | 
	
		
			
				|  |  | +    where?: TrackWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: TrackOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => TrackConnectionPromise;
 | 
	
		
			
				|  |  | +  training: (where: TrainingWhereUniqueInput) => TrainingNullablePromise;
 | 
	
		
			
				|  |  | +  trainings: (args?: {
 | 
	
		
			
				|  |  | +    where?: TrainingWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: TrainingOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => FragmentableArray<Training>;
 | 
	
		
			
				|  |  | +  trainingsConnection: (args?: {
 | 
	
		
			
				|  |  | +    where?: TrainingWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: TrainingOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => TrainingConnectionPromise;
 | 
	
		
			
				|  |  | +  trainingType: (
 | 
	
		
			
				|  |  | +    where: TrainingTypeWhereUniqueInput
 | 
	
		
			
				|  |  | +  ) => TrainingTypeNullablePromise;
 | 
	
		
			
				|  |  | +  trainingTypes: (args?: {
 | 
	
		
			
				|  |  | +    where?: TrainingTypeWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: TrainingTypeOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => FragmentableArray<TrainingType>;
 | 
	
		
			
				|  |  | +  trainingTypesConnection: (args?: {
 | 
	
		
			
				|  |  | +    where?: TrainingTypeWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: TrainingTypeOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => TrainingTypeConnectionPromise;
 | 
	
		
			
				|  |  | +  user: (where: UserWhereUniqueInput) => UserNullablePromise;
 | 
	
		
			
				|  |  | +  users: (args?: {
 | 
	
		
			
				|  |  | +    where?: UserWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: UserOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => FragmentableArray<User>;
 | 
	
		
			
				|  |  | +  usersConnection: (args?: {
 | 
	
		
			
				|  |  | +    where?: UserWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: UserOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => UserConnectionPromise;
 | 
	
		
			
				|  |  | +  node: (args: { id: ID_Output }) => Node;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  /**
 | 
	
		
			
				|  |  | +   * Mutations
 | 
	
		
			
				|  |  | +   */
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  createBlock: (data: BlockCreateInput) => BlockPromise;
 | 
	
		
			
				|  |  | +  updateBlock: (args: {
 | 
	
		
			
				|  |  | +    data: BlockUpdateInput;
 | 
	
		
			
				|  |  | +    where: BlockWhereUniqueInput;
 | 
	
		
			
				|  |  | +  }) => BlockPromise;
 | 
	
		
			
				|  |  | +  updateManyBlocks: (args: {
 | 
	
		
			
				|  |  | +    data: BlockUpdateManyMutationInput;
 | 
	
		
			
				|  |  | +    where?: BlockWhereInput;
 | 
	
		
			
				|  |  | +  }) => BatchPayloadPromise;
 | 
	
		
			
				|  |  | +  upsertBlock: (args: {
 | 
	
		
			
				|  |  | +    where: BlockWhereUniqueInput;
 | 
	
		
			
				|  |  | +    create: BlockCreateInput;
 | 
	
		
			
				|  |  | +    update: BlockUpdateInput;
 | 
	
		
			
				|  |  | +  }) => BlockPromise;
 | 
	
		
			
				|  |  | +  deleteBlock: (where: BlockWhereUniqueInput) => BlockPromise;
 | 
	
		
			
				|  |  | +  deleteManyBlocks: (where?: BlockWhereInput) => BatchPayloadPromise;
 | 
	
		
			
				|  |  | +  createComment: (data: CommentCreateInput) => CommentPromise;
 | 
	
		
			
				|  |  | +  updateComment: (args: {
 | 
	
		
			
				|  |  | +    data: CommentUpdateInput;
 | 
	
		
			
				|  |  | +    where: CommentWhereUniqueInput;
 | 
	
		
			
				|  |  | +  }) => CommentPromise;
 | 
	
		
			
				|  |  | +  updateManyComments: (args: {
 | 
	
		
			
				|  |  | +    data: CommentUpdateManyMutationInput;
 | 
	
		
			
				|  |  | +    where?: CommentWhereInput;
 | 
	
		
			
				|  |  | +  }) => BatchPayloadPromise;
 | 
	
		
			
				|  |  | +  upsertComment: (args: {
 | 
	
		
			
				|  |  | +    where: CommentWhereUniqueInput;
 | 
	
		
			
				|  |  | +    create: CommentCreateInput;
 | 
	
		
			
				|  |  | +    update: CommentUpdateInput;
 | 
	
		
			
				|  |  | +  }) => CommentPromise;
 | 
	
		
			
				|  |  | +  deleteComment: (where: CommentWhereUniqueInput) => CommentPromise;
 | 
	
		
			
				|  |  | +  deleteManyComments: (where?: CommentWhereInput) => BatchPayloadPromise;
 | 
	
		
			
				|  |  | +  createExercise: (data: ExerciseCreateInput) => ExercisePromise;
 | 
	
		
			
				|  |  | +  updateExercise: (args: {
 | 
	
		
			
				|  |  | +    data: ExerciseUpdateInput;
 | 
	
		
			
				|  |  | +    where: ExerciseWhereUniqueInput;
 | 
	
		
			
				|  |  | +  }) => ExercisePromise;
 | 
	
		
			
				|  |  | +  updateManyExercises: (args: {
 | 
	
		
			
				|  |  | +    data: ExerciseUpdateManyMutationInput;
 | 
	
		
			
				|  |  | +    where?: ExerciseWhereInput;
 | 
	
		
			
				|  |  | +  }) => BatchPayloadPromise;
 | 
	
		
			
				|  |  | +  upsertExercise: (args: {
 | 
	
		
			
				|  |  | +    where: ExerciseWhereUniqueInput;
 | 
	
		
			
				|  |  | +    create: ExerciseCreateInput;
 | 
	
		
			
				|  |  | +    update: ExerciseUpdateInput;
 | 
	
		
			
				|  |  | +  }) => ExercisePromise;
 | 
	
		
			
				|  |  | +  deleteExercise: (where: ExerciseWhereUniqueInput) => ExercisePromise;
 | 
	
		
			
				|  |  | +  deleteManyExercises: (where?: ExerciseWhereInput) => BatchPayloadPromise;
 | 
	
		
			
				|  |  | +  createExerciseInstance: (
 | 
	
		
			
				|  |  | +    data: ExerciseInstanceCreateInput
 | 
	
		
			
				|  |  | +  ) => ExerciseInstancePromise;
 | 
	
		
			
				|  |  | +  updateExerciseInstance: (args: {
 | 
	
		
			
				|  |  | +    data: ExerciseInstanceUpdateInput;
 | 
	
		
			
				|  |  | +    where: ExerciseInstanceWhereUniqueInput;
 | 
	
		
			
				|  |  | +  }) => ExerciseInstancePromise;
 | 
	
		
			
				|  |  | +  updateManyExerciseInstances: (args: {
 | 
	
		
			
				|  |  | +    data: ExerciseInstanceUpdateManyMutationInput;
 | 
	
		
			
				|  |  | +    where?: ExerciseInstanceWhereInput;
 | 
	
		
			
				|  |  | +  }) => BatchPayloadPromise;
 | 
	
		
			
				|  |  | +  upsertExerciseInstance: (args: {
 | 
	
		
			
				|  |  | +    where: ExerciseInstanceWhereUniqueInput;
 | 
	
		
			
				|  |  | +    create: ExerciseInstanceCreateInput;
 | 
	
		
			
				|  |  | +    update: ExerciseInstanceUpdateInput;
 | 
	
		
			
				|  |  | +  }) => ExerciseInstancePromise;
 | 
	
		
			
				|  |  | +  deleteExerciseInstance: (
 | 
	
		
			
				|  |  | +    where: ExerciseInstanceWhereUniqueInput
 | 
	
		
			
				|  |  | +  ) => ExerciseInstancePromise;
 | 
	
		
			
				|  |  | +  deleteManyExerciseInstances: (
 | 
	
		
			
				|  |  | +    where?: ExerciseInstanceWhereInput
 | 
	
		
			
				|  |  | +  ) => BatchPayloadPromise;
 | 
	
		
			
				|  |  | +  createFormat: (data: FormatCreateInput) => FormatPromise;
 | 
	
		
			
				|  |  | +  updateFormat: (args: {
 | 
	
		
			
				|  |  | +    data: FormatUpdateInput;
 | 
	
		
			
				|  |  | +    where: FormatWhereUniqueInput;
 | 
	
		
			
				|  |  | +  }) => FormatPromise;
 | 
	
		
			
				|  |  | +  updateManyFormats: (args: {
 | 
	
		
			
				|  |  | +    data: FormatUpdateManyMutationInput;
 | 
	
		
			
				|  |  | +    where?: FormatWhereInput;
 | 
	
		
			
				|  |  | +  }) => BatchPayloadPromise;
 | 
	
		
			
				|  |  | +  upsertFormat: (args: {
 | 
	
		
			
				|  |  | +    where: FormatWhereUniqueInput;
 | 
	
		
			
				|  |  | +    create: FormatCreateInput;
 | 
	
		
			
				|  |  | +    update: FormatUpdateInput;
 | 
	
		
			
				|  |  | +  }) => FormatPromise;
 | 
	
		
			
				|  |  | +  deleteFormat: (where: FormatWhereUniqueInput) => FormatPromise;
 | 
	
		
			
				|  |  | +  deleteManyFormats: (where?: FormatWhereInput) => BatchPayloadPromise;
 | 
	
		
			
				|  |  | +  createRating: (data: RatingCreateInput) => RatingPromise;
 | 
	
		
			
				|  |  | +  updateRating: (args: {
 | 
	
		
			
				|  |  | +    data: RatingUpdateInput;
 | 
	
		
			
				|  |  | +    where: RatingWhereUniqueInput;
 | 
	
		
			
				|  |  | +  }) => RatingPromise;
 | 
	
		
			
				|  |  | +  updateManyRatings: (args: {
 | 
	
		
			
				|  |  | +    data: RatingUpdateManyMutationInput;
 | 
	
		
			
				|  |  | +    where?: RatingWhereInput;
 | 
	
		
			
				|  |  | +  }) => BatchPayloadPromise;
 | 
	
		
			
				|  |  | +  upsertRating: (args: {
 | 
	
		
			
				|  |  | +    where: RatingWhereUniqueInput;
 | 
	
		
			
				|  |  | +    create: RatingCreateInput;
 | 
	
		
			
				|  |  | +    update: RatingUpdateInput;
 | 
	
		
			
				|  |  | +  }) => RatingPromise;
 | 
	
		
			
				|  |  | +  deleteRating: (where: RatingWhereUniqueInput) => RatingPromise;
 | 
	
		
			
				|  |  | +  deleteManyRatings: (where?: RatingWhereInput) => BatchPayloadPromise;
 | 
	
		
			
				|  |  | +  createTrack: (data: TrackCreateInput) => TrackPromise;
 | 
	
		
			
				|  |  | +  updateTrack: (args: {
 | 
	
		
			
				|  |  | +    data: TrackUpdateInput;
 | 
	
		
			
				|  |  | +    where: TrackWhereUniqueInput;
 | 
	
		
			
				|  |  | +  }) => TrackPromise;
 | 
	
		
			
				|  |  | +  updateManyTracks: (args: {
 | 
	
		
			
				|  |  | +    data: TrackUpdateManyMutationInput;
 | 
	
		
			
				|  |  | +    where?: TrackWhereInput;
 | 
	
		
			
				|  |  | +  }) => BatchPayloadPromise;
 | 
	
		
			
				|  |  | +  upsertTrack: (args: {
 | 
	
		
			
				|  |  | +    where: TrackWhereUniqueInput;
 | 
	
		
			
				|  |  | +    create: TrackCreateInput;
 | 
	
		
			
				|  |  | +    update: TrackUpdateInput;
 | 
	
		
			
				|  |  | +  }) => TrackPromise;
 | 
	
		
			
				|  |  | +  deleteTrack: (where: TrackWhereUniqueInput) => TrackPromise;
 | 
	
		
			
				|  |  | +  deleteManyTracks: (where?: TrackWhereInput) => BatchPayloadPromise;
 | 
	
		
			
				|  |  | +  createTraining: (data: TrainingCreateInput) => TrainingPromise;
 | 
	
		
			
				|  |  | +  updateTraining: (args: {
 | 
	
		
			
				|  |  | +    data: TrainingUpdateInput;
 | 
	
		
			
				|  |  | +    where: TrainingWhereUniqueInput;
 | 
	
		
			
				|  |  | +  }) => TrainingPromise;
 | 
	
		
			
				|  |  | +  updateManyTrainings: (args: {
 | 
	
		
			
				|  |  | +    data: TrainingUpdateManyMutationInput;
 | 
	
		
			
				|  |  | +    where?: TrainingWhereInput;
 | 
	
		
			
				|  |  | +  }) => BatchPayloadPromise;
 | 
	
		
			
				|  |  | +  upsertTraining: (args: {
 | 
	
		
			
				|  |  | +    where: TrainingWhereUniqueInput;
 | 
	
		
			
				|  |  | +    create: TrainingCreateInput;
 | 
	
		
			
				|  |  | +    update: TrainingUpdateInput;
 | 
	
		
			
				|  |  | +  }) => TrainingPromise;
 | 
	
		
			
				|  |  | +  deleteTraining: (where: TrainingWhereUniqueInput) => TrainingPromise;
 | 
	
		
			
				|  |  | +  deleteManyTrainings: (where?: TrainingWhereInput) => BatchPayloadPromise;
 | 
	
		
			
				|  |  | +  createTrainingType: (data: TrainingTypeCreateInput) => TrainingTypePromise;
 | 
	
		
			
				|  |  | +  updateTrainingType: (args: {
 | 
	
		
			
				|  |  | +    data: TrainingTypeUpdateInput;
 | 
	
		
			
				|  |  | +    where: TrainingTypeWhereUniqueInput;
 | 
	
		
			
				|  |  | +  }) => TrainingTypePromise;
 | 
	
		
			
				|  |  | +  updateManyTrainingTypes: (args: {
 | 
	
		
			
				|  |  | +    data: TrainingTypeUpdateManyMutationInput;
 | 
	
		
			
				|  |  | +    where?: TrainingTypeWhereInput;
 | 
	
		
			
				|  |  | +  }) => BatchPayloadPromise;
 | 
	
		
			
				|  |  | +  upsertTrainingType: (args: {
 | 
	
		
			
				|  |  | +    where: TrainingTypeWhereUniqueInput;
 | 
	
		
			
				|  |  | +    create: TrainingTypeCreateInput;
 | 
	
		
			
				|  |  | +    update: TrainingTypeUpdateInput;
 | 
	
		
			
				|  |  | +  }) => TrainingTypePromise;
 | 
	
		
			
				|  |  | +  deleteTrainingType: (
 | 
	
		
			
				|  |  | +    where: TrainingTypeWhereUniqueInput
 | 
	
		
			
				|  |  | +  ) => TrainingTypePromise;
 | 
	
		
			
				|  |  | +  deleteManyTrainingTypes: (
 | 
	
		
			
				|  |  | +    where?: TrainingTypeWhereInput
 | 
	
		
			
				|  |  | +  ) => BatchPayloadPromise;
 | 
	
		
			
				|  |  | +  createUser: (data: UserCreateInput) => UserPromise;
 | 
	
		
			
				|  |  | +  updateUser: (args: {
 | 
	
		
			
				|  |  | +    data: UserUpdateInput;
 | 
	
		
			
				|  |  | +    where: UserWhereUniqueInput;
 | 
	
		
			
				|  |  | +  }) => UserPromise;
 | 
	
		
			
				|  |  | +  updateManyUsers: (args: {
 | 
	
		
			
				|  |  | +    data: UserUpdateManyMutationInput;
 | 
	
		
			
				|  |  | +    where?: UserWhereInput;
 | 
	
		
			
				|  |  | +  }) => BatchPayloadPromise;
 | 
	
		
			
				|  |  | +  upsertUser: (args: {
 | 
	
		
			
				|  |  | +    where: UserWhereUniqueInput;
 | 
	
		
			
				|  |  | +    create: UserCreateInput;
 | 
	
		
			
				|  |  | +    update: UserUpdateInput;
 | 
	
		
			
				|  |  | +  }) => UserPromise;
 | 
	
		
			
				|  |  | +  deleteUser: (where: UserWhereUniqueInput) => UserPromise;
 | 
	
		
			
				|  |  | +  deleteManyUsers: (where?: UserWhereInput) => BatchPayloadPromise;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  /**
 | 
	
		
			
				|  |  | +   * Subscriptions
 | 
	
		
			
				|  |  | +   */
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  $subscribe: Subscription;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface Subscription {
 | 
	
		
			
				|  |  | +  block: (
 | 
	
		
			
				|  |  | +    where?: BlockSubscriptionWhereInput
 | 
	
		
			
				|  |  | +  ) => BlockSubscriptionPayloadSubscription;
 | 
	
		
			
				|  |  | +  comment: (
 | 
	
		
			
				|  |  | +    where?: CommentSubscriptionWhereInput
 | 
	
		
			
				|  |  | +  ) => CommentSubscriptionPayloadSubscription;
 | 
	
		
			
				|  |  | +  exercise: (
 | 
	
		
			
				|  |  | +    where?: ExerciseSubscriptionWhereInput
 | 
	
		
			
				|  |  | +  ) => ExerciseSubscriptionPayloadSubscription;
 | 
	
		
			
				|  |  | +  exerciseInstance: (
 | 
	
		
			
				|  |  | +    where?: ExerciseInstanceSubscriptionWhereInput
 | 
	
		
			
				|  |  | +  ) => ExerciseInstanceSubscriptionPayloadSubscription;
 | 
	
		
			
				|  |  | +  format: (
 | 
	
		
			
				|  |  | +    where?: FormatSubscriptionWhereInput
 | 
	
		
			
				|  |  | +  ) => FormatSubscriptionPayloadSubscription;
 | 
	
		
			
				|  |  | +  rating: (
 | 
	
		
			
				|  |  | +    where?: RatingSubscriptionWhereInput
 | 
	
		
			
				|  |  | +  ) => RatingSubscriptionPayloadSubscription;
 | 
	
		
			
				|  |  | +  track: (
 | 
	
		
			
				|  |  | +    where?: TrackSubscriptionWhereInput
 | 
	
		
			
				|  |  | +  ) => TrackSubscriptionPayloadSubscription;
 | 
	
		
			
				|  |  | +  training: (
 | 
	
		
			
				|  |  | +    where?: TrainingSubscriptionWhereInput
 | 
	
		
			
				|  |  | +  ) => TrainingSubscriptionPayloadSubscription;
 | 
	
		
			
				|  |  | +  trainingType: (
 | 
	
		
			
				|  |  | +    where?: TrainingTypeSubscriptionWhereInput
 | 
	
		
			
				|  |  | +  ) => TrainingTypeSubscriptionPayloadSubscription;
 | 
	
		
			
				|  |  | +  user: (
 | 
	
		
			
				|  |  | +    where?: UserSubscriptionWhereInput
 | 
	
		
			
				|  |  | +  ) => UserSubscriptionPayloadSubscription;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ClientConstructor<T> {
 | 
	
		
			
				|  |  | +  new (options?: BaseClientOptions): T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +/**
 | 
	
		
			
				|  |  | + * Types
 | 
	
		
			
				|  |  | + */
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export type TrackOrderByInput =
 | 
	
		
			
				|  |  | +  | "id_ASC"
 | 
	
		
			
				|  |  | +  | "id_DESC"
 | 
	
		
			
				|  |  | +  | "title_ASC"
 | 
	
		
			
				|  |  | +  | "title_DESC"
 | 
	
		
			
				|  |  | +  | "artist_ASC"
 | 
	
		
			
				|  |  | +  | "artist_DESC"
 | 
	
		
			
				|  |  | +  | "duration_ASC"
 | 
	
		
			
				|  |  | +  | "duration_DESC"
 | 
	
		
			
				|  |  | +  | "link_ASC"
 | 
	
		
			
				|  |  | +  | "link_DESC";
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export type BlockOrderByInput =
 | 
	
		
			
				|  |  | +  | "id_ASC"
 | 
	
		
			
				|  |  | +  | "id_DESC"
 | 
	
		
			
				|  |  | +  | "sequence_ASC"
 | 
	
		
			
				|  |  | +  | "sequence_DESC"
 | 
	
		
			
				|  |  | +  | "title_ASC"
 | 
	
		
			
				|  |  | +  | "title_DESC"
 | 
	
		
			
				|  |  | +  | "description_ASC"
 | 
	
		
			
				|  |  | +  | "description_DESC"
 | 
	
		
			
				|  |  | +  | "duration_ASC"
 | 
	
		
			
				|  |  | +  | "duration_DESC"
 | 
	
		
			
				|  |  | +  | "rounds_ASC"
 | 
	
		
			
				|  |  | +  | "rounds_DESC"
 | 
	
		
			
				|  |  | +  | "rest_ASC"
 | 
	
		
			
				|  |  | +  | "rest_DESC";
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export type ExerciseInstanceOrderByInput =
 | 
	
		
			
				|  |  | +  | "id_ASC"
 | 
	
		
			
				|  |  | +  | "id_DESC"
 | 
	
		
			
				|  |  | +  | "repetitions_ASC"
 | 
	
		
			
				|  |  | +  | "repetitions_DESC";
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export type CommentOrderByInput =
 | 
	
		
			
				|  |  | +  | "id_ASC"
 | 
	
		
			
				|  |  | +  | "id_DESC"
 | 
	
		
			
				|  |  | +  | "text_ASC"
 | 
	
		
			
				|  |  | +  | "text_DESC"
 | 
	
		
			
				|  |  | +  | "createdAt_ASC"
 | 
	
		
			
				|  |  | +  | "createdAt_DESC";
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export type RatingOrderByInput =
 | 
	
		
			
				|  |  | +  | "id_ASC"
 | 
	
		
			
				|  |  | +  | "id_DESC"
 | 
	
		
			
				|  |  | +  | "value_ASC"
 | 
	
		
			
				|  |  | +  | "value_DESC"
 | 
	
		
			
				|  |  | +  | "comment_ASC"
 | 
	
		
			
				|  |  | +  | "comment_DESC"
 | 
	
		
			
				|  |  | +  | "createdAt_ASC"
 | 
	
		
			
				|  |  | +  | "createdAt_DESC";
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export type Permission = "ADMIN" | "INSTRUCTOR";
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export type ExerciseOrderByInput =
 | 
	
		
			
				|  |  | +  | "id_ASC"
 | 
	
		
			
				|  |  | +  | "id_DESC"
 | 
	
		
			
				|  |  | +  | "name_ASC"
 | 
	
		
			
				|  |  | +  | "name_DESC"
 | 
	
		
			
				|  |  | +  | "description_ASC"
 | 
	
		
			
				|  |  | +  | "description_DESC"
 | 
	
		
			
				|  |  | +  | "video_ASC"
 | 
	
		
			
				|  |  | +  | "video_DESC";
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export type FormatOrderByInput =
 | 
	
		
			
				|  |  | +  | "id_ASC"
 | 
	
		
			
				|  |  | +  | "id_DESC"
 | 
	
		
			
				|  |  | +  | "name_ASC"
 | 
	
		
			
				|  |  | +  | "name_DESC"
 | 
	
		
			
				|  |  | +  | "description_ASC"
 | 
	
		
			
				|  |  | +  | "description_DESC";
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export type UserOrderByInput =
 | 
	
		
			
				|  |  | +  | "id_ASC"
 | 
	
		
			
				|  |  | +  | "id_DESC"
 | 
	
		
			
				|  |  | +  | "email_ASC"
 | 
	
		
			
				|  |  | +  | "email_DESC"
 | 
	
		
			
				|  |  | +  | "name_ASC"
 | 
	
		
			
				|  |  | +  | "name_DESC"
 | 
	
		
			
				|  |  | +  | "password_ASC"
 | 
	
		
			
				|  |  | +  | "password_DESC"
 | 
	
		
			
				|  |  | +  | "resetToken_ASC"
 | 
	
		
			
				|  |  | +  | "resetToken_DESC"
 | 
	
		
			
				|  |  | +  | "resetTokenExpiry_ASC"
 | 
	
		
			
				|  |  | +  | "resetTokenExpiry_DESC"
 | 
	
		
			
				|  |  | +  | "createdAt_ASC"
 | 
	
		
			
				|  |  | +  | "createdAt_DESC";
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export type TrainingOrderByInput =
 | 
	
		
			
				|  |  | +  | "id_ASC"
 | 
	
		
			
				|  |  | +  | "id_DESC"
 | 
	
		
			
				|  |  | +  | "title_ASC"
 | 
	
		
			
				|  |  | +  | "title_DESC"
 | 
	
		
			
				|  |  | +  | "createdAt_ASC"
 | 
	
		
			
				|  |  | +  | "createdAt_DESC"
 | 
	
		
			
				|  |  | +  | "trainingDate_ASC"
 | 
	
		
			
				|  |  | +  | "trainingDate_DESC"
 | 
	
		
			
				|  |  | +  | "location_ASC"
 | 
	
		
			
				|  |  | +  | "location_DESC"
 | 
	
		
			
				|  |  | +  | "attendance_ASC"
 | 
	
		
			
				|  |  | +  | "attendance_DESC"
 | 
	
		
			
				|  |  | +  | "published_ASC"
 | 
	
		
			
				|  |  | +  | "published_DESC";
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export type TrainingTypeOrderByInput =
 | 
	
		
			
				|  |  | +  | "id_ASC"
 | 
	
		
			
				|  |  | +  | "id_DESC"
 | 
	
		
			
				|  |  | +  | "name_ASC"
 | 
	
		
			
				|  |  | +  | "name_DESC"
 | 
	
		
			
				|  |  | +  | "description_ASC"
 | 
	
		
			
				|  |  | +  | "description_DESC";
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export type MutationType = "CREATED" | "UPDATED" | "DELETED";
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export type BlockWhereUniqueInput = AtLeastOne<{
 | 
	
		
			
				|  |  | +  id: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +}>;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrackWhereInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_lt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_lte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  title?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  title_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  title_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  artist?: Maybe<String>;
 | 
	
		
			
				|  |  | +  artist_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  artist_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  artist_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  artist_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  artist_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  artist_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  artist_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  artist_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  artist_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  artist_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  artist_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  artist_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  artist_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  duration?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  duration_not?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  duration_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  duration_not_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  duration_lt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  duration_lte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  duration_gt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  duration_gte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  link?: Maybe<String>;
 | 
	
		
			
				|  |  | +  link_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  link_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  link_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  link_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  link_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  link_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  link_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  link_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  link_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  link_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  link_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  link_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  link_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  AND?: Maybe<TrackWhereInput[] | TrackWhereInput>;
 | 
	
		
			
				|  |  | +  OR?: Maybe<TrackWhereInput[] | TrackWhereInput>;
 | 
	
		
			
				|  |  | +  NOT?: Maybe<TrackWhereInput[] | TrackWhereInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockWhereInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_lt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_lte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  sequence?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  sequence_not?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  sequence_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  sequence_not_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  sequence_lt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  sequence_lte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  sequence_gt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  sequence_gte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  title?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  title_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  title_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  description_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  description_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  duration?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  duration_not?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  duration_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  duration_not_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  duration_lt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  duration_lte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  duration_gt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  duration_gte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rounds?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rounds_not?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rounds_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  rounds_not_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  rounds_lt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rounds_lte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rounds_gt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rounds_gte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  format?: Maybe<FormatWhereInput>;
 | 
	
		
			
				|  |  | +  rest?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rest_not?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rest_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  rest_not_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  rest_lt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rest_lte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rest_gt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rest_gte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  tracks_every?: Maybe<TrackWhereInput>;
 | 
	
		
			
				|  |  | +  tracks_some?: Maybe<TrackWhereInput>;
 | 
	
		
			
				|  |  | +  tracks_none?: Maybe<TrackWhereInput>;
 | 
	
		
			
				|  |  | +  blocks_every?: Maybe<BlockWhereInput>;
 | 
	
		
			
				|  |  | +  blocks_some?: Maybe<BlockWhereInput>;
 | 
	
		
			
				|  |  | +  blocks_none?: Maybe<BlockWhereInput>;
 | 
	
		
			
				|  |  | +  exercises_every?: Maybe<ExerciseInstanceWhereInput>;
 | 
	
		
			
				|  |  | +  exercises_some?: Maybe<ExerciseInstanceWhereInput>;
 | 
	
		
			
				|  |  | +  exercises_none?: Maybe<ExerciseInstanceWhereInput>;
 | 
	
		
			
				|  |  | +  AND?: Maybe<BlockWhereInput[] | BlockWhereInput>;
 | 
	
		
			
				|  |  | +  OR?: Maybe<BlockWhereInput[] | BlockWhereInput>;
 | 
	
		
			
				|  |  | +  NOT?: Maybe<BlockWhereInput[] | BlockWhereInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface FormatWhereInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_lt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_lte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  name?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  name_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  name_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  description_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  description_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  AND?: Maybe<FormatWhereInput[] | FormatWhereInput>;
 | 
	
		
			
				|  |  | +  OR?: Maybe<FormatWhereInput[] | FormatWhereInput>;
 | 
	
		
			
				|  |  | +  NOT?: Maybe<FormatWhereInput[] | FormatWhereInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstanceWhereInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_lt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_lte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  exercise?: Maybe<ExerciseWhereInput>;
 | 
	
		
			
				|  |  | +  repetitions?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  repetitions_not?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  repetitions_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  repetitions_not_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  repetitions_lt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  repetitions_lte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  repetitions_gt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  repetitions_gte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  AND?: Maybe<ExerciseInstanceWhereInput[] | ExerciseInstanceWhereInput>;
 | 
	
		
			
				|  |  | +  OR?: Maybe<ExerciseInstanceWhereInput[] | ExerciseInstanceWhereInput>;
 | 
	
		
			
				|  |  | +  NOT?: Maybe<ExerciseInstanceWhereInput[] | ExerciseInstanceWhereInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseWhereInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_lt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_lte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  name?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  name_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  name_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  description_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  description_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  video?: Maybe<String>;
 | 
	
		
			
				|  |  | +  video_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  video_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  video_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  video_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  video_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  video_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  video_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  video_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  video_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  video_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  video_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  video_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  video_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  AND?: Maybe<ExerciseWhereInput[] | ExerciseWhereInput>;
 | 
	
		
			
				|  |  | +  OR?: Maybe<ExerciseWhereInput[] | ExerciseWhereInput>;
 | 
	
		
			
				|  |  | +  NOT?: Maybe<ExerciseWhereInput[] | ExerciseWhereInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export type CommentWhereUniqueInput = AtLeastOne<{
 | 
	
		
			
				|  |  | +  id: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +}>;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentWhereInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_lt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_lte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  text?: Maybe<String>;
 | 
	
		
			
				|  |  | +  text_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  text_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  text_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  text_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  text_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  text_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  text_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  text_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  text_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  text_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  text_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  text_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  text_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  author?: Maybe<UserWhereInput>;
 | 
	
		
			
				|  |  | +  createdAt?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_not?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_in?: Maybe<DateTimeInput[] | DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_not_in?: Maybe<DateTimeInput[] | DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_lt?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_lte?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_gt?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_gte?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  AND?: Maybe<CommentWhereInput[] | CommentWhereInput>;
 | 
	
		
			
				|  |  | +  OR?: Maybe<CommentWhereInput[] | CommentWhereInput>;
 | 
	
		
			
				|  |  | +  NOT?: Maybe<CommentWhereInput[] | CommentWhereInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserWhereInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_lt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_lte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  email?: Maybe<String>;
 | 
	
		
			
				|  |  | +  email_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  email_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  email_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  email_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  email_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  email_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  email_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  email_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  email_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  email_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  email_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  email_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  email_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  name_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  name_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  password_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  password_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  resetToken_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  resetToken_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry?: Maybe<Float>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry_not?: Maybe<Float>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry_in?: Maybe<Float[] | Float>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry_not_in?: Maybe<Float[] | Float>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry_lt?: Maybe<Float>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry_lte?: Maybe<Float>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry_gt?: Maybe<Float>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry_gte?: Maybe<Float>;
 | 
	
		
			
				|  |  | +  createdAt?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_not?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_in?: Maybe<DateTimeInput[] | DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_not_in?: Maybe<DateTimeInput[] | DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_lt?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_lte?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_gt?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_gte?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  comments_every?: Maybe<CommentWhereInput>;
 | 
	
		
			
				|  |  | +  comments_some?: Maybe<CommentWhereInput>;
 | 
	
		
			
				|  |  | +  comments_none?: Maybe<CommentWhereInput>;
 | 
	
		
			
				|  |  | +  ratings_every?: Maybe<RatingWhereInput>;
 | 
	
		
			
				|  |  | +  ratings_some?: Maybe<RatingWhereInput>;
 | 
	
		
			
				|  |  | +  ratings_none?: Maybe<RatingWhereInput>;
 | 
	
		
			
				|  |  | +  AND?: Maybe<UserWhereInput[] | UserWhereInput>;
 | 
	
		
			
				|  |  | +  OR?: Maybe<UserWhereInput[] | UserWhereInput>;
 | 
	
		
			
				|  |  | +  NOT?: Maybe<UserWhereInput[] | UserWhereInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingWhereInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_lt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_lte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  user?: Maybe<UserWhereInput>;
 | 
	
		
			
				|  |  | +  value?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  value_not?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  value_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  value_not_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  value_lt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  value_lte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  value_gt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  value_gte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  comment?: Maybe<String>;
 | 
	
		
			
				|  |  | +  comment_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  comment_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  comment_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  comment_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  comment_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  comment_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  comment_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  comment_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  comment_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  comment_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  comment_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  comment_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  comment_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  createdAt?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_not?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_in?: Maybe<DateTimeInput[] | DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_not_in?: Maybe<DateTimeInput[] | DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_lt?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_lte?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_gt?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_gte?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  AND?: Maybe<RatingWhereInput[] | RatingWhereInput>;
 | 
	
		
			
				|  |  | +  OR?: Maybe<RatingWhereInput[] | RatingWhereInput>;
 | 
	
		
			
				|  |  | +  NOT?: Maybe<RatingWhereInput[] | RatingWhereInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export type ExerciseWhereUniqueInput = AtLeastOne<{
 | 
	
		
			
				|  |  | +  id: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +}>;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export type ExerciseInstanceWhereUniqueInput = AtLeastOne<{
 | 
	
		
			
				|  |  | +  id: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +}>;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export type FormatWhereUniqueInput = AtLeastOne<{
 | 
	
		
			
				|  |  | +  id: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +}>;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export type RatingWhereUniqueInput = AtLeastOne<{
 | 
	
		
			
				|  |  | +  id: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +}>;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export type TrackWhereUniqueInput = AtLeastOne<{
 | 
	
		
			
				|  |  | +  id: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +}>;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export type TrainingWhereUniqueInput = AtLeastOne<{
 | 
	
		
			
				|  |  | +  id: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +}>;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingWhereInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_lt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_lte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  title?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  title_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  title_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  type?: Maybe<TrainingTypeWhereInput>;
 | 
	
		
			
				|  |  | +  createdAt?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_not?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_in?: Maybe<DateTimeInput[] | DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_not_in?: Maybe<DateTimeInput[] | DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_lt?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_lte?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_gt?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_gte?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  trainingDate?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  trainingDate_not?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  trainingDate_in?: Maybe<DateTimeInput[] | DateTimeInput>;
 | 
	
		
			
				|  |  | +  trainingDate_not_in?: Maybe<DateTimeInput[] | DateTimeInput>;
 | 
	
		
			
				|  |  | +  trainingDate_lt?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  trainingDate_lte?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  trainingDate_gt?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  trainingDate_gte?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  location?: Maybe<String>;
 | 
	
		
			
				|  |  | +  location_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  location_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  location_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  location_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  location_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  location_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  location_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  location_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  location_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  location_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  location_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  location_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  location_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  registrations_every?: Maybe<UserWhereInput>;
 | 
	
		
			
				|  |  | +  registrations_some?: Maybe<UserWhereInput>;
 | 
	
		
			
				|  |  | +  registrations_none?: Maybe<UserWhereInput>;
 | 
	
		
			
				|  |  | +  attendance?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  attendance_not?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  attendance_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  attendance_not_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  attendance_lt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  attendance_lte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  attendance_gt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  attendance_gte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  ratings_every?: Maybe<RatingWhereInput>;
 | 
	
		
			
				|  |  | +  ratings_some?: Maybe<RatingWhereInput>;
 | 
	
		
			
				|  |  | +  ratings_none?: Maybe<RatingWhereInput>;
 | 
	
		
			
				|  |  | +  published?: Maybe<Boolean>;
 | 
	
		
			
				|  |  | +  published_not?: Maybe<Boolean>;
 | 
	
		
			
				|  |  | +  blocks_every?: Maybe<BlockWhereInput>;
 | 
	
		
			
				|  |  | +  blocks_some?: Maybe<BlockWhereInput>;
 | 
	
		
			
				|  |  | +  blocks_none?: Maybe<BlockWhereInput>;
 | 
	
		
			
				|  |  | +  AND?: Maybe<TrainingWhereInput[] | TrainingWhereInput>;
 | 
	
		
			
				|  |  | +  OR?: Maybe<TrainingWhereInput[] | TrainingWhereInput>;
 | 
	
		
			
				|  |  | +  NOT?: Maybe<TrainingWhereInput[] | TrainingWhereInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingTypeWhereInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_lt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_lte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  name?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  name_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  name_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  description_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  description_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  AND?: Maybe<TrainingTypeWhereInput[] | TrainingTypeWhereInput>;
 | 
	
		
			
				|  |  | +  OR?: Maybe<TrainingTypeWhereInput[] | TrainingTypeWhereInput>;
 | 
	
		
			
				|  |  | +  NOT?: Maybe<TrainingTypeWhereInput[] | TrainingTypeWhereInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export type TrainingTypeWhereUniqueInput = AtLeastOne<{
 | 
	
		
			
				|  |  | +  id: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  name?: Maybe<String>;
 | 
	
		
			
				|  |  | +}>;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export type UserWhereUniqueInput = AtLeastOne<{
 | 
	
		
			
				|  |  | +  id: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  email?: Maybe<String>;
 | 
	
		
			
				|  |  | +}>;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockCreateInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  sequence: Int;
 | 
	
		
			
				|  |  | +  title: String;
 | 
	
		
			
				|  |  | +  description?: Maybe<String>;
 | 
	
		
			
				|  |  | +  videos?: Maybe<BlockCreatevideosInput>;
 | 
	
		
			
				|  |  | +  pictures?: Maybe<BlockCreatepicturesInput>;
 | 
	
		
			
				|  |  | +  duration?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rounds?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  format: FormatCreateOneInput;
 | 
	
		
			
				|  |  | +  rest?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  tracks?: Maybe<TrackCreateManyInput>;
 | 
	
		
			
				|  |  | +  blocks?: Maybe<BlockCreateManyInput>;
 | 
	
		
			
				|  |  | +  exercises?: Maybe<ExerciseInstanceCreateManyInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockCreatevideosInput {
 | 
	
		
			
				|  |  | +  set?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockCreatepicturesInput {
 | 
	
		
			
				|  |  | +  set?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface FormatCreateOneInput {
 | 
	
		
			
				|  |  | +  create?: Maybe<FormatCreateInput>;
 | 
	
		
			
				|  |  | +  connect?: Maybe<FormatWhereUniqueInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface FormatCreateInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  name: String;
 | 
	
		
			
				|  |  | +  description: String;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrackCreateManyInput {
 | 
	
		
			
				|  |  | +  create?: Maybe<TrackCreateInput[] | TrackCreateInput>;
 | 
	
		
			
				|  |  | +  connect?: Maybe<TrackWhereUniqueInput[] | TrackWhereUniqueInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrackCreateInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  title: String;
 | 
	
		
			
				|  |  | +  artist: String;
 | 
	
		
			
				|  |  | +  duration: Int;
 | 
	
		
			
				|  |  | +  link: String;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockCreateManyInput {
 | 
	
		
			
				|  |  | +  create?: Maybe<BlockCreateInput[] | BlockCreateInput>;
 | 
	
		
			
				|  |  | +  connect?: Maybe<BlockWhereUniqueInput[] | BlockWhereUniqueInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstanceCreateManyInput {
 | 
	
		
			
				|  |  | +  create?: Maybe<ExerciseInstanceCreateInput[] | ExerciseInstanceCreateInput>;
 | 
	
		
			
				|  |  | +  connect?: Maybe<
 | 
	
		
			
				|  |  | +    ExerciseInstanceWhereUniqueInput[] | ExerciseInstanceWhereUniqueInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstanceCreateInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  exercise: ExerciseCreateOneInput;
 | 
	
		
			
				|  |  | +  repetitions?: Maybe<Int>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseCreateOneInput {
 | 
	
		
			
				|  |  | +  create?: Maybe<ExerciseCreateInput>;
 | 
	
		
			
				|  |  | +  connect?: Maybe<ExerciseWhereUniqueInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseCreateInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  name: String;
 | 
	
		
			
				|  |  | +  description: String;
 | 
	
		
			
				|  |  | +  video: String;
 | 
	
		
			
				|  |  | +  targets?: Maybe<ExerciseCreatetargetsInput>;
 | 
	
		
			
				|  |  | +  baseExercise?: Maybe<ExerciseCreatebaseExerciseInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseCreatetargetsInput {
 | 
	
		
			
				|  |  | +  set?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseCreatebaseExerciseInput {
 | 
	
		
			
				|  |  | +  set?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockUpdateInput {
 | 
	
		
			
				|  |  | +  sequence?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  title?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description?: Maybe<String>;
 | 
	
		
			
				|  |  | +  videos?: Maybe<BlockUpdatevideosInput>;
 | 
	
		
			
				|  |  | +  pictures?: Maybe<BlockUpdatepicturesInput>;
 | 
	
		
			
				|  |  | +  duration?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rounds?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  format?: Maybe<FormatUpdateOneRequiredInput>;
 | 
	
		
			
				|  |  | +  rest?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  tracks?: Maybe<TrackUpdateManyInput>;
 | 
	
		
			
				|  |  | +  blocks?: Maybe<BlockUpdateManyInput>;
 | 
	
		
			
				|  |  | +  exercises?: Maybe<ExerciseInstanceUpdateManyInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockUpdatevideosInput {
 | 
	
		
			
				|  |  | +  set?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockUpdatepicturesInput {
 | 
	
		
			
				|  |  | +  set?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface FormatUpdateOneRequiredInput {
 | 
	
		
			
				|  |  | +  create?: Maybe<FormatCreateInput>;
 | 
	
		
			
				|  |  | +  update?: Maybe<FormatUpdateDataInput>;
 | 
	
		
			
				|  |  | +  upsert?: Maybe<FormatUpsertNestedInput>;
 | 
	
		
			
				|  |  | +  connect?: Maybe<FormatWhereUniqueInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface FormatUpdateDataInput {
 | 
	
		
			
				|  |  | +  name?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description?: Maybe<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface FormatUpsertNestedInput {
 | 
	
		
			
				|  |  | +  update: FormatUpdateDataInput;
 | 
	
		
			
				|  |  | +  create: FormatCreateInput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrackUpdateManyInput {
 | 
	
		
			
				|  |  | +  create?: Maybe<TrackCreateInput[] | TrackCreateInput>;
 | 
	
		
			
				|  |  | +  update?: Maybe<
 | 
	
		
			
				|  |  | +    | TrackUpdateWithWhereUniqueNestedInput[]
 | 
	
		
			
				|  |  | +    | TrackUpdateWithWhereUniqueNestedInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  upsert?: Maybe<
 | 
	
		
			
				|  |  | +    | TrackUpsertWithWhereUniqueNestedInput[]
 | 
	
		
			
				|  |  | +    | TrackUpsertWithWhereUniqueNestedInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  delete?: Maybe<TrackWhereUniqueInput[] | TrackWhereUniqueInput>;
 | 
	
		
			
				|  |  | +  connect?: Maybe<TrackWhereUniqueInput[] | TrackWhereUniqueInput>;
 | 
	
		
			
				|  |  | +  set?: Maybe<TrackWhereUniqueInput[] | TrackWhereUniqueInput>;
 | 
	
		
			
				|  |  | +  disconnect?: Maybe<TrackWhereUniqueInput[] | TrackWhereUniqueInput>;
 | 
	
		
			
				|  |  | +  deleteMany?: Maybe<TrackScalarWhereInput[] | TrackScalarWhereInput>;
 | 
	
		
			
				|  |  | +  updateMany?: Maybe<
 | 
	
		
			
				|  |  | +    TrackUpdateManyWithWhereNestedInput[] | TrackUpdateManyWithWhereNestedInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrackUpdateWithWhereUniqueNestedInput {
 | 
	
		
			
				|  |  | +  where: TrackWhereUniqueInput;
 | 
	
		
			
				|  |  | +  data: TrackUpdateDataInput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrackUpdateDataInput {
 | 
	
		
			
				|  |  | +  title?: Maybe<String>;
 | 
	
		
			
				|  |  | +  artist?: Maybe<String>;
 | 
	
		
			
				|  |  | +  duration?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  link?: Maybe<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrackUpsertWithWhereUniqueNestedInput {
 | 
	
		
			
				|  |  | +  where: TrackWhereUniqueInput;
 | 
	
		
			
				|  |  | +  update: TrackUpdateDataInput;
 | 
	
		
			
				|  |  | +  create: TrackCreateInput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrackScalarWhereInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_lt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_lte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  title?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  title_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  title_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  artist?: Maybe<String>;
 | 
	
		
			
				|  |  | +  artist_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  artist_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  artist_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  artist_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  artist_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  artist_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  artist_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  artist_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  artist_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  artist_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  artist_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  artist_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  artist_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  duration?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  duration_not?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  duration_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  duration_not_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  duration_lt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  duration_lte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  duration_gt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  duration_gte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  link?: Maybe<String>;
 | 
	
		
			
				|  |  | +  link_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  link_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  link_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  link_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  link_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  link_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  link_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  link_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  link_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  link_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  link_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  link_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  link_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  AND?: Maybe<TrackScalarWhereInput[] | TrackScalarWhereInput>;
 | 
	
		
			
				|  |  | +  OR?: Maybe<TrackScalarWhereInput[] | TrackScalarWhereInput>;
 | 
	
		
			
				|  |  | +  NOT?: Maybe<TrackScalarWhereInput[] | TrackScalarWhereInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrackUpdateManyWithWhereNestedInput {
 | 
	
		
			
				|  |  | +  where: TrackScalarWhereInput;
 | 
	
		
			
				|  |  | +  data: TrackUpdateManyDataInput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrackUpdateManyDataInput {
 | 
	
		
			
				|  |  | +  title?: Maybe<String>;
 | 
	
		
			
				|  |  | +  artist?: Maybe<String>;
 | 
	
		
			
				|  |  | +  duration?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  link?: Maybe<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockUpdateManyInput {
 | 
	
		
			
				|  |  | +  create?: Maybe<BlockCreateInput[] | BlockCreateInput>;
 | 
	
		
			
				|  |  | +  update?: Maybe<
 | 
	
		
			
				|  |  | +    | BlockUpdateWithWhereUniqueNestedInput[]
 | 
	
		
			
				|  |  | +    | BlockUpdateWithWhereUniqueNestedInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  upsert?: Maybe<
 | 
	
		
			
				|  |  | +    | BlockUpsertWithWhereUniqueNestedInput[]
 | 
	
		
			
				|  |  | +    | BlockUpsertWithWhereUniqueNestedInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  delete?: Maybe<BlockWhereUniqueInput[] | BlockWhereUniqueInput>;
 | 
	
		
			
				|  |  | +  connect?: Maybe<BlockWhereUniqueInput[] | BlockWhereUniqueInput>;
 | 
	
		
			
				|  |  | +  set?: Maybe<BlockWhereUniqueInput[] | BlockWhereUniqueInput>;
 | 
	
		
			
				|  |  | +  disconnect?: Maybe<BlockWhereUniqueInput[] | BlockWhereUniqueInput>;
 | 
	
		
			
				|  |  | +  deleteMany?: Maybe<BlockScalarWhereInput[] | BlockScalarWhereInput>;
 | 
	
		
			
				|  |  | +  updateMany?: Maybe<
 | 
	
		
			
				|  |  | +    BlockUpdateManyWithWhereNestedInput[] | BlockUpdateManyWithWhereNestedInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockUpdateWithWhereUniqueNestedInput {
 | 
	
		
			
				|  |  | +  where: BlockWhereUniqueInput;
 | 
	
		
			
				|  |  | +  data: BlockUpdateDataInput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockUpdateDataInput {
 | 
	
		
			
				|  |  | +  sequence?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  title?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description?: Maybe<String>;
 | 
	
		
			
				|  |  | +  videos?: Maybe<BlockUpdatevideosInput>;
 | 
	
		
			
				|  |  | +  pictures?: Maybe<BlockUpdatepicturesInput>;
 | 
	
		
			
				|  |  | +  duration?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rounds?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  format?: Maybe<FormatUpdateOneRequiredInput>;
 | 
	
		
			
				|  |  | +  rest?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  tracks?: Maybe<TrackUpdateManyInput>;
 | 
	
		
			
				|  |  | +  blocks?: Maybe<BlockUpdateManyInput>;
 | 
	
		
			
				|  |  | +  exercises?: Maybe<ExerciseInstanceUpdateManyInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstanceUpdateManyInput {
 | 
	
		
			
				|  |  | +  create?: Maybe<ExerciseInstanceCreateInput[] | ExerciseInstanceCreateInput>;
 | 
	
		
			
				|  |  | +  update?: Maybe<
 | 
	
		
			
				|  |  | +    | ExerciseInstanceUpdateWithWhereUniqueNestedInput[]
 | 
	
		
			
				|  |  | +    | ExerciseInstanceUpdateWithWhereUniqueNestedInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  upsert?: Maybe<
 | 
	
		
			
				|  |  | +    | ExerciseInstanceUpsertWithWhereUniqueNestedInput[]
 | 
	
		
			
				|  |  | +    | ExerciseInstanceUpsertWithWhereUniqueNestedInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  delete?: Maybe<
 | 
	
		
			
				|  |  | +    ExerciseInstanceWhereUniqueInput[] | ExerciseInstanceWhereUniqueInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  connect?: Maybe<
 | 
	
		
			
				|  |  | +    ExerciseInstanceWhereUniqueInput[] | ExerciseInstanceWhereUniqueInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  set?: Maybe<
 | 
	
		
			
				|  |  | +    ExerciseInstanceWhereUniqueInput[] | ExerciseInstanceWhereUniqueInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  disconnect?: Maybe<
 | 
	
		
			
				|  |  | +    ExerciseInstanceWhereUniqueInput[] | ExerciseInstanceWhereUniqueInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  deleteMany?: Maybe<
 | 
	
		
			
				|  |  | +    ExerciseInstanceScalarWhereInput[] | ExerciseInstanceScalarWhereInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  updateMany?: Maybe<
 | 
	
		
			
				|  |  | +    | ExerciseInstanceUpdateManyWithWhereNestedInput[]
 | 
	
		
			
				|  |  | +    | ExerciseInstanceUpdateManyWithWhereNestedInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstanceUpdateWithWhereUniqueNestedInput {
 | 
	
		
			
				|  |  | +  where: ExerciseInstanceWhereUniqueInput;
 | 
	
		
			
				|  |  | +  data: ExerciseInstanceUpdateDataInput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstanceUpdateDataInput {
 | 
	
		
			
				|  |  | +  exercise?: Maybe<ExerciseUpdateOneRequiredInput>;
 | 
	
		
			
				|  |  | +  repetitions?: Maybe<Int>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseUpdateOneRequiredInput {
 | 
	
		
			
				|  |  | +  create?: Maybe<ExerciseCreateInput>;
 | 
	
		
			
				|  |  | +  update?: Maybe<ExerciseUpdateDataInput>;
 | 
	
		
			
				|  |  | +  upsert?: Maybe<ExerciseUpsertNestedInput>;
 | 
	
		
			
				|  |  | +  connect?: Maybe<ExerciseWhereUniqueInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseUpdateDataInput {
 | 
	
		
			
				|  |  | +  name?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description?: Maybe<String>;
 | 
	
		
			
				|  |  | +  video?: Maybe<String>;
 | 
	
		
			
				|  |  | +  targets?: Maybe<ExerciseUpdatetargetsInput>;
 | 
	
		
			
				|  |  | +  baseExercise?: Maybe<ExerciseUpdatebaseExerciseInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseUpdatetargetsInput {
 | 
	
		
			
				|  |  | +  set?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseUpdatebaseExerciseInput {
 | 
	
		
			
				|  |  | +  set?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseUpsertNestedInput {
 | 
	
		
			
				|  |  | +  update: ExerciseUpdateDataInput;
 | 
	
		
			
				|  |  | +  create: ExerciseCreateInput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstanceUpsertWithWhereUniqueNestedInput {
 | 
	
		
			
				|  |  | +  where: ExerciseInstanceWhereUniqueInput;
 | 
	
		
			
				|  |  | +  update: ExerciseInstanceUpdateDataInput;
 | 
	
		
			
				|  |  | +  create: ExerciseInstanceCreateInput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstanceScalarWhereInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_lt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_lte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  repetitions?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  repetitions_not?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  repetitions_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  repetitions_not_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  repetitions_lt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  repetitions_lte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  repetitions_gt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  repetitions_gte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  AND?: Maybe<
 | 
	
		
			
				|  |  | +    ExerciseInstanceScalarWhereInput[] | ExerciseInstanceScalarWhereInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  OR?: Maybe<
 | 
	
		
			
				|  |  | +    ExerciseInstanceScalarWhereInput[] | ExerciseInstanceScalarWhereInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  NOT?: Maybe<
 | 
	
		
			
				|  |  | +    ExerciseInstanceScalarWhereInput[] | ExerciseInstanceScalarWhereInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstanceUpdateManyWithWhereNestedInput {
 | 
	
		
			
				|  |  | +  where: ExerciseInstanceScalarWhereInput;
 | 
	
		
			
				|  |  | +  data: ExerciseInstanceUpdateManyDataInput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstanceUpdateManyDataInput {
 | 
	
		
			
				|  |  | +  repetitions?: Maybe<Int>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockUpsertWithWhereUniqueNestedInput {
 | 
	
		
			
				|  |  | +  where: BlockWhereUniqueInput;
 | 
	
		
			
				|  |  | +  update: BlockUpdateDataInput;
 | 
	
		
			
				|  |  | +  create: BlockCreateInput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockScalarWhereInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_lt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_lte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  sequence?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  sequence_not?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  sequence_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  sequence_not_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  sequence_lt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  sequence_lte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  sequence_gt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  sequence_gte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  title?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  title_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  title_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  title_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  description_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  description_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  duration?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  duration_not?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  duration_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  duration_not_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  duration_lt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  duration_lte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  duration_gt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  duration_gte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rounds?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rounds_not?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rounds_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  rounds_not_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  rounds_lt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rounds_lte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rounds_gt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rounds_gte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rest?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rest_not?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rest_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  rest_not_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  rest_lt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rest_lte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rest_gt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rest_gte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  AND?: Maybe<BlockScalarWhereInput[] | BlockScalarWhereInput>;
 | 
	
		
			
				|  |  | +  OR?: Maybe<BlockScalarWhereInput[] | BlockScalarWhereInput>;
 | 
	
		
			
				|  |  | +  NOT?: Maybe<BlockScalarWhereInput[] | BlockScalarWhereInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockUpdateManyWithWhereNestedInput {
 | 
	
		
			
				|  |  | +  where: BlockScalarWhereInput;
 | 
	
		
			
				|  |  | +  data: BlockUpdateManyDataInput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockUpdateManyDataInput {
 | 
	
		
			
				|  |  | +  sequence?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  title?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description?: Maybe<String>;
 | 
	
		
			
				|  |  | +  videos?: Maybe<BlockUpdatevideosInput>;
 | 
	
		
			
				|  |  | +  pictures?: Maybe<BlockUpdatepicturesInput>;
 | 
	
		
			
				|  |  | +  duration?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rounds?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rest?: Maybe<Int>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockUpdateManyMutationInput {
 | 
	
		
			
				|  |  | +  sequence?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  title?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description?: Maybe<String>;
 | 
	
		
			
				|  |  | +  videos?: Maybe<BlockUpdatevideosInput>;
 | 
	
		
			
				|  |  | +  pictures?: Maybe<BlockUpdatepicturesInput>;
 | 
	
		
			
				|  |  | +  duration?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rounds?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  rest?: Maybe<Int>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentCreateInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  text: String;
 | 
	
		
			
				|  |  | +  author: UserCreateOneWithoutCommentsInput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserCreateOneWithoutCommentsInput {
 | 
	
		
			
				|  |  | +  create?: Maybe<UserCreateWithoutCommentsInput>;
 | 
	
		
			
				|  |  | +  connect?: Maybe<UserWhereUniqueInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserCreateWithoutCommentsInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  email: String;
 | 
	
		
			
				|  |  | +  name: String;
 | 
	
		
			
				|  |  | +  password: String;
 | 
	
		
			
				|  |  | +  resetToken?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry?: Maybe<Float>;
 | 
	
		
			
				|  |  | +  ratings?: Maybe<RatingCreateManyWithoutUserInput>;
 | 
	
		
			
				|  |  | +  permissions?: Maybe<UserCreatepermissionsInput>;
 | 
	
		
			
				|  |  | +  interests?: Maybe<UserCreateinterestsInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingCreateManyWithoutUserInput {
 | 
	
		
			
				|  |  | +  create?: Maybe<RatingCreateWithoutUserInput[] | RatingCreateWithoutUserInput>;
 | 
	
		
			
				|  |  | +  connect?: Maybe<RatingWhereUniqueInput[] | RatingWhereUniqueInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingCreateWithoutUserInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  value: Int;
 | 
	
		
			
				|  |  | +  comment: String;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserCreatepermissionsInput {
 | 
	
		
			
				|  |  | +  set?: Maybe<Permission[] | Permission>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserCreateinterestsInput {
 | 
	
		
			
				|  |  | +  set?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentUpdateInput {
 | 
	
		
			
				|  |  | +  text?: Maybe<String>;
 | 
	
		
			
				|  |  | +  author?: Maybe<UserUpdateOneRequiredWithoutCommentsInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserUpdateOneRequiredWithoutCommentsInput {
 | 
	
		
			
				|  |  | +  create?: Maybe<UserCreateWithoutCommentsInput>;
 | 
	
		
			
				|  |  | +  update?: Maybe<UserUpdateWithoutCommentsDataInput>;
 | 
	
		
			
				|  |  | +  upsert?: Maybe<UserUpsertWithoutCommentsInput>;
 | 
	
		
			
				|  |  | +  connect?: Maybe<UserWhereUniqueInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserUpdateWithoutCommentsDataInput {
 | 
	
		
			
				|  |  | +  email?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry?: Maybe<Float>;
 | 
	
		
			
				|  |  | +  ratings?: Maybe<RatingUpdateManyWithoutUserInput>;
 | 
	
		
			
				|  |  | +  permissions?: Maybe<UserUpdatepermissionsInput>;
 | 
	
		
			
				|  |  | +  interests?: Maybe<UserUpdateinterestsInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingUpdateManyWithoutUserInput {
 | 
	
		
			
				|  |  | +  create?: Maybe<RatingCreateWithoutUserInput[] | RatingCreateWithoutUserInput>;
 | 
	
		
			
				|  |  | +  delete?: Maybe<RatingWhereUniqueInput[] | RatingWhereUniqueInput>;
 | 
	
		
			
				|  |  | +  connect?: Maybe<RatingWhereUniqueInput[] | RatingWhereUniqueInput>;
 | 
	
		
			
				|  |  | +  set?: Maybe<RatingWhereUniqueInput[] | RatingWhereUniqueInput>;
 | 
	
		
			
				|  |  | +  disconnect?: Maybe<RatingWhereUniqueInput[] | RatingWhereUniqueInput>;
 | 
	
		
			
				|  |  | +  update?: Maybe<
 | 
	
		
			
				|  |  | +    | RatingUpdateWithWhereUniqueWithoutUserInput[]
 | 
	
		
			
				|  |  | +    | RatingUpdateWithWhereUniqueWithoutUserInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  upsert?: Maybe<
 | 
	
		
			
				|  |  | +    | RatingUpsertWithWhereUniqueWithoutUserInput[]
 | 
	
		
			
				|  |  | +    | RatingUpsertWithWhereUniqueWithoutUserInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  deleteMany?: Maybe<RatingScalarWhereInput[] | RatingScalarWhereInput>;
 | 
	
		
			
				|  |  | +  updateMany?: Maybe<
 | 
	
		
			
				|  |  | +    | RatingUpdateManyWithWhereNestedInput[]
 | 
	
		
			
				|  |  | +    | RatingUpdateManyWithWhereNestedInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingUpdateWithWhereUniqueWithoutUserInput {
 | 
	
		
			
				|  |  | +  where: RatingWhereUniqueInput;
 | 
	
		
			
				|  |  | +  data: RatingUpdateWithoutUserDataInput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingUpdateWithoutUserDataInput {
 | 
	
		
			
				|  |  | +  value?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  comment?: Maybe<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingUpsertWithWhereUniqueWithoutUserInput {
 | 
	
		
			
				|  |  | +  where: RatingWhereUniqueInput;
 | 
	
		
			
				|  |  | +  update: RatingUpdateWithoutUserDataInput;
 | 
	
		
			
				|  |  | +  create: RatingCreateWithoutUserInput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingScalarWhereInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_lt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_lte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  value?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  value_not?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  value_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  value_not_in?: Maybe<Int[] | Int>;
 | 
	
		
			
				|  |  | +  value_lt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  value_lte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  value_gt?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  value_gte?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  comment?: Maybe<String>;
 | 
	
		
			
				|  |  | +  comment_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  comment_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  comment_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  comment_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  comment_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  comment_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  comment_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  comment_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  comment_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  comment_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  comment_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  comment_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  comment_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  createdAt?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_not?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_in?: Maybe<DateTimeInput[] | DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_not_in?: Maybe<DateTimeInput[] | DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_lt?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_lte?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_gt?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_gte?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  AND?: Maybe<RatingScalarWhereInput[] | RatingScalarWhereInput>;
 | 
	
		
			
				|  |  | +  OR?: Maybe<RatingScalarWhereInput[] | RatingScalarWhereInput>;
 | 
	
		
			
				|  |  | +  NOT?: Maybe<RatingScalarWhereInput[] | RatingScalarWhereInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingUpdateManyWithWhereNestedInput {
 | 
	
		
			
				|  |  | +  where: RatingScalarWhereInput;
 | 
	
		
			
				|  |  | +  data: RatingUpdateManyDataInput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingUpdateManyDataInput {
 | 
	
		
			
				|  |  | +  value?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  comment?: Maybe<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserUpdatepermissionsInput {
 | 
	
		
			
				|  |  | +  set?: Maybe<Permission[] | Permission>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserUpdateinterestsInput {
 | 
	
		
			
				|  |  | +  set?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserUpsertWithoutCommentsInput {
 | 
	
		
			
				|  |  | +  update: UserUpdateWithoutCommentsDataInput;
 | 
	
		
			
				|  |  | +  create: UserCreateWithoutCommentsInput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentUpdateManyMutationInput {
 | 
	
		
			
				|  |  | +  text?: Maybe<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseUpdateInput {
 | 
	
		
			
				|  |  | +  name?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description?: Maybe<String>;
 | 
	
		
			
				|  |  | +  video?: Maybe<String>;
 | 
	
		
			
				|  |  | +  targets?: Maybe<ExerciseUpdatetargetsInput>;
 | 
	
		
			
				|  |  | +  baseExercise?: Maybe<ExerciseUpdatebaseExerciseInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseUpdateManyMutationInput {
 | 
	
		
			
				|  |  | +  name?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description?: Maybe<String>;
 | 
	
		
			
				|  |  | +  video?: Maybe<String>;
 | 
	
		
			
				|  |  | +  targets?: Maybe<ExerciseUpdatetargetsInput>;
 | 
	
		
			
				|  |  | +  baseExercise?: Maybe<ExerciseUpdatebaseExerciseInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstanceUpdateInput {
 | 
	
		
			
				|  |  | +  exercise?: Maybe<ExerciseUpdateOneRequiredInput>;
 | 
	
		
			
				|  |  | +  repetitions?: Maybe<Int>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstanceUpdateManyMutationInput {
 | 
	
		
			
				|  |  | +  repetitions?: Maybe<Int>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface FormatUpdateInput {
 | 
	
		
			
				|  |  | +  name?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description?: Maybe<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface FormatUpdateManyMutationInput {
 | 
	
		
			
				|  |  | +  name?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description?: Maybe<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingCreateInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  user: UserCreateOneWithoutRatingsInput;
 | 
	
		
			
				|  |  | +  value: Int;
 | 
	
		
			
				|  |  | +  comment: String;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserCreateOneWithoutRatingsInput {
 | 
	
		
			
				|  |  | +  create?: Maybe<UserCreateWithoutRatingsInput>;
 | 
	
		
			
				|  |  | +  connect?: Maybe<UserWhereUniqueInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserCreateWithoutRatingsInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  email: String;
 | 
	
		
			
				|  |  | +  name: String;
 | 
	
		
			
				|  |  | +  password: String;
 | 
	
		
			
				|  |  | +  resetToken?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry?: Maybe<Float>;
 | 
	
		
			
				|  |  | +  comments?: Maybe<CommentCreateManyWithoutAuthorInput>;
 | 
	
		
			
				|  |  | +  permissions?: Maybe<UserCreatepermissionsInput>;
 | 
	
		
			
				|  |  | +  interests?: Maybe<UserCreateinterestsInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentCreateManyWithoutAuthorInput {
 | 
	
		
			
				|  |  | +  create?: Maybe<
 | 
	
		
			
				|  |  | +    CommentCreateWithoutAuthorInput[] | CommentCreateWithoutAuthorInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  connect?: Maybe<CommentWhereUniqueInput[] | CommentWhereUniqueInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentCreateWithoutAuthorInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  text: String;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingUpdateInput {
 | 
	
		
			
				|  |  | +  user?: Maybe<UserUpdateOneRequiredWithoutRatingsInput>;
 | 
	
		
			
				|  |  | +  value?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  comment?: Maybe<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserUpdateOneRequiredWithoutRatingsInput {
 | 
	
		
			
				|  |  | +  create?: Maybe<UserCreateWithoutRatingsInput>;
 | 
	
		
			
				|  |  | +  update?: Maybe<UserUpdateWithoutRatingsDataInput>;
 | 
	
		
			
				|  |  | +  upsert?: Maybe<UserUpsertWithoutRatingsInput>;
 | 
	
		
			
				|  |  | +  connect?: Maybe<UserWhereUniqueInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserUpdateWithoutRatingsDataInput {
 | 
	
		
			
				|  |  | +  email?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry?: Maybe<Float>;
 | 
	
		
			
				|  |  | +  comments?: Maybe<CommentUpdateManyWithoutAuthorInput>;
 | 
	
		
			
				|  |  | +  permissions?: Maybe<UserUpdatepermissionsInput>;
 | 
	
		
			
				|  |  | +  interests?: Maybe<UserUpdateinterestsInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentUpdateManyWithoutAuthorInput {
 | 
	
		
			
				|  |  | +  create?: Maybe<
 | 
	
		
			
				|  |  | +    CommentCreateWithoutAuthorInput[] | CommentCreateWithoutAuthorInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  delete?: Maybe<CommentWhereUniqueInput[] | CommentWhereUniqueInput>;
 | 
	
		
			
				|  |  | +  connect?: Maybe<CommentWhereUniqueInput[] | CommentWhereUniqueInput>;
 | 
	
		
			
				|  |  | +  set?: Maybe<CommentWhereUniqueInput[] | CommentWhereUniqueInput>;
 | 
	
		
			
				|  |  | +  disconnect?: Maybe<CommentWhereUniqueInput[] | CommentWhereUniqueInput>;
 | 
	
		
			
				|  |  | +  update?: Maybe<
 | 
	
		
			
				|  |  | +    | CommentUpdateWithWhereUniqueWithoutAuthorInput[]
 | 
	
		
			
				|  |  | +    | CommentUpdateWithWhereUniqueWithoutAuthorInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  upsert?: Maybe<
 | 
	
		
			
				|  |  | +    | CommentUpsertWithWhereUniqueWithoutAuthorInput[]
 | 
	
		
			
				|  |  | +    | CommentUpsertWithWhereUniqueWithoutAuthorInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  deleteMany?: Maybe<CommentScalarWhereInput[] | CommentScalarWhereInput>;
 | 
	
		
			
				|  |  | +  updateMany?: Maybe<
 | 
	
		
			
				|  |  | +    | CommentUpdateManyWithWhereNestedInput[]
 | 
	
		
			
				|  |  | +    | CommentUpdateManyWithWhereNestedInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentUpdateWithWhereUniqueWithoutAuthorInput {
 | 
	
		
			
				|  |  | +  where: CommentWhereUniqueInput;
 | 
	
		
			
				|  |  | +  data: CommentUpdateWithoutAuthorDataInput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentUpdateWithoutAuthorDataInput {
 | 
	
		
			
				|  |  | +  text?: Maybe<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentUpsertWithWhereUniqueWithoutAuthorInput {
 | 
	
		
			
				|  |  | +  where: CommentWhereUniqueInput;
 | 
	
		
			
				|  |  | +  update: CommentUpdateWithoutAuthorDataInput;
 | 
	
		
			
				|  |  | +  create: CommentCreateWithoutAuthorInput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentScalarWhereInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_lt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_lte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  text?: Maybe<String>;
 | 
	
		
			
				|  |  | +  text_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  text_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  text_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  text_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  text_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  text_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  text_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  text_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  text_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  text_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  text_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  text_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  text_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  createdAt?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_not?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_in?: Maybe<DateTimeInput[] | DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_not_in?: Maybe<DateTimeInput[] | DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_lt?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_lte?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_gt?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_gte?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  AND?: Maybe<CommentScalarWhereInput[] | CommentScalarWhereInput>;
 | 
	
		
			
				|  |  | +  OR?: Maybe<CommentScalarWhereInput[] | CommentScalarWhereInput>;
 | 
	
		
			
				|  |  | +  NOT?: Maybe<CommentScalarWhereInput[] | CommentScalarWhereInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentUpdateManyWithWhereNestedInput {
 | 
	
		
			
				|  |  | +  where: CommentScalarWhereInput;
 | 
	
		
			
				|  |  | +  data: CommentUpdateManyDataInput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentUpdateManyDataInput {
 | 
	
		
			
				|  |  | +  text?: Maybe<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserUpsertWithoutRatingsInput {
 | 
	
		
			
				|  |  | +  update: UserUpdateWithoutRatingsDataInput;
 | 
	
		
			
				|  |  | +  create: UserCreateWithoutRatingsInput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingUpdateManyMutationInput {
 | 
	
		
			
				|  |  | +  value?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  comment?: Maybe<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrackUpdateInput {
 | 
	
		
			
				|  |  | +  title?: Maybe<String>;
 | 
	
		
			
				|  |  | +  artist?: Maybe<String>;
 | 
	
		
			
				|  |  | +  duration?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  link?: Maybe<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrackUpdateManyMutationInput {
 | 
	
		
			
				|  |  | +  title?: Maybe<String>;
 | 
	
		
			
				|  |  | +  artist?: Maybe<String>;
 | 
	
		
			
				|  |  | +  duration?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  link?: Maybe<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingCreateInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  title: String;
 | 
	
		
			
				|  |  | +  type: TrainingTypeCreateOneInput;
 | 
	
		
			
				|  |  | +  trainingDate?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  location?: Maybe<String>;
 | 
	
		
			
				|  |  | +  registrations?: Maybe<UserCreateManyInput>;
 | 
	
		
			
				|  |  | +  attendance?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  ratings?: Maybe<RatingCreateManyInput>;
 | 
	
		
			
				|  |  | +  published: Boolean;
 | 
	
		
			
				|  |  | +  blocks?: Maybe<BlockCreateManyInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingTypeCreateOneInput {
 | 
	
		
			
				|  |  | +  create?: Maybe<TrainingTypeCreateInput>;
 | 
	
		
			
				|  |  | +  connect?: Maybe<TrainingTypeWhereUniqueInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingTypeCreateInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  name: String;
 | 
	
		
			
				|  |  | +  description: String;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserCreateManyInput {
 | 
	
		
			
				|  |  | +  create?: Maybe<UserCreateInput[] | UserCreateInput>;
 | 
	
		
			
				|  |  | +  connect?: Maybe<UserWhereUniqueInput[] | UserWhereUniqueInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserCreateInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  email: String;
 | 
	
		
			
				|  |  | +  name: String;
 | 
	
		
			
				|  |  | +  password: String;
 | 
	
		
			
				|  |  | +  resetToken?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry?: Maybe<Float>;
 | 
	
		
			
				|  |  | +  comments?: Maybe<CommentCreateManyWithoutAuthorInput>;
 | 
	
		
			
				|  |  | +  ratings?: Maybe<RatingCreateManyWithoutUserInput>;
 | 
	
		
			
				|  |  | +  permissions?: Maybe<UserCreatepermissionsInput>;
 | 
	
		
			
				|  |  | +  interests?: Maybe<UserCreateinterestsInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingCreateManyInput {
 | 
	
		
			
				|  |  | +  create?: Maybe<RatingCreateInput[] | RatingCreateInput>;
 | 
	
		
			
				|  |  | +  connect?: Maybe<RatingWhereUniqueInput[] | RatingWhereUniqueInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingUpdateInput {
 | 
	
		
			
				|  |  | +  title?: Maybe<String>;
 | 
	
		
			
				|  |  | +  type?: Maybe<TrainingTypeUpdateOneRequiredInput>;
 | 
	
		
			
				|  |  | +  trainingDate?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  location?: Maybe<String>;
 | 
	
		
			
				|  |  | +  registrations?: Maybe<UserUpdateManyInput>;
 | 
	
		
			
				|  |  | +  attendance?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  ratings?: Maybe<RatingUpdateManyInput>;
 | 
	
		
			
				|  |  | +  published?: Maybe<Boolean>;
 | 
	
		
			
				|  |  | +  blocks?: Maybe<BlockUpdateManyInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingTypeUpdateOneRequiredInput {
 | 
	
		
			
				|  |  | +  create?: Maybe<TrainingTypeCreateInput>;
 | 
	
		
			
				|  |  | +  update?: Maybe<TrainingTypeUpdateDataInput>;
 | 
	
		
			
				|  |  | +  upsert?: Maybe<TrainingTypeUpsertNestedInput>;
 | 
	
		
			
				|  |  | +  connect?: Maybe<TrainingTypeWhereUniqueInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingTypeUpdateDataInput {
 | 
	
		
			
				|  |  | +  name?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description?: Maybe<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingTypeUpsertNestedInput {
 | 
	
		
			
				|  |  | +  update: TrainingTypeUpdateDataInput;
 | 
	
		
			
				|  |  | +  create: TrainingTypeCreateInput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserUpdateManyInput {
 | 
	
		
			
				|  |  | +  create?: Maybe<UserCreateInput[] | UserCreateInput>;
 | 
	
		
			
				|  |  | +  update?: Maybe<
 | 
	
		
			
				|  |  | +    | UserUpdateWithWhereUniqueNestedInput[]
 | 
	
		
			
				|  |  | +    | UserUpdateWithWhereUniqueNestedInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  upsert?: Maybe<
 | 
	
		
			
				|  |  | +    | UserUpsertWithWhereUniqueNestedInput[]
 | 
	
		
			
				|  |  | +    | UserUpsertWithWhereUniqueNestedInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  delete?: Maybe<UserWhereUniqueInput[] | UserWhereUniqueInput>;
 | 
	
		
			
				|  |  | +  connect?: Maybe<UserWhereUniqueInput[] | UserWhereUniqueInput>;
 | 
	
		
			
				|  |  | +  set?: Maybe<UserWhereUniqueInput[] | UserWhereUniqueInput>;
 | 
	
		
			
				|  |  | +  disconnect?: Maybe<UserWhereUniqueInput[] | UserWhereUniqueInput>;
 | 
	
		
			
				|  |  | +  deleteMany?: Maybe<UserScalarWhereInput[] | UserScalarWhereInput>;
 | 
	
		
			
				|  |  | +  updateMany?: Maybe<
 | 
	
		
			
				|  |  | +    UserUpdateManyWithWhereNestedInput[] | UserUpdateManyWithWhereNestedInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserUpdateWithWhereUniqueNestedInput {
 | 
	
		
			
				|  |  | +  where: UserWhereUniqueInput;
 | 
	
		
			
				|  |  | +  data: UserUpdateDataInput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserUpdateDataInput {
 | 
	
		
			
				|  |  | +  email?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry?: Maybe<Float>;
 | 
	
		
			
				|  |  | +  comments?: Maybe<CommentUpdateManyWithoutAuthorInput>;
 | 
	
		
			
				|  |  | +  ratings?: Maybe<RatingUpdateManyWithoutUserInput>;
 | 
	
		
			
				|  |  | +  permissions?: Maybe<UserUpdatepermissionsInput>;
 | 
	
		
			
				|  |  | +  interests?: Maybe<UserUpdateinterestsInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserUpsertWithWhereUniqueNestedInput {
 | 
	
		
			
				|  |  | +  where: UserWhereUniqueInput;
 | 
	
		
			
				|  |  | +  update: UserUpdateDataInput;
 | 
	
		
			
				|  |  | +  create: UserCreateInput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserScalarWhereInput {
 | 
	
		
			
				|  |  | +  id?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_in?: Maybe<ID_Input[] | ID_Input>;
 | 
	
		
			
				|  |  | +  id_lt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_lte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gt?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_gte?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_contains?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_starts_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  id_not_ends_with?: Maybe<ID_Input>;
 | 
	
		
			
				|  |  | +  email?: Maybe<String>;
 | 
	
		
			
				|  |  | +  email_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  email_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  email_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  email_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  email_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  email_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  email_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  email_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  email_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  email_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  email_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  email_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  email_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  name_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  name_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  password_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  password_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken_not?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  resetToken_not_in?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  resetToken_lt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken_lte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken_gt?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken_gte?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken_not_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken_not_starts_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken_not_ends_with?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry?: Maybe<Float>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry_not?: Maybe<Float>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry_in?: Maybe<Float[] | Float>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry_not_in?: Maybe<Float[] | Float>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry_lt?: Maybe<Float>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry_lte?: Maybe<Float>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry_gt?: Maybe<Float>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry_gte?: Maybe<Float>;
 | 
	
		
			
				|  |  | +  createdAt?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_not?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_in?: Maybe<DateTimeInput[] | DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_not_in?: Maybe<DateTimeInput[] | DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_lt?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_lte?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_gt?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  createdAt_gte?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  AND?: Maybe<UserScalarWhereInput[] | UserScalarWhereInput>;
 | 
	
		
			
				|  |  | +  OR?: Maybe<UserScalarWhereInput[] | UserScalarWhereInput>;
 | 
	
		
			
				|  |  | +  NOT?: Maybe<UserScalarWhereInput[] | UserScalarWhereInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserUpdateManyWithWhereNestedInput {
 | 
	
		
			
				|  |  | +  where: UserScalarWhereInput;
 | 
	
		
			
				|  |  | +  data: UserUpdateManyDataInput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserUpdateManyDataInput {
 | 
	
		
			
				|  |  | +  email?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry?: Maybe<Float>;
 | 
	
		
			
				|  |  | +  permissions?: Maybe<UserUpdatepermissionsInput>;
 | 
	
		
			
				|  |  | +  interests?: Maybe<UserUpdateinterestsInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingUpdateManyInput {
 | 
	
		
			
				|  |  | +  create?: Maybe<RatingCreateInput[] | RatingCreateInput>;
 | 
	
		
			
				|  |  | +  update?: Maybe<
 | 
	
		
			
				|  |  | +    | RatingUpdateWithWhereUniqueNestedInput[]
 | 
	
		
			
				|  |  | +    | RatingUpdateWithWhereUniqueNestedInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  upsert?: Maybe<
 | 
	
		
			
				|  |  | +    | RatingUpsertWithWhereUniqueNestedInput[]
 | 
	
		
			
				|  |  | +    | RatingUpsertWithWhereUniqueNestedInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  delete?: Maybe<RatingWhereUniqueInput[] | RatingWhereUniqueInput>;
 | 
	
		
			
				|  |  | +  connect?: Maybe<RatingWhereUniqueInput[] | RatingWhereUniqueInput>;
 | 
	
		
			
				|  |  | +  set?: Maybe<RatingWhereUniqueInput[] | RatingWhereUniqueInput>;
 | 
	
		
			
				|  |  | +  disconnect?: Maybe<RatingWhereUniqueInput[] | RatingWhereUniqueInput>;
 | 
	
		
			
				|  |  | +  deleteMany?: Maybe<RatingScalarWhereInput[] | RatingScalarWhereInput>;
 | 
	
		
			
				|  |  | +  updateMany?: Maybe<
 | 
	
		
			
				|  |  | +    | RatingUpdateManyWithWhereNestedInput[]
 | 
	
		
			
				|  |  | +    | RatingUpdateManyWithWhereNestedInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingUpdateWithWhereUniqueNestedInput {
 | 
	
		
			
				|  |  | +  where: RatingWhereUniqueInput;
 | 
	
		
			
				|  |  | +  data: RatingUpdateDataInput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingUpdateDataInput {
 | 
	
		
			
				|  |  | +  user?: Maybe<UserUpdateOneRequiredWithoutRatingsInput>;
 | 
	
		
			
				|  |  | +  value?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  comment?: Maybe<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingUpsertWithWhereUniqueNestedInput {
 | 
	
		
			
				|  |  | +  where: RatingWhereUniqueInput;
 | 
	
		
			
				|  |  | +  update: RatingUpdateDataInput;
 | 
	
		
			
				|  |  | +  create: RatingCreateInput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingUpdateManyMutationInput {
 | 
	
		
			
				|  |  | +  title?: Maybe<String>;
 | 
	
		
			
				|  |  | +  trainingDate?: Maybe<DateTimeInput>;
 | 
	
		
			
				|  |  | +  location?: Maybe<String>;
 | 
	
		
			
				|  |  | +  attendance?: Maybe<Int>;
 | 
	
		
			
				|  |  | +  published?: Maybe<Boolean>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingTypeUpdateInput {
 | 
	
		
			
				|  |  | +  name?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description?: Maybe<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingTypeUpdateManyMutationInput {
 | 
	
		
			
				|  |  | +  name?: Maybe<String>;
 | 
	
		
			
				|  |  | +  description?: Maybe<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserUpdateInput {
 | 
	
		
			
				|  |  | +  email?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry?: Maybe<Float>;
 | 
	
		
			
				|  |  | +  comments?: Maybe<CommentUpdateManyWithoutAuthorInput>;
 | 
	
		
			
				|  |  | +  ratings?: Maybe<RatingUpdateManyWithoutUserInput>;
 | 
	
		
			
				|  |  | +  permissions?: Maybe<UserUpdatepermissionsInput>;
 | 
	
		
			
				|  |  | +  interests?: Maybe<UserUpdateinterestsInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserUpdateManyMutationInput {
 | 
	
		
			
				|  |  | +  email?: Maybe<String>;
 | 
	
		
			
				|  |  | +  name?: Maybe<String>;
 | 
	
		
			
				|  |  | +  password?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetToken?: Maybe<String>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry?: Maybe<Float>;
 | 
	
		
			
				|  |  | +  permissions?: Maybe<UserUpdatepermissionsInput>;
 | 
	
		
			
				|  |  | +  interests?: Maybe<UserUpdateinterestsInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockSubscriptionWhereInput {
 | 
	
		
			
				|  |  | +  mutation_in?: Maybe<MutationType[] | MutationType>;
 | 
	
		
			
				|  |  | +  updatedFields_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  updatedFields_contains_every?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  updatedFields_contains_some?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  node?: Maybe<BlockWhereInput>;
 | 
	
		
			
				|  |  | +  AND?: Maybe<BlockSubscriptionWhereInput[] | BlockSubscriptionWhereInput>;
 | 
	
		
			
				|  |  | +  OR?: Maybe<BlockSubscriptionWhereInput[] | BlockSubscriptionWhereInput>;
 | 
	
		
			
				|  |  | +  NOT?: Maybe<BlockSubscriptionWhereInput[] | BlockSubscriptionWhereInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentSubscriptionWhereInput {
 | 
	
		
			
				|  |  | +  mutation_in?: Maybe<MutationType[] | MutationType>;
 | 
	
		
			
				|  |  | +  updatedFields_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  updatedFields_contains_every?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  updatedFields_contains_some?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  node?: Maybe<CommentWhereInput>;
 | 
	
		
			
				|  |  | +  AND?: Maybe<CommentSubscriptionWhereInput[] | CommentSubscriptionWhereInput>;
 | 
	
		
			
				|  |  | +  OR?: Maybe<CommentSubscriptionWhereInput[] | CommentSubscriptionWhereInput>;
 | 
	
		
			
				|  |  | +  NOT?: Maybe<CommentSubscriptionWhereInput[] | CommentSubscriptionWhereInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseSubscriptionWhereInput {
 | 
	
		
			
				|  |  | +  mutation_in?: Maybe<MutationType[] | MutationType>;
 | 
	
		
			
				|  |  | +  updatedFields_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  updatedFields_contains_every?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  updatedFields_contains_some?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  node?: Maybe<ExerciseWhereInput>;
 | 
	
		
			
				|  |  | +  AND?: Maybe<
 | 
	
		
			
				|  |  | +    ExerciseSubscriptionWhereInput[] | ExerciseSubscriptionWhereInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  OR?: Maybe<ExerciseSubscriptionWhereInput[] | ExerciseSubscriptionWhereInput>;
 | 
	
		
			
				|  |  | +  NOT?: Maybe<
 | 
	
		
			
				|  |  | +    ExerciseSubscriptionWhereInput[] | ExerciseSubscriptionWhereInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstanceSubscriptionWhereInput {
 | 
	
		
			
				|  |  | +  mutation_in?: Maybe<MutationType[] | MutationType>;
 | 
	
		
			
				|  |  | +  updatedFields_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  updatedFields_contains_every?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  updatedFields_contains_some?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  node?: Maybe<ExerciseInstanceWhereInput>;
 | 
	
		
			
				|  |  | +  AND?: Maybe<
 | 
	
		
			
				|  |  | +    | ExerciseInstanceSubscriptionWhereInput[]
 | 
	
		
			
				|  |  | +    | ExerciseInstanceSubscriptionWhereInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  OR?: Maybe<
 | 
	
		
			
				|  |  | +    | ExerciseInstanceSubscriptionWhereInput[]
 | 
	
		
			
				|  |  | +    | ExerciseInstanceSubscriptionWhereInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  NOT?: Maybe<
 | 
	
		
			
				|  |  | +    | ExerciseInstanceSubscriptionWhereInput[]
 | 
	
		
			
				|  |  | +    | ExerciseInstanceSubscriptionWhereInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface FormatSubscriptionWhereInput {
 | 
	
		
			
				|  |  | +  mutation_in?: Maybe<MutationType[] | MutationType>;
 | 
	
		
			
				|  |  | +  updatedFields_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  updatedFields_contains_every?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  updatedFields_contains_some?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  node?: Maybe<FormatWhereInput>;
 | 
	
		
			
				|  |  | +  AND?: Maybe<FormatSubscriptionWhereInput[] | FormatSubscriptionWhereInput>;
 | 
	
		
			
				|  |  | +  OR?: Maybe<FormatSubscriptionWhereInput[] | FormatSubscriptionWhereInput>;
 | 
	
		
			
				|  |  | +  NOT?: Maybe<FormatSubscriptionWhereInput[] | FormatSubscriptionWhereInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingSubscriptionWhereInput {
 | 
	
		
			
				|  |  | +  mutation_in?: Maybe<MutationType[] | MutationType>;
 | 
	
		
			
				|  |  | +  updatedFields_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  updatedFields_contains_every?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  updatedFields_contains_some?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  node?: Maybe<RatingWhereInput>;
 | 
	
		
			
				|  |  | +  AND?: Maybe<RatingSubscriptionWhereInput[] | RatingSubscriptionWhereInput>;
 | 
	
		
			
				|  |  | +  OR?: Maybe<RatingSubscriptionWhereInput[] | RatingSubscriptionWhereInput>;
 | 
	
		
			
				|  |  | +  NOT?: Maybe<RatingSubscriptionWhereInput[] | RatingSubscriptionWhereInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrackSubscriptionWhereInput {
 | 
	
		
			
				|  |  | +  mutation_in?: Maybe<MutationType[] | MutationType>;
 | 
	
		
			
				|  |  | +  updatedFields_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  updatedFields_contains_every?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  updatedFields_contains_some?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  node?: Maybe<TrackWhereInput>;
 | 
	
		
			
				|  |  | +  AND?: Maybe<TrackSubscriptionWhereInput[] | TrackSubscriptionWhereInput>;
 | 
	
		
			
				|  |  | +  OR?: Maybe<TrackSubscriptionWhereInput[] | TrackSubscriptionWhereInput>;
 | 
	
		
			
				|  |  | +  NOT?: Maybe<TrackSubscriptionWhereInput[] | TrackSubscriptionWhereInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingSubscriptionWhereInput {
 | 
	
		
			
				|  |  | +  mutation_in?: Maybe<MutationType[] | MutationType>;
 | 
	
		
			
				|  |  | +  updatedFields_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  updatedFields_contains_every?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  updatedFields_contains_some?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  node?: Maybe<TrainingWhereInput>;
 | 
	
		
			
				|  |  | +  AND?: Maybe<
 | 
	
		
			
				|  |  | +    TrainingSubscriptionWhereInput[] | TrainingSubscriptionWhereInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  OR?: Maybe<TrainingSubscriptionWhereInput[] | TrainingSubscriptionWhereInput>;
 | 
	
		
			
				|  |  | +  NOT?: Maybe<
 | 
	
		
			
				|  |  | +    TrainingSubscriptionWhereInput[] | TrainingSubscriptionWhereInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingTypeSubscriptionWhereInput {
 | 
	
		
			
				|  |  | +  mutation_in?: Maybe<MutationType[] | MutationType>;
 | 
	
		
			
				|  |  | +  updatedFields_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  updatedFields_contains_every?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  updatedFields_contains_some?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  node?: Maybe<TrainingTypeWhereInput>;
 | 
	
		
			
				|  |  | +  AND?: Maybe<
 | 
	
		
			
				|  |  | +    TrainingTypeSubscriptionWhereInput[] | TrainingTypeSubscriptionWhereInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  OR?: Maybe<
 | 
	
		
			
				|  |  | +    TrainingTypeSubscriptionWhereInput[] | TrainingTypeSubscriptionWhereInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +  NOT?: Maybe<
 | 
	
		
			
				|  |  | +    TrainingTypeSubscriptionWhereInput[] | TrainingTypeSubscriptionWhereInput
 | 
	
		
			
				|  |  | +  >;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserSubscriptionWhereInput {
 | 
	
		
			
				|  |  | +  mutation_in?: Maybe<MutationType[] | MutationType>;
 | 
	
		
			
				|  |  | +  updatedFields_contains?: Maybe<String>;
 | 
	
		
			
				|  |  | +  updatedFields_contains_every?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  updatedFields_contains_some?: Maybe<String[] | String>;
 | 
	
		
			
				|  |  | +  node?: Maybe<UserWhereInput>;
 | 
	
		
			
				|  |  | +  AND?: Maybe<UserSubscriptionWhereInput[] | UserSubscriptionWhereInput>;
 | 
	
		
			
				|  |  | +  OR?: Maybe<UserSubscriptionWhereInput[] | UserSubscriptionWhereInput>;
 | 
	
		
			
				|  |  | +  NOT?: Maybe<UserSubscriptionWhereInput[] | UserSubscriptionWhereInput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface NodeNode {
 | 
	
		
			
				|  |  | +  id: ID_Output;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface Block {
 | 
	
		
			
				|  |  | +  id: ID_Output;
 | 
	
		
			
				|  |  | +  sequence: Int;
 | 
	
		
			
				|  |  | +  title: String;
 | 
	
		
			
				|  |  | +  description?: String;
 | 
	
		
			
				|  |  | +  videos: String[];
 | 
	
		
			
				|  |  | +  pictures: String[];
 | 
	
		
			
				|  |  | +  duration?: Int;
 | 
	
		
			
				|  |  | +  rounds?: Int;
 | 
	
		
			
				|  |  | +  rest?: Int;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockPromise extends Promise<Block>, Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  sequence: () => Promise<Int>;
 | 
	
		
			
				|  |  | +  title: () => Promise<String>;
 | 
	
		
			
				|  |  | +  description: () => Promise<String>;
 | 
	
		
			
				|  |  | +  videos: () => Promise<String[]>;
 | 
	
		
			
				|  |  | +  pictures: () => Promise<String[]>;
 | 
	
		
			
				|  |  | +  duration: () => Promise<Int>;
 | 
	
		
			
				|  |  | +  rounds: () => Promise<Int>;
 | 
	
		
			
				|  |  | +  format: <T = FormatPromise>() => T;
 | 
	
		
			
				|  |  | +  rest: () => Promise<Int>;
 | 
	
		
			
				|  |  | +  tracks: <T = FragmentableArray<Track>>(args?: {
 | 
	
		
			
				|  |  | +    where?: TrackWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: TrackOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => T;
 | 
	
		
			
				|  |  | +  blocks: <T = FragmentableArray<Block>>(args?: {
 | 
	
		
			
				|  |  | +    where?: BlockWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: BlockOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => T;
 | 
	
		
			
				|  |  | +  exercises: <T = FragmentableArray<ExerciseInstance>>(args?: {
 | 
	
		
			
				|  |  | +    where?: ExerciseInstanceWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: ExerciseInstanceOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<Block>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<AsyncIterator<ID_Output>>;
 | 
	
		
			
				|  |  | +  sequence: () => Promise<AsyncIterator<Int>>;
 | 
	
		
			
				|  |  | +  title: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  description: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  videos: () => Promise<AsyncIterator<String[]>>;
 | 
	
		
			
				|  |  | +  pictures: () => Promise<AsyncIterator<String[]>>;
 | 
	
		
			
				|  |  | +  duration: () => Promise<AsyncIterator<Int>>;
 | 
	
		
			
				|  |  | +  rounds: () => Promise<AsyncIterator<Int>>;
 | 
	
		
			
				|  |  | +  format: <T = FormatSubscription>() => T;
 | 
	
		
			
				|  |  | +  rest: () => Promise<AsyncIterator<Int>>;
 | 
	
		
			
				|  |  | +  tracks: <T = Promise<AsyncIterator<TrackSubscription>>>(args?: {
 | 
	
		
			
				|  |  | +    where?: TrackWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: TrackOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => T;
 | 
	
		
			
				|  |  | +  blocks: <T = Promise<AsyncIterator<BlockSubscription>>>(args?: {
 | 
	
		
			
				|  |  | +    where?: BlockWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: BlockOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => T;
 | 
	
		
			
				|  |  | +  exercises: <T = Promise<AsyncIterator<ExerciseInstanceSubscription>>>(args?: {
 | 
	
		
			
				|  |  | +    where?: ExerciseInstanceWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: ExerciseInstanceOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockNullablePromise
 | 
	
		
			
				|  |  | +  extends Promise<Block | null>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  sequence: () => Promise<Int>;
 | 
	
		
			
				|  |  | +  title: () => Promise<String>;
 | 
	
		
			
				|  |  | +  description: () => Promise<String>;
 | 
	
		
			
				|  |  | +  videos: () => Promise<String[]>;
 | 
	
		
			
				|  |  | +  pictures: () => Promise<String[]>;
 | 
	
		
			
				|  |  | +  duration: () => Promise<Int>;
 | 
	
		
			
				|  |  | +  rounds: () => Promise<Int>;
 | 
	
		
			
				|  |  | +  format: <T = FormatPromise>() => T;
 | 
	
		
			
				|  |  | +  rest: () => Promise<Int>;
 | 
	
		
			
				|  |  | +  tracks: <T = FragmentableArray<Track>>(args?: {
 | 
	
		
			
				|  |  | +    where?: TrackWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: TrackOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => T;
 | 
	
		
			
				|  |  | +  blocks: <T = FragmentableArray<Block>>(args?: {
 | 
	
		
			
				|  |  | +    where?: BlockWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: BlockOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => T;
 | 
	
		
			
				|  |  | +  exercises: <T = FragmentableArray<ExerciseInstance>>(args?: {
 | 
	
		
			
				|  |  | +    where?: ExerciseInstanceWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: ExerciseInstanceOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface Format {
 | 
	
		
			
				|  |  | +  id: ID_Output;
 | 
	
		
			
				|  |  | +  name: String;
 | 
	
		
			
				|  |  | +  description: String;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface FormatPromise extends Promise<Format>, Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  name: () => Promise<String>;
 | 
	
		
			
				|  |  | +  description: () => Promise<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface FormatSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<Format>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<AsyncIterator<ID_Output>>;
 | 
	
		
			
				|  |  | +  name: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  description: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface FormatNullablePromise
 | 
	
		
			
				|  |  | +  extends Promise<Format | null>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  name: () => Promise<String>;
 | 
	
		
			
				|  |  | +  description: () => Promise<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface Track {
 | 
	
		
			
				|  |  | +  id: ID_Output;
 | 
	
		
			
				|  |  | +  title: String;
 | 
	
		
			
				|  |  | +  artist: String;
 | 
	
		
			
				|  |  | +  duration: Int;
 | 
	
		
			
				|  |  | +  link: String;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrackPromise extends Promise<Track>, Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  title: () => Promise<String>;
 | 
	
		
			
				|  |  | +  artist: () => Promise<String>;
 | 
	
		
			
				|  |  | +  duration: () => Promise<Int>;
 | 
	
		
			
				|  |  | +  link: () => Promise<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrackSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<Track>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<AsyncIterator<ID_Output>>;
 | 
	
		
			
				|  |  | +  title: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  artist: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  duration: () => Promise<AsyncIterator<Int>>;
 | 
	
		
			
				|  |  | +  link: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrackNullablePromise
 | 
	
		
			
				|  |  | +  extends Promise<Track | null>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  title: () => Promise<String>;
 | 
	
		
			
				|  |  | +  artist: () => Promise<String>;
 | 
	
		
			
				|  |  | +  duration: () => Promise<Int>;
 | 
	
		
			
				|  |  | +  link: () => Promise<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstance {
 | 
	
		
			
				|  |  | +  id: ID_Output;
 | 
	
		
			
				|  |  | +  repetitions?: Int;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstancePromise
 | 
	
		
			
				|  |  | +  extends Promise<ExerciseInstance>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  exercise: <T = ExercisePromise>() => T;
 | 
	
		
			
				|  |  | +  repetitions: () => Promise<Int>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstanceSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<ExerciseInstance>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<AsyncIterator<ID_Output>>;
 | 
	
		
			
				|  |  | +  exercise: <T = ExerciseSubscription>() => T;
 | 
	
		
			
				|  |  | +  repetitions: () => Promise<AsyncIterator<Int>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstanceNullablePromise
 | 
	
		
			
				|  |  | +  extends Promise<ExerciseInstance | null>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  exercise: <T = ExercisePromise>() => T;
 | 
	
		
			
				|  |  | +  repetitions: () => Promise<Int>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface Exercise {
 | 
	
		
			
				|  |  | +  id: ID_Output;
 | 
	
		
			
				|  |  | +  name: String;
 | 
	
		
			
				|  |  | +  description: String;
 | 
	
		
			
				|  |  | +  video: String;
 | 
	
		
			
				|  |  | +  targets: String[];
 | 
	
		
			
				|  |  | +  baseExercise: String[];
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExercisePromise extends Promise<Exercise>, Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  name: () => Promise<String>;
 | 
	
		
			
				|  |  | +  description: () => Promise<String>;
 | 
	
		
			
				|  |  | +  video: () => Promise<String>;
 | 
	
		
			
				|  |  | +  targets: () => Promise<String[]>;
 | 
	
		
			
				|  |  | +  baseExercise: () => Promise<String[]>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<Exercise>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<AsyncIterator<ID_Output>>;
 | 
	
		
			
				|  |  | +  name: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  description: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  video: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  targets: () => Promise<AsyncIterator<String[]>>;
 | 
	
		
			
				|  |  | +  baseExercise: () => Promise<AsyncIterator<String[]>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseNullablePromise
 | 
	
		
			
				|  |  | +  extends Promise<Exercise | null>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  name: () => Promise<String>;
 | 
	
		
			
				|  |  | +  description: () => Promise<String>;
 | 
	
		
			
				|  |  | +  video: () => Promise<String>;
 | 
	
		
			
				|  |  | +  targets: () => Promise<String[]>;
 | 
	
		
			
				|  |  | +  baseExercise: () => Promise<String[]>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockConnection {
 | 
	
		
			
				|  |  | +  pageInfo: PageInfo;
 | 
	
		
			
				|  |  | +  edges: BlockEdge[];
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockConnectionPromise
 | 
	
		
			
				|  |  | +  extends Promise<BlockConnection>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  pageInfo: <T = PageInfoPromise>() => T;
 | 
	
		
			
				|  |  | +  edges: <T = FragmentableArray<BlockEdge>>() => T;
 | 
	
		
			
				|  |  | +  aggregate: <T = AggregateBlockPromise>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockConnectionSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<BlockConnection>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  pageInfo: <T = PageInfoSubscription>() => T;
 | 
	
		
			
				|  |  | +  edges: <T = Promise<AsyncIterator<BlockEdgeSubscription>>>() => T;
 | 
	
		
			
				|  |  | +  aggregate: <T = AggregateBlockSubscription>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface PageInfo {
 | 
	
		
			
				|  |  | +  hasNextPage: Boolean;
 | 
	
		
			
				|  |  | +  hasPreviousPage: Boolean;
 | 
	
		
			
				|  |  | +  startCursor?: String;
 | 
	
		
			
				|  |  | +  endCursor?: String;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface PageInfoPromise extends Promise<PageInfo>, Fragmentable {
 | 
	
		
			
				|  |  | +  hasNextPage: () => Promise<Boolean>;
 | 
	
		
			
				|  |  | +  hasPreviousPage: () => Promise<Boolean>;
 | 
	
		
			
				|  |  | +  startCursor: () => Promise<String>;
 | 
	
		
			
				|  |  | +  endCursor: () => Promise<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface PageInfoSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<PageInfo>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  hasNextPage: () => Promise<AsyncIterator<Boolean>>;
 | 
	
		
			
				|  |  | +  hasPreviousPage: () => Promise<AsyncIterator<Boolean>>;
 | 
	
		
			
				|  |  | +  startCursor: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  endCursor: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockEdge {
 | 
	
		
			
				|  |  | +  node: Block;
 | 
	
		
			
				|  |  | +  cursor: String;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockEdgePromise extends Promise<BlockEdge>, Fragmentable {
 | 
	
		
			
				|  |  | +  node: <T = BlockPromise>() => T;
 | 
	
		
			
				|  |  | +  cursor: () => Promise<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockEdgeSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<BlockEdge>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  node: <T = BlockSubscription>() => T;
 | 
	
		
			
				|  |  | +  cursor: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateBlock {
 | 
	
		
			
				|  |  | +  count: Int;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateBlockPromise
 | 
	
		
			
				|  |  | +  extends Promise<AggregateBlock>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  count: () => Promise<Int>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateBlockSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<AggregateBlock>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  count: () => Promise<AsyncIterator<Int>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface Comment {
 | 
	
		
			
				|  |  | +  id: ID_Output;
 | 
	
		
			
				|  |  | +  text: String;
 | 
	
		
			
				|  |  | +  createdAt: DateTimeOutput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentPromise extends Promise<Comment>, Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  text: () => Promise<String>;
 | 
	
		
			
				|  |  | +  author: <T = UserPromise>() => T;
 | 
	
		
			
				|  |  | +  createdAt: () => Promise<DateTimeOutput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<Comment>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<AsyncIterator<ID_Output>>;
 | 
	
		
			
				|  |  | +  text: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  author: <T = UserSubscription>() => T;
 | 
	
		
			
				|  |  | +  createdAt: () => Promise<AsyncIterator<DateTimeOutput>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentNullablePromise
 | 
	
		
			
				|  |  | +  extends Promise<Comment | null>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  text: () => Promise<String>;
 | 
	
		
			
				|  |  | +  author: <T = UserPromise>() => T;
 | 
	
		
			
				|  |  | +  createdAt: () => Promise<DateTimeOutput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface User {
 | 
	
		
			
				|  |  | +  id: ID_Output;
 | 
	
		
			
				|  |  | +  email: String;
 | 
	
		
			
				|  |  | +  name: String;
 | 
	
		
			
				|  |  | +  password: String;
 | 
	
		
			
				|  |  | +  resetToken?: String;
 | 
	
		
			
				|  |  | +  resetTokenExpiry?: Float;
 | 
	
		
			
				|  |  | +  createdAt: DateTimeOutput;
 | 
	
		
			
				|  |  | +  permissions: Permission[];
 | 
	
		
			
				|  |  | +  interests: String[];
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserPromise extends Promise<User>, Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  email: () => Promise<String>;
 | 
	
		
			
				|  |  | +  name: () => Promise<String>;
 | 
	
		
			
				|  |  | +  password: () => Promise<String>;
 | 
	
		
			
				|  |  | +  resetToken: () => Promise<String>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry: () => Promise<Float>;
 | 
	
		
			
				|  |  | +  createdAt: () => Promise<DateTimeOutput>;
 | 
	
		
			
				|  |  | +  comments: <T = FragmentableArray<Comment>>(args?: {
 | 
	
		
			
				|  |  | +    where?: CommentWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: CommentOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => T;
 | 
	
		
			
				|  |  | +  ratings: <T = FragmentableArray<Rating>>(args?: {
 | 
	
		
			
				|  |  | +    where?: RatingWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: RatingOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => T;
 | 
	
		
			
				|  |  | +  permissions: () => Promise<Permission[]>;
 | 
	
		
			
				|  |  | +  interests: () => Promise<String[]>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<User>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<AsyncIterator<ID_Output>>;
 | 
	
		
			
				|  |  | +  email: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  name: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  password: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  resetToken: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry: () => Promise<AsyncIterator<Float>>;
 | 
	
		
			
				|  |  | +  createdAt: () => Promise<AsyncIterator<DateTimeOutput>>;
 | 
	
		
			
				|  |  | +  comments: <T = Promise<AsyncIterator<CommentSubscription>>>(args?: {
 | 
	
		
			
				|  |  | +    where?: CommentWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: CommentOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => T;
 | 
	
		
			
				|  |  | +  ratings: <T = Promise<AsyncIterator<RatingSubscription>>>(args?: {
 | 
	
		
			
				|  |  | +    where?: RatingWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: RatingOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => T;
 | 
	
		
			
				|  |  | +  permissions: () => Promise<AsyncIterator<Permission[]>>;
 | 
	
		
			
				|  |  | +  interests: () => Promise<AsyncIterator<String[]>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserNullablePromise
 | 
	
		
			
				|  |  | +  extends Promise<User | null>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  email: () => Promise<String>;
 | 
	
		
			
				|  |  | +  name: () => Promise<String>;
 | 
	
		
			
				|  |  | +  password: () => Promise<String>;
 | 
	
		
			
				|  |  | +  resetToken: () => Promise<String>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry: () => Promise<Float>;
 | 
	
		
			
				|  |  | +  createdAt: () => Promise<DateTimeOutput>;
 | 
	
		
			
				|  |  | +  comments: <T = FragmentableArray<Comment>>(args?: {
 | 
	
		
			
				|  |  | +    where?: CommentWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: CommentOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => T;
 | 
	
		
			
				|  |  | +  ratings: <T = FragmentableArray<Rating>>(args?: {
 | 
	
		
			
				|  |  | +    where?: RatingWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: RatingOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => T;
 | 
	
		
			
				|  |  | +  permissions: () => Promise<Permission[]>;
 | 
	
		
			
				|  |  | +  interests: () => Promise<String[]>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface Rating {
 | 
	
		
			
				|  |  | +  id: ID_Output;
 | 
	
		
			
				|  |  | +  value: Int;
 | 
	
		
			
				|  |  | +  comment: String;
 | 
	
		
			
				|  |  | +  createdAt: DateTimeOutput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingPromise extends Promise<Rating>, Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  user: <T = UserPromise>() => T;
 | 
	
		
			
				|  |  | +  value: () => Promise<Int>;
 | 
	
		
			
				|  |  | +  comment: () => Promise<String>;
 | 
	
		
			
				|  |  | +  createdAt: () => Promise<DateTimeOutput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<Rating>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<AsyncIterator<ID_Output>>;
 | 
	
		
			
				|  |  | +  user: <T = UserSubscription>() => T;
 | 
	
		
			
				|  |  | +  value: () => Promise<AsyncIterator<Int>>;
 | 
	
		
			
				|  |  | +  comment: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  createdAt: () => Promise<AsyncIterator<DateTimeOutput>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingNullablePromise
 | 
	
		
			
				|  |  | +  extends Promise<Rating | null>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  user: <T = UserPromise>() => T;
 | 
	
		
			
				|  |  | +  value: () => Promise<Int>;
 | 
	
		
			
				|  |  | +  comment: () => Promise<String>;
 | 
	
		
			
				|  |  | +  createdAt: () => Promise<DateTimeOutput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentConnection {
 | 
	
		
			
				|  |  | +  pageInfo: PageInfo;
 | 
	
		
			
				|  |  | +  edges: CommentEdge[];
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentConnectionPromise
 | 
	
		
			
				|  |  | +  extends Promise<CommentConnection>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  pageInfo: <T = PageInfoPromise>() => T;
 | 
	
		
			
				|  |  | +  edges: <T = FragmentableArray<CommentEdge>>() => T;
 | 
	
		
			
				|  |  | +  aggregate: <T = AggregateCommentPromise>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentConnectionSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<CommentConnection>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  pageInfo: <T = PageInfoSubscription>() => T;
 | 
	
		
			
				|  |  | +  edges: <T = Promise<AsyncIterator<CommentEdgeSubscription>>>() => T;
 | 
	
		
			
				|  |  | +  aggregate: <T = AggregateCommentSubscription>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentEdge {
 | 
	
		
			
				|  |  | +  node: Comment;
 | 
	
		
			
				|  |  | +  cursor: String;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentEdgePromise extends Promise<CommentEdge>, Fragmentable {
 | 
	
		
			
				|  |  | +  node: <T = CommentPromise>() => T;
 | 
	
		
			
				|  |  | +  cursor: () => Promise<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentEdgeSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<CommentEdge>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  node: <T = CommentSubscription>() => T;
 | 
	
		
			
				|  |  | +  cursor: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateComment {
 | 
	
		
			
				|  |  | +  count: Int;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateCommentPromise
 | 
	
		
			
				|  |  | +  extends Promise<AggregateComment>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  count: () => Promise<Int>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateCommentSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<AggregateComment>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  count: () => Promise<AsyncIterator<Int>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseConnection {
 | 
	
		
			
				|  |  | +  pageInfo: PageInfo;
 | 
	
		
			
				|  |  | +  edges: ExerciseEdge[];
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseConnectionPromise
 | 
	
		
			
				|  |  | +  extends Promise<ExerciseConnection>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  pageInfo: <T = PageInfoPromise>() => T;
 | 
	
		
			
				|  |  | +  edges: <T = FragmentableArray<ExerciseEdge>>() => T;
 | 
	
		
			
				|  |  | +  aggregate: <T = AggregateExercisePromise>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseConnectionSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<ExerciseConnection>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  pageInfo: <T = PageInfoSubscription>() => T;
 | 
	
		
			
				|  |  | +  edges: <T = Promise<AsyncIterator<ExerciseEdgeSubscription>>>() => T;
 | 
	
		
			
				|  |  | +  aggregate: <T = AggregateExerciseSubscription>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseEdge {
 | 
	
		
			
				|  |  | +  node: Exercise;
 | 
	
		
			
				|  |  | +  cursor: String;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseEdgePromise
 | 
	
		
			
				|  |  | +  extends Promise<ExerciseEdge>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  node: <T = ExercisePromise>() => T;
 | 
	
		
			
				|  |  | +  cursor: () => Promise<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseEdgeSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<ExerciseEdge>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  node: <T = ExerciseSubscription>() => T;
 | 
	
		
			
				|  |  | +  cursor: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateExercise {
 | 
	
		
			
				|  |  | +  count: Int;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateExercisePromise
 | 
	
		
			
				|  |  | +  extends Promise<AggregateExercise>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  count: () => Promise<Int>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateExerciseSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<AggregateExercise>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  count: () => Promise<AsyncIterator<Int>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstanceConnection {
 | 
	
		
			
				|  |  | +  pageInfo: PageInfo;
 | 
	
		
			
				|  |  | +  edges: ExerciseInstanceEdge[];
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstanceConnectionPromise
 | 
	
		
			
				|  |  | +  extends Promise<ExerciseInstanceConnection>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  pageInfo: <T = PageInfoPromise>() => T;
 | 
	
		
			
				|  |  | +  edges: <T = FragmentableArray<ExerciseInstanceEdge>>() => T;
 | 
	
		
			
				|  |  | +  aggregate: <T = AggregateExerciseInstancePromise>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstanceConnectionSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<ExerciseInstanceConnection>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  pageInfo: <T = PageInfoSubscription>() => T;
 | 
	
		
			
				|  |  | +  edges: <T = Promise<AsyncIterator<ExerciseInstanceEdgeSubscription>>>() => T;
 | 
	
		
			
				|  |  | +  aggregate: <T = AggregateExerciseInstanceSubscription>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstanceEdge {
 | 
	
		
			
				|  |  | +  node: ExerciseInstance;
 | 
	
		
			
				|  |  | +  cursor: String;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstanceEdgePromise
 | 
	
		
			
				|  |  | +  extends Promise<ExerciseInstanceEdge>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  node: <T = ExerciseInstancePromise>() => T;
 | 
	
		
			
				|  |  | +  cursor: () => Promise<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstanceEdgeSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<ExerciseInstanceEdge>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  node: <T = ExerciseInstanceSubscription>() => T;
 | 
	
		
			
				|  |  | +  cursor: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateExerciseInstance {
 | 
	
		
			
				|  |  | +  count: Int;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateExerciseInstancePromise
 | 
	
		
			
				|  |  | +  extends Promise<AggregateExerciseInstance>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  count: () => Promise<Int>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateExerciseInstanceSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<AggregateExerciseInstance>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  count: () => Promise<AsyncIterator<Int>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface FormatConnection {
 | 
	
		
			
				|  |  | +  pageInfo: PageInfo;
 | 
	
		
			
				|  |  | +  edges: FormatEdge[];
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface FormatConnectionPromise
 | 
	
		
			
				|  |  | +  extends Promise<FormatConnection>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  pageInfo: <T = PageInfoPromise>() => T;
 | 
	
		
			
				|  |  | +  edges: <T = FragmentableArray<FormatEdge>>() => T;
 | 
	
		
			
				|  |  | +  aggregate: <T = AggregateFormatPromise>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface FormatConnectionSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<FormatConnection>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  pageInfo: <T = PageInfoSubscription>() => T;
 | 
	
		
			
				|  |  | +  edges: <T = Promise<AsyncIterator<FormatEdgeSubscription>>>() => T;
 | 
	
		
			
				|  |  | +  aggregate: <T = AggregateFormatSubscription>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface FormatEdge {
 | 
	
		
			
				|  |  | +  node: Format;
 | 
	
		
			
				|  |  | +  cursor: String;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface FormatEdgePromise extends Promise<FormatEdge>, Fragmentable {
 | 
	
		
			
				|  |  | +  node: <T = FormatPromise>() => T;
 | 
	
		
			
				|  |  | +  cursor: () => Promise<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface FormatEdgeSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<FormatEdge>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  node: <T = FormatSubscription>() => T;
 | 
	
		
			
				|  |  | +  cursor: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateFormat {
 | 
	
		
			
				|  |  | +  count: Int;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateFormatPromise
 | 
	
		
			
				|  |  | +  extends Promise<AggregateFormat>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  count: () => Promise<Int>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateFormatSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<AggregateFormat>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  count: () => Promise<AsyncIterator<Int>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingConnection {
 | 
	
		
			
				|  |  | +  pageInfo: PageInfo;
 | 
	
		
			
				|  |  | +  edges: RatingEdge[];
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingConnectionPromise
 | 
	
		
			
				|  |  | +  extends Promise<RatingConnection>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  pageInfo: <T = PageInfoPromise>() => T;
 | 
	
		
			
				|  |  | +  edges: <T = FragmentableArray<RatingEdge>>() => T;
 | 
	
		
			
				|  |  | +  aggregate: <T = AggregateRatingPromise>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingConnectionSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<RatingConnection>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  pageInfo: <T = PageInfoSubscription>() => T;
 | 
	
		
			
				|  |  | +  edges: <T = Promise<AsyncIterator<RatingEdgeSubscription>>>() => T;
 | 
	
		
			
				|  |  | +  aggregate: <T = AggregateRatingSubscription>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingEdge {
 | 
	
		
			
				|  |  | +  node: Rating;
 | 
	
		
			
				|  |  | +  cursor: String;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingEdgePromise extends Promise<RatingEdge>, Fragmentable {
 | 
	
		
			
				|  |  | +  node: <T = RatingPromise>() => T;
 | 
	
		
			
				|  |  | +  cursor: () => Promise<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingEdgeSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<RatingEdge>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  node: <T = RatingSubscription>() => T;
 | 
	
		
			
				|  |  | +  cursor: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateRating {
 | 
	
		
			
				|  |  | +  count: Int;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateRatingPromise
 | 
	
		
			
				|  |  | +  extends Promise<AggregateRating>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  count: () => Promise<Int>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateRatingSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<AggregateRating>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  count: () => Promise<AsyncIterator<Int>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrackConnection {
 | 
	
		
			
				|  |  | +  pageInfo: PageInfo;
 | 
	
		
			
				|  |  | +  edges: TrackEdge[];
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrackConnectionPromise
 | 
	
		
			
				|  |  | +  extends Promise<TrackConnection>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  pageInfo: <T = PageInfoPromise>() => T;
 | 
	
		
			
				|  |  | +  edges: <T = FragmentableArray<TrackEdge>>() => T;
 | 
	
		
			
				|  |  | +  aggregate: <T = AggregateTrackPromise>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrackConnectionSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<TrackConnection>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  pageInfo: <T = PageInfoSubscription>() => T;
 | 
	
		
			
				|  |  | +  edges: <T = Promise<AsyncIterator<TrackEdgeSubscription>>>() => T;
 | 
	
		
			
				|  |  | +  aggregate: <T = AggregateTrackSubscription>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrackEdge {
 | 
	
		
			
				|  |  | +  node: Track;
 | 
	
		
			
				|  |  | +  cursor: String;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrackEdgePromise extends Promise<TrackEdge>, Fragmentable {
 | 
	
		
			
				|  |  | +  node: <T = TrackPromise>() => T;
 | 
	
		
			
				|  |  | +  cursor: () => Promise<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrackEdgeSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<TrackEdge>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  node: <T = TrackSubscription>() => T;
 | 
	
		
			
				|  |  | +  cursor: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateTrack {
 | 
	
		
			
				|  |  | +  count: Int;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateTrackPromise
 | 
	
		
			
				|  |  | +  extends Promise<AggregateTrack>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  count: () => Promise<Int>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateTrackSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<AggregateTrack>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  count: () => Promise<AsyncIterator<Int>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface Training {
 | 
	
		
			
				|  |  | +  id: ID_Output;
 | 
	
		
			
				|  |  | +  title: String;
 | 
	
		
			
				|  |  | +  createdAt: DateTimeOutput;
 | 
	
		
			
				|  |  | +  trainingDate?: DateTimeOutput;
 | 
	
		
			
				|  |  | +  location?: String;
 | 
	
		
			
				|  |  | +  attendance?: Int;
 | 
	
		
			
				|  |  | +  published: Boolean;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingPromise extends Promise<Training>, Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  title: () => Promise<String>;
 | 
	
		
			
				|  |  | +  type: <T = TrainingTypePromise>() => T;
 | 
	
		
			
				|  |  | +  createdAt: () => Promise<DateTimeOutput>;
 | 
	
		
			
				|  |  | +  trainingDate: () => Promise<DateTimeOutput>;
 | 
	
		
			
				|  |  | +  location: () => Promise<String>;
 | 
	
		
			
				|  |  | +  registrations: <T = FragmentableArray<User>>(args?: {
 | 
	
		
			
				|  |  | +    where?: UserWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: UserOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => T;
 | 
	
		
			
				|  |  | +  attendance: () => Promise<Int>;
 | 
	
		
			
				|  |  | +  ratings: <T = FragmentableArray<Rating>>(args?: {
 | 
	
		
			
				|  |  | +    where?: RatingWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: RatingOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => T;
 | 
	
		
			
				|  |  | +  published: () => Promise<Boolean>;
 | 
	
		
			
				|  |  | +  blocks: <T = FragmentableArray<Block>>(args?: {
 | 
	
		
			
				|  |  | +    where?: BlockWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: BlockOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<Training>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<AsyncIterator<ID_Output>>;
 | 
	
		
			
				|  |  | +  title: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  type: <T = TrainingTypeSubscription>() => T;
 | 
	
		
			
				|  |  | +  createdAt: () => Promise<AsyncIterator<DateTimeOutput>>;
 | 
	
		
			
				|  |  | +  trainingDate: () => Promise<AsyncIterator<DateTimeOutput>>;
 | 
	
		
			
				|  |  | +  location: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  registrations: <T = Promise<AsyncIterator<UserSubscription>>>(args?: {
 | 
	
		
			
				|  |  | +    where?: UserWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: UserOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => T;
 | 
	
		
			
				|  |  | +  attendance: () => Promise<AsyncIterator<Int>>;
 | 
	
		
			
				|  |  | +  ratings: <T = Promise<AsyncIterator<RatingSubscription>>>(args?: {
 | 
	
		
			
				|  |  | +    where?: RatingWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: RatingOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => T;
 | 
	
		
			
				|  |  | +  published: () => Promise<AsyncIterator<Boolean>>;
 | 
	
		
			
				|  |  | +  blocks: <T = Promise<AsyncIterator<BlockSubscription>>>(args?: {
 | 
	
		
			
				|  |  | +    where?: BlockWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: BlockOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingNullablePromise
 | 
	
		
			
				|  |  | +  extends Promise<Training | null>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  title: () => Promise<String>;
 | 
	
		
			
				|  |  | +  type: <T = TrainingTypePromise>() => T;
 | 
	
		
			
				|  |  | +  createdAt: () => Promise<DateTimeOutput>;
 | 
	
		
			
				|  |  | +  trainingDate: () => Promise<DateTimeOutput>;
 | 
	
		
			
				|  |  | +  location: () => Promise<String>;
 | 
	
		
			
				|  |  | +  registrations: <T = FragmentableArray<User>>(args?: {
 | 
	
		
			
				|  |  | +    where?: UserWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: UserOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => T;
 | 
	
		
			
				|  |  | +  attendance: () => Promise<Int>;
 | 
	
		
			
				|  |  | +  ratings: <T = FragmentableArray<Rating>>(args?: {
 | 
	
		
			
				|  |  | +    where?: RatingWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: RatingOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => T;
 | 
	
		
			
				|  |  | +  published: () => Promise<Boolean>;
 | 
	
		
			
				|  |  | +  blocks: <T = FragmentableArray<Block>>(args?: {
 | 
	
		
			
				|  |  | +    where?: BlockWhereInput;
 | 
	
		
			
				|  |  | +    orderBy?: BlockOrderByInput;
 | 
	
		
			
				|  |  | +    skip?: Int;
 | 
	
		
			
				|  |  | +    after?: String;
 | 
	
		
			
				|  |  | +    before?: String;
 | 
	
		
			
				|  |  | +    first?: Int;
 | 
	
		
			
				|  |  | +    last?: Int;
 | 
	
		
			
				|  |  | +  }) => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingType {
 | 
	
		
			
				|  |  | +  id: ID_Output;
 | 
	
		
			
				|  |  | +  name: String;
 | 
	
		
			
				|  |  | +  description: String;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingTypePromise
 | 
	
		
			
				|  |  | +  extends Promise<TrainingType>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  name: () => Promise<String>;
 | 
	
		
			
				|  |  | +  description: () => Promise<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingTypeSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<TrainingType>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<AsyncIterator<ID_Output>>;
 | 
	
		
			
				|  |  | +  name: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  description: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingTypeNullablePromise
 | 
	
		
			
				|  |  | +  extends Promise<TrainingType | null>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  name: () => Promise<String>;
 | 
	
		
			
				|  |  | +  description: () => Promise<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingConnection {
 | 
	
		
			
				|  |  | +  pageInfo: PageInfo;
 | 
	
		
			
				|  |  | +  edges: TrainingEdge[];
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingConnectionPromise
 | 
	
		
			
				|  |  | +  extends Promise<TrainingConnection>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  pageInfo: <T = PageInfoPromise>() => T;
 | 
	
		
			
				|  |  | +  edges: <T = FragmentableArray<TrainingEdge>>() => T;
 | 
	
		
			
				|  |  | +  aggregate: <T = AggregateTrainingPromise>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingConnectionSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<TrainingConnection>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  pageInfo: <T = PageInfoSubscription>() => T;
 | 
	
		
			
				|  |  | +  edges: <T = Promise<AsyncIterator<TrainingEdgeSubscription>>>() => T;
 | 
	
		
			
				|  |  | +  aggregate: <T = AggregateTrainingSubscription>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingEdge {
 | 
	
		
			
				|  |  | +  node: Training;
 | 
	
		
			
				|  |  | +  cursor: String;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingEdgePromise
 | 
	
		
			
				|  |  | +  extends Promise<TrainingEdge>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  node: <T = TrainingPromise>() => T;
 | 
	
		
			
				|  |  | +  cursor: () => Promise<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingEdgeSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<TrainingEdge>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  node: <T = TrainingSubscription>() => T;
 | 
	
		
			
				|  |  | +  cursor: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateTraining {
 | 
	
		
			
				|  |  | +  count: Int;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateTrainingPromise
 | 
	
		
			
				|  |  | +  extends Promise<AggregateTraining>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  count: () => Promise<Int>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateTrainingSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<AggregateTraining>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  count: () => Promise<AsyncIterator<Int>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingTypeConnection {
 | 
	
		
			
				|  |  | +  pageInfo: PageInfo;
 | 
	
		
			
				|  |  | +  edges: TrainingTypeEdge[];
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingTypeConnectionPromise
 | 
	
		
			
				|  |  | +  extends Promise<TrainingTypeConnection>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  pageInfo: <T = PageInfoPromise>() => T;
 | 
	
		
			
				|  |  | +  edges: <T = FragmentableArray<TrainingTypeEdge>>() => T;
 | 
	
		
			
				|  |  | +  aggregate: <T = AggregateTrainingTypePromise>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingTypeConnectionSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<TrainingTypeConnection>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  pageInfo: <T = PageInfoSubscription>() => T;
 | 
	
		
			
				|  |  | +  edges: <T = Promise<AsyncIterator<TrainingTypeEdgeSubscription>>>() => T;
 | 
	
		
			
				|  |  | +  aggregate: <T = AggregateTrainingTypeSubscription>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingTypeEdge {
 | 
	
		
			
				|  |  | +  node: TrainingType;
 | 
	
		
			
				|  |  | +  cursor: String;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingTypeEdgePromise
 | 
	
		
			
				|  |  | +  extends Promise<TrainingTypeEdge>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  node: <T = TrainingTypePromise>() => T;
 | 
	
		
			
				|  |  | +  cursor: () => Promise<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingTypeEdgeSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<TrainingTypeEdge>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  node: <T = TrainingTypeSubscription>() => T;
 | 
	
		
			
				|  |  | +  cursor: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateTrainingType {
 | 
	
		
			
				|  |  | +  count: Int;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateTrainingTypePromise
 | 
	
		
			
				|  |  | +  extends Promise<AggregateTrainingType>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  count: () => Promise<Int>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateTrainingTypeSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<AggregateTrainingType>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  count: () => Promise<AsyncIterator<Int>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserConnection {
 | 
	
		
			
				|  |  | +  pageInfo: PageInfo;
 | 
	
		
			
				|  |  | +  edges: UserEdge[];
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserConnectionPromise
 | 
	
		
			
				|  |  | +  extends Promise<UserConnection>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  pageInfo: <T = PageInfoPromise>() => T;
 | 
	
		
			
				|  |  | +  edges: <T = FragmentableArray<UserEdge>>() => T;
 | 
	
		
			
				|  |  | +  aggregate: <T = AggregateUserPromise>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserConnectionSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<UserConnection>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  pageInfo: <T = PageInfoSubscription>() => T;
 | 
	
		
			
				|  |  | +  edges: <T = Promise<AsyncIterator<UserEdgeSubscription>>>() => T;
 | 
	
		
			
				|  |  | +  aggregate: <T = AggregateUserSubscription>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserEdge {
 | 
	
		
			
				|  |  | +  node: User;
 | 
	
		
			
				|  |  | +  cursor: String;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserEdgePromise extends Promise<UserEdge>, Fragmentable {
 | 
	
		
			
				|  |  | +  node: <T = UserPromise>() => T;
 | 
	
		
			
				|  |  | +  cursor: () => Promise<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserEdgeSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<UserEdge>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  node: <T = UserSubscription>() => T;
 | 
	
		
			
				|  |  | +  cursor: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateUser {
 | 
	
		
			
				|  |  | +  count: Int;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateUserPromise
 | 
	
		
			
				|  |  | +  extends Promise<AggregateUser>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  count: () => Promise<Int>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface AggregateUserSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<AggregateUser>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  count: () => Promise<AsyncIterator<Int>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BatchPayload {
 | 
	
		
			
				|  |  | +  count: Long;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BatchPayloadPromise
 | 
	
		
			
				|  |  | +  extends Promise<BatchPayload>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  count: () => Promise<Long>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BatchPayloadSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<BatchPayload>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  count: () => Promise<AsyncIterator<Long>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockSubscriptionPayload {
 | 
	
		
			
				|  |  | +  mutation: MutationType;
 | 
	
		
			
				|  |  | +  node: Block;
 | 
	
		
			
				|  |  | +  updatedFields: String[];
 | 
	
		
			
				|  |  | +  previousValues: BlockPreviousValues;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockSubscriptionPayloadPromise
 | 
	
		
			
				|  |  | +  extends Promise<BlockSubscriptionPayload>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  mutation: () => Promise<MutationType>;
 | 
	
		
			
				|  |  | +  node: <T = BlockPromise>() => T;
 | 
	
		
			
				|  |  | +  updatedFields: () => Promise<String[]>;
 | 
	
		
			
				|  |  | +  previousValues: <T = BlockPreviousValuesPromise>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockSubscriptionPayloadSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<BlockSubscriptionPayload>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  mutation: () => Promise<AsyncIterator<MutationType>>;
 | 
	
		
			
				|  |  | +  node: <T = BlockSubscription>() => T;
 | 
	
		
			
				|  |  | +  updatedFields: () => Promise<AsyncIterator<String[]>>;
 | 
	
		
			
				|  |  | +  previousValues: <T = BlockPreviousValuesSubscription>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockPreviousValues {
 | 
	
		
			
				|  |  | +  id: ID_Output;
 | 
	
		
			
				|  |  | +  sequence: Int;
 | 
	
		
			
				|  |  | +  title: String;
 | 
	
		
			
				|  |  | +  description?: String;
 | 
	
		
			
				|  |  | +  videos: String[];
 | 
	
		
			
				|  |  | +  pictures: String[];
 | 
	
		
			
				|  |  | +  duration?: Int;
 | 
	
		
			
				|  |  | +  rounds?: Int;
 | 
	
		
			
				|  |  | +  rest?: Int;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockPreviousValuesPromise
 | 
	
		
			
				|  |  | +  extends Promise<BlockPreviousValues>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  sequence: () => Promise<Int>;
 | 
	
		
			
				|  |  | +  title: () => Promise<String>;
 | 
	
		
			
				|  |  | +  description: () => Promise<String>;
 | 
	
		
			
				|  |  | +  videos: () => Promise<String[]>;
 | 
	
		
			
				|  |  | +  pictures: () => Promise<String[]>;
 | 
	
		
			
				|  |  | +  duration: () => Promise<Int>;
 | 
	
		
			
				|  |  | +  rounds: () => Promise<Int>;
 | 
	
		
			
				|  |  | +  rest: () => Promise<Int>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface BlockPreviousValuesSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<BlockPreviousValues>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<AsyncIterator<ID_Output>>;
 | 
	
		
			
				|  |  | +  sequence: () => Promise<AsyncIterator<Int>>;
 | 
	
		
			
				|  |  | +  title: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  description: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  videos: () => Promise<AsyncIterator<String[]>>;
 | 
	
		
			
				|  |  | +  pictures: () => Promise<AsyncIterator<String[]>>;
 | 
	
		
			
				|  |  | +  duration: () => Promise<AsyncIterator<Int>>;
 | 
	
		
			
				|  |  | +  rounds: () => Promise<AsyncIterator<Int>>;
 | 
	
		
			
				|  |  | +  rest: () => Promise<AsyncIterator<Int>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentSubscriptionPayload {
 | 
	
		
			
				|  |  | +  mutation: MutationType;
 | 
	
		
			
				|  |  | +  node: Comment;
 | 
	
		
			
				|  |  | +  updatedFields: String[];
 | 
	
		
			
				|  |  | +  previousValues: CommentPreviousValues;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentSubscriptionPayloadPromise
 | 
	
		
			
				|  |  | +  extends Promise<CommentSubscriptionPayload>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  mutation: () => Promise<MutationType>;
 | 
	
		
			
				|  |  | +  node: <T = CommentPromise>() => T;
 | 
	
		
			
				|  |  | +  updatedFields: () => Promise<String[]>;
 | 
	
		
			
				|  |  | +  previousValues: <T = CommentPreviousValuesPromise>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentSubscriptionPayloadSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<CommentSubscriptionPayload>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  mutation: () => Promise<AsyncIterator<MutationType>>;
 | 
	
		
			
				|  |  | +  node: <T = CommentSubscription>() => T;
 | 
	
		
			
				|  |  | +  updatedFields: () => Promise<AsyncIterator<String[]>>;
 | 
	
		
			
				|  |  | +  previousValues: <T = CommentPreviousValuesSubscription>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentPreviousValues {
 | 
	
		
			
				|  |  | +  id: ID_Output;
 | 
	
		
			
				|  |  | +  text: String;
 | 
	
		
			
				|  |  | +  createdAt: DateTimeOutput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentPreviousValuesPromise
 | 
	
		
			
				|  |  | +  extends Promise<CommentPreviousValues>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  text: () => Promise<String>;
 | 
	
		
			
				|  |  | +  createdAt: () => Promise<DateTimeOutput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface CommentPreviousValuesSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<CommentPreviousValues>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<AsyncIterator<ID_Output>>;
 | 
	
		
			
				|  |  | +  text: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  createdAt: () => Promise<AsyncIterator<DateTimeOutput>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseSubscriptionPayload {
 | 
	
		
			
				|  |  | +  mutation: MutationType;
 | 
	
		
			
				|  |  | +  node: Exercise;
 | 
	
		
			
				|  |  | +  updatedFields: String[];
 | 
	
		
			
				|  |  | +  previousValues: ExercisePreviousValues;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseSubscriptionPayloadPromise
 | 
	
		
			
				|  |  | +  extends Promise<ExerciseSubscriptionPayload>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  mutation: () => Promise<MutationType>;
 | 
	
		
			
				|  |  | +  node: <T = ExercisePromise>() => T;
 | 
	
		
			
				|  |  | +  updatedFields: () => Promise<String[]>;
 | 
	
		
			
				|  |  | +  previousValues: <T = ExercisePreviousValuesPromise>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseSubscriptionPayloadSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<ExerciseSubscriptionPayload>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  mutation: () => Promise<AsyncIterator<MutationType>>;
 | 
	
		
			
				|  |  | +  node: <T = ExerciseSubscription>() => T;
 | 
	
		
			
				|  |  | +  updatedFields: () => Promise<AsyncIterator<String[]>>;
 | 
	
		
			
				|  |  | +  previousValues: <T = ExercisePreviousValuesSubscription>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExercisePreviousValues {
 | 
	
		
			
				|  |  | +  id: ID_Output;
 | 
	
		
			
				|  |  | +  name: String;
 | 
	
		
			
				|  |  | +  description: String;
 | 
	
		
			
				|  |  | +  video: String;
 | 
	
		
			
				|  |  | +  targets: String[];
 | 
	
		
			
				|  |  | +  baseExercise: String[];
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExercisePreviousValuesPromise
 | 
	
		
			
				|  |  | +  extends Promise<ExercisePreviousValues>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  name: () => Promise<String>;
 | 
	
		
			
				|  |  | +  description: () => Promise<String>;
 | 
	
		
			
				|  |  | +  video: () => Promise<String>;
 | 
	
		
			
				|  |  | +  targets: () => Promise<String[]>;
 | 
	
		
			
				|  |  | +  baseExercise: () => Promise<String[]>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExercisePreviousValuesSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<ExercisePreviousValues>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<AsyncIterator<ID_Output>>;
 | 
	
		
			
				|  |  | +  name: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  description: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  video: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  targets: () => Promise<AsyncIterator<String[]>>;
 | 
	
		
			
				|  |  | +  baseExercise: () => Promise<AsyncIterator<String[]>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstanceSubscriptionPayload {
 | 
	
		
			
				|  |  | +  mutation: MutationType;
 | 
	
		
			
				|  |  | +  node: ExerciseInstance;
 | 
	
		
			
				|  |  | +  updatedFields: String[];
 | 
	
		
			
				|  |  | +  previousValues: ExerciseInstancePreviousValues;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstanceSubscriptionPayloadPromise
 | 
	
		
			
				|  |  | +  extends Promise<ExerciseInstanceSubscriptionPayload>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  mutation: () => Promise<MutationType>;
 | 
	
		
			
				|  |  | +  node: <T = ExerciseInstancePromise>() => T;
 | 
	
		
			
				|  |  | +  updatedFields: () => Promise<String[]>;
 | 
	
		
			
				|  |  | +  previousValues: <T = ExerciseInstancePreviousValuesPromise>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstanceSubscriptionPayloadSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<ExerciseInstanceSubscriptionPayload>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  mutation: () => Promise<AsyncIterator<MutationType>>;
 | 
	
		
			
				|  |  | +  node: <T = ExerciseInstanceSubscription>() => T;
 | 
	
		
			
				|  |  | +  updatedFields: () => Promise<AsyncIterator<String[]>>;
 | 
	
		
			
				|  |  | +  previousValues: <T = ExerciseInstancePreviousValuesSubscription>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstancePreviousValues {
 | 
	
		
			
				|  |  | +  id: ID_Output;
 | 
	
		
			
				|  |  | +  repetitions?: Int;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstancePreviousValuesPromise
 | 
	
		
			
				|  |  | +  extends Promise<ExerciseInstancePreviousValues>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  repetitions: () => Promise<Int>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface ExerciseInstancePreviousValuesSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<ExerciseInstancePreviousValues>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<AsyncIterator<ID_Output>>;
 | 
	
		
			
				|  |  | +  repetitions: () => Promise<AsyncIterator<Int>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface FormatSubscriptionPayload {
 | 
	
		
			
				|  |  | +  mutation: MutationType;
 | 
	
		
			
				|  |  | +  node: Format;
 | 
	
		
			
				|  |  | +  updatedFields: String[];
 | 
	
		
			
				|  |  | +  previousValues: FormatPreviousValues;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface FormatSubscriptionPayloadPromise
 | 
	
		
			
				|  |  | +  extends Promise<FormatSubscriptionPayload>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  mutation: () => Promise<MutationType>;
 | 
	
		
			
				|  |  | +  node: <T = FormatPromise>() => T;
 | 
	
		
			
				|  |  | +  updatedFields: () => Promise<String[]>;
 | 
	
		
			
				|  |  | +  previousValues: <T = FormatPreviousValuesPromise>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface FormatSubscriptionPayloadSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<FormatSubscriptionPayload>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  mutation: () => Promise<AsyncIterator<MutationType>>;
 | 
	
		
			
				|  |  | +  node: <T = FormatSubscription>() => T;
 | 
	
		
			
				|  |  | +  updatedFields: () => Promise<AsyncIterator<String[]>>;
 | 
	
		
			
				|  |  | +  previousValues: <T = FormatPreviousValuesSubscription>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface FormatPreviousValues {
 | 
	
		
			
				|  |  | +  id: ID_Output;
 | 
	
		
			
				|  |  | +  name: String;
 | 
	
		
			
				|  |  | +  description: String;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface FormatPreviousValuesPromise
 | 
	
		
			
				|  |  | +  extends Promise<FormatPreviousValues>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  name: () => Promise<String>;
 | 
	
		
			
				|  |  | +  description: () => Promise<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface FormatPreviousValuesSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<FormatPreviousValues>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<AsyncIterator<ID_Output>>;
 | 
	
		
			
				|  |  | +  name: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  description: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingSubscriptionPayload {
 | 
	
		
			
				|  |  | +  mutation: MutationType;
 | 
	
		
			
				|  |  | +  node: Rating;
 | 
	
		
			
				|  |  | +  updatedFields: String[];
 | 
	
		
			
				|  |  | +  previousValues: RatingPreviousValues;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingSubscriptionPayloadPromise
 | 
	
		
			
				|  |  | +  extends Promise<RatingSubscriptionPayload>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  mutation: () => Promise<MutationType>;
 | 
	
		
			
				|  |  | +  node: <T = RatingPromise>() => T;
 | 
	
		
			
				|  |  | +  updatedFields: () => Promise<String[]>;
 | 
	
		
			
				|  |  | +  previousValues: <T = RatingPreviousValuesPromise>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingSubscriptionPayloadSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<RatingSubscriptionPayload>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  mutation: () => Promise<AsyncIterator<MutationType>>;
 | 
	
		
			
				|  |  | +  node: <T = RatingSubscription>() => T;
 | 
	
		
			
				|  |  | +  updatedFields: () => Promise<AsyncIterator<String[]>>;
 | 
	
		
			
				|  |  | +  previousValues: <T = RatingPreviousValuesSubscription>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingPreviousValues {
 | 
	
		
			
				|  |  | +  id: ID_Output;
 | 
	
		
			
				|  |  | +  value: Int;
 | 
	
		
			
				|  |  | +  comment: String;
 | 
	
		
			
				|  |  | +  createdAt: DateTimeOutput;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingPreviousValuesPromise
 | 
	
		
			
				|  |  | +  extends Promise<RatingPreviousValues>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  value: () => Promise<Int>;
 | 
	
		
			
				|  |  | +  comment: () => Promise<String>;
 | 
	
		
			
				|  |  | +  createdAt: () => Promise<DateTimeOutput>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface RatingPreviousValuesSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<RatingPreviousValues>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<AsyncIterator<ID_Output>>;
 | 
	
		
			
				|  |  | +  value: () => Promise<AsyncIterator<Int>>;
 | 
	
		
			
				|  |  | +  comment: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  createdAt: () => Promise<AsyncIterator<DateTimeOutput>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrackSubscriptionPayload {
 | 
	
		
			
				|  |  | +  mutation: MutationType;
 | 
	
		
			
				|  |  | +  node: Track;
 | 
	
		
			
				|  |  | +  updatedFields: String[];
 | 
	
		
			
				|  |  | +  previousValues: TrackPreviousValues;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrackSubscriptionPayloadPromise
 | 
	
		
			
				|  |  | +  extends Promise<TrackSubscriptionPayload>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  mutation: () => Promise<MutationType>;
 | 
	
		
			
				|  |  | +  node: <T = TrackPromise>() => T;
 | 
	
		
			
				|  |  | +  updatedFields: () => Promise<String[]>;
 | 
	
		
			
				|  |  | +  previousValues: <T = TrackPreviousValuesPromise>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrackSubscriptionPayloadSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<TrackSubscriptionPayload>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  mutation: () => Promise<AsyncIterator<MutationType>>;
 | 
	
		
			
				|  |  | +  node: <T = TrackSubscription>() => T;
 | 
	
		
			
				|  |  | +  updatedFields: () => Promise<AsyncIterator<String[]>>;
 | 
	
		
			
				|  |  | +  previousValues: <T = TrackPreviousValuesSubscription>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrackPreviousValues {
 | 
	
		
			
				|  |  | +  id: ID_Output;
 | 
	
		
			
				|  |  | +  title: String;
 | 
	
		
			
				|  |  | +  artist: String;
 | 
	
		
			
				|  |  | +  duration: Int;
 | 
	
		
			
				|  |  | +  link: String;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrackPreviousValuesPromise
 | 
	
		
			
				|  |  | +  extends Promise<TrackPreviousValues>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  title: () => Promise<String>;
 | 
	
		
			
				|  |  | +  artist: () => Promise<String>;
 | 
	
		
			
				|  |  | +  duration: () => Promise<Int>;
 | 
	
		
			
				|  |  | +  link: () => Promise<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrackPreviousValuesSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<TrackPreviousValues>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<AsyncIterator<ID_Output>>;
 | 
	
		
			
				|  |  | +  title: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  artist: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  duration: () => Promise<AsyncIterator<Int>>;
 | 
	
		
			
				|  |  | +  link: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingSubscriptionPayload {
 | 
	
		
			
				|  |  | +  mutation: MutationType;
 | 
	
		
			
				|  |  | +  node: Training;
 | 
	
		
			
				|  |  | +  updatedFields: String[];
 | 
	
		
			
				|  |  | +  previousValues: TrainingPreviousValues;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingSubscriptionPayloadPromise
 | 
	
		
			
				|  |  | +  extends Promise<TrainingSubscriptionPayload>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  mutation: () => Promise<MutationType>;
 | 
	
		
			
				|  |  | +  node: <T = TrainingPromise>() => T;
 | 
	
		
			
				|  |  | +  updatedFields: () => Promise<String[]>;
 | 
	
		
			
				|  |  | +  previousValues: <T = TrainingPreviousValuesPromise>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingSubscriptionPayloadSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<TrainingSubscriptionPayload>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  mutation: () => Promise<AsyncIterator<MutationType>>;
 | 
	
		
			
				|  |  | +  node: <T = TrainingSubscription>() => T;
 | 
	
		
			
				|  |  | +  updatedFields: () => Promise<AsyncIterator<String[]>>;
 | 
	
		
			
				|  |  | +  previousValues: <T = TrainingPreviousValuesSubscription>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingPreviousValues {
 | 
	
		
			
				|  |  | +  id: ID_Output;
 | 
	
		
			
				|  |  | +  title: String;
 | 
	
		
			
				|  |  | +  createdAt: DateTimeOutput;
 | 
	
		
			
				|  |  | +  trainingDate?: DateTimeOutput;
 | 
	
		
			
				|  |  | +  location?: String;
 | 
	
		
			
				|  |  | +  attendance?: Int;
 | 
	
		
			
				|  |  | +  published: Boolean;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingPreviousValuesPromise
 | 
	
		
			
				|  |  | +  extends Promise<TrainingPreviousValues>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  title: () => Promise<String>;
 | 
	
		
			
				|  |  | +  createdAt: () => Promise<DateTimeOutput>;
 | 
	
		
			
				|  |  | +  trainingDate: () => Promise<DateTimeOutput>;
 | 
	
		
			
				|  |  | +  location: () => Promise<String>;
 | 
	
		
			
				|  |  | +  attendance: () => Promise<Int>;
 | 
	
		
			
				|  |  | +  published: () => Promise<Boolean>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingPreviousValuesSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<TrainingPreviousValues>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<AsyncIterator<ID_Output>>;
 | 
	
		
			
				|  |  | +  title: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  createdAt: () => Promise<AsyncIterator<DateTimeOutput>>;
 | 
	
		
			
				|  |  | +  trainingDate: () => Promise<AsyncIterator<DateTimeOutput>>;
 | 
	
		
			
				|  |  | +  location: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  attendance: () => Promise<AsyncIterator<Int>>;
 | 
	
		
			
				|  |  | +  published: () => Promise<AsyncIterator<Boolean>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingTypeSubscriptionPayload {
 | 
	
		
			
				|  |  | +  mutation: MutationType;
 | 
	
		
			
				|  |  | +  node: TrainingType;
 | 
	
		
			
				|  |  | +  updatedFields: String[];
 | 
	
		
			
				|  |  | +  previousValues: TrainingTypePreviousValues;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingTypeSubscriptionPayloadPromise
 | 
	
		
			
				|  |  | +  extends Promise<TrainingTypeSubscriptionPayload>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  mutation: () => Promise<MutationType>;
 | 
	
		
			
				|  |  | +  node: <T = TrainingTypePromise>() => T;
 | 
	
		
			
				|  |  | +  updatedFields: () => Promise<String[]>;
 | 
	
		
			
				|  |  | +  previousValues: <T = TrainingTypePreviousValuesPromise>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingTypeSubscriptionPayloadSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<TrainingTypeSubscriptionPayload>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  mutation: () => Promise<AsyncIterator<MutationType>>;
 | 
	
		
			
				|  |  | +  node: <T = TrainingTypeSubscription>() => T;
 | 
	
		
			
				|  |  | +  updatedFields: () => Promise<AsyncIterator<String[]>>;
 | 
	
		
			
				|  |  | +  previousValues: <T = TrainingTypePreviousValuesSubscription>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingTypePreviousValues {
 | 
	
		
			
				|  |  | +  id: ID_Output;
 | 
	
		
			
				|  |  | +  name: String;
 | 
	
		
			
				|  |  | +  description: String;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingTypePreviousValuesPromise
 | 
	
		
			
				|  |  | +  extends Promise<TrainingTypePreviousValues>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  name: () => Promise<String>;
 | 
	
		
			
				|  |  | +  description: () => Promise<String>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface TrainingTypePreviousValuesSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<TrainingTypePreviousValues>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<AsyncIterator<ID_Output>>;
 | 
	
		
			
				|  |  | +  name: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  description: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserSubscriptionPayload {
 | 
	
		
			
				|  |  | +  mutation: MutationType;
 | 
	
		
			
				|  |  | +  node: User;
 | 
	
		
			
				|  |  | +  updatedFields: String[];
 | 
	
		
			
				|  |  | +  previousValues: UserPreviousValues;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserSubscriptionPayloadPromise
 | 
	
		
			
				|  |  | +  extends Promise<UserSubscriptionPayload>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  mutation: () => Promise<MutationType>;
 | 
	
		
			
				|  |  | +  node: <T = UserPromise>() => T;
 | 
	
		
			
				|  |  | +  updatedFields: () => Promise<String[]>;
 | 
	
		
			
				|  |  | +  previousValues: <T = UserPreviousValuesPromise>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserSubscriptionPayloadSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<UserSubscriptionPayload>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  mutation: () => Promise<AsyncIterator<MutationType>>;
 | 
	
		
			
				|  |  | +  node: <T = UserSubscription>() => T;
 | 
	
		
			
				|  |  | +  updatedFields: () => Promise<AsyncIterator<String[]>>;
 | 
	
		
			
				|  |  | +  previousValues: <T = UserPreviousValuesSubscription>() => T;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserPreviousValues {
 | 
	
		
			
				|  |  | +  id: ID_Output;
 | 
	
		
			
				|  |  | +  email: String;
 | 
	
		
			
				|  |  | +  name: String;
 | 
	
		
			
				|  |  | +  password: String;
 | 
	
		
			
				|  |  | +  resetToken?: String;
 | 
	
		
			
				|  |  | +  resetTokenExpiry?: Float;
 | 
	
		
			
				|  |  | +  createdAt: DateTimeOutput;
 | 
	
		
			
				|  |  | +  permissions: Permission[];
 | 
	
		
			
				|  |  | +  interests: String[];
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserPreviousValuesPromise
 | 
	
		
			
				|  |  | +  extends Promise<UserPreviousValues>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<ID_Output>;
 | 
	
		
			
				|  |  | +  email: () => Promise<String>;
 | 
	
		
			
				|  |  | +  name: () => Promise<String>;
 | 
	
		
			
				|  |  | +  password: () => Promise<String>;
 | 
	
		
			
				|  |  | +  resetToken: () => Promise<String>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry: () => Promise<Float>;
 | 
	
		
			
				|  |  | +  createdAt: () => Promise<DateTimeOutput>;
 | 
	
		
			
				|  |  | +  permissions: () => Promise<Permission[]>;
 | 
	
		
			
				|  |  | +  interests: () => Promise<String[]>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export interface UserPreviousValuesSubscription
 | 
	
		
			
				|  |  | +  extends Promise<AsyncIterator<UserPreviousValues>>,
 | 
	
		
			
				|  |  | +    Fragmentable {
 | 
	
		
			
				|  |  | +  id: () => Promise<AsyncIterator<ID_Output>>;
 | 
	
		
			
				|  |  | +  email: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  name: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  password: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  resetToken: () => Promise<AsyncIterator<String>>;
 | 
	
		
			
				|  |  | +  resetTokenExpiry: () => Promise<AsyncIterator<Float>>;
 | 
	
		
			
				|  |  | +  createdAt: () => Promise<AsyncIterator<DateTimeOutput>>;
 | 
	
		
			
				|  |  | +  permissions: () => Promise<AsyncIterator<Permission[]>>;
 | 
	
		
			
				|  |  | +  interests: () => Promise<AsyncIterator<String[]>>;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +/*
 | 
	
		
			
				|  |  | +The `ID` scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as `"4"`) or integer (such as `4`) input value will be accepted as an ID.
 | 
	
		
			
				|  |  | +*/
 | 
	
		
			
				|  |  | +export type ID_Input = string | number;
 | 
	
		
			
				|  |  | +export type ID_Output = string;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +/*
 | 
	
		
			
				|  |  | +The `Int` scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.
 | 
	
		
			
				|  |  | +*/
 | 
	
		
			
				|  |  | +export type Int = number;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +/*
 | 
	
		
			
				|  |  | +The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
 | 
	
		
			
				|  |  | +*/
 | 
	
		
			
				|  |  | +export type String = string;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +/*
 | 
	
		
			
				|  |  | +The `Boolean` scalar type represents `true` or `false`.
 | 
	
		
			
				|  |  | +*/
 | 
	
		
			
				|  |  | +export type Boolean = boolean;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +/*
 | 
	
		
			
				|  |  | +The `Float` scalar type represents signed double-precision fractional values as specified by [IEEE 754](https://en.wikipedia.org/wiki/IEEE_floating_point).
 | 
	
		
			
				|  |  | +*/
 | 
	
		
			
				|  |  | +export type Float = number;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +/*
 | 
	
		
			
				|  |  | +DateTime scalar input type, allowing Date
 | 
	
		
			
				|  |  | +*/
 | 
	
		
			
				|  |  | +export type DateTimeInput = Date | string;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +/*
 | 
	
		
			
				|  |  | +DateTime scalar output type, which is always a string
 | 
	
		
			
				|  |  | +*/
 | 
	
		
			
				|  |  | +export type DateTimeOutput = string;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export type Long = string;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +/**
 | 
	
		
			
				|  |  | + * Model Metadata
 | 
	
		
			
				|  |  | + */
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export const models: Model[] = [
 | 
	
		
			
				|  |  | +  {
 | 
	
		
			
				|  |  | +    name: "User",
 | 
	
		
			
				|  |  | +    embedded: false
 | 
	
		
			
				|  |  | +  },
 | 
	
		
			
				|  |  | +  {
 | 
	
		
			
				|  |  | +    name: "Permission",
 | 
	
		
			
				|  |  | +    embedded: false
 | 
	
		
			
				|  |  | +  },
 | 
	
		
			
				|  |  | +  {
 | 
	
		
			
				|  |  | +    name: "Training",
 | 
	
		
			
				|  |  | +    embedded: false
 | 
	
		
			
				|  |  | +  },
 | 
	
		
			
				|  |  | +  {
 | 
	
		
			
				|  |  | +    name: "TrainingType",
 | 
	
		
			
				|  |  | +    embedded: false
 | 
	
		
			
				|  |  | +  },
 | 
	
		
			
				|  |  | +  {
 | 
	
		
			
				|  |  | +    name: "Block",
 | 
	
		
			
				|  |  | +    embedded: false
 | 
	
		
			
				|  |  | +  },
 | 
	
		
			
				|  |  | +  {
 | 
	
		
			
				|  |  | +    name: "Format",
 | 
	
		
			
				|  |  | +    embedded: false
 | 
	
		
			
				|  |  | +  },
 | 
	
		
			
				|  |  | +  {
 | 
	
		
			
				|  |  | +    name: "Track",
 | 
	
		
			
				|  |  | +    embedded: false
 | 
	
		
			
				|  |  | +  },
 | 
	
		
			
				|  |  | +  {
 | 
	
		
			
				|  |  | +    name: "ExerciseInstance",
 | 
	
		
			
				|  |  | +    embedded: false
 | 
	
		
			
				|  |  | +  },
 | 
	
		
			
				|  |  | +  {
 | 
	
		
			
				|  |  | +    name: "Exercise",
 | 
	
		
			
				|  |  | +    embedded: false
 | 
	
		
			
				|  |  | +  },
 | 
	
		
			
				|  |  | +  {
 | 
	
		
			
				|  |  | +    name: "Rating",
 | 
	
		
			
				|  |  | +    embedded: false
 | 
	
		
			
				|  |  | +  },
 | 
	
		
			
				|  |  | +  {
 | 
	
		
			
				|  |  | +    name: "Comment",
 | 
	
		
			
				|  |  | +    embedded: false
 | 
	
		
			
				|  |  | +  }
 | 
	
		
			
				|  |  | +];
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +/**
 | 
	
		
			
				|  |  | + * Type Defs
 | 
	
		
			
				|  |  | + */
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export const Prisma = makePrismaClientClass<ClientConstructor<Prisma>>({
 | 
	
		
			
				|  |  | +  typeDefs,
 | 
	
		
			
				|  |  | +  models,
 | 
	
		
			
				|  |  | +  endpoint: `http://prisma:4466`,
 | 
	
		
			
				|  |  | +  secret: `PrismaSecret`
 | 
	
		
			
				|  |  | +});
 | 
	
		
			
				|  |  | +export const prisma = new Prisma();
 |