1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062(* 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.geo_mapsletapiVersion="2020-11-19"letendpointPrefix="geo-maps"letserviceFullName="Amazon Location Service Maps V2"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[]))])moduleString_=structtypenonrect=stringletcontext_="String"letmakei=iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"String"jletto_json=simple_to_jsonto_valueendmoduleValidationExceptionField=structtypenonrect={name:String_.toption[@ocaml.doc"The name of the resource."];message:String_.toption[@ocaml.doc"The error message."]}letmake?name=fun?message->fun()->{name;message}letto_valuex=structure_to_value[("name",(Option.mapx.name~f:String_.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")inletname=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"name")inmake?message?name()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"String_.of_jsoninletname=field_mapjson__"Name"String_.of_jsoninmake?message?name()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The input fails to satisfy the constraints specified by the Amazon Location service."]moduleValidationExceptionFieldList=structtypenonrect=ValidationExceptionField.tlistletmakei=iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:ValidationExceptionField.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:ValidationExceptionField.of_xml)letof_jsonj=list_of_json~kind:"ValidationExceptionFieldList"~of_json:ValidationExceptionField.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleValidationExceptionReason=structtypenonrect=|UnknownOperation|Missing|CannotParse|FieldValidationFailed|Other|UnknownField|Non_static_idofstringletmakei=iletto_string=function|UnknownOperation->"UnknownOperation"|Missing->"Missing"|CannotParse->"CannotParse"|FieldValidationFailed->"FieldValidationFailed"|Other->"Other"|UnknownField->"UnknownField"|Non_static_ids->sletof_string=function|"UnknownOperation"->UnknownOperation|"Missing"->Missing|"CannotParse"->CannotParse|"FieldValidationFailed"->FieldValidationFailed|"Other"->Other|"UnknownField"->UnknownField|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 ValidationExceptionReason"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"ValidationExceptionReason"j)letto_json=simple_to_jsonto_valueendmoduleTileAdditionalFeature=structtypenonrect=|ContourLines|Hillshade|Logistics|Transit|Non_static_idofstringletmakei=iletto_string=function|ContourLines->"ContourLines"|Hillshade->"Hillshade"|Logistics->"Logistics"|Transit->"Transit"|Non_static_ids->sletof_string=function|"ContourLines"->ContourLines|"Hillshade"->Hillshade|"Logistics"->Logistics|"Transit"->Transit|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 TileAdditionalFeature"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"TileAdditionalFeature"j)letto_json=simple_to_jsonto_valueendmoduleTravelMode=structtypenonrect=|Transit|Truck|Non_static_idofstringletmakei=iletto_string=function|Transit->"Transit"|Truck->"Truck"|Non_static_ids->sletof_string=function|"Transit"->Transit|"Truck"->Truck|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 TravelMode"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"TravelMode"j)letto_json=simple_to_jsonto_valueendmoduleAccessDeniedException=structtypenonrect={message:String_.toption}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 because of insufficient access or permissions. Check with an administrator to verify your permissions."]moduleBlob=structtypenonrect=stringletmakei=iletof_stringx=xletto_valuex=`Blobxletto_queryv=to_queryto_valuevletto_headerx=xletof_xmlxml_arg0=string_of_xml~kind:"a blob"xml_arg0letof_jsonj=string_of_json~kind:"a blob"jletto_json=simple_to_jsonto_valueendmoduleInternalServerException=structtypenonrect={message:String_.toption}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 processing has failed because of an unknown error, exception or failure."]moduleResourceNotFoundException=structtypenonrect={message:String_.toption}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"Exception thrown when the associated resource could not be found."]moduleThrottlingException=structtypenonrect={message:String_.toption}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;reason:ValidationExceptionReason.toption[@ocaml.doc"The field where the invalid entry was detected."];fieldList:ValidationExceptionFieldList.toption[@ocaml.doc"A message with the reason for the validation exception error."]}letmake?message=fun?reason->fun?fieldList->fun()->{message;reason;fieldList}letto_valuex=structure_to_value[("message",(Option.mapx.message~f:String_.to_value));("reason",(Option.mapx.reason~f:ValidationExceptionReason.to_value));("fieldList",(Option.mapx.fieldList~f:ValidationExceptionFieldList.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letfieldList=(Option.map~f:ValidationExceptionFieldList.of_xml)(Xml.childxml_arg0"fieldList")inletreason=(Option.map~f:ValidationExceptionReason.of_xml)(Xml.childxml_arg0"reason")inletmessage=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"message")inmake?fieldList?reason?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letfieldList=field_mapjson__"FieldList"ValidationExceptionFieldList.of_jsoninletreason=field_mapjson__"Reason"ValidationExceptionReason.of_jsoninletmessage=field_mapjson__"Message"String_.of_jsoninmake?fieldList?reason?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The input fails to satisfy the constraints specified by an AWS service."]moduleApiKey=structtypenonrect=stringletcontext_="ApiKey"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:"ApiKey"jletto_json=simple_to_jsonto_valueendmoduleGetTileRequestXString=structtypenonrect=stringletcontext_="GetTileRequestXString"letmakei=letopenResultinok_or_failwith((check_string_mini~min:0)>>=(fun()->(check_string_maxi~max:7)>>=(fun()->check_patterni~pattern:".*\\d+.*")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"GetTileRequestXString"jletto_json=simple_to_jsonto_valueendmoduleGetTileRequestYString=structtypenonrect=stringletcontext_="GetTileRequestYString"letmakei=letopenResultinok_or_failwith((check_string_mini~min:0)>>=(fun()->(check_string_maxi~max:7)>>=(fun()->check_patterni~pattern:".*\\d+.*")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"GetTileRequestYString"jletto_json=simple_to_jsonto_valueendmoduleGetTileRequestZString=structtypenonrect=stringletcontext_="GetTileRequestZString"letmakei=letopenResultinok_or_failwith((check_string_mini~min:0)>>=(fun()->(check_string_maxi~max:2)>>=(fun()->check_patterni~pattern:".*\\d+.*")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"GetTileRequestZString"jletto_json=simple_to_jsonto_valueendmoduleTileAdditionalFeatureList=structtypenonrect=TileAdditionalFeature.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:4)>>=(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:TileAdditionalFeature.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:TileAdditionalFeature.of_xml)letof_jsonj=list_of_json~kind:"TileAdditionalFeatureList"~of_json:TileAdditionalFeature.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleTileset=structtypenonrect=stringletcontext_="Tileset"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:100)>>=(fun()->check_patterni~pattern:"[-.\\w]+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"Tileset"jletto_json=simple_to_jsonto_valueendmoduleBuildings=structtypenonrect=|Buildings3D|Non_static_idofstringletmakei=iletto_string=function|Buildings3D->"Buildings3D"|Non_static_ids->sletof_string=function|"Buildings3D"->Buildings3D|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 Buildings"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"Buildings"j)letto_json=simple_to_jsonto_valueendmoduleColorScheme=structtypenonrect=|Light|Dark|Non_static_idofstringletmakei=iletto_string=function|Light->"Light"|Dark->"Dark"|Non_static_ids->sletof_string=function|"Light"->Light|"Dark"->Dark|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 ColorScheme"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"ColorScheme"j)letto_json=simple_to_jsonto_valueendmoduleContourDensity=structtypenonrect=|Low|Medium|High|Non_static_idofstringletmakei=iletto_string=function|Low->"Low"|Medium->"Medium"|High->"High"|Non_static_ids->sletof_string=function|"Low"->Low|"Medium"->Medium|"High"->High|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 ContourDensity"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"ContourDensity"j)letto_json=simple_to_jsonto_valueendmoduleCountryCode=structtypenonrect=stringletcontext_="CountryCode"letmakei=letopenResultinok_or_failwith((check_string_mini~min:2)>>=(fun()->(check_string_maxi~max:3)>>=(fun()->check_patterni~pattern:"([A-Z]{2}|[A-Z]{3})")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"CountryCode"jletto_json=simple_to_jsonto_valueendmoduleMapStyle=structtypenonrect=|Standard|Monochrome|Hybrid|Satellite|Non_static_idofstringletmakei=iletto_string=function|Standard->"Standard"|Monochrome->"Monochrome"|Hybrid->"Hybrid"|Satellite->"Satellite"|Non_static_ids->sletof_string=function|"Standard"->Standard|"Monochrome"->Monochrome|"Hybrid"->Hybrid|"Satellite"->Satellite|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 MapStyle"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"MapStyle"j)letto_json=simple_to_jsonto_valueendmoduleTerrain=structtypenonrect=|Hillshade|Terrain3D|Non_static_idofstringletmakei=iletto_string=function|Hillshade->"Hillshade"|Terrain3D->"Terrain3D"|Non_static_ids->sletof_string=function|"Hillshade"->Hillshade|"Terrain3D"->Terrain3D|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 Terrain"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"Terrain"j)letto_json=simple_to_jsonto_valueendmoduleTraffic=structtypenonrect=|All|Congestion|Non_static_idofstringletmakei=iletto_string=function|All->"All"|Congestion->"Congestion"|Non_static_ids->sletof_string=function|"All"->All|"Congestion"->Congestion|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 Traffic"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"Traffic"j)letto_json=simple_to_jsonto_valueendmoduleTravelModeList=structtypenonrect=TravelMode.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:2)>>=(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:TravelMode.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:TravelMode.of_xml)letof_jsonj=list_of_json~kind:"TravelModeList"~of_json:TravelMode.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleBoolean=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_valueendmoduleCompactOverlay=structtypenonrect=stringletcontext_="CompactOverlay"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:5000)>>=(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:"CompactOverlay"jletto_json=simple_to_jsonto_valueendmoduleDistanceMeters=structtypenonrect=Int64.tletmakei=letopenResultinok_or_failwith((check_int64_maxi~max:4294967295L)>>=(fun()->check_int64_mini~min:0L));iletof_string=Int64.of_stringletto_valuex=`Longxletto_queryv=to_queryto_valuevletto_headerx=Int64.to_stringxletof_xmlxml_arg0=Int64.of_string(string_of_xml~kind:"a long"xml_arg0)letof_jsonj=Int64.of_float(float_of_json~kind:"a long"j)letto_json=simple_to_jsonto_valueendmoduleGeoJsonOverlay=structtypenonrect=stringletcontext_="GeoJsonOverlay"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:4200)>>=(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:"GeoJsonOverlay"jletto_json=simple_to_jsonto_valueendmoduleGetStaticMapRequestBoundedPositionsString=structtypenonrect=stringletcontext_="GetStaticMapRequestBoundedPositionsString"letmakei=letopenResultinok_or_failwith((check_string_mini~min:0)>>=(fun()->(check_string_maxi~max:5000)>>=(fun()->check_patterni~pattern:"(-?\\d{1,3}(\\.\\d{1,14})?,-?\\d{1,2}(\\.\\d{1,14})?)(,(-?\\d{1,3}(\\.\\d{1,14})?,-?\\d{1,2}(\\.\\d{1,14})?))*")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"GetStaticMapRequestBoundedPositionsString"jletto_json=simple_to_jsonto_valueendmoduleGetStaticMapRequestBoundingBoxString=structtypenonrect=stringletcontext_="GetStaticMapRequestBoundingBoxString"letmakei=letopenResultinok_or_failwith((check_string_mini~min:0)>>=(fun()->(check_string_maxi~max:100)>>=(fun()->check_patterni~pattern:"(-?\\d{1,3}(\\.\\d{1,14})?,-?\\d{1,2}(\\.\\d{1,14})?)(,(-?\\d{1,3}(\\.\\d{1,14})?,-?\\d{1,2}(\\.\\d{1,14})?))*")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"GetStaticMapRequestBoundingBoxString"jletto_json=simple_to_jsonto_valueendmoduleGetStaticMapRequestFileNameString=structtypenonrect=stringletcontext_="GetStaticMapRequestFileNameString"letmakei=letopenResultinok_or_failwith(check_patterni~pattern:"map(@2x)?");iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"GetStaticMapRequestFileNameString"jletto_json=simple_to_jsonto_valueendmoduleGetStaticMapRequestHeightInteger=structtypenonrect=intletmakei=letopenResultinok_or_failwith((check_int_maxi~max:1400)>>=(fun()->check_int_mini~min:64));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 GetStaticMapRequestHeightInteger"xml_arg0)letof_jsonj=Int.of_float(float_of_json~kind:"an integer"j)letto_json=simple_to_jsonto_valueendmoduleGetStaticMapRequestPaddingInteger=structtypenonrect=intletmakei=letopenResultinok_or_failwith((check_int_maxi~max:350)>>=(fun()->check_int_mini~min:0));iletof_string=Int.of_stringletto_valuex=`Integerxletto_queryv=to_queryto_valuevletto_headerx=Int.to_stringxletof_xmlxml_arg0=Int.of_string(string_of_xml~kind:"an integer for GetStaticMapRequestPaddingInteger"xml_arg0)letof_jsonj=Int.of_float(float_of_json~kind:"an integer"j)letto_json=simple_to_jsonto_valueendmoduleGetStaticMapRequestWidthInteger=structtypenonrect=intletmakei=letopenResultinok_or_failwith((check_int_maxi~max:1400)>>=(fun()->check_int_mini~min:64));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 GetStaticMapRequestWidthInteger"xml_arg0)letof_jsonj=Int.of_float(float_of_json~kind:"an integer"j)letto_json=simple_to_jsonto_valueendmoduleGetStaticMapRequestZoomFloat=structtypenonrect=floatletmakei=letopenResultinok_or_failwith((check_float_mini~min:20.)>>=(fun()->check_float_mini~min:0.));iletof_string=Float.of_stringletto_valuex=`Floatxletto_queryv=to_queryto_valuevletto_headerx=Stdlib.Float.to_stringxletof_xmlxml_arg0=Float.of_string(string_of_xml~kind:"a float"xml_arg0)letof_jsonj=float_of_json~kind:"a float"jletto_json=simple_to_jsonto_valueendmoduleLabelSize=structtypenonrect=|Small|Large|Non_static_idofstringletmakei=iletto_string=function|Small->"Small"|Large->"Large"|Non_static_ids->sletof_string=function|"Small"->Small|"Large"->Large|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 LabelSize"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"LabelSize"j)letto_json=simple_to_jsonto_valueendmoduleLanguageTag=structtypenonrect=stringletcontext_="LanguageTag"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:35)>>=(fun()->check_string_mini~min:2));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"LanguageTag"jletto_json=simple_to_jsonto_valueendmoduleMapFeatureMode=structtypenonrect=|Enabled|Disabled|Non_static_idofstringletmakei=iletto_string=function|Enabled->"Enabled"|Disabled->"Disabled"|Non_static_ids->sletof_string=function|"Enabled"->Enabled|"Disabled"->Disabled|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 MapFeatureMode"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"MapFeatureMode"j)letto_json=simple_to_jsonto_valueendmodulePositionString=structtypenonrect=stringletcontext_="PositionString"letmakei=letopenResultinok_or_failwith((check_string_mini~min:3)>>=(fun()->(check_string_maxi~max:36)>>=(fun()->check_patterni~pattern:"-?\\d{1,3}(\\.\\d{1,14})?,-?\\d{1,2}(\\.\\d{1,14})?")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"PositionString"jletto_json=simple_to_jsonto_valueendmoduleScaleBarUnit=structtypenonrect=|Kilometers|KilometersMiles|Miles|MilesKilometers|Non_static_idofstringletmakei=iletto_string=function|Kilometers->"Kilometers"|KilometersMiles->"KilometersMiles"|Miles->"Miles"|MilesKilometers->"MilesKilometers"|Non_static_ids->sletof_string=function|"Kilometers"->Kilometers|"KilometersMiles"->KilometersMiles|"Miles"->Miles|"MilesKilometers"->MilesKilometers|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 ScaleBarUnit"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"ScaleBarUnit"j)letto_json=simple_to_jsonto_valueendmoduleStaticMapStyle=structtypenonrect=|Satellite|Standard|Non_static_idofstringletmakei=iletto_string=function|Satellite->"Satellite"|Standard->"Standard"|Non_static_ids->sletof_string=function|"Satellite"->Satellite|"Standard"->Standard|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 StaticMapStyle"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"StaticMapStyle"j)letto_json=simple_to_jsonto_valueendmoduleGetSpritesRequestFileNameString=structtypenonrect=stringletcontext_="GetSpritesRequestFileNameString"letmakei=letopenResultinok_or_failwith(check_patterni~pattern:"sprites(@2x)?\\.(png|json)");iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"GetSpritesRequestFileNameString"jletto_json=simple_to_jsonto_valueendmoduleVariant=structtypenonrect=|Default|Non_static_idofstringletmakei=iletto_string=function|Default->"Default"|Non_static_ids->sletof_string=function|"Default"->Default|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 Variant"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"Variant"j)letto_json=simple_to_jsonto_valueendmoduleGetGlyphsRequestFontStackString=structtypenonrect=stringletcontext_="GetGlyphsRequestFontStackString"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:"GetGlyphsRequestFontStackString"jletto_json=simple_to_jsonto_valueendmoduleGetGlyphsRequestFontUnicodeRangeString=structtypenonrect=stringletcontext_="GetGlyphsRequestFontUnicodeRangeString"letmakei=letopenResultinok_or_failwith((check_string_mini~min:0)>>=(fun()->(check_string_maxi~max:50)>>=(fun()->check_patterni~pattern:"[0-9]+-[0-9]+\\.pbf")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"GetGlyphsRequestFontUnicodeRangeString"jletto_json=simple_to_jsonto_valueendmoduleGetTileResponse=structtypenonrect={blob:Blob.toption[@ocaml.doc"The blob represents a vector tile in mvt or a raster tile in an image format."];contentType:String_.toption[@ocaml.doc"Header that represents the format of the response. The response returns the following as the HTTP body."];cacheControl:String_.toption[@ocaml.doc"Header that instructs caching configuration for the client."];eTag:String_.toption[@ocaml.doc"The pricing bucket for which the request is charged at."];pricingBucket:String_.toption[@ocaml.doc"The pricing bucket for which the request is charged at."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?blob=fun?contentType->fun?cacheControl->fun?eTag->fun?pricingBucket->fun()->{blob;contentType;cacheControl;eTag;pricingBucket}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?blob:(Somepipe)?contentType:(Option.map((List.Assoc.find~equal:String.Caseless.equal)xs"Content-Type")~f:String_.of_string)?cacheControl:(Option.map((List.Assoc.find~equal:String.Caseless.equal)xs"Cache-Control")~f:String_.of_string)?eTag:(Option.map((List.Assoc.find~equal:String.Caseless.equal)xs"ETag")~f:String_.of_string)?pricingBucket:(Option.map((List.Assoc.find~equal:String.Caseless.equal)xs"x-amz-geo-pricing-bucket")~f:String_.of_string)())[@warning"-27"])letto_valuex=structure_to_value[("Blob",(Option.mapx.blob~f:Blob.to_value));("Content-Type",(Option.mapx.contentType~f:String_.to_value));("Cache-Control",(Option.mapx.cacheControl~f:String_.to_value));("ETag",(Option.mapx.eTag~f:String_.to_value));("x-amz-geo-pricing-bucket",(Option.mapx.pricingBucket~f:String_.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letpricingBucket=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"x-amz-geo-pricing-bucket")inleteTag=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"ETag")inletcacheControl=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"Cache-Control")inletcontentType=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"Content-Type")inletblob=(Option.map~f:Blob.of_xml)(Xml.childxml_arg0"Blob")inmake?pricingBucket?eTag?cacheControl?contentType?blob()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letpricingBucket=field_mapjson__"PricingBucket"String_.of_jsoninleteTag=field_mapjson__"ETag"String_.of_jsoninletcacheControl=field_mapjson__"CacheControl"String_.of_jsoninletcontentType=field_mapjson__"ContentType"String_.of_jsoninletblob=field_mapjson__"Blob"Blob.of_jsoninmake?pricingBucket?eTag?cacheControl?contentType?blob()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"GetTile returns a tile. Map tiles are used by clients to render a map. They're addressed using a grid arrangement with an X coordinate, Y coordinate, and Z (zoom) level. For more information, see Tiles in the Amazon Location Service Developer Guide."]moduleGetTileRequest=structtypenonrect={additionalFeatures:TileAdditionalFeatureList.toption[@ocaml.doc"A list of optional additional parameters such as map styles that can be requested for each result. Not supported in ap-southeast-1 and ap-southeast-5 regions for GrabMaps customers."];tileset:Tileset.t[@ocaml.doc"Specifies the desired tile set. For GrabMaps customers, ap-southeast-1 and ap-southeast-5 regions support only the vector.basemap value. Valid Values: raster.satellite | vector.basemap | vector.traffic | raster.dem"];z:GetTileRequestZString.t[@ocaml.doc"The zoom value for the map tile."];x:GetTileRequestXString.t[@ocaml.doc"The X axis value for the map tile."];y:GetTileRequestYString.t[@ocaml.doc"The Y axis value for the map tile."];key:ApiKey.toption[@ocaml.doc"Optional: The API key to be used for authorization. Either an API key or valid SigV4 signature must be provided when making a request."]}letcontext_="GetTileRequest"letmake?additionalFeatures=fun?key->fun~tileset->fun~z->fun~x->fun~y->fun()->{additionalFeatures;key;tileset;z;x;y}letto_valuex=structure_to_value[("additional-features",(Option.mapx.additionalFeatures~f:TileAdditionalFeatureList.to_value));("Tileset",(Some(Tileset.to_valuex.tileset)));("Z",(Some(GetTileRequestZString.to_valuex.z)));("X",(Some(GetTileRequestXString.to_valuex.x)));("Y",(Some(GetTileRequestYString.to_valuex.y)));("key",(Option.mapx.key~f:ApiKey.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letkey=(Option.map~f:ApiKey.of_xml)(Xml.childxml_arg0"key")inlety=GetTileRequestYString.of_xml(Xml.child_exn~context:context_xml_arg0"Y")inletx=GetTileRequestXString.of_xml(Xml.child_exn~context:context_xml_arg0"X")inletz=GetTileRequestZString.of_xml(Xml.child_exn~context:context_xml_arg0"Z")inlettileset=Tileset.of_xml(Xml.child_exn~context:context_xml_arg0"Tileset")inletadditionalFeatures=(Option.map~f:TileAdditionalFeatureList.of_xml)(Xml.childxml_arg0"additional-features")inmake?key~y~x~z~tileset?additionalFeatures()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letkey=field_mapjson__"Key"ApiKey.of_jsoninlety=field_map_exnjson__"Y"GetTileRequestYString.of_jsoninletx=field_map_exnjson__"X"GetTileRequestXString.of_jsoninletz=field_map_exnjson__"Z"GetTileRequestZString.of_jsoninlettileset=field_map_exnjson__"Tileset"Tileset.of_jsoninletadditionalFeatures=field_mapjson__"AdditionalFeatures"TileAdditionalFeatureList.of_jsoninmake?key~y~x~z~tileset?additionalFeatures()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"GetTile returns a tile. Map tiles are used by clients to render a map. They're addressed using a grid arrangement with an X coordinate, Y coordinate, and Z (zoom) level. For more information, see Tiles in the Amazon Location Service Developer Guide."]moduleGetStyleDescriptorResponse=structtypenonrect={blob:Blob.toption[@ocaml.doc"This Blob contains the body of the style descriptor which is in application/json format."];contentType:String_.toption[@ocaml.doc"Header that represents the format of the response. The response returns the following as the HTTP body."];cacheControl:String_.toption[@ocaml.doc"Header that instructs caching configuration for the client."];eTag:String_.toption[@ocaml.doc"The style descriptor's Etag."]}typenonrecerror=[`Unknown_operation_errorof(string*stringoption)]letmake?blob=fun?contentType->fun?cacheControl->fun?eTag->fun()->{blob;contentType;cacheControl;eTag}leterror_of_jsonnamejson=matchnamewith|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letof_header_and_body=((fun(xs,pipe)->make?blob:(Somepipe)?contentType:(Option.map((List.Assoc.find~equal:String.Caseless.equal)xs"Content-Type")~f:String_.of_string)?cacheControl:(Option.map((List.Assoc.find~equal:String.Caseless.equal)xs"Cache-Control")~f:String_.of_string)?eTag:(Option.map((List.Assoc.find~equal:String.Caseless.equal)xs"ETag")~f:String_.of_string)())[@warning"-27"])letto_valuex=structure_to_value[("Blob",(Option.mapx.blob~f:Blob.to_value));("Content-Type",(Option.mapx.contentType~f:String_.to_value));("Cache-Control",(Option.mapx.cacheControl~f:String_.to_value));("ETag",(Option.mapx.eTag~f:String_.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=leteTag=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"ETag")inletcacheControl=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"Cache-Control")inletcontentType=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"Content-Type")inletblob=(Option.map~f:Blob.of_xml)(Xml.childxml_arg0"Blob")inmake?eTag?cacheControl?contentType?blob()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=leteTag=field_mapjson__"ETag"String_.of_jsoninletcacheControl=field_mapjson__"CacheControl"String_.of_jsoninletcontentType=field_mapjson__"ContentType"String_.of_jsoninletblob=field_mapjson__"Blob"Blob.of_jsoninmake?eTag?cacheControl?contentType?blob()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"GetStyleDescriptor returns information about the style. For more information, see Style dynamic maps in the Amazon Location Service Developer Guide."]moduleGetStyleDescriptorRequest=structtypenonrect={style:MapStyle.t[@ocaml.doc"Style specifies the desired map style. For GrabMaps customers, ap-southeast-1 and ap-southeast-5 regions support only the Standard and Monochrome values."];colorScheme:ColorScheme.toption[@ocaml.doc"Sets the color tone for the map, such as dark and light. Example: Light Default value: Light Valid values for ColorScheme are case sensitive."];politicalView:CountryCode.toption[@ocaml.doc"Specifies the political view using ISO 3166-2 or ISO 3166-3 country code format. Not supported in ap-southeast-1 and ap-southeast-5 regions for GrabMaps customers. The following political views are currently supported: ARG: Argentina's view on the Southern Patagonian Ice Field and Tierra Del Fuego, including the Falkland Islands, South Georgia, and South Sandwich Islands EGY: Egypt's view on Bir Tawil IND: India's view on Gilgit-Baltistan KEN: Kenya's view on the Ilemi Triangle MAR: Morocco's view on Western Sahara RUS: Russia's view on Crimea SDN: Sudan's view on the Halaib Triangle SRB: Serbia's view on Kosovo, Vukovar, and Sarengrad Islands SUR: Suriname's view on the Courantyne Headwaters and Lawa Headwaters SYR: Syria's view on the Golan Heights TUR: Turkey's view on Cyprus and Northern Cyprus TZA: Tanzania's view on Lake Malawi URY: Uruguay's view on Rincon de Artigas VNM: Vietnam's view on the Paracel Islands and Spratly Islands"];terrain:Terrain.toption[@ocaml.doc"Adjusts how physical terrain details are rendered on the map. Not supported in ap-southeast-1 and ap-southeast-5 regions for GrabMaps customers. The following terrain styles are currently supported: Hillshade: Displays the physical terrain details through shading and highlighting of elevation change and geographic features. Terrain3D: Displays physical terrain details and elevations as a three-dimensional model. Hillshade is valid only for the Standard and Monochrome map styles."];contourDensity:ContourDensity.toption[@ocaml.doc"Displays the shape and steepness of terrain features using elevation lines. The density value controls how densely the available contour line information is rendered on the map. Not supported in ap-southeast-1 and ap-southeast-5 regions for GrabMaps customers. This parameter is valid for all map styles except Satellite."];traffic:Traffic.toption[@ocaml.doc"Displays real-time traffic information overlay on map, such as incident events and flow events. Not supported in ap-southeast-1 and ap-southeast-5 regions for GrabMaps customers. This parameter is valid for all map styles except Satellite."];travelModes:TravelModeList.toption[@ocaml.doc"Renders additional map information relevant to selected travel modes. Information for multiple travel modes can be displayed simultaneously, although this increases the overall information density rendered on the map. Not supported in ap-southeast-1 and ap-southeast-5 regions for GrabMaps customers. This parameter is valid for all map styles except Satellite."];buildings:Buildings.toption[@ocaml.doc"Adjusts how building details are rendered on the map. The following building styles are currently supported: Buildings3D: Displays buildings as three-dimensional extrusions on the map. Buildings3D is valid only for the Standard and Monochrome map styles."];key:ApiKey.toption[@ocaml.doc"Optional: The API key to be used for authorization. Either an API key or valid SigV4 signature must be provided when making a request."]}letcontext_="GetStyleDescriptorRequest"letmake?colorScheme=fun?politicalView->fun?terrain->fun?contourDensity->fun?traffic->fun?travelModes->fun?buildings->fun?key->fun~style->fun()->{colorScheme;politicalView;terrain;contourDensity;traffic;travelModes;buildings;key;style}letto_valuex=structure_to_value[("Style",(Some(MapStyle.to_valuex.style)));("color-scheme",(Option.mapx.colorScheme~f:ColorScheme.to_value));("political-view",(Option.mapx.politicalView~f:CountryCode.to_value));("terrain",(Option.mapx.terrain~f:Terrain.to_value));("contour-density",(Option.mapx.contourDensity~f:ContourDensity.to_value));("traffic",(Option.mapx.traffic~f:Traffic.to_value));("travel-modes",(Option.mapx.travelModes~f:TravelModeList.to_value));("buildings",(Option.mapx.buildings~f:Buildings.to_value));("key",(Option.mapx.key~f:ApiKey.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letkey=(Option.map~f:ApiKey.of_xml)(Xml.childxml_arg0"key")inletbuildings=(Option.map~f:Buildings.of_xml)(Xml.childxml_arg0"buildings")inlettravelModes=(Option.map~f:TravelModeList.of_xml)(Xml.childxml_arg0"travel-modes")inlettraffic=(Option.map~f:Traffic.of_xml)(Xml.childxml_arg0"traffic")inletcontourDensity=(Option.map~f:ContourDensity.of_xml)(Xml.childxml_arg0"contour-density")inletterrain=(Option.map~f:Terrain.of_xml)(Xml.childxml_arg0"terrain")inletpoliticalView=(Option.map~f:CountryCode.of_xml)(Xml.childxml_arg0"political-view")inletcolorScheme=(Option.map~f:ColorScheme.of_xml)(Xml.childxml_arg0"color-scheme")inletstyle=MapStyle.of_xml(Xml.child_exn~context:context_xml_arg0"Style")inmake?key?buildings?travelModes?traffic?contourDensity?terrain?politicalView?colorScheme~style()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letkey=field_mapjson__"Key"ApiKey.of_jsoninletbuildings=field_mapjson__"Buildings"Buildings.of_jsoninlettravelModes=field_mapjson__"TravelModes"TravelModeList.of_jsoninlettraffic=field_mapjson__"Traffic"Traffic.of_jsoninletcontourDensity=field_mapjson__"ContourDensity"ContourDensity.of_jsoninletterrain=field_mapjson__"Terrain"Terrain.of_jsoninletpoliticalView=field_mapjson__"PoliticalView"CountryCode.of_jsoninletcolorScheme=field_mapjson__"ColorScheme"ColorScheme.of_jsoninletstyle=field_map_exnjson__"Style"MapStyle.of_jsoninmake?key?buildings?travelModes?traffic?contourDensity?terrain?politicalView?colorScheme~style()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"GetStyleDescriptor returns information about the style. For more information, see Style dynamic maps in the Amazon Location Service Developer Guide."]moduleGetStaticMapResponse=structtypenonrect={blob:Blob.toption[@ocaml.doc"The blob represents a map image as a jpeg for the GetStaticMap API."];contentType:String_.toption[@ocaml.doc"Header that represents the format of the response. The response returns the following as the HTTP body."];cacheControl:String_.toption[@ocaml.doc"Header that instructs caching configuration for the client."];eTag:String_.toption[@ocaml.doc"The static map's Etag."];pricingBucket:String_.toption[@ocaml.doc"The pricing bucket for which the request is charged at."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InternalServerExceptionofInternalServerException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?blob=fun?contentType->fun?cacheControl->fun?eTag->fun?pricingBucket->fun()->{blob;contentType;cacheControl;eTag;pricingBucket}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))])))letof_header_and_body=((fun(xs,pipe)->make?blob:(Somepipe)?contentType:(Option.map((List.Assoc.find~equal:String.Caseless.equal)xs"Content-Type")~f:String_.of_string)?cacheControl:(Option.map((List.Assoc.find~equal:String.Caseless.equal)xs"Cache-Control")~f:String_.of_string)?eTag:(Option.map((List.Assoc.find~equal:String.Caseless.equal)xs"ETag")~f:String_.of_string)?pricingBucket:(Option.map((List.Assoc.find~equal:String.Caseless.equal)xs"x-amz-geo-pricing-bucket")~f:String_.of_string)())[@warning"-27"])letto_valuex=structure_to_value[("Blob",(Option.mapx.blob~f:Blob.to_value));("Content-Type",(Option.mapx.contentType~f:String_.to_value));("Cache-Control",(Option.mapx.cacheControl~f:String_.to_value));("ETag",(Option.mapx.eTag~f:String_.to_value));("x-amz-geo-pricing-bucket",(Option.mapx.pricingBucket~f:String_.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letpricingBucket=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"x-amz-geo-pricing-bucket")inleteTag=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"ETag")inletcacheControl=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"Cache-Control")inletcontentType=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"Content-Type")inletblob=(Option.map~f:Blob.of_xml)(Xml.childxml_arg0"Blob")inmake?pricingBucket?eTag?cacheControl?contentType?blob()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letpricingBucket=field_mapjson__"PricingBucket"String_.of_jsoninleteTag=field_mapjson__"ETag"String_.of_jsoninletcacheControl=field_mapjson__"CacheControl"String_.of_jsoninletcontentType=field_mapjson__"ContentType"String_.of_jsoninletblob=field_mapjson__"Blob"Blob.of_jsoninmake?pricingBucket?eTag?cacheControl?contentType?blob()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"This operation is not supported in ap-southeast-1 and ap-southeast-5 regions for GrabMaps customers. GetStaticMap provides high-quality static map images with customizable options. You can modify the map's appearance and overlay additional information. It's an ideal solution for applications requiring tailored static map snapshots. For more information, see the following topics in the Amazon Location Service Developer Guide: Static maps Customize static maps Overlay on the static map"]moduleGetStaticMapRequest=structtypenonrect={boundingBox:GetStaticMapRequestBoundingBoxString.toption[@ocaml.doc"Takes in two pairs of coordinates in World Geodetic System (WGS 84) format: \\[longitude, latitude\\], denoting south-westerly and north-easterly edges of the image. The underlying area becomes the view of the image. Example: -123.17075,49.26959,-123.08125,49.31429"];boundedPositions:GetStaticMapRequestBoundedPositionsString.toption[@ocaml.doc"Takes in two or more pair of coordinates in World Geodetic System (WGS 84) format: \\[longitude, latitude\\], with each coordinate separated by a comma. The API will generate an image to encompass all of the provided coordinates. Cannot be used with Zoom and or Radius Example: 97.170451,78.039098,99.045536,27.176178"];center:PositionString.toption[@ocaml.doc"Takes in a pair of coordinates in World Geodetic System (WGS 84) format: \\[longitude, latitude\\], which becomes the center point of the image. This parameter requires that either zoom or radius is set. Cannot be used with Zoom and or Radius Example: 49.295,-123.108"];colorScheme:ColorScheme.toption[@ocaml.doc"Sets the color tone for the map, such as dark and light. Example: Light Default value: Light Valid values for ColorScheme are case sensitive."];compactOverlay:CompactOverlay.toption[@ocaml.doc"Takes in a string to draw geometries on the image. The input is a comma separated format as follows format: \\[Lon, Lat\\] Example: line:-122.407653,37.798557,-122.413291,37.802443;color=%23DD0000;width=7;outline-color=#00DD00;outline-width=5yd|point:-122.40572,37.80004;label=Fog Hill Market;size=large;text-color=%23DD0000;color=#EE4B2B Currently it supports the following geometry types: point, line and polygon. It does not support multiPoint , multiLine and multiPolgyon."];cropLabels:Boolean.toption[@ocaml.doc"It is a flag that takes in true or false. It prevents the labels that are on the edge of the image from being cut or obscured."];geoJsonOverlay:GeoJsonOverlay.toption[@ocaml.doc"Takes in a string to draw geometries on the image. The input is a valid GeoJSON collection object. Example: \\{\"type\":\"FeatureCollection\",\"features\": \\[\\{\"type\":\"Feature\",\"geometry\":\\{\"type\":\"MultiPoint\",\"coordinates\": \\[\\[-90.076345,51.504107\\],\\[-0.074451,51.506892\\]\\]\\},\"properties\": \\{\"color\":\"#00DD00\"\\}\\}\\]\\}"];height:GetStaticMapRequestHeightInteger.t[@ocaml.doc"Specifies the height of the map image."];key:ApiKey.toption[@ocaml.doc"Optional: The API key to be used for authorization. Either an API key or valid SigV4 signature must be provided when making a request."];labelSize:LabelSize.toption[@ocaml.doc"Overrides the label size auto-calculated by FileName. Takes in one of the values - Small or Large."];language:LanguageTag.toption[@ocaml.doc"Specifies the language on the map labels using the BCP 47 language tag, limited to ISO 639-1 two-letter language codes. If the specified language data isn't available for the map image, the labels will default to the regional primary language. Supported codes: ar as az be bg bn bs ca cs cy da de el en es et eu fi fo fr ga gl gn gu he hi hr hu hy id is it ja ka kk km kn ko ky lt lv mk ml mr ms mt my nl no or pa pl pt ro ru sk sl sq sr sv ta te th tr uk uz vi zh"];padding:GetStaticMapRequestPaddingInteger.toption[@ocaml.doc"Applies additional space (in pixels) around overlay feature to prevent them from being cut or obscured. Value for max and min is determined by: Min: 1 Max: min(height, width)/4 Example: 100"];politicalView:CountryCode.toption[@ocaml.doc"Specifies the political view, using ISO 3166-2 or ISO 3166-3 country code format. The following political views are currently supported: ARG: Argentina's view on the Southern Patagonian Ice Field and Tierra Del Fuego, including the Falkland Islands, South Georgia, and South Sandwich Islands EGY: Egypt's view on Bir Tawil IND: India's view on Gilgit-Baltistan KEN: Kenya's view on the Ilemi Triangle MAR: Morocco's view on Western Sahara RUS: Russia's view on Crimea SDN: Sudan's view on the Halaib Triangle SRB: Serbia's view on Kosovo, Vukovar, and Sarengrad Islands SUR: Suriname's view on the Courantyne Headwaters and Lawa Headwaters SYR: Syria's view on the Golan Heights TUR: Turkey's view on Cyprus and Northern Cyprus TZA: Tanzania's view on Lake Malawi URY: Uruguay's view on Rincon de Artigas VNM: Vietnam's view on the Paracel Islands and Spratly Islands"];pointsOfInterests:MapFeatureMode.toption[@ocaml.doc"Determines if the result image will display icons representing points of interest on the map."];radius:DistanceMeters.toption[@ocaml.doc"Used with center parameter, it specifies the zoom of the image where you can control it on a granular level. Takes in any value >= 1. Example: 1500 Cannot be used with Zoom. Unit: Meters"];fileName:GetStaticMapRequestFileNameString.t[@ocaml.doc"The map scaling parameter to size the image, icons, and labels. It follows the pattern of ^map(\\@2x)?$. Example: map, map\\@2x"];scaleBarUnit:ScaleBarUnit.toption[@ocaml.doc"Displays a scale on the bottom right of the map image with the unit specified in the input. Example: KilometersMiles, Miles, Kilometers, MilesKilometers"];style:StaticMapStyle.toption[@ocaml.doc"Style specifies the desired map style."];width:GetStaticMapRequestWidthInteger.t[@ocaml.doc"Specifies the width of the map image."];zoom:GetStaticMapRequestZoomFloat.toption[@ocaml.doc"Specifies the zoom level of the map image. Cannot be used with Radius."]}letcontext_="GetStaticMapRequest"letmake?boundingBox=fun?boundedPositions->fun?center->fun?colorScheme->fun?compactOverlay->fun?cropLabels->fun?geoJsonOverlay->fun?key->fun?labelSize->fun?language->fun?padding->fun?politicalView->fun?pointsOfInterests->fun?radius->fun?scaleBarUnit->fun?style->fun?zoom->fun~height->fun~fileName->fun~width->fun()->{boundingBox;boundedPositions;center;colorScheme;compactOverlay;cropLabels;geoJsonOverlay;key;labelSize;language;padding;politicalView;pointsOfInterests;radius;scaleBarUnit;style;zoom;height;fileName;width}letto_valuex=structure_to_value[("bounding-box",(Option.mapx.boundingBox~f:GetStaticMapRequestBoundingBoxString.to_value));("bounded-positions",(Option.mapx.boundedPositions~f:GetStaticMapRequestBoundedPositionsString.to_value));("center",(Option.mapx.center~f:PositionString.to_value));("color-scheme",(Option.mapx.colorScheme~f:ColorScheme.to_value));("compact-overlay",(Option.mapx.compactOverlay~f:CompactOverlay.to_value));("crop-labels",(Option.mapx.cropLabels~f:Boolean.to_value));("geojson-overlay",(Option.mapx.geoJsonOverlay~f:GeoJsonOverlay.to_value));("height",(Some(GetStaticMapRequestHeightInteger.to_valuex.height)));("key",(Option.mapx.key~f:ApiKey.to_value));("label-size",(Option.mapx.labelSize~f:LabelSize.to_value));("lang",(Option.mapx.language~f:LanguageTag.to_value));("padding",(Option.mapx.padding~f:GetStaticMapRequestPaddingInteger.to_value));("political-view",(Option.mapx.politicalView~f:CountryCode.to_value));("pois",(Option.mapx.pointsOfInterests~f:MapFeatureMode.to_value));("radius",(Option.mapx.radius~f:DistanceMeters.to_value));("FileName",(Some(GetStaticMapRequestFileNameString.to_valuex.fileName)));("scale-unit",(Option.mapx.scaleBarUnit~f:ScaleBarUnit.to_value));("style",(Option.mapx.style~f:StaticMapStyle.to_value));("width",(Some(GetStaticMapRequestWidthInteger.to_valuex.width)));("zoom",(Option.mapx.zoom~f:GetStaticMapRequestZoomFloat.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letzoom=(Option.map~f:GetStaticMapRequestZoomFloat.of_xml)(Xml.childxml_arg0"zoom")inletwidth=GetStaticMapRequestWidthInteger.of_xml(Xml.child_exn~context:context_xml_arg0"width")inletstyle=(Option.map~f:StaticMapStyle.of_xml)(Xml.childxml_arg0"style")inletscaleBarUnit=(Option.map~f:ScaleBarUnit.of_xml)(Xml.childxml_arg0"scale-unit")inletfileName=GetStaticMapRequestFileNameString.of_xml(Xml.child_exn~context:context_xml_arg0"FileName")inletradius=(Option.map~f:DistanceMeters.of_xml)(Xml.childxml_arg0"radius")inletpointsOfInterests=(Option.map~f:MapFeatureMode.of_xml)(Xml.childxml_arg0"pois")inletpoliticalView=(Option.map~f:CountryCode.of_xml)(Xml.childxml_arg0"political-view")inletpadding=(Option.map~f:GetStaticMapRequestPaddingInteger.of_xml)(Xml.childxml_arg0"padding")inletlanguage=(Option.map~f:LanguageTag.of_xml)(Xml.childxml_arg0"lang")inletlabelSize=(Option.map~f:LabelSize.of_xml)(Xml.childxml_arg0"label-size")inletkey=(Option.map~f:ApiKey.of_xml)(Xml.childxml_arg0"key")inletheight=GetStaticMapRequestHeightInteger.of_xml(Xml.child_exn~context:context_xml_arg0"height")inletgeoJsonOverlay=(Option.map~f:GeoJsonOverlay.of_xml)(Xml.childxml_arg0"geojson-overlay")inletcropLabels=(Option.map~f:Boolean.of_xml)(Xml.childxml_arg0"crop-labels")inletcompactOverlay=(Option.map~f:CompactOverlay.of_xml)(Xml.childxml_arg0"compact-overlay")inletcolorScheme=(Option.map~f:ColorScheme.of_xml)(Xml.childxml_arg0"color-scheme")inletcenter=(Option.map~f:PositionString.of_xml)(Xml.childxml_arg0"center")inletboundedPositions=(Option.map~f:GetStaticMapRequestBoundedPositionsString.of_xml)(Xml.childxml_arg0"bounded-positions")inletboundingBox=(Option.map~f:GetStaticMapRequestBoundingBoxString.of_xml)(Xml.childxml_arg0"bounding-box")inmake?zoom~width?style?scaleBarUnit~fileName?radius?pointsOfInterests?politicalView?padding?language?labelSize?key~height?geoJsonOverlay?cropLabels?compactOverlay?colorScheme?center?boundedPositions?boundingBox()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letzoom=field_mapjson__"Zoom"GetStaticMapRequestZoomFloat.of_jsoninletwidth=field_map_exnjson__"Width"GetStaticMapRequestWidthInteger.of_jsoninletstyle=field_mapjson__"Style"StaticMapStyle.of_jsoninletscaleBarUnit=field_mapjson__"ScaleBarUnit"ScaleBarUnit.of_jsoninletfileName=field_map_exnjson__"FileName"GetStaticMapRequestFileNameString.of_jsoninletradius=field_mapjson__"Radius"DistanceMeters.of_jsoninletpointsOfInterests=field_mapjson__"PointsOfInterests"MapFeatureMode.of_jsoninletpoliticalView=field_mapjson__"PoliticalView"CountryCode.of_jsoninletpadding=field_mapjson__"Padding"GetStaticMapRequestPaddingInteger.of_jsoninletlanguage=field_mapjson__"Language"LanguageTag.of_jsoninletlabelSize=field_mapjson__"LabelSize"LabelSize.of_jsoninletkey=field_mapjson__"Key"ApiKey.of_jsoninletheight=field_map_exnjson__"Height"GetStaticMapRequestHeightInteger.of_jsoninletgeoJsonOverlay=field_mapjson__"GeoJsonOverlay"GeoJsonOverlay.of_jsoninletcropLabels=field_mapjson__"CropLabels"Boolean.of_jsoninletcompactOverlay=field_mapjson__"CompactOverlay"CompactOverlay.of_jsoninletcolorScheme=field_mapjson__"ColorScheme"ColorScheme.of_jsoninletcenter=field_mapjson__"Center"PositionString.of_jsoninletboundedPositions=field_mapjson__"BoundedPositions"GetStaticMapRequestBoundedPositionsString.of_jsoninletboundingBox=field_mapjson__"BoundingBox"GetStaticMapRequestBoundingBoxString.of_jsoninmake?zoom~width?style?scaleBarUnit~fileName?radius?pointsOfInterests?politicalView?padding?language?labelSize?key~height?geoJsonOverlay?cropLabels?compactOverlay?colorScheme?center?boundedPositions?boundingBox()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"This operation is not supported in ap-southeast-1 and ap-southeast-5 regions for GrabMaps customers. GetStaticMap provides high-quality static map images with customizable options. You can modify the map's appearance and overlay additional information. It's an ideal solution for applications requiring tailored static map snapshots. For more information, see the following topics in the Amazon Location Service Developer Guide: Static maps Customize static maps Overlay on the static map"]moduleGetSpritesResponse=structtypenonrect={blob:Blob.toption[@ocaml.doc"The body of the sprite sheet or JSON offset file (image/png or application/json, depending on input)."];contentType:String_.toption[@ocaml.doc"Header that represents the format of the response. The response returns the following as the HTTP body."];cacheControl:String_.toption[@ocaml.doc"Header that instructs caching configuration for the client."];eTag:String_.toption[@ocaml.doc"The sprite's Etag."]}typenonrecerror=[`Unknown_operation_errorof(string*stringoption)]letmake?blob=fun?contentType->fun?cacheControl->fun?eTag->fun()->{blob;contentType;cacheControl;eTag}leterror_of_jsonnamejson=matchnamewith|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letof_header_and_body=((fun(xs,pipe)->make?blob:(Somepipe)?contentType:(Option.map((List.Assoc.find~equal:String.Caseless.equal)xs"Content-Type")~f:String_.of_string)?cacheControl:(Option.map((List.Assoc.find~equal:String.Caseless.equal)xs"Cache-Control")~f:String_.of_string)?eTag:(Option.map((List.Assoc.find~equal:String.Caseless.equal)xs"ETag")~f:String_.of_string)())[@warning"-27"])letto_valuex=structure_to_value[("Blob",(Option.mapx.blob~f:Blob.to_value));("Content-Type",(Option.mapx.contentType~f:String_.to_value));("Cache-Control",(Option.mapx.cacheControl~f:String_.to_value));("ETag",(Option.mapx.eTag~f:String_.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=leteTag=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"ETag")inletcacheControl=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"Cache-Control")inletcontentType=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"Content-Type")inletblob=(Option.map~f:Blob.of_xml)(Xml.childxml_arg0"Blob")inmake?eTag?cacheControl?contentType?blob()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=leteTag=field_mapjson__"ETag"String_.of_jsoninletcacheControl=field_mapjson__"CacheControl"String_.of_jsoninletcontentType=field_mapjson__"ContentType"String_.of_jsoninletblob=field_mapjson__"Blob"Blob.of_jsoninmake?eTag?cacheControl?contentType?blob()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"GetSprites returns the map's sprites. For more information, see Style iconography with sprites in the Amazon Location Service Developer Guide."]moduleGetSpritesRequest=structtypenonrect={fileName:GetSpritesRequestFileNameString.t[@ocaml.doc"Sprites API: The name of the sprite \239\172\129le to retrieve, following pattern sprites(\\@2x)?\\.(png|json). Example: sprites.png"];style:MapStyle.t[@ocaml.doc"Style specifies the desired map style for the Sprites APIs."];colorScheme:ColorScheme.t[@ocaml.doc"Sets the color tone for the map sprites, such as dark and light. Example: Light Default value: Light Valid values for ColorScheme are case sensitive."];variant:Variant.t[@ocaml.doc"Optimizes map styles for specific use case or industry. You can choose allowed variant only with Standard map style. Example: Default Valid values for Variant are case sensitive."]}letcontext_="GetSpritesRequest"letmake~fileName=fun~style->fun~colorScheme->fun~variant->fun()->{fileName;style;colorScheme;variant}letto_valuex=structure_to_value[("FileName",(Some(GetSpritesRequestFileNameString.to_valuex.fileName)));("Style",(Some(MapStyle.to_valuex.style)));("ColorScheme",(Some(ColorScheme.to_valuex.colorScheme)));("Variant",(Some(Variant.to_valuex.variant)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letvariant=Variant.of_xml(Xml.child_exn~context:context_xml_arg0"Variant")inletcolorScheme=ColorScheme.of_xml(Xml.child_exn~context:context_xml_arg0"ColorScheme")inletstyle=MapStyle.of_xml(Xml.child_exn~context:context_xml_arg0"Style")inletfileName=GetSpritesRequestFileNameString.of_xml(Xml.child_exn~context:context_xml_arg0"FileName")inmake~variant~colorScheme~style~fileName()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letvariant=field_map_exnjson__"Variant"Variant.of_jsoninletcolorScheme=field_map_exnjson__"ColorScheme"ColorScheme.of_jsoninletstyle=field_map_exnjson__"Style"MapStyle.of_jsoninletfileName=field_map_exnjson__"FileName"GetSpritesRequestFileNameString.of_jsoninmake~variant~colorScheme~style~fileName()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"GetSprites returns the map's sprites. For more information, see Style iconography with sprites in the Amazon Location Service Developer Guide."]moduleGetGlyphsResponse=structtypenonrect={blob:Blob.toption[@ocaml.doc"The Glyph, as a binary blob."];contentType:String_.toption[@ocaml.doc"Header that represents the format of the response. The response returns the following as the HTTP body."];cacheControl:String_.toption[@ocaml.doc"Header that instructs caching configuration for the client."];eTag:String_.toption[@ocaml.doc"The glyph's Etag."]}typenonrecerror=[`Unknown_operation_errorof(string*stringoption)]letmake?blob=fun?contentType->fun?cacheControl->fun?eTag->fun()->{blob;contentType;cacheControl;eTag}leterror_of_jsonnamejson=matchnamewith|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letof_header_and_body=((fun(xs,pipe)->make?blob:(Somepipe)?contentType:(Option.map((List.Assoc.find~equal:String.Caseless.equal)xs"Content-Type")~f:String_.of_string)?cacheControl:(Option.map((List.Assoc.find~equal:String.Caseless.equal)xs"Cache-Control")~f:String_.of_string)?eTag:(Option.map((List.Assoc.find~equal:String.Caseless.equal)xs"ETag")~f:String_.of_string)())[@warning"-27"])letto_valuex=structure_to_value[("Blob",(Option.mapx.blob~f:Blob.to_value));("Content-Type",(Option.mapx.contentType~f:String_.to_value));("Cache-Control",(Option.mapx.cacheControl~f:String_.to_value));("ETag",(Option.mapx.eTag~f:String_.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=leteTag=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"ETag")inletcacheControl=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"Cache-Control")inletcontentType=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"Content-Type")inletblob=(Option.map~f:Blob.of_xml)(Xml.childxml_arg0"Blob")inmake?eTag?cacheControl?contentType?blob()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=leteTag=field_mapjson__"ETag"String_.of_jsoninletcacheControl=field_mapjson__"CacheControl"String_.of_jsoninletcontentType=field_mapjson__"ContentType"String_.of_jsoninletblob=field_mapjson__"Blob"Blob.of_jsoninmake?eTag?cacheControl?contentType?blob()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"GetGlyphs returns the map's glyphs. For more information, see Style labels with glyphs in the Amazon Location Service Developer Guide."]moduleGetGlyphsRequest=structtypenonrect={fontStack:GetGlyphsRequestFontStackString.t[@ocaml.doc"Name of the FontStack to retrieve. Example: Amazon Ember Bold,Noto Sans Bold. The supported font stacks are as follows: Amazon Ember Bold Amazon Ember Bold Italic Amazon Ember Bold,Noto Sans Bold Amazon Ember Bold,Noto Sans Bold,Noto Sans Arabic Bold Amazon Ember Condensed RC BdItalic Amazon Ember Condensed RC Bold Amazon Ember Condensed RC Bold Italic Amazon Ember Condensed RC Bold,Noto Sans Bold Amazon Ember Condensed RC Bold,Noto Sans Bold,Noto Sans Arabic Condensed Bold Amazon Ember Condensed RC Light Amazon Ember Condensed RC Light Italic Amazon Ember Condensed RC LtItalic Amazon Ember Condensed RC Regular Amazon Ember Condensed RC Regular Italic Amazon Ember Condensed RC Regular,Noto Sans Regular Amazon Ember Condensed RC Regular,Noto Sans Regular,Noto Sans Arabic Condensed Regular Amazon Ember Condensed RC RgItalic Amazon Ember Condensed RC ThItalic Amazon Ember Condensed RC Thin Amazon Ember Condensed RC Thin Italic Amazon Ember Heavy Amazon Ember Heavy Italic Amazon Ember Light Amazon Ember Light Italic Amazon Ember Medium Amazon Ember Medium Italic Amazon Ember Medium,Noto Sans Medium Amazon Ember Medium,Noto Sans Medium,Noto Sans Arabic Medium Amazon Ember Regular Amazon Ember Regular Italic Amazon Ember Regular Italic,Noto Sans Italic Amazon Ember Regular Italic,Noto Sans Italic,Noto Sans Arabic Regular Amazon Ember Regular,Noto Sans Regular Amazon Ember Regular,Noto Sans Regular,Noto Sans Arabic Regular Amazon Ember Thin Amazon Ember Thin Italic AmazonEmberCdRC_Bd AmazonEmberCdRC_BdIt AmazonEmberCdRC_Lt AmazonEmberCdRC_LtIt AmazonEmberCdRC_Rg AmazonEmberCdRC_RgIt AmazonEmberCdRC_Th AmazonEmberCdRC_ThIt AmazonEmber_Bd AmazonEmber_BdIt AmazonEmber_He AmazonEmber_HeIt AmazonEmber_Lt AmazonEmber_LtIt AmazonEmber_Md AmazonEmber_MdIt AmazonEmber_Rg AmazonEmber_RgIt AmazonEmber_Th AmazonEmber_ThIt Noto Sans Black Noto Sans Black Italic Noto Sans Bold Noto Sans Bold Italic Noto Sans Extra Bold Noto Sans Extra Bold Italic Noto Sans Extra Light Noto Sans Extra Light Italic Noto Sans Italic Noto Sans Light Noto Sans Light Italic Noto Sans Medium Noto Sans Medium Italic Noto Sans Regular Noto Sans Semi Bold Noto Sans Semi Bold Italic Noto Sans Thin Noto Sans Thin Italic NotoSans-Bold NotoSans-Italic NotoSans-Medium NotoSans-Regular Open Sans Regular,Arial Unicode MS Regular"];fontUnicodeRange:GetGlyphsRequestFontUnicodeRangeString.t[@ocaml.doc"A Unicode range of characters to download glyphs for. This must be aligned to multiples of 256. Example: 0-255.pbf"]}letcontext_="GetGlyphsRequest"letmake~fontStack=fun~fontUnicodeRange->fun()->{fontStack;fontUnicodeRange}letto_valuex=structure_to_value[("FontStack",(Some(GetGlyphsRequestFontStackString.to_valuex.fontStack)));("FontUnicodeRange",(Some(GetGlyphsRequestFontUnicodeRangeString.to_valuex.fontUnicodeRange)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letfontUnicodeRange=GetGlyphsRequestFontUnicodeRangeString.of_xml(Xml.child_exn~context:context_xml_arg0"FontUnicodeRange")inletfontStack=GetGlyphsRequestFontStackString.of_xml(Xml.child_exn~context:context_xml_arg0"FontStack")inmake~fontUnicodeRange~fontStack()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letfontUnicodeRange=field_map_exnjson__"FontUnicodeRange"GetGlyphsRequestFontUnicodeRangeString.of_jsoninletfontStack=field_map_exnjson__"FontStack"GetGlyphsRequestFontStackString.of_jsoninmake~fontUnicodeRange~fontStack()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"GetGlyphs returns the map's glyphs. For more information, see Style labels with glyphs in the Amazon Location Service Developer Guide."]