iam-floyd 0.601.0 → 0.601.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (423) hide show
  1. package/lib/collection/allowEc2InstanceDeleteByOwner.js +24 -0
  2. package/lib/collection/index.js +11 -0
  3. package/lib/generated/accountmanagement.js +270 -0
  4. package/lib/generated/activate.js +100 -0
  5. package/lib/generated/alexaforbusiness.js +1391 -0
  6. package/lib/generated/amplify.js +593 -0
  7. package/lib/generated/amplifyadmin.js +495 -0
  8. package/lib/generated/amplifyuibuilder.js +691 -0
  9. package/lib/generated/apachekafkaapisforamazonmskclusters.js +383 -0
  10. package/lib/generated/apigateway.js +73 -0
  11. package/lib/generated/apigatewaymanagement.js +1253 -0
  12. package/lib/generated/apigatewaymanagementv2.js +976 -0
  13. package/lib/generated/app2container.js +72 -0
  14. package/lib/generated/appconfig.js +850 -0
  15. package/lib/generated/appfabric.js +493 -0
  16. package/lib/generated/appflow.js +493 -0
  17. package/lib/generated/appintegrations.js +614 -0
  18. package/lib/generated/applicationautoscaling.js +310 -0
  19. package/lib/generated/applicationcostprofilerservice.js +94 -0
  20. package/lib/generated/applicationdiscoveryarsenal.js +37 -0
  21. package/lib/generated/applicationdiscoveryservice.js +382 -0
  22. package/lib/generated/applicationmigrationservice.js +1580 -0
  23. package/lib/generated/applicationtransformationservice.js +182 -0
  24. package/lib/generated/appmesh.js +665 -0
  25. package/lib/generated/appmeshpreview.js +525 -0
  26. package/lib/generated/apprunner.js +794 -0
  27. package/lib/generated/appstream2-0.js +1231 -0
  28. package/lib/generated/appsync.js +1013 -0
  29. package/lib/generated/artifact.js +208 -0
  30. package/lib/generated/athena.js +1021 -0
  31. package/lib/generated/auditmanager.js +858 -0
  32. package/lib/generated/autoscaling.js +94 -0
  33. package/lib/generated/b2bdatainterchange.js +472 -0
  34. package/lib/generated/backup.js +1429 -0
  35. package/lib/generated/backupgateway.js +444 -0
  36. package/lib/generated/backupstorage.js +191 -0
  37. package/lib/generated/batch.js +685 -0
  38. package/lib/generated/bedrock.js +1233 -0
  39. package/lib/generated/billing.js +171 -0
  40. package/lib/generated/billingandcostmanagementdataexports.js +281 -0
  41. package/lib/generated/billingconductor.js +529 -0
  42. package/lib/generated/billingconsole.js +127 -0
  43. package/lib/generated/braket.js +314 -0
  44. package/lib/generated/budgetservice.js +169 -0
  45. package/lib/generated/bugbust.js +375 -0
  46. package/lib/generated/certificatemanager.js +354 -0
  47. package/lib/generated/chatbot.js +349 -0
  48. package/lib/generated/chime.js +3899 -0
  49. package/lib/generated/cleanrooms.js +989 -0
  50. package/lib/generated/cleanroomsml.js +563 -0
  51. package/lib/generated/cloud9.js +579 -0
  52. package/lib/generated/cloudcontrolapi.js +116 -0
  53. package/lib/generated/clouddirectory.js +813 -0
  54. package/lib/generated/cloudformation.js +1335 -0
  55. package/lib/generated/cloudfront.js +1534 -0
  56. package/lib/generated/cloudfrontkeyvaluestore.js +108 -0
  57. package/lib/generated/cloudhsm.js +525 -0
  58. package/lib/generated/cloudmap.js +528 -0
  59. package/lib/generated/cloudsearch.js +399 -0
  60. package/lib/generated/cloudshell.js +140 -0
  61. package/lib/generated/cloudtrail.js +779 -0
  62. package/lib/generated/cloudtraildata.js +91 -0
  63. package/lib/generated/cloudwatch.js +872 -0
  64. package/lib/generated/cloudwatchapplicationinsights.js +455 -0
  65. package/lib/generated/cloudwatchevidently.js +625 -0
  66. package/lib/generated/cloudwatchinternetmonitor.js +274 -0
  67. package/lib/generated/cloudwatchlogs.js +1189 -0
  68. package/lib/generated/cloudwatchnetworkmonitor.js +241 -0
  69. package/lib/generated/cloudwatchobservabilityaccessmanager.js +349 -0
  70. package/lib/generated/cloudwatchrum.js +301 -0
  71. package/lib/generated/cloudwatchsynthetics.js +457 -0
  72. package/lib/generated/codeartifact.js +600 -0
  73. package/lib/generated/codebuild.js +841 -0
  74. package/lib/generated/codecatalyst.js +519 -0
  75. package/lib/generated/codecommit.js +1171 -0
  76. package/lib/generated/codedeploy.js +672 -0
  77. package/lib/generated/codedeploysecurehostcommandsservice.js +72 -0
  78. package/lib/generated/codeguru.js +37 -0
  79. package/lib/generated/codeguruprofiler.js +361 -0
  80. package/lib/generated/codegurureviewer.js +365 -0
  81. package/lib/generated/codegurusecurity.js +277 -0
  82. package/lib/generated/codepipeline.js +621 -0
  83. package/lib/generated/codestar.js +365 -0
  84. package/lib/generated/codestarconnections.js +806 -0
  85. package/lib/generated/codestarnotifications.js +340 -0
  86. package/lib/generated/codewhisperer.js +377 -0
  87. package/lib/generated/cognitoidentity.js +392 -0
  88. package/lib/generated/cognitosync.js +277 -0
  89. package/lib/generated/cognitouserpools.js +1300 -0
  90. package/lib/generated/comprehend.js +1522 -0
  91. package/lib/generated/comprehendmedical.js +314 -0
  92. package/lib/generated/computeoptimizer.js +375 -0
  93. package/lib/generated/config.js +1288 -0
  94. package/lib/generated/connect.js +4833 -0
  95. package/lib/generated/connectcases.js +557 -0
  96. package/lib/generated/connectcustomerprofiles.js +796 -0
  97. package/lib/generated/connectorservice.js +61 -0
  98. package/lib/generated/connectvoiceid.js +447 -0
  99. package/lib/generated/consolemobileapp.js +63 -0
  100. package/lib/generated/consolidatedbilling.js +50 -0
  101. package/lib/generated/controltower.js +718 -0
  102. package/lib/generated/costandusagereport.js +234 -0
  103. package/lib/generated/costexplorerservice.js +760 -0
  104. package/lib/generated/costoptimizationhub.js +113 -0
  105. package/lib/generated/customerverificationservice.js +72 -0
  106. package/lib/generated/databasemigrationservice.js +2534 -0
  107. package/lib/generated/databasequerymetadataservice.js +171 -0
  108. package/lib/generated/dataexchange.js +591 -0
  109. package/lib/generated/datalifecyclemanager.js +194 -0
  110. package/lib/generated/datapipeline.js +471 -0
  111. package/lib/generated/datasync.js +959 -0
  112. package/lib/generated/datazone.js +1215 -0
  113. package/lib/generated/deepcomposer.js +358 -0
  114. package/lib/generated/deeplens.js +281 -0
  115. package/lib/generated/deepracer.js +1058 -0
  116. package/lib/generated/detective.js +533 -0
  117. package/lib/generated/devicefarm.js +1221 -0
  118. package/lib/generated/devopsguru.js +413 -0
  119. package/lib/generated/diagnostictools.js +226 -0
  120. package/lib/generated/directconnect.js +899 -0
  121. package/lib/generated/directoryservice.js +1037 -0
  122. package/lib/generated/documentdbelasticclusters.js +413 -0
  123. package/lib/generated/dynamodb.js +1099 -0
  124. package/lib/generated/dynamodbacceleratordax.js +416 -0
  125. package/lib/generated/ec2.js +16710 -0
  126. package/lib/generated/ec2autoscaling.js +1217 -0
  127. package/lib/generated/ec2imagebuilder.js +1363 -0
  128. package/lib/generated/ec2instanceconnect.js +187 -0
  129. package/lib/generated/eksauth.js +68 -0
  130. package/lib/generated/elasticache.js +2038 -0
  131. package/lib/generated/elasticbeanstalk.js +938 -0
  132. package/lib/generated/elasticblockstore.js +246 -0
  133. package/lib/generated/elasticcontainerregistry.js +668 -0
  134. package/lib/generated/elasticcontainerregistrypublic.js +391 -0
  135. package/lib/generated/elasticcontainerservice.js +1371 -0
  136. package/lib/generated/elasticdisasterrecovery.js +1423 -0
  137. package/lib/generated/elasticfilesystem.js +609 -0
  138. package/lib/generated/elasticinference.js +106 -0
  139. package/lib/generated/elastickubernetesservice.js +1115 -0
  140. package/lib/generated/elasticloadbalancing.js +674 -0
  141. package/lib/generated/elasticloadbalancingv2.js +1065 -0
  142. package/lib/generated/elasticmapreduce.js +1138 -0
  143. package/lib/generated/elastictranscoder.js +256 -0
  144. package/lib/generated/elementalappliancesandsoftware.js +293 -0
  145. package/lib/generated/elementalappliancesandsoftwareactivationservice.js +212 -0
  146. package/lib/generated/elementalmediaconnect.js +725 -0
  147. package/lib/generated/elementalmediaconvert.js +538 -0
  148. package/lib/generated/elementalmedialive.js +940 -0
  149. package/lib/generated/elementalmediapackage.js +362 -0
  150. package/lib/generated/elementalmediapackagev2.js +452 -0
  151. package/lib/generated/elementalmediapackagevod.js +342 -0
  152. package/lib/generated/elementalmediastore.js +425 -0
  153. package/lib/generated/elementalmediatailor.js +716 -0
  154. package/lib/generated/elementalsupportcases.js +83 -0
  155. package/lib/generated/elementalsupportcontent.js +37 -0
  156. package/lib/generated/emroneksemrcontainers.js +429 -0
  157. package/lib/generated/emrserverless.js +312 -0
  158. package/lib/generated/entityresolution.js +465 -0
  159. package/lib/generated/eventbridge.js +1072 -0
  160. package/lib/generated/eventbridgepipes.js +254 -0
  161. package/lib/generated/eventbridgescheduler.js +295 -0
  162. package/lib/generated/eventbridgeschemas.js +494 -0
  163. package/lib/generated/faultinjectionservice.js +548 -0
  164. package/lib/generated/finspace.js +942 -0
  165. package/lib/generated/finspaceapi.js +49 -0
  166. package/lib/generated/firewallmanager.js +647 -0
  167. package/lib/generated/forecast.js +1202 -0
  168. package/lib/generated/frauddetector.js +1267 -0
  169. package/lib/generated/freertos.js +337 -0
  170. package/lib/generated/freetier.js +61 -0
  171. package/lib/generated/fsx.js +1032 -0
  172. package/lib/generated/gamelift.js +1504 -0
  173. package/lib/generated/globalaccelerator.js +790 -0
  174. package/lib/generated/glue.js +3054 -0
  175. package/lib/generated/gluedatabrew.js +709 -0
  176. package/lib/generated/groundstation.js +742 -0
  177. package/lib/generated/groundtruthlabeling.js +83 -0
  178. package/lib/generated/guardduty.js +982 -0
  179. package/lib/generated/healthapisandnotifications.js +262 -0
  180. package/lib/generated/healthimaging.js +326 -0
  181. package/lib/generated/healthlake.js +330 -0
  182. package/lib/generated/healthomics.js +1313 -0
  183. package/lib/generated/high-volumeoutboundcommunications.js +372 -0
  184. package/lib/generated/honeycode.js +420 -0
  185. package/lib/generated/iamaccessanalyzer.js +473 -0
  186. package/lib/generated/iamidentitycenteroidcservice.js +50 -0
  187. package/lib/generated/iamidentitycentersuccessortoawssinglesign-on.js +1731 -0
  188. package/lib/generated/iamidentitycentersuccessortoawssinglesign-ondirectory.js +600 -0
  189. package/lib/generated/identityandaccessmanagementiam.js +2524 -0
  190. package/lib/generated/identityandaccessmanagementrolesanywhere.js +488 -0
  191. package/lib/generated/identitystore.js +328 -0
  192. package/lib/generated/identitystoreauth.js +63 -0
  193. package/lib/generated/identitysync.js +195 -0
  194. package/lib/generated/importexportdiskservice.js +96 -0
  195. package/lib/generated/index.js +820 -0
  196. package/lib/generated/inspector.js +439 -0
  197. package/lib/generated/inspector2.js +815 -0
  198. package/lib/generated/inspectorscan.js +37 -0
  199. package/lib/generated/interactivevideoservice.js +951 -0
  200. package/lib/generated/interactivevideoservicechat.js +328 -0
  201. package/lib/generated/invoicingservice.js +72 -0
  202. package/lib/generated/iot.js +3850 -0
  203. package/lib/generated/iot1-click.js +415 -0
  204. package/lib/generated/iotanalytics.js +571 -0
  205. package/lib/generated/iotcoredeviceadvisor.js +284 -0
  206. package/lib/generated/iotdevicetester.js +83 -0
  207. package/lib/generated/iotevents.js +592 -0
  208. package/lib/generated/iotfleethubfordevicemanagement.js +201 -0
  209. package/lib/generated/iotfleetwise.js +869 -0
  210. package/lib/generated/iotgreengrass.js +1500 -0
  211. package/lib/generated/iotgreengrassv2.js +562 -0
  212. package/lib/generated/iotjobsdataplane.js +106 -0
  213. package/lib/generated/iotroborunner.js +375 -0
  214. package/lib/generated/iotsitewise.js +1332 -0
  215. package/lib/generated/iottwinmaker.js +709 -0
  216. package/lib/generated/iotwireless.js +1588 -0
  217. package/lib/generated/iq.js +896 -0
  218. package/lib/generated/iqpermissions.js +139 -0
  219. package/lib/generated/kendra.js +980 -0
  220. package/lib/generated/kendraintelligentranking.js +205 -0
  221. package/lib/generated/keymanagementservice.js +1574 -0
  222. package/lib/generated/keyspacesforapachecassandra.js +353 -0
  223. package/lib/generated/kinesisanalytics.js +293 -0
  224. package/lib/generated/kinesisanalyticsv2.js +447 -0
  225. package/lib/generated/kinesisdatastreams.js +426 -0
  226. package/lib/generated/kinesisfirehose.js +238 -0
  227. package/lib/generated/kinesisvideostreams.js +614 -0
  228. package/lib/generated/lakeformation.js +619 -0
  229. package/lib/generated/lambda.js +1168 -0
  230. package/lib/generated/launchwizard.js +393 -0
  231. package/lib/generated/lex.js +747 -0
  232. package/lib/generated/lexv2.js +1368 -0
  233. package/lib/generated/licensemanager.js +701 -0
  234. package/lib/generated/licensemanagerlinuxsubscriptionsmanager.js +72 -0
  235. package/lib/generated/licensemanagerusersubscriptions.js +149 -0
  236. package/lib/generated/lightsail.js +2257 -0
  237. package/lib/generated/location.js +931 -0
  238. package/lib/generated/lookoutforequipment.js +763 -0
  239. package/lib/generated/lookoutformetrics.js +487 -0
  240. package/lib/generated/lookoutforvision.js +395 -0
  241. package/lib/generated/machinelearning.js +392 -0
  242. package/lib/generated/macie.js +1079 -0
  243. package/lib/generated/mainframemodernizationservice.js +535 -0
  244. package/lib/generated/managedblockchain.js +604 -0
  245. package/lib/generated/managedblockchainquery.js +100 -0
  246. package/lib/generated/managedgrafana.js +341 -0
  247. package/lib/generated/managedserviceforprometheus.js +797 -0
  248. package/lib/generated/managedstreamingforapachekafka.js +880 -0
  249. package/lib/generated/managedstreamingforkafkaconnect.js +228 -0
  250. package/lib/generated/managedworkflowsforapacheairflow.js +259 -0
  251. package/lib/generated/marketplace.js +261 -0
  252. package/lib/generated/marketplacecatalog.js +340 -0
  253. package/lib/generated/marketplacecommerceanalyticsservice.js +44 -0
  254. package/lib/generated/marketplacedeploymentservice.js +173 -0
  255. package/lib/generated/marketplacediscovery.js +37 -0
  256. package/lib/generated/marketplaceentitlementservice.js +35 -0
  257. package/lib/generated/marketplaceimagebuildingservice.js +61 -0
  258. package/lib/generated/marketplacemanagementportal.js +173 -0
  259. package/lib/generated/marketplacemeteringservice.js +70 -0
  260. package/lib/generated/marketplaceprivatemarketplace.js +83 -0
  261. package/lib/generated/marketplaceprocurementsystemsintegration.js +50 -0
  262. package/lib/generated/marketplacesellerreporting.js +51 -0
  263. package/lib/generated/marketplacevendorinsights.js +479 -0
  264. package/lib/generated/mechanicalturk.js +459 -0
  265. package/lib/generated/mediaimport.js +37 -0
  266. package/lib/generated/memorydb.js +865 -0
  267. package/lib/generated/messagedeliveryservice.js +132 -0
  268. package/lib/generated/microserviceextractorfor-net.js +37 -0
  269. package/lib/generated/migrationaccelerationprogramcredits.js +71 -0
  270. package/lib/generated/migrationhub.js +288 -0
  271. package/lib/generated/migrationhuborchestrator.js +449 -0
  272. package/lib/generated/migrationhubrefactorspaces.js +671 -0
  273. package/lib/generated/migrationhubstrategyrecommendations.js +349 -0
  274. package/lib/generated/mobileanalytics.js +57 -0
  275. package/lib/generated/monitron.js +374 -0
  276. package/lib/generated/mq.js +416 -0
  277. package/lib/generated/neptune.js +440 -0
  278. package/lib/generated/neptuneanalytics.js +623 -0
  279. package/lib/generated/networkfirewall.js +594 -0
  280. package/lib/generated/networkmanager.js +1382 -0
  281. package/lib/generated/networkmanagerchat.js +105 -0
  282. package/lib/generated/nimblestudio.js +1053 -0
  283. package/lib/generated/oneenterprise.js +546 -0
  284. package/lib/generated/opensearchingestion.js +304 -0
  285. package/lib/generated/opensearchserverless.js +634 -0
  286. package/lib/generated/opensearchservice.js +1209 -0
  287. package/lib/generated/opsworks.js +861 -0
  288. package/lib/generated/opsworksconfigurationmanagement.js +262 -0
  289. package/lib/generated/organizations.js +946 -0
  290. package/lib/generated/outposts.js +437 -0
  291. package/lib/generated/panorama.js +548 -0
  292. package/lib/generated/partnercentralaccountmanagement.js +59 -0
  293. package/lib/generated/paymentcryptography.js +566 -0
  294. package/lib/generated/payments.js +107 -0
  295. package/lib/generated/performanceinsights.js +259 -0
  296. package/lib/generated/personalize.js +1122 -0
  297. package/lib/generated/pinpoint.js +1976 -0
  298. package/lib/generated/pinpointemailservice.js +908 -0
  299. package/lib/generated/pinpointsmsandvoiceservice.js +122 -0
  300. package/lib/generated/pinpointsmsvoicev2.js +1066 -0
  301. package/lib/generated/polly.js +145 -0
  302. package/lib/generated/pricelist.js +81 -0
  303. package/lib/generated/privatecaconnectorforactivedirectory.js +482 -0
  304. package/lib/generated/privatecertificateauthority.js +378 -0
  305. package/lib/generated/proton.js +1738 -0
  306. package/lib/generated/purchaseordersconsole.js +301 -0
  307. package/lib/generated/q.js +94 -0
  308. package/lib/generated/qbusiness.js +776 -0
  309. package/lib/generated/qinconnect.js +719 -0
  310. package/lib/generated/qldb.js +579 -0
  311. package/lib/generated/quicksight.js +2970 -0
  312. package/lib/generated/rds.js +3262 -0
  313. package/lib/generated/rdsdataapi.js +184 -0
  314. package/lib/generated/rdsiamauthentication.js +51 -0
  315. package/lib/generated/re-postprivate.js +229 -0
  316. package/lib/generated/recyclebin.js +292 -0
  317. package/lib/generated/redshift.js +2282 -0
  318. package/lib/generated/redshiftdataapi.js +217 -0
  319. package/lib/generated/redshiftserverless.js +884 -0
  320. package/lib/generated/rekognition.js +1025 -0
  321. package/lib/generated/resiliencehub.js +815 -0
  322. package/lib/generated/resourceaccessmanagerram.js +837 -0
  323. package/lib/generated/resourceexplorer.js +364 -0
  324. package/lib/generated/resourcegroups.js +347 -0
  325. package/lib/generated/resourcegrouptaggingapi.js +118 -0
  326. package/lib/generated/rhelknowledgebaseportal.js +37 -0
  327. package/lib/generated/robomaker.js +1000 -0
  328. package/lib/generated/route53.js +960 -0
  329. package/lib/generated/route53applicationrecoverycontroller-zonalshift.js +279 -0
  330. package/lib/generated/route53domains.js +406 -0
  331. package/lib/generated/route53recoverycluster.js +105 -0
  332. package/lib/generated/route53recoverycontrols.js +440 -0
  333. package/lib/generated/route53recoveryreadiness.js +539 -0
  334. package/lib/generated/route53resolver.js +1110 -0
  335. package/lib/generated/s3.js +5349 -0
  336. package/lib/generated/s3express.js +314 -0
  337. package/lib/generated/s3glacier.js +475 -0
  338. package/lib/generated/s3objectlambda.js +607 -0
  339. package/lib/generated/s3onoutposts.js +1505 -0
  340. package/lib/generated/sagemaker.js +6518 -0
  341. package/lib/generated/sagemakergeospatialcapabilities.js +416 -0
  342. package/lib/generated/sagemakergroundtruthsynthetic.js +138 -0
  343. package/lib/generated/savingsplans.js +218 -0
  344. package/lib/generated/secretsmanager.js +861 -0
  345. package/lib/generated/securityhub.js +1203 -0
  346. package/lib/generated/securitylake.js +680 -0
  347. package/lib/generated/securitytokenservice.js +1080 -0
  348. package/lib/generated/serverlessapplicationrepository.js +245 -0
  349. package/lib/generated/servermigrationservice.js +433 -0
  350. package/lib/generated/servicecatalog.js +1674 -0
  351. package/lib/generated/serviceprovidingmanagedprivatenetworks.js +508 -0
  352. package/lib/generated/servicequotas.js +325 -0
  353. package/lib/generated/ses.js +1256 -0
  354. package/lib/generated/sessionmanagermessagegatewayservice.js +102 -0
  355. package/lib/generated/shield.js +589 -0
  356. package/lib/generated/signer.js +369 -0
  357. package/lib/generated/simpledb.js +153 -0
  358. package/lib/generated/simpleemailservicev2.js +1790 -0
  359. package/lib/generated/simpleworkflowservice.js +992 -0
  360. package/lib/generated/simspaceweaver.js +282 -0
  361. package/lib/generated/snowball.js +327 -0
  362. package/lib/generated/snowdevicemanagement.js +274 -0
  363. package/lib/generated/sns.js +605 -0
  364. package/lib/generated/sqlworkbench.js +1017 -0
  365. package/lib/generated/sqs.js +328 -0
  366. package/lib/generated/stepfunctions.js +744 -0
  367. package/lib/generated/storagegateway.js +1304 -0
  368. package/lib/generated/supplychain.js +273 -0
  369. package/lib/generated/support.js +303 -0
  370. package/lib/generated/supportappinslack.js +171 -0
  371. package/lib/generated/supportplans.js +72 -0
  372. package/lib/generated/sustainability.js +37 -0
  373. package/lib/generated/systemsmanager.js +2419 -0
  374. package/lib/generated/systemsmanagerforsap.js +376 -0
  375. package/lib/generated/systemsmanagerguiconnect.js +61 -0
  376. package/lib/generated/systemsmanagerincidentmanager.js +505 -0
  377. package/lib/generated/systemsmanagerincidentmanagercontacts.js +619 -0
  378. package/lib/generated/tageditor.js +64 -0
  379. package/lib/generated/taxsettings.js +171 -0
  380. package/lib/generated/telconetworkbuilder.js +625 -0
  381. package/lib/generated/textract.js +427 -0
  382. package/lib/generated/timestream.js +648 -0
  383. package/lib/generated/tiros.js +83 -0
  384. package/lib/generated/transcribe.js +917 -0
  385. package/lib/generated/transferfamily.js +948 -0
  386. package/lib/generated/translate.js +338 -0
  387. package/lib/generated/trustedadvisor.js +605 -0
  388. package/lib/generated/usernotifications.js +363 -0
  389. package/lib/generated/usernotificationscontacts.js +204 -0
  390. package/lib/generated/verifiedaccess.js +37 -0
  391. package/lib/generated/verifiedpermissions.js +306 -0
  392. package/lib/generated/vpclattice.js +1187 -0
  393. package/lib/generated/vpclatticeservices.js +171 -0
  394. package/lib/generated/waf.js +1122 -0
  395. package/lib/generated/wafregional.js +1192 -0
  396. package/lib/generated/wafv2.js +964 -0
  397. package/lib/generated/well-architectedtool.js +967 -0
  398. package/lib/generated/wickr.js +179 -0
  399. package/lib/generated/workdocs.js +679 -0
  400. package/lib/generated/worklink.js +491 -0
  401. package/lib/generated/workmail.js +1593 -0
  402. package/lib/generated/workmailmessageflow.js +65 -0
  403. package/lib/generated/workspaces.js +1141 -0
  404. package/lib/generated/workspacesapplicationmanager.js +37 -0
  405. package/lib/generated/workspacesthinclient.js +312 -0
  406. package/lib/generated/workspacesweb.js +936 -0
  407. package/lib/generated/x-ray.js +517 -0
  408. package/lib/index.js +20 -0
  409. package/lib/shared/access-level.js +46 -0
  410. package/lib/shared/all.js +21 -0
  411. package/lib/shared/index.js +20 -0
  412. package/lib/shared/operators.js +247 -0
  413. package/lib/shared/policy-statement/1-base.js +38 -0
  414. package/lib/shared/policy-statement/2-conditions.js +777 -0
  415. package/lib/shared/policy-statement/3-actions.js +288 -0
  416. package/lib/shared/policy-statement/4-resources.js +112 -0
  417. package/lib/shared/policy-statement/5-effect.js +51 -0
  418. package/lib/shared/policy-statement/6-principals.js +207 -0
  419. package/lib/shared/policy-statement/9-final.js +22 -0
  420. package/lib/shared/policy-statement/index.js +19 -0
  421. package/package.json +2 -2
  422. package/tsconfig.test-cdk-iam-floyd.json +0 -5
  423. package/tsconfig.test-iam-floyd.json +0 -5
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.allowEc2InstanceDeleteByOwner = void 0;
4
+ const statement = require("..");
5
+ /**
6
+ * Allows stopping EC2 instance only for the user who started them
7
+ *
8
+ * @param tag The tag name, where the user information will be stored - default: `Owner`
9
+ */
10
+ function allowEc2InstanceDeleteByOwner(tag) {
11
+ const tagName = tag || 'Owner';
12
+ return [
13
+ new statement.Ec2()
14
+ .allow()
15
+ .toStartInstances()
16
+ .ifAwsRequestTag(tagName, '${aws:username}'),
17
+ new statement.Ec2()
18
+ .allow()
19
+ .toStopInstances()
20
+ .ifResourceTag(tagName, '${aws:username}'),
21
+ ];
22
+ }
23
+ exports.allowEc2InstanceDeleteByOwner = allowEc2InstanceDeleteByOwner;
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxsb3dFYzJJbnN0YW5jZURlbGV0ZUJ5T3duZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJhbGxvd0VjMkluc3RhbmNlRGVsZXRlQnlPd25lci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxnQ0FBZ0M7QUFFaEM7Ozs7R0FJRztBQUVILFNBQWdCLDZCQUE2QixDQUFDLEdBQVk7SUFDeEQsTUFBTSxPQUFPLEdBQUcsR0FBRyxJQUFJLE9BQU8sQ0FBQztJQUMvQixPQUFPO1FBQ0wsSUFBSSxTQUFTLENBQUMsR0FBRyxFQUFFO2FBQ2hCLEtBQUssRUFBRTthQUNQLGdCQUFnQixFQUFFO2FBQ2xCLGVBQWUsQ0FBQyxPQUFPLEVBQUUsaUJBQWlCLENBQUM7UUFDOUMsSUFBSSxTQUFTLENBQUMsR0FBRyxFQUFFO2FBQ2hCLEtBQUssRUFBRTthQUNQLGVBQWUsRUFBRTthQUNqQixhQUFhLENBQUMsT0FBTyxFQUFFLGlCQUFpQixDQUFDO0tBQzdDLENBQUM7QUFDSixDQUFDO0FBWkQsc0VBWUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBzdGF0ZW1lbnQgZnJvbSAnLi4nO1xuXG4vKipcbiAqIEFsbG93cyBzdG9wcGluZyBFQzIgaW5zdGFuY2Ugb25seSBmb3IgdGhlIHVzZXIgd2hvIHN0YXJ0ZWQgdGhlbVxuICpcbiAqIEBwYXJhbSB0YWcgVGhlIHRhZyBuYW1lLCB3aGVyZSB0aGUgdXNlciBpbmZvcm1hdGlvbiB3aWxsIGJlIHN0b3JlZCAtIGRlZmF1bHQ6IGBPd25lcmBcbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gYWxsb3dFYzJJbnN0YW5jZURlbGV0ZUJ5T3duZXIodGFnPzogc3RyaW5nKSB7XG4gIGNvbnN0IHRhZ05hbWUgPSB0YWcgfHwgJ093bmVyJztcbiAgcmV0dXJuIFtcbiAgICBuZXcgc3RhdGVtZW50LkVjMigpXG4gICAgICAuYWxsb3coKVxuICAgICAgLnRvU3RhcnRJbnN0YW5jZXMoKVxuICAgICAgLmlmQXdzUmVxdWVzdFRhZyh0YWdOYW1lLCAnJHthd3M6dXNlcm5hbWV9JyksXG4gICAgbmV3IHN0YXRlbWVudC5FYzIoKVxuICAgICAgLmFsbG93KClcbiAgICAgIC50b1N0b3BJbnN0YW5jZXMoKVxuICAgICAgLmlmUmVzb3VyY2VUYWcodGFnTmFtZSwgJyR7YXdzOnVzZXJuYW1lfScpLFxuICBdO1xufVxuIl19
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Collection = void 0;
4
+ const allowEc2InstanceDeleteByOwner_1 = require("./allowEc2InstanceDeleteByOwner");
5
+ class Collection {
6
+ allowEc2InstanceDeleteByOwner() {
7
+ return (0, allowEc2InstanceDeleteByOwner_1.allowEc2InstanceDeleteByOwner)();
8
+ }
9
+ }
10
+ exports.Collection = Collection;
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtRkFBZ0Y7QUFFaEYsTUFBYSxVQUFVO0lBQ2QsNkJBQTZCO1FBQ2xDLE9BQU8sSUFBQSw2REFBNkIsR0FBRSxDQUFDO0lBQ3pDLENBQUM7Q0FDRjtBQUpELGdDQUlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYWxsb3dFYzJJbnN0YW5jZURlbGV0ZUJ5T3duZXIgfSBmcm9tICcuL2FsbG93RWMySW5zdGFuY2VEZWxldGVCeU93bmVyJztcblxuZXhwb3J0IGNsYXNzIENvbGxlY3Rpb24ge1xuICBwdWJsaWMgYWxsb3dFYzJJbnN0YW5jZURlbGV0ZUJ5T3duZXIoKSB7XG4gICAgcmV0dXJuIGFsbG93RWMySW5zdGFuY2VEZWxldGVCeU93bmVyKCk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,270 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Account = void 0;
4
+ const shared_1 = require("../shared");
5
+ /**
6
+ * Statement provider for service [account](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsaccountmanagement.html).
7
+ *
8
+ * @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement
9
+ */
10
+ class Account extends shared_1.PolicyStatement {
11
+ /**
12
+ * Statement provider for service [account](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsaccountmanagement.html).
13
+ *
14
+ * @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement
15
+ */
16
+ constructor(sid) {
17
+ super(sid);
18
+ this.servicePrefix = 'account';
19
+ this.accessLevelList = {
20
+ Write: [
21
+ 'CloseAccount',
22
+ 'DeleteAlternateContact',
23
+ 'DisableRegion',
24
+ 'EnableRegion',
25
+ 'PutAlternateContact',
26
+ 'PutChallengeQuestions',
27
+ 'PutContactInformation'
28
+ ],
29
+ Read: [
30
+ 'GetAccountInformation',
31
+ 'GetAlternateContact',
32
+ 'GetChallengeQuestions',
33
+ 'GetContactInformation',
34
+ 'GetRegionOptStatus'
35
+ ],
36
+ List: [
37
+ 'ListRegions'
38
+ ]
39
+ };
40
+ }
41
+ /**
42
+ * Grants permission to close an account
43
+ *
44
+ * Access Level: Write
45
+ *
46
+ * https://docs.aws.amazon.com/accounts/latest/reference/security_account-permissions-ref.html
47
+ */
48
+ toCloseAccount() {
49
+ return this.to('CloseAccount');
50
+ }
51
+ /**
52
+ * Grants permission to delete the alternate contacts for an account
53
+ *
54
+ * Access Level: Write
55
+ *
56
+ * Possible conditions:
57
+ * - .ifAlternateContactTypes()
58
+ *
59
+ * https://docs.aws.amazon.com/accounts/latest/reference/API_DeleteAlternateContact.html
60
+ */
61
+ toDeleteAlternateContact() {
62
+ return this.to('DeleteAlternateContact');
63
+ }
64
+ /**
65
+ * Grants permission to disable use of a Region
66
+ *
67
+ * Access Level: Write
68
+ *
69
+ * Possible conditions:
70
+ * - .ifTargetRegion()
71
+ *
72
+ * https://docs.aws.amazon.com/accounts/latest/reference/API_DisableRegion.html
73
+ */
74
+ toDisableRegion() {
75
+ return this.to('DisableRegion');
76
+ }
77
+ /**
78
+ * Grants permission to enable use of a Region
79
+ *
80
+ * Access Level: Write
81
+ *
82
+ * Possible conditions:
83
+ * - .ifTargetRegion()
84
+ *
85
+ * https://docs.aws.amazon.com/accounts/latest/reference/API_EnableRegion.html
86
+ */
87
+ toEnableRegion() {
88
+ return this.to('EnableRegion');
89
+ }
90
+ /**
91
+ * Grants permission to retrieve the account information for an account
92
+ *
93
+ * Access Level: Read
94
+ *
95
+ * https://docs.aws.amazon.com/accounts/latest/reference/security_account-permissions-ref.html
96
+ */
97
+ toGetAccountInformation() {
98
+ return this.to('GetAccountInformation');
99
+ }
100
+ /**
101
+ * Grants permission to retrieve the alternate contacts for an account
102
+ *
103
+ * Access Level: Read
104
+ *
105
+ * Possible conditions:
106
+ * - .ifAlternateContactTypes()
107
+ *
108
+ * https://docs.aws.amazon.com/accounts/latest/reference/API_GetAlternateContact.html
109
+ */
110
+ toGetAlternateContact() {
111
+ return this.to('GetAlternateContact');
112
+ }
113
+ /**
114
+ * Grants permission to retrieve the challenge questions for an account
115
+ *
116
+ * Access Level: Read
117
+ *
118
+ * https://docs.aws.amazon.com/accounts/latest/reference/security_account-permissions-ref.html
119
+ */
120
+ toGetChallengeQuestions() {
121
+ return this.to('GetChallengeQuestions');
122
+ }
123
+ /**
124
+ * Grants permission to retrieve the primary contact information for an account
125
+ *
126
+ * Access Level: Read
127
+ *
128
+ * https://docs.aws.amazon.com/accounts/latest/reference/API_GetContactInformation.html
129
+ */
130
+ toGetContactInformation() {
131
+ return this.to('GetContactInformation');
132
+ }
133
+ /**
134
+ * Grants permission to get the opt-in status of a Region
135
+ *
136
+ * Access Level: Read
137
+ *
138
+ * Possible conditions:
139
+ * - .ifTargetRegion()
140
+ *
141
+ * https://docs.aws.amazon.com/accounts/latest/reference/API_GetRegionOptStatus.html
142
+ */
143
+ toGetRegionOptStatus() {
144
+ return this.to('GetRegionOptStatus');
145
+ }
146
+ /**
147
+ * Grants permission to list the available Regions
148
+ *
149
+ * Access Level: List
150
+ *
151
+ * https://docs.aws.amazon.com/accounts/latest/reference/API_ListRegions.html
152
+ */
153
+ toListRegions() {
154
+ return this.to('ListRegions');
155
+ }
156
+ /**
157
+ * Grants permission to modify the alternate contacts for an account
158
+ *
159
+ * Access Level: Write
160
+ *
161
+ * Possible conditions:
162
+ * - .ifAlternateContactTypes()
163
+ *
164
+ * https://docs.aws.amazon.com/accounts/latest/reference/API_PutAlternateContact.html
165
+ */
166
+ toPutAlternateContact() {
167
+ return this.to('PutAlternateContact');
168
+ }
169
+ /**
170
+ * Grants permission to modify the challenge questions for an account
171
+ *
172
+ * Access Level: Write
173
+ *
174
+ * https://docs.aws.amazon.com/accounts/latest/reference/security_account-permissions-ref.html
175
+ */
176
+ toPutChallengeQuestions() {
177
+ return this.to('PutChallengeQuestions');
178
+ }
179
+ /**
180
+ * Grants permission to update the primary contact information for an account
181
+ *
182
+ * Access Level: Write
183
+ *
184
+ * https://docs.aws.amazon.com/accounts/latest/reference/API_PutContactInformation.html
185
+ */
186
+ toPutContactInformation() {
187
+ return this.to('PutContactInformation');
188
+ }
189
+ /**
190
+ * Adds a resource of type account to the statement
191
+ *
192
+ * https://docs.aws.amazon.com/accounts/latest/reference/security_iam_service-with-iam.html#security_iam_service-with-iam-id-based-policies-resources
193
+ *
194
+ * @param account - Account of the resource; defaults to empty string: all accounts.
195
+ * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition.
196
+ */
197
+ onAccount(account, partition) {
198
+ return this.on(`arn:${partition || Account.defaultPartition}:account::${account || '*'}:account`);
199
+ }
200
+ /**
201
+ * Adds a resource of type accountInOrganization to the statement
202
+ *
203
+ * https://docs.aws.amazon.com/accounts/latest/reference/security_iam_service-with-iam.html#security_iam_service-with-iam-id-based-policies-resources
204
+ *
205
+ * @param managementAccountId - Identifier for the managementAccountId.
206
+ * @param organizationId - Identifier for the organizationId.
207
+ * @param memberAccountId - Identifier for the memberAccountId.
208
+ * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition.
209
+ */
210
+ onAccountInOrganization(managementAccountId, organizationId, memberAccountId, partition) {
211
+ return this.on(`arn:${partition || Account.defaultPartition}:account::${managementAccountId}:account/o-${organizationId}/${memberAccountId}`);
212
+ }
213
+ /**
214
+ * Filters access by the resource path for an account in an organization
215
+ *
216
+ * https://docs.aws.amazon.com/accounts/latest/reference/security_iam_service-with-iam.html#security_iam_service-with-iam-id-based-policies-conditionkeys
217
+ *
218
+ * @param value The value(s) to check
219
+ * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike`
220
+ */
221
+ ifAccountResourceOrgPaths(value, operator) {
222
+ return this.if(`AccountResourceOrgPaths`, value, operator || 'StringLike');
223
+ }
224
+ /**
225
+ * Filters access by resource tags for an account in an organization
226
+ *
227
+ * https://docs.aws.amazon.com/accounts/latest/reference/security_iam_service-with-iam.html#security_iam_service-with-iam-id-based-policies-conditionkeys
228
+ *
229
+ * @param tagKey The tag key to check
230
+ * @param value The value(s) to check
231
+ * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike`
232
+ */
233
+ ifAccountResourceOrgTags(tagKey, value, operator) {
234
+ return this.if(`AccountResourceOrgTags/${tagKey}`, value, operator || 'StringLike');
235
+ }
236
+ /**
237
+ * Filters access by alternate contact types
238
+ *
239
+ * https://docs.aws.amazon.com/accounts/latest/reference/security_iam_service-with-iam.html#security_iam_service-with-iam-id-based-policies-conditionkeys
240
+ *
241
+ * Applies to actions:
242
+ * - .toDeleteAlternateContact()
243
+ * - .toGetAlternateContact()
244
+ * - .toPutAlternateContact()
245
+ *
246
+ * @param value The value(s) to check
247
+ * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike`
248
+ */
249
+ ifAlternateContactTypes(value, operator) {
250
+ return this.if(`AlternateContactTypes`, value, operator || 'StringLike');
251
+ }
252
+ /**
253
+ * Filters access by a list of Regions. Enables or disables all the Regions specified here
254
+ *
255
+ * https://docs.aws.amazon.com/accounts/latest/reference/security_iam_service-with-iam.html#security_iam_service-with-iam-id-based-policies-conditionkeys
256
+ *
257
+ * Applies to actions:
258
+ * - .toDisableRegion()
259
+ * - .toEnableRegion()
260
+ * - .toGetRegionOptStatus()
261
+ *
262
+ * @param value The value(s) to check
263
+ * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike`
264
+ */
265
+ ifTargetRegion(value, operator) {
266
+ return this.if(`TargetRegion`, value, operator || 'StringLike');
267
+ }
268
+ }
269
+ exports.Account = Account;
270
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudG1hbmFnZW1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJhY2NvdW50bWFuYWdlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSxzQ0FBc0Q7QUFFdEQ7Ozs7R0FJRztBQUNILE1BQWEsT0FBUSxTQUFRLHdCQUFlO0lBRzFDOzs7O09BSUc7SUFDSCxZQUFZLEdBQVk7UUFDdEIsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBUk4sa0JBQWEsR0FBRyxTQUFTLENBQUM7UUE0S3ZCLG9CQUFlLEdBQW9CO1lBQzNDLEtBQUssRUFBRTtnQkFDTCxjQUFjO2dCQUNkLHdCQUF3QjtnQkFDeEIsZUFBZTtnQkFDZixjQUFjO2dCQUNkLHFCQUFxQjtnQkFDckIsdUJBQXVCO2dCQUN2Qix1QkFBdUI7YUFDeEI7WUFDRCxJQUFJLEVBQUU7Z0JBQ0osdUJBQXVCO2dCQUN2QixxQkFBcUI7Z0JBQ3JCLHVCQUF1QjtnQkFDdkIsdUJBQXVCO2dCQUN2QixvQkFBb0I7YUFDckI7WUFDRCxJQUFJLEVBQUU7Z0JBQ0osYUFBYTthQUNkO1NBQ0YsQ0FBQztJQXZMRixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksY0FBYztRQUNuQixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVEOzs7Ozs7Ozs7T0FTRztJQUNJLHdCQUF3QjtRQUM3QixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsd0JBQXdCLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQ7Ozs7Ozs7OztPQVNHO0lBQ0ksZUFBZTtRQUNwQixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVEOzs7Ozs7Ozs7T0FTRztJQUNJLGNBQWM7UUFDbkIsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSx1QkFBdUI7UUFDNUIsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLHVCQUF1QixDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVEOzs7Ozs7Ozs7T0FTRztJQUNJLHFCQUFxQjtRQUMxQixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksdUJBQXVCO1FBQzVCLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSx1QkFBdUI7UUFDNUIsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLHVCQUF1QixDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVEOzs7Ozs7Ozs7T0FTRztJQUNJLG9CQUFvQjtRQUN6QixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksYUFBYTtRQUNsQixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVEOzs7Ozs7Ozs7T0FTRztJQUNJLHFCQUFxQjtRQUMxQixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksdUJBQXVCO1FBQzVCLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSx1QkFBdUI7UUFDNUIsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLHVCQUF1QixDQUFDLENBQUM7SUFDMUMsQ0FBQztJQXdCRDs7Ozs7OztPQU9HO0lBQ0ksU0FBUyxDQUFDLE9BQWdCLEVBQUUsU0FBa0I7UUFDbkQsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLE9BQVEsU0FBUyxJQUFJLE9BQU8sQ0FBQyxnQkFBaUIsYUFBYyxPQUFPLElBQUksR0FBSSxVQUFVLENBQUMsQ0FBQztJQUN4RyxDQUFDO0lBRUQ7Ozs7Ozs7OztPQVNHO0lBQ0ksdUJBQXVCLENBQUMsbUJBQTJCLEVBQUUsY0FBc0IsRUFBRSxlQUF1QixFQUFFLFNBQWtCO1FBQzdILE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxPQUFRLFNBQVMsSUFBSSxPQUFPLENBQUMsZ0JBQWlCLGFBQWMsbUJBQW9CLGNBQWUsY0FBZSxJQUFLLGVBQWdCLEVBQUUsQ0FBQyxDQUFDO0lBQ3hKLENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0kseUJBQXlCLENBQUMsS0FBd0IsRUFBRSxRQUE0QjtRQUNyRixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMseUJBQXlCLEVBQUUsS0FBSyxFQUFFLFFBQVEsSUFBSSxZQUFZLENBQUMsQ0FBQztJQUM3RSxDQUFDO0lBRUQ7Ozs7Ozs7O09BUUc7SUFDSSx3QkFBd0IsQ0FBQyxNQUFjLEVBQUUsS0FBd0IsRUFBRSxRQUE0QjtRQUNwRyxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsMEJBQTJCLE1BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxRQUFRLElBQUksWUFBWSxDQUFDLENBQUM7SUFDeEYsQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7T0FZRztJQUNJLHVCQUF1QixDQUFDLEtBQXdCLEVBQUUsUUFBNEI7UUFDbkYsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLHVCQUF1QixFQUFFLEtBQUssRUFBRSxRQUFRLElBQUksWUFBWSxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7T0FZRztJQUNJLGNBQWMsQ0FBQyxLQUF3QixFQUFFLFFBQTRCO1FBQzFFLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxjQUFjLEVBQUUsS0FBSyxFQUFFLFFBQVEsSUFBSSxZQUFZLENBQUMsQ0FBQztJQUNsRSxDQUFDO0NBQ0Y7QUF2UkQsMEJBdVJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWNjZXNzTGV2ZWxMaXN0IH0gZnJvbSAnLi4vc2hhcmVkL2FjY2Vzcy1sZXZlbCc7XG5pbXBvcnQgeyBQb2xpY3lTdGF0ZW1lbnQsIE9wZXJhdG9yIH0gZnJvbSAnLi4vc2hhcmVkJztcblxuLyoqXG4gKiBTdGF0ZW1lbnQgcHJvdmlkZXIgZm9yIHNlcnZpY2UgW2FjY291bnRdKGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9zZXJ2aWNlLWF1dGhvcml6YXRpb24vbGF0ZXN0L3JlZmVyZW5jZS9saXN0X2F3c2FjY291bnRtYW5hZ2VtZW50Lmh0bWwpLlxuICpcbiAqIEBwYXJhbSBzaWQgW1NJRF0oaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0lBTS9sYXRlc3QvVXNlckd1aWRlL3JlZmVyZW5jZV9wb2xpY2llc19lbGVtZW50c19zaWQuaHRtbCkgb2YgdGhlIHN0YXRlbWVudFxuICovXG5leHBvcnQgY2xhc3MgQWNjb3VudCBleHRlbmRzIFBvbGljeVN0YXRlbWVudCB7XG4gIHB1YmxpYyBzZXJ2aWNlUHJlZml4ID0gJ2FjY291bnQnO1xuXG4gIC8qKlxuICAgKiBTdGF0ZW1lbnQgcHJvdmlkZXIgZm9yIHNlcnZpY2UgW2FjY291bnRdKGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9zZXJ2aWNlLWF1dGhvcml6YXRpb24vbGF0ZXN0L3JlZmVyZW5jZS9saXN0X2F3c2FjY291bnRtYW5hZ2VtZW50Lmh0bWwpLlxuICAgKlxuICAgKiBAcGFyYW0gc2lkIFtTSURdKGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9JQU0vbGF0ZXN0L1VzZXJHdWlkZS9yZWZlcmVuY2VfcG9saWNpZXNfZWxlbWVudHNfc2lkLmh0bWwpIG9mIHRoZSBzdGF0ZW1lbnRcbiAgICovXG4gIGNvbnN0cnVjdG9yKHNpZD86IHN0cmluZykge1xuICAgIHN1cGVyKHNpZCk7XG4gIH1cblxuICAvKipcbiAgICogR3JhbnRzIHBlcm1pc3Npb24gdG8gY2xvc2UgYW4gYWNjb3VudFxuICAgKlxuICAgKiBBY2Nlc3MgTGV2ZWw6IFdyaXRlXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hY2NvdW50cy9sYXRlc3QvcmVmZXJlbmNlL3NlY3VyaXR5X2FjY291bnQtcGVybWlzc2lvbnMtcmVmLmh0bWxcbiAgICovXG4gIHB1YmxpYyB0b0Nsb3NlQWNjb3VudCgpIHtcbiAgICByZXR1cm4gdGhpcy50bygnQ2xvc2VBY2NvdW50Jyk7XG4gIH1cblxuICAvKipcbiAgICogR3JhbnRzIHBlcm1pc3Npb24gdG8gZGVsZXRlIHRoZSBhbHRlcm5hdGUgY29udGFjdHMgZm9yIGFuIGFjY291bnRcbiAgICpcbiAgICogQWNjZXNzIExldmVsOiBXcml0ZVxuICAgKlxuICAgKiBQb3NzaWJsZSBjb25kaXRpb25zOlxuICAgKiAtIC5pZkFsdGVybmF0ZUNvbnRhY3RUeXBlcygpXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hY2NvdW50cy9sYXRlc3QvcmVmZXJlbmNlL0FQSV9EZWxldGVBbHRlcm5hdGVDb250YWN0Lmh0bWxcbiAgICovXG4gIHB1YmxpYyB0b0RlbGV0ZUFsdGVybmF0ZUNvbnRhY3QoKSB7XG4gICAgcmV0dXJuIHRoaXMudG8oJ0RlbGV0ZUFsdGVybmF0ZUNvbnRhY3QnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byBkaXNhYmxlIHVzZSBvZiBhIFJlZ2lvblxuICAgKlxuICAgKiBBY2Nlc3MgTGV2ZWw6IFdyaXRlXG4gICAqXG4gICAqIFBvc3NpYmxlIGNvbmRpdGlvbnM6XG4gICAqIC0gLmlmVGFyZ2V0UmVnaW9uKClcbiAgICpcbiAgICogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2FjY291bnRzL2xhdGVzdC9yZWZlcmVuY2UvQVBJX0Rpc2FibGVSZWdpb24uaHRtbFxuICAgKi9cbiAgcHVibGljIHRvRGlzYWJsZVJlZ2lvbigpIHtcbiAgICByZXR1cm4gdGhpcy50bygnRGlzYWJsZVJlZ2lvbicpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGVuYWJsZSB1c2Ugb2YgYSBSZWdpb25cbiAgICpcbiAgICogQWNjZXNzIExldmVsOiBXcml0ZVxuICAgKlxuICAgKiBQb3NzaWJsZSBjb25kaXRpb25zOlxuICAgKiAtIC5pZlRhcmdldFJlZ2lvbigpXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hY2NvdW50cy9sYXRlc3QvcmVmZXJlbmNlL0FQSV9FbmFibGVSZWdpb24uaHRtbFxuICAgKi9cbiAgcHVibGljIHRvRW5hYmxlUmVnaW9uKCkge1xuICAgIHJldHVybiB0aGlzLnRvKCdFbmFibGVSZWdpb24nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byByZXRyaWV2ZSB0aGUgYWNjb3VudCBpbmZvcm1hdGlvbiBmb3IgYW4gYWNjb3VudFxuICAgKlxuICAgKiBBY2Nlc3MgTGV2ZWw6IFJlYWRcbiAgICpcbiAgICogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2FjY291bnRzL2xhdGVzdC9yZWZlcmVuY2Uvc2VjdXJpdHlfYWNjb3VudC1wZXJtaXNzaW9ucy1yZWYuaHRtbFxuICAgKi9cbiAgcHVibGljIHRvR2V0QWNjb3VudEluZm9ybWF0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLnRvKCdHZXRBY2NvdW50SW5mb3JtYXRpb24nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byByZXRyaWV2ZSB0aGUgYWx0ZXJuYXRlIGNvbnRhY3RzIGZvciBhbiBhY2NvdW50XG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogUmVhZFxuICAgKlxuICAgKiBQb3NzaWJsZSBjb25kaXRpb25zOlxuICAgKiAtIC5pZkFsdGVybmF0ZUNvbnRhY3RUeXBlcygpXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hY2NvdW50cy9sYXRlc3QvcmVmZXJlbmNlL0FQSV9HZXRBbHRlcm5hdGVDb250YWN0Lmh0bWxcbiAgICovXG4gIHB1YmxpYyB0b0dldEFsdGVybmF0ZUNvbnRhY3QoKSB7XG4gICAgcmV0dXJuIHRoaXMudG8oJ0dldEFsdGVybmF0ZUNvbnRhY3QnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byByZXRyaWV2ZSB0aGUgY2hhbGxlbmdlIHF1ZXN0aW9ucyBmb3IgYW4gYWNjb3VudFxuICAgKlxuICAgKiBBY2Nlc3MgTGV2ZWw6IFJlYWRcbiAgICpcbiAgICogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2FjY291bnRzL2xhdGVzdC9yZWZlcmVuY2Uvc2VjdXJpdHlfYWNjb3VudC1wZXJtaXNzaW9ucy1yZWYuaHRtbFxuICAgKi9cbiAgcHVibGljIHRvR2V0Q2hhbGxlbmdlUXVlc3Rpb25zKCkge1xuICAgIHJldHVybiB0aGlzLnRvKCdHZXRDaGFsbGVuZ2VRdWVzdGlvbnMnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byByZXRyaWV2ZSB0aGUgcHJpbWFyeSBjb250YWN0IGluZm9ybWF0aW9uIGZvciBhbiBhY2NvdW50XG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogUmVhZFxuICAgKlxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vYWNjb3VudHMvbGF0ZXN0L3JlZmVyZW5jZS9BUElfR2V0Q29udGFjdEluZm9ybWF0aW9uLmh0bWxcbiAgICovXG4gIHB1YmxpYyB0b0dldENvbnRhY3RJbmZvcm1hdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy50bygnR2V0Q29udGFjdEluZm9ybWF0aW9uJyk7XG4gIH1cblxuICAvKipcbiAgICogR3JhbnRzIHBlcm1pc3Npb24gdG8gZ2V0IHRoZSBvcHQtaW4gc3RhdHVzIG9mIGEgUmVnaW9uXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogUmVhZFxuICAgKlxuICAgKiBQb3NzaWJsZSBjb25kaXRpb25zOlxuICAgKiAtIC5pZlRhcmdldFJlZ2lvbigpXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hY2NvdW50cy9sYXRlc3QvcmVmZXJlbmNlL0FQSV9HZXRSZWdpb25PcHRTdGF0dXMuaHRtbFxuICAgKi9cbiAgcHVibGljIHRvR2V0UmVnaW9uT3B0U3RhdHVzKCkge1xuICAgIHJldHVybiB0aGlzLnRvKCdHZXRSZWdpb25PcHRTdGF0dXMnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byBsaXN0IHRoZSBhdmFpbGFibGUgUmVnaW9uc1xuICAgKlxuICAgKiBBY2Nlc3MgTGV2ZWw6IExpc3RcbiAgICpcbiAgICogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2FjY291bnRzL2xhdGVzdC9yZWZlcmVuY2UvQVBJX0xpc3RSZWdpb25zLmh0bWxcbiAgICovXG4gIHB1YmxpYyB0b0xpc3RSZWdpb25zKCkge1xuICAgIHJldHVybiB0aGlzLnRvKCdMaXN0UmVnaW9ucycpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwZXJtaXNzaW9uIHRvIG1vZGlmeSB0aGUgYWx0ZXJuYXRlIGNvbnRhY3RzIGZvciBhbiBhY2NvdW50XG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogV3JpdGVcbiAgICpcbiAgICogUG9zc2libGUgY29uZGl0aW9uczpcbiAgICogLSAuaWZBbHRlcm5hdGVDb250YWN0VHlwZXMoKVxuICAgKlxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vYWNjb3VudHMvbGF0ZXN0L3JlZmVyZW5jZS9BUElfUHV0QWx0ZXJuYXRlQ29udGFjdC5odG1sXG4gICAqL1xuICBwdWJsaWMgdG9QdXRBbHRlcm5hdGVDb250YWN0KCkge1xuICAgIHJldHVybiB0aGlzLnRvKCdQdXRBbHRlcm5hdGVDb250YWN0Jyk7XG4gIH1cblxuICAvKipcbiAgICogR3JhbnRzIHBlcm1pc3Npb24gdG8gbW9kaWZ5IHRoZSBjaGFsbGVuZ2UgcXVlc3Rpb25zIGZvciBhbiBhY2NvdW50XG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogV3JpdGVcbiAgICpcbiAgICogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2FjY291bnRzL2xhdGVzdC9yZWZlcmVuY2Uvc2VjdXJpdHlfYWNjb3VudC1wZXJtaXNzaW9ucy1yZWYuaHRtbFxuICAgKi9cbiAgcHVibGljIHRvUHV0Q2hhbGxlbmdlUXVlc3Rpb25zKCkge1xuICAgIHJldHVybiB0aGlzLnRvKCdQdXRDaGFsbGVuZ2VRdWVzdGlvbnMnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byB1cGRhdGUgdGhlIHByaW1hcnkgY29udGFjdCBpbmZvcm1hdGlvbiBmb3IgYW4gYWNjb3VudFxuICAgKlxuICAgKiBBY2Nlc3MgTGV2ZWw6IFdyaXRlXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hY2NvdW50cy9sYXRlc3QvcmVmZXJlbmNlL0FQSV9QdXRDb250YWN0SW5mb3JtYXRpb24uaHRtbFxuICAgKi9cbiAgcHVibGljIHRvUHV0Q29udGFjdEluZm9ybWF0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLnRvKCdQdXRDb250YWN0SW5mb3JtYXRpb24nKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhY2Nlc3NMZXZlbExpc3Q6IEFjY2Vzc0xldmVsTGlzdCA9IHtcbiAgICBXcml0ZTogW1xuICAgICAgJ0Nsb3NlQWNjb3VudCcsXG4gICAgICAnRGVsZXRlQWx0ZXJuYXRlQ29udGFjdCcsXG4gICAgICAnRGlzYWJsZVJlZ2lvbicsXG4gICAgICAnRW5hYmxlUmVnaW9uJyxcbiAgICAgICdQdXRBbHRlcm5hdGVDb250YWN0JyxcbiAgICAgICdQdXRDaGFsbGVuZ2VRdWVzdGlvbnMnLFxuICAgICAgJ1B1dENvbnRhY3RJbmZvcm1hdGlvbidcbiAgICBdLFxuICAgIFJlYWQ6IFtcbiAgICAgICdHZXRBY2NvdW50SW5mb3JtYXRpb24nLFxuICAgICAgJ0dldEFsdGVybmF0ZUNvbnRhY3QnLFxuICAgICAgJ0dldENoYWxsZW5nZVF1ZXN0aW9ucycsXG4gICAgICAnR2V0Q29udGFjdEluZm9ybWF0aW9uJyxcbiAgICAgICdHZXRSZWdpb25PcHRTdGF0dXMnXG4gICAgXSxcbiAgICBMaXN0OiBbXG4gICAgICAnTGlzdFJlZ2lvbnMnXG4gICAgXVxuICB9O1xuXG4gIC8qKlxuICAgKiBBZGRzIGEgcmVzb3VyY2Ugb2YgdHlwZSBhY2NvdW50IHRvIHRoZSBzdGF0ZW1lbnRcbiAgICpcbiAgICogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2FjY291bnRzL2xhdGVzdC9yZWZlcmVuY2Uvc2VjdXJpdHlfaWFtX3NlcnZpY2Utd2l0aC1pYW0uaHRtbCNzZWN1cml0eV9pYW1fc2VydmljZS13aXRoLWlhbS1pZC1iYXNlZC1wb2xpY2llcy1yZXNvdXJjZXNcbiAgICpcbiAgICogQHBhcmFtIGFjY291bnQgLSBBY2NvdW50IG9mIHRoZSByZXNvdXJjZTsgZGVmYXVsdHMgdG8gZW1wdHkgc3RyaW5nOiBhbGwgYWNjb3VudHMuXG4gICAqIEBwYXJhbSBwYXJ0aXRpb24gLSBQYXJ0aXRpb24gb2YgdGhlIEFXUyBhY2NvdW50IFthd3MsIGF3cy1jbiwgYXdzLXVzLWdvdl07IGRlZmF1bHRzIHRvIGBhd3NgLCB1bmxlc3MgdXNpbmcgdGhlIENESywgd2hlcmUgdGhlIGRlZmF1bHQgaXMgdGhlIGN1cnJlbnQgU3RhY2sncyBwYXJ0aXRpb24uXG4gICAqL1xuICBwdWJsaWMgb25BY2NvdW50KGFjY291bnQ/OiBzdHJpbmcsIHBhcnRpdGlvbj86IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLm9uKGBhcm46JHsgcGFydGl0aW9uIHx8IEFjY291bnQuZGVmYXVsdFBhcnRpdGlvbiB9OmFjY291bnQ6OiR7IGFjY291bnQgfHwgJyonIH06YWNjb3VudGApO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSByZXNvdXJjZSBvZiB0eXBlIGFjY291bnRJbk9yZ2FuaXphdGlvbiB0byB0aGUgc3RhdGVtZW50XG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hY2NvdW50cy9sYXRlc3QvcmVmZXJlbmNlL3NlY3VyaXR5X2lhbV9zZXJ2aWNlLXdpdGgtaWFtLmh0bWwjc2VjdXJpdHlfaWFtX3NlcnZpY2Utd2l0aC1pYW0taWQtYmFzZWQtcG9saWNpZXMtcmVzb3VyY2VzXG4gICAqXG4gICAqIEBwYXJhbSBtYW5hZ2VtZW50QWNjb3VudElkIC0gSWRlbnRpZmllciBmb3IgdGhlIG1hbmFnZW1lbnRBY2NvdW50SWQuXG4gICAqIEBwYXJhbSBvcmdhbml6YXRpb25JZCAtIElkZW50aWZpZXIgZm9yIHRoZSBvcmdhbml6YXRpb25JZC5cbiAgICogQHBhcmFtIG1lbWJlckFjY291bnRJZCAtIElkZW50aWZpZXIgZm9yIHRoZSBtZW1iZXJBY2NvdW50SWQuXG4gICAqIEBwYXJhbSBwYXJ0aXRpb24gLSBQYXJ0aXRpb24gb2YgdGhlIEFXUyBhY2NvdW50IFthd3MsIGF3cy1jbiwgYXdzLXVzLWdvdl07IGRlZmF1bHRzIHRvIGBhd3NgLCB1bmxlc3MgdXNpbmcgdGhlIENESywgd2hlcmUgdGhlIGRlZmF1bHQgaXMgdGhlIGN1cnJlbnQgU3RhY2sncyBwYXJ0aXRpb24uXG4gICAqL1xuICBwdWJsaWMgb25BY2NvdW50SW5Pcmdhbml6YXRpb24obWFuYWdlbWVudEFjY291bnRJZDogc3RyaW5nLCBvcmdhbml6YXRpb25JZDogc3RyaW5nLCBtZW1iZXJBY2NvdW50SWQ6IHN0cmluZywgcGFydGl0aW9uPzogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMub24oYGFybjokeyBwYXJ0aXRpb24gfHwgQWNjb3VudC5kZWZhdWx0UGFydGl0aW9uIH06YWNjb3VudDo6JHsgbWFuYWdlbWVudEFjY291bnRJZCB9OmFjY291bnQvby0keyBvcmdhbml6YXRpb25JZCB9LyR7IG1lbWJlckFjY291bnRJZCB9YCk7XG4gIH1cblxuICAvKipcbiAgICogRmlsdGVycyBhY2Nlc3MgYnkgdGhlIHJlc291cmNlIHBhdGggZm9yIGFuIGFjY291bnQgaW4gYW4gb3JnYW5pemF0aW9uXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hY2NvdW50cy9sYXRlc3QvcmVmZXJlbmNlL3NlY3VyaXR5X2lhbV9zZXJ2aWNlLXdpdGgtaWFtLmh0bWwjc2VjdXJpdHlfaWFtX3NlcnZpY2Utd2l0aC1pYW0taWQtYmFzZWQtcG9saWNpZXMtY29uZGl0aW9ua2V5c1xuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgVGhlIHZhbHVlKHMpIHRvIGNoZWNrXG4gICAqIEBwYXJhbSBvcGVyYXRvciBXb3JrcyB3aXRoIFtzdHJpbmcgb3BlcmF0b3JzXShodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vSUFNL2xhdGVzdC9Vc2VyR3VpZGUvcmVmZXJlbmNlX3BvbGljaWVzX2VsZW1lbnRzX2NvbmRpdGlvbl9vcGVyYXRvcnMuaHRtbCNDb25kaXRpb25zX1N0cmluZykuICoqRGVmYXVsdDoqKiBgU3RyaW5nTGlrZWBcbiAgICovXG4gIHB1YmxpYyBpZkFjY291bnRSZXNvdXJjZU9yZ1BhdGhzKHZhbHVlOiBzdHJpbmcgfCBzdHJpbmdbXSwgb3BlcmF0b3I/OiBPcGVyYXRvciB8IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmlmKGBBY2NvdW50UmVzb3VyY2VPcmdQYXRoc2AsIHZhbHVlLCBvcGVyYXRvciB8fCAnU3RyaW5nTGlrZScpO1xuICB9XG5cbiAgLyoqXG4gICAqIEZpbHRlcnMgYWNjZXNzIGJ5IHJlc291cmNlIHRhZ3MgZm9yIGFuIGFjY291bnQgaW4gYW4gb3JnYW5pemF0aW9uXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hY2NvdW50cy9sYXRlc3QvcmVmZXJlbmNlL3NlY3VyaXR5X2lhbV9zZXJ2aWNlLXdpdGgtaWFtLmh0bWwjc2VjdXJpdHlfaWFtX3NlcnZpY2Utd2l0aC1pYW0taWQtYmFzZWQtcG9saWNpZXMtY29uZGl0aW9ua2V5c1xuICAgKlxuICAgKiBAcGFyYW0gdGFnS2V5IFRoZSB0YWcga2V5IHRvIGNoZWNrXG4gICAqIEBwYXJhbSB2YWx1ZSBUaGUgdmFsdWUocykgdG8gY2hlY2tcbiAgICogQHBhcmFtIG9wZXJhdG9yIFdvcmtzIHdpdGggW3N0cmluZyBvcGVyYXRvcnNdKGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9JQU0vbGF0ZXN0L1VzZXJHdWlkZS9yZWZlcmVuY2VfcG9saWNpZXNfZWxlbWVudHNfY29uZGl0aW9uX29wZXJhdG9ycy5odG1sI0NvbmRpdGlvbnNfU3RyaW5nKS4gKipEZWZhdWx0OioqIGBTdHJpbmdMaWtlYFxuICAgKi9cbiAgcHVibGljIGlmQWNjb3VudFJlc291cmNlT3JnVGFncyh0YWdLZXk6IHN0cmluZywgdmFsdWU6IHN0cmluZyB8IHN0cmluZ1tdLCBvcGVyYXRvcj86IE9wZXJhdG9yIHwgc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuaWYoYEFjY291bnRSZXNvdXJjZU9yZ1RhZ3MvJHsgdGFnS2V5IH1gLCB2YWx1ZSwgb3BlcmF0b3IgfHwgJ1N0cmluZ0xpa2UnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGaWx0ZXJzIGFjY2VzcyBieSBhbHRlcm5hdGUgY29udGFjdCB0eXBlc1xuICAgKlxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vYWNjb3VudHMvbGF0ZXN0L3JlZmVyZW5jZS9zZWN1cml0eV9pYW1fc2VydmljZS13aXRoLWlhbS5odG1sI3NlY3VyaXR5X2lhbV9zZXJ2aWNlLXdpdGgtaWFtLWlkLWJhc2VkLXBvbGljaWVzLWNvbmRpdGlvbmtleXNcbiAgICpcbiAgICogQXBwbGllcyB0byBhY3Rpb25zOlxuICAgKiAtIC50b0RlbGV0ZUFsdGVybmF0ZUNvbnRhY3QoKVxuICAgKiAtIC50b0dldEFsdGVybmF0ZUNvbnRhY3QoKVxuICAgKiAtIC50b1B1dEFsdGVybmF0ZUNvbnRhY3QoKVxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgVGhlIHZhbHVlKHMpIHRvIGNoZWNrXG4gICAqIEBwYXJhbSBvcGVyYXRvciBXb3JrcyB3aXRoIFtzdHJpbmcgb3BlcmF0b3JzXShodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vSUFNL2xhdGVzdC9Vc2VyR3VpZGUvcmVmZXJlbmNlX3BvbGljaWVzX2VsZW1lbnRzX2NvbmRpdGlvbl9vcGVyYXRvcnMuaHRtbCNDb25kaXRpb25zX1N0cmluZykuICoqRGVmYXVsdDoqKiBgU3RyaW5nTGlrZWBcbiAgICovXG4gIHB1YmxpYyBpZkFsdGVybmF0ZUNvbnRhY3RUeXBlcyh2YWx1ZTogc3RyaW5nIHwgc3RyaW5nW10sIG9wZXJhdG9yPzogT3BlcmF0b3IgfCBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5pZihgQWx0ZXJuYXRlQ29udGFjdFR5cGVzYCwgdmFsdWUsIG9wZXJhdG9yIHx8ICdTdHJpbmdMaWtlJyk7XG4gIH1cblxuICAvKipcbiAgICogRmlsdGVycyBhY2Nlc3MgYnkgYSBsaXN0IG9mIFJlZ2lvbnMuIEVuYWJsZXMgb3IgZGlzYWJsZXMgYWxsIHRoZSBSZWdpb25zIHNwZWNpZmllZCBoZXJlXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hY2NvdW50cy9sYXRlc3QvcmVmZXJlbmNlL3NlY3VyaXR5X2lhbV9zZXJ2aWNlLXdpdGgtaWFtLmh0bWwjc2VjdXJpdHlfaWFtX3NlcnZpY2Utd2l0aC1pYW0taWQtYmFzZWQtcG9saWNpZXMtY29uZGl0aW9ua2V5c1xuICAgKlxuICAgKiBBcHBsaWVzIHRvIGFjdGlvbnM6XG4gICAqIC0gLnRvRGlzYWJsZVJlZ2lvbigpXG4gICAqIC0gLnRvRW5hYmxlUmVnaW9uKClcbiAgICogLSAudG9HZXRSZWdpb25PcHRTdGF0dXMoKVxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgVGhlIHZhbHVlKHMpIHRvIGNoZWNrXG4gICAqIEBwYXJhbSBvcGVyYXRvciBXb3JrcyB3aXRoIFtzdHJpbmcgb3BlcmF0b3JzXShodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vSUFNL2xhdGVzdC9Vc2VyR3VpZGUvcmVmZXJlbmNlX3BvbGljaWVzX2VsZW1lbnRzX2NvbmRpdGlvbl9vcGVyYXRvcnMuaHRtbCNDb25kaXRpb25zX1N0cmluZykuICoqRGVmYXVsdDoqKiBgU3RyaW5nTGlrZWBcbiAgICovXG4gIHB1YmxpYyBpZlRhcmdldFJlZ2lvbih2YWx1ZTogc3RyaW5nIHwgc3RyaW5nW10sIG9wZXJhdG9yPzogT3BlcmF0b3IgfCBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5pZihgVGFyZ2V0UmVnaW9uYCwgdmFsdWUsIG9wZXJhdG9yIHx8ICdTdHJpbmdMaWtlJyk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Activate = void 0;
4
+ const shared_1 = require("../shared");
5
+ /**
6
+ * Statement provider for service [activate](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsactivate.html).
7
+ *
8
+ * @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement
9
+ */
10
+ class Activate extends shared_1.PolicyStatement {
11
+ /**
12
+ * Statement provider for service [activate](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsactivate.html).
13
+ *
14
+ * @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement
15
+ */
16
+ constructor(sid) {
17
+ super(sid);
18
+ this.servicePrefix = 'activate';
19
+ this.accessLevelList = {
20
+ Write: [
21
+ 'CreateForm',
22
+ 'PutMemberInfo'
23
+ ],
24
+ Read: [
25
+ 'GetAccountContact',
26
+ 'GetContentInfo',
27
+ 'GetCosts',
28
+ 'GetCredits',
29
+ 'GetMemberInfo',
30
+ 'GetProgram'
31
+ ]
32
+ };
33
+ }
34
+ /**
35
+ * Grants permission to submit an Activate application form
36
+ *
37
+ * Access Level: Write
38
+ */
39
+ toCreateForm() {
40
+ return this.to('CreateForm');
41
+ }
42
+ /**
43
+ * Grants permission to get the AWS account contact information
44
+ *
45
+ * Access Level: Read
46
+ */
47
+ toGetAccountContact() {
48
+ return this.to('GetAccountContact');
49
+ }
50
+ /**
51
+ * Grants permission to get Activate tech posts and offer information
52
+ *
53
+ * Access Level: Read
54
+ */
55
+ toGetContentInfo() {
56
+ return this.to('GetContentInfo');
57
+ }
58
+ /**
59
+ * Grants permission to get the AWS cost information
60
+ *
61
+ * Access Level: Read
62
+ */
63
+ toGetCosts() {
64
+ return this.to('GetCosts');
65
+ }
66
+ /**
67
+ * Grants permission to get the AWS credit information
68
+ *
69
+ * Access Level: Read
70
+ */
71
+ toGetCredits() {
72
+ return this.to('GetCredits');
73
+ }
74
+ /**
75
+ * Grants permission to get the Activate member information
76
+ *
77
+ * Access Level: Read
78
+ */
79
+ toGetMemberInfo() {
80
+ return this.to('GetMemberInfo');
81
+ }
82
+ /**
83
+ * Grants permission to get an Activate program
84
+ *
85
+ * Access Level: Read
86
+ */
87
+ toGetProgram() {
88
+ return this.to('GetProgram');
89
+ }
90
+ /**
91
+ * Grants permission to create or update the Activate member information
92
+ *
93
+ * Access Level: Write
94
+ */
95
+ toPutMemberInfo() {
96
+ return this.to('PutMemberInfo');
97
+ }
98
+ }
99
+ exports.Activate = Activate;
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJhY3RpdmF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSxzQ0FBNEM7QUFFNUM7Ozs7R0FJRztBQUNILE1BQWEsUUFBUyxTQUFRLHdCQUFlO0lBRzNDOzs7O09BSUc7SUFDSCxZQUFZLEdBQVk7UUFDdEIsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBUk4sa0JBQWEsR0FBRyxVQUFVLENBQUM7UUFtRnhCLG9CQUFlLEdBQW9CO1lBQzNDLEtBQUssRUFBRTtnQkFDTCxZQUFZO2dCQUNaLGVBQWU7YUFDaEI7WUFDRCxJQUFJLEVBQUU7Z0JBQ0osbUJBQW1CO2dCQUNuQixnQkFBZ0I7Z0JBQ2hCLFVBQVU7Z0JBQ1YsWUFBWTtnQkFDWixlQUFlO2dCQUNmLFlBQVk7YUFDYjtTQUNGLENBQUM7SUF2RkYsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxZQUFZO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLG1CQUFtQjtRQUN4QixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLGdCQUFnQjtRQUNyQixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLFVBQVU7UUFDZixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxZQUFZO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLGVBQWU7UUFDcEIsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksWUFBWTtRQUNqQixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxlQUFlO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUNsQyxDQUFDO0NBZ0JGO0FBbEdELDRCQWtHQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjY2Vzc0xldmVsTGlzdCB9IGZyb20gJy4uL3NoYXJlZC9hY2Nlc3MtbGV2ZWwnO1xuaW1wb3J0IHsgUG9saWN5U3RhdGVtZW50IH0gZnJvbSAnLi4vc2hhcmVkJztcblxuLyoqXG4gKiBTdGF0ZW1lbnQgcHJvdmlkZXIgZm9yIHNlcnZpY2UgW2FjdGl2YXRlXShodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vc2VydmljZS1hdXRob3JpemF0aW9uL2xhdGVzdC9yZWZlcmVuY2UvbGlzdF9hd3NhY3RpdmF0ZS5odG1sKS5cbiAqXG4gKiBAcGFyYW0gc2lkIFtTSURdKGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9JQU0vbGF0ZXN0L1VzZXJHdWlkZS9yZWZlcmVuY2VfcG9saWNpZXNfZWxlbWVudHNfc2lkLmh0bWwpIG9mIHRoZSBzdGF0ZW1lbnRcbiAqL1xuZXhwb3J0IGNsYXNzIEFjdGl2YXRlIGV4dGVuZHMgUG9saWN5U3RhdGVtZW50IHtcbiAgcHVibGljIHNlcnZpY2VQcmVmaXggPSAnYWN0aXZhdGUnO1xuXG4gIC8qKlxuICAgKiBTdGF0ZW1lbnQgcHJvdmlkZXIgZm9yIHNlcnZpY2UgW2FjdGl2YXRlXShodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vc2VydmljZS1hdXRob3JpemF0aW9uL2xhdGVzdC9yZWZlcmVuY2UvbGlzdF9hd3NhY3RpdmF0ZS5odG1sKS5cbiAgICpcbiAgICogQHBhcmFtIHNpZCBbU0lEXShodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vSUFNL2xhdGVzdC9Vc2VyR3VpZGUvcmVmZXJlbmNlX3BvbGljaWVzX2VsZW1lbnRzX3NpZC5odG1sKSBvZiB0aGUgc3RhdGVtZW50XG4gICAqL1xuICBjb25zdHJ1Y3RvcihzaWQ/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihzaWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwZXJtaXNzaW9uIHRvIHN1Ym1pdCBhbiBBY3RpdmF0ZSBhcHBsaWNhdGlvbiBmb3JtXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogV3JpdGVcbiAgICovXG4gIHB1YmxpYyB0b0NyZWF0ZUZvcm0oKSB7XG4gICAgcmV0dXJuIHRoaXMudG8oJ0NyZWF0ZUZvcm0nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byBnZXQgdGhlIEFXUyBhY2NvdW50IGNvbnRhY3QgaW5mb3JtYXRpb25cbiAgICpcbiAgICogQWNjZXNzIExldmVsOiBSZWFkXG4gICAqL1xuICBwdWJsaWMgdG9HZXRBY2NvdW50Q29udGFjdCgpIHtcbiAgICByZXR1cm4gdGhpcy50bygnR2V0QWNjb3VudENvbnRhY3QnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byBnZXQgQWN0aXZhdGUgdGVjaCBwb3N0cyBhbmQgb2ZmZXIgaW5mb3JtYXRpb25cbiAgICpcbiAgICogQWNjZXNzIExldmVsOiBSZWFkXG4gICAqL1xuICBwdWJsaWMgdG9HZXRDb250ZW50SW5mbygpIHtcbiAgICByZXR1cm4gdGhpcy50bygnR2V0Q29udGVudEluZm8nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byBnZXQgdGhlIEFXUyBjb3N0IGluZm9ybWF0aW9uXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogUmVhZFxuICAgKi9cbiAgcHVibGljIHRvR2V0Q29zdHMoKSB7XG4gICAgcmV0dXJuIHRoaXMudG8oJ0dldENvc3RzJyk7XG4gIH1cblxuICAvKipcbiAgICogR3JhbnRzIHBlcm1pc3Npb24gdG8gZ2V0IHRoZSBBV1MgY3JlZGl0IGluZm9ybWF0aW9uXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogUmVhZFxuICAgKi9cbiAgcHVibGljIHRvR2V0Q3JlZGl0cygpIHtcbiAgICByZXR1cm4gdGhpcy50bygnR2V0Q3JlZGl0cycpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGdldCB0aGUgQWN0aXZhdGUgbWVtYmVyIGluZm9ybWF0aW9uXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogUmVhZFxuICAgKi9cbiAgcHVibGljIHRvR2V0TWVtYmVySW5mbygpIHtcbiAgICByZXR1cm4gdGhpcy50bygnR2V0TWVtYmVySW5mbycpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGdldCBhbiBBY3RpdmF0ZSBwcm9ncmFtXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogUmVhZFxuICAgKi9cbiAgcHVibGljIHRvR2V0UHJvZ3JhbSgpIHtcbiAgICByZXR1cm4gdGhpcy50bygnR2V0UHJvZ3JhbScpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGNyZWF0ZSBvciB1cGRhdGUgdGhlIEFjdGl2YXRlIG1lbWJlciBpbmZvcm1hdGlvblxuICAgKlxuICAgKiBBY2Nlc3MgTGV2ZWw6IFdyaXRlXG4gICAqL1xuICBwdWJsaWMgdG9QdXRNZW1iZXJJbmZvKCkge1xuICAgIHJldHVybiB0aGlzLnRvKCdQdXRNZW1iZXJJbmZvJyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgYWNjZXNzTGV2ZWxMaXN0OiBBY2Nlc3NMZXZlbExpc3QgPSB7XG4gICAgV3JpdGU6IFtcbiAgICAgICdDcmVhdGVGb3JtJyxcbiAgICAgICdQdXRNZW1iZXJJbmZvJ1xuICAgIF0sXG4gICAgUmVhZDogW1xuICAgICAgJ0dldEFjY291bnRDb250YWN0JyxcbiAgICAgICdHZXRDb250ZW50SW5mbycsXG4gICAgICAnR2V0Q29zdHMnLFxuICAgICAgJ0dldENyZWRpdHMnLFxuICAgICAgJ0dldE1lbWJlckluZm8nLFxuICAgICAgJ0dldFByb2dyYW0nXG4gICAgXVxuICB9O1xufVxuIl19