@jjrawlins/cdk-ami-builder 0.0.18 → 0.0.20

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 (279) hide show
  1. package/.jsii +3 -3
  2. package/cdk-ami-builder/jsii/jsii.go +2 -2
  3. package/cdk-ami-builder/version +1 -1
  4. package/lib/ImagePipeline/ImagePipeline.js +1 -1
  5. package/lib/Lambdas/CheckStateMachineStatus/CheckStateMachineStatus-function.js +1 -1
  6. package/lib/Lambdas/StartStateMachine/StartStateMachine-function.js +1 -1
  7. package/node_modules/cdk-iam-floyd/.claude/settings.local.json +30 -0
  8. package/node_modules/cdk-iam-floyd/CLAUDE.md +147 -0
  9. package/node_modules/cdk-iam-floyd/README.md +4 -4
  10. package/node_modules/cdk-iam-floyd/lib/generated/aws-managed-policies/cdk-iam-floyd.d.ts +62 -14
  11. package/node_modules/cdk-iam-floyd/lib/generated/aws-managed-policies/cdk-iam-floyd.js +124 -28
  12. package/node_modules/cdk-iam-floyd/lib/generated/aws-managed-policies/iam-floyd.d.ts +62 -14
  13. package/node_modules/cdk-iam-floyd/lib/generated/aws-managed-policies/iam-floyd.js +63 -15
  14. package/node_modules/cdk-iam-floyd/lib/generated/index.d.ts +8 -1
  15. package/node_modules/cdk-iam-floyd/lib/generated/index.js +26 -12
  16. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/aioperations.d.ts +25 -0
  17. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/aioperations.js +39 -8
  18. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/amplify.d.ts +0 -6
  19. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/amplify.js +1 -7
  20. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/apigatewaymanagement.d.ts +26 -0
  21. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/apigatewaymanagement.js +31 -1
  22. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/apigatewaymanagementv2.d.ts +169 -5
  23. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/apigatewaymanagementv2.js +203 -8
  24. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/appintegrations.d.ts +60 -0
  25. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/appintegrations.js +82 -1
  26. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/applicationmigrationservice.d.ts +12 -0
  27. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/applicationmigrationservice.js +13 -1
  28. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/applicationrecoverycontroller-zonalshift.d.ts +35 -0
  29. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/applicationrecoverycontroller-zonalshift.js +42 -1
  30. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/appstream2-0.d.ts +15 -15
  31. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/appstream2-0.js +22 -22
  32. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/appsync.d.ts +1 -1
  33. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/appsync.js +5 -3
  34. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/arcregionswitch.d.ts +277 -0
  35. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/arcregionswitch.js +370 -0
  36. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/artifact.d.ts +10 -25
  37. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/artifact.js +11 -34
  38. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/auditmanager.d.ts +22 -5
  39. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/auditmanager.js +23 -6
  40. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/auroradsql.d.ts +96 -24
  41. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/auroradsql.js +121 -30
  42. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/backup.d.ts +62 -1
  43. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/backup.js +80 -2
  44. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/backupsearch.d.ts +4 -0
  45. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/backupsearch.js +5 -1
  46. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/batch.d.ts +106 -0
  47. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/batch.js +137 -3
  48. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/bedrock.d.ts +471 -0
  49. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/bedrock.js +595 -1
  50. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/bedrockagentcore.d.ts +912 -0
  51. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/bedrockagentcore.js +1203 -0
  52. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/billing.d.ts +6 -0
  53. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/billing.js +10 -1
  54. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/billingandcostmanagementdashboards.d.ts +122 -0
  55. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/billingandcostmanagementdashboards.js +165 -0
  56. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/billingandcostmanagementrecommendedactions.d.ts +25 -0
  57. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/billingandcostmanagementrecommendedactions.js +36 -0
  58. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/braket.d.ts +6 -6
  59. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/braket.js +7 -10
  60. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/budgetservice.d.ts +6 -0
  61. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/budgetservice.js +7 -1
  62. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/certificatemanager.d.ts +30 -1
  63. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/certificatemanager.js +36 -2
  64. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/chatbot.d.ts +128 -1
  65. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/chatbot.js +134 -1
  66. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/cleanrooms.d.ts +56 -0
  67. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/cleanrooms.js +72 -1
  68. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/cleanroomsml.d.ts +14 -0
  69. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/cleanroomsml.js +18 -1
  70. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/cloud9.d.ts +6 -8
  71. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/cloud9.js +8 -13
  72. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/cloudmap.d.ts +57 -0
  73. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/cloudmap.js +69 -1
  74. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/cloudtrail.d.ts +20 -0
  75. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/cloudtrail.js +27 -1
  76. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/cloudwatch.d.ts +8 -0
  77. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/cloudwatch.js +12 -1
  78. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/cloudwatchlogs.d.ts +8 -0
  79. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/cloudwatchlogs.js +12 -1
  80. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/cloudwatchobservabilityadminservice.d.ts +200 -9
  81. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/cloudwatchobservabilityadminservice.js +258 -14
  82. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/codebuild.d.ts +1909 -4
  83. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/codebuild.js +2131 -6
  84. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/codepipeline.d.ts +8 -0
  85. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/codepipeline.js +12 -1
  86. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/cognitouserpools.d.ts +8 -0
  87. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/cognitouserpools.js +12 -1
  88. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/connect.d.ts +44 -0
  89. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/connect.js +52 -1
  90. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/connectcases.d.ts +9 -1
  91. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/connectcases.js +13 -2
  92. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/connectcustomerprofiles.d.ts +106 -0
  93. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/connectcustomerprofiles.js +142 -1
  94. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/connectoutboundcampaigns.d.ts +16 -0
  95. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/connectoutboundcampaigns.js +23 -1
  96. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/controlcatalog.d.ts +8 -0
  97. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/controlcatalog.js +12 -1
  98. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/costandusagereport.d.ts +3 -0
  99. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/costandusagereport.js +4 -1
  100. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/costexplorerservice.d.ts +24 -0
  101. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/costexplorerservice.js +31 -1
  102. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/dataexchange.d.ts +16 -0
  103. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/dataexchange.js +17 -1
  104. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/datazone.d.ts +57 -3
  105. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/datazone.js +89 -8
  106. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/deadlinecloud.d.ts +17 -0
  107. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/deadlinecloud.js +18 -1
  108. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/directoryservice.d.ts +142 -0
  109. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/directoryservice.js +173 -1
  110. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/dynamodb.d.ts +16 -0
  111. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/dynamodb.js +23 -1
  112. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/ec2.d.ts +521 -17
  113. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/ec2.js +580 -29
  114. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/ec2imagebuilder.d.ts +147 -62
  115. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/ec2imagebuilder.js +155 -70
  116. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/elasticblockstore.d.ts +2 -2
  117. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/elasticblockstore.js +4 -4
  118. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/elasticcontainerservice.d.ts +1 -30
  119. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/elasticcontainerservice.js +2 -31
  120. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/elastickubernetesservice.d.ts +47 -0
  121. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/elastickubernetesservice.js +62 -1
  122. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/elasticloadbalancing.d.ts +1 -1
  123. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/elasticloadbalancing.js +2 -2
  124. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/elasticmapreduce.d.ts +8 -0
  125. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/elasticmapreduce.js +12 -1
  126. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/elementalmediaconnect.d.ts +55 -55
  127. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/elementalmediaconnect.js +56 -56
  128. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/elementalmediaconvert.d.ts +8 -0
  129. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/elementalmediaconvert.js +12 -1
  130. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/emroneksemrcontainers.d.ts +2 -13
  131. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/emroneksemrcontainers.js +3 -16
  132. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/emrserverless.d.ts +8 -0
  133. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/emrserverless.js +12 -1
  134. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/endusermessagingsocial.d.ts +64 -0
  135. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/endusermessagingsocial.js +91 -3
  136. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/entityresolution.d.ts +8 -0
  137. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/entityresolution.js +12 -1
  138. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/eventbridge.d.ts +30 -0
  139. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/eventbridge.js +38 -1
  140. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/freetier.d.ts +32 -0
  141. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/freetier.js +48 -2
  142. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/fsx.d.ts +32 -0
  143. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/fsx.js +42 -1
  144. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/glue.d.ts +249 -0
  145. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/glue.js +264 -1
  146. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/gluedatabrew.d.ts +16 -0
  147. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/gluedatabrew.js +17 -1
  148. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/guardduty.d.ts +138 -0
  149. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/guardduty.js +175 -3
  150. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/healthimaging.d.ts +56 -0
  151. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/healthimaging.js +78 -1
  152. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/iamidentitycenter.d.ts +24 -51
  153. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/iamidentitycenter.js +31 -70
  154. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/identityandaccessmanagementiam.d.ts +40 -0
  155. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/identityandaccessmanagementiam.js +45 -1
  156. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/inspector2.d.ts +179 -0
  157. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/inspector2.js +232 -1
  158. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/interactivevideoservice.d.ts +30 -0
  159. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/interactivevideoservice.js +40 -1
  160. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/iot.d.ts +32 -4
  161. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/iot.js +46 -9
  162. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/iotfleetwise.d.ts +0 -32
  163. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/iotfleetwise.js +1 -39
  164. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/iotmanagedintegrations.d.ts +42 -0
  165. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/iotmanagedintegrations.js +47 -1
  166. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/iotsitewise.d.ts +133 -0
  167. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/iotsitewise.js +178 -1
  168. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/keymanagementservice.d.ts +1 -1
  169. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/keymanagementservice.js +2 -2
  170. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/keyspacesforapachecassandra.d.ts +51 -2
  171. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/keyspacesforapachecassandra.js +68 -3
  172. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/kinesisdatastreams.d.ts +4 -0
  173. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/kinesisdatastreams.js +5 -1
  174. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/lexv2.d.ts +16 -0
  175. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/lexv2.js +23 -1
  176. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/managedserviceforprometheus.d.ts +129 -45
  177. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/managedserviceforprometheus.js +151 -46
  178. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/marketplacecatalog.d.ts +0 -32
  179. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/marketplacecatalog.js +3 -47
  180. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/marketplacemeteringservice.d.ts +4 -4
  181. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/marketplacemeteringservice.js +5 -5
  182. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/memorydb.d.ts +12 -0
  183. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/memorydb.js +16 -1
  184. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/mq.d.ts +6 -0
  185. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/mq.js +10 -1
  186. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/multi-partyapproval.d.ts +6 -6
  187. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/multi-partyapproval.js +10 -10
  188. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/neptuneanalytics.d.ts +28 -0
  189. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/neptuneanalytics.js +35 -1
  190. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/networkfirewall.d.ts +123 -3
  191. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/networkfirewall.js +163 -5
  192. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/opensearchserverless.d.ts +38 -6
  193. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/opensearchserverless.js +51 -7
  194. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/organizations.d.ts +29 -5
  195. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/organizations.js +36 -6
  196. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/outposts.d.ts +14 -0
  197. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/outposts.js +18 -1
  198. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/parallelcomputingservice.d.ts +5 -5
  199. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/parallelcomputingservice.js +6 -6
  200. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/partnercentralselling.d.ts +18 -16
  201. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/partnercentralselling.js +19 -17
  202. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/qbusiness.d.ts +87 -52
  203. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/qbusiness.js +114 -73
  204. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/qbusinessqapps.d.ts +0 -50
  205. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/qbusinessqapps.js +1 -60
  206. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/quicksight.d.ts +25 -20
  207. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/quicksight.js +35 -23
  208. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/rds.d.ts +59 -1
  209. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/rds.js +65 -2
  210. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/redshift.d.ts +0 -4
  211. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/redshift.js +1 -5
  212. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/repostprivate.d.ts +48 -0
  213. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/repostprivate.js +67 -1
  214. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/resourceexplorer.d.ts +2 -2
  215. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/resourceexplorer.js +7 -5
  216. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/s3.d.ts +187 -175
  217. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/s3.js +202 -176
  218. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/s3express.d.ts +151 -2
  219. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/s3express.js +174 -4
  220. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/s3glacier.d.ts +2 -31
  221. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/s3glacier.js +3 -36
  222. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/s3vectors.d.ts +202 -0
  223. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/s3vectors.js +272 -0
  224. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/sagemaker.d.ts +197 -1
  225. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/sagemaker.js +241 -2
  226. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/sagemakerwithmlflow.d.ts +54 -0
  227. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/sagemakerwithmlflow.js +83 -2
  228. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/savingsplans.d.ts +1 -1
  229. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/savingsplans.js +2 -2
  230. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/secretsmanager.d.ts +22 -22
  231. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/secretsmanager.js +23 -23
  232. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/securityhub.d.ts +295 -6
  233. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/securityhub.js +375 -7
  234. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/securityincidentresponse.d.ts +2 -1
  235. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/securityincidentresponse.js +3 -2
  236. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/securitylake.d.ts +4 -0
  237. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/securitylake.js +5 -1
  238. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/securitytokenservice.d.ts +10 -0
  239. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/securitytokenservice.js +13 -1
  240. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/service-oracledatabase-aws.d.ts +548 -0
  241. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/service-oracledatabase-aws.js +718 -0
  242. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/serviceformanagingawsconsoleuserexperiencecapabilities-.d.ts +41 -0
  243. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/serviceformanagingawsconsoleuserexperiencecapabilities-.js +60 -0
  244. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/servicequotas.d.ts +8 -0
  245. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/servicequotas.js +12 -1
  246. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/shield.d.ts +24 -0
  247. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/shield.js +34 -1
  248. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/shieldnetworksecuritydirector.d.ts +89 -0
  249. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/shieldnetworksecuritydirector.js +128 -0
  250. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/simpleemailservicev2.d.ts +211 -0
  251. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/simpleemailservicev2.js +256 -3
  252. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/snowdevicemanagement.d.ts +4 -0
  253. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/snowdevicemanagement.js +5 -1
  254. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/support.d.ts +24 -0
  255. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/support.js +35 -2
  256. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/systemsmanager.d.ts +27 -0
  257. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/systemsmanager.js +32 -1
  258. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/systemsmanagerforsap.d.ts +51 -3
  259. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/systemsmanagerforsap.js +76 -8
  260. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/transcribe.d.ts +27 -1
  261. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/transcribe.js +28 -2
  262. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/transform.d.ts +93 -8
  263. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/transform.js +117 -9
  264. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/usernotifications.d.ts +34 -2
  265. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/usernotifications.js +51 -5
  266. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/vpclattice.d.ts +6 -0
  267. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/vpclattice.js +10 -1
  268. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/workspaces.d.ts +83 -0
  269. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/workspaces.js +113 -1
  270. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/workspacessecurebrowser.d.ts +77 -0
  271. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/workspacessecurebrowser.js +101 -1
  272. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/workspacesthinclient.d.ts +1 -0
  273. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/workspacesthinclient.js +2 -1
  274. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/x-ray.d.ts +35 -1
  275. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/x-ray.js +40 -2
  276. package/node_modules/cdk-iam-floyd/package.json +10 -10
  277. package/package.json +2 -2
  278. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/supportrecommendations.d.ts +0 -33
  279. package/node_modules/cdk-iam-floyd/lib/generated/policy-statements/supportrecommendations.js +0 -47
