1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616(* 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.mpaletapiVersion="2022-07-26"letendpointPrefix="mpa"letserviceFullName="AWS Multi-party Approval"letsignatureVersion="v4"letprotocol="rest_json"letglobalEndpoint=endpointPrefix^".amazonaws.com"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[]))])moduleMfaSyncStatus=structtypenonrect=|IN_SYNC|OUT_OF_SYNC|Non_static_idofstringletmakei=iletto_string=function|IN_SYNC->"IN_SYNC"|OUT_OF_SYNC->"OUT_OF_SYNC"|Non_static_ids->sletof_string=function|"IN_SYNC"->IN_SYNC|"OUT_OF_SYNC"->OUT_OF_SYNC|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 MfaSyncStatus"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"MfaSyncStatus"j)letto_json=simple_to_jsonto_valueendmoduleMfaType=structtypenonrect=|EMAIL_OTP|Non_static_idofstringletmakei=iletto_string=function|EMAIL_OTP->"EMAIL_OTP"|Non_static_ids->sletof_string=function|"EMAIL_OTP"->EMAIL_OTP|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 MfaType"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"MfaType"j)letto_json=simple_to_jsonto_valueendmoduleString_=structtypenonrect=stringletcontext_="String"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:1000)>>=(fun()->check_string_mini~min:0));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"String"jletto_json=simple_to_jsonto_valueendmoduleMofNApprovalStrategyMinApprovalsRequiredInteger=structtypenonrect=intletmakei=letopenResultinok_or_failwith(check_int_mini~min:1);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 MofNApprovalStrategyMinApprovalsRequiredInteger"xml_arg0)letof_jsonj=Int.of_float(float_of_json~kind:"an integer"j)letto_json=simple_to_jsonto_valueendmoduleMfaMethod=structtypenonrect={type_:MfaType.toption[@ocaml.doc"The type of MFA configuration used by the approver"];syncStatus:MfaSyncStatus.toption[@ocaml.doc"Indicates if the approver's MFA device is in-sync with the Identity Source"]}letmake?type_=fun?syncStatus->fun()->{type_;syncStatus}letto_valuex=structure_to_value[("Type",(Option.mapx.type_~f:MfaType.to_value));("SyncStatus",(Option.mapx.syncStatus~f:MfaSyncStatus.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letsyncStatus=(Option.map~f:MfaSyncStatus.of_xml)(Xml.childxml_arg0"SyncStatus")inlettype_=(Option.map~f:MfaType.of_xml)(Xml.childxml_arg0"Type")inmake?syncStatus?type_()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letsyncStatus=field_mapjson__"SyncStatus"MfaSyncStatus.of_jsoninlettype_=field_mapjson__"Type"MfaType.of_jsoninmake?syncStatus?type_()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"MFA configuration and sycnronization status for an approver"]moduleAdditionalSecurityRequirement=structtypenonrect=|APPROVER_VERIFICATION_REQUIRED|Non_static_idofstringletmakei=iletto_string=function|APPROVER_VERIFICATION_REQUIRED->"APPROVER_VERIFICATION_REQUIRED"|Non_static_ids->sletof_string=function|"APPROVER_VERIFICATION_REQUIRED"->APPROVER_VERIFICATION_REQUIRED|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 AdditionalSecurityRequirement"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"AdditionalSecurityRequirement"j)letto_json=simple_to_jsonto_valueendmoduleIamIdentityCenterForList=structtypenonrect={instanceArn:String_.toption[@ocaml.doc"Amazon Resource Name (ARN) for the IAM Identity Center instance."];approvalPortalUrl:String_.toption[@ocaml.doc"URL for the approval portal associated with the IAM Identity Center instance."];region:String_.toption[@ocaml.doc"Amazon Web Services Region where the IAM Identity Center instance is located."]}letmake?instanceArn=fun?approvalPortalUrl->fun?region->fun()->{instanceArn;approvalPortalUrl;region}letto_valuex=structure_to_value[("InstanceArn",(Option.mapx.instanceArn~f:String_.to_value));("ApprovalPortalUrl",(Option.mapx.approvalPortalUrl~f:String_.to_value));("Region",(Option.mapx.region~f:String_.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letregion=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"Region")inletapprovalPortalUrl=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"ApprovalPortalUrl")inletinstanceArn=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"InstanceArn")inmake?region?approvalPortalUrl?instanceArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letregion=field_mapjson__"Region"String_.of_jsoninletapprovalPortalUrl=field_mapjson__"ApprovalPortalUrl"String_.of_jsoninletinstanceArn=field_mapjson__"InstanceArn"String_.of_jsoninmake?region?approvalPortalUrl?instanceArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"IAM Identity Center credentials. For more information see, IAM Identity Center ."]moduleMofNApprovalStrategy=structtypenonrect={minApprovalsRequired:MofNApprovalStrategyMinApprovalsRequiredInteger.t[@ocaml.doc"Minimum number of approvals (M) required for a total number of approvers (N)."]}letcontext_="MofNApprovalStrategy"letmake~minApprovalsRequired=fun()->{minApprovalsRequired}letto_valuex=structure_to_value[("MinApprovalsRequired",(Some(MofNApprovalStrategyMinApprovalsRequiredInteger.to_valuex.minApprovalsRequired)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letminApprovalsRequired=MofNApprovalStrategyMinApprovalsRequiredInteger.of_xml(Xml.child_exn~context:context_xml_arg0"MinApprovalsRequired")inmake~minApprovalsRequired()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letminApprovalsRequired=field_map_exnjson__"MinApprovalsRequired"MofNApprovalStrategyMinApprovalsRequiredInteger.of_jsoninmake~minApprovalsRequired()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Strategy for how an approval team grants approval."]moduleApproverLastActivity=structtypenonrect=|VOTED|BASELINED|RESPONDED_TO_INVITATION|Non_static_idofstringletmakei=iletto_string=function|VOTED->"VOTED"|BASELINED->"BASELINED"|RESPONDED_TO_INVITATION->"RESPONDED_TO_INVITATION"|Non_static_ids->sletof_string=function|"VOTED"->VOTED|"BASELINED"->BASELINED|"RESPONDED_TO_INVITATION"->RESPONDED_TO_INVITATION|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 ApproverLastActivity"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"ApproverLastActivity"j)letto_json=simple_to_jsonto_valueendmoduleIdentityId=structtypenonrect=stringletcontext_="IdentityId"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:100)>>=(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:"IdentityId"jletto_json=simple_to_jsonto_valueendmoduleIdentityStatus=structtypenonrect=|PENDING|ACCEPTED|REJECTED|INVALID|Non_static_idofstringletmakei=iletto_string=function|PENDING->"PENDING"|ACCEPTED->"ACCEPTED"|REJECTED->"REJECTED"|INVALID->"INVALID"|Non_static_ids->sletof_string=function|"PENDING"->PENDING|"ACCEPTED"->ACCEPTED|"REJECTED"->REJECTED|"INVALID"->INVALID|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 IdentityStatus"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"IdentityStatus"j)letto_json=simple_to_jsonto_valueendmoduleIsoTimestamp=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_valueendmoduleMfaMethods=structtypenonrect=MfaMethod.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:5)>>=(fun()->check_list_mini~min:0));iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:MfaMethod.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:MfaMethod.of_xml)letof_jsonj=list_of_json~kind:"MfaMethods"~of_json:MfaMethod.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleParticipantId=structtypenonrect=stringletcontext_="ParticipantId"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:100)>>=(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:"ParticipantId"jletto_json=simple_to_jsonto_valueendmoduleSessionArn=structtypenonrect=stringletcontext_="SessionArn"letmakei=letopenResultinok_or_failwith((check_string_mini~min:20)>>=(fun()->(check_string_maxi~max:2048)>>=(fun()->check_patterni~pattern:"arn:aws(-[^:]+)?:mpa:[a-z0-9-]{1,20}:[0-9]{12}:session/[a-zA-Z0-9._-]+/[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:"SessionArn"jletto_json=simple_to_jsonto_valueendmoduleAccountId=structtypenonrect=stringletcontext_="AccountId"letmakei=letopenResultinok_or_failwith((check_string_mini~min:0)>>=(fun()->(check_string_maxi~max:12)>>=(fun()->check_patterni~pattern:"\\d{12}")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"AccountId"jletto_json=simple_to_jsonto_valueendmoduleActionCompletionStrategy=structtypenonrect=|AUTO_COMPLETION_UPON_APPROVAL|Non_static_idofstringletmakei=iletto_string=function|AUTO_COMPLETION_UPON_APPROVAL->"AUTO_COMPLETION_UPON_APPROVAL"|Non_static_ids->sletof_string=function|"AUTO_COMPLETION_UPON_APPROVAL"->AUTO_COMPLETION_UPON_APPROVAL|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 ActionCompletionStrategy"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"ActionCompletionStrategy"j)letto_json=simple_to_jsonto_valueendmoduleActionName=structtypenonrect=stringletcontext_="ActionName"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:500)>>=(fun()->check_string_mini~min:0));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"ActionName"jletto_json=simple_to_jsonto_valueendmoduleAdditionalSecurityRequirements=structtypenonrect=AdditionalSecurityRequirement.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:100)>>=(fun()->check_list_mini~min:0));iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:AdditionalSecurityRequirement.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:AdditionalSecurityRequirement.of_xml)letof_jsonj=list_of_json~kind:"AdditionalSecurityRequirements"~of_json:AdditionalSecurityRequirement.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleApprovalTeamArn=structtypenonrect=stringletcontext_="ApprovalTeamArn"letmakei=letopenResultinok_or_failwith((check_string_mini~min:20)>>=(fun()->(check_string_maxi~max:2048)>>=(fun()->check_patterni~pattern:"arn:aws(-[^:]+)?:mpa:[a-z0-9-]{1,20}:[0-9]{12}:approval-team/[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:"ApprovalTeamArn"jletto_json=simple_to_jsonto_valueendmoduleApprovalTeamName=structtypenonrect=stringletcontext_="ApprovalTeamName"letmakei=letopenResultinok_or_failwith((check_string_mini~min:0)>>=(fun()->(check_string_maxi~max:64)>>=(fun()->check_patterni~pattern:"[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:"ApprovalTeamName"jletto_json=simple_to_jsonto_valueendmoduleDescription=structtypenonrect=stringletcontext_="Description"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:256)>>=(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:"Description"jletto_json=simple_to_jsonto_valueendmoduleMessage=structtypenonrect=stringletcontext_="Message"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:500)>>=(fun()->check_string_mini~min:0));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"Message"jletto_json=simple_to_jsonto_valueendmoduleRegion=structtypenonrect=stringletcontext_="Region"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:100)>>=(fun()->check_string_mini~min:0));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"Region"jletto_json=simple_to_jsonto_valueendmoduleServicePrincipal=structtypenonrect=stringletcontext_="ServicePrincipal"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:100)>>=(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:"ServicePrincipal"jletto_json=simple_to_jsonto_valueendmoduleSessionStatus=structtypenonrect=|PENDING|CANCELLED|APPROVED|FAILED|CREATING|Non_static_idofstringletmakei=iletto_string=function|PENDING->"PENDING"|CANCELLED->"CANCELLED"|APPROVED->"APPROVED"|FAILED->"FAILED"|CREATING->"CREATING"|Non_static_ids->sletof_string=function|"PENDING"->PENDING|"CANCELLED"->CANCELLED|"APPROVED"->APPROVED|"FAILED"->FAILED|"CREATING"->CREATING|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 SessionStatus"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"SessionStatus"j)letto_json=simple_to_jsonto_valueendmoduleSessionStatusCode=structtypenonrect=|REJECTED|EXPIRED|CONFIGURATION_CHANGED|ALL_APPROVERS_IN_SESSION|Non_static_idofstringletmakei=iletto_string=function|REJECTED->"REJECTED"|EXPIRED->"EXPIRED"|CONFIGURATION_CHANGED->"CONFIGURATION_CHANGED"|ALL_APPROVERS_IN_SESSION->"ALL_APPROVERS_IN_SESSION"|Non_static_ids->sletof_string=function|"REJECTED"->REJECTED|"EXPIRED"->EXPIRED|"CONFIGURATION_CHANGED"->CONFIGURATION_CHANGED|"ALL_APPROVERS_IN_SESSION"->ALL_APPROVERS_IN_SESSION|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 SessionStatusCode"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"SessionStatusCode"j)letto_json=simple_to_jsonto_valueendmoduleFilterField=structtypenonrect=|ActionName|ApprovalTeamName|VotingTime|Vote|SessionStatus|InitiationTime|Non_static_idofstringletmakei=iletto_string=function|ActionName->"ActionName"|ApprovalTeamName->"ApprovalTeamName"|VotingTime->"VotingTime"|Vote->"Vote"|SessionStatus->"SessionStatus"|InitiationTime->"InitiationTime"|Non_static_ids->sletof_string=function|"ActionName"->ActionName|"ApprovalTeamName"->ApprovalTeamName|"VotingTime"->VotingTime|"Vote"->Vote|"SessionStatus"->SessionStatus|"InitiationTime"->InitiationTime|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 FilterField"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"FilterField"j)letto_json=simple_to_jsonto_valueendmoduleOperator=structtypenonrect=|EQ|NE|GT|LT|GTE|LTE|CONTAINS|NOT_CONTAINS|BETWEEN|Non_static_idofstringletmakei=iletto_string=function|EQ->"EQ"|NE->"NE"|GT->"GT"|LT->"LT"|GTE->"GTE"|LTE->"LTE"|CONTAINS->"CONTAINS"|NOT_CONTAINS->"NOT_CONTAINS"|BETWEEN->"BETWEEN"|Non_static_ids->sletof_string=function|"EQ"->EQ|"NE"->NE|"GT"->GT|"LT"->LT|"GTE"->GTE|"LTE"->LTE|"CONTAINS"->CONTAINS|"NOT_CONTAINS"->NOT_CONTAINS|"BETWEEN"->BETWEEN|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 Operator"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"Operator"j)letto_json=simple_to_jsonto_valueendmodulePolicyType=structtypenonrect=|AWS_MANAGED|AWS_RAM|Non_static_idofstringletmakei=iletto_string=function|AWS_MANAGED->"AWS_MANAGED"|AWS_RAM->"AWS_RAM"|Non_static_ids->sletof_string=function|"AWS_MANAGED"->AWS_MANAGED|"AWS_RAM"->AWS_RAM|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 PolicyType"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"PolicyType"j)letto_json=simple_to_jsonto_valueendmoduleBoolean=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_valueendmodulePolicyName=structtypenonrect=stringletcontext_="PolicyName"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:64)>>=(fun()->check_string_mini~min:0));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"PolicyName"jletto_json=simple_to_jsonto_valueendmodulePolicyStatus=structtypenonrect=|ATTACHABLE|DEPRECATED|Non_static_idofstringletmakei=iletto_string=function|ATTACHABLE->"ATTACHABLE"|DEPRECATED->"DEPRECATED"|Non_static_ids->sletof_string=function|"ATTACHABLE"->ATTACHABLE|"DEPRECATED"->DEPRECATED|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 PolicyStatus"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"PolicyStatus"j)letto_json=simple_to_jsonto_valueendmodulePolicyVersionId=structtypenonrect=intletmakei=letopenResultinok_or_failwith(check_int_mini~min:1);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 PolicyVersionId"xml_arg0)letof_jsonj=Int.of_float(float_of_json~kind:"an integer"j)letto_json=simple_to_jsonto_valueendmoduleQualifiedPolicyArn=structtypenonrect=stringletcontext_="QualifiedPolicyArn"letmakei=letopenResultinok_or_failwith((check_string_mini~min:0)>>=(fun()->(check_string_maxi~max:1224)>>=(fun()->check_patterni~pattern:"arn:.{1,63}:mpa:::aws:policy/[a-zA-Z0-9_\\.-]{1,1023}/[a-zA-Z0-9_\\.-]{1,1023}/(?:[\\d]+|\\$DEFAULT)")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"QualifiedPolicyArn"jletto_json=simple_to_jsonto_valueendmoduleUnqualifiedPolicyArn=structtypenonrect=stringletcontext_="UnqualifiedPolicyArn"letmakei=letopenResultinok_or_failwith((check_string_mini~min:0)>>=(fun()->(check_string_maxi~max:1224)>>=(fun()->check_patterni~pattern:"arn:.{1,63}:mpa:::aws:policy/[a-zA-Z0-9_\\.-]{1,1023}/[a-zA-Z0-9_\\.-]{1,1023}")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"UnqualifiedPolicyArn"jletto_json=simple_to_jsonto_valueendmoduleIdentitySourceParametersForList=structtypenonrect={iamIdentityCenter:IamIdentityCenterForList.toption[@ocaml.doc"IAM Identity Center credentials."]}letmake?iamIdentityCenter=fun()->{iamIdentityCenter}letto_valuex=structure_to_value[("IamIdentityCenter",(Option.mapx.iamIdentityCenter~f:IamIdentityCenterForList.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letiamIdentityCenter=(Option.map~f:IamIdentityCenterForList.of_xml)(Xml.childxml_arg0"IamIdentityCenter")inmake?iamIdentityCenter()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letiamIdentityCenter=field_mapjson__"IamIdentityCenter"IamIdentityCenterForList.of_jsoninmake?iamIdentityCenter()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Contains details for the resource that provides identities to the identity source. For example, an IAM Identity Center instance. For more information, see Identity source in the Multi-party approval User Guide."]moduleIdentitySourceStatus=structtypenonrect=|CREATING|ACTIVE|DELETING|ERROR|Non_static_idofstringletmakei=iletto_string=function|CREATING->"CREATING"|ACTIVE->"ACTIVE"|DELETING->"DELETING"|ERROR->"ERROR"|Non_static_ids->sletof_string=function|"CREATING"->CREATING|"ACTIVE"->ACTIVE|"DELETING"->DELETING|"ERROR"->ERROR|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 IdentitySourceStatus"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"IdentitySourceStatus"j)letto_json=simple_to_jsonto_valueendmoduleIdentitySourceStatusCode=structtypenonrect=|ACCESS_DENIED|DELETION_FAILED|IDC_INSTANCE_NOT_FOUND|IDC_INSTANCE_NOT_VALID|Non_static_idofstringletmakei=iletto_string=function|ACCESS_DENIED->"ACCESS_DENIED"|DELETION_FAILED->"DELETION_FAILED"|IDC_INSTANCE_NOT_FOUND->"IDC_INSTANCE_NOT_FOUND"|IDC_INSTANCE_NOT_VALID->"IDC_INSTANCE_NOT_VALID"|Non_static_ids->sletof_string=function|"ACCESS_DENIED"->ACCESS_DENIED|"DELETION_FAILED"->DELETION_FAILED|"IDC_INSTANCE_NOT_FOUND"->IDC_INSTANCE_NOT_FOUND|"IDC_INSTANCE_NOT_VALID"->IDC_INSTANCE_NOT_VALID|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 IdentitySourceStatusCode"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"IdentitySourceStatusCode"j)letto_json=simple_to_jsonto_valueendmoduleIdentitySourceType=structtypenonrect=|IAM_IDENTITY_CENTER|Non_static_idofstringletmakei=iletto_string=function|IAM_IDENTITY_CENTER->"IAM_IDENTITY_CENTER"|Non_static_ids->sletof_string=function|"IAM_IDENTITY_CENTER"->IAM_IDENTITY_CENTER|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 IdentitySourceType"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"IdentitySourceType"j)letto_json=simple_to_jsonto_valueendmoduleApprovalStrategyResponse=structtypenonrect={mofN:MofNApprovalStrategy.toption[@ocaml.doc"Minimum number of approvals (M) required for a total number of approvers (N)."]}letmake?mofN=fun()->{mofN}letto_valuex=structure_to_value[("MofN",(Option.mapx.mofN~f:MofNApprovalStrategy.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmofN=(Option.map~f:MofNApprovalStrategy.of_xml)(Xml.childxml_arg0"MofN")inmake?mofN()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmofN=field_mapjson__"MofN"MofNApprovalStrategy.of_jsoninmake?mofN()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Contains details for how an approval team grants approval."]moduleApprovalTeamStatus=structtypenonrect=|ACTIVE|INACTIVE|DELETING|PENDING|Non_static_idofstringletmakei=iletto_string=function|ACTIVE->"ACTIVE"|INACTIVE->"INACTIVE"|DELETING->"DELETING"|PENDING->"PENDING"|Non_static_ids->sletof_string=function|"ACTIVE"->ACTIVE|"INACTIVE"->INACTIVE|"DELETING"->DELETING|"PENDING"->PENDING|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 ApprovalTeamStatus"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"ApprovalTeamStatus"j)letto_json=simple_to_jsonto_valueendmoduleApprovalTeamStatusCode=structtypenonrect=|VALIDATING|PENDING_ACTIVATION|FAILED_VALIDATION|FAILED_ACTIVATION|UPDATE_PENDING_APPROVAL|UPDATE_PENDING_ACTIVATION|UPDATE_FAILED_APPROVAL|UPDATE_FAILED_ACTIVATION|UPDATE_FAILED_VALIDATION|DELETE_PENDING_APPROVAL|DELETE_FAILED_APPROVAL|DELETE_FAILED_VALIDATION|Non_static_idofstringletmakei=iletto_string=function|VALIDATING->"VALIDATING"|PENDING_ACTIVATION->"PENDING_ACTIVATION"|FAILED_VALIDATION->"FAILED_VALIDATION"|FAILED_ACTIVATION->"FAILED_ACTIVATION"|UPDATE_PENDING_APPROVAL->"UPDATE_PENDING_APPROVAL"|UPDATE_PENDING_ACTIVATION->"UPDATE_PENDING_ACTIVATION"|UPDATE_FAILED_APPROVAL->"UPDATE_FAILED_APPROVAL"|UPDATE_FAILED_ACTIVATION->"UPDATE_FAILED_ACTIVATION"|UPDATE_FAILED_VALIDATION->"UPDATE_FAILED_VALIDATION"|DELETE_PENDING_APPROVAL->"DELETE_PENDING_APPROVAL"|DELETE_FAILED_APPROVAL->"DELETE_FAILED_APPROVAL"|DELETE_FAILED_VALIDATION->"DELETE_FAILED_VALIDATION"|Non_static_ids->sletof_string=function|"VALIDATING"->VALIDATING|"PENDING_ACTIVATION"->PENDING_ACTIVATION|"FAILED_VALIDATION"->FAILED_VALIDATION|"FAILED_ACTIVATION"->FAILED_ACTIVATION|"UPDATE_PENDING_APPROVAL"->UPDATE_PENDING_APPROVAL|"UPDATE_PENDING_ACTIVATION"->UPDATE_PENDING_ACTIVATION|"UPDATE_FAILED_APPROVAL"->UPDATE_FAILED_APPROVAL|"UPDATE_FAILED_ACTIVATION"->UPDATE_FAILED_ACTIVATION|"UPDATE_FAILED_VALIDATION"->UPDATE_FAILED_VALIDATION|"DELETE_PENDING_APPROVAL"->DELETE_PENDING_APPROVAL|"DELETE_FAILED_APPROVAL"->DELETE_FAILED_APPROVAL|"DELETE_FAILED_VALIDATION"->DELETE_FAILED_VALIDATION|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 ApprovalTeamStatusCode"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"ApprovalTeamStatusCode"j)letto_json=simple_to_jsonto_valueendmoduleInteger=structtypenonrect=intletmakei=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 Integer"xml_arg0)letof_jsonj=Int.of_float(float_of_json~kind:"an integer"j)letto_json=simple_to_jsonto_valueendmoduleSessionResponse=structtypenonrect=|APPROVED|REJECTED|NO_RESPONSE|Non_static_idofstringletmakei=iletto_string=function|APPROVED->"APPROVED"|REJECTED->"REJECTED"|NO_RESPONSE->"NO_RESPONSE"|Non_static_ids->sletof_string=function|"APPROVED"->APPROVED|"REJECTED"->REJECTED|"NO_RESPONSE"->NO_RESPONSE|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 SessionResponse"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"SessionResponse"j)letto_json=simple_to_jsonto_valueendmoduleGetApprovalTeamResponseApprover=structtypenonrect={approverId:ParticipantId.toption[@ocaml.doc"ID for the approver."];responseTime:IsoTimestamp.toption[@ocaml.doc"Timestamp when the approver responded to an approval team invitation."];primaryIdentityId:IdentityId.toption[@ocaml.doc"ID for the user."];primaryIdentitySourceArn:String_.toption[@ocaml.doc"Amazon Resource Name (ARN) for the identity source. The identity source manages the user authentication for approvers."];primaryIdentityStatus:IdentityStatus.toption[@ocaml.doc"Status for the identity source. For example, if an approver has accepted a team invitation with a user authentication method managed by the identity source."];lastActivity:ApproverLastActivity.toption[@ocaml.doc"Last Activity performed by the approver."];lastActivityTime:IsoTimestamp.toption[@ocaml.doc"Timestamp when the approver last responded to an operation or invitation request."];pendingBaselineSessionArn:SessionArn.toption[@ocaml.doc"Amazon Resource Name (ARN) for the pending baseline session."];mfaMethods:MfaMethods.toption[@ocaml.doc"Multi-factor authentication configuration for the approver"]}letmake?approverId=fun?responseTime->fun?primaryIdentityId->fun?primaryIdentitySourceArn->fun?primaryIdentityStatus->fun?lastActivity->fun?lastActivityTime->fun?pendingBaselineSessionArn->fun?mfaMethods->fun()->{approverId;responseTime;primaryIdentityId;primaryIdentitySourceArn;primaryIdentityStatus;lastActivity;lastActivityTime;pendingBaselineSessionArn;mfaMethods}letto_valuex=structure_to_value[("ApproverId",(Option.mapx.approverId~f:ParticipantId.to_value));("ResponseTime",(Option.mapx.responseTime~f:IsoTimestamp.to_value));("PrimaryIdentityId",(Option.mapx.primaryIdentityId~f:IdentityId.to_value));("PrimaryIdentitySourceArn",(Option.mapx.primaryIdentitySourceArn~f:String_.to_value));("PrimaryIdentityStatus",(Option.mapx.primaryIdentityStatus~f:IdentityStatus.to_value));("LastActivity",(Option.mapx.lastActivity~f:ApproverLastActivity.to_value));("LastActivityTime",(Option.mapx.lastActivityTime~f:IsoTimestamp.to_value));("PendingBaselineSessionArn",(Option.mapx.pendingBaselineSessionArn~f:SessionArn.to_value));("MfaMethods",(Option.mapx.mfaMethods~f:MfaMethods.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmfaMethods=(Option.map~f:MfaMethods.of_xml)(Xml.childxml_arg0"MfaMethods")inletpendingBaselineSessionArn=(Option.map~f:SessionArn.of_xml)(Xml.childxml_arg0"PendingBaselineSessionArn")inletlastActivityTime=(Option.map~f:IsoTimestamp.of_xml)(Xml.childxml_arg0"LastActivityTime")inletlastActivity=(Option.map~f:ApproverLastActivity.of_xml)(Xml.childxml_arg0"LastActivity")inletprimaryIdentityStatus=(Option.map~f:IdentityStatus.of_xml)(Xml.childxml_arg0"PrimaryIdentityStatus")inletprimaryIdentitySourceArn=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"PrimaryIdentitySourceArn")inletprimaryIdentityId=(Option.map~f:IdentityId.of_xml)(Xml.childxml_arg0"PrimaryIdentityId")inletresponseTime=(Option.map~f:IsoTimestamp.of_xml)(Xml.childxml_arg0"ResponseTime")inletapproverId=(Option.map~f:ParticipantId.of_xml)(Xml.childxml_arg0"ApproverId")inmake?mfaMethods?pendingBaselineSessionArn?lastActivityTime?lastActivity?primaryIdentityStatus?primaryIdentitySourceArn?primaryIdentityId?responseTime?approverId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmfaMethods=field_mapjson__"MfaMethods"MfaMethods.of_jsoninletpendingBaselineSessionArn=field_mapjson__"PendingBaselineSessionArn"SessionArn.of_jsoninletlastActivityTime=field_mapjson__"LastActivityTime"IsoTimestamp.of_jsoninletlastActivity=field_mapjson__"LastActivity"ApproverLastActivity.of_jsoninletprimaryIdentityStatus=field_mapjson__"PrimaryIdentityStatus"IdentityStatus.of_jsoninletprimaryIdentitySourceArn=field_mapjson__"PrimaryIdentitySourceArn"String_.of_jsoninletprimaryIdentityId=field_mapjson__"PrimaryIdentityId"IdentityId.of_jsoninletresponseTime=field_mapjson__"ResponseTime"IsoTimestamp.of_jsoninletapproverId=field_mapjson__"ApproverId"ParticipantId.of_jsoninmake?mfaMethods?pendingBaselineSessionArn?lastActivityTime?lastActivity?primaryIdentityStatus?primaryIdentitySourceArn?primaryIdentityId?responseTime?approverId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Contains details for an approver."]moduleIdcInstanceArn=structtypenonrect=stringletcontext_="IdcInstanceArn"letmakei=letopenResultinok_or_failwith((check_string_mini~min:20)>>=(fun()->(check_string_maxi~max:2048)>>=(fun()->check_patterni~pattern:"arn:.+:sso:::instance/(?:sso)?ins-[a-zA-Z0-9-.]{16}")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"IdcInstanceArn"jletto_json=simple_to_jsonto_valueendmoduleApprovalTeamRequestApprover=structtypenonrect={primaryIdentityId:IdentityId.t[@ocaml.doc"ID for the user."];primaryIdentitySourceArn:String_.t[@ocaml.doc"Amazon Resource Name (ARN) for the identity source. The identity source manages the user authentication for approvers."]}letcontext_="ApprovalTeamRequestApprover"letmake~primaryIdentityId=fun~primaryIdentitySourceArn->fun()->{primaryIdentityId;primaryIdentitySourceArn}letto_valuex=structure_to_value[("PrimaryIdentityId",(Some(IdentityId.to_valuex.primaryIdentityId)));("PrimaryIdentitySourceArn",(Some(String_.to_valuex.primaryIdentitySourceArn)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letprimaryIdentitySourceArn=String_.of_xml(Xml.child_exn~context:context_xml_arg0"PrimaryIdentitySourceArn")inletprimaryIdentityId=IdentityId.of_xml(Xml.child_exn~context:context_xml_arg0"PrimaryIdentityId")inmake~primaryIdentitySourceArn~primaryIdentityId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letprimaryIdentitySourceArn=field_map_exnjson__"PrimaryIdentitySourceArn"String_.of_jsoninletprimaryIdentityId=field_map_exnjson__"PrimaryIdentityId"IdentityId.of_jsoninmake~primaryIdentitySourceArn~primaryIdentityId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Contains details for an approver."]moduleUpdateAction=structtypenonrect=|SYNCHRONIZE_MFA_DEVICES|Non_static_idofstringletmakei=iletto_string=function|SYNCHRONIZE_MFA_DEVICES->"SYNCHRONIZE_MFA_DEVICES"|Non_static_ids->sletof_string=function|"SYNCHRONIZE_MFA_DEVICES"->SYNCHRONIZE_MFA_DEVICES|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 UpdateAction"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"UpdateAction"j)letto_json=simple_to_jsonto_valueendmoduleTagKey=structtypenonrect=stringletcontext_="TagKey"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:128)>>=(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:"TagKey"jletto_json=simple_to_jsonto_valueendmoduleTagValue=structtypenonrect=stringletcontext_="TagValue"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:256)>>=(fun()->check_string_mini~min:0));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_valueendmoduleListSessionsResponseSession=structtypenonrect={sessionArn:SessionArn.toption[@ocaml.doc"Amazon Resource Name (ARN) for the session."];approvalTeamName:ApprovalTeamName.toption[@ocaml.doc"Name of the approval team."];approvalTeamArn:ApprovalTeamArn.toption[@ocaml.doc"Amazon Resource Name (ARN) for the approval team."];initiationTime:IsoTimestamp.toption[@ocaml.doc"Timestamp when the session was initiated."];expirationTime:IsoTimestamp.toption[@ocaml.doc"Timestamp when the session was expire."];completionTime:IsoTimestamp.toption[@ocaml.doc"Timestamp when the session was completed."];description:Description.toption[@ocaml.doc"Description for the team."];actionName:ActionName.toption[@ocaml.doc"Name of the protected operation."];protectedResourceArn:String_.toption[@ocaml.doc"Amazon Resource Name (ARN) for the protected operation."];requesterServicePrincipal:ServicePrincipal.toption[@ocaml.doc"Service principal for the service associated with the protected operation."];requesterPrincipalArn:String_.toption[@ocaml.doc"IAM principal that made the operation request."];requesterRegion:Region.toption[@ocaml.doc"Amazon Web Services Region where the operation request originated."];requesterAccountId:AccountId.toption[@ocaml.doc"ID for the account that made the operation request."];status:SessionStatus.toption[@ocaml.doc"Status for the protected operation. For example, if the operation is PENDING."];statusCode:SessionStatusCode.toption[@ocaml.doc"Status code of the session."];statusMessage:Message.toption[@ocaml.doc"Message describing the status for session."];actionCompletionStrategy:ActionCompletionStrategy.toption[@ocaml.doc"Strategy for executing the protected operation. AUTO_COMPLETION_UPON_APPROVAL means the operation is executed automatically using the requester's permissions, if approved."];additionalSecurityRequirements:AdditionalSecurityRequirements.toption[@ocaml.doc"A list of AdditionalSecurityRequirement applied to the session."]}letmake?sessionArn=fun?approvalTeamName->fun?approvalTeamArn->fun?initiationTime->fun?expirationTime->fun?completionTime->fun?description->fun?actionName->fun?protectedResourceArn->fun?requesterServicePrincipal->fun?requesterPrincipalArn->fun?requesterRegion->fun?requesterAccountId->fun?status->fun?statusCode->fun?statusMessage->fun?actionCompletionStrategy->fun?additionalSecurityRequirements->fun()->{sessionArn;approvalTeamName;approvalTeamArn;initiationTime;expirationTime;completionTime;description;actionName;protectedResourceArn;requesterServicePrincipal;requesterPrincipalArn;requesterRegion;requesterAccountId;status;statusCode;statusMessage;actionCompletionStrategy;additionalSecurityRequirements}letto_valuex=structure_to_value[("SessionArn",(Option.mapx.sessionArn~f:SessionArn.to_value));("ApprovalTeamName",(Option.mapx.approvalTeamName~f:ApprovalTeamName.to_value));("ApprovalTeamArn",(Option.mapx.approvalTeamArn~f:ApprovalTeamArn.to_value));("InitiationTime",(Option.mapx.initiationTime~f:IsoTimestamp.to_value));("ExpirationTime",(Option.mapx.expirationTime~f:IsoTimestamp.to_value));("CompletionTime",(Option.mapx.completionTime~f:IsoTimestamp.to_value));("Description",(Option.mapx.description~f:Description.to_value));("ActionName",(Option.mapx.actionName~f:ActionName.to_value));("ProtectedResourceArn",(Option.mapx.protectedResourceArn~f:String_.to_value));("RequesterServicePrincipal",(Option.mapx.requesterServicePrincipal~f:ServicePrincipal.to_value));("RequesterPrincipalArn",(Option.mapx.requesterPrincipalArn~f:String_.to_value));("RequesterRegion",(Option.mapx.requesterRegion~f:Region.to_value));("RequesterAccountId",(Option.mapx.requesterAccountId~f:AccountId.to_value));("Status",(Option.mapx.status~f:SessionStatus.to_value));("StatusCode",(Option.mapx.statusCode~f:SessionStatusCode.to_value));("StatusMessage",(Option.mapx.statusMessage~f:Message.to_value));("ActionCompletionStrategy",(Option.mapx.actionCompletionStrategy~f:ActionCompletionStrategy.to_value));("AdditionalSecurityRequirements",(Option.mapx.additionalSecurityRequirements~f:AdditionalSecurityRequirements.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letadditionalSecurityRequirements=(Option.map~f:AdditionalSecurityRequirements.of_xml)(Xml.childxml_arg0"AdditionalSecurityRequirements")inletactionCompletionStrategy=(Option.map~f:ActionCompletionStrategy.of_xml)(Xml.childxml_arg0"ActionCompletionStrategy")inletstatusMessage=(Option.map~f:Message.of_xml)(Xml.childxml_arg0"StatusMessage")inletstatusCode=(Option.map~f:SessionStatusCode.of_xml)(Xml.childxml_arg0"StatusCode")inletstatus=(Option.map~f:SessionStatus.of_xml)(Xml.childxml_arg0"Status")inletrequesterAccountId=(Option.map~f:AccountId.of_xml)(Xml.childxml_arg0"RequesterAccountId")inletrequesterRegion=(Option.map~f:Region.of_xml)(Xml.childxml_arg0"RequesterRegion")inletrequesterPrincipalArn=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"RequesterPrincipalArn")inletrequesterServicePrincipal=(Option.map~f:ServicePrincipal.of_xml)(Xml.childxml_arg0"RequesterServicePrincipal")inletprotectedResourceArn=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"ProtectedResourceArn")inletactionName=(Option.map~f:ActionName.of_xml)(Xml.childxml_arg0"ActionName")inletdescription=(Option.map~f:Description.of_xml)(Xml.childxml_arg0"Description")inletcompletionTime=(Option.map~f:IsoTimestamp.of_xml)(Xml.childxml_arg0"CompletionTime")inletexpirationTime=(Option.map~f:IsoTimestamp.of_xml)(Xml.childxml_arg0"ExpirationTime")inletinitiationTime=(Option.map~f:IsoTimestamp.of_xml)(Xml.childxml_arg0"InitiationTime")inletapprovalTeamArn=(Option.map~f:ApprovalTeamArn.of_xml)(Xml.childxml_arg0"ApprovalTeamArn")inletapprovalTeamName=(Option.map~f:ApprovalTeamName.of_xml)(Xml.childxml_arg0"ApprovalTeamName")inletsessionArn=(Option.map~f:SessionArn.of_xml)(Xml.childxml_arg0"SessionArn")inmake?additionalSecurityRequirements?actionCompletionStrategy?statusMessage?statusCode?status?requesterAccountId?requesterRegion?requesterPrincipalArn?requesterServicePrincipal?protectedResourceArn?actionName?description?completionTime?expirationTime?initiationTime?approvalTeamArn?approvalTeamName?sessionArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letadditionalSecurityRequirements=field_mapjson__"AdditionalSecurityRequirements"AdditionalSecurityRequirements.of_jsoninletactionCompletionStrategy=field_mapjson__"ActionCompletionStrategy"ActionCompletionStrategy.of_jsoninletstatusMessage=field_mapjson__"StatusMessage"Message.of_jsoninletstatusCode=field_mapjson__"StatusCode"SessionStatusCode.of_jsoninletstatus=field_mapjson__"Status"SessionStatus.of_jsoninletrequesterAccountId=field_mapjson__"RequesterAccountId"AccountId.of_jsoninletrequesterRegion=field_mapjson__"RequesterRegion"Region.of_jsoninletrequesterPrincipalArn=field_mapjson__"RequesterPrincipalArn"String_.of_jsoninletrequesterServicePrincipal=field_mapjson__"RequesterServicePrincipal"ServicePrincipal.of_jsoninletprotectedResourceArn=field_mapjson__"ProtectedResourceArn"String_.of_jsoninletactionName=field_mapjson__"ActionName"ActionName.of_jsoninletdescription=field_mapjson__"Description"Description.of_jsoninletcompletionTime=field_mapjson__"CompletionTime"IsoTimestamp.of_jsoninletexpirationTime=field_mapjson__"ExpirationTime"IsoTimestamp.of_jsoninletinitiationTime=field_mapjson__"InitiationTime"IsoTimestamp.of_jsoninletapprovalTeamArn=field_mapjson__"ApprovalTeamArn"ApprovalTeamArn.of_jsoninletapprovalTeamName=field_mapjson__"ApprovalTeamName"ApprovalTeamName.of_jsoninletsessionArn=field_mapjson__"SessionArn"SessionArn.of_jsoninmake?additionalSecurityRequirements?actionCompletionStrategy?statusMessage?statusCode?status?requesterAccountId?requesterRegion?requesterPrincipalArn?requesterServicePrincipal?protectedResourceArn?actionName?description?completionTime?expirationTime?initiationTime?approvalTeamArn?approvalTeamName?sessionArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Contains details for an approval session. For more information, see Session in the Multi-party approval User Guide"]moduleFilter=structtypenonrect={fieldName:FilterField.toption[@ocaml.doc"Name of the filter to use. Supported filters The supported filters for ListSessions are: ActionName, SessionStatus, and InitationTime."];operator:Operator.toption[@ocaml.doc"Operator to use for filtering. EQ: Equal to the specified value NE: Not equal to the specified value GT: Greater than the specified value LT: Less than the specified value GTE: Greater than or equal to the specified value LTE: Less than or equal to the specified value CONTAINS: Contains the specified value NOT_CONTAINS: Does not contain the specified value BETWEEN: Between two values, inclusive of the specified values. Supported operators for each filter: ActionName: EQ | NE | CONTAINS | NOT_CONTAINS SessionStatus: EQ | NE InitiationTime: GT | LT | GTE | LTE | BETWEEN"];value:String_.toption[@ocaml.doc"Value to use for filtering. For the BETWEEN operator, specify values in the format a AND b (AND is case-insensitive)."]}letmake?fieldName=fun?operator->fun?value->fun()->{fieldName;operator;value}letto_valuex=structure_to_value[("FieldName",(Option.mapx.fieldName~f:FilterField.to_value));("Operator",(Option.mapx.operator~f:Operator.to_value));("Value",(Option.mapx.value~f:String_.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letvalue=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"Value")inletoperator=(Option.map~f:Operator.of_xml)(Xml.childxml_arg0"Operator")inletfieldName=(Option.map~f:FilterField.of_xml)(Xml.childxml_arg0"FieldName")inmake?value?operator?fieldName()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letvalue=field_mapjson__"Value"String_.of_jsoninletoperator=field_mapjson__"Operator"Operator.of_jsoninletfieldName=field_mapjson__"FieldName"FilterField.of_jsoninmake?value?operator?fieldName()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Contains the filter to apply to requests. You can specify up to 10 filters for a request."]moduleListResourcePoliciesResponseResourcePolicy=structtypenonrect={policyArn:String_.toption[@ocaml.doc"Amazon Resource Name (ARN) for policy."];policyType:PolicyType.toption[@ocaml.doc"The type of policy."];policyName:String_.toption[@ocaml.doc"Name of the policy."]}letmake?policyArn=fun?policyType->fun?policyName->fun()->{policyArn;policyType;policyName}letto_valuex=structure_to_value[("PolicyArn",(Option.mapx.policyArn~f:String_.to_value));("PolicyType",(Option.mapx.policyType~f:PolicyType.to_value));("PolicyName",(Option.mapx.policyName~f:String_.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letpolicyName=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"PolicyName")inletpolicyType=(Option.map~f:PolicyType.of_xml)(Xml.childxml_arg0"PolicyType")inletpolicyArn=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"PolicyArn")inmake?policyName?policyType?policyArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letpolicyName=field_mapjson__"PolicyName"String_.of_jsoninletpolicyType=field_mapjson__"PolicyType"PolicyType.of_jsoninletpolicyArn=field_mapjson__"PolicyArn"String_.of_jsoninmake?policyName?policyType?policyArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Contains details about a policy for a resource."]modulePolicyVersionSummary=structtypenonrect={arn:QualifiedPolicyArn.toption[@ocaml.doc"Amazon Resource Name (ARN) for the team."];policyArn:UnqualifiedPolicyArn.toption[@ocaml.doc"Amazon Resource Name (ARN) for the policy."];versionId:PolicyVersionId.toption[@ocaml.doc"Version ID for the policy."];policyType:PolicyType.toption[@ocaml.doc"The type of policy."];isDefault:Boolean.toption[@ocaml.doc"Determines if the specified policy is the default for the team."];name:PolicyName.toption[@ocaml.doc"Name of the policy"];status:PolicyStatus.toption[@ocaml.doc"Status for the policy. For example, if the policy is attachable or deprecated."];creationTime:IsoTimestamp.toption[@ocaml.doc"Timestamp when the policy was created."];lastUpdatedTime:IsoTimestamp.toption[@ocaml.doc"Timestamp when the policy was last updated."]}letmake?arn=fun?policyArn->fun?versionId->fun?policyType->fun?isDefault->fun?name->fun?status->fun?creationTime->fun?lastUpdatedTime->fun()->{arn;policyArn;versionId;policyType;isDefault;name;status;creationTime;lastUpdatedTime}letto_valuex=structure_to_value[("Arn",(Option.mapx.arn~f:QualifiedPolicyArn.to_value));("PolicyArn",(Option.mapx.policyArn~f:UnqualifiedPolicyArn.to_value));("VersionId",(Option.mapx.versionId~f:PolicyVersionId.to_value));("PolicyType",(Option.mapx.policyType~f:PolicyType.to_value));("IsDefault",(Option.mapx.isDefault~f:Boolean.to_value));("Name",(Option.mapx.name~f:PolicyName.to_value));("Status",(Option.mapx.status~f:PolicyStatus.to_value));("CreationTime",(Option.mapx.creationTime~f:IsoTimestamp.to_value));("LastUpdatedTime",(Option.mapx.lastUpdatedTime~f:IsoTimestamp.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letlastUpdatedTime=(Option.map~f:IsoTimestamp.of_xml)(Xml.childxml_arg0"LastUpdatedTime")inletcreationTime=(Option.map~f:IsoTimestamp.of_xml)(Xml.childxml_arg0"CreationTime")inletstatus=(Option.map~f:PolicyStatus.of_xml)(Xml.childxml_arg0"Status")inletname=(Option.map~f:PolicyName.of_xml)(Xml.childxml_arg0"Name")inletisDefault=(Option.map~f:Boolean.of_xml)(Xml.childxml_arg0"IsDefault")inletpolicyType=(Option.map~f:PolicyType.of_xml)(Xml.childxml_arg0"PolicyType")inletversionId=(Option.map~f:PolicyVersionId.of_xml)(Xml.childxml_arg0"VersionId")inletpolicyArn=(Option.map~f:UnqualifiedPolicyArn.of_xml)(Xml.childxml_arg0"PolicyArn")inletarn=(Option.map~f:QualifiedPolicyArn.of_xml)(Xml.childxml_arg0"Arn")inmake?lastUpdatedTime?creationTime?status?name?isDefault?policyType?versionId?policyArn?arn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letlastUpdatedTime=field_mapjson__"LastUpdatedTime"IsoTimestamp.of_jsoninletcreationTime=field_mapjson__"CreationTime"IsoTimestamp.of_jsoninletstatus=field_mapjson__"Status"PolicyStatus.of_jsoninletname=field_mapjson__"Name"PolicyName.of_jsoninletisDefault=field_mapjson__"IsDefault"Boolean.of_jsoninletpolicyType=field_mapjson__"PolicyType"PolicyType.of_jsoninletversionId=field_mapjson__"VersionId"PolicyVersionId.of_jsoninletpolicyArn=field_mapjson__"PolicyArn"UnqualifiedPolicyArn.of_jsoninletarn=field_mapjson__"Arn"QualifiedPolicyArn.of_jsoninmake?lastUpdatedTime?creationTime?status?name?isDefault?policyType?versionId?policyArn?arn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Contains details for the version of a policy. Policies define what operations a team that define the permissions for team resources."]modulePolicy=structtypenonrect={arn:UnqualifiedPolicyArn.toption[@ocaml.doc"Amazon Resource Name (ARN) for the policy."];defaultVersion:PolicyVersionId.toption[@ocaml.doc"Determines if the specified policy is the default for the team."];policyType:PolicyType.toption[@ocaml.doc"The type of policy."];name:PolicyName.toption[@ocaml.doc"Name of the policy."]}letmake?arn=fun?defaultVersion->fun?policyType->fun?name->fun()->{arn;defaultVersion;policyType;name}letto_valuex=structure_to_value[("Arn",(Option.mapx.arn~f:UnqualifiedPolicyArn.to_value));("DefaultVersion",(Option.mapx.defaultVersion~f:PolicyVersionId.to_value));("PolicyType",(Option.mapx.policyType~f:PolicyType.to_value));("Name",(Option.mapx.name~f:PolicyName.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letname=(Option.map~f:PolicyName.of_xml)(Xml.childxml_arg0"Name")inletpolicyType=(Option.map~f:PolicyType.of_xml)(Xml.childxml_arg0"PolicyType")inletdefaultVersion=(Option.map~f:PolicyVersionId.of_xml)(Xml.childxml_arg0"DefaultVersion")inletarn=(Option.map~f:UnqualifiedPolicyArn.of_xml)(Xml.childxml_arg0"Arn")inmake?name?policyType?defaultVersion?arn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letname=field_mapjson__"Name"PolicyName.of_jsoninletpolicyType=field_mapjson__"PolicyType"PolicyType.of_jsoninletdefaultVersion=field_mapjson__"DefaultVersion"PolicyVersionId.of_jsoninletarn=field_mapjson__"Arn"UnqualifiedPolicyArn.of_jsoninmake?name?policyType?defaultVersion?arn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Contains details for a policy. Policies define what operations a team that define the permissions for team resources."]moduleIdentitySourceForList=structtypenonrect={identitySourceType:IdentitySourceType.toption[@ocaml.doc"The type of resource that provided identities to the identity source. For example, an IAM Identity Center instance."];identitySourceParameters:IdentitySourceParametersForList.toption[@ocaml.doc"A IdentitySourceParametersForList object. Contains details for the resource that provides identities to the identity source. For example, an IAM Identity Center instance."];identitySourceArn:String_.toption[@ocaml.doc"Amazon Resource Name (ARN) for the identity source."];creationTime:IsoTimestamp.toption[@ocaml.doc"Timestamp when the identity source was created."];status:IdentitySourceStatus.toption[@ocaml.doc"Status for the identity source. For example, if the identity source is ACTIVE."];statusCode:IdentitySourceStatusCode.toption[@ocaml.doc"Status code of the identity source."];statusMessage:String_.toption[@ocaml.doc"Message describing the status for the identity source."]}letmake?identitySourceType=fun?identitySourceParameters->fun?identitySourceArn->fun?creationTime->fun?status->fun?statusCode->fun?statusMessage->fun()->{identitySourceType;identitySourceParameters;identitySourceArn;creationTime;status;statusCode;statusMessage}letto_valuex=structure_to_value[("IdentitySourceType",(Option.mapx.identitySourceType~f:IdentitySourceType.to_value));("IdentitySourceParameters",(Option.mapx.identitySourceParameters~f:IdentitySourceParametersForList.to_value));("IdentitySourceArn",(Option.mapx.identitySourceArn~f:String_.to_value));("CreationTime",(Option.mapx.creationTime~f:IsoTimestamp.to_value));("Status",(Option.mapx.status~f:IdentitySourceStatus.to_value));("StatusCode",(Option.mapx.statusCode~f:IdentitySourceStatusCode.to_value));("StatusMessage",(Option.mapx.statusMessage~f:String_.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letstatusMessage=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"StatusMessage")inletstatusCode=(Option.map~f:IdentitySourceStatusCode.of_xml)(Xml.childxml_arg0"StatusCode")inletstatus=(Option.map~f:IdentitySourceStatus.of_xml)(Xml.childxml_arg0"Status")inletcreationTime=(Option.map~f:IsoTimestamp.of_xml)(Xml.childxml_arg0"CreationTime")inletidentitySourceArn=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"IdentitySourceArn")inletidentitySourceParameters=(Option.map~f:IdentitySourceParametersForList.of_xml)(Xml.childxml_arg0"IdentitySourceParameters")inletidentitySourceType=(Option.map~f:IdentitySourceType.of_xml)(Xml.childxml_arg0"IdentitySourceType")inmake?statusMessage?statusCode?status?creationTime?identitySourceArn?identitySourceParameters?identitySourceType()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letstatusMessage=field_mapjson__"StatusMessage"String_.of_jsoninletstatusCode=field_mapjson__"StatusCode"IdentitySourceStatusCode.of_jsoninletstatus=field_mapjson__"Status"IdentitySourceStatus.of_jsoninletcreationTime=field_mapjson__"CreationTime"IsoTimestamp.of_jsoninletidentitySourceArn=field_mapjson__"IdentitySourceArn"String_.of_jsoninletidentitySourceParameters=field_mapjson__"IdentitySourceParameters"IdentitySourceParametersForList.of_jsoninletidentitySourceType=field_mapjson__"IdentitySourceType"IdentitySourceType.of_jsoninmake?statusMessage?statusCode?status?creationTime?identitySourceArn?identitySourceParameters?identitySourceType()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Contains details for an identity source. For more information, see Identity source in the Multi-party approval User Guide."]moduleListApprovalTeamsResponseApprovalTeam=structtypenonrect={creationTime:IsoTimestamp.toption[@ocaml.doc"Timestamp when the team was created."];approvalStrategy:ApprovalStrategyResponse.toption[@ocaml.doc"An ApprovalStrategyResponse object. Contains details for how an approval team grants approval."];numberOfApprovers:Integer.toption[@ocaml.doc"Total number of approvers in the team."];arn:ApprovalTeamArn.toption[@ocaml.doc"Amazon Resource Name (ARN) for the team."];name:ApprovalTeamName.toption[@ocaml.doc"Name of the team."];description:Description.toption[@ocaml.doc"Description for the team."];status:ApprovalTeamStatus.toption[@ocaml.doc"Status for the team. For more information, see Team health in the Multi-party approval User Guide."];statusCode:ApprovalTeamStatusCode.toption[@ocaml.doc"Status code for the team. For more information, see Team health in the Multi-party approval User Guide."];statusMessage:Message.toption[@ocaml.doc"Message describing the status for the team."]}letmake?creationTime=fun?approvalStrategy->fun?numberOfApprovers->fun?arn->fun?name->fun?description->fun?status->fun?statusCode->fun?statusMessage->fun()->{creationTime;approvalStrategy;numberOfApprovers;arn;name;description;status;statusCode;statusMessage}letto_valuex=structure_to_value[("CreationTime",(Option.mapx.creationTime~f:IsoTimestamp.to_value));("ApprovalStrategy",(Option.mapx.approvalStrategy~f:ApprovalStrategyResponse.to_value));("NumberOfApprovers",(Option.mapx.numberOfApprovers~f:Integer.to_value));("Arn",(Option.mapx.arn~f:ApprovalTeamArn.to_value));("Name",(Option.mapx.name~f:ApprovalTeamName.to_value));("Description",(Option.mapx.description~f:Description.to_value));("Status",(Option.mapx.status~f:ApprovalTeamStatus.to_value));("StatusCode",(Option.mapx.statusCode~f:ApprovalTeamStatusCode.to_value));("StatusMessage",(Option.mapx.statusMessage~f:Message.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letstatusMessage=(Option.map~f:Message.of_xml)(Xml.childxml_arg0"StatusMessage")inletstatusCode=(Option.map~f:ApprovalTeamStatusCode.of_xml)(Xml.childxml_arg0"StatusCode")inletstatus=(Option.map~f:ApprovalTeamStatus.of_xml)(Xml.childxml_arg0"Status")inletdescription=(Option.map~f:Description.of_xml)(Xml.childxml_arg0"Description")inletname=(Option.map~f:ApprovalTeamName.of_xml)(Xml.childxml_arg0"Name")inletarn=(Option.map~f:ApprovalTeamArn.of_xml)(Xml.childxml_arg0"Arn")inletnumberOfApprovers=(Option.map~f:Integer.of_xml)(Xml.childxml_arg0"NumberOfApprovers")inletapprovalStrategy=(Option.map~f:ApprovalStrategyResponse.of_xml)(Xml.childxml_arg0"ApprovalStrategy")inletcreationTime=(Option.map~f:IsoTimestamp.of_xml)(Xml.childxml_arg0"CreationTime")inmake?statusMessage?statusCode?status?description?name?arn?numberOfApprovers?approvalStrategy?creationTime()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letstatusMessage=field_mapjson__"StatusMessage"Message.of_jsoninletstatusCode=field_mapjson__"StatusCode"ApprovalTeamStatusCode.of_jsoninletstatus=field_mapjson__"Status"ApprovalTeamStatus.of_jsoninletdescription=field_mapjson__"Description"Description.of_jsoninletname=field_mapjson__"Name"ApprovalTeamName.of_jsoninletarn=field_mapjson__"Arn"ApprovalTeamArn.of_jsoninletnumberOfApprovers=field_mapjson__"NumberOfApprovers"Integer.of_jsoninletapprovalStrategy=field_mapjson__"ApprovalStrategy"ApprovalStrategyResponse.of_jsoninletcreationTime=field_mapjson__"CreationTime"IsoTimestamp.of_jsoninmake?statusMessage?statusCode?status?description?name?arn?numberOfApprovers?approvalStrategy?creationTime()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Contains details for an approval team"]moduleGetSessionResponseApproverResponse=structtypenonrect={approverId:ParticipantId.toption[@ocaml.doc"ID for the approver."];identitySourceArn:String_.toption[@ocaml.doc"Amazon Resource Name (ARN) for the identity source. The identity source manages the user authentication for approvers."];identityId:IdentityId.toption[@ocaml.doc"ID for the identity source. The identity source manages the user authentication for approvers."];response:SessionResponse.toption[@ocaml.doc"Response to the operation request."];responseTime:IsoTimestamp.toption[@ocaml.doc"Timestamp when a approver responded to the operation request."]}letmake?approverId=fun?identitySourceArn->fun?identityId->fun?response->fun?responseTime->fun()->{approverId;identitySourceArn;identityId;response;responseTime}letto_valuex=structure_to_value[("ApproverId",(Option.mapx.approverId~f:ParticipantId.to_value));("IdentitySourceArn",(Option.mapx.identitySourceArn~f:String_.to_value));("IdentityId",(Option.mapx.identityId~f:IdentityId.to_value));("Response",(Option.mapx.response~f:SessionResponse.to_value));("ResponseTime",(Option.mapx.responseTime~f:IsoTimestamp.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letresponseTime=(Option.map~f:IsoTimestamp.of_xml)(Xml.childxml_arg0"ResponseTime")inletresponse=(Option.map~f:SessionResponse.of_xml)(Xml.childxml_arg0"Response")inletidentityId=(Option.map~f:IdentityId.of_xml)(Xml.childxml_arg0"IdentityId")inletidentitySourceArn=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"IdentitySourceArn")inletapproverId=(Option.map~f:ParticipantId.of_xml)(Xml.childxml_arg0"ApproverId")inmake?responseTime?response?identityId?identitySourceArn?approverId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letresponseTime=field_mapjson__"ResponseTime"IsoTimestamp.of_jsoninletresponse=field_mapjson__"Response"SessionResponse.of_jsoninletidentityId=field_mapjson__"IdentityId"IdentityId.of_jsoninletidentitySourceArn=field_mapjson__"IdentitySourceArn"String_.of_jsoninletapproverId=field_mapjson__"ApproverId"ParticipantId.of_jsoninmake?responseTime?response?identityId?identitySourceArn?approverId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Contains details for an approver response in an approval session."]moduleSessionKey=structtypenonrect=stringletcontext_="SessionKey"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:100)>>=(fun()->check_patterni~pattern:"[a-zA-Z0-9\\p{P}]*")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"SessionKey"jletto_json=simple_to_jsonto_valueendmoduleSessionValue=structtypenonrect=stringletcontext_="SessionValue"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:200)>>=(fun()->check_patterni~pattern:"[a-zA-Z0-9\\p{P}]*")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"SessionValue"jletto_json=simple_to_jsonto_valueendmodulePolicyDocument=structtypenonrect=stringletcontext_="PolicyDocument"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:400000)>>=(fun()->check_string_mini~min:0));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"PolicyDocument"jletto_json=simple_to_jsonto_valueendmoduleIamIdentityCenterForGet=structtypenonrect={instanceArn:String_.toption[@ocaml.doc"Amazon Resource Name (ARN) for the IAM Identity Center instance."];approvalPortalUrl:String_.toption[@ocaml.doc"URL for the approval portal associated with the IAM Identity Center instance."];region:String_.toption[@ocaml.doc"Amazon Web Services Region where the IAM Identity Center instance is located."]}letmake?instanceArn=fun?approvalPortalUrl->fun?region->fun()->{instanceArn;approvalPortalUrl;region}letto_valuex=structure_to_value[("InstanceArn",(Option.mapx.instanceArn~f:String_.to_value));("ApprovalPortalUrl",(Option.mapx.approvalPortalUrl~f:String_.to_value));("Region",(Option.mapx.region~f:String_.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letregion=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"Region")inletapprovalPortalUrl=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"ApprovalPortalUrl")inletinstanceArn=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"InstanceArn")inmake?region?approvalPortalUrl?instanceArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letregion=field_mapjson__"Region"String_.of_jsoninletapprovalPortalUrl=field_mapjson__"ApprovalPortalUrl"String_.of_jsoninletinstanceArn=field_mapjson__"InstanceArn"String_.of_jsoninmake?region?approvalPortalUrl?instanceArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"IAM Identity Center credentials. For more information see, IAM Identity Center ."]moduleGetApprovalTeamResponseApprovers=structtypenonrect=GetApprovalTeamResponseApprover.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:20)>>=(fun()->check_list_mini~min:0));iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:GetApprovalTeamResponseApprover.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:GetApprovalTeamResponseApprover.of_xml)letof_jsonj=list_of_json~kind:"GetApprovalTeamResponseApprovers"~of_json:GetApprovalTeamResponseApprover.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmodulePolicyReference=structtypenonrect={policyArn:QualifiedPolicyArn.t[@ocaml.doc"Amazon Resource Name (ARN) for the policy."]}letcontext_="PolicyReference"letmake~policyArn=fun()->{policyArn}letto_valuex=structure_to_value[("PolicyArn",(Some(QualifiedPolicyArn.to_valuex.policyArn)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letpolicyArn=QualifiedPolicyArn.of_xml(Xml.child_exn~context:context_xml_arg0"PolicyArn")inmake~policyArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letpolicyArn=field_map_exnjson__"PolicyArn"QualifiedPolicyArn.of_jsoninmake~policyArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Contains the Amazon Resource Name (ARN) for a policy. Policies define what operations a team that define the permissions for team resources."]moduleIamIdentityCenter=structtypenonrect={instanceArn:IdcInstanceArn.t[@ocaml.doc"Amazon Resource Name (ARN) for the IAM Identity Center instance."];region:String_.t[@ocaml.doc"Amazon Web Services Region where the IAM Identity Center instance is located."]}letcontext_="IamIdentityCenter"letmake~instanceArn=fun~region->fun()->{instanceArn;region}letto_valuex=structure_to_value[("InstanceArn",(Some(IdcInstanceArn.to_valuex.instanceArn)));("Region",(Some(String_.to_valuex.region)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letregion=String_.of_xml(Xml.child_exn~context:context_xml_arg0"Region")inletinstanceArn=IdcInstanceArn.of_xml(Xml.child_exn~context:context_xml_arg0"InstanceArn")inmake~region~instanceArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letregion=field_map_exnjson__"Region"String_.of_jsoninletinstanceArn=field_map_exnjson__"InstanceArn"IdcInstanceArn.of_jsoninmake~region~instanceArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"IAM Identity Center credentials. For more information see, IAM Identity Center ."]moduleAccessDeniedException=structtypenonrect={message:String_.toption[@ocaml.doc"Message for the AccessDeniedException error."]}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:String_.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"String_.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"You do not have sufficient access to perform this action. Check your permissions, and try again."]moduleConflictException=structtypenonrect={message:String_.toption[@ocaml.doc"Message for the ConflictException error."]}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:String_.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"String_.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request cannot be completed because it conflicts with the current state of a resource."]moduleInternalServerException=structtypenonrect={message:String_.toption[@ocaml.doc"Message for the InternalServerException error."]}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:String_.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"String_.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The service encountered an internal error. Try your request again. If the problem persists, contact Amazon Web Services Support."]moduleResourceNotFoundException=structtypenonrect={message:String_.toption[@ocaml.doc"Message for the ResourceNotFoundException error."]}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:String_.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"String_.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The specified resource doesn't exist. Check the resource ID, and try again."]moduleServiceQuotaExceededException=structtypenonrect={message:String_.toption[@ocaml.doc"Message for the ServiceQuotaExceededException error."]}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:String_.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"String_.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request exceeds the service quota for your account. Request a quota increase or reduce your request size."]moduleThrottlingException=structtypenonrect={message:String_.toption[@ocaml.doc"Message for the ThrottlingException error."]}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:String_.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"String_.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request was denied due to request throttling."]moduleValidationException=structtypenonrect={message:String_.toption[@ocaml.doc"Message for the ValidationException error."]}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:String_.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"String_.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The input fails to satisfy the constraints specified by an Amazon Web Services service."]moduleApprovalStrategy=structtypenonrect={mofN:MofNApprovalStrategy.toption[@ocaml.doc"Minimum number of approvals (M) required for a total number of approvers (N)."]}letmake?mofN=fun()->{mofN}letto_valuex=structure_to_value[("MofN",(Option.mapx.mofN~f:MofNApprovalStrategy.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmofN=(Option.map~f:MofNApprovalStrategy.of_xml)(Xml.childxml_arg0"MofN")inmake?mofN()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmofN=field_mapjson__"MofN"MofNApprovalStrategy.of_jsoninmake?mofN()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Strategy for how an approval team grants approval."]moduleApprovalTeamRequestApprovers=structtypenonrect=ApprovalTeamRequestApprover.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:20)>>=(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:ApprovalTeamRequestApprover.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:ApprovalTeamRequestApprover.of_xml)letof_jsonj=list_of_json~kind:"ApprovalTeamRequestApprovers"~of_json:ApprovalTeamRequestApprover.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleUpdateActions=structtypenonrect=UpdateAction.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:100)>>=(fun()->check_list_mini~min:0));iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:UpdateAction.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:UpdateAction.of_xml)letof_jsonj=list_of_json~kind:"UpdateActions"~of_json:UpdateAction.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleTagKeyList=structtypenonrect=TagKey.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:50)>>=(fun()->check_list_mini~min:0));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_valuevendmoduleTooManyTagsException=structtypenonrect={message:String_.toption[@ocaml.doc"Message for the TooManyTagsException error."];resourceName:String_.toption[@ocaml.doc"Name of the resource for the TooManyTagsException error."]}letmake?message=fun?resourceName->fun()->{message;resourceName}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:String_.to_value));("ResourceName",(Option.mapx.resourceName~f:String_.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letresourceName=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"ResourceName")inletmessage=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"Message")inmake?resourceName?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letresourceName=field_mapjson__"ResourceName"String_.of_jsoninletmessage=field_mapjson__"Message"String_.of_jsoninmake?resourceName?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request exceeds the maximum number of tags allowed for this resource. Remove some tags, and try again."]moduleTags=structtypenonrect=(TagKey.t*TagValue.t)listletmakei=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_valuevendmoduleStartApprovalTeamBaselineApproverIds=structtypenonrect=ParticipantId.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:20)>>=(fun()->check_list_mini~min:0));iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:ParticipantId.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:ParticipantId.of_xml)letof_jsonj=list_of_json~kind:"StartApprovalTeamBaselineApproverIds"~of_json:ParticipantId.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleListSessionsResponseSessions=structtypenonrect=ListSessionsResponseSession.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:20)>>=(fun()->check_list_mini~min:0));iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:ListSessionsResponseSession.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:ListSessionsResponseSession.of_xml)letof_jsonj=list_of_json~kind:"ListSessionsResponseSessions"~of_json:ListSessionsResponseSession.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleToken=structtypenonrect=stringletcontext_="Token"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:4096)>>=(fun()->check_string_mini~min:0));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"Token"jletto_json=simple_to_jsonto_valueendmoduleFilters=structtypenonrect=Filter.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:10)>>=(fun()->check_list_mini~min:0));iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:Filter.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:Filter.of_xml)letof_jsonj=list_of_json~kind:"Filters"~of_json:Filter.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleMaxResults=structtypenonrect=intletmakei=letopenResultinok_or_failwith((check_int_maxi~max:20)>>=(fun()->check_int_mini~min:1));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_valueendmoduleListResourcePoliciesResponseResourcePolicies=structtypenonrect=ListResourcePoliciesResponseResourcePolicy.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:100)>>=(fun()->check_list_mini~min:0));iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:ListResourcePoliciesResponseResourcePolicy.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:ListResourcePoliciesResponseResourcePolicy.of_xml)letof_jsonj=list_of_json~kind:"ListResourcePoliciesResponseResourcePolicies"~of_json:ListResourcePoliciesResponseResourcePolicy.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmodulePolicyVersions=structtypenonrect=PolicyVersionSummary.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:20)>>=(fun()->check_list_mini~min:0));iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:PolicyVersionSummary.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:PolicyVersionSummary.of_xml)letof_jsonj=list_of_json~kind:"PolicyVersions"~of_json:PolicyVersionSummary.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmodulePolicies=structtypenonrect=Policy.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:20)>>=(fun()->check_list_mini~min:0));iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:Policy.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:Policy.of_xml)letof_jsonj=list_of_json~kind:"Policies"~of_json:Policy.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleIdentitySources=structtypenonrect=IdentitySourceForList.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:20)>>=(fun()->check_list_mini~min:0));iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:IdentitySourceForList.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:IdentitySourceForList.of_xml)letof_jsonj=list_of_json~kind:"IdentitySources"~of_json:IdentitySourceForList.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleListApprovalTeamsResponseApprovalTeams=structtypenonrect=ListApprovalTeamsResponseApprovalTeam.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:20)>>=(fun()->check_list_mini~min:0));iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:ListApprovalTeamsResponseApprovalTeam.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:ListApprovalTeamsResponseApprovalTeam.of_xml)letof_jsonj=list_of_json~kind:"ListApprovalTeamsResponseApprovalTeams"~of_json:ListApprovalTeamsResponseApprovalTeam.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleGetSessionResponseApproverResponses=structtypenonrect=GetSessionResponseApproverResponse.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:20)>>=(fun()->check_list_mini~min:0));iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:GetSessionResponseApproverResponse.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:GetSessionResponseApproverResponse.of_xml)letof_jsonj=list_of_json~kind:"GetSessionResponseApproverResponses"~of_json:GetSessionResponseApproverResponse.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleRequesterComment=structtypenonrect=stringletcontext_="RequesterComment"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:200)>>=(fun()->check_string_mini~min:0));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"RequesterComment"jletto_json=simple_to_jsonto_valueendmoduleSessionExecutionStatus=structtypenonrect=|EXECUTED|FAILED|PENDING|Non_static_idofstringletmakei=iletto_string=function|EXECUTED->"EXECUTED"|FAILED->"FAILED"|PENDING->"PENDING"|Non_static_ids->sletof_string=function|"EXECUTED"->EXECUTED|"FAILED"->FAILED|"PENDING"->PENDING|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 SessionExecutionStatus"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"SessionExecutionStatus"j)letto_json=simple_to_jsonto_valueendmoduleSessionMetadata=structtypenonrect=(SessionKey.t*SessionValue.t)listletmakei=iletof_headerxs=make(List.filter_mapxs~f:(fun(k,v)->(Base.String.chop_prefixk~prefix:"x-amz-meta-")|>(Option.map~f:(funchopped->((SessionKey.of_stringchopped),(SessionValue.of_stringv))))))letto_valuexs=(xs|>(List.map~f:(fun(x,y)->(SessionKey.to_valuex)|>(funx->(SessionValue.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:SessionKey.of_string~of_json:SessionValue.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleInvalidParameterException=structtypenonrect={message:String_.toption[@ocaml.doc"Message for the InvalidParameterException error."]}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:String_.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"String_.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request contains an invalid parameter value."]modulePolicyVersion=structtypenonrect={arn:QualifiedPolicyArn.toption[@ocaml.doc"Amazon Resource Name (ARN) for the team."];policyArn:UnqualifiedPolicyArn.toption[@ocaml.doc"Amazon Resource Name (ARN) for the policy."];versionId:PolicyVersionId.toption[@ocaml.doc"Verison ID"];policyType:PolicyType.toption[@ocaml.doc"The type of policy."];isDefault:Boolean.toption[@ocaml.doc"Determines if the specified policy is the default for the team."];name:PolicyName.toption[@ocaml.doc"Name of the policy."];status:PolicyStatus.toption[@ocaml.doc"Status for the policy. For example, if the policy is attachable or deprecated."];creationTime:IsoTimestamp.toption[@ocaml.doc"Timestamp when the policy was created."];lastUpdatedTime:IsoTimestamp.toption[@ocaml.doc"Timestamp when the policy was last updated."];document:PolicyDocument.toption[@ocaml.doc"Document that contains the policy contents."]}letmake?arn=fun?policyArn->fun?versionId->fun?policyType->fun?isDefault->fun?name->fun?status->fun?creationTime->fun?lastUpdatedTime->fun?document->fun()->{arn;policyArn;versionId;policyType;isDefault;name;status;creationTime;lastUpdatedTime;document}letto_valuex=structure_to_value[("Arn",(Option.mapx.arn~f:QualifiedPolicyArn.to_value));("PolicyArn",(Option.mapx.policyArn~f:UnqualifiedPolicyArn.to_value));("VersionId",(Option.mapx.versionId~f:PolicyVersionId.to_value));("PolicyType",(Option.mapx.policyType~f:PolicyType.to_value));("IsDefault",(Option.mapx.isDefault~f:Boolean.to_value));("Name",(Option.mapx.name~f:PolicyName.to_value));("Status",(Option.mapx.status~f:PolicyStatus.to_value));("CreationTime",(Option.mapx.creationTime~f:IsoTimestamp.to_value));("LastUpdatedTime",(Option.mapx.lastUpdatedTime~f:IsoTimestamp.to_value));("Document",(Option.mapx.document~f:PolicyDocument.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letdocument=(Option.map~f:PolicyDocument.of_xml)(Xml.childxml_arg0"Document")inletlastUpdatedTime=(Option.map~f:IsoTimestamp.of_xml)(Xml.childxml_arg0"LastUpdatedTime")inletcreationTime=(Option.map~f:IsoTimestamp.of_xml)(Xml.childxml_arg0"CreationTime")inletstatus=(Option.map~f:PolicyStatus.of_xml)(Xml.childxml_arg0"Status")inletname=(Option.map~f:PolicyName.of_xml)(Xml.childxml_arg0"Name")inletisDefault=(Option.map~f:Boolean.of_xml)(Xml.childxml_arg0"IsDefault")inletpolicyType=(Option.map~f:PolicyType.of_xml)(Xml.childxml_arg0"PolicyType")inletversionId=(Option.map~f:PolicyVersionId.of_xml)(Xml.childxml_arg0"VersionId")inletpolicyArn=(Option.map~f:UnqualifiedPolicyArn.of_xml)(Xml.childxml_arg0"PolicyArn")inletarn=(Option.map~f:QualifiedPolicyArn.of_xml)(Xml.childxml_arg0"Arn")inmake?document?lastUpdatedTime?creationTime?status?name?isDefault?policyType?versionId?policyArn?arn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letdocument=field_mapjson__"Document"PolicyDocument.of_jsoninletlastUpdatedTime=field_mapjson__"LastUpdatedTime"IsoTimestamp.of_jsoninletcreationTime=field_mapjson__"CreationTime"IsoTimestamp.of_jsoninletstatus=field_mapjson__"Status"PolicyStatus.of_jsoninletname=field_mapjson__"Name"PolicyName.of_jsoninletisDefault=field_mapjson__"IsDefault"Boolean.of_jsoninletpolicyType=field_mapjson__"PolicyType"PolicyType.of_jsoninletversionId=field_mapjson__"VersionId"PolicyVersionId.of_jsoninletpolicyArn=field_mapjson__"PolicyArn"UnqualifiedPolicyArn.of_jsoninletarn=field_mapjson__"Arn"QualifiedPolicyArn.of_jsoninmake?document?lastUpdatedTime?creationTime?status?name?isDefault?policyType?versionId?policyArn?arn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Contains details for the version of a policy. Policies define what operations a team that define the permissions for team resources."]moduleIdentitySourceParametersForGet=structtypenonrect={iamIdentityCenter:IamIdentityCenterForGet.toption[@ocaml.doc"IAM Identity Center credentials."]}letmake?iamIdentityCenter=fun()->{iamIdentityCenter}letto_valuex=structure_to_value[("IamIdentityCenter",(Option.mapx.iamIdentityCenter~f:IamIdentityCenterForGet.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letiamIdentityCenter=(Option.map~f:IamIdentityCenterForGet.of_xml)(Xml.childxml_arg0"IamIdentityCenter")inmake?iamIdentityCenter()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letiamIdentityCenter=field_mapjson__"IamIdentityCenter"IamIdentityCenterForGet.of_jsoninmake?iamIdentityCenter()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Contains details for the resource that provides identities to the identity source. For example, an IAM Identity Center instance. For more information, see Identity source in the Multi-party approval User Guide."]modulePendingUpdate=structtypenonrect={versionId:String_.toption[@ocaml.doc"Version ID for the team."];description:String_.toption[@ocaml.doc"Description for the team."];approvalStrategy:ApprovalStrategyResponse.toption[@ocaml.doc"An ApprovalStrategyResponse object. Contains details for how the team grants approval."];numberOfApprovers:Integer.toption[@ocaml.doc"Total number of approvers in the team."];status:ApprovalTeamStatus.toption[@ocaml.doc"Status for the team. For more information, see Team health in the Multi-party approval User Guide."];statusCode:ApprovalTeamStatusCode.toption[@ocaml.doc"Status code for the update. For more information, see Team health in the Multi-party approval User Guide."];statusMessage:Message.toption[@ocaml.doc"Message describing the status for the team."];approvers:GetApprovalTeamResponseApprovers.toption[@ocaml.doc"An array of GetApprovalTeamResponseApprover objects. Contains details for the approvers in the team."];updateInitiationTime:IsoTimestamp.toption[@ocaml.doc"Timestamp when the update request was initiated."]}letmake?versionId=fun?description->fun?approvalStrategy->fun?numberOfApprovers->fun?status->fun?statusCode->fun?statusMessage->fun?approvers->fun?updateInitiationTime->fun()->{versionId;description;approvalStrategy;numberOfApprovers;status;statusCode;statusMessage;approvers;updateInitiationTime}letto_valuex=structure_to_value[("VersionId",(Option.mapx.versionId~f:String_.to_value));("Description",(Option.mapx.description~f:String_.to_value));("ApprovalStrategy",(Option.mapx.approvalStrategy~f:ApprovalStrategyResponse.to_value));("NumberOfApprovers",(Option.mapx.numberOfApprovers~f:Integer.to_value));("Status",(Option.mapx.status~f:ApprovalTeamStatus.to_value));("StatusCode",(Option.mapx.statusCode~f:ApprovalTeamStatusCode.to_value));("StatusMessage",(Option.mapx.statusMessage~f:Message.to_value));("Approvers",(Option.mapx.approvers~f:GetApprovalTeamResponseApprovers.to_value));("UpdateInitiationTime",(Option.mapx.updateInitiationTime~f:IsoTimestamp.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letupdateInitiationTime=(Option.map~f:IsoTimestamp.of_xml)(Xml.childxml_arg0"UpdateInitiationTime")inletapprovers=(Option.map~f:GetApprovalTeamResponseApprovers.of_xml)(Xml.childxml_arg0"Approvers")inletstatusMessage=(Option.map~f:Message.of_xml)(Xml.childxml_arg0"StatusMessage")inletstatusCode=(Option.map~f:ApprovalTeamStatusCode.of_xml)(Xml.childxml_arg0"StatusCode")inletstatus=(Option.map~f:ApprovalTeamStatus.of_xml)(Xml.childxml_arg0"Status")inletnumberOfApprovers=(Option.map~f:Integer.of_xml)(Xml.childxml_arg0"NumberOfApprovers")inletapprovalStrategy=(Option.map~f:ApprovalStrategyResponse.of_xml)(Xml.childxml_arg0"ApprovalStrategy")inletdescription=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"Description")inletversionId=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"VersionId")inmake?updateInitiationTime?approvers?statusMessage?statusCode?status?numberOfApprovers?approvalStrategy?description?versionId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letupdateInitiationTime=field_mapjson__"UpdateInitiationTime"IsoTimestamp.of_jsoninletapprovers=field_mapjson__"Approvers"GetApprovalTeamResponseApprovers.of_jsoninletstatusMessage=field_mapjson__"StatusMessage"Message.of_jsoninletstatusCode=field_mapjson__"StatusCode"ApprovalTeamStatusCode.of_jsoninletstatus=field_mapjson__"Status"ApprovalTeamStatus.of_jsoninletnumberOfApprovers=field_mapjson__"NumberOfApprovers"Integer.of_jsoninletapprovalStrategy=field_mapjson__"ApprovalStrategy"ApprovalStrategyResponse.of_jsoninletdescription=field_mapjson__"Description"String_.of_jsoninletversionId=field_mapjson__"VersionId"String_.of_jsoninmake?updateInitiationTime?approvers?statusMessage?statusCode?status?numberOfApprovers?approvalStrategy?description?versionId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Contains details for the pending updates for an approval team, if applicable."]modulePoliciesReferences=structtypenonrect=PolicyReference.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:10)>>=(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:PolicyReference.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:PolicyReference.of_xml)letof_jsonj=list_of_json~kind:"PoliciesReferences"~of_json:PolicyReference.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleIdentitySourceParameters=structtypenonrect={iamIdentityCenter:IamIdentityCenter.toption[@ocaml.doc"IAM Identity Center credentials."]}letmake?iamIdentityCenter=fun()->{iamIdentityCenter}letto_valuex=structure_to_value[("IamIdentityCenter",(Option.mapx.iamIdentityCenter~f:IamIdentityCenter.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letiamIdentityCenter=(Option.map~f:IamIdentityCenter.of_xml)(Xml.childxml_arg0"IamIdentityCenter")inmake?iamIdentityCenter()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letiamIdentityCenter=field_mapjson__"IamIdentityCenter"IamIdentityCenter.of_jsoninmake?iamIdentityCenter()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Contains details for the resource that provides identities to the identity source. For example, an IAM Identity Center instance."]moduleUpdateApprovalTeamResponse=structtypenonrect={versionId:String_.toption[@ocaml.doc"Version ID for the team that was created. When an approval team is updated, the version ID changes."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`ConflictExceptionofConflictException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ServiceQuotaExceededExceptionofServiceQuotaExceededException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?versionId=fun()->{versionId}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"ConflictException"->`ConflictException(ConflictException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ServiceQuotaExceededException"->`ServiceQuotaExceededException(ServiceQuotaExceededException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"ConflictException"->`ConflictException(ConflictException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ServiceQuotaExceededException"->`ServiceQuotaExceededException(ServiceQuotaExceededException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`ConflictExceptione->`Assoc[("error",(`String"ConflictException"));("details",(ConflictException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ServiceQuotaExceededExceptione->`Assoc[("error",(`String"ServiceQuotaExceededException"));("details",(ServiceQuotaExceededException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("VersionId",(Option.mapx.versionId~f:String_.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letversionId=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"VersionId")inmake?versionId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letversionId=field_mapjson__"VersionId"String_.of_jsoninmake?versionId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Updates an approval team. You can request to update the team description, approval threshold, and approvers in the team. Updates require team approval Updates to an active team must be approved by the team."]moduleUpdateApprovalTeamRequest=structtypenonrect={approvalStrategy:ApprovalStrategy.toption[@ocaml.doc"An ApprovalStrategy object. Contains details for how the team grants approval."];approvers:ApprovalTeamRequestApprovers.toption[@ocaml.doc"An array of ApprovalTeamRequestApprover objects. Contains details for the approvers in the team."];description:Description.toption[@ocaml.doc"Description for the team."];arn:ApprovalTeamArn.t[@ocaml.doc"Amazon Resource Name (ARN) for the team."];updateActions:UpdateActions.toption[@ocaml.doc"A list of UpdateAction to perform when updating the team."]}letcontext_="UpdateApprovalTeamRequest"letmake?approvalStrategy=fun?approvers->fun?description->fun?updateActions->fun~arn->fun()->{approvalStrategy;approvers;description;updateActions;arn}letto_valuex=structure_to_value[("ApprovalStrategy",(Option.mapx.approvalStrategy~f:ApprovalStrategy.to_value));("Approvers",(Option.mapx.approvers~f:ApprovalTeamRequestApprovers.to_value));("Description",(Option.mapx.description~f:Description.to_value));("Arn",(Some(ApprovalTeamArn.to_valuex.arn)));("UpdateActions",(Option.mapx.updateActions~f:UpdateActions.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letupdateActions=(Option.map~f:UpdateActions.of_xml)(Xml.childxml_arg0"UpdateActions")inletarn=ApprovalTeamArn.of_xml(Xml.child_exn~context:context_xml_arg0"Arn")inletdescription=(Option.map~f:Description.of_xml)(Xml.childxml_arg0"Description")inletapprovers=(Option.map~f:ApprovalTeamRequestApprovers.of_xml)(Xml.childxml_arg0"Approvers")inletapprovalStrategy=(Option.map~f:ApprovalStrategy.of_xml)(Xml.childxml_arg0"ApprovalStrategy")inmake?updateActions~arn?description?approvers?approvalStrategy()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letupdateActions=field_mapjson__"UpdateActions"UpdateActions.of_jsoninletarn=field_map_exnjson__"Arn"ApprovalTeamArn.of_jsoninletdescription=field_mapjson__"Description"Description.of_jsoninletapprovers=field_mapjson__"Approvers"ApprovalTeamRequestApprovers.of_jsoninletapprovalStrategy=field_mapjson__"ApprovalStrategy"ApprovalStrategy.of_jsoninmake?updateActions~arn?description?approvers?approvalStrategy()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Updates an approval team. You can request to update the team description, approval threshold, and approvers in the team. Updates require team approval Updates to an active team must be approved by the team."]moduleUntagResourceResponse=structtypenonrect=unittypenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake()=()leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.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"Removes a resource tag. Each tag is a label consisting of a user-defined key and value. Tags can help you manage, identify, organize, search for, and filter resources."]moduleUntagResourceRequest=structtypenonrect={resourceArn:String_.t[@ocaml.doc"Amazon Resource Name (ARN) for the resource you want to untag."];tagKeys:TagKeyList.t[@ocaml.doc"Array of tag key-value pairs that you want to untag."]}letcontext_="UntagResourceRequest"letmake~resourceArn=fun~tagKeys->fun()->{resourceArn;tagKeys}letto_valuex=structure_to_value[("ResourceArn",(Some(String_.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=String_.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"String_.of_jsoninmake~tagKeys~resourceArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Removes a resource tag. Each tag is a label consisting of a user-defined key and value. Tags can help you manage, identify, organize, search for, and filter resources."]moduleTagResourceResponse=structtypenonrect=unittypenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`TooManyTagsExceptionofTooManyTagsException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake()=()leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"TooManyTagsException"->`TooManyTagsException(TooManyTagsException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"TooManyTagsException"->`TooManyTagsException(TooManyTagsException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`TooManyTagsExceptione->`Assoc[("error",(`String"TooManyTagsException"));("details",(TooManyTagsException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.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"Creates or updates a resource tag. Each tag is a label consisting of a user-defined key and value. Tags can help you manage, identify, organize, search for, and filter resources."]moduleTagResourceRequest=structtypenonrect={resourceArn:String_.t[@ocaml.doc"Amazon Resource Name (ARN) for the resource you want to tag."];tags:Tags.t[@ocaml.doc"Tags that you have added to the specified resource."]}letcontext_="TagResourceRequest"letmake~resourceArn=fun~tags->fun()->{resourceArn;tags}letto_valuex=structure_to_value[("ResourceArn",(Some(String_.to_valuex.resourceArn)));("Tags",(Some(Tags.to_valuex.tags)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=lettags=Tags.of_xml(Xml.child_exn~context:context_xml_arg0"Tags")inletresourceArn=String_.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"Tags.of_jsoninletresourceArn=field_map_exnjson__"ResourceArn"String_.of_jsoninmake~tags~resourceArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Creates or updates a resource tag. Each tag is a label consisting of a user-defined key and value. Tags can help you manage, identify, organize, search for, and filter resources."]moduleStartApprovalTeamBaselineResponse=structtypenonrect={baselineSessionArn:SessionArn.toption[@ocaml.doc"Amazon Resource Name (ARN) for the session."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?baselineSessionArn=fun()->{baselineSessionArn}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("BaselineSessionArn",(Option.mapx.baselineSessionArn~f:SessionArn.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letbaselineSessionArn=(Option.map~f:SessionArn.of_xml)(Xml.childxml_arg0"BaselineSessionArn")inmake?baselineSessionArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letbaselineSessionArn=field_mapjson__"BaselineSessionArn"SessionArn.of_jsoninmake?baselineSessionArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Starts a baseline session for specified approvers on an ACTIVE approval team."]moduleStartApprovalTeamBaselineRequest=structtypenonrect={arn:ApprovalTeamArn.t[@ocaml.doc"Amazon Resource Name (ARN) for the approval team."];approverIds:StartApprovalTeamBaselineApproverIds.toption[@ocaml.doc"Array of approver IDs."]}letcontext_="StartApprovalTeamBaselineRequest"letmake?approverIds=fun~arn->fun()->{approverIds;arn}letto_valuex=structure_to_value[("Arn",(Some(ApprovalTeamArn.to_valuex.arn)));("ApproverIds",(Option.mapx.approverIds~f:StartApprovalTeamBaselineApproverIds.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letapproverIds=(Option.map~f:StartApprovalTeamBaselineApproverIds.of_xml)(Xml.childxml_arg0"ApproverIds")inletarn=ApprovalTeamArn.of_xml(Xml.child_exn~context:context_xml_arg0"Arn")inmake?approverIds~arn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letapproverIds=field_mapjson__"ApproverIds"StartApprovalTeamBaselineApproverIds.of_jsoninletarn=field_map_exnjson__"Arn"ApprovalTeamArn.of_jsoninmake?approverIds~arn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Starts a baseline session for specified approvers on an ACTIVE approval team."]moduleStartActiveApprovalTeamDeletionResponse=structtypenonrect={deletionCompletionTime:IsoTimestamp.toption[@ocaml.doc"Timestamp when the deletion process is scheduled to complete."];deletionStartTime:IsoTimestamp.toption[@ocaml.doc"Timestamp when the deletion process was initiated."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`ConflictExceptionofConflictException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?deletionCompletionTime=fun?deletionStartTime->fun()->{deletionCompletionTime;deletionStartTime}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"ConflictException"->`ConflictException(ConflictException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"ConflictException"->`ConflictException(ConflictException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`ConflictExceptione->`Assoc[("error",(`String"ConflictException"));("details",(ConflictException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("DeletionCompletionTime",(Option.mapx.deletionCompletionTime~f:IsoTimestamp.to_value));("DeletionStartTime",(Option.mapx.deletionStartTime~f:IsoTimestamp.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letdeletionStartTime=(Option.map~f:IsoTimestamp.of_xml)(Xml.childxml_arg0"DeletionStartTime")inletdeletionCompletionTime=(Option.map~f:IsoTimestamp.of_xml)(Xml.childxml_arg0"DeletionCompletionTime")inmake?deletionStartTime?deletionCompletionTime()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letdeletionStartTime=field_mapjson__"DeletionStartTime"IsoTimestamp.of_jsoninletdeletionCompletionTime=field_mapjson__"DeletionCompletionTime"IsoTimestamp.of_jsoninmake?deletionStartTime?deletionCompletionTime()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Starts the deletion process for an active approval team. Deletions require team approval Requests to delete an active team must be approved by the team."]moduleStartActiveApprovalTeamDeletionRequest=structtypenonrect={pendingWindowDays:Integer.toption[@ocaml.doc"Number of days between when the team approves the delete request and when the team is deleted."];arn:ApprovalTeamArn.t[@ocaml.doc"Amazon Resource Name (ARN) for the team."]}letcontext_="StartActiveApprovalTeamDeletionRequest"letmake?pendingWindowDays=fun~arn->fun()->{pendingWindowDays;arn}letto_valuex=structure_to_value[("PendingWindowDays",(Option.mapx.pendingWindowDays~f:Integer.to_value));("Arn",(Some(ApprovalTeamArn.to_valuex.arn)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letarn=ApprovalTeamArn.of_xml(Xml.child_exn~context:context_xml_arg0"Arn")inletpendingWindowDays=(Option.map~f:Integer.of_xml)(Xml.childxml_arg0"PendingWindowDays")inmake~arn?pendingWindowDays()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letarn=field_map_exnjson__"Arn"ApprovalTeamArn.of_jsoninletpendingWindowDays=field_mapjson__"PendingWindowDays"Integer.of_jsoninmake~arn?pendingWindowDays()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Starts the deletion process for an active approval team. Deletions require team approval Requests to delete an active team must be approved by the team."]moduleListTagsForResourceResponse=structtypenonrect={tags:Tags.toption[@ocaml.doc"Tags attached to the resource."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?tags=fun()->{tags}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.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:Tags.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=lettags=(Option.map~f:Tags.of_xml)(Xml.childxml_arg0"Tags")inmake?tags()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=lettags=field_mapjson__"Tags"Tags.of_jsoninmake?tags()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns a list of the tags for a resource."]moduleListTagsForResourceRequest=structtypenonrect={resourceArn:String_.t[@ocaml.doc"Amazon Resource Name (ARN) for the resource."]}letcontext_="ListTagsForResourceRequest"letmake~resourceArn=fun()->{resourceArn}letto_valuex=structure_to_value[("ResourceArn",(Some(String_.to_valuex.resourceArn)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letresourceArn=String_.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"String_.of_jsoninmake~resourceArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns a list of the tags for a resource."]moduleListSessionsResponse=structtypenonrect={nextToken:Token.toption[@ocaml.doc"If present, indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a next call to the operation to get more output. You can repeat this until the NextToken response element returns null."];sessions:ListSessionsResponseSessions.toption[@ocaml.doc"An array of ListSessionsResponseSession objects. Contains details for the sessions."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?nextToken=fun?sessions->fun()->{nextToken;sessions}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("NextToken",(Option.mapx.nextToken~f:Token.to_value));("Sessions",(Option.mapx.sessions~f:ListSessionsResponseSessions.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letsessions=(Option.map~f:ListSessionsResponseSessions.of_xml)(Xml.childxml_arg0"Sessions")inletnextToken=(Option.map~f:Token.of_xml)(Xml.childxml_arg0"NextToken")inmake?sessions?nextToken()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letsessions=field_mapjson__"Sessions"ListSessionsResponseSessions.of_jsoninletnextToken=field_mapjson__"NextToken"Token.of_jsoninmake?sessions?nextToken()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns a list of approval sessions. For more information, see Session in the Multi-party approval User Guide."]moduleListSessionsRequest=structtypenonrect={approvalTeamArn:ApprovalTeamArn.t[@ocaml.doc"Amazon Resource Name (ARN) for the approval team."];maxResults:MaxResults.toption[@ocaml.doc"The maximum number of items to return in the response. If more results exist than the specified MaxResults value, a token is included in the response so that you can retrieve the remaining results."];nextToken:Token.toption[@ocaml.doc"If present, indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a next call to the operation to get more output. You can repeat this until the NextToken response element returns null."];filters:Filters.toption[@ocaml.doc"An array of Filter objects. Contains the filter to apply when listing sessions."]}letcontext_="ListSessionsRequest"letmake?maxResults=fun?nextToken->fun?filters->fun~approvalTeamArn->fun()->{maxResults;nextToken;filters;approvalTeamArn}letto_valuex=structure_to_value[("ApprovalTeamArn",(Some(ApprovalTeamArn.to_valuex.approvalTeamArn)));("MaxResults",(Option.mapx.maxResults~f:MaxResults.to_value));("NextToken",(Option.mapx.nextToken~f:Token.to_value));("Filters",(Option.mapx.filters~f:Filters.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letfilters=(Option.map~f:Filters.of_xml)(Xml.childxml_arg0"Filters")inletnextToken=(Option.map~f:Token.of_xml)(Xml.childxml_arg0"NextToken")inletmaxResults=(Option.map~f:MaxResults.of_xml)(Xml.childxml_arg0"MaxResults")inletapprovalTeamArn=ApprovalTeamArn.of_xml(Xml.child_exn~context:context_xml_arg0"ApprovalTeamArn")inmake?filters?nextToken?maxResults~approvalTeamArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letfilters=field_mapjson__"Filters"Filters.of_jsoninletnextToken=field_mapjson__"NextToken"Token.of_jsoninletmaxResults=field_mapjson__"MaxResults"MaxResults.of_jsoninletapprovalTeamArn=field_map_exnjson__"ApprovalTeamArn"ApprovalTeamArn.of_jsoninmake?filters?nextToken?maxResults~approvalTeamArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns a list of approval sessions. For more information, see Session in the Multi-party approval User Guide."]moduleListResourcePoliciesResponse=structtypenonrect={nextToken:Token.toption[@ocaml.doc"If present, indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a next call to the operation to get more output. You can repeat this until the NextToken response element returns null."];resourcePolicies:ListResourcePoliciesResponseResourcePolicies.toption[@ocaml.doc"An array of ListResourcePoliciesResponseResourcePolicy objects. Contains details about the policy for the resource."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?nextToken=fun?resourcePolicies->fun()->{nextToken;resourcePolicies}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("NextToken",(Option.mapx.nextToken~f:Token.to_value));("ResourcePolicies",(Option.mapx.resourcePolicies~f:ListResourcePoliciesResponseResourcePolicies.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letresourcePolicies=(Option.map~f:ListResourcePoliciesResponseResourcePolicies.of_xml)(Xml.childxml_arg0"ResourcePolicies")inletnextToken=(Option.map~f:Token.of_xml)(Xml.childxml_arg0"NextToken")inmake?resourcePolicies?nextToken()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letresourcePolicies=field_mapjson__"ResourcePolicies"ListResourcePoliciesResponseResourcePolicies.of_jsoninletnextToken=field_mapjson__"NextToken"Token.of_jsoninmake?resourcePolicies?nextToken()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns a list of policies for a resource."]moduleListResourcePoliciesRequest=structtypenonrect={resourceArn:String_.t[@ocaml.doc"Amazon Resource Name (ARN) for the resource."];maxResults:MaxResults.toption[@ocaml.doc"The maximum number of items to return in the response. If more results exist than the specified MaxResults value, a token is included in the response so that you can retrieve the remaining results."];nextToken:Token.toption[@ocaml.doc"If present, indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a next call to the operation to get more output. You can repeat this until the NextToken response element returns null."]}letcontext_="ListResourcePoliciesRequest"letmake?maxResults=fun?nextToken->fun~resourceArn->fun()->{maxResults;nextToken;resourceArn}letto_valuex=structure_to_value[("ResourceArn",(Some(String_.to_valuex.resourceArn)));("MaxResults",(Option.mapx.maxResults~f:MaxResults.to_value));("NextToken",(Option.mapx.nextToken~f:Token.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letnextToken=(Option.map~f:Token.of_xml)(Xml.childxml_arg0"NextToken")inletmaxResults=(Option.map~f:MaxResults.of_xml)(Xml.childxml_arg0"MaxResults")inletresourceArn=String_.of_xml(Xml.child_exn~context:context_xml_arg0"ResourceArn")inmake?nextToken?maxResults~resourceArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letnextToken=field_mapjson__"NextToken"Token.of_jsoninletmaxResults=field_mapjson__"MaxResults"MaxResults.of_jsoninletresourceArn=field_map_exnjson__"ResourceArn"String_.of_jsoninmake?nextToken?maxResults~resourceArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns a list of policies for a resource."]moduleListPolicyVersionsResponse=structtypenonrect={nextToken:Token.toption[@ocaml.doc"If present, indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a next call to the operation to get more output. You can repeat this until the NextToken response element returns null."];policyVersions:PolicyVersions.toption[@ocaml.doc"An array of PolicyVersionSummary objects. Contains details for the version of the policies that define the permissions for team resources."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?nextToken=fun?policyVersions->fun()->{nextToken;policyVersions}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("NextToken",(Option.mapx.nextToken~f:Token.to_value));("PolicyVersions",(Option.mapx.policyVersions~f:PolicyVersions.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letpolicyVersions=(Option.map~f:PolicyVersions.of_xml)(Xml.childxml_arg0"PolicyVersions")inletnextToken=(Option.map~f:Token.of_xml)(Xml.childxml_arg0"NextToken")inmake?policyVersions?nextToken()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letpolicyVersions=field_mapjson__"PolicyVersions"PolicyVersions.of_jsoninletnextToken=field_mapjson__"NextToken"Token.of_jsoninmake?policyVersions?nextToken()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns a list of the versions for policies. Policies define the permissions for team resources."]moduleListPolicyVersionsRequest=structtypenonrect={maxResults:MaxResults.toption[@ocaml.doc"The maximum number of items to return in the response. If more results exist than the specified MaxResults value, a token is included in the response so that you can retrieve the remaining results."];nextToken:Token.toption[@ocaml.doc"If present, indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a next call to the operation to get more output. You can repeat this until the NextToken response element returns null."];policyArn:UnqualifiedPolicyArn.t[@ocaml.doc"Amazon Resource Name (ARN) for the policy."]}letcontext_="ListPolicyVersionsRequest"letmake?maxResults=fun?nextToken->fun~policyArn->fun()->{maxResults;nextToken;policyArn}letto_valuex=structure_to_value[("MaxResults",(Option.mapx.maxResults~f:MaxResults.to_value));("NextToken",(Option.mapx.nextToken~f:Token.to_value));("PolicyArn",(Some(UnqualifiedPolicyArn.to_valuex.policyArn)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letpolicyArn=UnqualifiedPolicyArn.of_xml(Xml.child_exn~context:context_xml_arg0"PolicyArn")inletnextToken=(Option.map~f:Token.of_xml)(Xml.childxml_arg0"NextToken")inletmaxResults=(Option.map~f:MaxResults.of_xml)(Xml.childxml_arg0"MaxResults")inmake~policyArn?nextToken?maxResults()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letpolicyArn=field_map_exnjson__"PolicyArn"UnqualifiedPolicyArn.of_jsoninletnextToken=field_mapjson__"NextToken"Token.of_jsoninletmaxResults=field_mapjson__"MaxResults"MaxResults.of_jsoninmake~policyArn?nextToken?maxResults()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns a list of the versions for policies. Policies define the permissions for team resources."]moduleListPoliciesResponse=structtypenonrect={nextToken:Token.toption[@ocaml.doc"If present, indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a next call to the operation to get more output. You can repeat this until the NextToken response element returns null."];policies:Policies.toption[@ocaml.doc"An array of Policy objects. Contains a list of policies that define the permissions for team resources."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InternalServerExceptionofInternalServerException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?nextToken=fun?policies->fun()->{nextToken;policies}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("NextToken",(Option.mapx.nextToken~f:Token.to_value));("Policies",(Option.mapx.policies~f:Policies.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letpolicies=(Option.map~f:Policies.of_xml)(Xml.childxml_arg0"Policies")inletnextToken=(Option.map~f:Token.of_xml)(Xml.childxml_arg0"NextToken")inmake?policies?nextToken()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letpolicies=field_mapjson__"Policies"Policies.of_jsoninletnextToken=field_mapjson__"NextToken"Token.of_jsoninmake?policies?nextToken()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns a list of policies. Policies define the permissions for team resources."]moduleListPoliciesRequest=structtypenonrect={maxResults:MaxResults.toption[@ocaml.doc"The maximum number of items to return in the response. If more results exist than the specified MaxResults value, a token is included in the response so that you can retrieve the remaining results."];nextToken:Token.toption[@ocaml.doc"If present, indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a next call to the operation to get more output. You can repeat this until the NextToken response element returns null."]}letmake?maxResults=fun?nextToken->fun()->{maxResults;nextToken}letto_valuex=structure_to_value[("MaxResults",(Option.mapx.maxResults~f:MaxResults.to_value));("NextToken",(Option.mapx.nextToken~f:Token.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letnextToken=(Option.map~f:Token.of_xml)(Xml.childxml_arg0"NextToken")inletmaxResults=(Option.map~f:MaxResults.of_xml)(Xml.childxml_arg0"MaxResults")inmake?nextToken?maxResults()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letnextToken=field_mapjson__"NextToken"Token.of_jsoninletmaxResults=field_mapjson__"MaxResults"MaxResults.of_jsoninmake?nextToken?maxResults()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns a list of policies. Policies define the permissions for team resources."]moduleListIdentitySourcesResponse=structtypenonrect={nextToken:Token.toption[@ocaml.doc"If present, indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a next call to the operation to get more output. You can repeat this until the NextToken response element returns null."];identitySources:IdentitySources.toption[@ocaml.doc"A IdentitySources. Contains details for identity sources."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InternalServerExceptionofInternalServerException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?nextToken=fun?identitySources->fun()->{nextToken;identitySources}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("NextToken",(Option.mapx.nextToken~f:Token.to_value));("IdentitySources",(Option.mapx.identitySources~f:IdentitySources.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letidentitySources=(Option.map~f:IdentitySources.of_xml)(Xml.childxml_arg0"IdentitySources")inletnextToken=(Option.map~f:Token.of_xml)(Xml.childxml_arg0"NextToken")inmake?identitySources?nextToken()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letidentitySources=field_mapjson__"IdentitySources"IdentitySources.of_jsoninletnextToken=field_mapjson__"NextToken"Token.of_jsoninmake?identitySources?nextToken()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns a list of identity sources. For more information, see Identity Source in the Multi-party approval User Guide."]moduleListIdentitySourcesRequest=structtypenonrect={maxResults:MaxResults.toption[@ocaml.doc"The maximum number of items to return in the response. If more results exist than the specified MaxResults value, a token is included in the response so that you can retrieve the remaining results."];nextToken:Token.toption[@ocaml.doc"If present, indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a next call to the operation to get more output. You can repeat this until the NextToken response element returns null."]}letmake?maxResults=fun?nextToken->fun()->{maxResults;nextToken}letto_valuex=structure_to_value[("MaxResults",(Option.mapx.maxResults~f:MaxResults.to_value));("NextToken",(Option.mapx.nextToken~f:Token.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letnextToken=(Option.map~f:Token.of_xml)(Xml.childxml_arg0"NextToken")inletmaxResults=(Option.map~f:MaxResults.of_xml)(Xml.childxml_arg0"MaxResults")inmake?nextToken?maxResults()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letnextToken=field_mapjson__"NextToken"Token.of_jsoninletmaxResults=field_mapjson__"MaxResults"MaxResults.of_jsoninmake?nextToken?maxResults()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns a list of identity sources. For more information, see Identity Source in the Multi-party approval User Guide."]moduleListApprovalTeamsResponse=structtypenonrect={nextToken:Token.toption[@ocaml.doc"If present, indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a next call to the operation to get more output. You can repeat this until the NextToken response element returns null."];approvalTeams:ListApprovalTeamsResponseApprovalTeams.toption[@ocaml.doc"An array of ListApprovalTeamsResponseApprovalTeam objects. Contains details for approval teams."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InternalServerExceptionofInternalServerException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?nextToken=fun?approvalTeams->fun()->{nextToken;approvalTeams}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("NextToken",(Option.mapx.nextToken~f:Token.to_value));("ApprovalTeams",(Option.mapx.approvalTeams~f:ListApprovalTeamsResponseApprovalTeams.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letapprovalTeams=(Option.map~f:ListApprovalTeamsResponseApprovalTeams.of_xml)(Xml.childxml_arg0"ApprovalTeams")inletnextToken=(Option.map~f:Token.of_xml)(Xml.childxml_arg0"NextToken")inmake?approvalTeams?nextToken()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letapprovalTeams=field_mapjson__"ApprovalTeams"ListApprovalTeamsResponseApprovalTeams.of_jsoninletnextToken=field_mapjson__"NextToken"Token.of_jsoninmake?approvalTeams?nextToken()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns a list of approval teams."]moduleListApprovalTeamsRequest=structtypenonrect={maxResults:MaxResults.toption[@ocaml.doc"The maximum number of items to return in the response. If more results exist than the specified MaxResults value, a token is included in the response so that you can retrieve the remaining results."];nextToken:Token.toption[@ocaml.doc"If present, indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a next call to the operation to get more output. You can repeat this until the NextToken response element returns null."]}letmake?maxResults=fun?nextToken->fun()->{maxResults;nextToken}letto_valuex=structure_to_value[("MaxResults",(Option.mapx.maxResults~f:MaxResults.to_value));("NextToken",(Option.mapx.nextToken~f:Token.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letnextToken=(Option.map~f:Token.of_xml)(Xml.childxml_arg0"NextToken")inletmaxResults=(Option.map~f:MaxResults.of_xml)(Xml.childxml_arg0"MaxResults")inmake?nextToken?maxResults()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letnextToken=field_mapjson__"NextToken"Token.of_jsoninletmaxResults=field_mapjson__"MaxResults"MaxResults.of_jsoninmake?nextToken?maxResults()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns a list of approval teams."]moduleGetSessionResponse=structtypenonrect={sessionArn:SessionArn.toption[@ocaml.doc"Amazon Resource Name (ARN) for the session."];approvalTeamArn:ApprovalTeamArn.toption[@ocaml.doc"Amazon Resource Name (ARN) for the approval team."];approvalTeamName:ApprovalTeamName.toption[@ocaml.doc"Name of the approval team."];protectedResourceArn:String_.toption[@ocaml.doc"Amazon Resource Name (ARN) for the protected operation."];approvalStrategy:ApprovalStrategyResponse.toption[@ocaml.doc"An ApprovalStrategyResponse object. Contains details for how the team grants approval"];numberOfApprovers:Integer.toption[@ocaml.doc"Total number of approvers in the session."];initiationTime:IsoTimestamp.toption[@ocaml.doc"Timestamp when the session was initiated."];expirationTime:IsoTimestamp.toption[@ocaml.doc"Timestamp when the session will expire."];completionTime:IsoTimestamp.toption[@ocaml.doc"Timestamp when the session completed."];description:Description.toption[@ocaml.doc"Description for the session."];metadata:SessionMetadata.toption[@ocaml.doc"Metadata for the session."];status:SessionStatus.toption[@ocaml.doc"Status for the session. For example, if the team has approved the requested operation."];statusCode:SessionStatusCode.toption[@ocaml.doc"Status code of the session."];statusMessage:Message.toption[@ocaml.doc"Message describing the status for session."];executionStatus:SessionExecutionStatus.toption[@ocaml.doc"Status for the protected operation. For example, if the operation is PENDING."];actionName:ActionName.toption[@ocaml.doc"Name of the protected operation."];requesterServicePrincipal:ServicePrincipal.toption[@ocaml.doc"Service principal for the service associated with the protected operation."];requesterPrincipalArn:String_.toption[@ocaml.doc"IAM principal that made the operation request."];requesterAccountId:AccountId.toption[@ocaml.doc"ID for the account that made the operation request."];requesterRegion:Region.toption[@ocaml.doc"Amazon Web Services Region where the operation request originated."];requesterComment:RequesterComment.toption[@ocaml.doc"Message from the account that made the operation request"];actionCompletionStrategy:ActionCompletionStrategy.toption[@ocaml.doc"Strategy for executing the protected operation. AUTO_COMPLETION_UPON_APPROVAL means the operation is automatically executed using the requester's permissions, if approved."];approverResponses:GetSessionResponseApproverResponses.toption[@ocaml.doc"An array of GetSessionResponseApproverResponse objects. Contains details for approver responses in the session."];additionalSecurityRequirements:AdditionalSecurityRequirements.toption[@ocaml.doc"A list of AdditionalSecurityRequirement applied to the session."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?sessionArn=fun?approvalTeamArn->fun?approvalTeamName->fun?protectedResourceArn->fun?approvalStrategy->fun?numberOfApprovers->fun?initiationTime->fun?expirationTime->fun?completionTime->fun?description->fun?metadata->fun?status->fun?statusCode->fun?statusMessage->fun?executionStatus->fun?actionName->fun?requesterServicePrincipal->fun?requesterPrincipalArn->fun?requesterAccountId->fun?requesterRegion->fun?requesterComment->fun?actionCompletionStrategy->fun?approverResponses->fun?additionalSecurityRequirements->fun()->{sessionArn;approvalTeamArn;approvalTeamName;protectedResourceArn;approvalStrategy;numberOfApprovers;initiationTime;expirationTime;completionTime;description;metadata;status;statusCode;statusMessage;executionStatus;actionName;requesterServicePrincipal;requesterPrincipalArn;requesterAccountId;requesterRegion;requesterComment;actionCompletionStrategy;approverResponses;additionalSecurityRequirements}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("SessionArn",(Option.mapx.sessionArn~f:SessionArn.to_value));("ApprovalTeamArn",(Option.mapx.approvalTeamArn~f:ApprovalTeamArn.to_value));("ApprovalTeamName",(Option.mapx.approvalTeamName~f:ApprovalTeamName.to_value));("ProtectedResourceArn",(Option.mapx.protectedResourceArn~f:String_.to_value));("ApprovalStrategy",(Option.mapx.approvalStrategy~f:ApprovalStrategyResponse.to_value));("NumberOfApprovers",(Option.mapx.numberOfApprovers~f:Integer.to_value));("InitiationTime",(Option.mapx.initiationTime~f:IsoTimestamp.to_value));("ExpirationTime",(Option.mapx.expirationTime~f:IsoTimestamp.to_value));("CompletionTime",(Option.mapx.completionTime~f:IsoTimestamp.to_value));("Description",(Option.mapx.description~f:Description.to_value));("Metadata",(Option.mapx.metadata~f:SessionMetadata.to_value));("Status",(Option.mapx.status~f:SessionStatus.to_value));("StatusCode",(Option.mapx.statusCode~f:SessionStatusCode.to_value));("StatusMessage",(Option.mapx.statusMessage~f:Message.to_value));("ExecutionStatus",(Option.mapx.executionStatus~f:SessionExecutionStatus.to_value));("ActionName",(Option.mapx.actionName~f:ActionName.to_value));("RequesterServicePrincipal",(Option.mapx.requesterServicePrincipal~f:ServicePrincipal.to_value));("RequesterPrincipalArn",(Option.mapx.requesterPrincipalArn~f:String_.to_value));("RequesterAccountId",(Option.mapx.requesterAccountId~f:AccountId.to_value));("RequesterRegion",(Option.mapx.requesterRegion~f:Region.to_value));("RequesterComment",(Option.mapx.requesterComment~f:RequesterComment.to_value));("ActionCompletionStrategy",(Option.mapx.actionCompletionStrategy~f:ActionCompletionStrategy.to_value));("ApproverResponses",(Option.mapx.approverResponses~f:GetSessionResponseApproverResponses.to_value));("AdditionalSecurityRequirements",(Option.mapx.additionalSecurityRequirements~f:AdditionalSecurityRequirements.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letadditionalSecurityRequirements=(Option.map~f:AdditionalSecurityRequirements.of_xml)(Xml.childxml_arg0"AdditionalSecurityRequirements")inletapproverResponses=(Option.map~f:GetSessionResponseApproverResponses.of_xml)(Xml.childxml_arg0"ApproverResponses")inletactionCompletionStrategy=(Option.map~f:ActionCompletionStrategy.of_xml)(Xml.childxml_arg0"ActionCompletionStrategy")inletrequesterComment=(Option.map~f:RequesterComment.of_xml)(Xml.childxml_arg0"RequesterComment")inletrequesterRegion=(Option.map~f:Region.of_xml)(Xml.childxml_arg0"RequesterRegion")inletrequesterAccountId=(Option.map~f:AccountId.of_xml)(Xml.childxml_arg0"RequesterAccountId")inletrequesterPrincipalArn=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"RequesterPrincipalArn")inletrequesterServicePrincipal=(Option.map~f:ServicePrincipal.of_xml)(Xml.childxml_arg0"RequesterServicePrincipal")inletactionName=(Option.map~f:ActionName.of_xml)(Xml.childxml_arg0"ActionName")inletexecutionStatus=(Option.map~f:SessionExecutionStatus.of_xml)(Xml.childxml_arg0"ExecutionStatus")inletstatusMessage=(Option.map~f:Message.of_xml)(Xml.childxml_arg0"StatusMessage")inletstatusCode=(Option.map~f:SessionStatusCode.of_xml)(Xml.childxml_arg0"StatusCode")inletstatus=(Option.map~f:SessionStatus.of_xml)(Xml.childxml_arg0"Status")inletmetadata=(Option.map~f:SessionMetadata.of_xml)(Xml.childxml_arg0"Metadata")inletdescription=(Option.map~f:Description.of_xml)(Xml.childxml_arg0"Description")inletcompletionTime=(Option.map~f:IsoTimestamp.of_xml)(Xml.childxml_arg0"CompletionTime")inletexpirationTime=(Option.map~f:IsoTimestamp.of_xml)(Xml.childxml_arg0"ExpirationTime")inletinitiationTime=(Option.map~f:IsoTimestamp.of_xml)(Xml.childxml_arg0"InitiationTime")inletnumberOfApprovers=(Option.map~f:Integer.of_xml)(Xml.childxml_arg0"NumberOfApprovers")inletapprovalStrategy=(Option.map~f:ApprovalStrategyResponse.of_xml)(Xml.childxml_arg0"ApprovalStrategy")inletprotectedResourceArn=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"ProtectedResourceArn")inletapprovalTeamName=(Option.map~f:ApprovalTeamName.of_xml)(Xml.childxml_arg0"ApprovalTeamName")inletapprovalTeamArn=(Option.map~f:ApprovalTeamArn.of_xml)(Xml.childxml_arg0"ApprovalTeamArn")inletsessionArn=(Option.map~f:SessionArn.of_xml)(Xml.childxml_arg0"SessionArn")inmake?additionalSecurityRequirements?approverResponses?actionCompletionStrategy?requesterComment?requesterRegion?requesterAccountId?requesterPrincipalArn?requesterServicePrincipal?actionName?executionStatus?statusMessage?statusCode?status?metadata?description?completionTime?expirationTime?initiationTime?numberOfApprovers?approvalStrategy?protectedResourceArn?approvalTeamName?approvalTeamArn?sessionArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letadditionalSecurityRequirements=field_mapjson__"AdditionalSecurityRequirements"AdditionalSecurityRequirements.of_jsoninletapproverResponses=field_mapjson__"ApproverResponses"GetSessionResponseApproverResponses.of_jsoninletactionCompletionStrategy=field_mapjson__"ActionCompletionStrategy"ActionCompletionStrategy.of_jsoninletrequesterComment=field_mapjson__"RequesterComment"RequesterComment.of_jsoninletrequesterRegion=field_mapjson__"RequesterRegion"Region.of_jsoninletrequesterAccountId=field_mapjson__"RequesterAccountId"AccountId.of_jsoninletrequesterPrincipalArn=field_mapjson__"RequesterPrincipalArn"String_.of_jsoninletrequesterServicePrincipal=field_mapjson__"RequesterServicePrincipal"ServicePrincipal.of_jsoninletactionName=field_mapjson__"ActionName"ActionName.of_jsoninletexecutionStatus=field_mapjson__"ExecutionStatus"SessionExecutionStatus.of_jsoninletstatusMessage=field_mapjson__"StatusMessage"Message.of_jsoninletstatusCode=field_mapjson__"StatusCode"SessionStatusCode.of_jsoninletstatus=field_mapjson__"Status"SessionStatus.of_jsoninletmetadata=field_mapjson__"Metadata"SessionMetadata.of_jsoninletdescription=field_mapjson__"Description"Description.of_jsoninletcompletionTime=field_mapjson__"CompletionTime"IsoTimestamp.of_jsoninletexpirationTime=field_mapjson__"ExpirationTime"IsoTimestamp.of_jsoninletinitiationTime=field_mapjson__"InitiationTime"IsoTimestamp.of_jsoninletnumberOfApprovers=field_mapjson__"NumberOfApprovers"Integer.of_jsoninletapprovalStrategy=field_mapjson__"ApprovalStrategy"ApprovalStrategyResponse.of_jsoninletprotectedResourceArn=field_mapjson__"ProtectedResourceArn"String_.of_jsoninletapprovalTeamName=field_mapjson__"ApprovalTeamName"ApprovalTeamName.of_jsoninletapprovalTeamArn=field_mapjson__"ApprovalTeamArn"ApprovalTeamArn.of_jsoninletsessionArn=field_mapjson__"SessionArn"SessionArn.of_jsoninmake?additionalSecurityRequirements?approverResponses?actionCompletionStrategy?requesterComment?requesterRegion?requesterAccountId?requesterPrincipalArn?requesterServicePrincipal?actionName?executionStatus?statusMessage?statusCode?status?metadata?description?completionTime?expirationTime?initiationTime?numberOfApprovers?approvalStrategy?protectedResourceArn?approvalTeamName?approvalTeamArn?sessionArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns details for an approval session. For more information, see Session in the Multi-party approval User Guide."]moduleGetSessionRequest=structtypenonrect={sessionArn:SessionArn.t[@ocaml.doc"Amazon Resource Name (ARN) for the session."]}letcontext_="GetSessionRequest"letmake~sessionArn=fun()->{sessionArn}letto_valuex=structure_to_value[("SessionArn",(Some(SessionArn.to_valuex.sessionArn)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letsessionArn=SessionArn.of_xml(Xml.child_exn~context:context_xml_arg0"SessionArn")inmake~sessionArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letsessionArn=field_map_exnjson__"SessionArn"SessionArn.of_jsoninmake~sessionArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns details for an approval session. For more information, see Session in the Multi-party approval User Guide."]moduleGetResourcePolicyResponse=structtypenonrect={resourceArn:String_.toption[@ocaml.doc"Amazon Resource Name (ARN) for the resource."];policyType:PolicyType.toption[@ocaml.doc"The type of policy"];policyVersionArn:String_.toption[@ocaml.doc"Amazon Resource Name (ARN) for the policy version."];policyName:PolicyName.toption[@ocaml.doc"Name of the policy."];policyDocument:PolicyDocument.toption[@ocaml.doc"Document that contains the contents for the policy."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InvalidParameterExceptionofInvalidParameterException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?resourceArn=fun?policyType->fun?policyVersionArn->fun?policyName->fun?policyDocument->fun()->{resourceArn;policyType;policyVersionArn;policyName;policyDocument}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`InvalidParameterExceptione->`Assoc[("error",(`String"InvalidParameterException"));("details",(InvalidParameterException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("ResourceArn",(Option.mapx.resourceArn~f:String_.to_value));("PolicyType",(Option.mapx.policyType~f:PolicyType.to_value));("PolicyVersionArn",(Option.mapx.policyVersionArn~f:String_.to_value));("PolicyName",(Option.mapx.policyName~f:PolicyName.to_value));("PolicyDocument",(Option.mapx.policyDocument~f:PolicyDocument.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letpolicyDocument=(Option.map~f:PolicyDocument.of_xml)(Xml.childxml_arg0"PolicyDocument")inletpolicyName=(Option.map~f:PolicyName.of_xml)(Xml.childxml_arg0"PolicyName")inletpolicyVersionArn=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"PolicyVersionArn")inletpolicyType=(Option.map~f:PolicyType.of_xml)(Xml.childxml_arg0"PolicyType")inletresourceArn=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"ResourceArn")inmake?policyDocument?policyName?policyVersionArn?policyType?resourceArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letpolicyDocument=field_mapjson__"PolicyDocument"PolicyDocument.of_jsoninletpolicyName=field_mapjson__"PolicyName"PolicyName.of_jsoninletpolicyVersionArn=field_mapjson__"PolicyVersionArn"String_.of_jsoninletpolicyType=field_mapjson__"PolicyType"PolicyType.of_jsoninletresourceArn=field_mapjson__"ResourceArn"String_.of_jsoninmake?policyDocument?policyName?policyVersionArn?policyType?resourceArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns details about a policy for a resource."]moduleGetResourcePolicyRequest=structtypenonrect={resourceArn:String_.t[@ocaml.doc"Amazon Resource Name (ARN) for the resource."];policyName:String_.t[@ocaml.doc"Name of the policy."];policyType:PolicyType.t[@ocaml.doc"The type of policy."]}letcontext_="GetResourcePolicyRequest"letmake~resourceArn=fun~policyName->fun~policyType->fun()->{resourceArn;policyName;policyType}letto_valuex=structure_to_value[("ResourceArn",(Some(String_.to_valuex.resourceArn)));("PolicyName",(Some(String_.to_valuex.policyName)));("PolicyType",(Some(PolicyType.to_valuex.policyType)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letpolicyType=PolicyType.of_xml(Xml.child_exn~context:context_xml_arg0"PolicyType")inletpolicyName=String_.of_xml(Xml.child_exn~context:context_xml_arg0"PolicyName")inletresourceArn=String_.of_xml(Xml.child_exn~context:context_xml_arg0"ResourceArn")inmake~policyType~policyName~resourceArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letpolicyType=field_map_exnjson__"PolicyType"PolicyType.of_jsoninletpolicyName=field_map_exnjson__"PolicyName"String_.of_jsoninletresourceArn=field_map_exnjson__"ResourceArn"String_.of_jsoninmake~policyType~policyName~resourceArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns details about a policy for a resource."]moduleGetPolicyVersionResponse=structtypenonrect={policyVersion:PolicyVersion.toption[@ocaml.doc"A PolicyVersion object. Contains details for the version of the policy. Policies define the permissions for team resources."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?policyVersion=fun()->{policyVersion}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("PolicyVersion",(Option.mapx.policyVersion~f:PolicyVersion.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letpolicyVersion=(Option.map~f:PolicyVersion.of_xml)(Xml.childxml_arg0"PolicyVersion")inmake?policyVersion()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letpolicyVersion=field_mapjson__"PolicyVersion"PolicyVersion.of_jsoninmake?policyVersion()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns details for the version of a policy. Policies define the permissions for team resources."]moduleGetPolicyVersionRequest=structtypenonrect={policyVersionArn:QualifiedPolicyArn.t[@ocaml.doc"Amazon Resource Name (ARN) for the policy."]}letcontext_="GetPolicyVersionRequest"letmake~policyVersionArn=fun()->{policyVersionArn}letto_valuex=structure_to_value[("PolicyVersionArn",(Some(QualifiedPolicyArn.to_valuex.policyVersionArn)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letpolicyVersionArn=QualifiedPolicyArn.of_xml(Xml.child_exn~context:context_xml_arg0"PolicyVersionArn")inmake~policyVersionArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letpolicyVersionArn=field_map_exnjson__"PolicyVersionArn"QualifiedPolicyArn.of_jsoninmake~policyVersionArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns details for the version of a policy. Policies define the permissions for team resources."]moduleGetIdentitySourceResponse=structtypenonrect={identitySourceType:IdentitySourceType.toption[@ocaml.doc"The type of resource that provided identities to the identity source. For example, an IAM Identity Center instance."];identitySourceParameters:IdentitySourceParametersForGet.toption[@ocaml.doc"A IdentitySourceParameters object. Contains details for the resource that provides identities to the identity source. For example, an IAM Identity Center instance."];identitySourceArn:String_.toption[@ocaml.doc"Amazon Resource Name (ARN) for the identity source."];creationTime:IsoTimestamp.toption[@ocaml.doc"Timestamp when the identity source was created."];status:IdentitySourceStatus.toption[@ocaml.doc"Status for the identity source. For example, if the identity source is ACTIVE."];statusCode:IdentitySourceStatusCode.toption[@ocaml.doc"Status code of the identity source."];statusMessage:String_.toption[@ocaml.doc"Message describing the status for the identity source."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?identitySourceType=fun?identitySourceParameters->fun?identitySourceArn->fun?creationTime->fun?status->fun?statusCode->fun?statusMessage->fun()->{identitySourceType;identitySourceParameters;identitySourceArn;creationTime;status;statusCode;statusMessage}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("IdentitySourceType",(Option.mapx.identitySourceType~f:IdentitySourceType.to_value));("IdentitySourceParameters",(Option.mapx.identitySourceParameters~f:IdentitySourceParametersForGet.to_value));("IdentitySourceArn",(Option.mapx.identitySourceArn~f:String_.to_value));("CreationTime",(Option.mapx.creationTime~f:IsoTimestamp.to_value));("Status",(Option.mapx.status~f:IdentitySourceStatus.to_value));("StatusCode",(Option.mapx.statusCode~f:IdentitySourceStatusCode.to_value));("StatusMessage",(Option.mapx.statusMessage~f:String_.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letstatusMessage=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"StatusMessage")inletstatusCode=(Option.map~f:IdentitySourceStatusCode.of_xml)(Xml.childxml_arg0"StatusCode")inletstatus=(Option.map~f:IdentitySourceStatus.of_xml)(Xml.childxml_arg0"Status")inletcreationTime=(Option.map~f:IsoTimestamp.of_xml)(Xml.childxml_arg0"CreationTime")inletidentitySourceArn=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"IdentitySourceArn")inletidentitySourceParameters=(Option.map~f:IdentitySourceParametersForGet.of_xml)(Xml.childxml_arg0"IdentitySourceParameters")inletidentitySourceType=(Option.map~f:IdentitySourceType.of_xml)(Xml.childxml_arg0"IdentitySourceType")inmake?statusMessage?statusCode?status?creationTime?identitySourceArn?identitySourceParameters?identitySourceType()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letstatusMessage=field_mapjson__"StatusMessage"String_.of_jsoninletstatusCode=field_mapjson__"StatusCode"IdentitySourceStatusCode.of_jsoninletstatus=field_mapjson__"Status"IdentitySourceStatus.of_jsoninletcreationTime=field_mapjson__"CreationTime"IsoTimestamp.of_jsoninletidentitySourceArn=field_mapjson__"IdentitySourceArn"String_.of_jsoninletidentitySourceParameters=field_mapjson__"IdentitySourceParameters"IdentitySourceParametersForGet.of_jsoninletidentitySourceType=field_mapjson__"IdentitySourceType"IdentitySourceType.of_jsoninmake?statusMessage?statusCode?status?creationTime?identitySourceArn?identitySourceParameters?identitySourceType()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns details for an identity source. For more information, see Identity Source in the Multi-party approval User Guide."]moduleGetIdentitySourceRequest=structtypenonrect={identitySourceArn:String_.t[@ocaml.doc"Amazon Resource Name (ARN) for the identity source."]}letcontext_="GetIdentitySourceRequest"letmake~identitySourceArn=fun()->{identitySourceArn}letto_valuex=structure_to_value[("IdentitySourceArn",(Some(String_.to_valuex.identitySourceArn)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letidentitySourceArn=String_.of_xml(Xml.child_exn~context:context_xml_arg0"IdentitySourceArn")inmake~identitySourceArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letidentitySourceArn=field_map_exnjson__"IdentitySourceArn"String_.of_jsoninmake~identitySourceArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns details for an identity source. For more information, see Identity Source in the Multi-party approval User Guide."]moduleGetApprovalTeamResponse=structtypenonrect={creationTime:IsoTimestamp.toption[@ocaml.doc"Timestamp when the team was created."];approvalStrategy:ApprovalStrategyResponse.toption[@ocaml.doc"An ApprovalStrategyResponse object. Contains details for how the team grants approval."];numberOfApprovers:Integer.toption[@ocaml.doc"Total number of approvers in the team."];approvers:GetApprovalTeamResponseApprovers.toption[@ocaml.doc"An array of GetApprovalTeamResponseApprover objects. Contains details for the approvers in the team."];arn:String_.toption[@ocaml.doc"Amazon Resource Name (ARN) for the team."];description:Description.toption[@ocaml.doc"Description for the team."];name:String_.toption[@ocaml.doc"Name of the approval team."];status:ApprovalTeamStatus.toption[@ocaml.doc"Status for the team. For more information, see Team health in the Multi-party approval User Guide."];statusCode:ApprovalTeamStatusCode.toption[@ocaml.doc"Status code for the approval team. For more information, see Team health in the Multi-party approval User Guide."];statusMessage:Message.toption[@ocaml.doc"Message describing the status for the team."];updateSessionArn:String_.toption[@ocaml.doc"Amazon Resource Name (ARN) for the session."];versionId:String_.toption[@ocaml.doc"Version ID for the team."];policies:PoliciesReferences.toption[@ocaml.doc"An array of PolicyReference objects. Contains a list of policies that define the permissions for team resources."];lastUpdateTime:IsoTimestamp.toption[@ocaml.doc"Timestamp when the team was last updated."];pendingUpdate:PendingUpdate.toption[@ocaml.doc"A PendingUpdate object. Contains details for the pending updates for the team, if applicable."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?creationTime=fun?approvalStrategy->fun?numberOfApprovers->fun?approvers->fun?arn->fun?description->fun?name->fun?status->fun?statusCode->fun?statusMessage->fun?updateSessionArn->fun?versionId->fun?policies->fun?lastUpdateTime->fun?pendingUpdate->fun()->{creationTime;approvalStrategy;numberOfApprovers;approvers;arn;description;name;status;statusCode;statusMessage;updateSessionArn;versionId;policies;lastUpdateTime;pendingUpdate}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("CreationTime",(Option.mapx.creationTime~f:IsoTimestamp.to_value));("ApprovalStrategy",(Option.mapx.approvalStrategy~f:ApprovalStrategyResponse.to_value));("NumberOfApprovers",(Option.mapx.numberOfApprovers~f:Integer.to_value));("Approvers",(Option.mapx.approvers~f:GetApprovalTeamResponseApprovers.to_value));("Arn",(Option.mapx.arn~f:String_.to_value));("Description",(Option.mapx.description~f:Description.to_value));("Name",(Option.mapx.name~f:String_.to_value));("Status",(Option.mapx.status~f:ApprovalTeamStatus.to_value));("StatusCode",(Option.mapx.statusCode~f:ApprovalTeamStatusCode.to_value));("StatusMessage",(Option.mapx.statusMessage~f:Message.to_value));("UpdateSessionArn",(Option.mapx.updateSessionArn~f:String_.to_value));("VersionId",(Option.mapx.versionId~f:String_.to_value));("Policies",(Option.mapx.policies~f:PoliciesReferences.to_value));("LastUpdateTime",(Option.mapx.lastUpdateTime~f:IsoTimestamp.to_value));("PendingUpdate",(Option.mapx.pendingUpdate~f:PendingUpdate.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letpendingUpdate=(Option.map~f:PendingUpdate.of_xml)(Xml.childxml_arg0"PendingUpdate")inletlastUpdateTime=(Option.map~f:IsoTimestamp.of_xml)(Xml.childxml_arg0"LastUpdateTime")inletpolicies=(Option.map~f:PoliciesReferences.of_xml)(Xml.childxml_arg0"Policies")inletversionId=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"VersionId")inletupdateSessionArn=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"UpdateSessionArn")inletstatusMessage=(Option.map~f:Message.of_xml)(Xml.childxml_arg0"StatusMessage")inletstatusCode=(Option.map~f:ApprovalTeamStatusCode.of_xml)(Xml.childxml_arg0"StatusCode")inletstatus=(Option.map~f:ApprovalTeamStatus.of_xml)(Xml.childxml_arg0"Status")inletname=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"Name")inletdescription=(Option.map~f:Description.of_xml)(Xml.childxml_arg0"Description")inletarn=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"Arn")inletapprovers=(Option.map~f:GetApprovalTeamResponseApprovers.of_xml)(Xml.childxml_arg0"Approvers")inletnumberOfApprovers=(Option.map~f:Integer.of_xml)(Xml.childxml_arg0"NumberOfApprovers")inletapprovalStrategy=(Option.map~f:ApprovalStrategyResponse.of_xml)(Xml.childxml_arg0"ApprovalStrategy")inletcreationTime=(Option.map~f:IsoTimestamp.of_xml)(Xml.childxml_arg0"CreationTime")inmake?pendingUpdate?lastUpdateTime?policies?versionId?updateSessionArn?statusMessage?statusCode?status?name?description?arn?approvers?numberOfApprovers?approvalStrategy?creationTime()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letpendingUpdate=field_mapjson__"PendingUpdate"PendingUpdate.of_jsoninletlastUpdateTime=field_mapjson__"LastUpdateTime"IsoTimestamp.of_jsoninletpolicies=field_mapjson__"Policies"PoliciesReferences.of_jsoninletversionId=field_mapjson__"VersionId"String_.of_jsoninletupdateSessionArn=field_mapjson__"UpdateSessionArn"String_.of_jsoninletstatusMessage=field_mapjson__"StatusMessage"Message.of_jsoninletstatusCode=field_mapjson__"StatusCode"ApprovalTeamStatusCode.of_jsoninletstatus=field_mapjson__"Status"ApprovalTeamStatus.of_jsoninletname=field_mapjson__"Name"String_.of_jsoninletdescription=field_mapjson__"Description"Description.of_jsoninletarn=field_mapjson__"Arn"String_.of_jsoninletapprovers=field_mapjson__"Approvers"GetApprovalTeamResponseApprovers.of_jsoninletnumberOfApprovers=field_mapjson__"NumberOfApprovers"Integer.of_jsoninletapprovalStrategy=field_mapjson__"ApprovalStrategy"ApprovalStrategyResponse.of_jsoninletcreationTime=field_mapjson__"CreationTime"IsoTimestamp.of_jsoninmake?pendingUpdate?lastUpdateTime?policies?versionId?updateSessionArn?statusMessage?statusCode?status?name?description?arn?approvers?numberOfApprovers?approvalStrategy?creationTime()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns details for an approval team."]moduleGetApprovalTeamRequest=structtypenonrect={arn:ApprovalTeamArn.t[@ocaml.doc"Amazon Resource Name (ARN) for the team."]}letcontext_="GetApprovalTeamRequest"letmake~arn=fun()->{arn}letto_valuex=structure_to_value[("Arn",(Some(ApprovalTeamArn.to_valuex.arn)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letarn=ApprovalTeamArn.of_xml(Xml.child_exn~context:context_xml_arg0"Arn")inmake~arn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letarn=field_map_exnjson__"Arn"ApprovalTeamArn.of_jsoninmake~arn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns details for an approval team."]moduleDeleteInactiveApprovalTeamVersionResponse=structtypenonrect=unittypenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`ConflictExceptionofConflictException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake()=()leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"ConflictException"->`ConflictException(ConflictException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"ConflictException"->`ConflictException(ConflictException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`ConflictExceptione->`Assoc[("error",(`String"ConflictException"));("details",(ConflictException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.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"Deletes an inactive approval team. For more information, see Team health in the Multi-party approval User Guide. You can also use this operation to delete a team draft. For more information, see Interacting with drafts in the Multi-party approval User Guide."]moduleDeleteInactiveApprovalTeamVersionRequest=structtypenonrect={arn:ApprovalTeamArn.t[@ocaml.doc"Amaazon Resource Name (ARN) for the team."];versionId:String_.t[@ocaml.doc"Version ID for the team."]}letcontext_="DeleteInactiveApprovalTeamVersionRequest"letmake~arn=fun~versionId->fun()->{arn;versionId}letto_valuex=structure_to_value[("Arn",(Some(ApprovalTeamArn.to_valuex.arn)));("VersionId",(Some(String_.to_valuex.versionId)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letversionId=String_.of_xml(Xml.child_exn~context:context_xml_arg0"VersionId")inletarn=ApprovalTeamArn.of_xml(Xml.child_exn~context:context_xml_arg0"Arn")inmake~versionId~arn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letversionId=field_map_exnjson__"VersionId"String_.of_jsoninletarn=field_map_exnjson__"Arn"ApprovalTeamArn.of_jsoninmake~versionId~arn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Deletes an inactive approval team. For more information, see Team health in the Multi-party approval User Guide. You can also use this operation to delete a team draft. For more information, see Interacting with drafts in the Multi-party approval User Guide."]moduleDeleteIdentitySourceRequest=structtypenonrect={identitySourceArn:String_.t[@ocaml.doc"Amazon Resource Name (ARN) for identity source."]}letcontext_="DeleteIdentitySourceRequest"letmake~identitySourceArn=fun()->{identitySourceArn}letto_valuex=structure_to_value[("IdentitySourceArn",(Some(String_.to_valuex.identitySourceArn)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letidentitySourceArn=String_.of_xml(Xml.child_exn~context:context_xml_arg0"IdentitySourceArn")inmake~identitySourceArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letidentitySourceArn=field_map_exnjson__"IdentitySourceArn"String_.of_jsoninmake~identitySourceArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Deletes an identity source. For more information, see Identity Source in the Multi-party approval User Guide."]moduleCreateIdentitySourceResponse=structtypenonrect={identitySourceType:IdentitySourceType.toption[@ocaml.doc"The type of resource that provided identities to the identity source. For example, an IAM Identity Center instance."];identitySourceArn:String_.toption[@ocaml.doc"Amazon Resource Name (ARN) for the identity source that was created."];creationTime:IsoTimestamp.toption[@ocaml.doc"Timestamp when the identity source was created."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InternalServerExceptionofInternalServerException.t|`ServiceQuotaExceededExceptionofServiceQuotaExceededException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?identitySourceType=fun?identitySourceArn->fun?creationTime->fun()->{identitySourceType;identitySourceArn;creationTime}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ServiceQuotaExceededException"->`ServiceQuotaExceededException(ServiceQuotaExceededException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ServiceQuotaExceededException"->`ServiceQuotaExceededException(ServiceQuotaExceededException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ServiceQuotaExceededExceptione->`Assoc[("error",(`String"ServiceQuotaExceededException"));("details",(ServiceQuotaExceededException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("IdentitySourceType",(Option.mapx.identitySourceType~f:IdentitySourceType.to_value));("IdentitySourceArn",(Option.mapx.identitySourceArn~f:String_.to_value));("CreationTime",(Option.mapx.creationTime~f:IsoTimestamp.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letcreationTime=(Option.map~f:IsoTimestamp.of_xml)(Xml.childxml_arg0"CreationTime")inletidentitySourceArn=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"IdentitySourceArn")inletidentitySourceType=(Option.map~f:IdentitySourceType.of_xml)(Xml.childxml_arg0"IdentitySourceType")inmake?creationTime?identitySourceArn?identitySourceType()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letcreationTime=field_mapjson__"CreationTime"IsoTimestamp.of_jsoninletidentitySourceArn=field_mapjson__"IdentitySourceArn"String_.of_jsoninletidentitySourceType=field_mapjson__"IdentitySourceType"IdentitySourceType.of_jsoninmake?creationTime?identitySourceArn?identitySourceType()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Creates a new identity source. For more information, see Identity Source in the Multi-party approval User Guide."]moduleCreateIdentitySourceRequest=structtypenonrect={identitySourceParameters:IdentitySourceParameters.t[@ocaml.doc"A IdentitySourceParameters object. Contains details for the resource that provides identities to the identity source. For example, an IAM Identity Center instance."];clientToken:Token.toption[@ocaml.doc"Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services populates this field. What is idempotency? When you make a mutating API request, the request typically returns a result before the operation's asynchronous workflows have completed. Operations might also time out or encounter other server issues before they complete, even though the request has already returned a result. This could make it difficult to determine whether the request succeeded or not, and could lead to multiple retries to ensure that the operation completes successfully. However, if the original request and the subsequent retries are successful, the operation is completed multiple times. This means that you might create more resources than you intended. Idempotency ensures that an API request completes no more than one time. With an idempotent request, if the original request completes successfully, any subsequent retries complete successfully without performing any further actions."];tags:Tags.toption[@ocaml.doc"Tag you want to attach to the identity source."]}letcontext_="CreateIdentitySourceRequest"letmake?clientToken=fun?tags->fun~identitySourceParameters->fun()->{clientToken;tags;identitySourceParameters}letto_valuex=structure_to_value[("IdentitySourceParameters",(Some(IdentitySourceParameters.to_valuex.identitySourceParameters)));("ClientToken",(Option.mapx.clientToken~f:Token.to_value));("Tags",(Option.mapx.tags~f:Tags.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=lettags=(Option.map~f:Tags.of_xml)(Xml.childxml_arg0"Tags")inletclientToken=(Option.map~f:Token.of_xml)(Xml.childxml_arg0"ClientToken")inletidentitySourceParameters=IdentitySourceParameters.of_xml(Xml.child_exn~context:context_xml_arg0"IdentitySourceParameters")inmake?tags?clientToken~identitySourceParameters()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=lettags=field_mapjson__"Tags"Tags.of_jsoninletclientToken=field_mapjson__"ClientToken"Token.of_jsoninletidentitySourceParameters=field_map_exnjson__"IdentitySourceParameters"IdentitySourceParameters.of_jsoninmake?tags?clientToken~identitySourceParameters()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Creates a new identity source. For more information, see Identity Source in the Multi-party approval User Guide."]moduleCreateApprovalTeamResponse=structtypenonrect={creationTime:IsoTimestamp.toption[@ocaml.doc"Timestamp when the team was created."];arn:ApprovalTeamArn.toption[@ocaml.doc"Amazon Resource Name (ARN) for the team that was created."];name:String_.toption[@ocaml.doc"Name of the team that was created."];versionId:String_.toption[@ocaml.doc"Version ID for the team that was created. When a team is updated, the version ID changes."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`ConflictExceptionofConflictException.t|`InternalServerExceptionofInternalServerException.t|`ServiceQuotaExceededExceptionofServiceQuotaExceededException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?creationTime=fun?arn->fun?name->fun?versionId->fun()->{creationTime;arn;name;versionId}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"ConflictException"->`ConflictException(ConflictException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ServiceQuotaExceededException"->`ServiceQuotaExceededException(ServiceQuotaExceededException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"ConflictException"->`ConflictException(ConflictException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ServiceQuotaExceededException"->`ServiceQuotaExceededException(ServiceQuotaExceededException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`ConflictExceptione->`Assoc[("error",(`String"ConflictException"));("details",(ConflictException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ServiceQuotaExceededExceptione->`Assoc[("error",(`String"ServiceQuotaExceededException"));("details",(ServiceQuotaExceededException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("CreationTime",(Option.mapx.creationTime~f:IsoTimestamp.to_value));("Arn",(Option.mapx.arn~f:ApprovalTeamArn.to_value));("Name",(Option.mapx.name~f:String_.to_value));("VersionId",(Option.mapx.versionId~f:String_.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letversionId=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"VersionId")inletname=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"Name")inletarn=(Option.map~f:ApprovalTeamArn.of_xml)(Xml.childxml_arg0"Arn")inletcreationTime=(Option.map~f:IsoTimestamp.of_xml)(Xml.childxml_arg0"CreationTime")inmake?versionId?name?arn?creationTime()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letversionId=field_mapjson__"VersionId"String_.of_jsoninletname=field_mapjson__"Name"String_.of_jsoninletarn=field_mapjson__"Arn"ApprovalTeamArn.of_jsoninletcreationTime=field_mapjson__"CreationTime"IsoTimestamp.of_jsoninmake?versionId?name?arn?creationTime()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Creates a new approval team. For more information, see Approval team in the Multi-party approval User Guide."]moduleCreateApprovalTeamRequest=structtypenonrect={clientToken:Token.toption[@ocaml.doc"Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services populates this field. What is idempotency? When you make a mutating API request, the request typically returns a result before the operation's asynchronous workflows have completed. Operations might also time out or encounter other server issues before they complete, even though the request has already returned a result. This could make it difficult to determine whether the request succeeded or not, and could lead to multiple retries to ensure that the operation completes successfully. However, if the original request and the subsequent retries are successful, the operation is completed multiple times. This means that you might create more resources than you intended. Idempotency ensures that an API request completes no more than one time. With an idempotent request, if the original request completes successfully, any subsequent retries complete successfully without performing any further actions."];approvalStrategy:ApprovalStrategy.t[@ocaml.doc"An ApprovalStrategy object. Contains details for how the team grants approval."];approvers:ApprovalTeamRequestApprovers.t[@ocaml.doc"An array of ApprovalTeamRequesterApprovers objects. Contains details for the approvers in the team."];description:Description.t[@ocaml.doc"Description for the team."];policies:PoliciesReferences.t[@ocaml.doc"An array of PolicyReference objects. Contains a list of policies that define the permissions for team resources."];name:ApprovalTeamName.t[@ocaml.doc"Name of the team."];tags:Tags.toption[@ocaml.doc"Tags you want to attach to the team."]}letcontext_="CreateApprovalTeamRequest"letmake?clientToken=fun?tags->fun~approvalStrategy->fun~approvers->fun~description->fun~policies->fun~name->fun()->{clientToken;tags;approvalStrategy;approvers;description;policies;name}letto_valuex=structure_to_value[("ClientToken",(Option.mapx.clientToken~f:Token.to_value));("ApprovalStrategy",(Some(ApprovalStrategy.to_valuex.approvalStrategy)));("Approvers",(Some(ApprovalTeamRequestApprovers.to_valuex.approvers)));("Description",(Some(Description.to_valuex.description)));("Policies",(Some(PoliciesReferences.to_valuex.policies)));("Name",(Some(ApprovalTeamName.to_valuex.name)));("Tags",(Option.mapx.tags~f:Tags.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=lettags=(Option.map~f:Tags.of_xml)(Xml.childxml_arg0"Tags")inletname=ApprovalTeamName.of_xml(Xml.child_exn~context:context_xml_arg0"Name")inletpolicies=PoliciesReferences.of_xml(Xml.child_exn~context:context_xml_arg0"Policies")inletdescription=Description.of_xml(Xml.child_exn~context:context_xml_arg0"Description")inletapprovers=ApprovalTeamRequestApprovers.of_xml(Xml.child_exn~context:context_xml_arg0"Approvers")inletapprovalStrategy=ApprovalStrategy.of_xml(Xml.child_exn~context:context_xml_arg0"ApprovalStrategy")inletclientToken=(Option.map~f:Token.of_xml)(Xml.childxml_arg0"ClientToken")inmake?tags~name~policies~description~approvers~approvalStrategy?clientToken()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=lettags=field_mapjson__"Tags"Tags.of_jsoninletname=field_map_exnjson__"Name"ApprovalTeamName.of_jsoninletpolicies=field_map_exnjson__"Policies"PoliciesReferences.of_jsoninletdescription=field_map_exnjson__"Description"Description.of_jsoninletapprovers=field_map_exnjson__"Approvers"ApprovalTeamRequestApprovers.of_jsoninletapprovalStrategy=field_map_exnjson__"ApprovalStrategy"ApprovalStrategy.of_jsoninletclientToken=field_mapjson__"ClientToken"Token.of_jsoninmake?tags~name~policies~description~approvers~approvalStrategy?clientToken()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Creates a new approval team. For more information, see Approval team in the Multi-party approval User Guide."]moduleCancelSessionResponse=structtypenonrect=unittypenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`ConflictExceptionofConflictException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake()=()leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"ConflictException"->`ConflictException(ConflictException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"ConflictException"->`ConflictException(ConflictException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`ConflictExceptione->`Assoc[("error",(`String"ConflictException"));("details",(ConflictException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.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"Cancels an approval session. For more information, see Session in the Multi-party approval User Guide."]moduleCancelSessionRequest=structtypenonrect={sessionArn:SessionArn.t[@ocaml.doc"Amazon Resource Name (ARN) for the session."]}letcontext_="CancelSessionRequest"letmake~sessionArn=fun()->{sessionArn}letto_valuex=structure_to_value[("SessionArn",(Some(SessionArn.to_valuex.sessionArn)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letsessionArn=SessionArn.of_xml(Xml.child_exn~context:context_xml_arg0"SessionArn")inmake~sessionArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letsessionArn=field_map_exnjson__"SessionArn"SessionArn.of_jsoninmake~sessionArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Cancels an approval session. For more information, see Session in the Multi-party approval User Guide."]