| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414 | // 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 {  baseExercise: (where?: BaseExerciseWhereInput) => Promise<boolean>;  block: (where?: BlockWhereInput) => Promise<boolean>;  comment: (where?: CommentWhereInput) => Promise<boolean>;  exercise: (where?: ExerciseWhereInput) => 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   */  baseExercise: (    where: BaseExerciseWhereUniqueInput  ) => BaseExerciseNullablePromise;  baseExercises: (args?: {    where?: BaseExerciseWhereInput;    orderBy?: BaseExerciseOrderByInput;    skip?: Int;    after?: String;    before?: String;    first?: Int;    last?: Int;  }) => FragmentableArray<BaseExercise>;  baseExercisesConnection: (args?: {    where?: BaseExerciseWhereInput;    orderBy?: BaseExerciseOrderByInput;    skip?: Int;    after?: String;    before?: String;    first?: Int;    last?: Int;  }) => BaseExerciseConnectionPromise;  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;  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   */  createBaseExercise: (data: BaseExerciseCreateInput) => BaseExercisePromise;  updateBaseExercise: (args: {    data: BaseExerciseUpdateInput;    where: BaseExerciseWhereUniqueInput;  }) => BaseExercisePromise;  updateManyBaseExercises: (args: {    data: BaseExerciseUpdateManyMutationInput;    where?: BaseExerciseWhereInput;  }) => BatchPayloadPromise;  upsertBaseExercise: (args: {    where: BaseExerciseWhereUniqueInput;    create: BaseExerciseCreateInput;    update: BaseExerciseUpdateInput;  }) => BaseExercisePromise;  deleteBaseExercise: (    where: BaseExerciseWhereUniqueInput  ) => BaseExercisePromise;  deleteManyBaseExercises: (    where?: BaseExerciseWhereInput  ) => BatchPayloadPromise;  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;  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 {  baseExercise: (    where?: BaseExerciseSubscriptionWhereInput  ) => BaseExerciseSubscriptionPayloadSubscription;  block: (    where?: BlockSubscriptionWhereInput  ) => BlockSubscriptionPayloadSubscription;  comment: (    where?: CommentSubscriptionWhereInput  ) => CommentSubscriptionPayloadSubscription;  exercise: (    where?: ExerciseSubscriptionWhereInput  ) => ExerciseSubscriptionPayloadSubscription;  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 ExerciseOrderByInput =  | "id_ASC"  | "id_DESC"  | "name_ASC"  | "name_DESC"  | "description_ASC"  | "description_DESC"  | "video_ASC"  | "video_DESC";export type BaseExerciseOrderByInput =  | "id_ASC"  | "id_DESC"  | "name_ASC"  | "name_DESC";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"  | "duration_ASC"  | "duration_DESC"  | "variation_ASC"  | "variation_DESC"  | "description_ASC"  | "description_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 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 BaseExerciseWhereUniqueInput = AtLeastOne<{  id: Maybe<ID_Input>;}>;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>;  baseExercise?: Maybe<BaseExerciseWhereInput>;  AND?: Maybe<ExerciseWhereInput[] | ExerciseWhereInput>;  OR?: Maybe<ExerciseWhereInput[] | ExerciseWhereInput>;  NOT?: Maybe<ExerciseWhereInput[] | ExerciseWhereInput>;}export interface BaseExerciseWhereInput {  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>;  variations_every?: Maybe<ExerciseWhereInput>;  variations_some?: Maybe<ExerciseWhereInput>;  variations_none?: Maybe<ExerciseWhereInput>;  AND?: Maybe<BaseExerciseWhereInput[] | BaseExerciseWhereInput>;  OR?: Maybe<BaseExerciseWhereInput[] | BaseExerciseWhereInput>;  NOT?: Maybe<BaseExerciseWhereInput[] | BaseExerciseWhereInput>;}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>;  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>;  variation?: Maybe<String>;  variation_not?: Maybe<String>;  variation_in?: Maybe<String[] | String>;  variation_not_in?: Maybe<String[] | String>;  variation_lt?: Maybe<String>;  variation_lte?: Maybe<String>;  variation_gt?: Maybe<String>;  variation_gte?: Maybe<String>;  variation_contains?: Maybe<String>;  variation_not_contains?: Maybe<String>;  variation_starts_with?: Maybe<String>;  variation_not_starts_with?: Maybe<String>;  variation_ends_with?: Maybe<String>;  variation_not_ends_with?: Maybe<String>;  format?: Maybe<FormatWhereInput>;  tracks_every?: Maybe<TrackWhereInput>;  tracks_some?: Maybe<TrackWhereInput>;  tracks_none?: Maybe<TrackWhereInput>;  exercises_every?: Maybe<ExerciseWhereInput>;  exercises_some?: Maybe<ExerciseWhereInput>;  exercises_none?: Maybe<ExerciseWhereInput>;  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<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 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 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>;  content_every?: Maybe<BlockWhereInput>;  content_some?: Maybe<BlockWhereInput>;  content_none?: Maybe<BlockWhereInput>;  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>;  registration_every?: Maybe<UserWhereInput>;  registration_some?: Maybe<UserWhereInput>;  registration_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>;  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 BaseExerciseCreateInput {  id?: Maybe<ID_Input>;  name: String;  variations?: Maybe<ExerciseCreateManyWithoutBaseExerciseInput>;}export interface ExerciseCreateManyWithoutBaseExerciseInput {  create?: Maybe<    | ExerciseCreateWithoutBaseExerciseInput[]    | ExerciseCreateWithoutBaseExerciseInput  >;  connect?: Maybe<ExerciseWhereUniqueInput[] | ExerciseWhereUniqueInput>;}export interface ExerciseCreateWithoutBaseExerciseInput {  id?: Maybe<ID_Input>;  name: String;  description: String;  video: String;  targets?: Maybe<ExerciseCreatetargetsInput>;}export interface ExerciseCreatetargetsInput {  set?: Maybe<String[] | String>;}export interface BaseExerciseUpdateInput {  name?: Maybe<String>;  variations?: Maybe<ExerciseUpdateManyWithoutBaseExerciseInput>;}export interface ExerciseUpdateManyWithoutBaseExerciseInput {  create?: Maybe<    | ExerciseCreateWithoutBaseExerciseInput[]    | ExerciseCreateWithoutBaseExerciseInput  >;  delete?: Maybe<ExerciseWhereUniqueInput[] | ExerciseWhereUniqueInput>;  connect?: Maybe<ExerciseWhereUniqueInput[] | ExerciseWhereUniqueInput>;  set?: Maybe<ExerciseWhereUniqueInput[] | ExerciseWhereUniqueInput>;  disconnect?: Maybe<ExerciseWhereUniqueInput[] | ExerciseWhereUniqueInput>;  update?: Maybe<    | ExerciseUpdateWithWhereUniqueWithoutBaseExerciseInput[]    | ExerciseUpdateWithWhereUniqueWithoutBaseExerciseInput  >;  upsert?: Maybe<    | ExerciseUpsertWithWhereUniqueWithoutBaseExerciseInput[]    | ExerciseUpsertWithWhereUniqueWithoutBaseExerciseInput  >;  deleteMany?: Maybe<ExerciseScalarWhereInput[] | ExerciseScalarWhereInput>;  updateMany?: Maybe<    | ExerciseUpdateManyWithWhereNestedInput[]    | ExerciseUpdateManyWithWhereNestedInput  >;}export interface ExerciseUpdateWithWhereUniqueWithoutBaseExerciseInput {  where: ExerciseWhereUniqueInput;  data: ExerciseUpdateWithoutBaseExerciseDataInput;}export interface ExerciseUpdateWithoutBaseExerciseDataInput {  name?: Maybe<String>;  description?: Maybe<String>;  video?: Maybe<String>;  targets?: Maybe<ExerciseUpdatetargetsInput>;}export interface ExerciseUpdatetargetsInput {  set?: Maybe<String[] | String>;}export interface ExerciseUpsertWithWhereUniqueWithoutBaseExerciseInput {  where: ExerciseWhereUniqueInput;  update: ExerciseUpdateWithoutBaseExerciseDataInput;  create: ExerciseCreateWithoutBaseExerciseInput;}export interface ExerciseScalarWhereInput {  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<ExerciseScalarWhereInput[] | ExerciseScalarWhereInput>;  OR?: Maybe<ExerciseScalarWhereInput[] | ExerciseScalarWhereInput>;  NOT?: Maybe<ExerciseScalarWhereInput[] | ExerciseScalarWhereInput>;}export interface ExerciseUpdateManyWithWhereNestedInput {  where: ExerciseScalarWhereInput;  data: ExerciseUpdateManyDataInput;}export interface ExerciseUpdateManyDataInput {  name?: Maybe<String>;  description?: Maybe<String>;  video?: Maybe<String>;  targets?: Maybe<ExerciseUpdatetargetsInput>;}export interface BaseExerciseUpdateManyMutationInput {  name?: Maybe<String>;}export interface BlockCreateInput {  id?: Maybe<ID_Input>;  sequence: Int;  title: String;  duration: Int;  variation?: Maybe<String>;  format?: Maybe<FormatCreateOneInput>;  tracks?: Maybe<TrackCreateManyInput>;  exercises?: Maybe<ExerciseCreateManyInput>;  description: 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 ExerciseCreateManyInput {  create?: Maybe<ExerciseCreateInput[] | ExerciseCreateInput>;  connect?: Maybe<ExerciseWhereUniqueInput[] | ExerciseWhereUniqueInput>;}export interface ExerciseCreateInput {  id?: Maybe<ID_Input>;  name: String;  description: String;  video: String;  targets?: Maybe<ExerciseCreatetargetsInput>;  baseExercise: BaseExerciseCreateOneWithoutVariationsInput;}export interface BaseExerciseCreateOneWithoutVariationsInput {  create?: Maybe<BaseExerciseCreateWithoutVariationsInput>;  connect?: Maybe<BaseExerciseWhereUniqueInput>;}export interface BaseExerciseCreateWithoutVariationsInput {  id?: Maybe<ID_Input>;  name: String;}export interface BlockUpdateInput {  sequence?: Maybe<Int>;  title?: Maybe<String>;  duration?: Maybe<Int>;  variation?: Maybe<String>;  format?: Maybe<FormatUpdateOneInput>;  tracks?: Maybe<TrackUpdateManyInput>;  exercises?: Maybe<ExerciseUpdateManyInput>;  description?: Maybe<String>;}export interface FormatUpdateOneInput {  create?: Maybe<FormatCreateInput>;  update?: Maybe<FormatUpdateDataInput>;  upsert?: Maybe<FormatUpsertNestedInput>;  delete?: Maybe<Boolean>;  disconnect?: Maybe<Boolean>;  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 ExerciseUpdateManyInput {  create?: Maybe<ExerciseCreateInput[] | ExerciseCreateInput>;  update?: Maybe<    | ExerciseUpdateWithWhereUniqueNestedInput[]    | ExerciseUpdateWithWhereUniqueNestedInput  >;  upsert?: Maybe<    | ExerciseUpsertWithWhereUniqueNestedInput[]    | ExerciseUpsertWithWhereUniqueNestedInput  >;  delete?: Maybe<ExerciseWhereUniqueInput[] | ExerciseWhereUniqueInput>;  connect?: Maybe<ExerciseWhereUniqueInput[] | ExerciseWhereUniqueInput>;  set?: Maybe<ExerciseWhereUniqueInput[] | ExerciseWhereUniqueInput>;  disconnect?: Maybe<ExerciseWhereUniqueInput[] | ExerciseWhereUniqueInput>;  deleteMany?: Maybe<ExerciseScalarWhereInput[] | ExerciseScalarWhereInput>;  updateMany?: Maybe<    | ExerciseUpdateManyWithWhereNestedInput[]    | ExerciseUpdateManyWithWhereNestedInput  >;}export interface ExerciseUpdateWithWhereUniqueNestedInput {  where: ExerciseWhereUniqueInput;  data: ExerciseUpdateDataInput;}export interface ExerciseUpdateDataInput {  name?: Maybe<String>;  description?: Maybe<String>;  video?: Maybe<String>;  targets?: Maybe<ExerciseUpdatetargetsInput>;  baseExercise?: Maybe<BaseExerciseUpdateOneRequiredWithoutVariationsInput>;}export interface BaseExerciseUpdateOneRequiredWithoutVariationsInput {  create?: Maybe<BaseExerciseCreateWithoutVariationsInput>;  update?: Maybe<BaseExerciseUpdateWithoutVariationsDataInput>;  upsert?: Maybe<BaseExerciseUpsertWithoutVariationsInput>;  connect?: Maybe<BaseExerciseWhereUniqueInput>;}export interface BaseExerciseUpdateWithoutVariationsDataInput {  name?: Maybe<String>;}export interface BaseExerciseUpsertWithoutVariationsInput {  update: BaseExerciseUpdateWithoutVariationsDataInput;  create: BaseExerciseCreateWithoutVariationsInput;}export interface ExerciseUpsertWithWhereUniqueNestedInput {  where: ExerciseWhereUniqueInput;  update: ExerciseUpdateDataInput;  create: ExerciseCreateInput;}export interface BlockUpdateManyMutationInput {  sequence?: Maybe<Int>;  title?: Maybe<String>;  duration?: Maybe<Int>;  variation?: Maybe<String>;  description?: Maybe<String>;}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<BaseExerciseUpdateOneRequiredWithoutVariationsInput>;}export interface ExerciseUpdateManyMutationInput {  name?: Maybe<String>;  description?: Maybe<String>;  video?: Maybe<String>;  targets?: Maybe<ExerciseUpdatetargetsInput>;}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;  content?: Maybe<BlockCreateManyInput>;  trainingDate: DateTimeInput;  location: String;  registration?: Maybe<UserCreateManyInput>;  attendance: Int;  ratings?: Maybe<RatingCreateManyInput>;  published: Boolean;}export interface TrainingTypeCreateOneInput {  create?: Maybe<TrainingTypeCreateInput>;  connect?: Maybe<TrainingTypeWhereUniqueInput>;}export interface TrainingTypeCreateInput {  id?: Maybe<ID_Input>;  name: String;  description: String;}export interface BlockCreateManyInput {  create?: Maybe<BlockCreateInput[] | BlockCreateInput>;  connect?: Maybe<BlockWhereUniqueInput[] | BlockWhereUniqueInput>;}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>;  content?: Maybe<BlockUpdateManyInput>;  trainingDate?: Maybe<DateTimeInput>;  location?: Maybe<String>;  registration?: Maybe<UserUpdateManyInput>;  attendance?: Maybe<Int>;  ratings?: Maybe<RatingUpdateManyInput>;  published?: Maybe<Boolean>;}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 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>;  duration?: Maybe<Int>;  variation?: Maybe<String>;  format?: Maybe<FormatUpdateOneInput>;  tracks?: Maybe<TrackUpdateManyInput>;  exercises?: Maybe<ExerciseUpdateManyInput>;  description?: Maybe<String>;}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>;  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>;  variation?: Maybe<String>;  variation_not?: Maybe<String>;  variation_in?: Maybe<String[] | String>;  variation_not_in?: Maybe<String[] | String>;  variation_lt?: Maybe<String>;  variation_lte?: Maybe<String>;  variation_gt?: Maybe<String>;  variation_gte?: Maybe<String>;  variation_contains?: Maybe<String>;  variation_not_contains?: Maybe<String>;  variation_starts_with?: Maybe<String>;  variation_not_starts_with?: Maybe<String>;  variation_ends_with?: Maybe<String>;  variation_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<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>;  duration?: Maybe<Int>;  variation?: Maybe<String>;  description?: Maybe<String>;}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 BaseExerciseSubscriptionWhereInput {  mutation_in?: Maybe<MutationType[] | MutationType>;  updatedFields_contains?: Maybe<String>;  updatedFields_contains_every?: Maybe<String[] | String>;  updatedFields_contains_some?: Maybe<String[] | String>;  node?: Maybe<BaseExerciseWhereInput>;  AND?: Maybe<    BaseExerciseSubscriptionWhereInput[] | BaseExerciseSubscriptionWhereInput  >;  OR?: Maybe<    BaseExerciseSubscriptionWhereInput[] | BaseExerciseSubscriptionWhereInput  >;  NOT?: Maybe<    BaseExerciseSubscriptionWhereInput[] | BaseExerciseSubscriptionWhereInput  >;}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 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 BaseExercise {  id: ID_Output;  name: String;}export interface BaseExercisePromise  extends Promise<BaseExercise>,    Fragmentable {  id: () => Promise<ID_Output>;  name: () => Promise<String>;  variations: <T = FragmentableArray<Exercise>>(args?: {    where?: ExerciseWhereInput;    orderBy?: ExerciseOrderByInput;    skip?: Int;    after?: String;    before?: String;    first?: Int;    last?: Int;  }) => T;}export interface BaseExerciseSubscription  extends Promise<AsyncIterator<BaseExercise>>,    Fragmentable {  id: () => Promise<AsyncIterator<ID_Output>>;  name: () => Promise<AsyncIterator<String>>;  variations: <T = Promise<AsyncIterator<ExerciseSubscription>>>(args?: {    where?: ExerciseWhereInput;    orderBy?: ExerciseOrderByInput;    skip?: Int;    after?: String;    before?: String;    first?: Int;    last?: Int;  }) => T;}export interface BaseExerciseNullablePromise  extends Promise<BaseExercise | null>,    Fragmentable {  id: () => Promise<ID_Output>;  name: () => Promise<String>;  variations: <T = FragmentableArray<Exercise>>(args?: {    where?: ExerciseWhereInput;    orderBy?: ExerciseOrderByInput;    skip?: Int;    after?: String;    before?: String;    first?: Int;    last?: Int;  }) => T;}export interface Exercise {  id: ID_Output;  name: String;  description: String;  video: String;  targets: 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: <T = BaseExercisePromise>() => T;}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: <T = BaseExerciseSubscription>() => T;}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: <T = BaseExercisePromise>() => T;}export interface BaseExerciseConnection {  pageInfo: PageInfo;  edges: BaseExerciseEdge[];}export interface BaseExerciseConnectionPromise  extends Promise<BaseExerciseConnection>,    Fragmentable {  pageInfo: <T = PageInfoPromise>() => T;  edges: <T = FragmentableArray<BaseExerciseEdge>>() => T;  aggregate: <T = AggregateBaseExercisePromise>() => T;}export interface BaseExerciseConnectionSubscription  extends Promise<AsyncIterator<BaseExerciseConnection>>,    Fragmentable {  pageInfo: <T = PageInfoSubscription>() => T;  edges: <T = Promise<AsyncIterator<BaseExerciseEdgeSubscription>>>() => T;  aggregate: <T = AggregateBaseExerciseSubscription>() => 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 BaseExerciseEdge {  node: BaseExercise;  cursor: String;}export interface BaseExerciseEdgePromise  extends Promise<BaseExerciseEdge>,    Fragmentable {  node: <T = BaseExercisePromise>() => T;  cursor: () => Promise<String>;}export interface BaseExerciseEdgeSubscription  extends Promise<AsyncIterator<BaseExerciseEdge>>,    Fragmentable {  node: <T = BaseExerciseSubscription>() => T;  cursor: () => Promise<AsyncIterator<String>>;}export interface AggregateBaseExercise {  count: Int;}export interface AggregateBaseExercisePromise  extends Promise<AggregateBaseExercise>,    Fragmentable {  count: () => Promise<Int>;}export interface AggregateBaseExerciseSubscription  extends Promise<AsyncIterator<AggregateBaseExercise>>,    Fragmentable {  count: () => Promise<AsyncIterator<Int>>;}export interface Block {  id: ID_Output;  sequence: Int;  title: String;  duration: Int;  variation?: String;  description: String;}export interface BlockPromise extends Promise<Block>, Fragmentable {  id: () => Promise<ID_Output>;  sequence: () => Promise<Int>;  title: () => Promise<String>;  duration: () => Promise<Int>;  variation: () => Promise<String>;  format: <T = FormatPromise>() => T;  tracks: <T = FragmentableArray<Track>>(args?: {    where?: TrackWhereInput;    orderBy?: TrackOrderByInput;    skip?: Int;    after?: String;    before?: String;    first?: Int;    last?: Int;  }) => T;  exercises: <T = FragmentableArray<Exercise>>(args?: {    where?: ExerciseWhereInput;    orderBy?: ExerciseOrderByInput;    skip?: Int;    after?: String;    before?: String;    first?: Int;    last?: Int;  }) => T;  description: () => Promise<String>;}export interface BlockSubscription  extends Promise<AsyncIterator<Block>>,    Fragmentable {  id: () => Promise<AsyncIterator<ID_Output>>;  sequence: () => Promise<AsyncIterator<Int>>;  title: () => Promise<AsyncIterator<String>>;  duration: () => Promise<AsyncIterator<Int>>;  variation: () => Promise<AsyncIterator<String>>;  format: <T = FormatSubscription>() => T;  tracks: <T = Promise<AsyncIterator<TrackSubscription>>>(args?: {    where?: TrackWhereInput;    orderBy?: TrackOrderByInput;    skip?: Int;    after?: String;    before?: String;    first?: Int;    last?: Int;  }) => T;  exercises: <T = Promise<AsyncIterator<ExerciseSubscription>>>(args?: {    where?: ExerciseWhereInput;    orderBy?: ExerciseOrderByInput;    skip?: Int;    after?: String;    before?: String;    first?: Int;    last?: Int;  }) => T;  description: () => Promise<AsyncIterator<String>>;}export interface BlockNullablePromise  extends Promise<Block | null>,    Fragmentable {  id: () => Promise<ID_Output>;  sequence: () => Promise<Int>;  title: () => Promise<String>;  duration: () => Promise<Int>;  variation: () => Promise<String>;  format: <T = FormatPromise>() => T;  tracks: <T = FragmentableArray<Track>>(args?: {    where?: TrackWhereInput;    orderBy?: TrackOrderByInput;    skip?: Int;    after?: String;    before?: String;    first?: Int;    last?: Int;  }) => T;  exercises: <T = FragmentableArray<Exercise>>(args?: {    where?: ExerciseWhereInput;    orderBy?: ExerciseOrderByInput;    skip?: Int;    after?: String;    before?: String;    first?: Int;    last?: Int;  }) => T;  description: () => Promise<String>;}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 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 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 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;  content: <T = FragmentableArray<Block>>(args?: {    where?: BlockWhereInput;    orderBy?: BlockOrderByInput;    skip?: Int;    after?: String;    before?: String;    first?: Int;    last?: Int;  }) => T;  createdAt: () => Promise<DateTimeOutput>;  trainingDate: () => Promise<DateTimeOutput>;  location: () => Promise<String>;  registration: <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>;}export interface TrainingSubscription  extends Promise<AsyncIterator<Training>>,    Fragmentable {  id: () => Promise<AsyncIterator<ID_Output>>;  title: () => Promise<AsyncIterator<String>>;  type: <T = TrainingTypeSubscription>() => T;  content: <T = Promise<AsyncIterator<BlockSubscription>>>(args?: {    where?: BlockWhereInput;    orderBy?: BlockOrderByInput;    skip?: Int;    after?: String;    before?: String;    first?: Int;    last?: Int;  }) => T;  createdAt: () => Promise<AsyncIterator<DateTimeOutput>>;  trainingDate: () => Promise<AsyncIterator<DateTimeOutput>>;  location: () => Promise<AsyncIterator<String>>;  registration: <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>>;}export interface TrainingNullablePromise  extends Promise<Training | null>,    Fragmentable {  id: () => Promise<ID_Output>;  title: () => Promise<String>;  type: <T = TrainingTypePromise>() => T;  content: <T = FragmentableArray<Block>>(args?: {    where?: BlockWhereInput;    orderBy?: BlockOrderByInput;    skip?: Int;    after?: String;    before?: String;    first?: Int;    last?: Int;  }) => T;  createdAt: () => Promise<DateTimeOutput>;  trainingDate: () => Promise<DateTimeOutput>;  location: () => Promise<String>;  registration: <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>;}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 BaseExerciseSubscriptionPayload {  mutation: MutationType;  node: BaseExercise;  updatedFields: String[];  previousValues: BaseExercisePreviousValues;}export interface BaseExerciseSubscriptionPayloadPromise  extends Promise<BaseExerciseSubscriptionPayload>,    Fragmentable {  mutation: () => Promise<MutationType>;  node: <T = BaseExercisePromise>() => T;  updatedFields: () => Promise<String[]>;  previousValues: <T = BaseExercisePreviousValuesPromise>() => T;}export interface BaseExerciseSubscriptionPayloadSubscription  extends Promise<AsyncIterator<BaseExerciseSubscriptionPayload>>,    Fragmentable {  mutation: () => Promise<AsyncIterator<MutationType>>;  node: <T = BaseExerciseSubscription>() => T;  updatedFields: () => Promise<AsyncIterator<String[]>>;  previousValues: <T = BaseExercisePreviousValuesSubscription>() => T;}export interface BaseExercisePreviousValues {  id: ID_Output;  name: String;}export interface BaseExercisePreviousValuesPromise  extends Promise<BaseExercisePreviousValues>,    Fragmentable {  id: () => Promise<ID_Output>;  name: () => Promise<String>;}export interface BaseExercisePreviousValuesSubscription  extends Promise<AsyncIterator<BaseExercisePreviousValues>>,    Fragmentable {  id: () => Promise<AsyncIterator<ID_Output>>;  name: () => Promise<AsyncIterator<String>>;}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;  duration: Int;  variation?: String;  description: String;}export interface BlockPreviousValuesPromise  extends Promise<BlockPreviousValues>,    Fragmentable {  id: () => Promise<ID_Output>;  sequence: () => Promise<Int>;  title: () => Promise<String>;  duration: () => Promise<Int>;  variation: () => Promise<String>;  description: () => Promise<String>;}export interface BlockPreviousValuesSubscription  extends Promise<AsyncIterator<BlockPreviousValues>>,    Fragmentable {  id: () => Promise<AsyncIterator<ID_Output>>;  sequence: () => Promise<AsyncIterator<Int>>;  title: () => Promise<AsyncIterator<String>>;  duration: () => Promise<AsyncIterator<Int>>;  variation: () => Promise<AsyncIterator<String>>;  description: () => Promise<AsyncIterator<String>>;}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[];}export interface ExercisePreviousValuesPromise  extends Promise<ExercisePreviousValues>,    Fragmentable {  id: () => Promise<ID_Output>;  name: () => Promise<String>;  description: () => Promise<String>;  video: () => Promise<String>;  targets: () => 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[]>>;}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 `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 `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 `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: "Exercise",    embedded: false  },  {    name: "BaseExercise",    embedded: false  },  {    name: "Rating",    embedded: false  },  {    name: "Comment",    embedded: false  }];/** * Type Defs */export const prisma: Prisma;
 |