@@ -0,0 +1,277 @@
1
+ import { AccessLevelList } from '../../shared/access-level';
2
+ import { PolicyStatement, Operator } from '../../shared';
3
+ import { aws_iam as iam } from "aws-cdk-lib";
4
+ /**
5
+ * Statement provider for service [arc-region-switch](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonarcregionswitch.html).
6
+ *
7
+ * @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement
8
+ */
9
+ export declare class ArcRegionSwitch extends PolicyStatement {
10
+ servicePrefix: string;
11
+ /**
12
+ * Grants permission to approve a plan execution step
13
+ *
14
+ * Access Level: Write
15
+ *
16
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_ApprovePlanExecutionStep.html
17
+ */
18
+ toApprovePlanExecutionStep(): this;
19
+ /**
20
+ * Grants permission to cancel a plan execution
21
+ *
22
+ * Access Level: Write
23
+ *
24
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_CancelPlanExecution.html
25
+ */
26
+ toCancelPlanExecution(): this;
27
+ /**
28
+ * Grants permission to create a plan
29
+ *
30
+ * Access Level: Write
31
+ *
32
+ * Possible conditions:
33
+ * - .ifAwsRequestTag()
34
+ * - .ifAwsTagKeys()
35
+ *
36
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_CreatePlan.html
37
+ */
38
+ toCreatePlan(): this;
39
+ /**
40
+ * Grants permission to delete a plan
41
+ *
42
+ * Access Level: Write
43
+ *
44
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_DeletePlan.html
45
+ */
46
+ toDeletePlan(): this;
47
+ /**
48
+ * Grants permission to delete the RAM access control policy for a plan
49
+ *
50
+ * Access Level: Permissions management
51
+ *
52
+ * https://docs.aws.amazon.com/r53recovery/latest/dg/arc-region-switch.region-switch-different-accounts.html
53
+ */
54
+ toDeleteResourcePolicy(): this;
55
+ /**
56
+ * Grants permission to get information about plans in all AWS Regions using a control plane
57
+ *
58
+ * Access Level: Read
59
+ *
60
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_GetPlan.html
61
+ */
62
+ toGetPlan(): this;
63
+ /**
64
+ * Grants permission to get a plan's evaluation status
65
+ *
66
+ * Access Level: Read
67
+ *
68
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_GetPlanEvaluationStatus.html
69
+ */
70
+ toGetPlanEvaluationStatus(): this;
71
+ /**
72
+ * Grants permission to get plan execution details and setup information
73
+ *
74
+ * Access Level: Read
75
+ *
76
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_GetPlanExecution.html
77
+ */
78
+ toGetPlanExecution(): this;
79
+ /**
80
+ * Grants permission to get information about a plan in a specific AWS Region using the Region switch Regional data plane
81
+ *
82
+ * Access Level: Read
83
+ *
84
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_GetPlanInRegion.html
85
+ */
86
+ toGetPlanInRegion(): this;
87
+ /**
88
+ * Grants permission to get the resource policy of a plan
89
+ *
90
+ * Access Level: Permissions management
91
+ *
92
+ * https://docs.aws.amazon.com/r53recovery/latest/dg/arc-region-switch.region-switch-different-accounts.html
93
+ */
94
+ toGetResourcePolicy(): this;
95
+ /**
96
+ * Grants permission to list plan execution events
97
+ *
98
+ * Access Level: List
99
+ *
100
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_ListPlanExecutionEvents.html
101
+ */
102
+ toListPlanExecutionEvents(): this;
103
+ /**
104
+ * Grants permission to list plan executions
105
+ *
106
+ * Access Level: List
107
+ *
108
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_ListPlanExecutions.html
109
+ */
110
+ toListPlanExecutions(): this;
111
+ /**
112
+ * Grants permission to list plans in all AWS Regions using a control plane
113
+ *
114
+ * Access Level: List
115
+ *
116
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_ListPlans.html
117
+ */
118
+ toListPlans(): this;
119
+ /**
120
+ * Grants permission to list plans in a specific AWS Region using the Region switch Regional data plane
121
+ *
122
+ * Access Level: List
123
+ *
124
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_ListPlansInRegion.html
125
+ */
126
+ toListPlansInRegion(): this;
127
+ /**
128
+ * Grants permission to list Route 53 health checks
129
+ *
130
+ * Access Level: List
131
+ *
132
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_ListRoute53HealthChecks.html
133
+ */
134
+ toListRoute53HealthChecks(): this;
135
+ /**
136
+ * Grants permission to list tags for a resource
137
+ *
138
+ * Access Level: Read
139
+ *
140
+ * Possible conditions:
141
+ * - .ifAwsResourceTag()
142
+ *
143
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_ListTagsForResource.html
144
+ */
145
+ toListTagsForResource(): this;
146
+ /**
147
+ * Grants permission to define the RAM access control policy for a plan
148
+ *
149
+ * Access Level: Permissions management
150
+ *
151
+ * https://docs.aws.amazon.com/r53recovery/latest/dg/arc-region-switch.region-switch-different-accounts.html
152
+ */
153
+ toPutResourcePolicy(): this;
154
+ /**
155
+ * Grants permission to start a plan execution
156
+ *
157
+ * Access Level: Write
158
+ *
159
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_StartPlanExecution.html
160
+ */
161
+ toStartPlanExecution(): this;
162
+ /**
163
+ * Grants permission to tag a resource
164
+ *
165
+ * Access Level: Tagging
166
+ *
167
+ * Possible conditions:
168
+ * - .ifAwsRequestTag()
169
+ * - .ifAwsResourceTag()
170
+ * - .ifAwsTagKeys()
171
+ *
172
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_TagResource.html
173
+ */
174
+ toTagResource(): this;
175
+ /**
176
+ * Grants permission to remove tags from a resource
177
+ *
178
+ * Access Level: Tagging
179
+ *
180
+ * Possible conditions:
181
+ * - .ifAwsResourceTag()
182
+ * - .ifAwsTagKeys()
183
+ *
184
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_UntagResource.html
185
+ */
186
+ toUntagResource(): this;
187
+ /**
188
+ * Grants permission to update a plan
189
+ *
190
+ * Access Level: Write
191
+ *
192
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_UpdatePlan.html
193
+ */
194
+ toUpdatePlan(): this;
195
+ /**
196
+ * Grants permission to update a plan execution
197
+ *
198
+ * Access Level: Write
199
+ *
200
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_UpdatePlanExecution.html
201
+ */
202
+ toUpdatePlanExecution(): this;
203
+ /**
204
+ * Grants permission to update a plan execution step
205
+ *
206
+ * Access Level: Write
207
+ *
208
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_UpdatePlanExecutionStep.html
209
+ */
210
+ toUpdatePlanExecutionStep(): this;
211
+ protected accessLevelList: AccessLevelList;
212
+ /**
213
+ * Adds a resource of type plan to the statement
214
+ *
215
+ * https://docs.aws.amazon.com/r53recovery/latest/dg/plan.html
216
+ *
217
+ * @param resourceId - Identifier for the resourceId.
218
+ * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
219
+ * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region.
220
+ * @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.
221
+ *
222
+ * Possible conditions:
223
+ * - .ifAwsResourceTag()
224
+ */
225
+ onPlan(resourceId: string, account?: string, region?: string, partition?: string): this;
226
+ /**
227
+ * Filters access by tag key-value pairs attached to the resource
228
+ *
229
+ * https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-requesttag
230
+ *
231
+ * Applies to actions:
232
+ * - .toCreatePlan()
233
+ * - .toTagResource()
234
+ *
235
+ * @param tagKey The tag key to check
236
+ * @param value The value(s) to check
237
+ * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike`
238
+ */
239
+ ifAwsRequestTag(tagKey: string, value: string | string[], operator?: Operator | string): this;
240
+ /**
241
+ * Filters access by a tag's key and value in a request
242
+ *
243
+ * https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-resourcetag
244
+ *
245
+ * Applies to actions:
246
+ * - .toListTagsForResource()
247
+ * - .toTagResource()
248
+ * - .toUntagResource()
249
+ *
250
+ * Applies to resource types:
251
+ * - plan
252
+ *
253
+ * @param tagKey The tag key to check
254
+ * @param value The value(s) to check
255
+ * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike`
256
+ */
257
+ ifAwsResourceTag(tagKey: string, value: string | string[], operator?: Operator | string): this;
258
+ /**
259
+ * Filters access by the presence of tag keys in the request
260
+ *
261
+ * https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-tagkeys
262
+ *
263
+ * Applies to actions:
264
+ * - .toCreatePlan()
265
+ * - .toTagResource()
266
+ * - .toUntagResource()
267
+ *
268
+ * @param value The value(s) to check
269
+ * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike`
270
+ */
271
+ ifAwsTagKeys(value: string | string[], operator?: Operator | string): this;
272
+ /**
273
+ * Statement provider for service [arc-region-switch](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonarcregionswitch.html).
274
+ *
275
+ */
276
+ constructor(props?: iam.PolicyStatementProps);
277
+ }
@@ -0,0 +1,370 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ArcRegionSwitch = void 0;
4
+ const shared_1 = require("../../shared");
5
+ /**
6
+ * Statement provider for service [arc-region-switch](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonarcregionswitch.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 ArcRegionSwitch extends shared_1.PolicyStatement {
11
+ /**
12
+ * Grants permission to approve a plan execution step
13
+ *
14
+ * Access Level: Write
15
+ *
16
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_ApprovePlanExecutionStep.html
17
+ */
18
+ toApprovePlanExecutionStep() {
19
+ return this.to('ApprovePlanExecutionStep');
20
+ }
21
+ /**
22
+ * Grants permission to cancel a plan execution
23
+ *
24
+ * Access Level: Write
25
+ *
26
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_CancelPlanExecution.html
27
+ */
28
+ toCancelPlanExecution() {
29
+ return this.to('CancelPlanExecution');
30
+ }
31
+ /**
32
+ * Grants permission to create a plan
33
+ *
34
+ * Access Level: Write
35
+ *
36
+ * Possible conditions:
37
+ * - .ifAwsRequestTag()
38
+ * - .ifAwsTagKeys()
39
+ *
40
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_CreatePlan.html
41
+ */
42
+ toCreatePlan() {
43
+ return this.to('CreatePlan');
44
+ }
45
+ /**
46
+ * Grants permission to delete a plan
47
+ *
48
+ * Access Level: Write
49
+ *
50
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_DeletePlan.html
51
+ */
52
+ toDeletePlan() {
53
+ return this.to('DeletePlan');
54
+ }
55
+ /**
56
+ * Grants permission to delete the RAM access control policy for a plan
57
+ *
58
+ * Access Level: Permissions management
59
+ *
60
+ * https://docs.aws.amazon.com/r53recovery/latest/dg/arc-region-switch.region-switch-different-accounts.html
61
+ */
62
+ toDeleteResourcePolicy() {
63
+ return this.to('DeleteResourcePolicy');
64
+ }
65
+ /**
66
+ * Grants permission to get information about plans in all AWS Regions using a control plane
67
+ *
68
+ * Access Level: Read
69
+ *
70
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_GetPlan.html
71
+ */
72
+ toGetPlan() {
73
+ return this.to('GetPlan');
74
+ }
75
+ /**
76
+ * Grants permission to get a plan's evaluation status
77
+ *
78
+ * Access Level: Read
79
+ *
80
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_GetPlanEvaluationStatus.html
81
+ */
82
+ toGetPlanEvaluationStatus() {
83
+ return this.to('GetPlanEvaluationStatus');
84
+ }
85
+ /**
86
+ * Grants permission to get plan execution details and setup information
87
+ *
88
+ * Access Level: Read
89
+ *
90
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_GetPlanExecution.html
91
+ */
92
+ toGetPlanExecution() {
93
+ return this.to('GetPlanExecution');
94
+ }
95
+ /**
96
+ * Grants permission to get information about a plan in a specific AWS Region using the Region switch Regional data plane
97
+ *
98
+ * Access Level: Read
99
+ *
100
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_GetPlanInRegion.html
101
+ */
102
+ toGetPlanInRegion() {
103
+ return this.to('GetPlanInRegion');
104
+ }
105
+ /**
106
+ * Grants permission to get the resource policy of a plan
107
+ *
108
+ * Access Level: Permissions management
109
+ *
110
+ * https://docs.aws.amazon.com/r53recovery/latest/dg/arc-region-switch.region-switch-different-accounts.html
111
+ */
112
+ toGetResourcePolicy() {
113
+ return this.to('GetResourcePolicy');
114
+ }
115
+ /**
116
+ * Grants permission to list plan execution events
117
+ *
118
+ * Access Level: List
119
+ *
120
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_ListPlanExecutionEvents.html
121
+ */
122
+ toListPlanExecutionEvents() {
123
+ return this.to('ListPlanExecutionEvents');
124
+ }
125
+ /**
126
+ * Grants permission to list plan executions
127
+ *
128
+ * Access Level: List
129
+ *
130
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_ListPlanExecutions.html
131
+ */
132
+ toListPlanExecutions() {
133
+ return this.to('ListPlanExecutions');
134
+ }
135
+ /**
136
+ * Grants permission to list plans in all AWS Regions using a control plane
137
+ *
138
+ * Access Level: List
139
+ *
140
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_ListPlans.html
141
+ */
142
+ toListPlans() {
143
+ return this.to('ListPlans');
144
+ }
145
+ /**
146
+ * Grants permission to list plans in a specific AWS Region using the Region switch Regional data plane
147
+ *
148
+ * Access Level: List
149
+ *
150
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_ListPlansInRegion.html
151
+ */
152
+ toListPlansInRegion() {
153
+ return this.to('ListPlansInRegion');
154
+ }
155
+ /**
156
+ * Grants permission to list Route 53 health checks
157
+ *
158
+ * Access Level: List
159
+ *
160
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_ListRoute53HealthChecks.html
161
+ */
162
+ toListRoute53HealthChecks() {
163
+ return this.to('ListRoute53HealthChecks');
164
+ }
165
+ /**
166
+ * Grants permission to list tags for a resource
167
+ *
168
+ * Access Level: Read
169
+ *
170
+ * Possible conditions:
171
+ * - .ifAwsResourceTag()
172
+ *
173
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_ListTagsForResource.html
174
+ */
175
+ toListTagsForResource() {
176
+ return this.to('ListTagsForResource');
177
+ }
178
+ /**
179
+ * Grants permission to define the RAM access control policy for a plan
180
+ *
181
+ * Access Level: Permissions management
182
+ *
183
+ * https://docs.aws.amazon.com/r53recovery/latest/dg/arc-region-switch.region-switch-different-accounts.html
184
+ */
185
+ toPutResourcePolicy() {
186
+ return this.to('PutResourcePolicy');
187
+ }
188
+ /**
189
+ * Grants permission to start a plan execution
190
+ *
191
+ * Access Level: Write
192
+ *
193
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_StartPlanExecution.html
194
+ */
195
+ toStartPlanExecution() {
196
+ return this.to('StartPlanExecution');
197
+ }
198
+ /**
199
+ * Grants permission to tag a resource
200
+ *
201
+ * Access Level: Tagging
202
+ *
203
+ * Possible conditions:
204
+ * - .ifAwsRequestTag()
205
+ * - .ifAwsResourceTag()
206
+ * - .ifAwsTagKeys()
207
+ *
208
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_TagResource.html
209
+ */
210
+ toTagResource() {
211
+ return this.to('TagResource');
212
+ }
213
+ /**
214
+ * Grants permission to remove tags from a resource
215
+ *
216
+ * Access Level: Tagging
217
+ *
218
+ * Possible conditions:
219
+ * - .ifAwsResourceTag()
220
+ * - .ifAwsTagKeys()
221
+ *
222
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_UntagResource.html
223
+ */
224
+ toUntagResource() {
225
+ return this.to('UntagResource');
226
+ }
227
+ /**
228
+ * Grants permission to update a plan
229
+ *
230
+ * Access Level: Write
231
+ *
232
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_UpdatePlan.html
233
+ */
234
+ toUpdatePlan() {
235
+ return this.to('UpdatePlan');
236
+ }
237
+ /**
238
+ * Grants permission to update a plan execution
239
+ *
240
+ * Access Level: Write
241
+ *
242
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_UpdatePlanExecution.html
243
+ */
244
+ toUpdatePlanExecution() {
245
+ return this.to('UpdatePlanExecution');
246
+ }
247
+ /**
248
+ * Grants permission to update a plan execution step
249
+ *
250
+ * Access Level: Write
251
+ *
252
+ * https://docs.aws.amazon.com/arc-region-switch/latest/api/API_UpdatePlanExecutionStep.html
253
+ */
254
+ toUpdatePlanExecutionStep() {
255
+ return this.to('UpdatePlanExecutionStep');
256
+ }
257
+ /**
258
+ * Adds a resource of type plan to the statement
259
+ *
260
+ * https://docs.aws.amazon.com/r53recovery/latest/dg/plan.html
261
+ *
262
+ * @param resourceId - Identifier for the resourceId.
263
+ * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
264
+ * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region.
265
+ * @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.
266
+ *
267
+ * Possible conditions:
268
+ * - .ifAwsResourceTag()
269
+ */
270
+ onPlan(resourceId, account, region, partition) {
271
+ return this.on(`arn:${partition ?? this.defaultPartition}:arc-region-switch:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:plan/${resourceId}`);
272
+ }
273
+ /**
274
+ * Filters access by tag key-value pairs attached to the resource
275
+ *
276
+ * https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-requesttag
277
+ *
278
+ * Applies to actions:
279
+ * - .toCreatePlan()
280
+ * - .toTagResource()
281
+ *
282
+ * @param tagKey The tag key to check
283
+ * @param value The value(s) to check
284
+ * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike`
285
+ */
286
+ ifAwsRequestTag(tagKey, value, operator) {
287
+ return this.if(`aws:RequestTag/${tagKey}`, value, operator ?? 'StringLike');
288
+ }
289
+ /**
290
+ * Filters access by a tag's key and value in a request
291
+ *
292
+ * https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-resourcetag
293
+ *
294
+ * Applies to actions:
295
+ * - .toListTagsForResource()
296
+ * - .toTagResource()
297
+ * - .toUntagResource()
298
+ *
299
+ * Applies to resource types:
300
+ * - plan
301
+ *
302
+ * @param tagKey The tag key to check
303
+ * @param value The value(s) to check
304
+ * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike`
305
+ */
306
+ ifAwsResourceTag(tagKey, value, operator) {
307
+ return this.if(`aws:ResourceTag/${tagKey}`, value, operator ?? 'StringLike');
308
+ }
309
+ /**
310
+ * Filters access by the presence of tag keys in the request
311
+ *
312
+ * https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-tagkeys
313
+ *
314
+ * Applies to actions:
315
+ * - .toCreatePlan()
316
+ * - .toTagResource()
317
+ * - .toUntagResource()
318
+ *
319
+ * @param value The value(s) to check
320
+ * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike`
321
+ */
322
+ ifAwsTagKeys(value, operator) {
323
+ return this.if(`aws:TagKeys`, value, operator ?? 'StringLike');
324
+ }
325
+ /**
326
+ * Statement provider for service [arc-region-switch](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonarcregionswitch.html).
327
+ *
328
+ */
329
+ constructor(props) {
330
+ super(props);
331
+ this.servicePrefix = 'arc-region-switch';
332
+ this.accessLevelList = {
333
+ Write: [
334
+ 'ApprovePlanExecutionStep',
335
+ 'CancelPlanExecution',
336
+ 'CreatePlan',
337
+ 'DeletePlan',
338
+ 'StartPlanExecution',
339
+ 'UpdatePlan',
340
+ 'UpdatePlanExecution',
341
+ 'UpdatePlanExecutionStep'
342
+ ],
343
+ 'Permissions management': [
344
+ 'DeleteResourcePolicy',
345
+ 'GetResourcePolicy',
346
+ 'PutResourcePolicy'
347
+ ],
348
+ Read: [
349
+ 'GetPlan',
350
+ 'GetPlanEvaluationStatus',
351
+ 'GetPlanExecution',
352
+ 'GetPlanInRegion',
353
+ 'ListTagsForResource'
354
+ ],
355
+ List: [
356
+ 'ListPlanExecutionEvents',
357
+ 'ListPlanExecutions',
358
+ 'ListPlans',
359
+ 'ListPlansInRegion',
360
+ 'ListRoute53HealthChecks'
361
+ ],
362
+ Tagging: [
363
+ 'TagResource',
364
+ 'UntagResource'
365
+ ]
366
+ };
367
+ }
368
+ }
369
+ exports.ArcRegionSwitch = ArcRegionSwitch;
370
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJjcmVnaW9uc3dpdGNoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYXJjcmVnaW9uc3dpdGNoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLHlDQUF5RDtBQUd6RDs7OztHQUlHO0FBQ0gsTUFBYSxlQUFnQixTQUFRLHdCQUFlO0lBR2xEOzs7Ozs7T0FNRztJQUNJLDBCQUEwQjtRQUMvQixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsMEJBQTBCLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0kscUJBQXFCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRDs7Ozs7Ozs7OztPQVVHO0lBQ0ksWUFBWTtRQUNqQixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLFlBQVk7UUFDakIsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxzQkFBc0I7UUFDM0IsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLHNCQUFzQixDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLHlCQUF5QjtRQUM5QixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksa0JBQWtCO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxpQkFBaUI7UUFDdEIsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLG1CQUFtQjtRQUN4QixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0kseUJBQXlCO1FBQzlCLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxvQkFBb0I7UUFDekIsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLFdBQVc7UUFDaEIsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxtQkFBbUI7UUFDeEIsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLHlCQUF5QjtRQUM5QixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQ7Ozs7Ozs7OztPQVNHO0lBQ0kscUJBQXFCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxtQkFBbUI7UUFDeEIsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLG9CQUFvQjtRQUN6QixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7O09BV0c7SUFDSSxhQUFhO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7T0FVRztJQUNJLGVBQWU7UUFDcEIsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxZQUFZO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0kscUJBQXFCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSx5QkFBeUI7UUFDOUIsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDNUMsQ0FBQztJQXNDRDs7Ozs7Ozs7Ozs7O09BWUc7SUFDSSxNQUFNLENBQUMsVUFBa0IsRUFBRSxPQUFnQixFQUFFLE1BQWUsRUFBRSxTQUFrQjtRQUNyRixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsT0FBUSxTQUFTLElBQUksSUFBSSxDQUFDLGdCQUFpQixzQkFBdUIsTUFBTSxJQUFJLElBQUksQ0FBQyxhQUFjLElBQUssT0FBTyxJQUFJLElBQUksQ0FBQyxjQUFlLFNBQVUsVUFBVyxFQUFFLENBQUMsQ0FBQztJQUM3SyxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7OztPQVlHO0lBQ0ksZUFBZSxDQUFDLE1BQWMsRUFBRSxLQUF3QixFQUFFLFFBQTRCO1FBQzNGLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxrQkFBbUIsTUFBTyxFQUFFLEVBQUUsS0FBSyxFQUFFLFFBQVEsSUFBSSxZQUFZLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7T0FnQkc7SUFDSSxnQkFBZ0IsQ0FBQyxNQUFjLEVBQUUsS0FBd0IsRUFBRSxRQUE0QjtRQUM1RixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsbUJBQW9CLE1BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxRQUFRLElBQUksWUFBWSxDQUFDLENBQUM7SUFDakYsQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7T0FZRztJQUNJLFlBQVksQ0FBQyxLQUF3QixFQUFFLFFBQTRCO1FBQ3hFLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsS0FBSyxFQUFFLFFBQVEsSUFBSSxZQUFZLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsWUFBWSxLQUFnQztRQUMxQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFoWVIsa0JBQWEsR0FBRyxtQkFBbUIsQ0FBQztRQStRakMsb0JBQWUsR0FBb0I7WUFDM0MsS0FBSyxFQUFFO2dCQUNMLDBCQUEwQjtnQkFDMUIscUJBQXFCO2dCQUNyQixZQUFZO2dCQUNaLFlBQVk7Z0JBQ1osb0JBQW9CO2dCQUNwQixZQUFZO2dCQUNaLHFCQUFxQjtnQkFDckIseUJBQXlCO2FBQzFCO1lBQ0Qsd0JBQXdCLEVBQUU7Z0JBQ3hCLHNCQUFzQjtnQkFDdEIsbUJBQW1CO2dCQUNuQixtQkFBbUI7YUFDcEI7WUFDRCxJQUFJLEVBQUU7Z0JBQ0osU0FBUztnQkFDVCx5QkFBeUI7Z0JBQ3pCLGtCQUFrQjtnQkFDbEIsaUJBQWlCO2dCQUNqQixxQkFBcUI7YUFDdEI7WUFDRCxJQUFJLEVBQUU7Z0JBQ0oseUJBQXlCO2dCQUN6QixvQkFBb0I7Z0JBQ3BCLFdBQVc7Z0JBQ1gsbUJBQW1CO2dCQUNuQix5QkFBeUI7YUFDMUI7WUFDRCxPQUFPLEVBQUU7Z0JBQ1AsYUFBYTtnQkFDYixlQUFlO2FBQ2hCO1NBQ0YsQ0FBQztJQWdGRixDQUFDO0NBQ0Y7QUFuWUQsMENBbVlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWNjZXNzTGV2ZWxMaXN0IH0gZnJvbSAnLi4vLi4vc2hhcmVkL2FjY2Vzcy1sZXZlbCc7XG5pbXBvcnQgeyBQb2xpY3lTdGF0ZW1lbnQsIE9wZXJhdG9yIH0gZnJvbSAnLi4vLi4vc2hhcmVkJztcbmltcG9ydCB7IGF3c19pYW0gYXMgaWFtIH0gZnJvbSBcImF3cy1jZGstbGliXCI7XG5cbi8qKlxuICogU3RhdGVtZW50IHByb3ZpZGVyIGZvciBzZXJ2aWNlIFthcmMtcmVnaW9uLXN3aXRjaF0oaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL3NlcnZpY2UtYXV0aG9yaXphdGlvbi9sYXRlc3QvcmVmZXJlbmNlL2xpc3RfYW1hem9uYXJjcmVnaW9uc3dpdGNoLmh0bWwpLlxuICpcbiAqIEBwYXJhbSBzaWQgW1NJRF0oaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0lBTS9sYXRlc3QvVXNlckd1aWRlL3JlZmVyZW5jZV9wb2xpY2llc19lbGVtZW50c19zaWQuaHRtbCkgb2YgdGhlIHN0YXRlbWVudFxuICovXG5leHBvcnQgY2xhc3MgQXJjUmVnaW9uU3dpdGNoIGV4dGVuZHMgUG9saWN5U3RhdGVtZW50IHtcbiAgcHVibGljIHNlcnZpY2VQcmVmaXggPSAnYXJjLXJlZ2lvbi1zd2l0Y2gnO1xuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byBhcHByb3ZlIGEgcGxhbiBleGVjdXRpb24gc3RlcFxuICAgKlxuICAgKiBBY2Nlc3MgTGV2ZWw6IFdyaXRlXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hcmMtcmVnaW9uLXN3aXRjaC9sYXRlc3QvYXBpL0FQSV9BcHByb3ZlUGxhbkV4ZWN1dGlvblN0ZXAuaHRtbFxuICAgKi9cbiAgcHVibGljIHRvQXBwcm92ZVBsYW5FeGVjdXRpb25TdGVwKCkge1xuICAgIHJldHVybiB0aGlzLnRvKCdBcHByb3ZlUGxhbkV4ZWN1dGlvblN0ZXAnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byBjYW5jZWwgYSBwbGFuIGV4ZWN1dGlvblxuICAgKlxuICAgKiBBY2Nlc3MgTGV2ZWw6IFdyaXRlXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hcmMtcmVnaW9uLXN3aXRjaC9sYXRlc3QvYXBpL0FQSV9DYW5jZWxQbGFuRXhlY3V0aW9uLmh0bWxcbiAgICovXG4gIHB1YmxpYyB0b0NhbmNlbFBsYW5FeGVjdXRpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMudG8oJ0NhbmNlbFBsYW5FeGVjdXRpb24nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byBjcmVhdGUgYSBwbGFuXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogV3JpdGVcbiAgICpcbiAgICogUG9zc2libGUgY29uZGl0aW9uczpcbiAgICogLSAuaWZBd3NSZXF1ZXN0VGFnKClcbiAgICogLSAuaWZBd3NUYWdLZXlzKClcbiAgICpcbiAgICogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2FyYy1yZWdpb24tc3dpdGNoL2xhdGVzdC9hcGkvQVBJX0NyZWF0ZVBsYW4uaHRtbFxuICAgKi9cbiAgcHVibGljIHRvQ3JlYXRlUGxhbigpIHtcbiAgICByZXR1cm4gdGhpcy50bygnQ3JlYXRlUGxhbicpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGRlbGV0ZSBhIHBsYW5cbiAgICpcbiAgICogQWNjZXNzIExldmVsOiBXcml0ZVxuICAgKlxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vYXJjLXJlZ2lvbi1zd2l0Y2gvbGF0ZXN0L2FwaS9BUElfRGVsZXRlUGxhbi5odG1sXG4gICAqL1xuICBwdWJsaWMgdG9EZWxldGVQbGFuKCkge1xuICAgIHJldHVybiB0aGlzLnRvKCdEZWxldGVQbGFuJyk7XG4gIH1cblxuICAvKipcbiAgICogR3JhbnRzIHBlcm1pc3Npb24gdG8gZGVsZXRlIHRoZSBSQU0gYWNjZXNzIGNvbnRyb2wgcG9saWN5IGZvciBhIHBsYW5cbiAgICpcbiAgICogQWNjZXNzIExldmVsOiBQZXJtaXNzaW9ucyBtYW5hZ2VtZW50XG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9yNTNyZWNvdmVyeS9sYXRlc3QvZGcvYXJjLXJlZ2lvbi1zd2l0Y2gucmVnaW9uLXN3aXRjaC1kaWZmZXJlbnQtYWNjb3VudHMuaHRtbFxuICAgKi9cbiAgcHVibGljIHRvRGVsZXRlUmVzb3VyY2VQb2xpY3koKSB7XG4gICAgcmV0dXJuIHRoaXMudG8oJ0RlbGV0ZVJlc291cmNlUG9saWN5Jyk7XG4gIH1cblxuICAvKipcbiAgICogR3JhbnRzIHBlcm1pc3Npb24gdG8gZ2V0IGluZm9ybWF0aW9uIGFib3V0IHBsYW5zIGluIGFsbCBBV1MgUmVnaW9ucyB1c2luZyBhIGNvbnRyb2wgcGxhbmVcbiAgICpcbiAgICogQWNjZXNzIExldmVsOiBSZWFkXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hcmMtcmVnaW9uLXN3aXRjaC9sYXRlc3QvYXBpL0FQSV9HZXRQbGFuLmh0bWxcbiAgICovXG4gIHB1YmxpYyB0b0dldFBsYW4oKSB7XG4gICAgcmV0dXJuIHRoaXMudG8oJ0dldFBsYW4nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byBnZXQgYSBwbGFuJ3MgZXZhbHVhdGlvbiBzdGF0dXNcbiAgICpcbiAgICogQWNjZXNzIExldmVsOiBSZWFkXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hcmMtcmVnaW9uLXN3aXRjaC9sYXRlc3QvYXBpL0FQSV9HZXRQbGFuRXZhbHVhdGlvblN0YXR1cy5odG1sXG4gICAqL1xuICBwdWJsaWMgdG9HZXRQbGFuRXZhbHVhdGlvblN0YXR1cygpIHtcbiAgICByZXR1cm4gdGhpcy50bygnR2V0UGxhbkV2YWx1YXRpb25TdGF0dXMnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byBnZXQgcGxhbiBleGVjdXRpb24gZGV0YWlscyBhbmQgc2V0dXAgaW5mb3JtYXRpb25cbiAgICpcbiAgICogQWNjZXNzIExldmVsOiBSZWFkXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hcmMtcmVnaW9uLXN3aXRjaC9sYXRlc3QvYXBpL0FQSV9HZXRQbGFuRXhlY3V0aW9uLmh0bWxcbiAgICovXG4gIHB1YmxpYyB0b0dldFBsYW5FeGVjdXRpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMudG8oJ0dldFBsYW5FeGVjdXRpb24nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byBnZXQgaW5mb3JtYXRpb24gYWJvdXQgYSBwbGFuIGluIGEgc3BlY2lmaWMgQVdTIFJlZ2lvbiB1c2luZyB0aGUgUmVnaW9uIHN3aXRjaCBSZWdpb25hbCBkYXRhIHBsYW5lXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogUmVhZFxuICAgKlxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vYXJjLXJlZ2lvbi1zd2l0Y2gvbGF0ZXN0L2FwaS9BUElfR2V0UGxhbkluUmVnaW9uLmh0bWxcbiAgICovXG4gIHB1YmxpYyB0b0dldFBsYW5JblJlZ2lvbigpIHtcbiAgICByZXR1cm4gdGhpcy50bygnR2V0UGxhbkluUmVnaW9uJyk7XG4gIH1cblxuICAvKipcbiAgICogR3JhbnRzIHBlcm1pc3Npb24gdG8gZ2V0IHRoZSByZXNvdXJjZSBwb2xpY3kgb2YgYSBwbGFuXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogUGVybWlzc2lvbnMgbWFuYWdlbWVudFxuICAgKlxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vcjUzcmVjb3ZlcnkvbGF0ZXN0L2RnL2FyYy1yZWdpb24tc3dpdGNoLnJlZ2lvbi1zd2l0Y2gtZGlmZmVyZW50LWFjY291bnRzLmh0bWxcbiAgICovXG4gIHB1YmxpYyB0b0dldFJlc291cmNlUG9saWN5KCkge1xuICAgIHJldHVybiB0aGlzLnRvKCdHZXRSZXNvdXJjZVBvbGljeScpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGxpc3QgcGxhbiBleGVjdXRpb24gZXZlbnRzXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogTGlzdFxuICAgKlxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vYXJjLXJlZ2lvbi1zd2l0Y2gvbGF0ZXN0L2FwaS9BUElfTGlzdFBsYW5FeGVjdXRpb25FdmVudHMuaHRtbFxuICAgKi9cbiAgcHVibGljIHRvTGlzdFBsYW5FeGVjdXRpb25FdmVudHMoKSB7XG4gICAgcmV0dXJuIHRoaXMudG8oJ0xpc3RQbGFuRXhlY3V0aW9uRXZlbnRzJyk7XG4gIH1cblxuICAvKipcbiAgICogR3JhbnRzIHBlcm1pc3Npb24gdG8gbGlzdCBwbGFuIGV4ZWN1dGlvbnNcbiAgICpcbiAgICogQWNjZXNzIExldmVsOiBMaXN0XG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hcmMtcmVnaW9uLXN3aXRjaC9sYXRlc3QvYXBpL0FQSV9MaXN0UGxhbkV4ZWN1dGlvbnMuaHRtbFxuICAgKi9cbiAgcHVibGljIHRvTGlzdFBsYW5FeGVjdXRpb25zKCkge1xuICAgIHJldHVybiB0aGlzLnRvKCdMaXN0UGxhbkV4ZWN1dGlvbnMnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byBsaXN0IHBsYW5zIGluIGFsbCBBV1MgUmVnaW9ucyB1c2luZyBhIGNvbnRyb2wgcGxhbmVcbiAgICpcbiAgICogQWNjZXNzIExldmVsOiBMaXN0XG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hcmMtcmVnaW9uLXN3aXRjaC9sYXRlc3QvYXBpL0FQSV9MaXN0UGxhbnMuaHRtbFxuICAgKi9cbiAgcHVibGljIHRvTGlzdFBsYW5zKCkge1xuICAgIHJldHVybiB0aGlzLnRvKCdMaXN0UGxhbnMnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byBsaXN0IHBsYW5zIGluIGEgc3BlY2lmaWMgQVdTIFJlZ2lvbiB1c2luZyB0aGUgUmVnaW9uIHN3aXRjaCBSZWdpb25hbCBkYXRhIHBsYW5lXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogTGlzdFxuICAgKlxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vYXJjLXJlZ2lvbi1zd2l0Y2gvbGF0ZXN0L2FwaS9BUElfTGlzdFBsYW5zSW5SZWdpb24uaHRtbFxuICAgKi9cbiAgcHVibGljIHRvTGlzdFBsYW5zSW5SZWdpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMudG8oJ0xpc3RQbGFuc0luUmVnaW9uJyk7XG4gIH1cblxuICAvKipcbiAgICogR3JhbnRzIHBlcm1pc3Npb24gdG8gbGlzdCBSb3V0ZSA1MyBoZWFsdGggY2hlY2tzXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogTGlzdFxuICAgKlxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vYXJjLXJlZ2lvbi1zd2l0Y2gvbGF0ZXN0L2FwaS9BUElfTGlzdFJvdXRlNTNIZWFsdGhDaGVja3MuaHRtbFxuICAgKi9cbiAgcHVibGljIHRvTGlzdFJvdXRlNTNIZWFsdGhDaGVja3MoKSB7XG4gICAgcmV0dXJuIHRoaXMudG8oJ0xpc3RSb3V0ZTUzSGVhbHRoQ2hlY2tzJyk7XG4gIH1cblxuICAvKipcbiAgICogR3JhbnRzIHBlcm1pc3Npb24gdG8gbGlzdCB0YWdzIGZvciBhIHJlc291cmNlXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogUmVhZFxuICAgKlxuICAgKiBQb3NzaWJsZSBjb25kaXRpb25zOlxuICAgKiAtIC5pZkF3c1Jlc291cmNlVGFnKClcbiAgICpcbiAgICogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2FyYy1yZWdpb24tc3dpdGNoL2xhdGVzdC9hcGkvQVBJX0xpc3RUYWdzRm9yUmVzb3VyY2UuaHRtbFxuICAgKi9cbiAgcHVibGljIHRvTGlzdFRhZ3NGb3JSZXNvdXJjZSgpIHtcbiAgICByZXR1cm4gdGhpcy50bygnTGlzdFRhZ3NGb3JSZXNvdXJjZScpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGRlZmluZSB0aGUgUkFNIGFjY2VzcyBjb250cm9sIHBvbGljeSBmb3IgYSBwbGFuXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogUGVybWlzc2lvbnMgbWFuYWdlbWVudFxuICAgKlxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vcjUzcmVjb3ZlcnkvbGF0ZXN0L2RnL2FyYy1yZWdpb24tc3dpdGNoLnJlZ2lvbi1zd2l0Y2gtZGlmZmVyZW50LWFjY291bnRzLmh0bWxcbiAgICovXG4gIHB1YmxpYyB0b1B1dFJlc291cmNlUG9saWN5KCkge1xuICAgIHJldHVybiB0aGlzLnRvKCdQdXRSZXNvdXJjZVBvbGljeScpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwZXJtaXNzaW9uIHRvIHN0YXJ0IGEgcGxhbiBleGVjdXRpb25cbiAgICpcbiAgICogQWNjZXNzIExldmVsOiBXcml0ZVxuICAgKlxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vYXJjLXJlZ2lvbi1zd2l0Y2gvbGF0ZXN0L2FwaS9BUElfU3RhcnRQbGFuRXhlY3V0aW9uLmh0bWxcbiAgICovXG4gIHB1YmxpYyB0b1N0YXJ0UGxhbkV4ZWN1dGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy50bygnU3RhcnRQbGFuRXhlY3V0aW9uJyk7XG4gIH1cblxuICAvKipcbiAgICogR3JhbnRzIHBlcm1pc3Npb24gdG8gdGFnIGEgcmVzb3VyY2VcbiAgICpcbiAgICogQWNjZXNzIExldmVsOiBUYWdnaW5nXG4gICAqXG4gICAqIFBvc3NpYmxlIGNvbmRpdGlvbnM6XG4gICAqIC0gLmlmQXdzUmVxdWVzdFRhZygpXG4gICAqIC0gLmlmQXdzUmVzb3VyY2VUYWcoKVxuICAgKiAtIC5pZkF3c1RhZ0tleXMoKVxuICAgKlxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vYXJjLXJlZ2lvbi1zd2l0Y2gvbGF0ZXN0L2FwaS9BUElfVGFnUmVzb3VyY2UuaHRtbFxuICAgKi9cbiAgcHVibGljIHRvVGFnUmVzb3VyY2UoKSB7XG4gICAgcmV0dXJuIHRoaXMudG8oJ1RhZ1Jlc291cmNlJyk7XG4gIH1cblxuICAvKipcbiAgICogR3JhbnRzIHBlcm1pc3Npb24gdG8gcmVtb3ZlIHRhZ3MgZnJvbSBhIHJlc291cmNlXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogVGFnZ2luZ1xuICAgKlxuICAgKiBQb3NzaWJsZSBjb25kaXRpb25zOlxuICAgKiAtIC5pZkF3c1Jlc291cmNlVGFnKClcbiAgICogLSAuaWZBd3NUYWdLZXlzKClcbiAgICpcbiAgICogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2FyYy1yZWdpb24tc3dpdGNoL2xhdGVzdC9hcGkvQVBJX1VudGFnUmVzb3VyY2UuaHRtbFxuICAgKi9cbiAgcHVibGljIHRvVW50YWdSZXNvdXJjZSgpIHtcbiAgICByZXR1cm4gdGhpcy50bygnVW50YWdSZXNvdXJjZScpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwZXJtaXNzaW9uIHRvIHVwZGF0ZSBhIHBsYW5cbiAgICpcbiAgICogQWNjZXNzIExldmVsOiBXcml0ZVxuICAgKlxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vYXJjLXJlZ2lvbi1zd2l0Y2gvbGF0ZXN0L2FwaS9BUElfVXBkYXRlUGxhbi5odG1sXG4gICAqL1xuICBwdWJsaWMgdG9VcGRhdGVQbGFuKCkge1xuICAgIHJldHVybiB0aGlzLnRvKCdVcGRhdGVQbGFuJyk7XG4gIH1cblxuICAvKipcbiAgICogR3JhbnRzIHBlcm1pc3Npb24gdG8gdXBkYXRlIGEgcGxhbiBleGVjdXRpb25cbiAgICpcbiAgICogQWNjZXNzIExldmVsOiBXcml0ZVxuICAgKlxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vYXJjLXJlZ2lvbi1zd2l0Y2gvbGF0ZXN0L2FwaS9BUElfVXBkYXRlUGxhbkV4ZWN1dGlvbi5odG1sXG4gICAqL1xuICBwdWJsaWMgdG9VcGRhdGVQbGFuRXhlY3V0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLnRvKCdVcGRhdGVQbGFuRXhlY3V0aW9uJyk7XG4gIH1cblxuICAvKipcbiAgICogR3JhbnRzIHBlcm1pc3Npb24gdG8gdXBkYXRlIGEgcGxhbiBleGVjdXRpb24gc3RlcFxuICAgKlxuICAgKiBBY2Nlc3MgTGV2ZWw6IFdyaXRlXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hcmMtcmVnaW9uLXN3aXRjaC9sYXRlc3QvYXBpL0FQSV9VcGRhdGVQbGFuRXhlY3V0aW9uU3RlcC5odG1sXG4gICAqL1xuICBwdWJsaWMgdG9VcGRhdGVQbGFuRXhlY3V0aW9uU3RlcCgpIHtcbiAgICByZXR1cm4gdGhpcy50bygnVXBkYXRlUGxhbkV4ZWN1dGlvblN0ZXAnKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhY2Nlc3NMZXZlbExpc3Q6IEFjY2Vzc0xldmVsTGlzdCA9IHtcbiAgICBXcml0ZTogW1xuICAgICAgJ0FwcHJvdmVQbGFuRXhlY3V0aW9uU3RlcCcsXG4gICAgICAnQ2FuY2VsUGxhbkV4ZWN1dGlvbicsXG4gICAgICAnQ3JlYXRlUGxhbicsXG4gICAgICAnRGVsZXRlUGxhbicsXG4gICAgICAnU3RhcnRQbGFuRXhlY3V0aW9uJyxcbiAgICAgICdVcGRhdGVQbGFuJyxcbiAgICAgICdVcGRhdGVQbGFuRXhlY3V0aW9uJyxcbiAgICAgICdVcGRhdGVQbGFuRXhlY3V0aW9uU3RlcCdcbiAgICBdLFxuICAgICdQZXJtaXNzaW9ucyBtYW5hZ2VtZW50JzogW1xuICAgICAgJ0RlbGV0ZVJlc291cmNlUG9saWN5JyxcbiAgICAgICdHZXRSZXNvdXJjZVBvbGljeScsXG4gICAgICAnUHV0UmVzb3VyY2VQb2xpY3knXG4gICAgXSxcbiAgICBSZWFkOiBbXG4gICAgICAnR2V0UGxhbicsXG4gICAgICAnR2V0UGxhbkV2YWx1YXRpb25TdGF0dXMnLFxuICAgICAgJ0dldFBsYW5FeGVjdXRpb24nLFxuICAgICAgJ0dldFBsYW5JblJlZ2lvbicsXG4gICAgICAnTGlzdFRhZ3NGb3JSZXNvdXJjZSdcbiAgICBdLFxuICAgIExpc3Q6IFtcbiAgICAgICdMaXN0UGxhbkV4ZWN1dGlvbkV2ZW50cycsXG4gICAgICAnTGlzdFBsYW5FeGVjdXRpb25zJyxcbiAgICAgICdMaXN0UGxhbnMnLFxuICAgICAgJ0xpc3RQbGFuc0luUmVnaW9uJyxcbiAgICAgICdMaXN0Um91dGU1M0hlYWx0aENoZWNrcydcbiAgICBdLFxuICAgIFRhZ2dpbmc6IFtcbiAgICAgICdUYWdSZXNvdXJjZScsXG4gICAgICAnVW50YWdSZXNvdXJjZSdcbiAgICBdXG4gIH07XG5cbiAgLyoqXG4gICAqIEFkZHMgYSByZXNvdXJjZSBvZiB0eXBlIHBsYW4gdG8gdGhlIHN0YXRlbWVudFxuICAgKlxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vcjUzcmVjb3ZlcnkvbGF0ZXN0L2RnL3BsYW4uaHRtbFxuICAgKlxuICAgKiBAcGFyYW0gcmVzb3VyY2VJZCAtIElkZW50aWZpZXIgZm9yIHRoZSByZXNvdXJjZUlkLlxuICAgKiBAcGFyYW0gYWNjb3VudCAtIEFjY291bnQgb2YgdGhlIHJlc291cmNlOyBkZWZhdWx0cyB0byBgKmAsIHVubGVzcyB1c2luZyB0aGUgQ0RLLCB3aGVyZSB0aGUgZGVmYXVsdCBpcyB0aGUgY3VycmVudCBTdGFjaydzIGFjY291bnQuXG4gICAqIEBwYXJhbSByZWdpb24gLSBSZWdpb24gb2YgdGhlIHJlc291cmNlOyBkZWZhdWx0cyB0byBgKmAsIHVubGVzcyB1c2luZyB0aGUgQ0RLLCB3aGVyZSB0aGUgZGVmYXVsdCBpcyB0aGUgY3VycmVudCBTdGFjaydzIHJlZ2lvbi5cbiAgICogQHBhcmFtIHBhcnRpdGlvbiAtIFBhcnRpdGlvbiBvZiB0aGUgQVdTIGFjY291bnQgW2F3cywgYXdzLWNuLCBhd3MtdXMtZ292XTsgZGVmYXVsdHMgdG8gYGF3c2AsIHVubGVzcyB1c2luZyB0aGUgQ0RLLCB3aGVyZSB0aGUgZGVmYXVsdCBpcyB0aGUgY3VycmVudCBTdGFjaydzIHBhcnRpdGlvbi5cbiAgICpcbiAgICogUG9zc2libGUgY29uZGl0aW9uczpcbiAgICogLSAuaWZBd3NSZXNvdXJjZVRhZygpXG4gICAqL1xuICBwdWJsaWMgb25QbGFuKHJlc291cmNlSWQ6IHN0cmluZywgYWNjb3VudD86IHN0cmluZywgcmVnaW9uPzogc3RyaW5nLCBwYXJ0aXRpb24/OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5vbihgYXJuOiR7IHBhcnRpdGlvbiA/PyB0aGlzLmRlZmF1bHRQYXJ0aXRpb24gfTphcmMtcmVnaW9uLXN3aXRjaDokeyByZWdpb24gPz8gdGhpcy5kZWZhdWx0UmVnaW9uIH06JHsgYWNjb3VudCA/PyB0aGlzLmRlZmF1bHRBY2NvdW50IH06cGxhbi8keyByZXNvdXJjZUlkIH1gKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGaWx0ZXJzIGFjY2VzcyBieSB0YWcga2V5LXZhbHVlIHBhaXJzIGF0dGFjaGVkIHRvIHRoZSByZXNvdXJjZVxuICAgKlxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vSUFNL2xhdGVzdC9Vc2VyR3VpZGUvcmVmZXJlbmNlX3BvbGljaWVzX2NvbmRpdGlvbi1rZXlzLmh0bWwjY29uZGl0aW9uLWtleXMtcmVxdWVzdHRhZ1xuICAgKlxuICAgKiBBcHBsaWVzIHRvIGFjdGlvbnM6XG4gICAqIC0gLnRvQ3JlYXRlUGxhbigpXG4gICAqIC0gLnRvVGFnUmVzb3VyY2UoKVxuICAgKlxuICAgKiBAcGFyYW0gdGFnS2V5IFRoZSB0YWcga2V5IHRvIGNoZWNrXG4gICAqIEBwYXJhbSB2YWx1ZSBUaGUgdmFsdWUocykgdG8gY2hlY2tcbiAgICogQHBhcmFtIG9wZXJhdG9yIFdvcmtzIHdpdGggW3N0cmluZyBvcGVyYXRvcnNdKGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9JQU0vbGF0ZXN0L1VzZXJHdWlkZS9yZWZlcmVuY2VfcG9saWNpZXNfZWxlbWVudHNfY29uZGl0aW9uX29wZXJhdG9ycy5odG1sI0NvbmRpdGlvbnNfU3RyaW5nKS4gKipEZWZhdWx0OioqIGBTdHJpbmdMaWtlYFxuICAgKi9cbiAgcHVibGljIGlmQXdzUmVxdWVzdFRhZyh0YWdLZXk6IHN0cmluZywgdmFsdWU6IHN0cmluZyB8IHN0cmluZ1tdLCBvcGVyYXRvcj86IE9wZXJhdG9yIHwgc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuaWYoYGF3czpSZXF1ZXN0VGFnLyR7IHRhZ0tleSB9YCwgdmFsdWUsIG9wZXJhdG9yID8/ICdTdHJpbmdMaWtlJyk7XG4gIH1cblxuICAvKipcbiAgICogRmlsdGVycyBhY2Nlc3MgYnkgYSB0YWcncyBrZXkgYW5kIHZhbHVlIGluIGEgcmVxdWVzdFxuICAgKlxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vSUFNL2xhdGVzdC9Vc2VyR3VpZGUvcmVmZXJlbmNlX3BvbGljaWVzX2NvbmRpdGlvbi1rZXlzLmh0bWwjY29uZGl0aW9uLWtleXMtcmVzb3VyY2V0YWdcbiAgICpcbiAgICogQXBwbGllcyB0byBhY3Rpb25zOlxuICAgKiAtIC50b0xpc3RUYWdzRm9yUmVzb3VyY2UoKVxuICAgKiAtIC50b1RhZ1Jlc291cmNlKClcbiAgICogLSAudG9VbnRhZ1Jlc291cmNlKClcbiAgICpcbiAgICogQXBwbGllcyB0byByZXNvdXJjZSB0eXBlczpcbiAgICogLSBwbGFuXG4gICAqXG4gICAqIEBwYXJhbSB0YWdLZXkgVGhlIHRhZyBrZXkgdG8gY2hlY2tcbiAgICogQHBhcmFtIHZhbHVlIFRoZSB2YWx1ZShzKSB0byBjaGVja1xuICAgKiBAcGFyYW0gb3BlcmF0b3IgV29ya3Mgd2l0aCBbc3RyaW5nIG9wZXJhdG9yc10oaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0lBTS9sYXRlc3QvVXNlckd1aWRlL3JlZmVyZW5jZV9wb2xpY2llc19lbGVtZW50c19jb25kaXRpb25fb3BlcmF0b3JzLmh0bWwjQ29uZGl0aW9uc19TdHJpbmcpLiAqKkRlZmF1bHQ6KiogYFN0cmluZ0xpa2VgXG4gICAqL1xuICBwdWJsaWMgaWZBd3NSZXNvdXJjZVRhZyh0YWdLZXk6IHN0cmluZywgdmFsdWU6IHN0cmluZyB8IHN0cmluZ1tdLCBvcGVyYXRvcj86IE9wZXJhdG9yIHwgc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuaWYoYGF3czpSZXNvdXJjZVRhZy8keyB0YWdLZXkgfWAsIHZhbHVlLCBvcGVyYXRvciA/PyAnU3RyaW5nTGlrZScpO1xuICB9XG5cbiAgLyoqXG4gICAqIEZpbHRlcnMgYWNjZXNzIGJ5IHRoZSBwcmVzZW5jZSBvZiB0YWcga2V5cyBpbiB0aGUgcmVxdWVzdFxuICAgKlxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vSUFNL2xhdGVzdC9Vc2VyR3VpZGUvcmVmZXJlbmNlX3BvbGljaWVzX2NvbmRpdGlvbi1rZXlzLmh0bWwjY29uZGl0aW9uLWtleXMtdGFna2V5c1xuICAgKlxuICAgKiBBcHBsaWVzIHRvIGFjdGlvbnM6XG4gICAqIC0gLnRvQ3JlYXRlUGxhbigpXG4gICAqIC0gLnRvVGFnUmVzb3VyY2UoKVxuICAgKiAtIC50b1VudGFnUmVzb3VyY2UoKVxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgVGhlIHZhbHVlKHMpIHRvIGNoZWNrXG4gICAqIEBwYXJhbSBvcGVyYXRvciBXb3JrcyB3aXRoIFtzdHJpbmcgb3BlcmF0b3JzXShodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vSUFNL2xhdGVzdC9Vc2VyR3VpZGUvcmVmZXJlbmNlX3BvbGljaWVzX2VsZW1lbnRzX2NvbmRpdGlvbl9vcGVyYXRvcnMuaHRtbCNDb25kaXRpb25zX1N0cmluZykuICoqRGVmYXVsdDoqKiBgU3RyaW5nTGlrZWBcbiAgICovXG4gIHB1YmxpYyBpZkF3c1RhZ0tleXModmFsdWU6IHN0cmluZyB8IHN0cmluZ1tdLCBvcGVyYXRvcj86IE9wZXJhdG9yIHwgc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuaWYoYGF3czpUYWdLZXlzYCwgdmFsdWUsIG9wZXJhdG9yID8/ICdTdHJpbmdMaWtlJyk7XG4gIH1cblxuICAvKipcbiAgICogU3RhdGVtZW50IHByb3ZpZGVyIGZvciBzZXJ2aWNlIFthcmMtcmVnaW9uLXN3aXRjaF0oaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL3NlcnZpY2UtYXV0aG9yaXphdGlvbi9sYXRlc3QvcmVmZXJlbmNlL2xpc3RfYW1hem9uYXJjcmVnaW9uc3dpdGNoLmh0bWwpLlxuICAgKlxuICAgKi9cbiAgY29uc3RydWN0b3IocHJvcHM/OiBpYW0uUG9saWN5U3RhdGVtZW50UHJvcHMpIHtcbiAgICBzdXBlcihwcm9wcyk7XG4gIH1cbn1cbiJdfQ==