1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856(* generated by: awso-codegen generate-all --botocore-data vendor/botocore/botocore/data -o aws --runtime-dir lib/runtime/awso --cli-dir awso-cli *)openAwsoopen!Import[@@@warning"-32"]letservice=Service.amplifyletapiVersion="2017-07-25"letendpointPrefix="amplify"letserviceFullName="AWS Amplify"letsignatureVersion="v4"letprotocol="rest_json"letglobalEndpoint=endpointPrefix^".amazonaws.com"letserviceAbbreviation="Amplify"letsimple_to_jsonto_valuex=Botodata.Json.value_to_json_scalar(to_valuex)letcomposed_to_jsonto_valuex=Botodata.Json.value_to_json(to_valuex)letto_queryto_valuex=Client.Query.of_value(to_valuex)letstructure_to_value_auxst~f=letfilter=function|(k,Somev)->Some(k,v)|_->Noneinletpairkv=(k,v)inletdefer_value(k,dv)=pairkdvin((List.filter_mapst~f:filter)|>(List.map~f:defer_value))|>(funx->`Structure(fx))letstructure_to_value=structure_to_value_aux~f:Fn.idletstructure_to_wrapped_value~wrapper~response=structure_to_value_aux~f:(funx->[(wrapper,(`Structurex));(response,(`Structure[]))])moduleBranchName=structtypenonrect=stringletcontext_="BranchName"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:255)>>=(fun()->check_patterni~pattern:"(?s).+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"BranchName"jletto_json=simple_to_jsonto_valueendmoduleDomainPrefix=structtypenonrect=stringletcontext_="DomainPrefix"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:255)>>=(fun()->check_patterni~pattern:"(?s).*"));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"DomainPrefix"jletto_json=simple_to_jsonto_valueendmoduleDNSRecord=structtypenonrect=stringletcontext_="DNSRecord"letmakei=letopenResultinok_or_failwith(check_string_maxi~max:1000);iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"DNSRecord"jletto_json=simple_to_jsonto_valueendmoduleSubDomainSetting=structtypenonrect={prefix:DomainPrefix.t[@ocaml.doc"The prefix setting for the subdomain."];branchName:BranchName.t[@ocaml.doc"The branch name setting for the subdomain."]}letcontext_="SubDomainSetting"letmake~prefix=fun~branchName->fun()->{prefix;branchName}letto_valuex=structure_to_value[("prefix",(Some(DomainPrefix.to_valuex.prefix)));("branchName",(Some(BranchName.to_valuex.branchName)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letbranchName=BranchName.of_xml(Xml.child_exn~context:context_xml_arg0"branchName")inletprefix=DomainPrefix.of_xml(Xml.child_exn~context:context_xml_arg0"prefix")inmake~branchName~prefix()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letbranchName=field_map_exnjson__"branchName"BranchName.of_jsoninletprefix=field_map_exnjson__"prefix"DomainPrefix.of_jsoninmake~branchName~prefix()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Describes the settings for the subdomain."]moduleVerified=structtypenonrect=boolletmakei=iletof_string=Bool.of_stringletto_valuex=`Booleanxletto_queryv=to_queryto_valuevletto_headerx=Bool.to_stringxletof_xmlxml_arg0=Bool.of_string(string_of_xml~kind:"a boolean"xml_arg0)letof_json=bool_of_jsonletto_json=simple_to_jsonto_valueendmoduleEnvKey=structtypenonrect=stringletcontext_="EnvKey"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:255)>>=(fun()->check_patterni~pattern:"(?s).*"));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"EnvKey"jletto_json=simple_to_jsonto_valueendmoduleEnvValue=structtypenonrect=stringletcontext_="EnvValue"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:5500)>>=(fun()->check_patterni~pattern:"(?s).*"));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"EnvValue"jletto_json=simple_to_jsonto_valueendmoduleCondition=structtypenonrect=stringletcontext_="Condition"letmakei=letopenResultinok_or_failwith((check_string_mini~min:0)>>=(fun()->(check_string_maxi~max:2048)>>=(fun()->check_patterni~pattern:"(?s).*")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"Condition"jletto_json=simple_to_jsonto_valueendmoduleSource=structtypenonrect=stringletcontext_="Source"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:2048)>>=(fun()->check_patterni~pattern:"(?s).+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"Source"jletto_json=simple_to_jsonto_valueendmoduleStatus=structtypenonrect=stringletcontext_="Status"letmakei=letopenResultinok_or_failwith((check_string_mini~min:3)>>=(fun()->(check_string_maxi~max:7)>>=(fun()->check_patterni~pattern:".{3,7}")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"Status"jletto_json=simple_to_jsonto_valueendmoduleTarget=structtypenonrect=stringletcontext_="Target"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:2048)>>=(fun()->check_patterni~pattern:"(?s).+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"Target"jletto_json=simple_to_jsonto_valueendmoduleThumbnailName=structtypenonrect=stringletcontext_="ThumbnailName"letmakei=letopenResultinok_or_failwith(check_string_maxi~max:256);iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"ThumbnailName"jletto_json=simple_to_jsonto_valueendmoduleThumbnailUrl=structtypenonrect=stringletcontext_="ThumbnailUrl"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:2000)>>=(fun()->check_string_mini~min:1));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"ThumbnailUrl"jletto_json=simple_to_jsonto_valueendmoduleAutoSubDomainCreationPattern=structtypenonrect=stringletcontext_="AutoSubDomainCreationPattern"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:2048)>>=(fun()->check_patterni~pattern:"(?s).+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"AutoSubDomainCreationPattern"jletto_json=simple_to_jsonto_valueendmoduleCertificateArn=structtypenonrect=stringletcontext_="CertificateArn"letmakei=letopenResultinok_or_failwith((check_string_mini~min:0)>>=(fun()->(check_string_maxi~max:1000)>>=(fun()->check_patterni~pattern:"^arn:aws:acm:[a-z0-9-]+:\\d{12}:certificate\\/.+$")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"CertificateArn"jletto_json=simple_to_jsonto_valueendmoduleCertificateType=structtypenonrect=|AMPLIFY_MANAGED|CUSTOM|Non_static_idofstringletmakei=iletto_string=function|AMPLIFY_MANAGED->"AMPLIFY_MANAGED"|CUSTOM->"CUSTOM"|Non_static_ids->sletof_string=function|"AMPLIFY_MANAGED"->AMPLIFY_MANAGED|"CUSTOM"->CUSTOM|x->Non_static_idxletto_valuex=`Enum(to_stringx)letto_queryv=to_queryto_valuevletto_headerx=to_stringxletof_xmlxml_arg0=of_string(string_of_xml~kind:"enumeration CertificateType"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"CertificateType"j)letto_json=simple_to_jsonto_valueendmoduleCertificateVerificationDNSRecord=structtypenonrect=stringletcontext_="CertificateVerificationDNSRecord"letmakei=letopenResultinok_or_failwith(check_string_maxi~max:1000);iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"CertificateVerificationDNSRecord"jletto_json=simple_to_jsonto_valueendmoduleSubDomain=structtypenonrect={subDomainSetting:SubDomainSetting.toption[@ocaml.doc"Describes the settings for the subdomain."];verified:Verified.toption[@ocaml.doc"The verified status of the subdomain"];dnsRecord:DNSRecord.toption[@ocaml.doc"The DNS record for the subdomain."]}letmake?subDomainSetting=fun?verified->fun?dnsRecord->fun()->{subDomainSetting;verified;dnsRecord}letto_valuex=structure_to_value[("subDomainSetting",(Option.mapx.subDomainSetting~f:SubDomainSetting.to_value));("verified",(Option.mapx.verified~f:Verified.to_value));("dnsRecord",(Option.mapx.dnsRecord~f:DNSRecord.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letdnsRecord=(Option.map~f:DNSRecord.of_xml)(Xml.childxml_arg0"dnsRecord")inletverified=(Option.map~f:Verified.of_xml)(Xml.childxml_arg0"verified")inletsubDomainSetting=(Option.map~f:SubDomainSetting.of_xml)(Xml.childxml_arg0"subDomainSetting")inmake?dnsRecord?verified?subDomainSetting()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letdnsRecord=field_mapjson__"dnsRecord"DNSRecord.of_jsoninletverified=field_mapjson__"verified"Verified.of_jsoninletsubDomainSetting=field_mapjson__"subDomainSetting"SubDomainSetting.of_jsoninmake?dnsRecord?verified?subDomainSetting()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The subdomain for the domain association."]moduleAssociatedResource=structtypenonrect=stringletcontext_="AssociatedResource"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:2048)>>=(fun()->check_string_mini~min:1));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"AssociatedResource"jletto_json=simple_to_jsonto_valueendmoduleStackArn=structtypenonrect=stringletcontext_="StackArn"letmakei=letopenResultinok_or_failwith((check_string_mini~min:20)>>=(fun()->(check_string_maxi~max:2048)>>=(fun()->check_patterni~pattern:"^arn:aws:cloudformation:[a-z0-9-]+:\\d{12}:stack/.+/.+$")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"StackArn"jletto_json=simple_to_jsonto_valueendmoduleCustomDomain=structtypenonrect=stringletcontext_="CustomDomain"letmakei=letopenResultinok_or_failwith(check_string_maxi~max:255);iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"CustomDomain"jletto_json=simple_to_jsonto_valueendmoduleTagKey=structtypenonrect=stringletcontext_="TagKey"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:128)>>=(fun()->check_patterni~pattern:"^(?!aws:)[a-zA-Z+-=._:/]+$")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"TagKey"jletto_json=simple_to_jsonto_valueendmoduleTagValue=structtypenonrect=stringletcontext_="TagValue"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:256)>>=(fun()->check_patterni~pattern:"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$"));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"TagValue"jletto_json=simple_to_jsonto_valueendmoduleBasicAuthCredentials=structtypenonrect=stringletcontext_="BasicAuthCredentials"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:2000)>>=(fun()->check_patterni~pattern:"(?s).*"));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"BasicAuthCredentials"jletto_json=simple_to_jsonto_valueendmoduleBuildSpec=structtypenonrect=string[@@ocaml.doc"The build specification (build spec) file for an Amplify app build."]letcontext_="BuildSpec"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:25000)>>=(fun()->check_patterni~pattern:"(?s).+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"BuildSpec"jletto_json=simple_to_jsonto_valueend[@@ocaml.doc"The build specification (build spec) file for an Amplify app build."]moduleEnableAutoBuild=structtypenonrect=boolletmakei=iletof_string=Bool.of_stringletto_valuex=`Booleanxletto_queryv=to_queryto_valuevletto_headerx=Bool.to_stringxletof_xmlxml_arg0=Bool.of_string(string_of_xml~kind:"a boolean"xml_arg0)letof_json=bool_of_jsonletto_json=simple_to_jsonto_valueendmoduleEnableBasicAuth=structtypenonrect=boolletmakei=iletof_string=Bool.of_stringletto_valuex=`Booleanxletto_queryv=to_queryto_valuevletto_headerx=Bool.to_stringxletof_xmlxml_arg0=Bool.of_string(string_of_xml~kind:"a boolean"xml_arg0)letof_json=bool_of_jsonletto_json=simple_to_jsonto_valueendmoduleEnablePerformanceMode=structtypenonrect=boolletmakei=iletof_string=Bool.of_stringletto_valuex=`Booleanxletto_queryv=to_queryto_valuevletto_headerx=Bool.to_stringxletof_xmlxml_arg0=Bool.of_string(string_of_xml~kind:"a boolean"xml_arg0)letof_json=bool_of_jsonletto_json=simple_to_jsonto_valueendmoduleEnablePullRequestPreview=structtypenonrect=boolletmakei=iletof_string=Bool.of_stringletto_valuex=`Booleanxletto_queryv=to_queryto_valuevletto_headerx=Bool.to_stringxletof_xmlxml_arg0=Bool.of_string(string_of_xml~kind:"a boolean"xml_arg0)letof_json=bool_of_jsonletto_json=simple_to_jsonto_valueendmoduleEnvironmentVariables=structtypenonrect=(EnvKey.t*EnvValue.t)listletmakei=iletof_headerxs=make(List.filter_mapxs~f:(fun(k,v)->(Base.String.chop_prefixk~prefix:"x-amz-meta-")|>(Option.map~f:(funchopped->((EnvKey.of_stringchopped),(EnvValue.of_stringv))))))letto_valuexs=(xs|>(List.map~f:(fun(x,y)->(EnvKey.to_valuex)|>(funx->(EnvValue.to_valuey)|>(funy->(x,y))))))|>(funx->`Mapx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for Map_shape objects"()letof_xml_=failwith"of_xml_converter_of_shape: Map_shape case not implemented"letof_jsonj=object_of_json~key_of_string:EnvKey.of_string~of_json:EnvValue.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleFramework=structtypenonrect=stringletcontext_="Framework"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:255)>>=(fun()->check_patterni~pattern:"(?s).*"));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"Framework"jletto_json=simple_to_jsonto_valueendmodulePullRequestEnvironmentName=structtypenonrect=stringletcontext_="PullRequestEnvironmentName"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:20)>>=(fun()->check_patterni~pattern:"(?s).*"));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"PullRequestEnvironmentName"jletto_json=simple_to_jsonto_valueendmoduleStage=structtypenonrect=|PRODUCTION|BETA|DEVELOPMENT|EXPERIMENTAL|PULL_REQUEST|Non_static_idofstringletmakei=iletto_string=function|PRODUCTION->"PRODUCTION"|BETA->"BETA"|DEVELOPMENT->"DEVELOPMENT"|EXPERIMENTAL->"EXPERIMENTAL"|PULL_REQUEST->"PULL_REQUEST"|Non_static_ids->sletof_string=function|"PRODUCTION"->PRODUCTION|"BETA"->BETA|"DEVELOPMENT"->DEVELOPMENT|"EXPERIMENTAL"->EXPERIMENTAL|"PULL_REQUEST"->PULL_REQUEST|x->Non_static_idxletto_valuex=`Enum(to_stringx)letto_queryv=to_queryto_valuevletto_headerx=to_stringxletof_xmlxml_arg0=of_string(string_of_xml~kind:"enumeration Stage"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"Stage"j)letto_json=simple_to_jsonto_valueendmoduleAutoBranchCreationPattern=structtypenonrect=stringletcontext_="AutoBranchCreationPattern"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:2048)>>=(fun()->check_patterni~pattern:"(?s).+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"AutoBranchCreationPattern"jletto_json=simple_to_jsonto_valueendmoduleCacheConfigType=structtypenonrect=|AMPLIFY_MANAGED|AMPLIFY_MANAGED_NO_COOKIES|Non_static_idofstringletmakei=iletto_string=function|AMPLIFY_MANAGED->"AMPLIFY_MANAGED"|AMPLIFY_MANAGED_NO_COOKIES->"AMPLIFY_MANAGED_NO_COOKIES"|Non_static_ids->sletof_string=function|"AMPLIFY_MANAGED"->AMPLIFY_MANAGED|"AMPLIFY_MANAGED_NO_COOKIES"->AMPLIFY_MANAGED_NO_COOKIES|x->Non_static_idxletto_valuex=`Enum(to_stringx)letto_queryv=to_queryto_valuevletto_headerx=to_stringxletof_xmlxml_arg0=of_string(string_of_xml~kind:"enumeration CacheConfigType"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"CacheConfigType"j)letto_json=simple_to_jsonto_valueendmoduleCustomRule=structtypenonrect={source:Source.t[@ocaml.doc"The source pattern for a URL rewrite or redirect rule."];target:Target.t[@ocaml.doc"The target pattern for a URL rewrite or redirect rule."];status:Status.toption[@ocaml.doc"The status code for a URL rewrite or redirect rule. 200 Represents a 200 rewrite rule. 301 Represents a 301 (moved permanently) redirect rule. This and all future requests should be directed to the target URL. 302 Represents a 302 temporary redirect rule. 404 Represents a 404 redirect rule. 404-200 Represents a 404 rewrite rule."];condition:Condition.toption[@ocaml.doc"The condition for a URL rewrite or redirect rule, such as a country code."]}letcontext_="CustomRule"letmake?status=fun?condition->fun~source->fun~target->fun()->{status;condition;source;target}letto_valuex=structure_to_value[("source",(Some(Source.to_valuex.source)));("target",(Some(Target.to_valuex.target)));("status",(Option.mapx.status~f:Status.to_value));("condition",(Option.mapx.condition~f:Condition.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letcondition=(Option.map~f:Condition.of_xml)(Xml.childxml_arg0"condition")inletstatus=(Option.map~f:Status.of_xml)(Xml.childxml_arg0"status")inlettarget=Target.of_xml(Xml.child_exn~context:context_xml_arg0"target")inletsource=Source.of_xml(Xml.child_exn~context:context_xml_arg0"source")inmake?condition?status~target~source()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letcondition=field_mapjson__"condition"Condition.of_jsoninletstatus=field_mapjson__"status"Status.of_jsoninlettarget=field_map_exnjson__"target"Target.of_jsoninletsource=field_map_exnjson__"source"Source.of_jsoninmake?condition?status~target~source()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Describes a custom rewrite or redirect rule."]moduleBuildComputeType=structtypenonrect=|STANDARD_8GB|LARGE_16GB|XLARGE_72GB|Non_static_idofstringletmakei=iletto_string=function|STANDARD_8GB->"STANDARD_8GB"|LARGE_16GB->"LARGE_16GB"|XLARGE_72GB->"XLARGE_72GB"|Non_static_ids->sletof_string=function|"STANDARD_8GB"->STANDARD_8GB|"LARGE_16GB"->LARGE_16GB|"XLARGE_72GB"->XLARGE_72GB|x->Non_static_idxletto_valuex=`Enum(to_stringx)letto_queryv=to_queryto_valuevletto_headerx=to_stringxletof_xmlxml_arg0=of_string(string_of_xml~kind:"enumeration BuildComputeType"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"BuildComputeType"j)letto_json=simple_to_jsonto_valueendmoduleLastDeployTime=structtypenonrect=stringletmakei=iletof_stringx=xletto_valuex=`Timestampxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=string_of_xml~kind:"a timestamp"letof_json=timestamp_of_jsonletto_json=simple_to_jsonto_valueendmoduleStatusReason=structtypenonrect=stringletcontext_="StatusReason"letmakei=letopenResultinok_or_failwith(check_string_maxi~max:1000);iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"StatusReason"jletto_json=simple_to_jsonto_valueendmoduleWafStatus=structtypenonrect=|ASSOCIATING|ASSOCIATION_FAILED|ASSOCIATION_SUCCESS|DISASSOCIATING|DISASSOCIATION_FAILED|Non_static_idofstringletmakei=iletto_string=function|ASSOCIATING->"ASSOCIATING"|ASSOCIATION_FAILED->"ASSOCIATION_FAILED"|ASSOCIATION_SUCCESS->"ASSOCIATION_SUCCESS"|DISASSOCIATING->"DISASSOCIATING"|DISASSOCIATION_FAILED->"DISASSOCIATION_FAILED"|Non_static_ids->sletof_string=function|"ASSOCIATING"->ASSOCIATING|"ASSOCIATION_FAILED"->ASSOCIATION_FAILED|"ASSOCIATION_SUCCESS"->ASSOCIATION_SUCCESS|"DISASSOCIATING"->DISASSOCIATING|"DISASSOCIATION_FAILED"->DISASSOCIATION_FAILED|x->Non_static_idxletto_valuex=`Enum(to_stringx)letto_queryv=to_queryto_valuevletto_headerx=to_stringxletof_xmlxml_arg0=of_string(string_of_xml~kind:"enumeration WafStatus"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"WafStatus"j)letto_json=simple_to_jsonto_valueendmoduleWebAclArn=structtypenonrect=stringletcontext_="WebAclArn"letmakei=letopenResultinok_or_failwith((check_string_mini~min:0)>>=(fun()->(check_string_maxi~max:512)>>=(fun()->check_patterni~pattern:"^arn:aws:wafv2:.*")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"WebAclArn"jletto_json=simple_to_jsonto_valueendmoduleArtifactsUrl=structtypenonrect=stringletcontext_="ArtifactsUrl"letmakei=letopenResultinok_or_failwith(check_string_maxi~max:1000);iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"ArtifactsUrl"jletto_json=simple_to_jsonto_valueendmoduleContext=structtypenonrect=stringletcontext_="Context"letmakei=iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"Context"jletto_json=simple_to_jsonto_valueendmoduleEndTime=structtypenonrect=stringletmakei=iletof_stringx=xletto_valuex=`Timestampxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=string_of_xml~kind:"a timestamp"letof_json=timestamp_of_jsonletto_json=simple_to_jsonto_valueendmoduleJobStatus=structtypenonrect=|CREATED|PENDING|PROVISIONING|RUNNING|FAILED|SUCCEED|CANCELLING|CANCELLED|Non_static_idofstringletmakei=iletto_string=function|CREATED->"CREATED"|PENDING->"PENDING"|PROVISIONING->"PROVISIONING"|RUNNING->"RUNNING"|FAILED->"FAILED"|SUCCEED->"SUCCEED"|CANCELLING->"CANCELLING"|CANCELLED->"CANCELLED"|Non_static_ids->sletof_string=function|"CREATED"->CREATED|"PENDING"->PENDING|"PROVISIONING"->PROVISIONING|"RUNNING"->RUNNING|"FAILED"->FAILED|"SUCCEED"->SUCCEED|"CANCELLING"->CANCELLING|"CANCELLED"->CANCELLED|x->Non_static_idxletto_valuex=`Enum(to_stringx)letto_queryv=to_queryto_valuevletto_headerx=to_stringxletof_xmlxml_arg0=of_string(string_of_xml~kind:"enumeration JobStatus"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"JobStatus"j)letto_json=simple_to_jsonto_valueendmoduleLogUrl=structtypenonrect=stringletcontext_="LogUrl"letmakei=letopenResultinok_or_failwith(check_string_maxi~max:1000);iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"LogUrl"jletto_json=simple_to_jsonto_valueendmoduleScreenshots=structtypenonrect=(ThumbnailName.t*ThumbnailUrl.t)listletmakei=iletof_headerxs=make(List.filter_mapxs~f:(fun(k,v)->(Base.String.chop_prefixk~prefix:"x-amz-meta-")|>(Option.map~f:(funchopped->((ThumbnailName.of_stringchopped),(ThumbnailUrl.of_stringv))))))letto_valuexs=(xs|>(List.map~f:(fun(x,y)->(ThumbnailName.to_valuex)|>(funx->(ThumbnailUrl.to_valuey)|>(funy->(x,y))))))|>(funx->`Mapx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for Map_shape objects"()letof_xml_=failwith"of_xml_converter_of_shape: Map_shape case not implemented"letof_jsonj=object_of_json~key_of_string:ThumbnailName.of_string~of_json:ThumbnailUrl.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleStartTime=structtypenonrect=stringletmakei=iletof_stringx=xletto_valuex=`Timestampxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=string_of_xml~kind:"a timestamp"letof_json=timestamp_of_jsonletto_json=simple_to_jsonto_valueendmoduleStepName=structtypenonrect=stringletcontext_="StepName"letmakei=letopenResultinok_or_failwith(check_string_maxi~max:255);iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"StepName"jletto_json=simple_to_jsonto_valueendmoduleTestArtifactsUrl=structtypenonrect=stringletcontext_="TestArtifactsUrl"letmakei=letopenResultinok_or_failwith(check_string_maxi~max:1000);iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"TestArtifactsUrl"jletto_json=simple_to_jsonto_valueendmoduleTestConfigUrl=structtypenonrect=stringletcontext_="TestConfigUrl"letmakei=letopenResultinok_or_failwith(check_string_maxi~max:1000);iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"TestConfigUrl"jletto_json=simple_to_jsonto_valueendmoduleAppId=structtypenonrect=stringletcontext_="AppId"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:20)>>=(fun()->check_patterni~pattern:"d[a-z0-9]+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"AppId"jletto_json=simple_to_jsonto_valueendmoduleCreateTime=structtypenonrect=stringletmakei=iletof_stringx=xletto_valuex=`Timestampxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=string_of_xml~kind:"a timestamp"letof_json=timestamp_of_jsonletto_json=simple_to_jsonto_valueendmoduleDescription=structtypenonrect=stringletcontext_="Description"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:1000)>>=(fun()->check_patterni~pattern:"(?s).*"));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"Description"jletto_json=simple_to_jsonto_valueendmoduleUpdateTime=structtypenonrect=stringletmakei=iletof_stringx=xletto_valuex=`Timestampxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=string_of_xml~kind:"a timestamp"letof_json=timestamp_of_jsonletto_json=simple_to_jsonto_valueendmoduleWebhookArn=structtypenonrect=stringletcontext_="WebhookArn"letmakei=letopenResultinok_or_failwith(check_string_maxi~max:1000);iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"WebhookArn"jletto_json=simple_to_jsonto_valueendmoduleWebhookId=structtypenonrect=stringletcontext_="WebhookId"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:255)>>=(fun()->check_patterni~pattern:"(?s).*"));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"WebhookId"jletto_json=simple_to_jsonto_valueendmoduleWebhookUrl=structtypenonrect=stringletcontext_="WebhookUrl"letmakei=letopenResultinok_or_failwith(check_string_maxi~max:1000);iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"WebhookUrl"jletto_json=simple_to_jsonto_valueendmoduleCommitId=structtypenonrect=stringletcontext_="CommitId"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:255)>>=(fun()->check_patterni~pattern:"(?s).*"));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"CommitId"jletto_json=simple_to_jsonto_valueendmoduleCommitMessage=structtypenonrect=stringletcontext_="CommitMessage"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:10000)>>=(fun()->check_patterni~pattern:"(?s).*"));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"CommitMessage"jletto_json=simple_to_jsonto_valueendmoduleCommitTime=structtypenonrect=stringletmakei=iletof_stringx=xletto_valuex=`Timestampxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=string_of_xml~kind:"a timestamp"letof_json=timestamp_of_jsonletto_json=simple_to_jsonto_valueendmoduleJobArn=structtypenonrect=stringletcontext_="JobArn"letmakei=letopenResultinok_or_failwith(check_string_maxi~max:1000);iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"JobArn"jletto_json=simple_to_jsonto_valueendmoduleJobId=structtypenonrect=stringletcontext_="JobId"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:255)>>=(fun()->check_patterni~pattern:"[0-9]+"));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"JobId"jletto_json=simple_to_jsonto_valueendmoduleJobType=structtypenonrect=|RELEASE|RETRY|MANUAL|WEB_HOOK|Non_static_idofstringletmakei=iletto_string=function|RELEASE->"RELEASE"|RETRY->"RETRY"|MANUAL->"MANUAL"|WEB_HOOK->"WEB_HOOK"|Non_static_ids->sletof_string=function|"RELEASE"->RELEASE|"RETRY"->RETRY|"MANUAL"->MANUAL|"WEB_HOOK"->WEB_HOOK|x->Non_static_idxletto_valuex=`Enum(to_stringx)letto_queryv=to_queryto_valuevletto_headerx=to_stringxletof_xmlxml_arg0=of_string(string_of_xml~kind:"enumeration JobType"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"JobType"j)letto_json=simple_to_jsonto_valueendmoduleSourceUrl=structtypenonrect=stringletcontext_="SourceUrl"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:3000)>>=(fun()->check_patterni~pattern:"^(s3|https|http)://.*"));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"SourceUrl"jletto_json=simple_to_jsonto_valueendmoduleSourceUrlType=structtypenonrect=|ZIP|BUCKET_PREFIX|Non_static_idofstringletmakei=iletto_string=function|ZIP->"ZIP"|BUCKET_PREFIX->"BUCKET_PREFIX"|Non_static_ids->sletof_string=function|"ZIP"->ZIP|"BUCKET_PREFIX"->BUCKET_PREFIX|x->Non_static_idxletto_valuex=`Enum(to_stringx)letto_queryv=to_queryto_valuevletto_headerx=to_stringxletof_xmlxml_arg0=of_string(string_of_xml~kind:"enumeration SourceUrlType"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"SourceUrlType"j)letto_json=simple_to_jsonto_valueendmoduleAutoSubDomainCreationPatterns=structtypenonrect=AutoSubDomainCreationPattern.tlistletmakei=iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:AutoSubDomainCreationPattern.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:AutoSubDomainCreationPattern.of_xml)letof_jsonj=list_of_json~kind:"AutoSubDomainCreationPatterns"~of_json:AutoSubDomainCreationPattern.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleAutoSubDomainIAMRole=structtypenonrect=stringletcontext_="AutoSubDomainIAMRole"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:1000)>>=(fun()->check_patterni~pattern:"^$|^arn:aws:iam::\\d{12}:role.+"));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"AutoSubDomainIAMRole"jletto_json=simple_to_jsonto_valueendmoduleCertificate=structtypenonrect={type_:CertificateType.toption[@ocaml.doc"The type of SSL/TLS certificate that you want to use. Specify AMPLIFY_MANAGED to use the default certificate that Amplify provisions for you. Specify CUSTOM to use your own certificate that you have already added to Certificate Manager in your Amazon Web Services account. Make sure you request (or import) the certificate in the US East (N. Virginia) Region (us-east-1). For more information about using ACM, see Importing certificates into Certificate Manager in the ACM User guide."];customCertificateArn:CertificateArn.toption[@ocaml.doc"The Amazon resource name (ARN) for a custom certificate that you have already added to Certificate Manager in your Amazon Web Services account. This field is required only when the certificate type is CUSTOM."];certificateVerificationDNSRecord:CertificateVerificationDNSRecord.toption[@ocaml.doc"The DNS record for certificate verification."]}letmake?type_=fun?customCertificateArn->fun?certificateVerificationDNSRecord->fun()->{type_;customCertificateArn;certificateVerificationDNSRecord}letto_valuex=structure_to_value[("type",(Option.mapx.type_~f:CertificateType.to_value));("customCertificateArn",(Option.mapx.customCertificateArn~f:CertificateArn.to_value));("certificateVerificationDNSRecord",(Option.mapx.certificateVerificationDNSRecord~f:CertificateVerificationDNSRecord.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letcertificateVerificationDNSRecord=(Option.map~f:CertificateVerificationDNSRecord.of_xml)(Xml.childxml_arg0"certificateVerificationDNSRecord")inletcustomCertificateArn=(Option.map~f:CertificateArn.of_xml)(Xml.childxml_arg0"customCertificateArn")inlettype_=(Option.map~f:CertificateType.of_xml)(Xml.childxml_arg0"type")inmake?certificateVerificationDNSRecord?customCertificateArn?type_()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letcertificateVerificationDNSRecord=field_mapjson__"certificateVerificationDNSRecord"CertificateVerificationDNSRecord.of_jsoninletcustomCertificateArn=field_mapjson__"customCertificateArn"CertificateArn.of_jsoninlettype_=field_mapjson__"type"CertificateType.of_jsoninmake?certificateVerificationDNSRecord?customCertificateArn?type_()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Describes the current SSL/TLS certificate that is in use for the domain. If you are using CreateDomainAssociation to create a new domain association, Certificate describes the new certificate that you are creating."]moduleDomainAssociationArn=structtypenonrect=stringletcontext_="DomainAssociationArn"letmakei=letopenResultinok_or_failwith(check_string_maxi~max:1000);iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"DomainAssociationArn"jletto_json=simple_to_jsonto_valueendmoduleDomainName=structtypenonrect=stringletcontext_="DomainName"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:64)>>=(fun()->check_patterni~pattern:"^(((?!-)[A-Za-z0-9-]{0,62}[A-Za-z0-9])\\.)+((?!-)[A-Za-z0-9-]{1,62}[A-Za-z0-9])(\\.)?$"));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"DomainName"jletto_json=simple_to_jsonto_valueendmoduleDomainStatus=structtypenonrect=|PENDING_VERIFICATION|IN_PROGRESS|AVAILABLE|IMPORTING_CUSTOM_CERTIFICATE|PENDING_DEPLOYMENT|AWAITING_APP_CNAME|FAILED|CREATING|REQUESTING_CERTIFICATE|UPDATING|Non_static_idofstringletmakei=iletto_string=function|PENDING_VERIFICATION->"PENDING_VERIFICATION"|IN_PROGRESS->"IN_PROGRESS"|AVAILABLE->"AVAILABLE"|IMPORTING_CUSTOM_CERTIFICATE->"IMPORTING_CUSTOM_CERTIFICATE"|PENDING_DEPLOYMENT->"PENDING_DEPLOYMENT"|AWAITING_APP_CNAME->"AWAITING_APP_CNAME"|FAILED->"FAILED"|CREATING->"CREATING"|REQUESTING_CERTIFICATE->"REQUESTING_CERTIFICATE"|UPDATING->"UPDATING"|Non_static_ids->sletof_string=function|"PENDING_VERIFICATION"->PENDING_VERIFICATION|"IN_PROGRESS"->IN_PROGRESS|"AVAILABLE"->AVAILABLE|"IMPORTING_CUSTOM_CERTIFICATE"->IMPORTING_CUSTOM_CERTIFICATE|"PENDING_DEPLOYMENT"->PENDING_DEPLOYMENT|"AWAITING_APP_CNAME"->AWAITING_APP_CNAME|"FAILED"->FAILED|"CREATING"->CREATING|"REQUESTING_CERTIFICATE"->REQUESTING_CERTIFICATE|"UPDATING"->UPDATING|x->Non_static_idxletto_valuex=`Enum(to_stringx)letto_queryv=to_queryto_valuevletto_headerx=to_stringxletof_xmlxml_arg0=of_string(string_of_xml~kind:"enumeration DomainStatus"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"DomainStatus"j)letto_json=simple_to_jsonto_valueendmoduleEnableAutoSubDomain=structtypenonrect=boolletmakei=iletof_string=Bool.of_stringletto_valuex=`Booleanxletto_queryv=to_queryto_valuevletto_headerx=Bool.to_stringxletof_xmlxml_arg0=Bool.of_string(string_of_xml~kind:"a boolean"xml_arg0)letof_json=bool_of_jsonletto_json=simple_to_jsonto_valueendmoduleSubDomains=structtypenonrect=SubDomain.tlistletmakei=letopenResultinok_or_failwith(check_list_maxi~max:500);iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:SubDomain.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:SubDomain.of_xml)letof_jsonj=list_of_json~kind:"SubDomains"~of_json:SubDomain.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleUpdateStatus=structtypenonrect=|REQUESTING_CERTIFICATE|PENDING_VERIFICATION|IMPORTING_CUSTOM_CERTIFICATE|PENDING_DEPLOYMENT|AWAITING_APP_CNAME|UPDATE_COMPLETE|UPDATE_FAILED|Non_static_idofstringletmakei=iletto_string=function|REQUESTING_CERTIFICATE->"REQUESTING_CERTIFICATE"|PENDING_VERIFICATION->"PENDING_VERIFICATION"|IMPORTING_CUSTOM_CERTIFICATE->"IMPORTING_CUSTOM_CERTIFICATE"|PENDING_DEPLOYMENT->"PENDING_DEPLOYMENT"|AWAITING_APP_CNAME->"AWAITING_APP_CNAME"|UPDATE_COMPLETE->"UPDATE_COMPLETE"|UPDATE_FAILED->"UPDATE_FAILED"|Non_static_ids->sletof_string=function|"REQUESTING_CERTIFICATE"->REQUESTING_CERTIFICATE|"PENDING_VERIFICATION"->PENDING_VERIFICATION|"IMPORTING_CUSTOM_CERTIFICATE"->IMPORTING_CUSTOM_CERTIFICATE|"PENDING_DEPLOYMENT"->PENDING_DEPLOYMENT|"AWAITING_APP_CNAME"->AWAITING_APP_CNAME|"UPDATE_COMPLETE"->UPDATE_COMPLETE|"UPDATE_FAILED"->UPDATE_FAILED|x->Non_static_idxletto_valuex=`Enum(to_stringx)letto_queryv=to_queryto_valuevletto_headerx=to_stringxletof_xmlxml_arg0=of_string(string_of_xml~kind:"enumeration UpdateStatus"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"UpdateStatus"j)letto_json=simple_to_jsonto_valueendmoduleActiveJobId=structtypenonrect=stringletcontext_="ActiveJobId"letmakei=letopenResultinok_or_failwith(check_string_maxi~max:1000);iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"ActiveJobId"jletto_json=simple_to_jsonto_valueendmoduleAssociatedResources=structtypenonrect=AssociatedResource.tlistletmakei=iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:AssociatedResource.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:AssociatedResource.of_xml)letof_jsonj=list_of_json~kind:"AssociatedResources"~of_json:AssociatedResource.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleBackend=structtypenonrect={stackArn:StackArn.toption[@ocaml.doc"The Amazon Resource Name (ARN) for the CloudFormation stack."]}letmake?stackArn=fun()->{stackArn}letto_valuex=structure_to_value[("stackArn",(Option.mapx.stackArn~f:StackArn.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letstackArn=(Option.map~f:StackArn.of_xml)(Xml.childxml_arg0"stackArn")inmake?stackArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letstackArn=field_mapjson__"stackArn"StackArn.of_jsoninmake?stackArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Describes the backend associated with an Amplify Branch. This property is available to Amplify Gen 2 apps only. When you deploy an application with Amplify Gen 2, you provision the app's backend infrastructure using Typescript code."]moduleBackendEnvironmentArn=structtypenonrect=stringletcontext_="BackendEnvironmentArn"letmakei=letopenResultinok_or_failwith((check_string_mini~min:0)>>=(fun()->(check_string_maxi~max:1000)>>=(fun()->check_patterni~pattern:"(?s).*")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"BackendEnvironmentArn"jletto_json=simple_to_jsonto_valueendmoduleBranchArn=structtypenonrect=stringletcontext_="BranchArn"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:1000)>>=(fun()->check_patterni~pattern:"(?s).*"));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"BranchArn"jletto_json=simple_to_jsonto_valueendmoduleComputeRoleArn=structtypenonrect=stringletcontext_="ComputeRoleArn"letmakei=letopenResultinok_or_failwith((check_string_mini~min:0)>>=(fun()->(check_string_maxi~max:1000)>>=(fun()->check_patterni~pattern:"(?s).*")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"ComputeRoleArn"jletto_json=simple_to_jsonto_valueendmoduleCustomDomains=structtypenonrect=CustomDomain.tlistletmakei=letopenResultinok_or_failwith(check_list_maxi~max:255);iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:CustomDomain.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:CustomDomain.of_xml)letof_jsonj=list_of_json~kind:"CustomDomains"~of_json:CustomDomain.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleDisplayName=structtypenonrect=stringletcontext_="DisplayName"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:255)>>=(fun()->check_patterni~pattern:"(?s).*"));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"DisplayName"jletto_json=simple_to_jsonto_valueendmoduleEnableNotification=structtypenonrect=boolletmakei=iletof_string=Bool.of_stringletto_valuex=`Booleanxletto_queryv=to_queryto_valuevletto_headerx=Bool.to_stringxletof_xmlxml_arg0=Bool.of_string(string_of_xml~kind:"a boolean"xml_arg0)letof_json=bool_of_jsonletto_json=simple_to_jsonto_valueendmoduleEnableSkewProtection=structtypenonrect=boolletmakei=iletof_string=Bool.of_stringletto_valuex=`Booleanxletto_queryv=to_queryto_valuevletto_headerx=Bool.to_stringxletof_xmlxml_arg0=Bool.of_string(string_of_xml~kind:"a boolean"xml_arg0)letof_json=bool_of_jsonletto_json=simple_to_jsonto_valueendmoduleTTL=structtypenonrect=string[@@ocaml.doc"The content Time to Live (TTL) for the website in seconds."]letcontext_="TTL"letmakei=letopenResultinok_or_failwith((check_string_mini~min:0)>>=(fun()->(check_string_maxi~max:32)>>=(fun()->check_patterni~pattern:"\\d*")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"TTL"jletto_json=simple_to_jsonto_valueend[@@ocaml.doc"The content Time to Live (TTL) for the website in seconds."]moduleTagMap=structtypenonrect=(TagKey.t*TagValue.t)listletmakei=letopenResultinok_or_failwith((check_list_maxi~max:50)>>=(fun()->check_list_mini~min:0));iletof_headerxs=make(List.filter_mapxs~f:(fun(k,v)->(Base.String.chop_prefixk~prefix:"x-amz-meta-")|>(Option.map~f:(funchopped->((TagKey.of_stringchopped),(TagValue.of_stringv))))))letto_valuexs=(xs|>(List.map~f:(fun(x,y)->(TagKey.to_valuex)|>(funx->(TagValue.to_valuey)|>(funy->(x,y))))))|>(funx->`Mapx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for Map_shape objects"()letof_xml_=failwith"of_xml_converter_of_shape: Map_shape case not implemented"letof_jsonj=object_of_json~key_of_string:TagKey.of_string~of_json:TagValue.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleTotalNumberOfJobs=structtypenonrect=stringletcontext_="TotalNumberOfJobs"letmakei=letopenResultinok_or_failwith(check_string_maxi~max:1000);iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"TotalNumberOfJobs"jletto_json=simple_to_jsonto_valueendmoduleDeploymentArtifacts=structtypenonrect=stringletcontext_="DeploymentArtifacts"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:1000)>>=(fun()->check_patterni~pattern:"(?s).+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"DeploymentArtifacts"jletto_json=simple_to_jsonto_valueendmoduleEnvironmentName=structtypenonrect=stringletcontext_="EnvironmentName"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:255)>>=(fun()->check_patterni~pattern:"(?s).+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"EnvironmentName"jletto_json=simple_to_jsonto_valueendmoduleStackName=structtypenonrect=stringletcontext_="StackName"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:255)>>=(fun()->check_patterni~pattern:"(?s).+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"StackName"jletto_json=simple_to_jsonto_valueendmoduleArtifactFileName=structtypenonrect=stringletcontext_="ArtifactFileName"letmakei=letopenResultinok_or_failwith(check_string_maxi~max:1000);iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"ArtifactFileName"jletto_json=simple_to_jsonto_valueendmoduleArtifactId=structtypenonrect=stringletcontext_="ArtifactId"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:255)>>=(fun()->check_patterni~pattern:"(?s).*"));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"ArtifactId"jletto_json=simple_to_jsonto_valueendmoduleAppArn=structtypenonrect=stringletcontext_="AppArn"letmakei=letopenResultinok_or_failwith(check_string_maxi~max:1000);iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"AppArn"jletto_json=simple_to_jsonto_valueendmoduleAutoBranchCreationConfig=structtypenonrect={stage:Stage.toption[@ocaml.doc"Describes the current stage for the autocreated branch."];framework:Framework.toption[@ocaml.doc"The framework for the autocreated branch."];enableAutoBuild:EnableAutoBuild.toption[@ocaml.doc"Enables auto building for the autocreated branch."];environmentVariables:EnvironmentVariables.toption[@ocaml.doc"The environment variables for the autocreated branch."];basicAuthCredentials:BasicAuthCredentials.toption[@ocaml.doc"The basic authorization credentials for the autocreated branch. You must base64-encode the authorization credentials and provide them in the format user:password."];enableBasicAuth:EnableBasicAuth.toption[@ocaml.doc"Enables basic authorization for the autocreated branch."];enablePerformanceMode:EnablePerformanceMode.toption[@ocaml.doc"Enables performance mode for the branch. Performance mode optimizes for faster hosting performance by keeping content cached at the edge for a longer interval. When performance mode is enabled, hosting configuration or code changes can take up to 10 minutes to roll out."];buildSpec:BuildSpec.toption[@ocaml.doc"The build specification (build spec) for the autocreated branch."];enablePullRequestPreview:EnablePullRequestPreview.toption[@ocaml.doc"Enables pull request previews for the autocreated branch."];pullRequestEnvironmentName:PullRequestEnvironmentName.toption[@ocaml.doc"The Amplify environment name for the pull request."]}letmake?stage=fun?framework->fun?enableAutoBuild->fun?environmentVariables->fun?basicAuthCredentials->fun?enableBasicAuth->fun?enablePerformanceMode->fun?buildSpec->fun?enablePullRequestPreview->fun?pullRequestEnvironmentName->fun()->{stage;framework;enableAutoBuild;environmentVariables;basicAuthCredentials;enableBasicAuth;enablePerformanceMode;buildSpec;enablePullRequestPreview;pullRequestEnvironmentName}letto_valuex=structure_to_value[("stage",(Option.mapx.stage~f:Stage.to_value));("framework",(Option.mapx.framework~f:Framework.to_value));("enableAutoBuild",(Option.mapx.enableAutoBuild~f:EnableAutoBuild.to_value));("environmentVariables",(Option.mapx.environmentVariables~f:EnvironmentVariables.to_value));("basicAuthCredentials",(Option.mapx.basicAuthCredentials~f:BasicAuthCredentials.to_value));("enableBasicAuth",(Option.mapx.enableBasicAuth~f:EnableBasicAuth.to_value));("enablePerformanceMode",(Option.mapx.enablePerformanceMode~f:EnablePerformanceMode.to_value));("buildSpec",(Option.mapx.buildSpec~f:BuildSpec.to_value));("enablePullRequestPreview",(Option.mapx.enablePullRequestPreview~f:EnablePullRequestPreview.to_value));("pullRequestEnvironmentName",(Option.mapx.pullRequestEnvironmentName~f:PullRequestEnvironmentName.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letpullRequestEnvironmentName=(Option.map~f:PullRequestEnvironmentName.of_xml)(Xml.childxml_arg0"pullRequestEnvironmentName")inletenablePullRequestPreview=(Option.map~f:EnablePullRequestPreview.of_xml)(Xml.childxml_arg0"enablePullRequestPreview")inletbuildSpec=(Option.map~f:BuildSpec.of_xml)(Xml.childxml_arg0"buildSpec")inletenablePerformanceMode=(Option.map~f:EnablePerformanceMode.of_xml)(Xml.childxml_arg0"enablePerformanceMode")inletenableBasicAuth=(Option.map~f:EnableBasicAuth.of_xml)(Xml.childxml_arg0"enableBasicAuth")inletbasicAuthCredentials=(Option.map~f:BasicAuthCredentials.of_xml)(Xml.childxml_arg0"basicAuthCredentials")inletenvironmentVariables=(Option.map~f:EnvironmentVariables.of_xml)(Xml.childxml_arg0"environmentVariables")inletenableAutoBuild=(Option.map~f:EnableAutoBuild.of_xml)(Xml.childxml_arg0"enableAutoBuild")inletframework=(Option.map~f:Framework.of_xml)(Xml.childxml_arg0"framework")inletstage=(Option.map~f:Stage.of_xml)(Xml.childxml_arg0"stage")inmake?pullRequestEnvironmentName?enablePullRequestPreview?buildSpec?enablePerformanceMode?enableBasicAuth?basicAuthCredentials?environmentVariables?enableAutoBuild?framework?stage()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letpullRequestEnvironmentName=field_mapjson__"pullRequestEnvironmentName"PullRequestEnvironmentName.of_jsoninletenablePullRequestPreview=field_mapjson__"enablePullRequestPreview"EnablePullRequestPreview.of_jsoninletbuildSpec=field_mapjson__"buildSpec"BuildSpec.of_jsoninletenablePerformanceMode=field_mapjson__"enablePerformanceMode"EnablePerformanceMode.of_jsoninletenableBasicAuth=field_mapjson__"enableBasicAuth"EnableBasicAuth.of_jsoninletbasicAuthCredentials=field_mapjson__"basicAuthCredentials"BasicAuthCredentials.of_jsoninletenvironmentVariables=field_mapjson__"environmentVariables"EnvironmentVariables.of_jsoninletenableAutoBuild=field_mapjson__"enableAutoBuild"EnableAutoBuild.of_jsoninletframework=field_mapjson__"framework"Framework.of_jsoninletstage=field_mapjson__"stage"Stage.of_jsoninmake?pullRequestEnvironmentName?enablePullRequestPreview?buildSpec?enablePerformanceMode?enableBasicAuth?basicAuthCredentials?environmentVariables?enableAutoBuild?framework?stage()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Describes the automated branch creation configuration."]moduleAutoBranchCreationPatterns=structtypenonrect=AutoBranchCreationPattern.tlistletmakei=iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:AutoBranchCreationPattern.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:AutoBranchCreationPattern.of_xml)letof_jsonj=list_of_json~kind:"AutoBranchCreationPatterns"~of_json:AutoBranchCreationPattern.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleCacheConfig=structtypenonrect={type_:CacheConfigType.t[@ocaml.doc"The type of cache configuration to use for an Amplify app. The AMPLIFY_MANAGED cache configuration automatically applies an optimized cache configuration for your app based on its platform, routing rules, and rewrite rules. The AMPLIFY_MANAGED_NO_COOKIES cache configuration type is the same as AMPLIFY_MANAGED, except that it excludes all cookies from the cache key. This is the default setting."]}letcontext_="CacheConfig"letmake~type_=fun()->{type_}letto_valuex=structure_to_value[("type",(Some(CacheConfigType.to_valuex.type_)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=lettype_=CacheConfigType.of_xml(Xml.child_exn~context:context_xml_arg0"type")inmake~type_()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=lettype_=field_map_exnjson__"type"CacheConfigType.of_jsoninmake~type_()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Describes the cache configuration for an Amplify app. For more information about how Amplify applies an optimal cache configuration for your app based on the type of content that is being served, see Managing cache configuration in the Amplify User guide."]moduleCustomHeaders=structtypenonrect=stringletcontext_="CustomHeaders"letmakei=letopenResultinok_or_failwith((check_string_mini~min:0)>>=(fun()->(check_string_maxi~max:25000)>>=(fun()->check_patterni~pattern:"(?s).*")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"CustomHeaders"jletto_json=simple_to_jsonto_valueendmoduleCustomRules=structtypenonrect=CustomRule.tlistletmakei=iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:CustomRule.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:CustomRule.of_xml)letof_jsonj=list_of_json~kind:"CustomRules"~of_json:CustomRule.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleDefaultDomain=structtypenonrect=stringletcontext_="DefaultDomain"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:1000)>>=(fun()->check_string_mini~min:1));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"DefaultDomain"jletto_json=simple_to_jsonto_valueendmoduleEnableAutoBranchCreation=structtypenonrect=boolletmakei=iletof_string=Bool.of_stringletto_valuex=`Booleanxletto_queryv=to_queryto_valuevletto_headerx=Bool.to_stringxletof_xmlxml_arg0=Bool.of_string(string_of_xml~kind:"a boolean"xml_arg0)letof_json=bool_of_jsonletto_json=simple_to_jsonto_valueendmoduleEnableBranchAutoBuild=structtypenonrect=boolletmakei=iletof_string=Bool.of_stringletto_valuex=`Booleanxletto_queryv=to_queryto_valuevletto_headerx=Bool.to_stringxletof_xmlxml_arg0=Bool.of_string(string_of_xml~kind:"a boolean"xml_arg0)letof_json=bool_of_jsonletto_json=simple_to_jsonto_valueendmoduleEnableBranchAutoDeletion=structtypenonrect=boolletmakei=iletof_string=Bool.of_stringletto_valuex=`Booleanxletto_queryv=to_queryto_valuevletto_headerx=Bool.to_stringxletof_xmlxml_arg0=Bool.of_string(string_of_xml~kind:"a boolean"xml_arg0)letof_json=bool_of_jsonletto_json=simple_to_jsonto_valueendmoduleJobConfig=structtypenonrect={buildComputeType:BuildComputeType.t[@ocaml.doc"Specifies the size of the build instance. Amplify supports three instance sizes: STANDARD_8GB, LARGE_16GB, and XLARGE_72GB. If you don't specify a value, Amplify uses the STANDARD_8GB default. The following list describes the CPU, memory, and storage capacity for each build instance type: STANDARD_8GB vCPUs: 4 Memory: 8 GiB Disk space: 128 GB LARGE_16GB vCPUs: 8 Memory: 16 GiB Disk space: 128 GB XLARGE_72GB vCPUs: 36 Memory: 72 GiB Disk space: 256 GB"]}letcontext_="JobConfig"letmake~buildComputeType=fun()->{buildComputeType}letto_valuex=structure_to_value[("buildComputeType",(Some(BuildComputeType.to_valuex.buildComputeType)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letbuildComputeType=BuildComputeType.of_xml(Xml.child_exn~context:context_xml_arg0"buildComputeType")inmake~buildComputeType()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letbuildComputeType=field_map_exnjson__"buildComputeType"BuildComputeType.of_jsoninmake~buildComputeType()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Describes the configuration details that apply to the jobs for an Amplify app. Use JobConfig to apply configuration to jobs, such as customizing the build instance size when you create or update an Amplify app. For more information about customizable build instances, see Custom build instances in the Amplify User Guide."]moduleName=structtypenonrect=stringletcontext_="Name"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:255)>>=(fun()->check_patterni~pattern:"(?s).+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"Name"jletto_json=simple_to_jsonto_valueendmodulePlatform=structtypenonrect=|WEB|WEB_DYNAMIC|WEB_COMPUTE|Non_static_idofstringletmakei=iletto_string=function|WEB->"WEB"|WEB_DYNAMIC->"WEB_DYNAMIC"|WEB_COMPUTE->"WEB_COMPUTE"|Non_static_ids->sletof_string=function|"WEB"->WEB|"WEB_DYNAMIC"->WEB_DYNAMIC|"WEB_COMPUTE"->WEB_COMPUTE|x->Non_static_idxletto_valuex=`Enum(to_stringx)letto_queryv=to_queryto_valuevletto_headerx=to_stringxletof_xmlxml_arg0=of_string(string_of_xml~kind:"enumeration Platform"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"Platform"j)letto_json=simple_to_jsonto_valueendmoduleProductionBranch=structtypenonrect={lastDeployTime:LastDeployTime.toption[@ocaml.doc"The last deploy time of the production branch."];status:Status.toption[@ocaml.doc"The status of the production branch."];thumbnailUrl:ThumbnailUrl.toption[@ocaml.doc"The thumbnail URL for the production branch."];branchName:BranchName.toption[@ocaml.doc"The branch name for the production branch."]}letmake?lastDeployTime=fun?status->fun?thumbnailUrl->fun?branchName->fun()->{lastDeployTime;status;thumbnailUrl;branchName}letto_valuex=structure_to_value[("lastDeployTime",(Option.mapx.lastDeployTime~f:LastDeployTime.to_value));("status",(Option.mapx.status~f:Status.to_value));("thumbnailUrl",(Option.mapx.thumbnailUrl~f:ThumbnailUrl.to_value));("branchName",(Option.mapx.branchName~f:BranchName.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letbranchName=(Option.map~f:BranchName.of_xml)(Xml.childxml_arg0"branchName")inletthumbnailUrl=(Option.map~f:ThumbnailUrl.of_xml)(Xml.childxml_arg0"thumbnailUrl")inletstatus=(Option.map~f:Status.of_xml)(Xml.childxml_arg0"status")inletlastDeployTime=(Option.map~f:LastDeployTime.of_xml)(Xml.childxml_arg0"lastDeployTime")inmake?branchName?thumbnailUrl?status?lastDeployTime()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letbranchName=field_mapjson__"branchName"BranchName.of_jsoninletthumbnailUrl=field_mapjson__"thumbnailUrl"ThumbnailUrl.of_jsoninletstatus=field_mapjson__"status"Status.of_jsoninletlastDeployTime=field_mapjson__"lastDeployTime"LastDeployTime.of_jsoninmake?branchName?thumbnailUrl?status?lastDeployTime()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Describes the information about a production branch for an Amplify app."]moduleRepository=structtypenonrect=stringletcontext_="Repository"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:1000)>>=(fun()->check_patterni~pattern:"(?s).*"));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"Repository"jletto_json=simple_to_jsonto_valueendmoduleRepositoryCloneMethod=structtypenonrect=|SSH|TOKEN|SIGV4|Non_static_idofstringletmakei=iletto_string=function|SSH->"SSH"|TOKEN->"TOKEN"|SIGV4->"SIGV4"|Non_static_ids->sletof_string=function|"SSH"->SSH|"TOKEN"->TOKEN|"SIGV4"->SIGV4|x->Non_static_idxletto_valuex=`Enum(to_stringx)letto_queryv=to_queryto_valuevletto_headerx=to_stringxletof_xmlxml_arg0=of_string(string_of_xml~kind:"enumeration RepositoryCloneMethod"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"RepositoryCloneMethod"j)letto_json=simple_to_jsonto_valueendmoduleServiceRoleArn=structtypenonrect=stringletcontext_="ServiceRoleArn"letmakei=letopenResultinok_or_failwith((check_string_mini~min:0)>>=(fun()->(check_string_maxi~max:1000)>>=(fun()->check_patterni~pattern:"(?s).*")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"ServiceRoleArn"jletto_json=simple_to_jsonto_valueendmoduleWafConfiguration=structtypenonrect={webAclArn:WebAclArn.toption[@ocaml.doc"The Amazon Resource Name (ARN) for the web ACL associated with an Amplify app."];wafStatus:WafStatus.toption[@ocaml.doc"The status of the process to associate or disassociate a web ACL to an Amplify app."];statusReason:StatusReason.toption[@ocaml.doc"The reason for the current status of the Firewall configuration."]}letmake?webAclArn=fun?wafStatus->fun?statusReason->fun()->{webAclArn;wafStatus;statusReason}letto_valuex=structure_to_value[("webAclArn",(Option.mapx.webAclArn~f:WebAclArn.to_value));("wafStatus",(Option.mapx.wafStatus~f:WafStatus.to_value));("statusReason",(Option.mapx.statusReason~f:StatusReason.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letstatusReason=(Option.map~f:StatusReason.of_xml)(Xml.childxml_arg0"statusReason")inletwafStatus=(Option.map~f:WafStatus.of_xml)(Xml.childxml_arg0"wafStatus")inletwebAclArn=(Option.map~f:WebAclArn.of_xml)(Xml.childxml_arg0"webAclArn")inmake?statusReason?wafStatus?webAclArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letstatusReason=field_mapjson__"statusReason"StatusReason.of_jsoninletwafStatus=field_mapjson__"wafStatus"WafStatus.of_jsoninletwebAclArn=field_mapjson__"webAclArn"WebAclArn.of_jsoninmake?statusReason?wafStatus?webAclArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Describes the Firewall configuration for a hosted Amplify application. Firewall support enables you to protect your web applications with a direct integration with WAF. For more information about using WAF protections for an Amplify application, see Firewall support for hosted sites in the Amplify User Guide."]moduleWebhookCreateTime=structtypenonrect=stringletmakei=iletof_stringx=xletto_valuex=`Timestampxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=string_of_xml~kind:"a timestamp"letof_json=timestamp_of_jsonletto_json=simple_to_jsonto_valueendmoduleStep=structtypenonrect={stepName:StepName.toption[@ocaml.doc"The name of the execution step."];startTime:StartTime.toption[@ocaml.doc"The start date and time of the execution step."];status:JobStatus.toption[@ocaml.doc"The status of the execution step."];endTime:EndTime.toption[@ocaml.doc"The end date and time of the execution step."];logUrl:LogUrl.toption[@ocaml.doc"The URL to the logs for the execution step."];artifactsUrl:ArtifactsUrl.toption[@ocaml.doc"The URL to the build artifact for the execution step."];testArtifactsUrl:TestArtifactsUrl.toption[@ocaml.doc"The URL to the test artifact for the execution step."];testConfigUrl:TestConfigUrl.toption[@ocaml.doc"The URL to the test configuration for the execution step."];screenshots:Screenshots.toption[@ocaml.doc"The list of screenshot URLs for the execution step, if relevant."];statusReason:StatusReason.toption[@ocaml.doc"The reason for the current step status."];context:Context.toption[@ocaml.doc"The context for the current step. Includes a build image if the step is build."]}letmake?stepName=fun?startTime->fun?status->fun?endTime->fun?logUrl->fun?artifactsUrl->fun?testArtifactsUrl->fun?testConfigUrl->fun?screenshots->fun?statusReason->fun?context->fun()->{stepName;startTime;status;endTime;logUrl;artifactsUrl;testArtifactsUrl;testConfigUrl;screenshots;statusReason;context}letto_valuex=structure_to_value[("stepName",(Option.mapx.stepName~f:StepName.to_value));("startTime",(Option.mapx.startTime~f:StartTime.to_value));("status",(Option.mapx.status~f:JobStatus.to_value));("endTime",(Option.mapx.endTime~f:EndTime.to_value));("logUrl",(Option.mapx.logUrl~f:LogUrl.to_value));("artifactsUrl",(Option.mapx.artifactsUrl~f:ArtifactsUrl.to_value));("testArtifactsUrl",(Option.mapx.testArtifactsUrl~f:TestArtifactsUrl.to_value));("testConfigUrl",(Option.mapx.testConfigUrl~f:TestConfigUrl.to_value));("screenshots",(Option.mapx.screenshots~f:Screenshots.to_value));("statusReason",(Option.mapx.statusReason~f:StatusReason.to_value));("context",(Option.mapx.context~f:Context.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letcontext=(Option.map~f:Context.of_xml)(Xml.childxml_arg0"context")inletstatusReason=(Option.map~f:StatusReason.of_xml)(Xml.childxml_arg0"statusReason")inletscreenshots=(Option.map~f:Screenshots.of_xml)(Xml.childxml_arg0"screenshots")inlettestConfigUrl=(Option.map~f:TestConfigUrl.of_xml)(Xml.childxml_arg0"testConfigUrl")inlettestArtifactsUrl=(Option.map~f:TestArtifactsUrl.of_xml)(Xml.childxml_arg0"testArtifactsUrl")inletartifactsUrl=(Option.map~f:ArtifactsUrl.of_xml)(Xml.childxml_arg0"artifactsUrl")inletlogUrl=(Option.map~f:LogUrl.of_xml)(Xml.childxml_arg0"logUrl")inletendTime=(Option.map~f:EndTime.of_xml)(Xml.childxml_arg0"endTime")inletstatus=(Option.map~f:JobStatus.of_xml)(Xml.childxml_arg0"status")inletstartTime=(Option.map~f:StartTime.of_xml)(Xml.childxml_arg0"startTime")inletstepName=(Option.map~f:StepName.of_xml)(Xml.childxml_arg0"stepName")inmake?context?statusReason?screenshots?testConfigUrl?testArtifactsUrl?artifactsUrl?logUrl?endTime?status?startTime?stepName()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letcontext=field_mapjson__"context"Context.of_jsoninletstatusReason=field_mapjson__"statusReason"StatusReason.of_jsoninletscreenshots=field_mapjson__"screenshots"Screenshots.of_jsoninlettestConfigUrl=field_mapjson__"testConfigUrl"TestConfigUrl.of_jsoninlettestArtifactsUrl=field_mapjson__"testArtifactsUrl"TestArtifactsUrl.of_jsoninletartifactsUrl=field_mapjson__"artifactsUrl"ArtifactsUrl.of_jsoninletlogUrl=field_mapjson__"logUrl"LogUrl.of_jsoninletendTime=field_mapjson__"endTime"EndTime.of_jsoninletstatus=field_mapjson__"status"JobStatus.of_jsoninletstartTime=field_mapjson__"startTime"StartTime.of_jsoninletstepName=field_mapjson__"stepName"StepName.of_jsoninmake?context?statusReason?screenshots?testConfigUrl?testArtifactsUrl?artifactsUrl?logUrl?endTime?status?startTime?stepName()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Describes an execution step, for an execution job, for an Amplify app."]moduleErrorMessage=structtypenonrect=stringletcontext_="ErrorMessage"letmakei=letopenResultinok_or_failwith(check_string_maxi~max:255);iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"ErrorMessage"jletto_json=simple_to_jsonto_valueendmoduleCode=structtypenonrect=stringletcontext_="Code"letmakei=iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"Code"jletto_json=simple_to_jsonto_valueendmoduleWebhook=structtypenonrect={webhookArn:WebhookArn.toption[@ocaml.doc"The Amazon Resource Name (ARN) for the webhook."];webhookId:WebhookId.toption[@ocaml.doc"The ID of the webhook."];webhookUrl:WebhookUrl.toption[@ocaml.doc"The URL of the webhook."];appId:AppId.toption[@ocaml.doc"The unique ID of an Amplify app."];branchName:BranchName.toption[@ocaml.doc"The name for a branch that is part of an Amplify app."];description:Description.toption[@ocaml.doc"The description for a webhook."];createTime:CreateTime.toption[@ocaml.doc"A timestamp of when Amplify created the webhook in your Git repository."];updateTime:UpdateTime.toption[@ocaml.doc"A timestamp of when Amplify updated the webhook in your Git repository."]}letmake?webhookArn=fun?webhookId->fun?webhookUrl->fun?appId->fun?branchName->fun?description->fun?createTime->fun?updateTime->fun()->{webhookArn;webhookId;webhookUrl;appId;branchName;description;createTime;updateTime}letto_valuex=structure_to_value[("webhookArn",(Option.mapx.webhookArn~f:WebhookArn.to_value));("webhookId",(Option.mapx.webhookId~f:WebhookId.to_value));("webhookUrl",(Option.mapx.webhookUrl~f:WebhookUrl.to_value));("appId",(Option.mapx.appId~f:AppId.to_value));("branchName",(Option.mapx.branchName~f:BranchName.to_value));("description",(Option.mapx.description~f:Description.to_value));("createTime",(Option.mapx.createTime~f:CreateTime.to_value));("updateTime",(Option.mapx.updateTime~f:UpdateTime.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letupdateTime=(Option.map~f:UpdateTime.of_xml)(Xml.childxml_arg0"updateTime")inletcreateTime=(Option.map~f:CreateTime.of_xml)(Xml.childxml_arg0"createTime")inletdescription=(Option.map~f:Description.of_xml)(Xml.childxml_arg0"description")inletbranchName=(Option.map~f:BranchName.of_xml)(Xml.childxml_arg0"branchName")inletappId=(Option.map~f:AppId.of_xml)(Xml.childxml_arg0"appId")inletwebhookUrl=(Option.map~f:WebhookUrl.of_xml)(Xml.childxml_arg0"webhookUrl")inletwebhookId=(Option.map~f:WebhookId.of_xml)(Xml.childxml_arg0"webhookId")inletwebhookArn=(Option.map~f:WebhookArn.of_xml)(Xml.childxml_arg0"webhookArn")inmake?updateTime?createTime?description?branchName?appId?webhookUrl?webhookId?webhookArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letupdateTime=field_mapjson__"updateTime"UpdateTime.of_jsoninletcreateTime=field_mapjson__"createTime"CreateTime.of_jsoninletdescription=field_mapjson__"description"Description.of_jsoninletbranchName=field_mapjson__"branchName"BranchName.of_jsoninletappId=field_mapjson__"appId"AppId.of_jsoninletwebhookUrl=field_mapjson__"webhookUrl"WebhookUrl.of_jsoninletwebhookId=field_mapjson__"webhookId"WebhookId.of_jsoninletwebhookArn=field_mapjson__"webhookArn"WebhookArn.of_jsoninmake?updateTime?createTime?description?branchName?appId?webhookUrl?webhookId?webhookArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Describes a webhook that connects repository events to an Amplify app."]moduleJobSummary=structtypenonrect={jobArn:JobArn.toption[@ocaml.doc"The Amazon Resource Name (ARN) for the job."];jobId:JobId.toption[@ocaml.doc"The unique ID for the job."];commitId:CommitId.toption[@ocaml.doc"The commit ID from a third-party repository provider for the job."];commitMessage:CommitMessage.toption[@ocaml.doc"The commit message from a third-party repository provider for the job."];commitTime:CommitTime.toption[@ocaml.doc"The commit date and time for the job."];startTime:StartTime.toption[@ocaml.doc"The start date and time for the job."];status:JobStatus.toption[@ocaml.doc"The current status for the job."];endTime:EndTime.toption[@ocaml.doc"The end date and time for the job."];jobType:JobType.toption[@ocaml.doc"The type for the job. If the value is RELEASE, the job was manually released from its source by using the StartJob API. This value is available only for apps that are connected to a repository. If the value is RETRY, the job was manually retried using the StartJob API. If the value is WEB_HOOK, the job was automatically triggered by webhooks. If the value is MANUAL, the job is for a manually deployed app. Manually deployed apps are not connected to a Git repository."];sourceUrl:SourceUrl.toption[@ocaml.doc"The source URL for the files to deploy. The source URL can be either an HTTP GET URL that is publicly accessible and downloads a single .zip file, or an Amazon S3 bucket and prefix."];sourceUrlType:SourceUrlType.toption[@ocaml.doc"The type of source specified by the sourceURL. If the value is ZIP, the source is a .zip file. If the value is BUCKET_PREFIX, the source is an Amazon S3 bucket and prefix. If no value is specified, the default is ZIP."]}letmake?jobArn=fun?jobId->fun?commitId->fun?commitMessage->fun?commitTime->fun?startTime->fun?status->fun?endTime->fun?jobType->fun?sourceUrl->fun?sourceUrlType->fun()->{jobArn;jobId;commitId;commitMessage;commitTime;startTime;status;endTime;jobType;sourceUrl;sourceUrlType}letto_valuex=structure_to_value[("jobArn",(Option.mapx.jobArn~f:JobArn.to_value));("jobId",(Option.mapx.jobId~f:JobId.to_value));("commitId",(Option.mapx.commitId~f:CommitId.to_value));("commitMessage",(Option.mapx.commitMessage~f:CommitMessage.to_value));("commitTime",(Option.mapx.commitTime~f:CommitTime.to_value));("startTime",(Option.mapx.startTime~f:StartTime.to_value));("status",(Option.mapx.status~f:JobStatus.to_value));("endTime",(Option.mapx.endTime~f:EndTime.to_value));("jobType",(Option.mapx.jobType~f:JobType.to_value));("sourceUrl",(Option.mapx.sourceUrl~f:SourceUrl.to_value));("sourceUrlType",(Option.mapx.sourceUrlType~f:SourceUrlType.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letsourceUrlType=(Option.map~f:SourceUrlType.of_xml)(Xml.childxml_arg0"sourceUrlType")inletsourceUrl=(Option.map~f:SourceUrl.of_xml)(Xml.childxml_arg0"sourceUrl")inletjobType=(Option.map~f:JobType.of_xml)(Xml.childxml_arg0"jobType")inletendTime=(Option.map~f:EndTime.of_xml)(Xml.childxml_arg0"endTime")inletstatus=(Option.map~f:JobStatus.of_xml)(Xml.childxml_arg0"status")inletstartTime=(Option.map~f:StartTime.of_xml)(Xml.childxml_arg0"startTime")inletcommitTime=(Option.map~f:CommitTime.of_xml)(Xml.childxml_arg0"commitTime")inletcommitMessage=(Option.map~f:CommitMessage.of_xml)(Xml.childxml_arg0"commitMessage")inletcommitId=(Option.map~f:CommitId.of_xml)(Xml.childxml_arg0"commitId")inletjobId=(Option.map~f:JobId.of_xml)(Xml.childxml_arg0"jobId")inletjobArn=(Option.map~f:JobArn.of_xml)(Xml.childxml_arg0"jobArn")inmake?sourceUrlType?sourceUrl?jobType?endTime?status?startTime?commitTime?commitMessage?commitId?jobId?jobArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letsourceUrlType=field_mapjson__"sourceUrlType"SourceUrlType.of_jsoninletsourceUrl=field_mapjson__"sourceUrl"SourceUrl.of_jsoninletjobType=field_mapjson__"jobType"JobType.of_jsoninletendTime=field_mapjson__"endTime"EndTime.of_jsoninletstatus=field_mapjson__"status"JobStatus.of_jsoninletstartTime=field_mapjson__"startTime"StartTime.of_jsoninletcommitTime=field_mapjson__"commitTime"CommitTime.of_jsoninletcommitMessage=field_mapjson__"commitMessage"CommitMessage.of_jsoninletcommitId=field_mapjson__"commitId"CommitId.of_jsoninletjobId=field_mapjson__"jobId"JobId.of_jsoninletjobArn=field_mapjson__"jobArn"JobArn.of_jsoninmake?sourceUrlType?sourceUrl?jobType?endTime?status?startTime?commitTime?commitMessage?commitId?jobId?jobArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Describes the summary for an execution job for an Amplify app."]moduleDomainAssociation=structtypenonrect={domainAssociationArn:DomainAssociationArn.toption[@ocaml.doc"The Amazon Resource Name (ARN) for the domain association."];domainName:DomainName.toption[@ocaml.doc"The name of the domain."];enableAutoSubDomain:EnableAutoSubDomain.toption[@ocaml.doc"Enables the automated creation of subdomains for branches."];autoSubDomainCreationPatterns:AutoSubDomainCreationPatterns.toption[@ocaml.doc"Sets branch patterns for automatic subdomain creation."];autoSubDomainIAMRole:AutoSubDomainIAMRole.toption[@ocaml.doc"The required AWS Identity and Access Management (IAM) service role for the Amazon Resource Name (ARN) for automatically creating subdomains."];domainStatus:DomainStatus.toption[@ocaml.doc"The current status of the domain association."];updateStatus:UpdateStatus.toption[@ocaml.doc"The status of the domain update operation that is currently in progress. The following list describes the valid update states. REQUESTING_CERTIFICATE The certificate is in the process of being updated. PENDING_VERIFICATION Indicates that an Amplify managed certificate is in the process of being verified. This occurs during the creation of a custom domain or when a custom domain is updated to use a managed certificate. IMPORTING_CUSTOM_CERTIFICATE Indicates that an Amplify custom certificate is in the process of being imported. This occurs during the creation of a custom domain or when a custom domain is updated to use a custom certificate. PENDING_DEPLOYMENT Indicates that the subdomain or certificate changes are being propagated. AWAITING_APP_CNAME Amplify is waiting for CNAME records corresponding to subdomains to be propagated. If your custom domain is on Route\194\16053, Amplify handles this for you automatically. For more information about custom domains, see Setting up custom domains in the Amplify Hosting User Guide. UPDATE_COMPLETE The certificate has been associated with a domain. UPDATE_FAILED The certificate has failed to be provisioned or associated, and there is no existing active certificate to roll back to."];statusReason:StatusReason.toption[@ocaml.doc"Additional information that describes why the domain association is in the current state."];certificateVerificationDNSRecord:CertificateVerificationDNSRecord.toption[@ocaml.doc"The DNS record for certificate verification."];subDomains:SubDomains.toption[@ocaml.doc"The subdomains for the domain association."];certificate:Certificate.toption[@ocaml.doc"Describes the SSL/TLS certificate for the domain association. This can be your own custom certificate or the default certificate that Amplify provisions for you. If you are updating your domain to use a different certificate, certificate points to the new certificate that is being created instead of the current active certificate. Otherwise, certificate points to the current active certificate."]}letmake?domainAssociationArn=fun?domainName->fun?enableAutoSubDomain->fun?autoSubDomainCreationPatterns->fun?autoSubDomainIAMRole->fun?domainStatus->fun?updateStatus->fun?statusReason->fun?certificateVerificationDNSRecord->fun?subDomains->fun?certificate->fun()->{domainAssociationArn;domainName;enableAutoSubDomain;autoSubDomainCreationPatterns;autoSubDomainIAMRole;domainStatus;updateStatus;statusReason;certificateVerificationDNSRecord;subDomains;certificate}letto_valuex=structure_to_value[("domainAssociationArn",(Option.mapx.domainAssociationArn~f:DomainAssociationArn.to_value));("domainName",(Option.mapx.domainName~f:DomainName.to_value));("enableAutoSubDomain",(Option.mapx.enableAutoSubDomain~f:EnableAutoSubDomain.to_value));("autoSubDomainCreationPatterns",(Option.mapx.autoSubDomainCreationPatterns~f:AutoSubDomainCreationPatterns.to_value));("autoSubDomainIAMRole",(Option.mapx.autoSubDomainIAMRole~f:AutoSubDomainIAMRole.to_value));("domainStatus",(Option.mapx.domainStatus~f:DomainStatus.to_value));("updateStatus",(Option.mapx.updateStatus~f:UpdateStatus.to_value));("statusReason",(Option.mapx.statusReason~f:StatusReason.to_value));("certificateVerificationDNSRecord",(Option.mapx.certificateVerificationDNSRecord~f:CertificateVerificationDNSRecord.to_value));("subDomains",(Option.mapx.subDomains~f:SubDomains.to_value));("certificate",(Option.mapx.certificate~f:Certificate.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letcertificate=(Option.map~f:Certificate.of_xml)(Xml.childxml_arg0"certificate")inletsubDomains=(Option.map~f:SubDomains.of_xml)(Xml.childxml_arg0"subDomains")inletcertificateVerificationDNSRecord=(Option.map~f:CertificateVerificationDNSRecord.of_xml)(Xml.childxml_arg0"certificateVerificationDNSRecord")inletstatusReason=(Option.map~f:StatusReason.of_xml)(Xml.childxml_arg0"statusReason")inletupdateStatus=(Option.map~f:UpdateStatus.of_xml)(Xml.childxml_arg0"updateStatus")inletdomainStatus=(Option.map~f:DomainStatus.of_xml)(Xml.childxml_arg0"domainStatus")inletautoSubDomainIAMRole=(Option.map~f:AutoSubDomainIAMRole.of_xml)(Xml.childxml_arg0"autoSubDomainIAMRole")inletautoSubDomainCreationPatterns=(Option.map~f:AutoSubDomainCreationPatterns.of_xml)(Xml.childxml_arg0"autoSubDomainCreationPatterns")inletenableAutoSubDomain=(Option.map~f:EnableAutoSubDomain.of_xml)(Xml.childxml_arg0"enableAutoSubDomain")inletdomainName=(Option.map~f:DomainName.of_xml)(Xml.childxml_arg0"domainName")inletdomainAssociationArn=(Option.map~f:DomainAssociationArn.of_xml)(Xml.childxml_arg0"domainAssociationArn")inmake?certificate?subDomains?certificateVerificationDNSRecord?statusReason?updateStatus?domainStatus?autoSubDomainIAMRole?autoSubDomainCreationPatterns?enableAutoSubDomain?domainName?domainAssociationArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letcertificate=field_mapjson__"certificate"Certificate.of_jsoninletsubDomains=field_mapjson__"subDomains"SubDomains.of_jsoninletcertificateVerificationDNSRecord=field_mapjson__"certificateVerificationDNSRecord"CertificateVerificationDNSRecord.of_jsoninletstatusReason=field_mapjson__"statusReason"StatusReason.of_jsoninletupdateStatus=field_mapjson__"updateStatus"UpdateStatus.of_jsoninletdomainStatus=field_mapjson__"domainStatus"DomainStatus.of_jsoninletautoSubDomainIAMRole=field_mapjson__"autoSubDomainIAMRole"AutoSubDomainIAMRole.of_jsoninletautoSubDomainCreationPatterns=field_mapjson__"autoSubDomainCreationPatterns"AutoSubDomainCreationPatterns.of_jsoninletenableAutoSubDomain=field_mapjson__"enableAutoSubDomain"EnableAutoSubDomain.of_jsoninletdomainName=field_mapjson__"domainName"DomainName.of_jsoninletdomainAssociationArn=field_mapjson__"domainAssociationArn"DomainAssociationArn.of_jsoninmake?certificate?subDomains?certificateVerificationDNSRecord?statusReason?updateStatus?domainStatus?autoSubDomainIAMRole?autoSubDomainCreationPatterns?enableAutoSubDomain?domainName?domainAssociationArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Describes the association between a custom domain and an Amplify app."]moduleBranch=structtypenonrect={branchArn:BranchArn.toption[@ocaml.doc"The Amazon Resource Name (ARN) for a branch that is part of an Amplify app."];branchName:BranchName.toption[@ocaml.doc"The name for the branch that is part of an Amplify app."];description:Description.toption[@ocaml.doc"The description for the branch that is part of an Amplify app."];tags:TagMap.toption[@ocaml.doc"The tag for the branch of an Amplify app."];stage:Stage.toption[@ocaml.doc"The current stage for the branch that is part of an Amplify app."];displayName:DisplayName.toption[@ocaml.doc"The display name for the branch. This is used as the default domain prefix."];enableNotification:EnableNotification.toption[@ocaml.doc"Enables notifications for a branch that is part of an Amplify app."];createTime:CreateTime.toption[@ocaml.doc"A timestamp of when Amplify created the branch."];updateTime:UpdateTime.toption[@ocaml.doc"A timestamp for the last updated time for a branch."];environmentVariables:EnvironmentVariables.toption[@ocaml.doc"The environment variables specific to a branch of an Amplify app."];enableAutoBuild:EnableAutoBuild.toption[@ocaml.doc"Enables auto-building on push for a branch of an Amplify app."];enableSkewProtection:EnableSkewProtection.toption[@ocaml.doc"Specifies whether the skew protection feature is enabled for the branch. Deployment skew protection is available to Amplify applications to eliminate version skew issues between client and servers in web applications. When you apply skew protection to a branch, you can ensure that your clients always interact with the correct version of server-side assets, regardless of when a deployment occurs. For more information about skew protection, see Skew protection for Amplify deployments in the Amplify User Guide."];customDomains:CustomDomains.toption[@ocaml.doc"The custom domains for a branch of an Amplify app."];framework:Framework.toption[@ocaml.doc"The framework for a branch of an Amplify app."];activeJobId:ActiveJobId.toption[@ocaml.doc"The ID of the active job for a branch of an Amplify app."];totalNumberOfJobs:TotalNumberOfJobs.toption[@ocaml.doc"The total number of jobs that are part of an Amplify app."];enableBasicAuth:EnableBasicAuth.toption[@ocaml.doc"Enables basic authorization for a branch of an Amplify app."];enablePerformanceMode:EnablePerformanceMode.toption[@ocaml.doc"Enables performance mode for the branch. Performance mode optimizes for faster hosting performance by keeping content cached at the edge for a longer interval. When performance mode is enabled, hosting configuration or code changes can take up to 10 minutes to roll out."];thumbnailUrl:ThumbnailUrl.toption[@ocaml.doc"The thumbnail URL for the branch of an Amplify app."];basicAuthCredentials:BasicAuthCredentials.toption[@ocaml.doc"The basic authorization credentials for a branch of an Amplify app. You must base64-encode the authorization credentials and provide them in the format user:password."];buildSpec:BuildSpec.toption[@ocaml.doc"The build specification (build spec) content for the branch of an Amplify app."];ttl:TTL.toption[@ocaml.doc"The content Time to Live (TTL) for the website in seconds."];associatedResources:AssociatedResources.toption[@ocaml.doc"A list of custom resources that are linked to this branch."];enablePullRequestPreview:EnablePullRequestPreview.toption[@ocaml.doc"Enables pull request previews for the branch."];pullRequestEnvironmentName:PullRequestEnvironmentName.toption[@ocaml.doc"The Amplify environment name for the pull request."];destinationBranch:BranchName.toption[@ocaml.doc"The destination branch if the branch is a pull request branch."];sourceBranch:BranchName.toption[@ocaml.doc"The source branch if the branch is a pull request branch."];backendEnvironmentArn:BackendEnvironmentArn.toption[@ocaml.doc"The Amazon Resource Name (ARN) for a backend environment that is part of an Amplify app. This property is available to Amplify Gen 1 apps only. When you deploy an application with Amplify Gen 2, you provision the app's backend infrastructure using Typescript code."];backend:Backend.toption;computeRoleArn:ComputeRoleArn.toption[@ocaml.doc"The Amazon Resource Name (ARN) of the IAM role for a branch of an SSR app. The Compute role allows the Amplify Hosting compute service to securely access specific Amazon Web Services resources based on the role's permissions. For more information about the SSR Compute role, see Adding an SSR Compute role in the Amplify User Guide."]}letmake?branchArn=fun?branchName->fun?description->fun?tags->fun?stage->fun?displayName->fun?enableNotification->fun?createTime->fun?updateTime->fun?environmentVariables->fun?enableAutoBuild->fun?enableSkewProtection->fun?customDomains->fun?framework->fun?activeJobId->fun?totalNumberOfJobs->fun?enableBasicAuth->fun?enablePerformanceMode->fun?thumbnailUrl->fun?basicAuthCredentials->fun?buildSpec->fun?ttl->fun?associatedResources->fun?enablePullRequestPreview->fun?pullRequestEnvironmentName->fun?destinationBranch->fun?sourceBranch->fun?backendEnvironmentArn->fun?backend->fun?computeRoleArn->fun()->{branchArn;branchName;description;tags;stage;displayName;enableNotification;createTime;updateTime;environmentVariables;enableAutoBuild;enableSkewProtection;customDomains;framework;activeJobId;totalNumberOfJobs;enableBasicAuth;enablePerformanceMode;thumbnailUrl;basicAuthCredentials;buildSpec;ttl;associatedResources;enablePullRequestPreview;pullRequestEnvironmentName;destinationBranch;sourceBranch;backendEnvironmentArn;backend;computeRoleArn}letto_valuex=structure_to_value[("branchArn",(Option.mapx.branchArn~f:BranchArn.to_value));("branchName",(Option.mapx.branchName~f:BranchName.to_value));("description",(Option.mapx.description~f:Description.to_value));("tags",(Option.mapx.tags~f:TagMap.to_value));("stage",(Option.mapx.stage~f:Stage.to_value));("displayName",(Option.mapx.displayName~f:DisplayName.to_value));("enableNotification",(Option.mapx.enableNotification~f:EnableNotification.to_value));("createTime",(Option.mapx.createTime~f:CreateTime.to_value));("updateTime",(Option.mapx.updateTime~f:UpdateTime.to_value));("environmentVariables",(Option.mapx.environmentVariables~f:EnvironmentVariables.to_value));("enableAutoBuild",(Option.mapx.enableAutoBuild~f:EnableAutoBuild.to_value));("enableSkewProtection",(Option.mapx.enableSkewProtection~f:EnableSkewProtection.to_value));("customDomains",(Option.mapx.customDomains~f:CustomDomains.to_value));("framework",(Option.mapx.framework~f:Framework.to_value));("activeJobId",(Option.mapx.activeJobId~f:ActiveJobId.to_value));("totalNumberOfJobs",(Option.mapx.totalNumberOfJobs~f:TotalNumberOfJobs.to_value));("enableBasicAuth",(Option.mapx.enableBasicAuth~f:EnableBasicAuth.to_value));("enablePerformanceMode",(Option.mapx.enablePerformanceMode~f:EnablePerformanceMode.to_value));("thumbnailUrl",(Option.mapx.thumbnailUrl~f:ThumbnailUrl.to_value));("basicAuthCredentials",(Option.mapx.basicAuthCredentials~f:BasicAuthCredentials.to_value));("buildSpec",(Option.mapx.buildSpec~f:BuildSpec.to_value));("ttl",(Option.mapx.ttl~f:TTL.to_value));("associatedResources",(Option.mapx.associatedResources~f:AssociatedResources.to_value));("enablePullRequestPreview",(Option.mapx.enablePullRequestPreview~f:EnablePullRequestPreview.to_value));("pullRequestEnvironmentName",(Option.mapx.pullRequestEnvironmentName~f:PullRequestEnvironmentName.to_value));("destinationBranch",(Option.mapx.destinationBranch~f:BranchName.to_value));("sourceBranch",(Option.mapx.sourceBranch~f:BranchName.to_value));("backendEnvironmentArn",(Option.mapx.backendEnvironmentArn~f:BackendEnvironmentArn.to_value));("backend",(Option.mapx.backend~f:Backend.to_value));("computeRoleArn",(Option.mapx.computeRoleArn~f:ComputeRoleArn.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letcomputeRoleArn=(Option.map~f:ComputeRoleArn.of_xml)(Xml.childxml_arg0"computeRoleArn")inletbackend=(Option.map~f:Backend.of_xml)(Xml.childxml_arg0"backend")inletbackendEnvironmentArn=(Option.map~f:BackendEnvironmentArn.of_xml)(Xml.childxml_arg0"backendEnvironmentArn")inletsourceBranch=(Option.map~f:BranchName.of_xml)(Xml.childxml_arg0"sourceBranch")inletdestinationBranch=(Option.map~f:BranchName.of_xml)(Xml.childxml_arg0"destinationBranch")inletpullRequestEnvironmentName=(Option.map~f:PullRequestEnvironmentName.of_xml)(Xml.childxml_arg0"pullRequestEnvironmentName")inletenablePullRequestPreview=(Option.map~f:EnablePullRequestPreview.of_xml)(Xml.childxml_arg0"enablePullRequestPreview")inletassociatedResources=(Option.map~f:AssociatedResources.of_xml)(Xml.childxml_arg0"associatedResources")inletttl=(Option.map~f:TTL.of_xml)(Xml.childxml_arg0"ttl")inletbuildSpec=(Option.map~f:BuildSpec.of_xml)(Xml.childxml_arg0"buildSpec")inletbasicAuthCredentials=(Option.map~f:BasicAuthCredentials.of_xml)(Xml.childxml_arg0"basicAuthCredentials")inletthumbnailUrl=(Option.map~f:ThumbnailUrl.of_xml)(Xml.childxml_arg0"thumbnailUrl")inletenablePerformanceMode=(Option.map~f:EnablePerformanceMode.of_xml)(Xml.childxml_arg0"enablePerformanceMode")inletenableBasicAuth=(Option.map~f:EnableBasicAuth.of_xml)(Xml.childxml_arg0"enableBasicAuth")inlettotalNumberOfJobs=(Option.map~f:TotalNumberOfJobs.of_xml)(Xml.childxml_arg0"totalNumberOfJobs")inletactiveJobId=(Option.map~f:ActiveJobId.of_xml)(Xml.childxml_arg0"activeJobId")inletframework=(Option.map~f:Framework.of_xml)(Xml.childxml_arg0"framework")inletcustomDomains=(Option.map~f:CustomDomains.of_xml)(Xml.childxml_arg0"customDomains")inletenableSkewProtection=(Option.map~f:EnableSkewProtection.of_xml)(Xml.childxml_arg0"enableSkewProtection")inletenableAutoBuild=(Option.map~f:EnableAutoBuild.of_xml)(Xml.childxml_arg0"enableAutoBuild")inletenvironmentVariables=(Option.map~f:EnvironmentVariables.of_xml)(Xml.childxml_arg0"environmentVariables")inletupdateTime=(Option.map~f:UpdateTime.of_xml)(Xml.childxml_arg0"updateTime")inletcreateTime=(Option.map~f:CreateTime.of_xml)(Xml.childxml_arg0"createTime")inletenableNotification=(Option.map~f:EnableNotification.of_xml)(Xml.childxml_arg0"enableNotification")inletdisplayName=(Option.map~f:DisplayName.of_xml)(Xml.childxml_arg0"displayName")inletstage=(Option.map~f:Stage.of_xml)(Xml.childxml_arg0"stage")inlettags=(Option.map~f:TagMap.of_xml)(Xml.childxml_arg0"tags")inletdescription=(Option.map~f:Description.of_xml)(Xml.childxml_arg0"description")inletbranchName=(Option.map~f:BranchName.of_xml)(Xml.childxml_arg0"branchName")inletbranchArn=(Option.map~f:BranchArn.of_xml)(Xml.childxml_arg0"branchArn")inmake?computeRoleArn?backend?backendEnvironmentArn?sourceBranch?destinationBranch?pullRequestEnvironmentName?enablePullRequestPreview?associatedResources?ttl?buildSpec?basicAuthCredentials?thumbnailUrl?enablePerformanceMode?enableBasicAuth?totalNumberOfJobs?activeJobId?framework?customDomains?enableSkewProtection?enableAutoBuild?environmentVariables?updateTime?createTime?enableNotification?displayName?stage?tags?description?branchName?branchArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letcomputeRoleArn=field_mapjson__"computeRoleArn"ComputeRoleArn.of_jsoninletbackend=field_mapjson__"backend"Backend.of_jsoninletbackendEnvironmentArn=field_mapjson__"backendEnvironmentArn"BackendEnvironmentArn.of_jsoninletsourceBranch=field_mapjson__"sourceBranch"BranchName.of_jsoninletdestinationBranch=field_mapjson__"destinationBranch"BranchName.of_jsoninletpullRequestEnvironmentName=field_mapjson__"pullRequestEnvironmentName"PullRequestEnvironmentName.of_jsoninletenablePullRequestPreview=field_mapjson__"enablePullRequestPreview"EnablePullRequestPreview.of_jsoninletassociatedResources=field_mapjson__"associatedResources"AssociatedResources.of_jsoninletttl=field_mapjson__"ttl"TTL.of_jsoninletbuildSpec=field_mapjson__"buildSpec"BuildSpec.of_jsoninletbasicAuthCredentials=field_mapjson__"basicAuthCredentials"BasicAuthCredentials.of_jsoninletthumbnailUrl=field_mapjson__"thumbnailUrl"ThumbnailUrl.of_jsoninletenablePerformanceMode=field_mapjson__"enablePerformanceMode"EnablePerformanceMode.of_jsoninletenableBasicAuth=field_mapjson__"enableBasicAuth"EnableBasicAuth.of_jsoninlettotalNumberOfJobs=field_mapjson__"totalNumberOfJobs"TotalNumberOfJobs.of_jsoninletactiveJobId=field_mapjson__"activeJobId"ActiveJobId.of_jsoninletframework=field_mapjson__"framework"Framework.of_jsoninletcustomDomains=field_mapjson__"customDomains"CustomDomains.of_jsoninletenableSkewProtection=field_mapjson__"enableSkewProtection"EnableSkewProtection.of_jsoninletenableAutoBuild=field_mapjson__"enableAutoBuild"EnableAutoBuild.of_jsoninletenvironmentVariables=field_mapjson__"environmentVariables"EnvironmentVariables.of_jsoninletupdateTime=field_mapjson__"updateTime"UpdateTime.of_jsoninletcreateTime=field_mapjson__"createTime"CreateTime.of_jsoninletenableNotification=field_mapjson__"enableNotification"EnableNotification.of_jsoninletdisplayName=field_mapjson__"displayName"DisplayName.of_jsoninletstage=field_mapjson__"stage"Stage.of_jsoninlettags=field_mapjson__"tags"TagMap.of_jsoninletdescription=field_mapjson__"description"Description.of_jsoninletbranchName=field_mapjson__"branchName"BranchName.of_jsoninletbranchArn=field_mapjson__"branchArn"BranchArn.of_jsoninmake?computeRoleArn?backend?backendEnvironmentArn?sourceBranch?destinationBranch?pullRequestEnvironmentName?enablePullRequestPreview?associatedResources?ttl?buildSpec?basicAuthCredentials?thumbnailUrl?enablePerformanceMode?enableBasicAuth?totalNumberOfJobs?activeJobId?framework?customDomains?enableSkewProtection?enableAutoBuild?environmentVariables?updateTime?createTime?enableNotification?displayName?stage?tags?description?branchName?branchArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The branch for an Amplify app, which maps to a third-party repository branch."]moduleBackendEnvironment=structtypenonrect={backendEnvironmentArn:BackendEnvironmentArn.toption[@ocaml.doc"The Amazon Resource Name (ARN) for a backend environment that is part of an Amplify app."];environmentName:EnvironmentName.toption[@ocaml.doc"The name for a backend environment that is part of an Amplify app."];stackName:StackName.toption[@ocaml.doc"The AWS CloudFormation stack name of a backend environment."];deploymentArtifacts:DeploymentArtifacts.toption[@ocaml.doc"The name of deployment artifacts."];createTime:CreateTime.toption[@ocaml.doc"The creation date and time for a backend environment that is part of an Amplify app."];updateTime:UpdateTime.toption[@ocaml.doc"The last updated date and time for a backend environment that is part of an Amplify app."]}letmake?backendEnvironmentArn=fun?environmentName->fun?stackName->fun?deploymentArtifacts->fun?createTime->fun?updateTime->fun()->{backendEnvironmentArn;environmentName;stackName;deploymentArtifacts;createTime;updateTime}letto_valuex=structure_to_value[("backendEnvironmentArn",(Option.mapx.backendEnvironmentArn~f:BackendEnvironmentArn.to_value));("environmentName",(Option.mapx.environmentName~f:EnvironmentName.to_value));("stackName",(Option.mapx.stackName~f:StackName.to_value));("deploymentArtifacts",(Option.mapx.deploymentArtifacts~f:DeploymentArtifacts.to_value));("createTime",(Option.mapx.createTime~f:CreateTime.to_value));("updateTime",(Option.mapx.updateTime~f:UpdateTime.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letupdateTime=(Option.map~f:UpdateTime.of_xml)(Xml.childxml_arg0"updateTime")inletcreateTime=(Option.map~f:CreateTime.of_xml)(Xml.childxml_arg0"createTime")inletdeploymentArtifacts=(Option.map~f:DeploymentArtifacts.of_xml)(Xml.childxml_arg0"deploymentArtifacts")inletstackName=(Option.map~f:StackName.of_xml)(Xml.childxml_arg0"stackName")inletenvironmentName=(Option.map~f:EnvironmentName.of_xml)(Xml.childxml_arg0"environmentName")inletbackendEnvironmentArn=(Option.map~f:BackendEnvironmentArn.of_xml)(Xml.childxml_arg0"backendEnvironmentArn")inmake?updateTime?createTime?deploymentArtifacts?stackName?environmentName?backendEnvironmentArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letupdateTime=field_mapjson__"updateTime"UpdateTime.of_jsoninletcreateTime=field_mapjson__"createTime"CreateTime.of_jsoninletdeploymentArtifacts=field_mapjson__"deploymentArtifacts"DeploymentArtifacts.of_jsoninletstackName=field_mapjson__"stackName"StackName.of_jsoninletenvironmentName=field_mapjson__"environmentName"EnvironmentName.of_jsoninletbackendEnvironmentArn=field_mapjson__"backendEnvironmentArn"BackendEnvironmentArn.of_jsoninmake?updateTime?createTime?deploymentArtifacts?stackName?environmentName?backendEnvironmentArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Describes the backend environment associated with a Branch of a Gen 1 Amplify app. Amplify Gen 1 applications are created using Amplify Studio or the Amplify command line interface (CLI)."]moduleArtifact=structtypenonrect={artifactFileName:ArtifactFileName.toption[@ocaml.doc"The file name for the artifact."];artifactId:ArtifactId.toption[@ocaml.doc"The unique ID for the artifact."]}letmake?artifactFileName=fun?artifactId->fun()->{artifactFileName;artifactId}letto_valuex=structure_to_value[("artifactFileName",(Option.mapx.artifactFileName~f:ArtifactFileName.to_value));("artifactId",(Option.mapx.artifactId~f:ArtifactId.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letartifactId=(Option.map~f:ArtifactId.of_xml)(Xml.childxml_arg0"artifactId")inletartifactFileName=(Option.map~f:ArtifactFileName.of_xml)(Xml.childxml_arg0"artifactFileName")inmake?artifactId?artifactFileName()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letartifactId=field_mapjson__"artifactId"ArtifactId.of_jsoninletartifactFileName=field_mapjson__"artifactFileName"ArtifactFileName.of_jsoninmake?artifactId?artifactFileName()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Describes an artifact."]moduleApp=structtypenonrect={appId:AppId.toption[@ocaml.doc"The unique ID of the Amplify app."];appArn:AppArn.toption[@ocaml.doc"The Amazon Resource Name (ARN) of the Amplify app."];name:Name.toption[@ocaml.doc"The name for the Amplify app."];tags:TagMap.toption[@ocaml.doc"The tag for the Amplify app."];description:Description.toption[@ocaml.doc"The description for the Amplify app."];repository:Repository.toption[@ocaml.doc"The Git repository for the Amplify app."];platform:Platform.toption[@ocaml.doc"The platform for the Amplify app. For a static app, set the platform type to WEB. For a dynamic server-side rendered (SSR) app, set the platform type to WEB_COMPUTE. For an app requiring Amplify Hosting's original SSR support only, set the platform type to WEB_DYNAMIC. If you are deploying an SSG only app with Next.js 14 or later, you must use the platform type WEB_COMPUTE."];createTime:CreateTime.toption[@ocaml.doc"A timestamp of when Amplify created the application."];updateTime:UpdateTime.toption[@ocaml.doc"A timestamp of when Amplify updated the application."];computeRoleArn:ComputeRoleArn.toption[@ocaml.doc"The Amazon Resource Name (ARN) of the IAM role for an SSR app. The Compute role allows the Amplify Hosting compute service to securely access specific Amazon Web Services resources based on the role's permissions. For more information about the SSR Compute role, see Adding an SSR Compute role in the Amplify User Guide."];iamServiceRoleArn:ServiceRoleArn.toption[@ocaml.doc"The Amazon Resource Name (ARN) of the IAM service role for the Amplify app."];environmentVariables:EnvironmentVariables.toption[@ocaml.doc"The environment variables for the Amplify app. For a list of the environment variables that are accessible to Amplify by default, see Amplify Environment variables in the Amplify Hosting User Guide."];defaultDomain:DefaultDomain.toption[@ocaml.doc"The default domain for the Amplify app."];enableBranchAutoBuild:EnableBranchAutoBuild.toption[@ocaml.doc"Enables the auto-building of branches for the Amplify app."];enableBranchAutoDeletion:EnableBranchAutoDeletion.toption[@ocaml.doc"Automatically disconnect a branch in the Amplify console when you delete a branch from your Git repository."];enableBasicAuth:EnableBasicAuth.toption[@ocaml.doc"Enables basic authorization for the Amplify app's branches."];basicAuthCredentials:BasicAuthCredentials.toption[@ocaml.doc"The basic authorization credentials for branches for the Amplify app. You must base64-encode the authorization credentials and provide them in the format user:password."];customRules:CustomRules.toption[@ocaml.doc"Describes the custom redirect and rewrite rules for the Amplify app."];productionBranch:ProductionBranch.toption[@ocaml.doc"Describes the information about a production branch of the Amplify app."];buildSpec:BuildSpec.toption[@ocaml.doc"Describes the content of the build specification (build spec) for the Amplify app."];customHeaders:CustomHeaders.toption[@ocaml.doc"Describes the custom HTTP headers for the Amplify app."];enableAutoBranchCreation:EnableAutoBranchCreation.toption[@ocaml.doc"Enables automated branch creation for the Amplify app."];autoBranchCreationPatterns:AutoBranchCreationPatterns.toption[@ocaml.doc"Describes the automated branch creation glob patterns for the Amplify app."];autoBranchCreationConfig:AutoBranchCreationConfig.toption[@ocaml.doc"Describes the automated branch creation configuration for the Amplify app."];repositoryCloneMethod:RepositoryCloneMethod.toption[@ocaml.doc"This is for internal use. The Amplify service uses this parameter to specify the authentication protocol to use to access the Git repository for an Amplify app. Amplify specifies TOKEN for a GitHub repository, SIGV4 for an Amazon Web Services CodeCommit repository, and SSH for GitLab and Bitbucket repositories."];cacheConfig:CacheConfig.toption[@ocaml.doc"The cache configuration for the Amplify app. If you don't specify the cache configuration type, Amplify uses the default AMPLIFY_MANAGED setting."];webhookCreateTime:WebhookCreateTime.toption[@ocaml.doc"A timestamp of when Amplify created the webhook in your Git repository."];wafConfiguration:WafConfiguration.toption[@ocaml.doc"Describes the Firewall configuration for the Amplify app. Firewall support enables you to protect your hosted applications with a direct integration with WAF."];jobConfig:JobConfig.toption[@ocaml.doc"The configuration details that apply to the jobs for an Amplify app."]}letmake?appId=fun?appArn->fun?name->fun?tags->fun?description->fun?repository->fun?platform->fun?createTime->fun?updateTime->fun?computeRoleArn->fun?iamServiceRoleArn->fun?environmentVariables->fun?defaultDomain->fun?enableBranchAutoBuild->fun?enableBranchAutoDeletion->fun?enableBasicAuth->fun?basicAuthCredentials->fun?customRules->fun?productionBranch->fun?buildSpec->fun?customHeaders->fun?enableAutoBranchCreation->fun?autoBranchCreationPatterns->fun?autoBranchCreationConfig->fun?repositoryCloneMethod->fun?cacheConfig->fun?webhookCreateTime->fun?wafConfiguration->fun?jobConfig->fun()->{appId;appArn;name;tags;description;repository;platform;createTime;updateTime;computeRoleArn;iamServiceRoleArn;environmentVariables;defaultDomain;enableBranchAutoBuild;enableBranchAutoDeletion;enableBasicAuth;basicAuthCredentials;customRules;productionBranch;buildSpec;customHeaders;enableAutoBranchCreation;autoBranchCreationPatterns;autoBranchCreationConfig;repositoryCloneMethod;cacheConfig;webhookCreateTime;wafConfiguration;jobConfig}letto_valuex=structure_to_value[("appId",(Option.mapx.appId~f:AppId.to_value));("appArn",(Option.mapx.appArn~f:AppArn.to_value));("name",(Option.mapx.name~f:Name.to_value));("tags",(Option.mapx.tags~f:TagMap.to_value));("description",(Option.mapx.description~f:Description.to_value));("repository",(Option.mapx.repository~f:Repository.to_value));("platform",(Option.mapx.platform~f:Platform.to_value));("createTime",(Option.mapx.createTime~f:CreateTime.to_value));("updateTime",(Option.mapx.updateTime~f:UpdateTime.to_value));("computeRoleArn",(Option.mapx.computeRoleArn~f:ComputeRoleArn.to_value));("iamServiceRoleArn",(Option.mapx.iamServiceRoleArn~f:ServiceRoleArn.to_value));("environmentVariables",(Option.mapx.environmentVariables~f:EnvironmentVariables.to_value));("defaultDomain",(Option.mapx.defaultDomain~f:DefaultDomain.to_value));("enableBranchAutoBuild",(Option.mapx.enableBranchAutoBuild~f:EnableBranchAutoBuild.to_value));("enableBranchAutoDeletion",(Option.mapx.enableBranchAutoDeletion~f:EnableBranchAutoDeletion.to_value));("enableBasicAuth",(Option.mapx.enableBasicAuth~f:EnableBasicAuth.to_value));("basicAuthCredentials",(Option.mapx.basicAuthCredentials~f:BasicAuthCredentials.to_value));("customRules",(Option.mapx.customRules~f:CustomRules.to_value));("productionBranch",(Option.mapx.productionBranch~f:ProductionBranch.to_value));("buildSpec",(Option.mapx.buildSpec~f:BuildSpec.to_value));("customHeaders",(Option.mapx.customHeaders~f:CustomHeaders.to_value));("enableAutoBranchCreation",(Option.mapx.enableAutoBranchCreation~f:EnableAutoBranchCreation.to_value));("autoBranchCreationPatterns",(Option.mapx.autoBranchCreationPatterns~f:AutoBranchCreationPatterns.to_value));("autoBranchCreationConfig",(Option.mapx.autoBranchCreationConfig~f:AutoBranchCreationConfig.to_value));("repositoryCloneMethod",(Option.mapx.repositoryCloneMethod~f:RepositoryCloneMethod.to_value));("cacheConfig",(Option.mapx.cacheConfig~f:CacheConfig.to_value));("webhookCreateTime",(Option.mapx.webhookCreateTime~f:WebhookCreateTime.to_value));("wafConfiguration",(Option.mapx.wafConfiguration~f:WafConfiguration.to_value));("jobConfig",(Option.mapx.jobConfig~f:JobConfig.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letjobConfig=(Option.map~f:JobConfig.of_xml)(Xml.childxml_arg0"jobConfig")inletwafConfiguration=(Option.map~f:WafConfiguration.of_xml)(Xml.childxml_arg0"wafConfiguration")inletwebhookCreateTime=(Option.map~f:WebhookCreateTime.of_xml)(Xml.childxml_arg0"webhookCreateTime")inletcacheConfig=(Option.map~f:CacheConfig.of_xml)(Xml.childxml_arg0"cacheConfig")inletrepositoryCloneMethod=(Option.map~f:RepositoryCloneMethod.of_xml)(Xml.childxml_arg0"repositoryCloneMethod")inletautoBranchCreationConfig=(Option.map~f:AutoBranchCreationConfig.of_xml)(Xml.childxml_arg0"autoBranchCreationConfig")inletautoBranchCreationPatterns=(Option.map~f:AutoBranchCreationPatterns.of_xml)(Xml.childxml_arg0"autoBranchCreationPatterns")inletenableAutoBranchCreation=(Option.map~f:EnableAutoBranchCreation.of_xml)(Xml.childxml_arg0"enableAutoBranchCreation")inletcustomHeaders=(Option.map~f:CustomHeaders.of_xml)(Xml.childxml_arg0"customHeaders")inletbuildSpec=(Option.map~f:BuildSpec.of_xml)(Xml.childxml_arg0"buildSpec")inletproductionBranch=(Option.map~f:ProductionBranch.of_xml)(Xml.childxml_arg0"productionBranch")inletcustomRules=(Option.map~f:CustomRules.of_xml)(Xml.childxml_arg0"customRules")inletbasicAuthCredentials=(Option.map~f:BasicAuthCredentials.of_xml)(Xml.childxml_arg0"basicAuthCredentials")inletenableBasicAuth=(Option.map~f:EnableBasicAuth.of_xml)(Xml.childxml_arg0"enableBasicAuth")inletenableBranchAutoDeletion=(Option.map~f:EnableBranchAutoDeletion.of_xml)(Xml.childxml_arg0"enableBranchAutoDeletion")inletenableBranchAutoBuild=(Option.map~f:EnableBranchAutoBuild.of_xml)(Xml.childxml_arg0"enableBranchAutoBuild")inletdefaultDomain=(Option.map~f:DefaultDomain.of_xml)(Xml.childxml_arg0"defaultDomain")inletenvironmentVariables=(Option.map~f:EnvironmentVariables.of_xml)(Xml.childxml_arg0"environmentVariables")inletiamServiceRoleArn=(Option.map~f:ServiceRoleArn.of_xml)(Xml.childxml_arg0"iamServiceRoleArn")inletcomputeRoleArn=(Option.map~f:ComputeRoleArn.of_xml)(Xml.childxml_arg0"computeRoleArn")inletupdateTime=(Option.map~f:UpdateTime.of_xml)(Xml.childxml_arg0"updateTime")inletcreateTime=(Option.map~f:CreateTime.of_xml)(Xml.childxml_arg0"createTime")inletplatform=(Option.map~f:Platform.of_xml)(Xml.childxml_arg0"platform")inletrepository=(Option.map~f:Repository.of_xml)(Xml.childxml_arg0"repository")inletdescription=(Option.map~f:Description.of_xml)(Xml.childxml_arg0"description")inlettags=(Option.map~f:TagMap.of_xml)(Xml.childxml_arg0"tags")inletname=(Option.map~f:Name.of_xml)(Xml.childxml_arg0"name")inletappArn=(Option.map~f:AppArn.of_xml)(Xml.childxml_arg0"appArn")inletappId=(Option.map~f:AppId.of_xml)(Xml.childxml_arg0"appId")inmake?jobConfig?wafConfiguration?webhookCreateTime?cacheConfig?repositoryCloneMethod?autoBranchCreationConfig?autoBranchCreationPatterns?enableAutoBranchCreation?customHeaders?buildSpec?productionBranch?customRules?basicAuthCredentials?enableBasicAuth?enableBranchAutoDeletion?enableBranchAutoBuild?defaultDomain?environmentVariables?iamServiceRoleArn?computeRoleArn?updateTime?createTime?platform?repository?description?tags?name?appArn?appId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letjobConfig=field_mapjson__"jobConfig"JobConfig.of_jsoninletwafConfiguration=field_mapjson__"wafConfiguration"WafConfiguration.of_jsoninletwebhookCreateTime=field_mapjson__"webhookCreateTime"WebhookCreateTime.of_jsoninletcacheConfig=field_mapjson__"cacheConfig"CacheConfig.of_jsoninletrepositoryCloneMethod=field_mapjson__"repositoryCloneMethod"RepositoryCloneMethod.of_jsoninletautoBranchCreationConfig=field_mapjson__"autoBranchCreationConfig"AutoBranchCreationConfig.of_jsoninletautoBranchCreationPatterns=field_mapjson__"autoBranchCreationPatterns"AutoBranchCreationPatterns.of_jsoninletenableAutoBranchCreation=field_mapjson__"enableAutoBranchCreation"EnableAutoBranchCreation.of_jsoninletcustomHeaders=field_mapjson__"customHeaders"CustomHeaders.of_jsoninletbuildSpec=field_mapjson__"buildSpec"BuildSpec.of_jsoninletproductionBranch=field_mapjson__"productionBranch"ProductionBranch.of_jsoninletcustomRules=field_mapjson__"customRules"CustomRules.of_jsoninletbasicAuthCredentials=field_mapjson__"basicAuthCredentials"BasicAuthCredentials.of_jsoninletenableBasicAuth=field_mapjson__"enableBasicAuth"EnableBasicAuth.of_jsoninletenableBranchAutoDeletion=field_mapjson__"enableBranchAutoDeletion"EnableBranchAutoDeletion.of_jsoninletenableBranchAutoBuild=field_mapjson__"enableBranchAutoBuild"EnableBranchAutoBuild.of_jsoninletdefaultDomain=field_mapjson__"defaultDomain"DefaultDomain.of_jsoninletenvironmentVariables=field_mapjson__"environmentVariables"EnvironmentVariables.of_jsoninletiamServiceRoleArn=field_mapjson__"iamServiceRoleArn"ServiceRoleArn.of_jsoninletcomputeRoleArn=field_mapjson__"computeRoleArn"ComputeRoleArn.of_jsoninletupdateTime=field_mapjson__"updateTime"UpdateTime.of_jsoninletcreateTime=field_mapjson__"createTime"CreateTime.of_jsoninletplatform=field_mapjson__"platform"Platform.of_jsoninletrepository=field_mapjson__"repository"Repository.of_jsoninletdescription=field_mapjson__"description"Description.of_jsoninlettags=field_mapjson__"tags"TagMap.of_jsoninletname=field_mapjson__"name"Name.of_jsoninletappArn=field_mapjson__"appArn"AppArn.of_jsoninletappId=field_mapjson__"appId"AppId.of_jsoninmake?jobConfig?wafConfiguration?webhookCreateTime?cacheConfig?repositoryCloneMethod?autoBranchCreationConfig?autoBranchCreationPatterns?enableAutoBranchCreation?customHeaders?buildSpec?productionBranch?customRules?basicAuthCredentials?enableBasicAuth?enableBranchAutoDeletion?enableBranchAutoBuild?defaultDomain?environmentVariables?iamServiceRoleArn?computeRoleArn?updateTime?createTime?platform?repository?description?tags?name?appArn?appId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Represents the different branches of a repository for building, deploying, and hosting an Amplify app."]moduleSteps=structtypenonrect=Step.tlistletmakei=iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:Step.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:Step.of_xml)letof_jsonj=list_of_json~kind:"Steps"~of_json:Step.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleFileName=structtypenonrect=stringletcontext_="FileName"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:255)>>=(fun()->check_patterni~pattern:"(?s).*"));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"FileName"jletto_json=simple_to_jsonto_valueendmoduleUploadUrl=structtypenonrect=stringletcontext_="UploadUrl"letmakei=letopenResultinok_or_failwith(check_string_maxi~max:1000);iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"UploadUrl"jletto_json=simple_to_jsonto_valueendmoduleMD5Hash=structtypenonrect=stringletcontext_="MD5Hash"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:32)>>=(fun()->check_patterni~pattern:"(?s).*"));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"MD5Hash"jletto_json=simple_to_jsonto_valueendmoduleBadRequestException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"A request contains unexpected data."]moduleDependentServiceFailureException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"An operation failed because a dependent service threw an exception."]moduleInternalFailureException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The service failed to perform an operation due to an internal issue."]moduleNotFoundException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"An entity was not found during an operation."]moduleUnauthorizedException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"An operation failed due to a lack of access."]moduleCertificateSettings=structtypenonrect={type_:CertificateType.t[@ocaml.doc"The certificate type. Specify AMPLIFY_MANAGED to use the default certificate that Amplify provisions for you. Specify CUSTOM to use your own certificate that you have already added to Certificate Manager in your Amazon Web Services account. Make sure you request (or import) the certificate in the US East (N. Virginia) Region (us-east-1). For more information about using ACM, see Importing certificates into Certificate Manager in the ACM User guide."];customCertificateArn:CertificateArn.toption[@ocaml.doc"The Amazon resource name (ARN) for the custom certificate that you have already added to Certificate Manager in your Amazon Web Services account. This field is required only when the certificate type is CUSTOM."]}letcontext_="CertificateSettings"letmake?customCertificateArn=fun~type_->fun()->{customCertificateArn;type_}letto_valuex=structure_to_value[("type",(Some(CertificateType.to_valuex.type_)));("customCertificateArn",(Option.mapx.customCertificateArn~f:CertificateArn.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letcustomCertificateArn=(Option.map~f:CertificateArn.of_xml)(Xml.childxml_arg0"customCertificateArn")inlettype_=CertificateType.of_xml(Xml.child_exn~context:context_xml_arg0"type")inmake?customCertificateArn~type_()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letcustomCertificateArn=field_mapjson__"customCertificateArn"CertificateArn.of_jsoninlettype_=field_map_exnjson__"type"CertificateType.of_jsoninmake?customCertificateArn~type_()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The type of SSL/TLS certificate to use for your custom domain. If a certificate type isn't specified, Amplify uses the default AMPLIFY_MANAGED certificate."]moduleSubDomainSettings=structtypenonrect=SubDomainSetting.tlistletmakei=letopenResultinok_or_failwith(check_list_maxi~max:500);iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:SubDomainSetting.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:SubDomainSetting.of_xml)letof_jsonj=list_of_json~kind:"SubDomainSettings"~of_json:SubDomainSetting.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleAccessToken=structtypenonrect=stringletcontext_="AccessToken"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:255)>>=(fun()->check_patterni~pattern:"(?s).+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"AccessToken"jletto_json=simple_to_jsonto_valueendmoduleOauthToken=structtypenonrect=stringletcontext_="OauthToken"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:1000)>>=(fun()->check_patterni~pattern:"(?s).*"));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"OauthToken"jletto_json=simple_to_jsonto_valueendmoduleResourceNotFoundException=structtypenonrect={code:Code.toption;message:ErrorMessage.toption}letmake?code=fun?message->fun()->{code;message}letto_valuex=structure_to_value[("code",(Option.mapx.code~f:Code.to_value));("message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"message")inletcode=(Option.map~f:Code.of_xml)(Xml.childxml_arg0"code")inmake?message?code()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"message"ErrorMessage.of_jsoninletcode=field_mapjson__"code"Code.of_jsoninmake?message?code()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"An operation failed due to a non-existent resource."]moduleResourceArn=structtypenonrect=stringletcontext_="ResourceArn"letmakei=letopenResultinok_or_failwith((check_string_mini~min:0)>>=(fun()->(check_string_maxi~max:2048)>>=(fun()->check_patterni~pattern:"^arn:aws:amplify:.*")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"ResourceArn"jletto_json=simple_to_jsonto_valueendmoduleTagKeyList=structtypenonrect=TagKey.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:50)>>=(fun()->check_list_mini~min:1));iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:TagKey.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:TagKey.of_xml)letof_jsonj=list_of_json~kind:"TagKeyList"~of_json:TagKey.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleLimitExceededException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"A resource could not be created because service quotas were exceeded."]moduleJobReason=structtypenonrect=stringletcontext_="JobReason"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:255)>>=(fun()->check_patterni~pattern:"(?s).*"));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"JobReason"jletto_json=simple_to_jsonto_valueendmoduleNextToken=structtypenonrect=stringletcontext_="NextToken"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:2000)>>=(fun()->check_patterni~pattern:"(?s).*"));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"NextToken"jletto_json=simple_to_jsonto_valueendmoduleWebhooks=structtypenonrect=Webhook.tlistletmakei=iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:Webhook.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:Webhook.of_xml)letof_jsonj=list_of_json~kind:"Webhooks"~of_json:Webhook.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleMaxResults=structtypenonrect=intletmakei=letopenResultinok_or_failwith((check_int_maxi~max:50)>>=(fun()->check_int_mini~min:0));iletof_string=Int.of_stringletto_valuex=`Integerxletto_queryv=to_queryto_valuevletto_headerx=Int.to_stringxletof_xmlxml_arg0=Int.of_string(string_of_xml~kind:"an integer for MaxResults"xml_arg0)letof_jsonj=Int.of_float(float_of_json~kind:"an integer"j)letto_json=simple_to_jsonto_valueendmoduleJobSummaries=structtypenonrect=JobSummary.tlistletmakei=iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:JobSummary.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:JobSummary.of_xml)letof_jsonj=list_of_json~kind:"JobSummaries"~of_json:JobSummary.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleDomainAssociations=structtypenonrect=DomainAssociation.tlistletmakei=letopenResultinok_or_failwith(check_list_maxi~max:255);iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:DomainAssociation.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:DomainAssociation.of_xml)letof_jsonj=list_of_json~kind:"DomainAssociations"~of_json:DomainAssociation.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleBranches=structtypenonrect=Branch.tlistletmakei=letopenResultinok_or_failwith(check_list_maxi~max:255);iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:Branch.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:Branch.of_xml)letof_jsonj=list_of_json~kind:"Branches"~of_json:Branch.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleBackendEnvironments=structtypenonrect=BackendEnvironment.tlistletmakei=iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:BackendEnvironment.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:BackendEnvironment.of_xml)letof_jsonj=list_of_json~kind:"BackendEnvironments"~of_json:BackendEnvironment.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleArtifacts=structtypenonrect=Artifact.tlistletmakei=iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:Artifact.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:Artifact.of_xml)letof_jsonj=list_of_json~kind:"Artifacts"~of_json:Artifact.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleApps=structtypenonrect=App.tlistletmakei=iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:App.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:App.of_xml)letof_jsonj=list_of_json~kind:"Apps"~of_json:App.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleMaxResultsForListApps=structtypenonrect=intletmakei=letopenResultinok_or_failwith((check_int_maxi~max:100)>>=(fun()->check_int_mini~min:0));iletof_string=Int.of_stringletto_valuex=`Integerxletto_queryv=to_queryto_valuevletto_headerx=Int.to_stringxletof_xmlxml_arg0=Int.of_string(string_of_xml~kind:"an integer for MaxResultsForListApps"xml_arg0)letof_jsonj=Int.of_float(float_of_json~kind:"an integer"j)letto_json=simple_to_jsonto_valueendmoduleJob=structtypenonrect={summary:JobSummary.toption[@ocaml.doc"Describes the summary for an execution job for an Amplify app."];steps:Steps.toption[@ocaml.doc"The execution steps for an execution job, for an Amplify app."]}letmake?summary=fun?steps->fun()->{summary;steps}letto_valuex=structure_to_value[("summary",(Option.mapx.summary~f:JobSummary.to_value));("steps",(Option.mapx.steps~f:Steps.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letsteps=(Option.map~f:Steps.of_xml)(Xml.childxml_arg0"steps")inletsummary=(Option.map~f:JobSummary.of_xml)(Xml.childxml_arg0"summary")inmake?steps?summary()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letsteps=field_mapjson__"steps"Steps.of_jsoninletsummary=field_mapjson__"summary"JobSummary.of_jsoninmake?steps?summary()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Describes an execution job for an Amplify app."]moduleArtifactUrl=structtypenonrect=stringletcontext_="ArtifactUrl"letmakei=letopenResultinok_or_failwith(check_string_maxi~max:1000);iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"ArtifactUrl"jletto_json=simple_to_jsonto_valueendmoduleFileUploadUrls=structtypenonrect=(FileName.t*UploadUrl.t)listletmakei=iletof_headerxs=make(List.filter_mapxs~f:(fun(k,v)->(Base.String.chop_prefixk~prefix:"x-amz-meta-")|>(Option.map~f:(funchopped->((FileName.of_stringchopped),(UploadUrl.of_stringv))))))letto_valuexs=(xs|>(List.map~f:(fun(x,y)->(FileName.to_valuex)|>(funx->(UploadUrl.to_valuey)|>(funy->(x,y))))))|>(funx->`Mapx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for Map_shape objects"()letof_xml_=failwith"of_xml_converter_of_shape: Map_shape case not implemented"letof_jsonj=object_of_json~key_of_string:FileName.of_string~of_json:UploadUrl.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleFileMap=structtypenonrect=(FileName.t*MD5Hash.t)listletmakei=iletof_headerxs=make(List.filter_mapxs~f:(fun(k,v)->(Base.String.chop_prefixk~prefix:"x-amz-meta-")|>(Option.map~f:(funchopped->((FileName.of_stringchopped),(MD5Hash.of_stringv))))))letto_valuexs=(xs|>(List.map~f:(fun(x,y)->(FileName.to_valuex)|>(funx->(MD5Hash.to_valuey)|>(funy->(x,y))))))|>(funx->`Mapx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for Map_shape objects"()letof_xml_=failwith"of_xml_converter_of_shape: Map_shape case not implemented"letof_jsonj=object_of_json~key_of_string:FileName.of_string~of_json:MD5Hash.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleUpdateWebhookResult=structtypenonrect={webhook:Webhook.toption[@ocaml.doc"Describes a webhook that connects repository events to an Amplify app."]}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`DependentServiceFailureExceptionofDependentServiceFailureException.t|`InternalFailureExceptionofInternalFailureException.t|`NotFoundExceptionofNotFoundException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?webhook=fun()->{webhook}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"DependentServiceFailureException"->`DependentServiceFailureException(DependentServiceFailureException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"NotFoundException"->`NotFoundException(NotFoundException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"DependentServiceFailureException"->`DependentServiceFailureException(DependentServiceFailureException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"NotFoundException"->`NotFoundException(NotFoundException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`DependentServiceFailureExceptione->`Assoc[("error",(`String"DependentServiceFailureException"));("details",(DependentServiceFailureException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`NotFoundExceptione->`Assoc[("error",(`String"NotFoundException"));("details",(NotFoundException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("webhook",(Option.mapx.webhook~f:Webhook.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letwebhook=(Option.map~f:Webhook.of_xml)(Xml.childxml_arg0"webhook")inmake?webhook()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letwebhook=field_mapjson__"webhook"Webhook.of_jsoninmake?webhook()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The result structure for the update webhook request."]moduleUpdateWebhookRequest=structtypenonrect={webhookId:WebhookId.t[@ocaml.doc"The unique ID for a webhook."];branchName:BranchName.toption[@ocaml.doc"The name for a branch that is part of an Amplify app."];description:Description.toption[@ocaml.doc"The description for a webhook."]}letcontext_="UpdateWebhookRequest"letmake?branchName=fun?description->fun~webhookId->fun()->{branchName;description;webhookId}letto_valuex=structure_to_value[("webhookId",(Some(WebhookId.to_valuex.webhookId)));("branchName",(Option.mapx.branchName~f:BranchName.to_value));("description",(Option.mapx.description~f:Description.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letdescription=(Option.map~f:Description.of_xml)(Xml.childxml_arg0"description")inletbranchName=(Option.map~f:BranchName.of_xml)(Xml.childxml_arg0"branchName")inletwebhookId=WebhookId.of_xml(Xml.child_exn~context:context_xml_arg0"webhookId")inmake?description?branchName~webhookId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letdescription=field_mapjson__"description"Description.of_jsoninletbranchName=field_mapjson__"branchName"BranchName.of_jsoninletwebhookId=field_map_exnjson__"webhookId"WebhookId.of_jsoninmake?description?branchName~webhookId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the update webhook request."]moduleUpdateDomainAssociationResult=structtypenonrect={domainAssociation:DomainAssociation.toption[@ocaml.doc"Describes a domain association, which associates a custom domain with an Amplify app."]}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`DependentServiceFailureExceptionofDependentServiceFailureException.t|`InternalFailureExceptionofInternalFailureException.t|`NotFoundExceptionofNotFoundException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?domainAssociation=fun()->{domainAssociation}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"DependentServiceFailureException"->`DependentServiceFailureException(DependentServiceFailureException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"NotFoundException"->`NotFoundException(NotFoundException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"DependentServiceFailureException"->`DependentServiceFailureException(DependentServiceFailureException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"NotFoundException"->`NotFoundException(NotFoundException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`DependentServiceFailureExceptione->`Assoc[("error",(`String"DependentServiceFailureException"));("details",(DependentServiceFailureException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`NotFoundExceptione->`Assoc[("error",(`String"NotFoundException"));("details",(NotFoundException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("domainAssociation",(Option.mapx.domainAssociation~f:DomainAssociation.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letdomainAssociation=(Option.map~f:DomainAssociation.of_xml)(Xml.childxml_arg0"domainAssociation")inmake?domainAssociation()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letdomainAssociation=field_mapjson__"domainAssociation"DomainAssociation.of_jsoninmake?domainAssociation()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The result structure for the update domain association request."]moduleUpdateDomainAssociationRequest=structtypenonrect={appId:AppId.t[@ocaml.doc"The unique ID for an Amplify app."];domainName:DomainName.t[@ocaml.doc"The name of the domain."];enableAutoSubDomain:EnableAutoSubDomain.toption[@ocaml.doc"Enables the automated creation of subdomains for branches."];subDomainSettings:SubDomainSettings.toption[@ocaml.doc"Describes the settings for the subdomain."];autoSubDomainCreationPatterns:AutoSubDomainCreationPatterns.toption[@ocaml.doc"Sets the branch patterns for automatic subdomain creation."];autoSubDomainIAMRole:AutoSubDomainIAMRole.toption[@ocaml.doc"The required AWS Identity and Access Management (IAM) service role for the Amazon Resource Name (ARN) for automatically creating subdomains."];certificateSettings:CertificateSettings.toption[@ocaml.doc"The type of SSL/TLS certificate to use for your custom domain."]}letcontext_="UpdateDomainAssociationRequest"letmake?enableAutoSubDomain=fun?subDomainSettings->fun?autoSubDomainCreationPatterns->fun?autoSubDomainIAMRole->fun?certificateSettings->fun~appId->fun~domainName->fun()->{enableAutoSubDomain;subDomainSettings;autoSubDomainCreationPatterns;autoSubDomainIAMRole;certificateSettings;appId;domainName}letto_valuex=structure_to_value[("appId",(Some(AppId.to_valuex.appId)));("domainName",(Some(DomainName.to_valuex.domainName)));("enableAutoSubDomain",(Option.mapx.enableAutoSubDomain~f:EnableAutoSubDomain.to_value));("subDomainSettings",(Option.mapx.subDomainSettings~f:SubDomainSettings.to_value));("autoSubDomainCreationPatterns",(Option.mapx.autoSubDomainCreationPatterns~f:AutoSubDomainCreationPatterns.to_value));("autoSubDomainIAMRole",(Option.mapx.autoSubDomainIAMRole~f:AutoSubDomainIAMRole.to_value));("certificateSettings",(Option.mapx.certificateSettings~f:CertificateSettings.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letcertificateSettings=(Option.map~f:CertificateSettings.of_xml)(Xml.childxml_arg0"certificateSettings")inletautoSubDomainIAMRole=(Option.map~f:AutoSubDomainIAMRole.of_xml)(Xml.childxml_arg0"autoSubDomainIAMRole")inletautoSubDomainCreationPatterns=(Option.map~f:AutoSubDomainCreationPatterns.of_xml)(Xml.childxml_arg0"autoSubDomainCreationPatterns")inletsubDomainSettings=(Option.map~f:SubDomainSettings.of_xml)(Xml.childxml_arg0"subDomainSettings")inletenableAutoSubDomain=(Option.map~f:EnableAutoSubDomain.of_xml)(Xml.childxml_arg0"enableAutoSubDomain")inletdomainName=DomainName.of_xml(Xml.child_exn~context:context_xml_arg0"domainName")inletappId=AppId.of_xml(Xml.child_exn~context:context_xml_arg0"appId")inmake?certificateSettings?autoSubDomainIAMRole?autoSubDomainCreationPatterns?subDomainSettings?enableAutoSubDomain~domainName~appId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letcertificateSettings=field_mapjson__"certificateSettings"CertificateSettings.of_jsoninletautoSubDomainIAMRole=field_mapjson__"autoSubDomainIAMRole"AutoSubDomainIAMRole.of_jsoninletautoSubDomainCreationPatterns=field_mapjson__"autoSubDomainCreationPatterns"AutoSubDomainCreationPatterns.of_jsoninletsubDomainSettings=field_mapjson__"subDomainSettings"SubDomainSettings.of_jsoninletenableAutoSubDomain=field_mapjson__"enableAutoSubDomain"EnableAutoSubDomain.of_jsoninletdomainName=field_map_exnjson__"domainName"DomainName.of_jsoninletappId=field_map_exnjson__"appId"AppId.of_jsoninmake?certificateSettings?autoSubDomainIAMRole?autoSubDomainCreationPatterns?subDomainSettings?enableAutoSubDomain~domainName~appId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the update domain association request."]moduleUpdateBranchResult=structtypenonrect={branch:Branch.toption[@ocaml.doc"The branch for an Amplify app, which maps to a third-party repository branch."]}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`DependentServiceFailureExceptionofDependentServiceFailureException.t|`InternalFailureExceptionofInternalFailureException.t|`NotFoundExceptionofNotFoundException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?branch=fun()->{branch}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"DependentServiceFailureException"->`DependentServiceFailureException(DependentServiceFailureException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"NotFoundException"->`NotFoundException(NotFoundException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"DependentServiceFailureException"->`DependentServiceFailureException(DependentServiceFailureException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"NotFoundException"->`NotFoundException(NotFoundException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`DependentServiceFailureExceptione->`Assoc[("error",(`String"DependentServiceFailureException"));("details",(DependentServiceFailureException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`NotFoundExceptione->`Assoc[("error",(`String"NotFoundException"));("details",(NotFoundException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("branch",(Option.mapx.branch~f:Branch.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letbranch=(Option.map~f:Branch.of_xml)(Xml.childxml_arg0"branch")inmake?branch()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letbranch=field_mapjson__"branch"Branch.of_jsoninmake?branch()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The result structure for the update branch request."]moduleUpdateBranchRequest=structtypenonrect={appId:AppId.t[@ocaml.doc"The unique ID for an Amplify app."];branchName:BranchName.t[@ocaml.doc"The name of the branch."];description:Description.toption[@ocaml.doc"The description for the branch."];framework:Framework.toption[@ocaml.doc"The framework for the branch."];stage:Stage.toption[@ocaml.doc"Describes the current stage for the branch."];enableNotification:EnableNotification.toption[@ocaml.doc"Enables notifications for the branch."];enableAutoBuild:EnableAutoBuild.toption[@ocaml.doc"Enables auto building for the branch."];enableSkewProtection:EnableSkewProtection.toption[@ocaml.doc"Specifies whether the skew protection feature is enabled for the branch. Deployment skew protection is available to Amplify applications to eliminate version skew issues between client and servers in web applications. When you apply skew protection to a branch, you can ensure that your clients always interact with the correct version of server-side assets, regardless of when a deployment occurs. For more information about skew protection, see Skew protection for Amplify deployments in the Amplify User Guide."];environmentVariables:EnvironmentVariables.toption[@ocaml.doc"The environment variables for the branch."];basicAuthCredentials:BasicAuthCredentials.toption[@ocaml.doc"The basic authorization credentials for the branch. You must base64-encode the authorization credentials and provide them in the format user:password."];enableBasicAuth:EnableBasicAuth.toption[@ocaml.doc"Enables basic authorization for the branch."];enablePerformanceMode:EnablePerformanceMode.toption[@ocaml.doc"Enables performance mode for the branch. Performance mode optimizes for faster hosting performance by keeping content cached at the edge for a longer interval. When performance mode is enabled, hosting configuration or code changes can take up to 10 minutes to roll out."];buildSpec:BuildSpec.toption[@ocaml.doc"The build specification (build spec) for the branch."];ttl:TTL.toption[@ocaml.doc"The content Time to Live (TTL) for the website in seconds."];displayName:DisplayName.toption[@ocaml.doc"The display name for a branch. This is used as the default domain prefix."];enablePullRequestPreview:EnablePullRequestPreview.toption[@ocaml.doc"Enables pull request previews for this branch."];pullRequestEnvironmentName:PullRequestEnvironmentName.toption[@ocaml.doc"The Amplify environment name for the pull request."];backendEnvironmentArn:BackendEnvironmentArn.toption[@ocaml.doc"The Amazon Resource Name (ARN) for a backend environment that is part of a Gen 1 Amplify app. This field is available to Amplify Gen 1 apps only where the backend is created using Amplify Studio or the Amplify command line interface (CLI)."];backend:Backend.toption[@ocaml.doc"The backend for a Branch of an Amplify app. Use for a backend created from an CloudFormation stack. This field is available to Amplify Gen 2 apps only. When you deploy an application with Amplify Gen 2, you provision the app's backend infrastructure using Typescript code."];computeRoleArn:ComputeRoleArn.toption[@ocaml.doc"The Amazon Resource Name (ARN) of the IAM role to assign to a branch of an SSR app. The SSR Compute role allows the Amplify Hosting compute service to securely access specific Amazon Web Services resources based on the role's permissions. For more information about the SSR Compute role, see Adding an SSR Compute role in the Amplify User Guide."]}letcontext_="UpdateBranchRequest"letmake?description=fun?framework->fun?stage->fun?enableNotification->fun?enableAutoBuild->fun?enableSkewProtection->fun?environmentVariables->fun?basicAuthCredentials->fun?enableBasicAuth->fun?enablePerformanceMode->fun?buildSpec->fun?ttl->fun?displayName->fun?enablePullRequestPreview->fun?pullRequestEnvironmentName->fun?backendEnvironmentArn->fun?backend->fun?computeRoleArn->fun~appId->fun~branchName->fun()->{description;framework;stage;enableNotification;enableAutoBuild;enableSkewProtection;environmentVariables;basicAuthCredentials;enableBasicAuth;enablePerformanceMode;buildSpec;ttl;displayName;enablePullRequestPreview;pullRequestEnvironmentName;backendEnvironmentArn;backend;computeRoleArn;appId;branchName}letto_valuex=structure_to_value[("appId",(Some(AppId.to_valuex.appId)));("branchName",(Some(BranchName.to_valuex.branchName)));("description",(Option.mapx.description~f:Description.to_value));("framework",(Option.mapx.framework~f:Framework.to_value));("stage",(Option.mapx.stage~f:Stage.to_value));("enableNotification",(Option.mapx.enableNotification~f:EnableNotification.to_value));("enableAutoBuild",(Option.mapx.enableAutoBuild~f:EnableAutoBuild.to_value));("enableSkewProtection",(Option.mapx.enableSkewProtection~f:EnableSkewProtection.to_value));("environmentVariables",(Option.mapx.environmentVariables~f:EnvironmentVariables.to_value));("basicAuthCredentials",(Option.mapx.basicAuthCredentials~f:BasicAuthCredentials.to_value));("enableBasicAuth",(Option.mapx.enableBasicAuth~f:EnableBasicAuth.to_value));("enablePerformanceMode",(Option.mapx.enablePerformanceMode~f:EnablePerformanceMode.to_value));("buildSpec",(Option.mapx.buildSpec~f:BuildSpec.to_value));("ttl",(Option.mapx.ttl~f:TTL.to_value));("displayName",(Option.mapx.displayName~f:DisplayName.to_value));("enablePullRequestPreview",(Option.mapx.enablePullRequestPreview~f:EnablePullRequestPreview.to_value));("pullRequestEnvironmentName",(Option.mapx.pullRequestEnvironmentName~f:PullRequestEnvironmentName.to_value));("backendEnvironmentArn",(Option.mapx.backendEnvironmentArn~f:BackendEnvironmentArn.to_value));("backend",(Option.mapx.backend~f:Backend.to_value));("computeRoleArn",(Option.mapx.computeRoleArn~f:ComputeRoleArn.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letcomputeRoleArn=(Option.map~f:ComputeRoleArn.of_xml)(Xml.childxml_arg0"computeRoleArn")inletbackend=(Option.map~f:Backend.of_xml)(Xml.childxml_arg0"backend")inletbackendEnvironmentArn=(Option.map~f:BackendEnvironmentArn.of_xml)(Xml.childxml_arg0"backendEnvironmentArn")inletpullRequestEnvironmentName=(Option.map~f:PullRequestEnvironmentName.of_xml)(Xml.childxml_arg0"pullRequestEnvironmentName")inletenablePullRequestPreview=(Option.map~f:EnablePullRequestPreview.of_xml)(Xml.childxml_arg0"enablePullRequestPreview")inletdisplayName=(Option.map~f:DisplayName.of_xml)(Xml.childxml_arg0"displayName")inletttl=(Option.map~f:TTL.of_xml)(Xml.childxml_arg0"ttl")inletbuildSpec=(Option.map~f:BuildSpec.of_xml)(Xml.childxml_arg0"buildSpec")inletenablePerformanceMode=(Option.map~f:EnablePerformanceMode.of_xml)(Xml.childxml_arg0"enablePerformanceMode")inletenableBasicAuth=(Option.map~f:EnableBasicAuth.of_xml)(Xml.childxml_arg0"enableBasicAuth")inletbasicAuthCredentials=(Option.map~f:BasicAuthCredentials.of_xml)(Xml.childxml_arg0"basicAuthCredentials")inletenvironmentVariables=(Option.map~f:EnvironmentVariables.of_xml)(Xml.childxml_arg0"environmentVariables")inletenableSkewProtection=(Option.map~f:EnableSkewProtection.of_xml)(Xml.childxml_arg0"enableSkewProtection")inletenableAutoBuild=(Option.map~f:EnableAutoBuild.of_xml)(Xml.childxml_arg0"enableAutoBuild")inletenableNotification=(Option.map~f:EnableNotification.of_xml)(Xml.childxml_arg0"enableNotification")inletstage=(Option.map~f:Stage.of_xml)(Xml.childxml_arg0"stage")inletframework=(Option.map~f:Framework.of_xml)(Xml.childxml_arg0"framework")inletdescription=(Option.map~f:Description.of_xml)(Xml.childxml_arg0"description")inletbranchName=BranchName.of_xml(Xml.child_exn~context:context_xml_arg0"branchName")inletappId=AppId.of_xml(Xml.child_exn~context:context_xml_arg0"appId")inmake?computeRoleArn?backend?backendEnvironmentArn?pullRequestEnvironmentName?enablePullRequestPreview?displayName?ttl?buildSpec?enablePerformanceMode?enableBasicAuth?basicAuthCredentials?environmentVariables?enableSkewProtection?enableAutoBuild?enableNotification?stage?framework?description~branchName~appId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letcomputeRoleArn=field_mapjson__"computeRoleArn"ComputeRoleArn.of_jsoninletbackend=field_mapjson__"backend"Backend.of_jsoninletbackendEnvironmentArn=field_mapjson__"backendEnvironmentArn"BackendEnvironmentArn.of_jsoninletpullRequestEnvironmentName=field_mapjson__"pullRequestEnvironmentName"PullRequestEnvironmentName.of_jsoninletenablePullRequestPreview=field_mapjson__"enablePullRequestPreview"EnablePullRequestPreview.of_jsoninletdisplayName=field_mapjson__"displayName"DisplayName.of_jsoninletttl=field_mapjson__"ttl"TTL.of_jsoninletbuildSpec=field_mapjson__"buildSpec"BuildSpec.of_jsoninletenablePerformanceMode=field_mapjson__"enablePerformanceMode"EnablePerformanceMode.of_jsoninletenableBasicAuth=field_mapjson__"enableBasicAuth"EnableBasicAuth.of_jsoninletbasicAuthCredentials=field_mapjson__"basicAuthCredentials"BasicAuthCredentials.of_jsoninletenvironmentVariables=field_mapjson__"environmentVariables"EnvironmentVariables.of_jsoninletenableSkewProtection=field_mapjson__"enableSkewProtection"EnableSkewProtection.of_jsoninletenableAutoBuild=field_mapjson__"enableAutoBuild"EnableAutoBuild.of_jsoninletenableNotification=field_mapjson__"enableNotification"EnableNotification.of_jsoninletstage=field_mapjson__"stage"Stage.of_jsoninletframework=field_mapjson__"framework"Framework.of_jsoninletdescription=field_mapjson__"description"Description.of_jsoninletbranchName=field_map_exnjson__"branchName"BranchName.of_jsoninletappId=field_map_exnjson__"appId"AppId.of_jsoninmake?computeRoleArn?backend?backendEnvironmentArn?pullRequestEnvironmentName?enablePullRequestPreview?displayName?ttl?buildSpec?enablePerformanceMode?enableBasicAuth?basicAuthCredentials?environmentVariables?enableSkewProtection?enableAutoBuild?enableNotification?stage?framework?description~branchName~appId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the update branch request."]moduleUpdateAppResult=structtypenonrect={app:App.toption[@ocaml.doc"Represents the updated Amplify app."]}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`InternalFailureExceptionofInternalFailureException.t|`NotFoundExceptionofNotFoundException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?app=fun()->{app}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"NotFoundException"->`NotFoundException(NotFoundException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"NotFoundException"->`NotFoundException(NotFoundException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`NotFoundExceptione->`Assoc[("error",(`String"NotFoundException"));("details",(NotFoundException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("app",(Option.mapx.app~f:App.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letapp=(Option.map~f:App.of_xml)(Xml.childxml_arg0"app")inmake?app()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letapp=field_mapjson__"app"App.of_jsoninmake?app()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The result structure for an Amplify app update request."]moduleUpdateAppRequest=structtypenonrect={appId:AppId.t[@ocaml.doc"The unique ID for an Amplify app."];name:Name.toption[@ocaml.doc"The name for an Amplify app."];description:Description.toption[@ocaml.doc"The description for an Amplify app."];platform:Platform.toption[@ocaml.doc"The platform for the Amplify app. For a static app, set the platform type to WEB. For a dynamic server-side rendered (SSR) app, set the platform type to WEB_COMPUTE. For an app requiring Amplify Hosting's original SSR support only, set the platform type to WEB_DYNAMIC. If you are deploying an SSG only app with Next.js version 14 or later, you must set the platform type to WEB_COMPUTE."];computeRoleArn:ComputeRoleArn.toption[@ocaml.doc"The Amazon Resource Name (ARN) of the IAM role to assign to an SSR app. The SSR Compute role allows the Amplify Hosting compute service to securely access specific Amazon Web Services resources based on the role's permissions. For more information about the SSR Compute role, see Adding an SSR Compute role in the Amplify User Guide."];iamServiceRoleArn:ServiceRoleArn.toption[@ocaml.doc"The Amazon Resource Name (ARN) of the IAM service role for the Amplify app."];environmentVariables:EnvironmentVariables.toption[@ocaml.doc"The environment variables for an Amplify app."];enableBranchAutoBuild:EnableAutoBuild.toption[@ocaml.doc"Enables branch auto-building for an Amplify app."];enableBranchAutoDeletion:EnableBranchAutoDeletion.toption[@ocaml.doc"Automatically disconnects a branch in the Amplify console when you delete a branch from your Git repository."];enableBasicAuth:EnableBasicAuth.toption[@ocaml.doc"Enables basic authorization for an Amplify app."];basicAuthCredentials:BasicAuthCredentials.toption[@ocaml.doc"The basic authorization credentials for an Amplify app. You must base64-encode the authorization credentials and provide them in the format user:password."];customRules:CustomRules.toption[@ocaml.doc"The custom redirect and rewrite rules for an Amplify app."];buildSpec:BuildSpec.toption[@ocaml.doc"The build specification (build spec) for an Amplify app."];customHeaders:CustomHeaders.toption[@ocaml.doc"The custom HTTP headers for an Amplify app."];enableAutoBranchCreation:EnableAutoBranchCreation.toption[@ocaml.doc"Enables automated branch creation for an Amplify app."];autoBranchCreationPatterns:AutoBranchCreationPatterns.toption[@ocaml.doc"Describes the automated branch creation glob patterns for an Amplify app."];autoBranchCreationConfig:AutoBranchCreationConfig.toption[@ocaml.doc"The automated branch creation configuration for an Amplify app."];repository:Repository.toption[@ocaml.doc"The name of the Git repository for an Amplify app."];oauthToken:OauthToken.toption[@ocaml.doc"The OAuth token for a third-party source control system for an Amplify app. The OAuth token is used to create a webhook and a read-only deploy key using SSH cloning. The OAuth token is not stored. Use oauthToken for repository providers other than GitHub, such as Bitbucket or CodeCommit. To authorize access to GitHub as your repository provider, use accessToken. You must specify either oauthToken or accessToken when you update an app. Existing Amplify apps deployed from a GitHub repository using OAuth continue to work with CI/CD. However, we strongly recommend that you migrate these apps to use the GitHub App. For more information, see Migrating an existing OAuth app to the Amplify GitHub App in the Amplify User Guide ."];accessToken:AccessToken.toption[@ocaml.doc"The personal access token for a GitHub repository for an Amplify app. The personal access token is used to authorize access to a GitHub repository using the Amplify GitHub App. The token is not stored. Use accessToken for GitHub repositories only. To authorize access to a repository provider such as Bitbucket or CodeCommit, use oauthToken. You must specify either accessToken or oauthToken when you update an app. Existing Amplify apps deployed from a GitHub repository using OAuth continue to work with CI/CD. However, we strongly recommend that you migrate these apps to use the GitHub App. For more information, see Migrating an existing OAuth app to the Amplify GitHub App in the Amplify User Guide ."];jobConfig:JobConfig.toption[@ocaml.doc"Describes the configuration details that apply to the jobs for an Amplify app."];cacheConfig:CacheConfig.toption[@ocaml.doc"The cache configuration for the Amplify app."]}letcontext_="UpdateAppRequest"letmake?name=fun?description->fun?platform->fun?computeRoleArn->fun?iamServiceRoleArn->fun?environmentVariables->fun?enableBranchAutoBuild->fun?enableBranchAutoDeletion->fun?enableBasicAuth->fun?basicAuthCredentials->fun?customRules->fun?buildSpec->fun?customHeaders->fun?enableAutoBranchCreation->fun?autoBranchCreationPatterns->fun?autoBranchCreationConfig->fun?repository->fun?oauthToken->fun?accessToken->fun?jobConfig->fun?cacheConfig->fun~appId->fun()->{name;description;platform;computeRoleArn;iamServiceRoleArn;environmentVariables;enableBranchAutoBuild;enableBranchAutoDeletion;enableBasicAuth;basicAuthCredentials;customRules;buildSpec;customHeaders;enableAutoBranchCreation;autoBranchCreationPatterns;autoBranchCreationConfig;repository;oauthToken;accessToken;jobConfig;cacheConfig;appId}letto_valuex=structure_to_value[("appId",(Some(AppId.to_valuex.appId)));("name",(Option.mapx.name~f:Name.to_value));("description",(Option.mapx.description~f:Description.to_value));("platform",(Option.mapx.platform~f:Platform.to_value));("computeRoleArn",(Option.mapx.computeRoleArn~f:ComputeRoleArn.to_value));("iamServiceRoleArn",(Option.mapx.iamServiceRoleArn~f:ServiceRoleArn.to_value));("environmentVariables",(Option.mapx.environmentVariables~f:EnvironmentVariables.to_value));("enableBranchAutoBuild",(Option.mapx.enableBranchAutoBuild~f:EnableAutoBuild.to_value));("enableBranchAutoDeletion",(Option.mapx.enableBranchAutoDeletion~f:EnableBranchAutoDeletion.to_value));("enableBasicAuth",(Option.mapx.enableBasicAuth~f:EnableBasicAuth.to_value));("basicAuthCredentials",(Option.mapx.basicAuthCredentials~f:BasicAuthCredentials.to_value));("customRules",(Option.mapx.customRules~f:CustomRules.to_value));("buildSpec",(Option.mapx.buildSpec~f:BuildSpec.to_value));("customHeaders",(Option.mapx.customHeaders~f:CustomHeaders.to_value));("enableAutoBranchCreation",(Option.mapx.enableAutoBranchCreation~f:EnableAutoBranchCreation.to_value));("autoBranchCreationPatterns",(Option.mapx.autoBranchCreationPatterns~f:AutoBranchCreationPatterns.to_value));("autoBranchCreationConfig",(Option.mapx.autoBranchCreationConfig~f:AutoBranchCreationConfig.to_value));("repository",(Option.mapx.repository~f:Repository.to_value));("oauthToken",(Option.mapx.oauthToken~f:OauthToken.to_value));("accessToken",(Option.mapx.accessToken~f:AccessToken.to_value));("jobConfig",(Option.mapx.jobConfig~f:JobConfig.to_value));("cacheConfig",(Option.mapx.cacheConfig~f:CacheConfig.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letcacheConfig=(Option.map~f:CacheConfig.of_xml)(Xml.childxml_arg0"cacheConfig")inletjobConfig=(Option.map~f:JobConfig.of_xml)(Xml.childxml_arg0"jobConfig")inletaccessToken=(Option.map~f:AccessToken.of_xml)(Xml.childxml_arg0"accessToken")inletoauthToken=(Option.map~f:OauthToken.of_xml)(Xml.childxml_arg0"oauthToken")inletrepository=(Option.map~f:Repository.of_xml)(Xml.childxml_arg0"repository")inletautoBranchCreationConfig=(Option.map~f:AutoBranchCreationConfig.of_xml)(Xml.childxml_arg0"autoBranchCreationConfig")inletautoBranchCreationPatterns=(Option.map~f:AutoBranchCreationPatterns.of_xml)(Xml.childxml_arg0"autoBranchCreationPatterns")inletenableAutoBranchCreation=(Option.map~f:EnableAutoBranchCreation.of_xml)(Xml.childxml_arg0"enableAutoBranchCreation")inletcustomHeaders=(Option.map~f:CustomHeaders.of_xml)(Xml.childxml_arg0"customHeaders")inletbuildSpec=(Option.map~f:BuildSpec.of_xml)(Xml.childxml_arg0"buildSpec")inletcustomRules=(Option.map~f:CustomRules.of_xml)(Xml.childxml_arg0"customRules")inletbasicAuthCredentials=(Option.map~f:BasicAuthCredentials.of_xml)(Xml.childxml_arg0"basicAuthCredentials")inletenableBasicAuth=(Option.map~f:EnableBasicAuth.of_xml)(Xml.childxml_arg0"enableBasicAuth")inletenableBranchAutoDeletion=(Option.map~f:EnableBranchAutoDeletion.of_xml)(Xml.childxml_arg0"enableBranchAutoDeletion")inletenableBranchAutoBuild=(Option.map~f:EnableAutoBuild.of_xml)(Xml.childxml_arg0"enableBranchAutoBuild")inletenvironmentVariables=(Option.map~f:EnvironmentVariables.of_xml)(Xml.childxml_arg0"environmentVariables")inletiamServiceRoleArn=(Option.map~f:ServiceRoleArn.of_xml)(Xml.childxml_arg0"iamServiceRoleArn")inletcomputeRoleArn=(Option.map~f:ComputeRoleArn.of_xml)(Xml.childxml_arg0"computeRoleArn")inletplatform=(Option.map~f:Platform.of_xml)(Xml.childxml_arg0"platform")inletdescription=(Option.map~f:Description.of_xml)(Xml.childxml_arg0"description")inletname=(Option.map~f:Name.of_xml)(Xml.childxml_arg0"name")inletappId=AppId.of_xml(Xml.child_exn~context:context_xml_arg0"appId")inmake?cacheConfig?jobConfig?accessToken?oauthToken?repository?autoBranchCreationConfig?autoBranchCreationPatterns?enableAutoBranchCreation?customHeaders?buildSpec?customRules?basicAuthCredentials?enableBasicAuth?enableBranchAutoDeletion?enableBranchAutoBuild?environmentVariables?iamServiceRoleArn?computeRoleArn?platform?description?name~appId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letcacheConfig=field_mapjson__"cacheConfig"CacheConfig.of_jsoninletjobConfig=field_mapjson__"jobConfig"JobConfig.of_jsoninletaccessToken=field_mapjson__"accessToken"AccessToken.of_jsoninletoauthToken=field_mapjson__"oauthToken"OauthToken.of_jsoninletrepository=field_mapjson__"repository"Repository.of_jsoninletautoBranchCreationConfig=field_mapjson__"autoBranchCreationConfig"AutoBranchCreationConfig.of_jsoninletautoBranchCreationPatterns=field_mapjson__"autoBranchCreationPatterns"AutoBranchCreationPatterns.of_jsoninletenableAutoBranchCreation=field_mapjson__"enableAutoBranchCreation"EnableAutoBranchCreation.of_jsoninletcustomHeaders=field_mapjson__"customHeaders"CustomHeaders.of_jsoninletbuildSpec=field_mapjson__"buildSpec"BuildSpec.of_jsoninletcustomRules=field_mapjson__"customRules"CustomRules.of_jsoninletbasicAuthCredentials=field_mapjson__"basicAuthCredentials"BasicAuthCredentials.of_jsoninletenableBasicAuth=field_mapjson__"enableBasicAuth"EnableBasicAuth.of_jsoninletenableBranchAutoDeletion=field_mapjson__"enableBranchAutoDeletion"EnableBranchAutoDeletion.of_jsoninletenableBranchAutoBuild=field_mapjson__"enableBranchAutoBuild"EnableAutoBuild.of_jsoninletenvironmentVariables=field_mapjson__"environmentVariables"EnvironmentVariables.of_jsoninletiamServiceRoleArn=field_mapjson__"iamServiceRoleArn"ServiceRoleArn.of_jsoninletcomputeRoleArn=field_mapjson__"computeRoleArn"ComputeRoleArn.of_jsoninletplatform=field_mapjson__"platform"Platform.of_jsoninletdescription=field_mapjson__"description"Description.of_jsoninletname=field_mapjson__"name"Name.of_jsoninletappId=field_map_exnjson__"appId"AppId.of_jsoninmake?cacheConfig?jobConfig?accessToken?oauthToken?repository?autoBranchCreationConfig?autoBranchCreationPatterns?enableAutoBranchCreation?customHeaders?buildSpec?customRules?basicAuthCredentials?enableBasicAuth?enableBranchAutoDeletion?enableBranchAutoBuild?environmentVariables?iamServiceRoleArn?computeRoleArn?platform?description?name~appId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the update app request."]moduleUntagResourceResponse=structtypenonrect=unittypenonrecerror=[`BadRequestExceptionofBadRequestException.t|`InternalFailureExceptionofInternalFailureException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`Unknown_operation_errorof(string*stringoption)]letmake()=()leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letof_header_and_body=((fun(xs,pipe)->make())[@warning"-27"])letto_value_=`Structure[]letto_queryv=to_queryto_valuevletof_xml_=make()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_json_=make()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The response for the untag resource request."]moduleUntagResourceRequest=structtypenonrect={resourceArn:ResourceArn.t[@ocaml.doc"The Amazon Resource Name (ARN) to use to untag a resource."];tagKeys:TagKeyList.t[@ocaml.doc"The tag keys to use to untag a resource."]}letcontext_="UntagResourceRequest"letmake~resourceArn=fun~tagKeys->fun()->{resourceArn;tagKeys}letto_valuex=structure_to_value[("resourceArn",(Some(ResourceArn.to_valuex.resourceArn)));("tagKeys",(Some(TagKeyList.to_valuex.tagKeys)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=lettagKeys=TagKeyList.of_xml(Xml.child_exn~context:context_xml_arg0"tagKeys")inletresourceArn=ResourceArn.of_xml(Xml.child_exn~context:context_xml_arg0"resourceArn")inmake~tagKeys~resourceArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=lettagKeys=field_map_exnjson__"tagKeys"TagKeyList.of_jsoninletresourceArn=field_map_exnjson__"resourceArn"ResourceArn.of_jsoninmake~tagKeys~resourceArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the untag resource request."]moduleTagResourceResponse=structtypenonrect=unittypenonrecerror=[`BadRequestExceptionofBadRequestException.t|`InternalFailureExceptionofInternalFailureException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`Unknown_operation_errorof(string*stringoption)]letmake()=()leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letof_header_and_body=((fun(xs,pipe)->make())[@warning"-27"])letto_value_=`Structure[]letto_queryv=to_queryto_valuevletof_xml_=make()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_json_=make()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The response for the tag resource request."]moduleTagResourceRequest=structtypenonrect={resourceArn:ResourceArn.t[@ocaml.doc"The Amazon Resource Name (ARN) to use to tag a resource."];tags:TagMap.t[@ocaml.doc"The tags used to tag the resource."]}letcontext_="TagResourceRequest"letmake~resourceArn=fun~tags->fun()->{resourceArn;tags}letto_valuex=structure_to_value[("resourceArn",(Some(ResourceArn.to_valuex.resourceArn)));("tags",(Some(TagMap.to_valuex.tags)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=lettags=TagMap.of_xml(Xml.child_exn~context:context_xml_arg0"tags")inletresourceArn=ResourceArn.of_xml(Xml.child_exn~context:context_xml_arg0"resourceArn")inmake~tags~resourceArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=lettags=field_map_exnjson__"tags"TagMap.of_jsoninletresourceArn=field_map_exnjson__"resourceArn"ResourceArn.of_jsoninmake~tags~resourceArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure to tag a resource with a tag key and value."]moduleStopJobResult=structtypenonrect={jobSummary:JobSummary.toption[@ocaml.doc"The summary for the job."]}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`InternalFailureExceptionofInternalFailureException.t|`LimitExceededExceptionofLimitExceededException.t|`NotFoundExceptionofNotFoundException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?jobSummary=fun()->{jobSummary}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_jsonjson)|"NotFoundException"->`NotFoundException(NotFoundException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_xmlxml)|"NotFoundException"->`NotFoundException(NotFoundException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`LimitExceededExceptione->`Assoc[("error",(`String"LimitExceededException"));("details",(LimitExceededException.to_jsone))]|`NotFoundExceptione->`Assoc[("error",(`String"NotFoundException"));("details",(NotFoundException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("jobSummary",(Option.mapx.jobSummary~f:JobSummary.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letjobSummary=(Option.map~f:JobSummary.of_xml)(Xml.childxml_arg0"jobSummary")inmake?jobSummary()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letjobSummary=field_mapjson__"jobSummary"JobSummary.of_jsoninmake?jobSummary()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The result structure for the stop job request."]moduleStopJobRequest=structtypenonrect={appId:AppId.t[@ocaml.doc"The unique ID for an Amplify app."];branchName:BranchName.t[@ocaml.doc"The name of the branch to use for the stop job request."];jobId:JobId.t[@ocaml.doc"The unique id for the job."]}letcontext_="StopJobRequest"letmake~appId=fun~branchName->fun~jobId->fun()->{appId;branchName;jobId}letto_valuex=structure_to_value[("appId",(Some(AppId.to_valuex.appId)));("branchName",(Some(BranchName.to_valuex.branchName)));("jobId",(Some(JobId.to_valuex.jobId)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letjobId=JobId.of_xml(Xml.child_exn~context:context_xml_arg0"jobId")inletbranchName=BranchName.of_xml(Xml.child_exn~context:context_xml_arg0"branchName")inletappId=AppId.of_xml(Xml.child_exn~context:context_xml_arg0"appId")inmake~jobId~branchName~appId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letjobId=field_map_exnjson__"jobId"JobId.of_jsoninletbranchName=field_map_exnjson__"branchName"BranchName.of_jsoninletappId=field_map_exnjson__"appId"AppId.of_jsoninmake~jobId~branchName~appId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the stop job request."]moduleStartJobResult=structtypenonrect={jobSummary:JobSummary.toption[@ocaml.doc"The summary for the job."]}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`InternalFailureExceptionofInternalFailureException.t|`LimitExceededExceptionofLimitExceededException.t|`NotFoundExceptionofNotFoundException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?jobSummary=fun()->{jobSummary}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_jsonjson)|"NotFoundException"->`NotFoundException(NotFoundException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_xmlxml)|"NotFoundException"->`NotFoundException(NotFoundException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`LimitExceededExceptione->`Assoc[("error",(`String"LimitExceededException"));("details",(LimitExceededException.to_jsone))]|`NotFoundExceptione->`Assoc[("error",(`String"NotFoundException"));("details",(NotFoundException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("jobSummary",(Option.mapx.jobSummary~f:JobSummary.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letjobSummary=(Option.map~f:JobSummary.of_xml)(Xml.childxml_arg0"jobSummary")inmake?jobSummary()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letjobSummary=field_mapjson__"jobSummary"JobSummary.of_jsoninmake?jobSummary()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The result structure for the run job request."]moduleStartJobRequest=structtypenonrect={appId:AppId.t[@ocaml.doc"The unique ID for an Amplify app."];branchName:BranchName.t[@ocaml.doc"The name of the branch to use for the job."];jobId:JobId.toption[@ocaml.doc"The unique ID for an existing job. This is required if the value of jobType is RETRY."];jobType:JobType.t[@ocaml.doc"Describes the type for the job. The job type RELEASE starts a new job with the latest change from the specified branch. This value is available only for apps that are connected to a repository. The job type RETRY retries an existing job. If the job type value is RETRY, the jobId is also required."];jobReason:JobReason.toption[@ocaml.doc"A descriptive reason for starting the job."];commitId:CommitId.toption[@ocaml.doc"The commit ID from a third-party repository provider for the job."];commitMessage:CommitMessage.toption[@ocaml.doc"The commit message from a third-party repository provider for the job."];commitTime:CommitTime.toption[@ocaml.doc"The commit date and time for the job."]}letcontext_="StartJobRequest"letmake?jobId=fun?jobReason->fun?commitId->fun?commitMessage->fun?commitTime->fun~appId->fun~branchName->fun~jobType->fun()->{jobId;jobReason;commitId;commitMessage;commitTime;appId;branchName;jobType}letto_valuex=structure_to_value[("appId",(Some(AppId.to_valuex.appId)));("branchName",(Some(BranchName.to_valuex.branchName)));("jobId",(Option.mapx.jobId~f:JobId.to_value));("jobType",(Some(JobType.to_valuex.jobType)));("jobReason",(Option.mapx.jobReason~f:JobReason.to_value));("commitId",(Option.mapx.commitId~f:CommitId.to_value));("commitMessage",(Option.mapx.commitMessage~f:CommitMessage.to_value));("commitTime",(Option.mapx.commitTime~f:CommitTime.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letcommitTime=(Option.map~f:CommitTime.of_xml)(Xml.childxml_arg0"commitTime")inletcommitMessage=(Option.map~f:CommitMessage.of_xml)(Xml.childxml_arg0"commitMessage")inletcommitId=(Option.map~f:CommitId.of_xml)(Xml.childxml_arg0"commitId")inletjobReason=(Option.map~f:JobReason.of_xml)(Xml.childxml_arg0"jobReason")inletjobType=JobType.of_xml(Xml.child_exn~context:context_xml_arg0"jobType")inletjobId=(Option.map~f:JobId.of_xml)(Xml.childxml_arg0"jobId")inletbranchName=BranchName.of_xml(Xml.child_exn~context:context_xml_arg0"branchName")inletappId=AppId.of_xml(Xml.child_exn~context:context_xml_arg0"appId")inmake?commitTime?commitMessage?commitId?jobReason~jobType?jobId~branchName~appId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letcommitTime=field_mapjson__"commitTime"CommitTime.of_jsoninletcommitMessage=field_mapjson__"commitMessage"CommitMessage.of_jsoninletcommitId=field_mapjson__"commitId"CommitId.of_jsoninletjobReason=field_mapjson__"jobReason"JobReason.of_jsoninletjobType=field_map_exnjson__"jobType"JobType.of_jsoninletjobId=field_mapjson__"jobId"JobId.of_jsoninletbranchName=field_map_exnjson__"branchName"BranchName.of_jsoninletappId=field_map_exnjson__"appId"AppId.of_jsoninmake?commitTime?commitMessage?commitId?jobReason~jobType?jobId~branchName~appId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the start job request."]moduleStartDeploymentResult=structtypenonrect={jobSummary:JobSummary.toption[@ocaml.doc"The summary for the job."]}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`InternalFailureExceptionofInternalFailureException.t|`LimitExceededExceptionofLimitExceededException.t|`NotFoundExceptionofNotFoundException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?jobSummary=fun()->{jobSummary}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_jsonjson)|"NotFoundException"->`NotFoundException(NotFoundException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_xmlxml)|"NotFoundException"->`NotFoundException(NotFoundException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`LimitExceededExceptione->`Assoc[("error",(`String"LimitExceededException"));("details",(LimitExceededException.to_jsone))]|`NotFoundExceptione->`Assoc[("error",(`String"NotFoundException"));("details",(NotFoundException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("jobSummary",(Option.mapx.jobSummary~f:JobSummary.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letjobSummary=(Option.map~f:JobSummary.of_xml)(Xml.childxml_arg0"jobSummary")inmake?jobSummary()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letjobSummary=field_mapjson__"jobSummary"JobSummary.of_jsoninmake?jobSummary()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The result structure for the start a deployment request."]moduleStartDeploymentRequest=structtypenonrect={appId:AppId.t[@ocaml.doc"The unique ID for an Amplify app."];branchName:BranchName.t[@ocaml.doc"The name of the branch to use for the deployment job."];jobId:JobId.toption[@ocaml.doc"The job ID for this deployment that is generated by the CreateDeployment request."];sourceUrl:SourceUrl.toption[@ocaml.doc"The source URL for the deployment that is used when calling StartDeployment without CreateDeployment. The source URL can be either an HTTP GET URL that is publicly accessible and downloads a single .zip file, or an Amazon S3 bucket and prefix."];sourceUrlType:SourceUrlType.toption[@ocaml.doc"The type of source specified by the sourceURL. If the value is ZIP, the source is a .zip file. If the value is BUCKET_PREFIX, the source is an Amazon S3 bucket and prefix. If no value is specified, the default is ZIP."]}letcontext_="StartDeploymentRequest"letmake?jobId=fun?sourceUrl->fun?sourceUrlType->fun~appId->fun~branchName->fun()->{jobId;sourceUrl;sourceUrlType;appId;branchName}letto_valuex=structure_to_value[("appId",(Some(AppId.to_valuex.appId)));("branchName",(Some(BranchName.to_valuex.branchName)));("jobId",(Option.mapx.jobId~f:JobId.to_value));("sourceUrl",(Option.mapx.sourceUrl~f:SourceUrl.to_value));("sourceUrlType",(Option.mapx.sourceUrlType~f:SourceUrlType.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letsourceUrlType=(Option.map~f:SourceUrlType.of_xml)(Xml.childxml_arg0"sourceUrlType")inletsourceUrl=(Option.map~f:SourceUrl.of_xml)(Xml.childxml_arg0"sourceUrl")inletjobId=(Option.map~f:JobId.of_xml)(Xml.childxml_arg0"jobId")inletbranchName=BranchName.of_xml(Xml.child_exn~context:context_xml_arg0"branchName")inletappId=AppId.of_xml(Xml.child_exn~context:context_xml_arg0"appId")inmake?sourceUrlType?sourceUrl?jobId~branchName~appId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letsourceUrlType=field_mapjson__"sourceUrlType"SourceUrlType.of_jsoninletsourceUrl=field_mapjson__"sourceUrl"SourceUrl.of_jsoninletjobId=field_mapjson__"jobId"JobId.of_jsoninletbranchName=field_map_exnjson__"branchName"BranchName.of_jsoninletappId=field_map_exnjson__"appId"AppId.of_jsoninmake?sourceUrlType?sourceUrl?jobId~branchName~appId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the start a deployment request."]moduleListWebhooksResult=structtypenonrect={webhooks:Webhooks.toption[@ocaml.doc"A list of webhooks."];nextToken:NextToken.toption[@ocaml.doc"A pagination token. If non-null, the pagination token is returned in a result. Pass its value in another request to retrieve more entries."]}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`InternalFailureExceptionofInternalFailureException.t|`LimitExceededExceptionofLimitExceededException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?webhooks=fun?nextToken->fun()->{webhooks;nextToken}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`LimitExceededExceptione->`Assoc[("error",(`String"LimitExceededException"));("details",(LimitExceededException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("webhooks",(Option.mapx.webhooks~f:Webhooks.to_value));("nextToken",(Option.mapx.nextToken~f:NextToken.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letnextToken=(Option.map~f:NextToken.of_xml)(Xml.childxml_arg0"nextToken")inletwebhooks=(Option.map~f:Webhooks.of_xml)(Xml.childxml_arg0"webhooks")inmake?nextToken?webhooks()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letnextToken=field_mapjson__"nextToken"NextToken.of_jsoninletwebhooks=field_mapjson__"webhooks"Webhooks.of_jsoninmake?nextToken?webhooks()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The result structure for the list webhooks request."]moduleListWebhooksRequest=structtypenonrect={appId:AppId.t[@ocaml.doc"The unique ID for an Amplify app."];nextToken:NextToken.toption[@ocaml.doc"A pagination token. Set to null to start listing webhooks from the start. If non-null,the pagination token is returned in a result. Pass its value in here to list more webhooks."];maxResults:MaxResults.toption[@ocaml.doc"The maximum number of records to list in a single response."]}letcontext_="ListWebhooksRequest"letmake?nextToken=fun?maxResults->fun~appId->fun()->{nextToken;maxResults;appId}letto_valuex=structure_to_value[("appId",(Some(AppId.to_valuex.appId)));("nextToken",(Option.mapx.nextToken~f:NextToken.to_value));("maxResults",(Option.mapx.maxResults~f:MaxResults.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmaxResults=(Option.map~f:MaxResults.of_xml)(Xml.childxml_arg0"maxResults")inletnextToken=(Option.map~f:NextToken.of_xml)(Xml.childxml_arg0"nextToken")inletappId=AppId.of_xml(Xml.child_exn~context:context_xml_arg0"appId")inmake?maxResults?nextToken~appId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmaxResults=field_mapjson__"maxResults"MaxResults.of_jsoninletnextToken=field_mapjson__"nextToken"NextToken.of_jsoninletappId=field_map_exnjson__"appId"AppId.of_jsoninmake?maxResults?nextToken~appId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the list webhooks request."]moduleListTagsForResourceResponse=structtypenonrect={tags:TagMap.toption[@ocaml.doc"A list of tags for the specified The Amazon Resource Name (ARN)."]}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`InternalFailureExceptionofInternalFailureException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`Unknown_operation_errorof(string*stringoption)]letmake?tags=fun()->{tags}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("tags",(Option.mapx.tags~f:TagMap.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=lettags=(Option.map~f:TagMap.of_xml)(Xml.childxml_arg0"tags")inmake?tags()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=lettags=field_mapjson__"tags"TagMap.of_jsoninmake?tags()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The response for the list tags for resource request."]moduleListTagsForResourceRequest=structtypenonrect={resourceArn:ResourceArn.t[@ocaml.doc"The Amazon Resource Name (ARN) to use to list tags."]}letcontext_="ListTagsForResourceRequest"letmake~resourceArn=fun()->{resourceArn}letto_valuex=structure_to_value[("resourceArn",(Some(ResourceArn.to_valuex.resourceArn)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letresourceArn=ResourceArn.of_xml(Xml.child_exn~context:context_xml_arg0"resourceArn")inmake~resourceArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letresourceArn=field_map_exnjson__"resourceArn"ResourceArn.of_jsoninmake~resourceArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure to use to list tags for a resource."]moduleListJobsResult=structtypenonrect={jobSummaries:JobSummaries.toption[@ocaml.doc"The result structure for the list job result request."];nextToken:NextToken.toption[@ocaml.doc"A pagination token. If non-null the pagination token is returned in a result. Pass its value in another request to retrieve more entries."]}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`InternalFailureExceptionofInternalFailureException.t|`LimitExceededExceptionofLimitExceededException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?jobSummaries=fun?nextToken->fun()->{jobSummaries;nextToken}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`LimitExceededExceptione->`Assoc[("error",(`String"LimitExceededException"));("details",(LimitExceededException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("jobSummaries",(Option.mapx.jobSummaries~f:JobSummaries.to_value));("nextToken",(Option.mapx.nextToken~f:NextToken.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letnextToken=(Option.map~f:NextToken.of_xml)(Xml.childxml_arg0"nextToken")inletjobSummaries=(Option.map~f:JobSummaries.of_xml)(Xml.childxml_arg0"jobSummaries")inmake?nextToken?jobSummaries()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letnextToken=field_mapjson__"nextToken"NextToken.of_jsoninletjobSummaries=field_mapjson__"jobSummaries"JobSummaries.of_jsoninmake?nextToken?jobSummaries()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The maximum number of records to list in a single response."]moduleListJobsRequest=structtypenonrect={appId:AppId.t[@ocaml.doc"The unique ID for an Amplify app."];branchName:BranchName.t[@ocaml.doc"The name of the branch to use for the request."];nextToken:NextToken.toption[@ocaml.doc"A pagination token. Set to null to start listing steps from the start. If a non-null pagination token is returned in a result, pass its value in here to list more steps."];maxResults:MaxResults.toption[@ocaml.doc"The maximum number of records to list in a single response."]}letcontext_="ListJobsRequest"letmake?nextToken=fun?maxResults->fun~appId->fun~branchName->fun()->{nextToken;maxResults;appId;branchName}letto_valuex=structure_to_value[("appId",(Some(AppId.to_valuex.appId)));("branchName",(Some(BranchName.to_valuex.branchName)));("nextToken",(Option.mapx.nextToken~f:NextToken.to_value));("maxResults",(Option.mapx.maxResults~f:MaxResults.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmaxResults=(Option.map~f:MaxResults.of_xml)(Xml.childxml_arg0"maxResults")inletnextToken=(Option.map~f:NextToken.of_xml)(Xml.childxml_arg0"nextToken")inletbranchName=BranchName.of_xml(Xml.child_exn~context:context_xml_arg0"branchName")inletappId=AppId.of_xml(Xml.child_exn~context:context_xml_arg0"appId")inmake?maxResults?nextToken~branchName~appId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmaxResults=field_mapjson__"maxResults"MaxResults.of_jsoninletnextToken=field_mapjson__"nextToken"NextToken.of_jsoninletbranchName=field_map_exnjson__"branchName"BranchName.of_jsoninletappId=field_map_exnjson__"appId"AppId.of_jsoninmake?maxResults?nextToken~branchName~appId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the list jobs request."]moduleListDomainAssociationsResult=structtypenonrect={domainAssociations:DomainAssociations.toption[@ocaml.doc"A list of domain associations."];nextToken:NextToken.toption[@ocaml.doc"A pagination token. If non-null, a pagination token is returned in a result. Pass its value in another request to retrieve more entries."]}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`InternalFailureExceptionofInternalFailureException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?domainAssociations=fun?nextToken->fun()->{domainAssociations;nextToken}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("domainAssociations",(Option.mapx.domainAssociations~f:DomainAssociations.to_value));("nextToken",(Option.mapx.nextToken~f:NextToken.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letnextToken=(Option.map~f:NextToken.of_xml)(Xml.childxml_arg0"nextToken")inletdomainAssociations=(Option.map~f:DomainAssociations.of_xml)(Xml.childxml_arg0"domainAssociations")inmake?nextToken?domainAssociations()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letnextToken=field_mapjson__"nextToken"NextToken.of_jsoninletdomainAssociations=field_mapjson__"domainAssociations"DomainAssociations.of_jsoninmake?nextToken?domainAssociations()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The result structure for the list domain association request."]moduleListDomainAssociationsRequest=structtypenonrect={appId:AppId.t[@ocaml.doc"The unique ID for an Amplify app."];nextToken:NextToken.toption[@ocaml.doc"A pagination token. Set to null to start listing apps from the start. If non-null, a pagination token is returned in a result. Pass its value in here to list more projects."];maxResults:MaxResults.toption[@ocaml.doc"The maximum number of records to list in a single response."]}letcontext_="ListDomainAssociationsRequest"letmake?nextToken=fun?maxResults->fun~appId->fun()->{nextToken;maxResults;appId}letto_valuex=structure_to_value[("appId",(Some(AppId.to_valuex.appId)));("nextToken",(Option.mapx.nextToken~f:NextToken.to_value));("maxResults",(Option.mapx.maxResults~f:MaxResults.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmaxResults=(Option.map~f:MaxResults.of_xml)(Xml.childxml_arg0"maxResults")inletnextToken=(Option.map~f:NextToken.of_xml)(Xml.childxml_arg0"nextToken")inletappId=AppId.of_xml(Xml.child_exn~context:context_xml_arg0"appId")inmake?maxResults?nextToken~appId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmaxResults=field_mapjson__"maxResults"MaxResults.of_jsoninletnextToken=field_mapjson__"nextToken"NextToken.of_jsoninletappId=field_map_exnjson__"appId"AppId.of_jsoninmake?maxResults?nextToken~appId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the list domain associations request."]moduleListBranchesResult=structtypenonrect={branches:Branches.toption[@ocaml.doc"A list of branches for an Amplify app."];nextToken:NextToken.toption[@ocaml.doc"A pagination token. If a non-null pagination token is returned in a result, pass its value in another request to retrieve more entries."]}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`InternalFailureExceptionofInternalFailureException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?branches=fun?nextToken->fun()->{branches;nextToken}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("branches",(Option.mapx.branches~f:Branches.to_value));("nextToken",(Option.mapx.nextToken~f:NextToken.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letnextToken=(Option.map~f:NextToken.of_xml)(Xml.childxml_arg0"nextToken")inletbranches=(Option.map~f:Branches.of_xml)(Xml.childxml_arg0"branches")inmake?nextToken?branches()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letnextToken=field_mapjson__"nextToken"NextToken.of_jsoninletbranches=field_mapjson__"branches"Branches.of_jsoninmake?nextToken?branches()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The result structure for the list branches request."]moduleListBranchesRequest=structtypenonrect={appId:AppId.t[@ocaml.doc"The unique ID for an Amplify app."];nextToken:NextToken.toption[@ocaml.doc"A pagination token. Set to null to start listing branches from the start. If a non-null pagination token is returned in a result, pass its value in here to list more branches."];maxResults:MaxResults.toption[@ocaml.doc"The maximum number of records to list in a single response."]}letcontext_="ListBranchesRequest"letmake?nextToken=fun?maxResults->fun~appId->fun()->{nextToken;maxResults;appId}letto_valuex=structure_to_value[("appId",(Some(AppId.to_valuex.appId)));("nextToken",(Option.mapx.nextToken~f:NextToken.to_value));("maxResults",(Option.mapx.maxResults~f:MaxResults.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmaxResults=(Option.map~f:MaxResults.of_xml)(Xml.childxml_arg0"maxResults")inletnextToken=(Option.map~f:NextToken.of_xml)(Xml.childxml_arg0"nextToken")inletappId=AppId.of_xml(Xml.child_exn~context:context_xml_arg0"appId")inmake?maxResults?nextToken~appId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmaxResults=field_mapjson__"maxResults"MaxResults.of_jsoninletnextToken=field_mapjson__"nextToken"NextToken.of_jsoninletappId=field_map_exnjson__"appId"AppId.of_jsoninmake?maxResults?nextToken~appId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the list branches request."]moduleListBackendEnvironmentsResult=structtypenonrect={backendEnvironments:BackendEnvironments.toption[@ocaml.doc"The list of backend environments for an Amplify app."];nextToken:NextToken.toption[@ocaml.doc"A pagination token. If a non-null pagination token is returned in a result, pass its value in another request to retrieve more entries."]}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`InternalFailureExceptionofInternalFailureException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?backendEnvironments=fun?nextToken->fun()->{backendEnvironments;nextToken}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("backendEnvironments",(Option.mapx.backendEnvironments~f:BackendEnvironments.to_value));("nextToken",(Option.mapx.nextToken~f:NextToken.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letnextToken=(Option.map~f:NextToken.of_xml)(Xml.childxml_arg0"nextToken")inletbackendEnvironments=(Option.map~f:BackendEnvironments.of_xml)(Xml.childxml_arg0"backendEnvironments")inmake?nextToken?backendEnvironments()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letnextToken=field_mapjson__"nextToken"NextToken.of_jsoninletbackendEnvironments=field_mapjson__"backendEnvironments"BackendEnvironments.of_jsoninmake?nextToken?backendEnvironments()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The result structure for the list backend environments result."]moduleListBackendEnvironmentsRequest=structtypenonrect={appId:AppId.t[@ocaml.doc"The unique ID for an Amplify app."];environmentName:EnvironmentName.toption[@ocaml.doc"The name of the backend environment"];nextToken:NextToken.toption[@ocaml.doc"A pagination token. Set to null to start listing backend environments from the start. If a non-null pagination token is returned in a result, pass its value in here to list more backend environments."];maxResults:MaxResults.toption[@ocaml.doc"The maximum number of records to list in a single response."]}letcontext_="ListBackendEnvironmentsRequest"letmake?environmentName=fun?nextToken->fun?maxResults->fun~appId->fun()->{environmentName;nextToken;maxResults;appId}letto_valuex=structure_to_value[("appId",(Some(AppId.to_valuex.appId)));("environmentName",(Option.mapx.environmentName~f:EnvironmentName.to_value));("nextToken",(Option.mapx.nextToken~f:NextToken.to_value));("maxResults",(Option.mapx.maxResults~f:MaxResults.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmaxResults=(Option.map~f:MaxResults.of_xml)(Xml.childxml_arg0"maxResults")inletnextToken=(Option.map~f:NextToken.of_xml)(Xml.childxml_arg0"nextToken")inletenvironmentName=(Option.map~f:EnvironmentName.of_xml)(Xml.childxml_arg0"environmentName")inletappId=AppId.of_xml(Xml.child_exn~context:context_xml_arg0"appId")inmake?maxResults?nextToken?environmentName~appId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmaxResults=field_mapjson__"maxResults"MaxResults.of_jsoninletnextToken=field_mapjson__"nextToken"NextToken.of_jsoninletenvironmentName=field_mapjson__"environmentName"EnvironmentName.of_jsoninletappId=field_map_exnjson__"appId"AppId.of_jsoninmake?maxResults?nextToken?environmentName~appId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the list backend environments request."]moduleListArtifactsResult=structtypenonrect={artifacts:Artifacts.toption[@ocaml.doc"A list of artifacts."];nextToken:NextToken.toption[@ocaml.doc"A pagination token. If a non-null pagination token is returned in a result, pass its value in another request to retrieve more entries."]}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`InternalFailureExceptionofInternalFailureException.t|`LimitExceededExceptionofLimitExceededException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?artifacts=fun?nextToken->fun()->{artifacts;nextToken}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`LimitExceededExceptione->`Assoc[("error",(`String"LimitExceededException"));("details",(LimitExceededException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("artifacts",(Option.mapx.artifacts~f:Artifacts.to_value));("nextToken",(Option.mapx.nextToken~f:NextToken.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letnextToken=(Option.map~f:NextToken.of_xml)(Xml.childxml_arg0"nextToken")inletartifacts=(Option.map~f:Artifacts.of_xml)(Xml.childxml_arg0"artifacts")inmake?nextToken?artifacts()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letnextToken=field_mapjson__"nextToken"NextToken.of_jsoninletartifacts=field_mapjson__"artifacts"Artifacts.of_jsoninmake?nextToken?artifacts()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The result structure for the list artifacts request."]moduleListArtifactsRequest=structtypenonrect={appId:AppId.t[@ocaml.doc"The unique ID for an Amplify app."];branchName:BranchName.t[@ocaml.doc"The name of a branch that is part of an Amplify app."];jobId:JobId.t[@ocaml.doc"The unique ID for a job."];nextToken:NextToken.toption[@ocaml.doc"A pagination token. Set to null to start listing artifacts from start. If a non-null pagination token is returned in a result, pass its value in here to list more artifacts."];maxResults:MaxResults.toption[@ocaml.doc"The maximum number of records to list in a single response."]}letcontext_="ListArtifactsRequest"letmake?nextToken=fun?maxResults->fun~appId->fun~branchName->fun~jobId->fun()->{nextToken;maxResults;appId;branchName;jobId}letto_valuex=structure_to_value[("appId",(Some(AppId.to_valuex.appId)));("branchName",(Some(BranchName.to_valuex.branchName)));("jobId",(Some(JobId.to_valuex.jobId)));("nextToken",(Option.mapx.nextToken~f:NextToken.to_value));("maxResults",(Option.mapx.maxResults~f:MaxResults.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmaxResults=(Option.map~f:MaxResults.of_xml)(Xml.childxml_arg0"maxResults")inletnextToken=(Option.map~f:NextToken.of_xml)(Xml.childxml_arg0"nextToken")inletjobId=JobId.of_xml(Xml.child_exn~context:context_xml_arg0"jobId")inletbranchName=BranchName.of_xml(Xml.child_exn~context:context_xml_arg0"branchName")inletappId=AppId.of_xml(Xml.child_exn~context:context_xml_arg0"appId")inmake?maxResults?nextToken~jobId~branchName~appId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmaxResults=field_mapjson__"maxResults"MaxResults.of_jsoninletnextToken=field_mapjson__"nextToken"NextToken.of_jsoninletjobId=field_map_exnjson__"jobId"JobId.of_jsoninletbranchName=field_map_exnjson__"branchName"BranchName.of_jsoninletappId=field_map_exnjson__"appId"AppId.of_jsoninmake?maxResults?nextToken~jobId~branchName~appId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Describes the request structure for the list artifacts request."]moduleListAppsResult=structtypenonrect={apps:Apps.toption[@ocaml.doc"A list of Amplify apps."];nextToken:NextToken.toption[@ocaml.doc"A pagination token. Set to null to start listing apps from start. If non-null, the pagination token is returned in a result. Pass its value in here to list more projects."]}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`InternalFailureExceptionofInternalFailureException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?apps=fun?nextToken->fun()->{apps;nextToken}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("apps",(Option.mapx.apps~f:Apps.to_value));("nextToken",(Option.mapx.nextToken~f:NextToken.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letnextToken=(Option.map~f:NextToken.of_xml)(Xml.childxml_arg0"nextToken")inletapps=(Option.map~f:Apps.of_xml)(Xml.childxml_arg0"apps")inmake?nextToken?apps()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letnextToken=field_mapjson__"nextToken"NextToken.of_jsoninletapps=field_mapjson__"apps"Apps.of_jsoninmake?nextToken?apps()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The result structure for an Amplify app list request."]moduleListAppsRequest=structtypenonrect={nextToken:NextToken.toption[@ocaml.doc"A pagination token. If non-null, the pagination token is returned in a result. Pass its value in another request to retrieve more entries."];maxResults:MaxResultsForListApps.toption[@ocaml.doc"The maximum number of records to list in a single response."]}letmake?nextToken=fun?maxResults->fun()->{nextToken;maxResults}letto_valuex=structure_to_value[("nextToken",(Option.mapx.nextToken~f:NextToken.to_value));("maxResults",(Option.mapx.maxResults~f:MaxResultsForListApps.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmaxResults=(Option.map~f:MaxResultsForListApps.of_xml)(Xml.childxml_arg0"maxResults")inletnextToken=(Option.map~f:NextToken.of_xml)(Xml.childxml_arg0"nextToken")inmake?maxResults?nextToken()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmaxResults=field_mapjson__"maxResults"MaxResultsForListApps.of_jsoninletnextToken=field_mapjson__"nextToken"NextToken.of_jsoninmake?maxResults?nextToken()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the list apps request."]moduleGetWebhookResult=structtypenonrect={webhook:Webhook.toption[@ocaml.doc"Describes the structure of a webhook."]}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`InternalFailureExceptionofInternalFailureException.t|`LimitExceededExceptionofLimitExceededException.t|`NotFoundExceptionofNotFoundException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?webhook=fun()->{webhook}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_jsonjson)|"NotFoundException"->`NotFoundException(NotFoundException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_xmlxml)|"NotFoundException"->`NotFoundException(NotFoundException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`LimitExceededExceptione->`Assoc[("error",(`String"LimitExceededException"));("details",(LimitExceededException.to_jsone))]|`NotFoundExceptione->`Assoc[("error",(`String"NotFoundException"));("details",(NotFoundException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("webhook",(Option.mapx.webhook~f:Webhook.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letwebhook=(Option.map~f:Webhook.of_xml)(Xml.childxml_arg0"webhook")inmake?webhook()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letwebhook=field_mapjson__"webhook"Webhook.of_jsoninmake?webhook()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The result structure for the get webhook request."]moduleGetWebhookRequest=structtypenonrect={webhookId:WebhookId.t[@ocaml.doc"The unique ID for a webhook."]}letcontext_="GetWebhookRequest"letmake~webhookId=fun()->{webhookId}letto_valuex=structure_to_value[("webhookId",(Some(WebhookId.to_valuex.webhookId)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letwebhookId=WebhookId.of_xml(Xml.child_exn~context:context_xml_arg0"webhookId")inmake~webhookId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letwebhookId=field_map_exnjson__"webhookId"WebhookId.of_jsoninmake~webhookId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the get webhook request."]moduleGetJobResult=structtypenonrect={job:Job.toption}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`InternalFailureExceptionofInternalFailureException.t|`LimitExceededExceptionofLimitExceededException.t|`NotFoundExceptionofNotFoundException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?job=fun()->{job}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_jsonjson)|"NotFoundException"->`NotFoundException(NotFoundException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_xmlxml)|"NotFoundException"->`NotFoundException(NotFoundException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`LimitExceededExceptione->`Assoc[("error",(`String"LimitExceededException"));("details",(LimitExceededException.to_jsone))]|`NotFoundExceptione->`Assoc[("error",(`String"NotFoundException"));("details",(NotFoundException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("job",(Option.mapx.job~f:Job.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letjob=(Option.map~f:Job.of_xml)(Xml.childxml_arg0"job")inmake?job()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letjob=field_mapjson__"job"Job.of_jsoninmake?job()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns a job for a branch of an Amplify app."]moduleGetJobRequest=structtypenonrect={appId:AppId.t[@ocaml.doc"The unique ID for an Amplify app."];branchName:BranchName.t[@ocaml.doc"The name of the branch to use for the job."];jobId:JobId.t[@ocaml.doc"The unique ID for the job."]}letcontext_="GetJobRequest"letmake~appId=fun~branchName->fun~jobId->fun()->{appId;branchName;jobId}letto_valuex=structure_to_value[("appId",(Some(AppId.to_valuex.appId)));("branchName",(Some(BranchName.to_valuex.branchName)));("jobId",(Some(JobId.to_valuex.jobId)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letjobId=JobId.of_xml(Xml.child_exn~context:context_xml_arg0"jobId")inletbranchName=BranchName.of_xml(Xml.child_exn~context:context_xml_arg0"branchName")inletappId=AppId.of_xml(Xml.child_exn~context:context_xml_arg0"appId")inmake~jobId~branchName~appId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letjobId=field_map_exnjson__"jobId"JobId.of_jsoninletbranchName=field_map_exnjson__"branchName"BranchName.of_jsoninletappId=field_map_exnjson__"appId"AppId.of_jsoninmake~jobId~branchName~appId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the get job request."]moduleGetDomainAssociationResult=structtypenonrect={domainAssociation:DomainAssociation.toption[@ocaml.doc"Describes the structure of a domain association, which associates a custom domain with an Amplify app."]}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`InternalFailureExceptionofInternalFailureException.t|`NotFoundExceptionofNotFoundException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?domainAssociation=fun()->{domainAssociation}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"NotFoundException"->`NotFoundException(NotFoundException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"NotFoundException"->`NotFoundException(NotFoundException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`NotFoundExceptione->`Assoc[("error",(`String"NotFoundException"));("details",(NotFoundException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("domainAssociation",(Option.mapx.domainAssociation~f:DomainAssociation.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letdomainAssociation=(Option.map~f:DomainAssociation.of_xml)(Xml.childxml_arg0"domainAssociation")inmake?domainAssociation()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letdomainAssociation=field_mapjson__"domainAssociation"DomainAssociation.of_jsoninmake?domainAssociation()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The result structure for the get domain association request."]moduleGetDomainAssociationRequest=structtypenonrect={appId:AppId.t[@ocaml.doc"The unique id for an Amplify app."];domainName:DomainName.t[@ocaml.doc"The name of the domain."]}letcontext_="GetDomainAssociationRequest"letmake~appId=fun~domainName->fun()->{appId;domainName}letto_valuex=structure_to_value[("appId",(Some(AppId.to_valuex.appId)));("domainName",(Some(DomainName.to_valuex.domainName)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letdomainName=DomainName.of_xml(Xml.child_exn~context:context_xml_arg0"domainName")inletappId=AppId.of_xml(Xml.child_exn~context:context_xml_arg0"appId")inmake~domainName~appId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letdomainName=field_map_exnjson__"domainName"DomainName.of_jsoninletappId=field_map_exnjson__"appId"AppId.of_jsoninmake~domainName~appId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the get domain association request."]moduleGetBranchResult=structtypenonrect={branch:Branch.toption}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`InternalFailureExceptionofInternalFailureException.t|`NotFoundExceptionofNotFoundException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?branch=fun()->{branch}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"NotFoundException"->`NotFoundException(NotFoundException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"NotFoundException"->`NotFoundException(NotFoundException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`NotFoundExceptione->`Assoc[("error",(`String"NotFoundException"));("details",(NotFoundException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("branch",(Option.mapx.branch~f:Branch.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letbranch=(Option.map~f:Branch.of_xml)(Xml.childxml_arg0"branch")inmake?branch()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letbranch=field_mapjson__"branch"Branch.of_jsoninmake?branch()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns a branch for an Amplify app."]moduleGetBranchRequest=structtypenonrect={appId:AppId.t[@ocaml.doc"The unique ID for an Amplify app."];branchName:BranchName.t[@ocaml.doc"The name of the branch."]}letcontext_="GetBranchRequest"letmake~appId=fun~branchName->fun()->{appId;branchName}letto_valuex=structure_to_value[("appId",(Some(AppId.to_valuex.appId)));("branchName",(Some(BranchName.to_valuex.branchName)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letbranchName=BranchName.of_xml(Xml.child_exn~context:context_xml_arg0"branchName")inletappId=AppId.of_xml(Xml.child_exn~context:context_xml_arg0"appId")inmake~branchName~appId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letbranchName=field_map_exnjson__"branchName"BranchName.of_jsoninletappId=field_map_exnjson__"appId"AppId.of_jsoninmake~branchName~appId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the get branch request."]moduleGetBackendEnvironmentResult=structtypenonrect={backendEnvironment:BackendEnvironment.toption[@ocaml.doc"Describes the backend environment for an Amplify app."]}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`InternalFailureExceptionofInternalFailureException.t|`NotFoundExceptionofNotFoundException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?backendEnvironment=fun()->{backendEnvironment}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"NotFoundException"->`NotFoundException(NotFoundException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"NotFoundException"->`NotFoundException(NotFoundException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`NotFoundExceptione->`Assoc[("error",(`String"NotFoundException"));("details",(NotFoundException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("backendEnvironment",(Option.mapx.backendEnvironment~f:BackendEnvironment.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letbackendEnvironment=(Option.map~f:BackendEnvironment.of_xml)(Xml.childxml_arg0"backendEnvironment")inmake?backendEnvironment()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letbackendEnvironment=field_mapjson__"backendEnvironment"BackendEnvironment.of_jsoninmake?backendEnvironment()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The result structure for the get backend environment result."]moduleGetBackendEnvironmentRequest=structtypenonrect={appId:AppId.t[@ocaml.doc"The unique id for an Amplify app."];environmentName:EnvironmentName.t[@ocaml.doc"The name for the backend environment."]}letcontext_="GetBackendEnvironmentRequest"letmake~appId=fun~environmentName->fun()->{appId;environmentName}letto_valuex=structure_to_value[("appId",(Some(AppId.to_valuex.appId)));("environmentName",(Some(EnvironmentName.to_valuex.environmentName)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letenvironmentName=EnvironmentName.of_xml(Xml.child_exn~context:context_xml_arg0"environmentName")inletappId=AppId.of_xml(Xml.child_exn~context:context_xml_arg0"appId")inmake~environmentName~appId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letenvironmentName=field_map_exnjson__"environmentName"EnvironmentName.of_jsoninletappId=field_map_exnjson__"appId"AppId.of_jsoninmake~environmentName~appId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the get backend environment request."]moduleGetArtifactUrlResult=structtypenonrect={artifactId:ArtifactId.toption[@ocaml.doc"The unique ID for an artifact."];artifactUrl:ArtifactUrl.toption[@ocaml.doc"The presigned URL for the artifact."]}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`InternalFailureExceptionofInternalFailureException.t|`LimitExceededExceptionofLimitExceededException.t|`NotFoundExceptionofNotFoundException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?artifactId=fun?artifactUrl->fun()->{artifactId;artifactUrl}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_jsonjson)|"NotFoundException"->`NotFoundException(NotFoundException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_xmlxml)|"NotFoundException"->`NotFoundException(NotFoundException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`LimitExceededExceptione->`Assoc[("error",(`String"LimitExceededException"));("details",(LimitExceededException.to_jsone))]|`NotFoundExceptione->`Assoc[("error",(`String"NotFoundException"));("details",(NotFoundException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("artifactId",(Option.mapx.artifactId~f:ArtifactId.to_value));("artifactUrl",(Option.mapx.artifactUrl~f:ArtifactUrl.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letartifactUrl=(Option.map~f:ArtifactUrl.of_xml)(Xml.childxml_arg0"artifactUrl")inletartifactId=(Option.map~f:ArtifactId.of_xml)(Xml.childxml_arg0"artifactId")inmake?artifactUrl?artifactId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letartifactUrl=field_mapjson__"artifactUrl"ArtifactUrl.of_jsoninletartifactId=field_mapjson__"artifactId"ArtifactId.of_jsoninmake?artifactUrl?artifactId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns the result structure for the get artifact request."]moduleGetArtifactUrlRequest=structtypenonrect={artifactId:ArtifactId.t[@ocaml.doc"The unique ID for an artifact."]}letcontext_="GetArtifactUrlRequest"letmake~artifactId=fun()->{artifactId}letto_valuex=structure_to_value[("artifactId",(Some(ArtifactId.to_valuex.artifactId)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letartifactId=ArtifactId.of_xml(Xml.child_exn~context:context_xml_arg0"artifactId")inmake~artifactId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letartifactId=field_map_exnjson__"artifactId"ArtifactId.of_jsoninmake~artifactId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns the request structure for the get artifact request."]moduleGetAppResult=structtypenonrect={app:App.toption}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`InternalFailureExceptionofInternalFailureException.t|`NotFoundExceptionofNotFoundException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?app=fun()->{app}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"NotFoundException"->`NotFoundException(NotFoundException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"NotFoundException"->`NotFoundException(NotFoundException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`NotFoundExceptione->`Assoc[("error",(`String"NotFoundException"));("details",(NotFoundException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("app",(Option.mapx.app~f:App.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letapp=(Option.map~f:App.of_xml)(Xml.childxml_arg0"app")inmake?app()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letapp=field_mapjson__"app"App.of_jsoninmake?app()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns an existing Amplify app specified by an app ID."]moduleGetAppRequest=structtypenonrect={appId:AppId.t[@ocaml.doc"The unique ID for an Amplify app."]}letcontext_="GetAppRequest"letmake~appId=fun()->{appId}letto_valuex=structure_to_value[("appId",(Some(AppId.to_valuex.appId)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letappId=AppId.of_xml(Xml.child_exn~context:context_xml_arg0"appId")inmake~appId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letappId=field_map_exnjson__"appId"AppId.of_jsoninmake~appId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the get app request."]moduleGenerateAccessLogsResult=structtypenonrect={logUrl:LogUrl.toption[@ocaml.doc"The pre-signed URL for the requested access logs."]}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`InternalFailureExceptionofInternalFailureException.t|`NotFoundExceptionofNotFoundException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?logUrl=fun()->{logUrl}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"NotFoundException"->`NotFoundException(NotFoundException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"NotFoundException"->`NotFoundException(NotFoundException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`NotFoundExceptione->`Assoc[("error",(`String"NotFoundException"));("details",(NotFoundException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("logUrl",(Option.mapx.logUrl~f:LogUrl.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letlogUrl=(Option.map~f:LogUrl.of_xml)(Xml.childxml_arg0"logUrl")inmake?logUrl()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letlogUrl=field_mapjson__"logUrl"LogUrl.of_jsoninmake?logUrl()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The result structure for the generate access logs request."]moduleGenerateAccessLogsRequest=structtypenonrect={startTime:StartTime.toption[@ocaml.doc"The time at which the logs should start. The time range specified is inclusive of the start time."];endTime:EndTime.toption[@ocaml.doc"The time at which the logs should end. The time range specified is inclusive of the end time."];domainName:DomainName.t[@ocaml.doc"The name of the domain."];appId:AppId.t[@ocaml.doc"The unique ID for an Amplify app."]}letcontext_="GenerateAccessLogsRequest"letmake?startTime=fun?endTime->fun~domainName->fun~appId->fun()->{startTime;endTime;domainName;appId}letto_valuex=structure_to_value[("startTime",(Option.mapx.startTime~f:StartTime.to_value));("endTime",(Option.mapx.endTime~f:EndTime.to_value));("domainName",(Some(DomainName.to_valuex.domainName)));("appId",(Some(AppId.to_valuex.appId)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letappId=AppId.of_xml(Xml.child_exn~context:context_xml_arg0"appId")inletdomainName=DomainName.of_xml(Xml.child_exn~context:context_xml_arg0"domainName")inletendTime=(Option.map~f:EndTime.of_xml)(Xml.childxml_arg0"endTime")inletstartTime=(Option.map~f:StartTime.of_xml)(Xml.childxml_arg0"startTime")inmake~appId~domainName?endTime?startTime()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letappId=field_map_exnjson__"appId"AppId.of_jsoninletdomainName=field_map_exnjson__"domainName"DomainName.of_jsoninletendTime=field_mapjson__"endTime"EndTime.of_jsoninletstartTime=field_mapjson__"startTime"StartTime.of_jsoninmake~appId~domainName?endTime?startTime()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the generate access logs request."]moduleDeleteWebhookResult=structtypenonrect={webhook:Webhook.toption[@ocaml.doc"Describes a webhook that connects repository events to an Amplify app."]}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`InternalFailureExceptionofInternalFailureException.t|`LimitExceededExceptionofLimitExceededException.t|`NotFoundExceptionofNotFoundException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?webhook=fun()->{webhook}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_jsonjson)|"NotFoundException"->`NotFoundException(NotFoundException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_xmlxml)|"NotFoundException"->`NotFoundException(NotFoundException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`LimitExceededExceptione->`Assoc[("error",(`String"LimitExceededException"));("details",(LimitExceededException.to_jsone))]|`NotFoundExceptione->`Assoc[("error",(`String"NotFoundException"));("details",(NotFoundException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("webhook",(Option.mapx.webhook~f:Webhook.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letwebhook=(Option.map~f:Webhook.of_xml)(Xml.childxml_arg0"webhook")inmake?webhook()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letwebhook=field_mapjson__"webhook"Webhook.of_jsoninmake?webhook()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The result structure for the delete webhook request."]moduleDeleteWebhookRequest=structtypenonrect={webhookId:WebhookId.t[@ocaml.doc"The unique ID for a webhook."]}letcontext_="DeleteWebhookRequest"letmake~webhookId=fun()->{webhookId}letto_valuex=structure_to_value[("webhookId",(Some(WebhookId.to_valuex.webhookId)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letwebhookId=WebhookId.of_xml(Xml.child_exn~context:context_xml_arg0"webhookId")inmake~webhookId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letwebhookId=field_map_exnjson__"webhookId"WebhookId.of_jsoninmake~webhookId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the delete webhook request."]moduleDeleteJobResult=structtypenonrect={jobSummary:JobSummary.toption}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`InternalFailureExceptionofInternalFailureException.t|`LimitExceededExceptionofLimitExceededException.t|`NotFoundExceptionofNotFoundException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?jobSummary=fun()->{jobSummary}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_jsonjson)|"NotFoundException"->`NotFoundException(NotFoundException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_xmlxml)|"NotFoundException"->`NotFoundException(NotFoundException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`LimitExceededExceptione->`Assoc[("error",(`String"LimitExceededException"));("details",(LimitExceededException.to_jsone))]|`NotFoundExceptione->`Assoc[("error",(`String"NotFoundException"));("details",(NotFoundException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("jobSummary",(Option.mapx.jobSummary~f:JobSummary.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letjobSummary=(Option.map~f:JobSummary.of_xml)(Xml.childxml_arg0"jobSummary")inmake?jobSummary()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letjobSummary=field_mapjson__"jobSummary"JobSummary.of_jsoninmake?jobSummary()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The result structure for the delete job request."]moduleDeleteJobRequest=structtypenonrect={appId:AppId.t[@ocaml.doc"The unique ID for an Amplify app."];branchName:BranchName.t[@ocaml.doc"The name of the branch to use for the job."];jobId:JobId.t[@ocaml.doc"The unique ID for the job."]}letcontext_="DeleteJobRequest"letmake~appId=fun~branchName->fun~jobId->fun()->{appId;branchName;jobId}letto_valuex=structure_to_value[("appId",(Some(AppId.to_valuex.appId)));("branchName",(Some(BranchName.to_valuex.branchName)));("jobId",(Some(JobId.to_valuex.jobId)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letjobId=JobId.of_xml(Xml.child_exn~context:context_xml_arg0"jobId")inletbranchName=BranchName.of_xml(Xml.child_exn~context:context_xml_arg0"branchName")inletappId=AppId.of_xml(Xml.child_exn~context:context_xml_arg0"appId")inmake~jobId~branchName~appId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letjobId=field_map_exnjson__"jobId"JobId.of_jsoninletbranchName=field_map_exnjson__"branchName"BranchName.of_jsoninletappId=field_map_exnjson__"appId"AppId.of_jsoninmake~jobId~branchName~appId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the delete job request."]moduleDeleteDomainAssociationResult=structtypenonrect={domainAssociation:DomainAssociation.toption}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`DependentServiceFailureExceptionofDependentServiceFailureException.t|`InternalFailureExceptionofInternalFailureException.t|`NotFoundExceptionofNotFoundException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?domainAssociation=fun()->{domainAssociation}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"DependentServiceFailureException"->`DependentServiceFailureException(DependentServiceFailureException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"NotFoundException"->`NotFoundException(NotFoundException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"DependentServiceFailureException"->`DependentServiceFailureException(DependentServiceFailureException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"NotFoundException"->`NotFoundException(NotFoundException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`DependentServiceFailureExceptione->`Assoc[("error",(`String"DependentServiceFailureException"));("details",(DependentServiceFailureException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`NotFoundExceptione->`Assoc[("error",(`String"NotFoundException"));("details",(NotFoundException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("domainAssociation",(Option.mapx.domainAssociation~f:DomainAssociation.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letdomainAssociation=(Option.map~f:DomainAssociation.of_xml)(Xml.childxml_arg0"domainAssociation")inmake?domainAssociation()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letdomainAssociation=field_mapjson__"domainAssociation"DomainAssociation.of_jsoninmake?domainAssociation()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Deletes a domain association for an Amplify app."]moduleDeleteDomainAssociationRequest=structtypenonrect={appId:AppId.t[@ocaml.doc"The unique id for an Amplify app."];domainName:DomainName.t[@ocaml.doc"The name of the domain."]}letcontext_="DeleteDomainAssociationRequest"letmake~appId=fun~domainName->fun()->{appId;domainName}letto_valuex=structure_to_value[("appId",(Some(AppId.to_valuex.appId)));("domainName",(Some(DomainName.to_valuex.domainName)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letdomainName=DomainName.of_xml(Xml.child_exn~context:context_xml_arg0"domainName")inletappId=AppId.of_xml(Xml.child_exn~context:context_xml_arg0"appId")inmake~domainName~appId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letdomainName=field_map_exnjson__"domainName"DomainName.of_jsoninletappId=field_map_exnjson__"appId"AppId.of_jsoninmake~domainName~appId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the delete domain association request."]moduleDeleteBranchResult=structtypenonrect={branch:Branch.toption[@ocaml.doc"The branch for an Amplify app, which maps to a third-party repository branch."]}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`DependentServiceFailureExceptionofDependentServiceFailureException.t|`InternalFailureExceptionofInternalFailureException.t|`NotFoundExceptionofNotFoundException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?branch=fun()->{branch}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"DependentServiceFailureException"->`DependentServiceFailureException(DependentServiceFailureException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"NotFoundException"->`NotFoundException(NotFoundException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"DependentServiceFailureException"->`DependentServiceFailureException(DependentServiceFailureException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"NotFoundException"->`NotFoundException(NotFoundException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`DependentServiceFailureExceptione->`Assoc[("error",(`String"DependentServiceFailureException"));("details",(DependentServiceFailureException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`NotFoundExceptione->`Assoc[("error",(`String"NotFoundException"));("details",(NotFoundException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("branch",(Option.mapx.branch~f:Branch.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letbranch=(Option.map~f:Branch.of_xml)(Xml.childxml_arg0"branch")inmake?branch()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letbranch=field_mapjson__"branch"Branch.of_jsoninmake?branch()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The result structure for the delete branch request."]moduleDeleteBranchRequest=structtypenonrect={appId:AppId.t[@ocaml.doc"The unique ID for an Amplify app."];branchName:BranchName.t[@ocaml.doc"The name of the branch."]}letcontext_="DeleteBranchRequest"letmake~appId=fun~branchName->fun()->{appId;branchName}letto_valuex=structure_to_value[("appId",(Some(AppId.to_valuex.appId)));("branchName",(Some(BranchName.to_valuex.branchName)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letbranchName=BranchName.of_xml(Xml.child_exn~context:context_xml_arg0"branchName")inletappId=AppId.of_xml(Xml.child_exn~context:context_xml_arg0"appId")inmake~branchName~appId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letbranchName=field_map_exnjson__"branchName"BranchName.of_jsoninletappId=field_map_exnjson__"appId"AppId.of_jsoninmake~branchName~appId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the delete branch request."]moduleDeleteBackendEnvironmentResult=structtypenonrect={backendEnvironment:BackendEnvironment.toption[@ocaml.doc"Describes the backend environment for an Amplify app."]}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`DependentServiceFailureExceptionofDependentServiceFailureException.t|`InternalFailureExceptionofInternalFailureException.t|`NotFoundExceptionofNotFoundException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?backendEnvironment=fun()->{backendEnvironment}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"DependentServiceFailureException"->`DependentServiceFailureException(DependentServiceFailureException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"NotFoundException"->`NotFoundException(NotFoundException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"DependentServiceFailureException"->`DependentServiceFailureException(DependentServiceFailureException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"NotFoundException"->`NotFoundException(NotFoundException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`DependentServiceFailureExceptione->`Assoc[("error",(`String"DependentServiceFailureException"));("details",(DependentServiceFailureException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`NotFoundExceptione->`Assoc[("error",(`String"NotFoundException"));("details",(NotFoundException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("backendEnvironment",(Option.mapx.backendEnvironment~f:BackendEnvironment.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letbackendEnvironment=(Option.map~f:BackendEnvironment.of_xml)(Xml.childxml_arg0"backendEnvironment")inmake?backendEnvironment()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letbackendEnvironment=field_mapjson__"backendEnvironment"BackendEnvironment.of_jsoninmake?backendEnvironment()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The result structure of the delete backend environment result."]moduleDeleteBackendEnvironmentRequest=structtypenonrect={appId:AppId.t[@ocaml.doc"The unique ID of an Amplify app."];environmentName:EnvironmentName.t[@ocaml.doc"The name of a backend environment of an Amplify app."]}letcontext_="DeleteBackendEnvironmentRequest"letmake~appId=fun~environmentName->fun()->{appId;environmentName}letto_valuex=structure_to_value[("appId",(Some(AppId.to_valuex.appId)));("environmentName",(Some(EnvironmentName.to_valuex.environmentName)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letenvironmentName=EnvironmentName.of_xml(Xml.child_exn~context:context_xml_arg0"environmentName")inletappId=AppId.of_xml(Xml.child_exn~context:context_xml_arg0"appId")inmake~environmentName~appId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letenvironmentName=field_map_exnjson__"environmentName"EnvironmentName.of_jsoninletappId=field_map_exnjson__"appId"AppId.of_jsoninmake~environmentName~appId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the delete backend environment request."]moduleDeleteAppResult=structtypenonrect={app:App.toption}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`DependentServiceFailureExceptionofDependentServiceFailureException.t|`InternalFailureExceptionofInternalFailureException.t|`NotFoundExceptionofNotFoundException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?app=fun()->{app}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"DependentServiceFailureException"->`DependentServiceFailureException(DependentServiceFailureException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"NotFoundException"->`NotFoundException(NotFoundException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"DependentServiceFailureException"->`DependentServiceFailureException(DependentServiceFailureException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"NotFoundException"->`NotFoundException(NotFoundException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`DependentServiceFailureExceptione->`Assoc[("error",(`String"DependentServiceFailureException"));("details",(DependentServiceFailureException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`NotFoundExceptione->`Assoc[("error",(`String"NotFoundException"));("details",(NotFoundException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("app",(Option.mapx.app~f:App.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letapp=(Option.map~f:App.of_xml)(Xml.childxml_arg0"app")inmake?app()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letapp=field_mapjson__"app"App.of_jsoninmake?app()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The result structure for the delete app request."]moduleDeleteAppRequest=structtypenonrect={appId:AppId.t[@ocaml.doc"The unique ID for an Amplify app."]}letcontext_="DeleteAppRequest"letmake~appId=fun()->{appId}letto_valuex=structure_to_value[("appId",(Some(AppId.to_valuex.appId)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letappId=AppId.of_xml(Xml.child_exn~context:context_xml_arg0"appId")inmake~appId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letappId=field_map_exnjson__"appId"AppId.of_jsoninmake~appId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Describes the request structure for the delete app request."]moduleCreateWebhookResult=structtypenonrect={webhook:Webhook.toption[@ocaml.doc"Describes a webhook that connects repository events to an Amplify app."]}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`DependentServiceFailureExceptionofDependentServiceFailureException.t|`InternalFailureExceptionofInternalFailureException.t|`LimitExceededExceptionofLimitExceededException.t|`NotFoundExceptionofNotFoundException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?webhook=fun()->{webhook}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"DependentServiceFailureException"->`DependentServiceFailureException(DependentServiceFailureException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_jsonjson)|"NotFoundException"->`NotFoundException(NotFoundException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"DependentServiceFailureException"->`DependentServiceFailureException(DependentServiceFailureException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_xmlxml)|"NotFoundException"->`NotFoundException(NotFoundException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`DependentServiceFailureExceptione->`Assoc[("error",(`String"DependentServiceFailureException"));("details",(DependentServiceFailureException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`LimitExceededExceptione->`Assoc[("error",(`String"LimitExceededException"));("details",(LimitExceededException.to_jsone))]|`NotFoundExceptione->`Assoc[("error",(`String"NotFoundException"));("details",(NotFoundException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("webhook",(Option.mapx.webhook~f:Webhook.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letwebhook=(Option.map~f:Webhook.of_xml)(Xml.childxml_arg0"webhook")inmake?webhook()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letwebhook=field_mapjson__"webhook"Webhook.of_jsoninmake?webhook()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The result structure for the create webhook request."]moduleCreateWebhookRequest=structtypenonrect={appId:AppId.t[@ocaml.doc"The unique ID for an Amplify app."];branchName:BranchName.t[@ocaml.doc"The name for a branch that is part of an Amplify app."];description:Description.toption[@ocaml.doc"The description for a webhook."]}letcontext_="CreateWebhookRequest"letmake?description=fun~appId->fun~branchName->fun()->{description;appId;branchName}letto_valuex=structure_to_value[("appId",(Some(AppId.to_valuex.appId)));("branchName",(Some(BranchName.to_valuex.branchName)));("description",(Option.mapx.description~f:Description.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letdescription=(Option.map~f:Description.of_xml)(Xml.childxml_arg0"description")inletbranchName=BranchName.of_xml(Xml.child_exn~context:context_xml_arg0"branchName")inletappId=AppId.of_xml(Xml.child_exn~context:context_xml_arg0"appId")inmake?description~branchName~appId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letdescription=field_mapjson__"description"Description.of_jsoninletbranchName=field_map_exnjson__"branchName"BranchName.of_jsoninletappId=field_map_exnjson__"appId"AppId.of_jsoninmake?description~branchName~appId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the create webhook request."]moduleCreateDomainAssociationResult=structtypenonrect={domainAssociation:DomainAssociation.toption[@ocaml.doc"Describes the structure of a domain association, which associates a custom domain with an Amplify app."]}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`DependentServiceFailureExceptionofDependentServiceFailureException.t|`InternalFailureExceptionofInternalFailureException.t|`LimitExceededExceptionofLimitExceededException.t|`NotFoundExceptionofNotFoundException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?domainAssociation=fun()->{domainAssociation}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"DependentServiceFailureException"->`DependentServiceFailureException(DependentServiceFailureException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_jsonjson)|"NotFoundException"->`NotFoundException(NotFoundException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"DependentServiceFailureException"->`DependentServiceFailureException(DependentServiceFailureException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_xmlxml)|"NotFoundException"->`NotFoundException(NotFoundException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`DependentServiceFailureExceptione->`Assoc[("error",(`String"DependentServiceFailureException"));("details",(DependentServiceFailureException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`LimitExceededExceptione->`Assoc[("error",(`String"LimitExceededException"));("details",(LimitExceededException.to_jsone))]|`NotFoundExceptione->`Assoc[("error",(`String"NotFoundException"));("details",(NotFoundException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("domainAssociation",(Option.mapx.domainAssociation~f:DomainAssociation.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letdomainAssociation=(Option.map~f:DomainAssociation.of_xml)(Xml.childxml_arg0"domainAssociation")inmake?domainAssociation()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letdomainAssociation=field_mapjson__"domainAssociation"DomainAssociation.of_jsoninmake?domainAssociation()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The result structure for the create domain association request."]moduleCreateDomainAssociationRequest=structtypenonrect={appId:AppId.t[@ocaml.doc"The unique ID for an Amplify app."];domainName:DomainName.t[@ocaml.doc"The domain name for the domain association."];enableAutoSubDomain:EnableAutoSubDomain.toption[@ocaml.doc"Enables the automated creation of subdomains for branches."];subDomainSettings:SubDomainSettings.t[@ocaml.doc"The setting for the subdomain."];autoSubDomainCreationPatterns:AutoSubDomainCreationPatterns.toption[@ocaml.doc"Sets the branch patterns for automatic subdomain creation."];autoSubDomainIAMRole:AutoSubDomainIAMRole.toption[@ocaml.doc"The required AWS Identity and Access Management (IAM) service role for the Amazon Resource Name (ARN) for automatically creating subdomains."];certificateSettings:CertificateSettings.toption[@ocaml.doc"The type of SSL/TLS certificate to use for your custom domain. If you don't specify a certificate type, Amplify uses the default certificate that it provisions and manages for you."]}letcontext_="CreateDomainAssociationRequest"letmake?enableAutoSubDomain=fun?autoSubDomainCreationPatterns->fun?autoSubDomainIAMRole->fun?certificateSettings->fun~appId->fun~domainName->fun~subDomainSettings->fun()->{enableAutoSubDomain;autoSubDomainCreationPatterns;autoSubDomainIAMRole;certificateSettings;appId;domainName;subDomainSettings}letto_valuex=structure_to_value[("appId",(Some(AppId.to_valuex.appId)));("domainName",(Some(DomainName.to_valuex.domainName)));("enableAutoSubDomain",(Option.mapx.enableAutoSubDomain~f:EnableAutoSubDomain.to_value));("subDomainSettings",(Some(SubDomainSettings.to_valuex.subDomainSettings)));("autoSubDomainCreationPatterns",(Option.mapx.autoSubDomainCreationPatterns~f:AutoSubDomainCreationPatterns.to_value));("autoSubDomainIAMRole",(Option.mapx.autoSubDomainIAMRole~f:AutoSubDomainIAMRole.to_value));("certificateSettings",(Option.mapx.certificateSettings~f:CertificateSettings.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letcertificateSettings=(Option.map~f:CertificateSettings.of_xml)(Xml.childxml_arg0"certificateSettings")inletautoSubDomainIAMRole=(Option.map~f:AutoSubDomainIAMRole.of_xml)(Xml.childxml_arg0"autoSubDomainIAMRole")inletautoSubDomainCreationPatterns=(Option.map~f:AutoSubDomainCreationPatterns.of_xml)(Xml.childxml_arg0"autoSubDomainCreationPatterns")inletsubDomainSettings=SubDomainSettings.of_xml(Xml.child_exn~context:context_xml_arg0"subDomainSettings")inletenableAutoSubDomain=(Option.map~f:EnableAutoSubDomain.of_xml)(Xml.childxml_arg0"enableAutoSubDomain")inletdomainName=DomainName.of_xml(Xml.child_exn~context:context_xml_arg0"domainName")inletappId=AppId.of_xml(Xml.child_exn~context:context_xml_arg0"appId")inmake?certificateSettings?autoSubDomainIAMRole?autoSubDomainCreationPatterns~subDomainSettings?enableAutoSubDomain~domainName~appId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letcertificateSettings=field_mapjson__"certificateSettings"CertificateSettings.of_jsoninletautoSubDomainIAMRole=field_mapjson__"autoSubDomainIAMRole"AutoSubDomainIAMRole.of_jsoninletautoSubDomainCreationPatterns=field_mapjson__"autoSubDomainCreationPatterns"AutoSubDomainCreationPatterns.of_jsoninletsubDomainSettings=field_map_exnjson__"subDomainSettings"SubDomainSettings.of_jsoninletenableAutoSubDomain=field_mapjson__"enableAutoSubDomain"EnableAutoSubDomain.of_jsoninletdomainName=field_map_exnjson__"domainName"DomainName.of_jsoninletappId=field_map_exnjson__"appId"AppId.of_jsoninmake?certificateSettings?autoSubDomainIAMRole?autoSubDomainCreationPatterns~subDomainSettings?enableAutoSubDomain~domainName~appId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the create domain association request."]moduleCreateDeploymentResult=structtypenonrect={jobId:JobId.toption[@ocaml.doc"The job ID for this deployment. will supply to start deployment api."];fileUploadUrls:FileUploadUrls.toption[@ocaml.doc"When the fileMap argument is provided in the request, fileUploadUrls will contain a map of file names to upload URLs."];zipUploadUrl:UploadUrl.toption[@ocaml.doc"When the fileMap argument is not provided in the request, this zipUploadUrl is returned."]}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`InternalFailureExceptionofInternalFailureException.t|`LimitExceededExceptionofLimitExceededException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?jobId=fun?fileUploadUrls->fun?zipUploadUrl->fun()->{jobId;fileUploadUrls;zipUploadUrl}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`LimitExceededExceptione->`Assoc[("error",(`String"LimitExceededException"));("details",(LimitExceededException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("jobId",(Option.mapx.jobId~f:JobId.to_value));("fileUploadUrls",(Option.mapx.fileUploadUrls~f:FileUploadUrls.to_value));("zipUploadUrl",(Option.mapx.zipUploadUrl~f:UploadUrl.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letzipUploadUrl=(Option.map~f:UploadUrl.of_xml)(Xml.childxml_arg0"zipUploadUrl")inletfileUploadUrls=(Option.map~f:FileUploadUrls.of_xml)(Xml.childxml_arg0"fileUploadUrls")inletjobId=(Option.map~f:JobId.of_xml)(Xml.childxml_arg0"jobId")inmake?zipUploadUrl?fileUploadUrls?jobId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letzipUploadUrl=field_mapjson__"zipUploadUrl"UploadUrl.of_jsoninletfileUploadUrls=field_mapjson__"fileUploadUrls"FileUploadUrls.of_jsoninletjobId=field_mapjson__"jobId"JobId.of_jsoninmake?zipUploadUrl?fileUploadUrls?jobId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The result structure for the create a new deployment request."]moduleCreateDeploymentRequest=structtypenonrect={appId:AppId.t[@ocaml.doc"The unique ID for an Amplify app."];branchName:BranchName.t[@ocaml.doc"The name of the branch to use for the job."];fileMap:FileMap.toption[@ocaml.doc"An optional file map that contains the file name as the key and the file content md5 hash as the value. If this argument is provided, the service will generate a unique upload URL per file. Otherwise, the service will only generate a single upload URL for the zipped files."]}letcontext_="CreateDeploymentRequest"letmake?fileMap=fun~appId->fun~branchName->fun()->{fileMap;appId;branchName}letto_valuex=structure_to_value[("appId",(Some(AppId.to_valuex.appId)));("branchName",(Some(BranchName.to_valuex.branchName)));("fileMap",(Option.mapx.fileMap~f:FileMap.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letfileMap=(Option.map~f:FileMap.of_xml)(Xml.childxml_arg0"fileMap")inletbranchName=BranchName.of_xml(Xml.child_exn~context:context_xml_arg0"branchName")inletappId=AppId.of_xml(Xml.child_exn~context:context_xml_arg0"appId")inmake?fileMap~branchName~appId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letfileMap=field_mapjson__"fileMap"FileMap.of_jsoninletbranchName=field_map_exnjson__"branchName"BranchName.of_jsoninletappId=field_map_exnjson__"appId"AppId.of_jsoninmake?fileMap~branchName~appId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the create a new deployment request."]moduleCreateBranchResult=structtypenonrect={branch:Branch.toption[@ocaml.doc"Describes the branch for an Amplify app, which maps to a third-party repository branch."]}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`DependentServiceFailureExceptionofDependentServiceFailureException.t|`InternalFailureExceptionofInternalFailureException.t|`LimitExceededExceptionofLimitExceededException.t|`NotFoundExceptionofNotFoundException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?branch=fun()->{branch}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"DependentServiceFailureException"->`DependentServiceFailureException(DependentServiceFailureException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_jsonjson)|"NotFoundException"->`NotFoundException(NotFoundException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"DependentServiceFailureException"->`DependentServiceFailureException(DependentServiceFailureException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_xmlxml)|"NotFoundException"->`NotFoundException(NotFoundException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`DependentServiceFailureExceptione->`Assoc[("error",(`String"DependentServiceFailureException"));("details",(DependentServiceFailureException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`LimitExceededExceptione->`Assoc[("error",(`String"LimitExceededException"));("details",(LimitExceededException.to_jsone))]|`NotFoundExceptione->`Assoc[("error",(`String"NotFoundException"));("details",(NotFoundException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("branch",(Option.mapx.branch~f:Branch.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letbranch=(Option.map~f:Branch.of_xml)(Xml.childxml_arg0"branch")inmake?branch()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letbranch=field_mapjson__"branch"Branch.of_jsoninmake?branch()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The result structure for create branch request."]moduleCreateBranchRequest=structtypenonrect={appId:AppId.t[@ocaml.doc"The unique ID for an Amplify app."];branchName:BranchName.t[@ocaml.doc"The name for the branch."];description:Description.toption[@ocaml.doc"The description for the branch."];stage:Stage.toption[@ocaml.doc"Describes the current stage for the branch."];framework:Framework.toption[@ocaml.doc"The framework for the branch."];enableNotification:EnableNotification.toption[@ocaml.doc"Enables notifications for the branch."];enableAutoBuild:EnableAutoBuild.toption[@ocaml.doc"Enables auto building for the branch."];enableSkewProtection:EnableSkewProtection.toption[@ocaml.doc"Specifies whether the skew protection feature is enabled for the branch. Deployment skew protection is available to Amplify applications to eliminate version skew issues between client and servers in web applications. When you apply skew protection to a branch, you can ensure that your clients always interact with the correct version of server-side assets, regardless of when a deployment occurs. For more information about skew protection, see Skew protection for Amplify deployments in the Amplify User Guide."];environmentVariables:EnvironmentVariables.toption[@ocaml.doc"The environment variables for the branch."];basicAuthCredentials:BasicAuthCredentials.toption[@ocaml.doc"The basic authorization credentials for the branch. You must base64-encode the authorization credentials and provide them in the format user:password."];enableBasicAuth:EnableBasicAuth.toption[@ocaml.doc"Enables basic authorization for the branch."];enablePerformanceMode:EnablePerformanceMode.toption[@ocaml.doc"Enables performance mode for the branch. Performance mode optimizes for faster hosting performance by keeping content cached at the edge for a longer interval. When performance mode is enabled, hosting configuration or code changes can take up to 10 minutes to roll out."];tags:TagMap.toption[@ocaml.doc"The tag for the branch."];buildSpec:BuildSpec.toption[@ocaml.doc"The build specification (build spec) for the branch."];ttl:TTL.toption[@ocaml.doc"The content Time To Live (TTL) for the website in seconds."];displayName:DisplayName.toption[@ocaml.doc"The display name for a branch. This is used as the default domain prefix."];enablePullRequestPreview:EnablePullRequestPreview.toption[@ocaml.doc"Enables pull request previews for this branch."];pullRequestEnvironmentName:PullRequestEnvironmentName.toption[@ocaml.doc"The Amplify environment name for the pull request."];backendEnvironmentArn:BackendEnvironmentArn.toption[@ocaml.doc"The Amazon Resource Name (ARN) for a backend environment that is part of a Gen 1 Amplify app. This field is available to Amplify Gen 1 apps only where the backend is created using Amplify Studio or the Amplify command line interface (CLI)."];backend:Backend.toption[@ocaml.doc"The backend for a Branch of an Amplify app. Use for a backend created from an CloudFormation stack. This field is available to Amplify Gen 2 apps only. When you deploy an application with Amplify Gen 2, you provision the app's backend infrastructure using Typescript code."];computeRoleArn:ComputeRoleArn.toption[@ocaml.doc"The Amazon Resource Name (ARN) of the IAM role to assign to a branch of an SSR app. The SSR Compute role allows the Amplify Hosting compute service to securely access specific Amazon Web Services resources based on the role's permissions. For more information about the SSR Compute role, see Adding an SSR Compute role in the Amplify User Guide."]}letcontext_="CreateBranchRequest"letmake?description=fun?stage->fun?framework->fun?enableNotification->fun?enableAutoBuild->fun?enableSkewProtection->fun?environmentVariables->fun?basicAuthCredentials->fun?enableBasicAuth->fun?enablePerformanceMode->fun?tags->fun?buildSpec->fun?ttl->fun?displayName->fun?enablePullRequestPreview->fun?pullRequestEnvironmentName->fun?backendEnvironmentArn->fun?backend->fun?computeRoleArn->fun~appId->fun~branchName->fun()->{description;stage;framework;enableNotification;enableAutoBuild;enableSkewProtection;environmentVariables;basicAuthCredentials;enableBasicAuth;enablePerformanceMode;tags;buildSpec;ttl;displayName;enablePullRequestPreview;pullRequestEnvironmentName;backendEnvironmentArn;backend;computeRoleArn;appId;branchName}letto_valuex=structure_to_value[("appId",(Some(AppId.to_valuex.appId)));("branchName",(Some(BranchName.to_valuex.branchName)));("description",(Option.mapx.description~f:Description.to_value));("stage",(Option.mapx.stage~f:Stage.to_value));("framework",(Option.mapx.framework~f:Framework.to_value));("enableNotification",(Option.mapx.enableNotification~f:EnableNotification.to_value));("enableAutoBuild",(Option.mapx.enableAutoBuild~f:EnableAutoBuild.to_value));("enableSkewProtection",(Option.mapx.enableSkewProtection~f:EnableSkewProtection.to_value));("environmentVariables",(Option.mapx.environmentVariables~f:EnvironmentVariables.to_value));("basicAuthCredentials",(Option.mapx.basicAuthCredentials~f:BasicAuthCredentials.to_value));("enableBasicAuth",(Option.mapx.enableBasicAuth~f:EnableBasicAuth.to_value));("enablePerformanceMode",(Option.mapx.enablePerformanceMode~f:EnablePerformanceMode.to_value));("tags",(Option.mapx.tags~f:TagMap.to_value));("buildSpec",(Option.mapx.buildSpec~f:BuildSpec.to_value));("ttl",(Option.mapx.ttl~f:TTL.to_value));("displayName",(Option.mapx.displayName~f:DisplayName.to_value));("enablePullRequestPreview",(Option.mapx.enablePullRequestPreview~f:EnablePullRequestPreview.to_value));("pullRequestEnvironmentName",(Option.mapx.pullRequestEnvironmentName~f:PullRequestEnvironmentName.to_value));("backendEnvironmentArn",(Option.mapx.backendEnvironmentArn~f:BackendEnvironmentArn.to_value));("backend",(Option.mapx.backend~f:Backend.to_value));("computeRoleArn",(Option.mapx.computeRoleArn~f:ComputeRoleArn.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letcomputeRoleArn=(Option.map~f:ComputeRoleArn.of_xml)(Xml.childxml_arg0"computeRoleArn")inletbackend=(Option.map~f:Backend.of_xml)(Xml.childxml_arg0"backend")inletbackendEnvironmentArn=(Option.map~f:BackendEnvironmentArn.of_xml)(Xml.childxml_arg0"backendEnvironmentArn")inletpullRequestEnvironmentName=(Option.map~f:PullRequestEnvironmentName.of_xml)(Xml.childxml_arg0"pullRequestEnvironmentName")inletenablePullRequestPreview=(Option.map~f:EnablePullRequestPreview.of_xml)(Xml.childxml_arg0"enablePullRequestPreview")inletdisplayName=(Option.map~f:DisplayName.of_xml)(Xml.childxml_arg0"displayName")inletttl=(Option.map~f:TTL.of_xml)(Xml.childxml_arg0"ttl")inletbuildSpec=(Option.map~f:BuildSpec.of_xml)(Xml.childxml_arg0"buildSpec")inlettags=(Option.map~f:TagMap.of_xml)(Xml.childxml_arg0"tags")inletenablePerformanceMode=(Option.map~f:EnablePerformanceMode.of_xml)(Xml.childxml_arg0"enablePerformanceMode")inletenableBasicAuth=(Option.map~f:EnableBasicAuth.of_xml)(Xml.childxml_arg0"enableBasicAuth")inletbasicAuthCredentials=(Option.map~f:BasicAuthCredentials.of_xml)(Xml.childxml_arg0"basicAuthCredentials")inletenvironmentVariables=(Option.map~f:EnvironmentVariables.of_xml)(Xml.childxml_arg0"environmentVariables")inletenableSkewProtection=(Option.map~f:EnableSkewProtection.of_xml)(Xml.childxml_arg0"enableSkewProtection")inletenableAutoBuild=(Option.map~f:EnableAutoBuild.of_xml)(Xml.childxml_arg0"enableAutoBuild")inletenableNotification=(Option.map~f:EnableNotification.of_xml)(Xml.childxml_arg0"enableNotification")inletframework=(Option.map~f:Framework.of_xml)(Xml.childxml_arg0"framework")inletstage=(Option.map~f:Stage.of_xml)(Xml.childxml_arg0"stage")inletdescription=(Option.map~f:Description.of_xml)(Xml.childxml_arg0"description")inletbranchName=BranchName.of_xml(Xml.child_exn~context:context_xml_arg0"branchName")inletappId=AppId.of_xml(Xml.child_exn~context:context_xml_arg0"appId")inmake?computeRoleArn?backend?backendEnvironmentArn?pullRequestEnvironmentName?enablePullRequestPreview?displayName?ttl?buildSpec?tags?enablePerformanceMode?enableBasicAuth?basicAuthCredentials?environmentVariables?enableSkewProtection?enableAutoBuild?enableNotification?framework?stage?description~branchName~appId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letcomputeRoleArn=field_mapjson__"computeRoleArn"ComputeRoleArn.of_jsoninletbackend=field_mapjson__"backend"Backend.of_jsoninletbackendEnvironmentArn=field_mapjson__"backendEnvironmentArn"BackendEnvironmentArn.of_jsoninletpullRequestEnvironmentName=field_mapjson__"pullRequestEnvironmentName"PullRequestEnvironmentName.of_jsoninletenablePullRequestPreview=field_mapjson__"enablePullRequestPreview"EnablePullRequestPreview.of_jsoninletdisplayName=field_mapjson__"displayName"DisplayName.of_jsoninletttl=field_mapjson__"ttl"TTL.of_jsoninletbuildSpec=field_mapjson__"buildSpec"BuildSpec.of_jsoninlettags=field_mapjson__"tags"TagMap.of_jsoninletenablePerformanceMode=field_mapjson__"enablePerformanceMode"EnablePerformanceMode.of_jsoninletenableBasicAuth=field_mapjson__"enableBasicAuth"EnableBasicAuth.of_jsoninletbasicAuthCredentials=field_mapjson__"basicAuthCredentials"BasicAuthCredentials.of_jsoninletenvironmentVariables=field_mapjson__"environmentVariables"EnvironmentVariables.of_jsoninletenableSkewProtection=field_mapjson__"enableSkewProtection"EnableSkewProtection.of_jsoninletenableAutoBuild=field_mapjson__"enableAutoBuild"EnableAutoBuild.of_jsoninletenableNotification=field_mapjson__"enableNotification"EnableNotification.of_jsoninletframework=field_mapjson__"framework"Framework.of_jsoninletstage=field_mapjson__"stage"Stage.of_jsoninletdescription=field_mapjson__"description"Description.of_jsoninletbranchName=field_map_exnjson__"branchName"BranchName.of_jsoninletappId=field_map_exnjson__"appId"AppId.of_jsoninmake?computeRoleArn?backend?backendEnvironmentArn?pullRequestEnvironmentName?enablePullRequestPreview?displayName?ttl?buildSpec?tags?enablePerformanceMode?enableBasicAuth?basicAuthCredentials?environmentVariables?enableSkewProtection?enableAutoBuild?enableNotification?framework?stage?description~branchName~appId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the create branch request."]moduleCreateBackendEnvironmentResult=structtypenonrect={backendEnvironment:BackendEnvironment.toption[@ocaml.doc"Describes the backend environment for an Amplify app."]}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`InternalFailureExceptionofInternalFailureException.t|`LimitExceededExceptionofLimitExceededException.t|`NotFoundExceptionofNotFoundException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?backendEnvironment=fun()->{backendEnvironment}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_jsonjson)|"NotFoundException"->`NotFoundException(NotFoundException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_xmlxml)|"NotFoundException"->`NotFoundException(NotFoundException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`LimitExceededExceptione->`Assoc[("error",(`String"LimitExceededException"));("details",(LimitExceededException.to_jsone))]|`NotFoundExceptione->`Assoc[("error",(`String"NotFoundException"));("details",(NotFoundException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("backendEnvironment",(Option.mapx.backendEnvironment~f:BackendEnvironment.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letbackendEnvironment=(Option.map~f:BackendEnvironment.of_xml)(Xml.childxml_arg0"backendEnvironment")inmake?backendEnvironment()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letbackendEnvironment=field_mapjson__"backendEnvironment"BackendEnvironment.of_jsoninmake?backendEnvironment()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The result structure for the create backend environment request."]moduleCreateBackendEnvironmentRequest=structtypenonrect={appId:AppId.t[@ocaml.doc"The unique ID for an Amplify app."];environmentName:EnvironmentName.t[@ocaml.doc"The name for the backend environment."];stackName:StackName.toption[@ocaml.doc"The AWS CloudFormation stack name of a backend environment."];deploymentArtifacts:DeploymentArtifacts.toption[@ocaml.doc"The name of deployment artifacts."]}letcontext_="CreateBackendEnvironmentRequest"letmake?stackName=fun?deploymentArtifacts->fun~appId->fun~environmentName->fun()->{stackName;deploymentArtifacts;appId;environmentName}letto_valuex=structure_to_value[("appId",(Some(AppId.to_valuex.appId)));("environmentName",(Some(EnvironmentName.to_valuex.environmentName)));("stackName",(Option.mapx.stackName~f:StackName.to_value));("deploymentArtifacts",(Option.mapx.deploymentArtifacts~f:DeploymentArtifacts.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letdeploymentArtifacts=(Option.map~f:DeploymentArtifacts.of_xml)(Xml.childxml_arg0"deploymentArtifacts")inletstackName=(Option.map~f:StackName.of_xml)(Xml.childxml_arg0"stackName")inletenvironmentName=EnvironmentName.of_xml(Xml.child_exn~context:context_xml_arg0"environmentName")inletappId=AppId.of_xml(Xml.child_exn~context:context_xml_arg0"appId")inmake?deploymentArtifacts?stackName~environmentName~appId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letdeploymentArtifacts=field_mapjson__"deploymentArtifacts"DeploymentArtifacts.of_jsoninletstackName=field_mapjson__"stackName"StackName.of_jsoninletenvironmentName=field_map_exnjson__"environmentName"EnvironmentName.of_jsoninletappId=field_map_exnjson__"appId"AppId.of_jsoninmake?deploymentArtifacts?stackName~environmentName~appId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure for the backend environment create request."]moduleCreateAppResult=structtypenonrect={app:App.toption}typenonrecerror=[`BadRequestExceptionofBadRequestException.t|`DependentServiceFailureExceptionofDependentServiceFailureException.t|`InternalFailureExceptionofInternalFailureException.t|`LimitExceededExceptionofLimitExceededException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?app=fun()->{app}leterror_of_jsonnamejson=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_jsonjson)|"DependentServiceFailureException"->`DependentServiceFailureException(DependentServiceFailureException.of_jsonjson)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_jsonjson)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"BadRequestException"->`BadRequestException(BadRequestException.of_xmlxml)|"DependentServiceFailureException"->`DependentServiceFailureException(DependentServiceFailureException.of_xmlxml)|"InternalFailureException"->`InternalFailureException(InternalFailureException.of_xmlxml)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`BadRequestExceptione->`Assoc[("error",(`String"BadRequestException"));("details",(BadRequestException.to_jsone))]|`DependentServiceFailureExceptione->`Assoc[("error",(`String"DependentServiceFailureException"));("details",(DependentServiceFailureException.to_jsone))]|`InternalFailureExceptione->`Assoc[("error",(`String"InternalFailureException"));("details",(InternalFailureException.to_jsone))]|`LimitExceededExceptione->`Assoc[("error",(`String"LimitExceededException"));("details",(LimitExceededException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("app",(Option.mapx.app~f:App.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letapp=(Option.map~f:App.of_xml)(Xml.childxml_arg0"app")inmake?app()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letapp=field_mapjson__"app"App.of_jsoninmake?app()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Creates a new Amplify app."]moduleCreateAppRequest=structtypenonrect={name:Name.t[@ocaml.doc"The name of the Amplify app."];description:Description.toption[@ocaml.doc"The description of the Amplify app."];repository:Repository.toption[@ocaml.doc"The Git repository for the Amplify app."];platform:Platform.toption[@ocaml.doc"The platform for the Amplify app. For a static app, set the platform type to WEB. For a dynamic server-side rendered (SSR) app, set the platform type to WEB_COMPUTE. For an app requiring Amplify Hosting's original SSR support only, set the platform type to WEB_DYNAMIC. If you are deploying an SSG only app with Next.js version 14 or later, you must set the platform type to WEB_COMPUTE and set the artifacts baseDirectory to .next in the application's build settings. For an example of the build specification settings, see Amplify build settings for a Next.js 14 SSG application in the Amplify Hosting User Guide."];computeRoleArn:ComputeRoleArn.toption[@ocaml.doc"The Amazon Resource Name (ARN) of the IAM role to assign to an SSR app. The SSR Compute role allows the Amplify Hosting compute service to securely access specific Amazon Web Services resources based on the role's permissions. For more information about the SSR Compute role, see Adding an SSR Compute role in the Amplify User Guide."];iamServiceRoleArn:ServiceRoleArn.toption[@ocaml.doc"The Amazon Resource Name (ARN) of the IAM service role for the Amplify app."];oauthToken:OauthToken.toption[@ocaml.doc"The OAuth token for a third-party source control system for an Amplify app. The OAuth token is used to create a webhook and a read-only deploy key using SSH cloning. The OAuth token is not stored. Use oauthToken for repository providers other than GitHub, such as Bitbucket or CodeCommit. To authorize access to GitHub as your repository provider, use accessToken. You must specify either oauthToken or accessToken when you create a new app. Existing Amplify apps deployed from a GitHub repository using OAuth continue to work with CI/CD. However, we strongly recommend that you migrate these apps to use the GitHub App. For more information, see Migrating an existing OAuth app to the Amplify GitHub App in the Amplify User Guide ."];accessToken:AccessToken.toption[@ocaml.doc"The personal access token for a GitHub repository for an Amplify app. The personal access token is used to authorize access to a GitHub repository using the Amplify GitHub App. The token is not stored. Use accessToken for GitHub repositories only. To authorize access to a repository provider such as Bitbucket or CodeCommit, use oauthToken. You must specify either accessToken or oauthToken when you create a new app. Existing Amplify apps deployed from a GitHub repository using OAuth continue to work with CI/CD. However, we strongly recommend that you migrate these apps to use the GitHub App. For more information, see Migrating an existing OAuth app to the Amplify GitHub App in the Amplify User Guide ."];environmentVariables:EnvironmentVariables.toption[@ocaml.doc"The environment variables map for an Amplify app. For a list of the environment variables that are accessible to Amplify by default, see Amplify Environment variables in the Amplify Hosting User Guide."];enableBranchAutoBuild:EnableBranchAutoBuild.toption[@ocaml.doc"Enables the auto building of branches for an Amplify app."];enableBranchAutoDeletion:EnableBranchAutoDeletion.toption[@ocaml.doc"Automatically disconnects a branch in the Amplify console when you delete a branch from your Git repository."];enableBasicAuth:EnableBasicAuth.toption[@ocaml.doc"Enables basic authorization for an Amplify app. This will apply to all branches that are part of this app."];basicAuthCredentials:BasicAuthCredentials.toption[@ocaml.doc"The credentials for basic authorization for an Amplify app. You must base64-encode the authorization credentials and provide them in the format user:password."];customRules:CustomRules.toption[@ocaml.doc"The custom rewrite and redirect rules for an Amplify app."];tags:TagMap.toption[@ocaml.doc"The tag for an Amplify app."];buildSpec:BuildSpec.toption[@ocaml.doc"The build specification (build spec) for an Amplify app."];customHeaders:CustomHeaders.toption[@ocaml.doc"The custom HTTP headers for an Amplify app."];enableAutoBranchCreation:EnableAutoBranchCreation.toption[@ocaml.doc"Enables automated branch creation for an Amplify app."];autoBranchCreationPatterns:AutoBranchCreationPatterns.toption[@ocaml.doc"The automated branch creation glob patterns for an Amplify app."];autoBranchCreationConfig:AutoBranchCreationConfig.toption[@ocaml.doc"The automated branch creation configuration for an Amplify app."];jobConfig:JobConfig.toption[@ocaml.doc"Describes the configuration details that apply to the jobs for an Amplify app."];cacheConfig:CacheConfig.toption[@ocaml.doc"The cache configuration for the Amplify app."]}letcontext_="CreateAppRequest"letmake?description=fun?repository->fun?platform->fun?computeRoleArn->fun?iamServiceRoleArn->fun?oauthToken->fun?accessToken->fun?environmentVariables->fun?enableBranchAutoBuild->fun?enableBranchAutoDeletion->fun?enableBasicAuth->fun?basicAuthCredentials->fun?customRules->fun?tags->fun?buildSpec->fun?customHeaders->fun?enableAutoBranchCreation->fun?autoBranchCreationPatterns->fun?autoBranchCreationConfig->fun?jobConfig->fun?cacheConfig->fun~name->fun()->{description;repository;platform;computeRoleArn;iamServiceRoleArn;oauthToken;accessToken;environmentVariables;enableBranchAutoBuild;enableBranchAutoDeletion;enableBasicAuth;basicAuthCredentials;customRules;tags;buildSpec;customHeaders;enableAutoBranchCreation;autoBranchCreationPatterns;autoBranchCreationConfig;jobConfig;cacheConfig;name}letto_valuex=structure_to_value[("name",(Some(Name.to_valuex.name)));("description",(Option.mapx.description~f:Description.to_value));("repository",(Option.mapx.repository~f:Repository.to_value));("platform",(Option.mapx.platform~f:Platform.to_value));("computeRoleArn",(Option.mapx.computeRoleArn~f:ComputeRoleArn.to_value));("iamServiceRoleArn",(Option.mapx.iamServiceRoleArn~f:ServiceRoleArn.to_value));("oauthToken",(Option.mapx.oauthToken~f:OauthToken.to_value));("accessToken",(Option.mapx.accessToken~f:AccessToken.to_value));("environmentVariables",(Option.mapx.environmentVariables~f:EnvironmentVariables.to_value));("enableBranchAutoBuild",(Option.mapx.enableBranchAutoBuild~f:EnableBranchAutoBuild.to_value));("enableBranchAutoDeletion",(Option.mapx.enableBranchAutoDeletion~f:EnableBranchAutoDeletion.to_value));("enableBasicAuth",(Option.mapx.enableBasicAuth~f:EnableBasicAuth.to_value));("basicAuthCredentials",(Option.mapx.basicAuthCredentials~f:BasicAuthCredentials.to_value));("customRules",(Option.mapx.customRules~f:CustomRules.to_value));("tags",(Option.mapx.tags~f:TagMap.to_value));("buildSpec",(Option.mapx.buildSpec~f:BuildSpec.to_value));("customHeaders",(Option.mapx.customHeaders~f:CustomHeaders.to_value));("enableAutoBranchCreation",(Option.mapx.enableAutoBranchCreation~f:EnableAutoBranchCreation.to_value));("autoBranchCreationPatterns",(Option.mapx.autoBranchCreationPatterns~f:AutoBranchCreationPatterns.to_value));("autoBranchCreationConfig",(Option.mapx.autoBranchCreationConfig~f:AutoBranchCreationConfig.to_value));("jobConfig",(Option.mapx.jobConfig~f:JobConfig.to_value));("cacheConfig",(Option.mapx.cacheConfig~f:CacheConfig.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letcacheConfig=(Option.map~f:CacheConfig.of_xml)(Xml.childxml_arg0"cacheConfig")inletjobConfig=(Option.map~f:JobConfig.of_xml)(Xml.childxml_arg0"jobConfig")inletautoBranchCreationConfig=(Option.map~f:AutoBranchCreationConfig.of_xml)(Xml.childxml_arg0"autoBranchCreationConfig")inletautoBranchCreationPatterns=(Option.map~f:AutoBranchCreationPatterns.of_xml)(Xml.childxml_arg0"autoBranchCreationPatterns")inletenableAutoBranchCreation=(Option.map~f:EnableAutoBranchCreation.of_xml)(Xml.childxml_arg0"enableAutoBranchCreation")inletcustomHeaders=(Option.map~f:CustomHeaders.of_xml)(Xml.childxml_arg0"customHeaders")inletbuildSpec=(Option.map~f:BuildSpec.of_xml)(Xml.childxml_arg0"buildSpec")inlettags=(Option.map~f:TagMap.of_xml)(Xml.childxml_arg0"tags")inletcustomRules=(Option.map~f:CustomRules.of_xml)(Xml.childxml_arg0"customRules")inletbasicAuthCredentials=(Option.map~f:BasicAuthCredentials.of_xml)(Xml.childxml_arg0"basicAuthCredentials")inletenableBasicAuth=(Option.map~f:EnableBasicAuth.of_xml)(Xml.childxml_arg0"enableBasicAuth")inletenableBranchAutoDeletion=(Option.map~f:EnableBranchAutoDeletion.of_xml)(Xml.childxml_arg0"enableBranchAutoDeletion")inletenableBranchAutoBuild=(Option.map~f:EnableBranchAutoBuild.of_xml)(Xml.childxml_arg0"enableBranchAutoBuild")inletenvironmentVariables=(Option.map~f:EnvironmentVariables.of_xml)(Xml.childxml_arg0"environmentVariables")inletaccessToken=(Option.map~f:AccessToken.of_xml)(Xml.childxml_arg0"accessToken")inletoauthToken=(Option.map~f:OauthToken.of_xml)(Xml.childxml_arg0"oauthToken")inletiamServiceRoleArn=(Option.map~f:ServiceRoleArn.of_xml)(Xml.childxml_arg0"iamServiceRoleArn")inletcomputeRoleArn=(Option.map~f:ComputeRoleArn.of_xml)(Xml.childxml_arg0"computeRoleArn")inletplatform=(Option.map~f:Platform.of_xml)(Xml.childxml_arg0"platform")inletrepository=(Option.map~f:Repository.of_xml)(Xml.childxml_arg0"repository")inletdescription=(Option.map~f:Description.of_xml)(Xml.childxml_arg0"description")inletname=Name.of_xml(Xml.child_exn~context:context_xml_arg0"name")inmake?cacheConfig?jobConfig?autoBranchCreationConfig?autoBranchCreationPatterns?enableAutoBranchCreation?customHeaders?buildSpec?tags?customRules?basicAuthCredentials?enableBasicAuth?enableBranchAutoDeletion?enableBranchAutoBuild?environmentVariables?accessToken?oauthToken?iamServiceRoleArn?computeRoleArn?platform?repository?description~name()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letcacheConfig=field_mapjson__"cacheConfig"CacheConfig.of_jsoninletjobConfig=field_mapjson__"jobConfig"JobConfig.of_jsoninletautoBranchCreationConfig=field_mapjson__"autoBranchCreationConfig"AutoBranchCreationConfig.of_jsoninletautoBranchCreationPatterns=field_mapjson__"autoBranchCreationPatterns"AutoBranchCreationPatterns.of_jsoninletenableAutoBranchCreation=field_mapjson__"enableAutoBranchCreation"EnableAutoBranchCreation.of_jsoninletcustomHeaders=field_mapjson__"customHeaders"CustomHeaders.of_jsoninletbuildSpec=field_mapjson__"buildSpec"BuildSpec.of_jsoninlettags=field_mapjson__"tags"TagMap.of_jsoninletcustomRules=field_mapjson__"customRules"CustomRules.of_jsoninletbasicAuthCredentials=field_mapjson__"basicAuthCredentials"BasicAuthCredentials.of_jsoninletenableBasicAuth=field_mapjson__"enableBasicAuth"EnableBasicAuth.of_jsoninletenableBranchAutoDeletion=field_mapjson__"enableBranchAutoDeletion"EnableBranchAutoDeletion.of_jsoninletenableBranchAutoBuild=field_mapjson__"enableBranchAutoBuild"EnableBranchAutoBuild.of_jsoninletenvironmentVariables=field_mapjson__"environmentVariables"EnvironmentVariables.of_jsoninletaccessToken=field_mapjson__"accessToken"AccessToken.of_jsoninletoauthToken=field_mapjson__"oauthToken"OauthToken.of_jsoninletiamServiceRoleArn=field_mapjson__"iamServiceRoleArn"ServiceRoleArn.of_jsoninletcomputeRoleArn=field_mapjson__"computeRoleArn"ComputeRoleArn.of_jsoninletplatform=field_mapjson__"platform"Platform.of_jsoninletrepository=field_mapjson__"repository"Repository.of_jsoninletdescription=field_mapjson__"description"Description.of_jsoninletname=field_map_exnjson__"name"Name.of_jsoninmake?cacheConfig?jobConfig?autoBranchCreationConfig?autoBranchCreationPatterns?enableAutoBranchCreation?customHeaders?buildSpec?tags?customRules?basicAuthCredentials?enableBasicAuth?enableBranchAutoDeletion?enableBranchAutoBuild?environmentVariables?accessToken?oauthToken?iamServiceRoleArn?computeRoleArn?platform?repository?description~name()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request structure used to create apps in Amplify."]