@kensio/yulin 1.20.13 → 1.20.14

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 (535) hide show
  1. package/dist/service/acm/cfn/certificate/sim-cfn-acm-cert-creator.js +6 -4
  2. package/dist/service/acm/cfn/sim-cfn-acm-resource-factory.d.ts +2 -2
  3. package/dist/service/acm/cfn/sim-cfn-acm-resource-factory.js +3 -4
  4. package/dist/service/acm/cfn/validation/sim-cfn-acm-cert-validation.d.ts +2 -1
  5. package/dist/service/acm/cfn/validation/sim-cfn-acm-cert-validation.js +2 -2
  6. package/dist/service/acm/cfn/validation/sim-cfn-acm-validation-records.d.ts +2 -1
  7. package/dist/service/acm/cfn/validation/sim-cfn-acm-validation-records.js +4 -4
  8. package/dist/service/acm/sim-acm.d.ts +1 -1
  9. package/dist/service/acm/sim-acm.js +3 -2
  10. package/dist/service/apigateway/cfn/api/sim-cfn-rest-api-creator.d.ts +2 -1
  11. package/dist/service/apigateway/cfn/api/sim-cfn-rest-api-creator.js +11 -13
  12. package/dist/service/apigateway/cfn/authorizer/sim-cfn-rest-api-authorizer-creator.d.ts +2 -1
  13. package/dist/service/apigateway/cfn/authorizer/sim-cfn-rest-api-authorizer-creator.js +2 -4
  14. package/dist/service/apigateway/cfn/deployment/sim-cfn-rest-api-deployment-creator.d.ts +2 -1
  15. package/dist/service/apigateway/cfn/deployment/sim-cfn-rest-api-deployment-creator.js +2 -4
  16. package/dist/service/apigateway/cfn/method/sim-cfn-rest-api-method-creator.d.ts +2 -1
  17. package/dist/service/apigateway/cfn/method/sim-cfn-rest-api-method-creator.js +3 -5
  18. package/dist/service/apigateway/cfn/method/sim-cfn-rest-api-method-integration.d.ts +2 -1
  19. package/dist/service/apigateway/cfn/method/sim-cfn-rest-api-method-integration.js +3 -3
  20. package/dist/service/apigateway/cfn/resource/sim-cfn-rest-api-resource-creator.d.ts +2 -1
  21. package/dist/service/apigateway/cfn/resource/sim-cfn-rest-api-resource-creator.js +2 -4
  22. package/dist/service/apigateway/cfn/sim-cfn-api-gateway-resource-deleter.d.ts +2 -1
  23. package/dist/service/apigateway/cfn/sim-cfn-api-gateway-resource-deleter.js +3 -5
  24. package/dist/service/apigateway/cfn/sim-cfn-api-gateway-resource-factory.js +9 -7
  25. package/dist/service/apigateway/cfn/sim-cfn-rest-api-part-deleter.d.ts +2 -7
  26. package/dist/service/apigateway/cfn/sim-cfn-rest-api-part-deleter.js +12 -42
  27. package/dist/service/apigateway/cfn/sim-cfn-rest-api-part-values.d.ts +10 -0
  28. package/dist/service/apigateway/cfn/sim-cfn-rest-api-part-values.js +21 -0
  29. package/dist/service/apigateway/cfn/stage/sim-cfn-rest-api-stage-creator.d.ts +2 -1
  30. package/dist/service/apigateway/cfn/stage/sim-cfn-rest-api-stage-creator.js +2 -4
  31. package/dist/service/apigateway/serve/sim-api-gateway-router.js +5 -2
  32. package/dist/service/apigateway/sim-api-gateway-commands.d.ts +1 -1
  33. package/dist/service/apigateway/sim-api-gateway-commands.js +3 -2
  34. package/dist/service/apigatewayv2/cfn/api/sim-cfn-http-api-creator.d.ts +2 -1
  35. package/dist/service/apigatewayv2/cfn/api/sim-cfn-http-api-creator.js +5 -9
  36. package/dist/service/apigatewayv2/cfn/authorizer/sim-cfn-http-api-authorizer-creator.d.ts +2 -1
  37. package/dist/service/apigatewayv2/cfn/authorizer/sim-cfn-http-api-authorizer-creator.js +2 -4
  38. package/dist/service/apigatewayv2/cfn/domain/sim-cfn-api-mapping-creator.d.ts +2 -1
  39. package/dist/service/apigatewayv2/cfn/domain/sim-cfn-api-mapping-creator.js +2 -4
  40. package/dist/service/apigatewayv2/cfn/domain/sim-cfn-http-api-domain-creator.d.ts +2 -1
  41. package/dist/service/apigatewayv2/cfn/domain/sim-cfn-http-api-domain-creator.js +2 -4
  42. package/dist/service/apigatewayv2/cfn/integration/sim-cfn-http-api-integration-creator.d.ts +2 -1
  43. package/dist/service/apigatewayv2/cfn/integration/sim-cfn-http-api-integration-creator.js +2 -4
  44. package/dist/service/apigatewayv2/cfn/route/sim-cfn-http-api-route-creator.d.ts +2 -1
  45. package/dist/service/apigatewayv2/cfn/route/sim-cfn-http-api-route-creator.js +2 -4
  46. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-deleter.d.ts +2 -9
  47. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-deleter.js +19 -25
  48. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-factory.d.ts +0 -5
  49. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-factory.js +13 -29
  50. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-unsupported.d.ts +5 -0
  51. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-unsupported.js +19 -0
  52. package/dist/service/apigatewayv2/cfn/sim-cfn-http-api-part-deleter.d.ts +2 -1
  53. package/dist/service/apigatewayv2/cfn/sim-cfn-http-api-part-deleter.js +5 -13
  54. package/dist/service/apigatewayv2/cfn/stage/sim-cfn-http-api-stage-creator.d.ts +2 -1
  55. package/dist/service/apigatewayv2/cfn/stage/sim-cfn-http-api-stage-creator.js +2 -4
  56. package/dist/service/apigatewayv2/serve/sim-api-gateway-v2-router.js +5 -2
  57. package/dist/service/apigatewayv2/sim-api-gateway-v2-commands.d.ts +1 -1
  58. package/dist/service/apigatewayv2/sim-api-gateway-v2-commands.js +3 -2
  59. package/dist/service/athena/cfn/named-query/sim-cfn-athena-named-query-creator.d.ts +3 -2
  60. package/dist/service/athena/cfn/named-query/sim-cfn-athena-named-query-creator.js +4 -6
  61. package/dist/service/athena/cfn/sim-athena-cfn-resource-factory.d.ts +2 -2
  62. package/dist/service/athena/cfn/sim-athena-cfn-resource-factory.js +7 -6
  63. package/dist/service/athena/cfn/work-group/sim-cfn-athena-work-group-creator.d.ts +3 -2
  64. package/dist/service/athena/cfn/work-group/sim-cfn-athena-work-group-creator.js +7 -11
  65. package/dist/service/athena/engine/sim-athena-aggregate-shims.d.ts +10 -5
  66. package/dist/service/athena/engine/sim-athena-aggregate-shims.js +19 -16
  67. package/dist/service/athena/engine/sim-athena-binary-shims.d.ts +16 -0
  68. package/dist/service/athena/engine/sim-athena-binary-shims.js +49 -0
  69. package/dist/service/athena/engine/sim-athena-binary-text.d.ts +21 -0
  70. package/dist/service/athena/engine/sim-athena-binary-text.js +87 -0
  71. package/dist/service/athena/engine/sim-athena-count-distinct.d.ts +15 -0
  72. package/dist/service/athena/engine/sim-athena-count-distinct.js +103 -0
  73. package/dist/service/athena/engine/sim-athena-distinct-values.d.ts +19 -0
  74. package/dist/service/athena/engine/sim-athena-distinct-values.js +37 -0
  75. package/dist/service/athena/engine/sim-athena-hash-words.d.ts +14 -0
  76. package/dist/service/athena/engine/sim-athena-hash-words.js +22 -0
  77. package/dist/service/athena/engine/sim-athena-murmur3-mixing.d.ts +15 -0
  78. package/dist/service/athena/engine/sim-athena-murmur3-mixing.js +37 -0
  79. package/dist/service/athena/engine/sim-athena-murmur3.d.ts +11 -0
  80. package/dist/service/athena/engine/sim-athena-murmur3.js +51 -0
  81. package/dist/service/athena/engine/sim-athena-shim-registry.d.ts +9 -0
  82. package/dist/service/athena/engine/sim-athena-shim-registry.js +30 -1
  83. package/dist/service/athena/engine/sim-athena-shims.js +2 -0
  84. package/dist/service/athena/engine/sim-athena-sql-rewrites.d.ts +4 -2
  85. package/dist/service/athena/engine/sim-athena-sql-rewrites.js +6 -3
  86. package/dist/service/athena/engine/sim-athena-xxhash64.d.ts +8 -0
  87. package/dist/service/athena/engine/sim-athena-xxhash64.js +82 -0
  88. package/dist/service/athena/sim-athena-executions.d.ts +1 -1
  89. package/dist/service/athena/sim-athena-executions.js +3 -2
  90. package/dist/service/bedrock/sim-bedrock.d.ts +1 -1
  91. package/dist/service/bedrock/sim-bedrock.js +3 -2
  92. package/dist/service/cloudformation/cdk/assets/sim-cdk-assets-publisher.d.ts +8 -0
  93. package/dist/service/cloudformation/cdk/assets/sim-cdk-assets-publisher.js +6 -4
  94. package/dist/service/cloudformation/command/create-stack/create-stack.handler.d.ts +4 -0
  95. package/dist/service/cloudformation/command/create-stack/create-stack.handler.js +4 -1
  96. package/dist/service/cloudformation/command/update-stack/update-stack.handler.d.ts +7 -0
  97. package/dist/service/cloudformation/command/update-stack/update-stack.handler.js +3 -1
  98. package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-deployer.js +2 -1
  99. package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-plan.d.ts +9 -2
  100. package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-plan.js +2 -1
  101. package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-stack-options.d.ts +10 -3
  102. package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-stack-options.js +4 -7
  103. package/dist/service/cloudformation/deploy/sim-cfn-template-deployer.d.ts +10 -0
  104. package/dist/service/cloudformation/deploy/sim-cfn-template-deployer.js +4 -2
  105. package/dist/service/cloudformation/deploy/sim-cfn-template-file-loader.d.ts +11 -0
  106. package/dist/service/cloudformation/deploy/sim-cfn-template-file-loader.js +2 -1
  107. package/dist/service/cloudformation/deploy/sim-cfn-template-file-updater.js +1 -0
  108. package/dist/service/cloudformation/resource/caller/sim-cfn-resource-caller-options.d.ts +16 -0
  109. package/dist/service/cloudformation/resource/caller/sim-cfn-resource-caller-options.js +6 -0
  110. package/dist/service/cloudformation/resource/cfn/scheduler/sim-scheduler-cfn-value-adapter.js +50 -0
  111. package/dist/service/cloudformation/resource/sim-cfn-resource.type.d.ts +12 -0
  112. package/dist/service/cloudformation/sim-cloudformation.d.ts +1 -1
  113. package/dist/service/cloudformation/sim-cloudformation.js +3 -2
  114. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-batch-creator.d.ts +3 -0
  115. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-batch-creator.js +4 -1
  116. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-creator.d.ts +2 -0
  117. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-creator.js +2 -1
  118. package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.d.ts +17 -2
  119. package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.js +15 -4
  120. package/dist/service/cloudformation/stack/sim-cfn-stack.js +5 -5
  121. package/dist/service/cloudformation/stack/sim-cfn-stack.type.d.ts +12 -0
  122. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-batch-deleter.d.ts +3 -0
  123. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-batch-deleter.js +3 -0
  124. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-deleter.d.ts +2 -0
  125. package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-deleter.js +2 -1
  126. package/dist/service/cloudfront/cfn/cff/sim-cfn-cff-creator.d.ts +5 -0
  127. package/dist/service/cloudfront/cfn/cff/sim-cfn-cff-creator.js +10 -3
  128. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-creator.js +2 -1
  129. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-deleter.d.ts +2 -1
  130. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-deleter.js +5 -7
  131. package/dist/service/cloudfront/cfn/key-value-store/sim-cfn-cf-kvs-creator.d.ts +3 -2
  132. package/dist/service/cloudfront/cfn/key-value-store/sim-cfn-cf-kvs-creator.js +6 -6
  133. package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.d.ts +2 -4
  134. package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.js +7 -15
  135. package/dist/service/cloudfront/edge/sim-aws-cf-edge-functions.js +3 -2
  136. package/dist/service/cloudfront/sim-cloudfront-commands.d.ts +1 -1
  137. package/dist/service/cloudfront/sim-cloudfront-commands.js +5 -2
  138. package/dist/service/cloudwatch/cfn/alarm/sim-cfn-alarm-creator.d.ts +3 -2
  139. package/dist/service/cloudwatch/cfn/alarm/sim-cfn-alarm-creator.js +4 -6
  140. package/dist/service/cloudwatch/cfn/sim-cloudwatch-cfn-resource-factory.d.ts +2 -2
  141. package/dist/service/cloudwatch/cfn/sim-cloudwatch-cfn-resource-factory.js +4 -3
  142. package/dist/service/cloudwatch/sim-cloudwatch-commands.d.ts +1 -1
  143. package/dist/service/cloudwatch/sim-cloudwatch-commands.js +3 -2
  144. package/dist/service/cognito/cfn/client/sim-cfn-cognito-client-creator.d.ts +2 -1
  145. package/dist/service/cognito/cfn/client/sim-cfn-cognito-client-creator.js +2 -4
  146. package/dist/service/cognito/cfn/domain/sim-cfn-cognito-domain-creator.d.ts +2 -1
  147. package/dist/service/cognito/cfn/domain/sim-cfn-cognito-domain-creator.js +2 -4
  148. package/dist/service/cognito/cfn/group/sim-cfn-cognito-group-creator.d.ts +2 -1
  149. package/dist/service/cognito/cfn/group/sim-cfn-cognito-group-creator.js +2 -4
  150. package/dist/service/cognito/cfn/idp/sim-cfn-cognito-idp-creator.d.ts +2 -1
  151. package/dist/service/cognito/cfn/idp/sim-cfn-cognito-idp-creator.js +2 -4
  152. package/dist/service/cognito/cfn/sim-cfn-cognito-resource-deleter.d.ts +2 -1
  153. package/dist/service/cognito/cfn/sim-cfn-cognito-resource-deleter.js +18 -24
  154. package/dist/service/cognito/cfn/sim-cfn-cognito-resource-factory.d.ts +2 -2
  155. package/dist/service/cognito/cfn/sim-cfn-cognito-resource-factory.js +9 -7
  156. package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-user-pool-creator.d.ts +2 -1
  157. package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-user-pool-creator.js +5 -7
  158. package/dist/service/cognito/sim-cognito-identity-provider.d.ts +1 -1
  159. package/dist/service/cognito/sim-cognito-identity-provider.js +3 -2
  160. package/dist/service/cognito/user-pool/trigger/sim-aws-cognito-trigger-functions.js +2 -1
  161. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-creator.d.ts +2 -1
  162. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-creator.js +2 -2
  163. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-deleter.d.ts +2 -1
  164. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-deleter.js +2 -4
  165. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-factory.d.ts +2 -2
  166. package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-factory.js +6 -4
  167. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-creator.d.ts +2 -1
  168. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-creator.js +5 -7
  169. package/dist/service/dynamodb/sim-dynamodb.js +3 -2
  170. package/dist/service/ecs/cfn/cluster/sim-cfn-ecs-cluster-creator.d.ts +3 -2
  171. package/dist/service/ecs/cfn/cluster/sim-cfn-ecs-cluster-creator.js +4 -6
  172. package/dist/service/ecs/cfn/service/sim-cfn-ecs-service-creator.d.ts +3 -2
  173. package/dist/service/ecs/cfn/service/sim-cfn-ecs-service-creator.js +4 -4
  174. package/dist/service/ecs/cfn/sim-cfn-ecs-created-resource.d.ts +5 -0
  175. package/dist/service/ecs/cfn/sim-cfn-ecs-created-resource.js +9 -0
  176. package/dist/service/ecs/cfn/sim-ecs-cfn-resource-factory.d.ts +2 -2
  177. package/dist/service/ecs/cfn/sim-ecs-cfn-resource-factory.js +11 -16
  178. package/dist/service/ecs/cfn/task-definition/sim-cfn-ecs-task-definition-creator.d.ts +3 -2
  179. package/dist/service/ecs/cfn/task-definition/sim-cfn-ecs-task-definition-creator.js +4 -6
  180. package/dist/service/ecs/sim-ecs-commands.js +3 -2
  181. package/dist/service/ecs/task/run/sim-ecs-container-environment.d.ts +12 -10
  182. package/dist/service/ecs/task/run/sim-ecs-container-environment.js +16 -18
  183. package/dist/service/elbv2/cfn/listener/sim-cfn-elbv2-listener-creator.d.ts +3 -2
  184. package/dist/service/elbv2/cfn/listener/sim-cfn-elbv2-listener-creator.js +4 -6
  185. package/dist/service/elbv2/cfn/load-balancer/sim-cfn-elbv2-load-balancer-creator.d.ts +3 -2
  186. package/dist/service/elbv2/cfn/load-balancer/sim-cfn-elbv2-load-balancer-creator.js +4 -6
  187. package/dist/service/elbv2/cfn/rule/sim-cfn-elbv2-listener-rule-creator.d.ts +3 -2
  188. package/dist/service/elbv2/cfn/rule/sim-cfn-elbv2-listener-rule-creator.js +4 -4
  189. package/dist/service/elbv2/cfn/sim-elbv2-cfn-resource-deleter.d.ts +2 -1
  190. package/dist/service/elbv2/cfn/sim-elbv2-cfn-resource-deleter.js +5 -5
  191. package/dist/service/elbv2/cfn/sim-elbv2-cfn-resource-factory.d.ts +2 -2
  192. package/dist/service/elbv2/cfn/sim-elbv2-cfn-resource-factory.js +8 -6
  193. package/dist/service/elbv2/cfn/target-group/sim-cfn-elbv2-target-group-creator.d.ts +3 -2
  194. package/dist/service/elbv2/cfn/target-group/sim-cfn-elbv2-target-group-creator.js +7 -11
  195. package/dist/service/elbv2/serve/sim-elbv2-router.js +2 -1
  196. package/dist/service/elbv2/sim-elbv2.js +3 -3
  197. package/dist/service/eventbridge/cfn/bus/sim-cfn-event-bus-creator.d.ts +2 -1
  198. package/dist/service/eventbridge/cfn/bus/sim-cfn-event-bus-creator.js +2 -4
  199. package/dist/service/eventbridge/cfn/rule/sim-cfn-event-rule-creator.d.ts +2 -1
  200. package/dist/service/eventbridge/cfn/rule/sim-cfn-event-rule-creator.js +5 -5
  201. package/dist/service/eventbridge/cfn/sim-cfn-event-bridge-resource-deleter.d.ts +2 -1
  202. package/dist/service/eventbridge/cfn/sim-cfn-event-bridge-resource-deleter.js +7 -7
  203. package/dist/service/eventbridge/cfn/sim-event-bridge-cfn-resource-factory.js +5 -3
  204. package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-function.js +2 -1
  205. package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-queue.js +2 -1
  206. package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-task.js +4 -1
  207. package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-topic.js +2 -1
  208. package/dist/service/eventbridge/delivery/sim-event-bridge-target-role.d.ts +8 -3
  209. package/dist/service/eventbridge/delivery/sim-event-bridge-target-role.js +9 -3
  210. package/dist/service/eventbridge/sim-event-bridge.d.ts +1 -1
  211. package/dist/service/eventbridge/sim-event-bridge.js +3 -2
  212. package/dist/service/firehose/cfn/delivery-stream/sim-cfn-firehose-delivery-stream-creator.d.ts +2 -1
  213. package/dist/service/firehose/cfn/delivery-stream/sim-cfn-firehose-delivery-stream-creator.js +2 -2
  214. package/dist/service/firehose/cfn/sim-cfn-firehose-resource-deleter.d.ts +2 -1
  215. package/dist/service/firehose/cfn/sim-cfn-firehose-resource-deleter.js +2 -4
  216. package/dist/service/firehose/cfn/sim-firehose-cfn-resource-factory.d.ts +1 -1
  217. package/dist/service/firehose/cfn/sim-firehose-cfn-resource-factory.js +4 -3
  218. package/dist/service/firehose/sim-firehose.d.ts +1 -1
  219. package/dist/service/firehose/sim-firehose.js +3 -2
  220. package/dist/service/glue/sim-glue.d.ts +1 -1
  221. package/dist/service/glue/sim-glue.js +3 -2
  222. package/dist/service/iam/authorize/context/sim-iam-auth-z-context-builder.d.ts +15 -11
  223. package/dist/service/iam/authorize/context/sim-iam-auth-z-context-builder.js +5 -18
  224. package/dist/service/iam/authorize/context/sim-iam-derived-conditions.d.ts +42 -0
  225. package/dist/service/iam/authorize/context/sim-iam-derived-conditions.js +44 -0
  226. package/dist/service/iam/authorize/match/condition/arn/equals/sim-iam-arn-equals.js +2 -2
  227. package/dist/service/iam/authorize/match/condition/arn/like/sim-iam-arn-like.js +2 -2
  228. package/dist/service/iam/authorize/match/condition/negated/sim-iam-negated-for-all-values-string-operator.d.ts +20 -0
  229. package/dist/service/iam/authorize/match/condition/negated/sim-iam-negated-for-all-values-string-operator.js +27 -0
  230. package/dist/service/iam/authorize/match/condition/negated/sim-iam-negated-for-any-value-string-operator.d.ts +21 -0
  231. package/dist/service/iam/authorize/match/condition/negated/sim-iam-negated-for-any-value-string-operator.js +28 -0
  232. package/dist/service/iam/authorize/match/condition/negated/sim-iam-negated-operator-factories.d.ts +5 -0
  233. package/dist/service/iam/authorize/match/condition/negated/sim-iam-negated-operator-factories.js +36 -0
  234. package/dist/service/iam/authorize/match/condition/negated/sim-iam-negated-scalar-string-operator.d.ts +20 -0
  235. package/dist/service/iam/authorize/match/condition/negated/sim-iam-negated-scalar-string-operator.js +29 -0
  236. package/dist/service/iam/authorize/match/condition/numeric/less-than-equals/sim-iam-number-lte.d.ts +1 -0
  237. package/dist/service/iam/authorize/match/condition/numeric/less-than-equals/sim-iam-number-lte.js +1 -0
  238. package/dist/service/iam/authorize/match/condition/sim-iam-condition-match.d.ts +26 -0
  239. package/dist/service/iam/authorize/match/condition/sim-iam-condition-match.js +1 -0
  240. package/dist/service/iam/authorize/match/condition/sim-iam-condition-operator-parser.js +2 -0
  241. package/dist/service/iam/authorize/match/condition/sim-iam-condition-operator.d.ts +15 -0
  242. package/dist/service/iam/authorize/match/condition/sim-iam-policy-condition-matcher.d.ts +11 -3
  243. package/dist/service/iam/authorize/match/condition/sim-iam-policy-condition-matcher.js +29 -11
  244. package/dist/service/iam/authorize/match/condition/sim-iam-string-comparison.d.ts +24 -0
  245. package/dist/service/iam/authorize/match/condition/sim-iam-string-comparison.js +17 -0
  246. package/dist/service/iam/authorize/match/condition/string/all-values/sim-iam-for-all-values-string-condition-operator.d.ts +1 -0
  247. package/dist/service/iam/authorize/match/condition/string/all-values/sim-iam-for-all-values-string-condition-operator.js +1 -0
  248. package/dist/service/iam/authorize/match/condition/string/all-values/sim-iam-for-all-values-string-equals.js +2 -1
  249. package/dist/service/iam/authorize/match/condition/string/all-values/sim-iam-for-all-values-string-like.js +2 -4
  250. package/dist/service/iam/authorize/match/condition/string/any-value/sim-iam-for-any-value-string-condition-operator.d.ts +1 -0
  251. package/dist/service/iam/authorize/match/condition/string/any-value/sim-iam-for-any-value-string-condition-operator.js +1 -0
  252. package/dist/service/iam/authorize/match/condition/string/any-value/sim-iam-for-any-value-string-equals.js +2 -1
  253. package/dist/service/iam/authorize/match/condition/string/any-value/sim-iam-for-any-value-string-like.js +2 -4
  254. package/dist/service/iam/authorize/match/condition/string/equals/sim-iam-string-equals.js +2 -1
  255. package/dist/service/iam/authorize/match/condition/string/like/sim-iam-string-like.js +2 -4
  256. package/dist/service/iam/authorize/match/condition/string/sim-iam-scalar-string-condition-operator.d.ts +1 -0
  257. package/dist/service/iam/authorize/match/condition/string/sim-iam-scalar-string-condition-operator.js +1 -0
  258. package/dist/service/iam/authorize/match/sim-iam-policy-statement-matcher.d.ts +18 -1
  259. package/dist/service/iam/authorize/match/sim-iam-policy-statement-matcher.js +32 -4
  260. package/dist/service/iam/authorize/sim-iam-decision.d.ts +12 -0
  261. package/dist/service/iam/authorize/sim-iam-decision.js +14 -0
  262. package/dist/service/iam/authorize/sim-iam-region-auth-z.d.ts +31 -0
  263. package/dist/service/iam/authorize/sim-iam-region-auth-z.js +65 -0
  264. package/dist/service/iam/authorize/unevaluated/sim-iam-unevaluated-statement.type.d.ts +31 -0
  265. package/dist/service/iam/authorize/unevaluated/sim-iam-unevaluated-statement.type.js +1 -0
  266. package/dist/service/iam/authorize/unevaluated/sim-iam-unevaluated-statements.d.ts +31 -0
  267. package/dist/service/iam/authorize/unevaluated/sim-iam-unevaluated-statements.js +43 -0
  268. package/dist/service/iam/cfn/managed-policy/sim-cfn-iam-managed-policy-attacher.d.ts +2 -1
  269. package/dist/service/iam/cfn/managed-policy/sim-cfn-iam-managed-policy-attacher.js +2 -4
  270. package/dist/service/iam/cfn/managed-policy/sim-cfn-iam-managed-policy-creator.d.ts +2 -1
  271. package/dist/service/iam/cfn/managed-policy/sim-cfn-iam-managed-policy-creator.js +3 -3
  272. package/dist/service/iam/cfn/policy/sim-cfn-iam-policy-creator.d.ts +2 -1
  273. package/dist/service/iam/cfn/policy/sim-cfn-iam-policy-creator.js +7 -7
  274. package/dist/service/iam/cfn/role/sim-cfn-iam-role-creator.d.ts +2 -1
  275. package/dist/service/iam/cfn/role/sim-cfn-iam-role-creator.js +8 -8
  276. package/dist/service/iam/cfn/role/sim-cfn-iam-role-deleter.d.ts +2 -1
  277. package/dist/service/iam/cfn/role/sim-cfn-iam-role-deleter.js +10 -12
  278. package/dist/service/iam/cfn/sim-cfn-iam-resource-deleter.d.ts +2 -1
  279. package/dist/service/iam/cfn/sim-cfn-iam-resource-deleter.js +12 -16
  280. package/dist/service/iam/cfn/sim-cfn-iam-resource-factory.js +8 -5
  281. package/dist/service/iam/cfn/user/sim-cfn-iam-user-creator.d.ts +2 -1
  282. package/dist/service/iam/cfn/user/sim-cfn-iam-user-creator.js +11 -11
  283. package/dist/service/iam/cfn/user/sim-cfn-iam-user-deleter.d.ts +4 -2
  284. package/dist/service/iam/cfn/user/sim-cfn-iam-user-deleter.js +17 -3
  285. package/dist/service/iam/command/sim-iam-command-handlers.js +6 -1
  286. package/dist/service/kinesis/cfn/sim-cfn-kinesis-resource-deleter.d.ts +2 -1
  287. package/dist/service/kinesis/cfn/sim-cfn-kinesis-resource-deleter.js +2 -2
  288. package/dist/service/kinesis/cfn/sim-kinesis-cfn-resource-factory.d.ts +1 -1
  289. package/dist/service/kinesis/cfn/sim-kinesis-cfn-resource-factory.js +4 -3
  290. package/dist/service/kinesis/cfn/stream/sim-cfn-kinesis-stream-creator.d.ts +2 -1
  291. package/dist/service/kinesis/cfn/stream/sim-cfn-kinesis-stream-creator.js +5 -7
  292. package/dist/service/kinesis/sim-kinesis.d.ts +1 -1
  293. package/dist/service/kinesis/sim-kinesis.js +3 -2
  294. package/dist/service/kms/cfn/alias/sim-cfn-kms-alias-creator.d.ts +2 -1
  295. package/dist/service/kms/cfn/alias/sim-cfn-kms-alias-creator.js +2 -2
  296. package/dist/service/kms/cfn/key/sim-cfn-kms-key-creator.d.ts +6 -6
  297. package/dist/service/kms/cfn/key/sim-cfn-kms-key-creator.js +11 -11
  298. package/dist/service/kms/cfn/sim-cfn-kms-resource-deleter.d.ts +2 -1
  299. package/dist/service/kms/cfn/sim-cfn-kms-resource-deleter.js +3 -5
  300. package/dist/service/kms/cfn/sim-cfn-kms-resource-factory.d.ts +2 -1
  301. package/dist/service/kms/cfn/sim-cfn-kms-resource-factory.js +6 -4
  302. package/dist/service/kms/sim-kms-commands.d.ts +1 -1
  303. package/dist/service/kms/sim-kms-commands.js +3 -2
  304. package/dist/service/lambda/cfn/alias/sim-cfn-lambda-alias-creator.d.ts +2 -1
  305. package/dist/service/lambda/cfn/alias/sim-cfn-lambda-alias-creator.js +2 -2
  306. package/dist/service/lambda/cfn/event-invoke-config/sim-cfn-lambda-event-invoke-config-creator.d.ts +2 -1
  307. package/dist/service/lambda/cfn/event-invoke-config/sim-cfn-lambda-event-invoke-config-creator.js +2 -2
  308. package/dist/service/lambda/cfn/event-invoke-config/sim-cfn-lambda-event-invoke-config-remover.d.ts +2 -1
  309. package/dist/service/lambda/cfn/event-invoke-config/sim-cfn-lambda-event-invoke-config-remover.js +2 -4
  310. package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-creator.d.ts +2 -1
  311. package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-creator.js +2 -2
  312. package/dist/service/lambda/cfn/function/sim-cfn-lambda-function-creator.d.ts +2 -1
  313. package/dist/service/lambda/cfn/function/sim-cfn-lambda-function-creator.js +3 -4
  314. package/dist/service/lambda/cfn/permission/sim-cfn-lambda-permission-creator.d.ts +2 -1
  315. package/dist/service/lambda/cfn/permission/sim-cfn-lambda-permission-creator.js +2 -2
  316. package/dist/service/lambda/cfn/permission/sim-cfn-lambda-permission-revoker.d.ts +2 -1
  317. package/dist/service/lambda/cfn/permission/sim-cfn-lambda-permission-revoker.js +2 -2
  318. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-deleter.d.ts +2 -8
  319. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-deleter.js +18 -38
  320. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.d.ts +2 -2
  321. package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.js +12 -9
  322. package/dist/service/lambda/cfn/url/sim-cfn-lambda-url-creator.d.ts +2 -1
  323. package/dist/service/lambda/cfn/url/sim-cfn-lambda-url-creator.js +2 -2
  324. package/dist/service/lambda/cfn/version/sim-cfn-lambda-version-creator.d.ts +2 -1
  325. package/dist/service/lambda/cfn/version/sim-cfn-lambda-version-creator.js +2 -2
  326. package/dist/service/lambda/serve/sim-lambda-url-router.js +2 -1
  327. package/dist/service/lambda/sim-lambda-commands.d.ts +1 -1
  328. package/dist/service/lambda/sim-lambda-commands.js +3 -2
  329. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-creator.d.ts +3 -2
  330. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-creator.js +4 -6
  331. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-destination-creator.d.ts +3 -2
  332. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-destination-creator.js +4 -6
  333. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-source-creator.d.ts +3 -2
  334. package/dist/service/logs/cfn/delivery/sim-cfn-delivery-source-creator.js +4 -4
  335. package/dist/service/logs/cfn/sim-logs-cfn-resource-deleter.d.ts +2 -1
  336. package/dist/service/logs/cfn/sim-logs-cfn-resource-deleter.js +4 -4
  337. package/dist/service/logs/cfn/sim-logs-cfn-resource-factory.d.ts +2 -2
  338. package/dist/service/logs/cfn/sim-logs-cfn-resource-factory.js +7 -5
  339. package/dist/service/logs/sim-logs-commands.d.ts +1 -1
  340. package/dist/service/logs/sim-logs-commands.js +3 -2
  341. package/dist/service/logs/subscription/lambda/sim-logs-destination-permission.js +2 -1
  342. package/dist/service/personalize/cfn/sim-cfn-personalize-dataset-creator.d.ts +3 -2
  343. package/dist/service/personalize/cfn/sim-cfn-personalize-dataset-creator.js +4 -6
  344. package/dist/service/personalize/cfn/sim-cfn-personalize-dataset-group-creator.d.ts +3 -2
  345. package/dist/service/personalize/cfn/sim-cfn-personalize-dataset-group-creator.js +4 -6
  346. package/dist/service/personalize/cfn/sim-cfn-personalize-event-tracker-creator.d.ts +3 -2
  347. package/dist/service/personalize/cfn/sim-cfn-personalize-event-tracker-creator.js +4 -6
  348. package/dist/service/personalize/cfn/sim-cfn-personalize-schema-creator.d.ts +3 -2
  349. package/dist/service/personalize/cfn/sim-cfn-personalize-schema-creator.js +4 -4
  350. package/dist/service/personalize/cfn/sim-cfn-personalize-solution-creator.d.ts +3 -2
  351. package/dist/service/personalize/cfn/sim-cfn-personalize-solution-creator.js +4 -6
  352. package/dist/service/personalize/cfn/sim-personalize-cfn-resource-factory.d.ts +2 -2
  353. package/dist/service/personalize/cfn/sim-personalize-cfn-resource-factory.js +7 -6
  354. package/dist/service/personalize/sim-personalize-data-operations.d.ts +1 -1
  355. package/dist/service/personalize/sim-personalize-data-operations.js +3 -2
  356. package/dist/service/rekognition/sim-rekognition.d.ts +1 -1
  357. package/dist/service/rekognition/sim-rekognition.js +3 -2
  358. package/dist/service/route53/cfn/dnssec/sim-cfn-r53-ksk-creator.d.ts +3 -2
  359. package/dist/service/route53/cfn/dnssec/sim-cfn-r53-ksk-creator.js +5 -5
  360. package/dist/service/route53/cfn/dnssec/sim-cfn-r53-zone-signing-creator.d.ts +3 -2
  361. package/dist/service/route53/cfn/dnssec/sim-cfn-r53-zone-signing-creator.js +4 -8
  362. package/dist/service/route53/cfn/hosted-zone/sim-cfn-r53-zone-creator.d.ts +2 -1
  363. package/dist/service/route53/cfn/hosted-zone/sim-cfn-r53-zone-creator.js +2 -2
  364. package/dist/service/route53/cfn/record-set/apply/sim-cfn-r53-record-set-applicator.d.ts +9 -1
  365. package/dist/service/route53/cfn/record-set/apply/sim-cfn-r53-record-set-applicator.js +23 -2
  366. package/dist/service/route53/cfn/sim-cfn-route53-resource-deleter.d.ts +5 -3
  367. package/dist/service/route53/cfn/sim-cfn-route53-resource-deleter.js +9 -28
  368. package/dist/service/route53/cfn/sim-cfn-route53-resource-factory.js +9 -5
  369. package/dist/service/route53/sim-route53.d.ts +1 -1
  370. package/dist/service/route53/sim-route53.js +5 -2
  371. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-configurator.d.ts +3 -0
  372. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-configurator.js +6 -13
  373. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-creator.d.ts +2 -1
  374. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-creator.js +3 -2
  375. package/dist/service/s3/cfn/bucket-policy/sim-cfn-s3-bucket-policy-creator.d.ts +2 -1
  376. package/dist/service/s3/cfn/bucket-policy/sim-cfn-s3-bucket-policy-creator.js +2 -2
  377. package/dist/service/s3/cfn/sim-cfn-s3-resource-deleter.d.ts +2 -1
  378. package/dist/service/s3/cfn/sim-cfn-s3-resource-deleter.js +3 -7
  379. package/dist/service/s3/cfn/sim-cfn-s3-resource-factory.d.ts +2 -2
  380. package/dist/service/s3/cfn/sim-cfn-s3-resource-factory.js +6 -4
  381. package/dist/service/s3/notification/destination/lambda/sim-aws-s3-notification-functions.js +2 -1
  382. package/dist/service/s3/notification/destination/sns/sim-s3-notification-topic.js +2 -1
  383. package/dist/service/s3/notification/destination/sqs/sim-s3-notification-queue.js +2 -1
  384. package/dist/service/s3/sim-s3-commands.d.ts +1 -1
  385. package/dist/service/s3/sim-s3-commands.js +3 -2
  386. package/dist/service/scheduler/cfn/sim-cfn-schedule-creator.d.ts +26 -0
  387. package/dist/service/scheduler/cfn/sim-cfn-schedule-creator.js +49 -0
  388. package/dist/service/scheduler/cfn/sim-cfn-schedule-group-creator.d.ts +31 -0
  389. package/dist/service/scheduler/cfn/sim-cfn-schedule-group-creator.js +48 -0
  390. package/dist/service/scheduler/cfn/sim-cfn-schedule-group-properties.d.ts +26 -0
  391. package/dist/service/scheduler/cfn/sim-cfn-schedule-group-properties.js +68 -0
  392. package/dist/service/scheduler/cfn/sim-cfn-schedule-properties.js +4 -10
  393. package/dist/service/scheduler/cfn/sim-cfn-scheduler-resource-error.d.ts +14 -3
  394. package/dist/service/scheduler/cfn/sim-cfn-scheduler-resource-error.js +28 -6
  395. package/dist/service/scheduler/cfn/sim-cfn-scheduler-resource-lookup.d.ts +10 -4
  396. package/dist/service/scheduler/cfn/sim-cfn-scheduler-resource-lookup.js +9 -6
  397. package/dist/service/scheduler/cfn/sim-scheduler-cfn-resource-factory.d.ts +6 -8
  398. package/dist/service/scheduler/cfn/sim-scheduler-cfn-resource-factory.js +20 -33
  399. package/dist/service/scheduler/command/authorize/sim-scheduler-authorizer.d.ts +9 -8
  400. package/dist/service/scheduler/command/authorize/sim-scheduler-authorizer.js +14 -15
  401. package/dist/service/scheduler/command/group/group.command.d.ts +90 -0
  402. package/dist/service/scheduler/command/group/group.command.js +1 -0
  403. package/dist/service/scheduler/command/group/sim-scheduler-described-group.d.ts +15 -0
  404. package/dist/service/scheduler/command/group/sim-scheduler-described-group.js +29 -0
  405. package/dist/service/scheduler/command/group/sim-scheduler-group-access.d.ts +57 -0
  406. package/dist/service/scheduler/command/group/sim-scheduler-group-access.js +70 -0
  407. package/dist/service/scheduler/command/group/sim-scheduler-group-commands.d.ts +46 -0
  408. package/dist/service/scheduler/command/group/sim-scheduler-group-commands.js +72 -0
  409. package/dist/service/scheduler/command/group/sim-scheduler-listed-groups.d.ts +6 -0
  410. package/dist/service/scheduler/command/group/sim-scheduler-listed-groups.js +10 -0
  411. package/dist/service/scheduler/command/group/sim-scheduler-unsimulated-group-input.d.ts +14 -0
  412. package/dist/service/scheduler/command/group/sim-scheduler-unsimulated-group-input.js +19 -0
  413. package/dist/service/scheduler/command/schedule/sim-scheduler-create-schedule.js +1 -0
  414. package/dist/service/scheduler/command/schedule/sim-scheduler-schedule-access.d.ts +16 -0
  415. package/dist/service/scheduler/command/schedule/sim-scheduler-schedule-access.js +23 -3
  416. package/dist/service/scheduler/command/sim-scheduler-command.types.d.ts +1 -0
  417. package/dist/service/scheduler/command/sim-scheduler-commands.d.ts +4 -0
  418. package/dist/service/scheduler/command/sim-scheduler-commands.js +14 -1
  419. package/dist/service/scheduler/delivery/sim-aws-scheduler-delivery-targets.js +1 -1
  420. package/dist/service/scheduler/delivery/sim-scheduler-delivery-function.js +2 -1
  421. package/dist/service/scheduler/delivery/sim-scheduler-delivery-queue.js +2 -1
  422. package/dist/service/scheduler/delivery/sim-scheduler-delivery-topic.js +2 -1
  423. package/dist/service/scheduler/delivery/sim-scheduler-execution-role.d.ts +9 -3
  424. package/dist/service/scheduler/delivery/sim-scheduler-execution-role.js +10 -3
  425. package/dist/service/scheduler/group/sim-scheduler-schedule-group-arn.d.ts +11 -0
  426. package/dist/service/scheduler/group/sim-scheduler-schedule-group-arn.js +13 -0
  427. package/dist/service/scheduler/group/sim-scheduler-schedule-group-store.d.ts +46 -0
  428. package/dist/service/scheduler/group/sim-scheduler-schedule-group-store.js +65 -0
  429. package/dist/service/scheduler/group/sim-scheduler-schedule-group.d.ts +25 -0
  430. package/dist/service/scheduler/group/sim-scheduler-schedule-group.js +32 -0
  431. package/dist/service/scheduler/index.d.ts +2 -0
  432. package/dist/service/scheduler/index.js +2 -0
  433. package/dist/service/scheduler/schedule/sim-scheduler-schedule-name.d.ts +11 -9
  434. package/dist/service/scheduler/schedule/sim-scheduler-schedule-name.js +15 -18
  435. package/dist/service/scheduler/schedule/sim-scheduler-schedule-store.d.ts +7 -0
  436. package/dist/service/scheduler/schedule/sim-scheduler-schedule-store.js +13 -0
  437. package/dist/service/scheduler/schedule/sim-scheduler-schedule.d.ts +13 -0
  438. package/dist/service/scheduler/schedule/sim-scheduler-schedule.js +16 -0
  439. package/dist/service/scheduler/sdk/sim-scheduler-sdk-command-router.js +16 -0
  440. package/dist/service/scheduler/sim-scheduler-inspection.d.ts +14 -0
  441. package/dist/service/scheduler/sim-scheduler-inspection.js +15 -0
  442. package/dist/service/scheduler/sim-scheduler.d.ts +19 -1
  443. package/dist/service/scheduler/sim-scheduler.js +38 -2
  444. package/dist/service/secretsmanager/cfn/secret/sim-cfn-secrets-manager-secret-creator.d.ts +2 -1
  445. package/dist/service/secretsmanager/cfn/secret/sim-cfn-secrets-manager-secret-creator.js +2 -2
  446. package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-resource-factory.d.ts +2 -2
  447. package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-resource-factory.js +4 -5
  448. package/dist/service/secretsmanager/sim-secrets-manager.d.ts +1 -1
  449. package/dist/service/secretsmanager/sim-secrets-manager.js +3 -2
  450. package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-creator.d.ts +3 -2
  451. package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-creator.js +4 -4
  452. package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-creator.d.ts +3 -2
  453. package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-creator.js +4 -8
  454. package/dist/service/ses/cfn/sim-ses-cfn-resource-factory.d.ts +2 -2
  455. package/dist/service/ses/cfn/sim-ses-cfn-resource-factory.js +7 -6
  456. package/dist/service/ses/cfn/template/sim-cfn-ses-template-creator.d.ts +3 -2
  457. package/dist/service/ses/cfn/template/sim-cfn-ses-template-creator.js +4 -8
  458. package/dist/service/ses/sim-ses-commands.d.ts +1 -1
  459. package/dist/service/ses/sim-ses-commands.js +3 -2
  460. package/dist/service/sns/cfn/sim-cfn-sns-resource-deleter.d.ts +5 -8
  461. package/dist/service/sns/cfn/sim-cfn-sns-resource-deleter.js +10 -28
  462. package/dist/service/sns/cfn/sim-sns-cfn-resource-factory.js +10 -5
  463. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-creator.d.ts +2 -1
  464. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-creator.js +2 -2
  465. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-creator.d.ts +2 -1
  466. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-creator.js +5 -7
  467. package/dist/service/sns/cfn/topic-policy/sim-cfn-sns-topic-policy-creator.d.ts +9 -1
  468. package/dist/service/sns/cfn/topic-policy/sim-cfn-sns-topic-policy-creator.js +20 -4
  469. package/dist/service/sns/delivery/lambda/sim-sns-delivery-function.js +2 -1
  470. package/dist/service/sns/delivery/sqs/sim-sns-delivery-queue.js +2 -1
  471. package/dist/service/sns/sim-sns.d.ts +1 -1
  472. package/dist/service/sns/sim-sns.js +3 -2
  473. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-creator.d.ts +2 -1
  474. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-creator.js +2 -4
  475. package/dist/service/sqs/cfn/queue-policy/sim-cfn-sqs-queue-policy-creator.d.ts +2 -1
  476. package/dist/service/sqs/cfn/queue-policy/sim-cfn-sqs-queue-policy-creator.js +4 -4
  477. package/dist/service/sqs/cfn/sim-cfn-sqs-resource-deleter.d.ts +2 -1
  478. package/dist/service/sqs/cfn/sim-cfn-sqs-resource-deleter.js +7 -7
  479. package/dist/service/sqs/cfn/sim-sqs-cfn-resource-factory.js +5 -3
  480. package/dist/service/sqs/sim-sqs.d.ts +1 -1
  481. package/dist/service/sqs/sim-sqs.js +3 -2
  482. package/dist/service/ssm/cfn/parameter/sim-cfn-ssm-parameter-creator.d.ts +2 -1
  483. package/dist/service/ssm/cfn/parameter/sim-cfn-ssm-parameter-creator.js +2 -2
  484. package/dist/service/ssm/cfn/sim-cfn-ssm-resource-factory.d.ts +2 -2
  485. package/dist/service/ssm/cfn/sim-cfn-ssm-resource-factory.js +4 -3
  486. package/dist/service/ssm/sim-ssm.d.ts +1 -1
  487. package/dist/service/ssm/sim-ssm.js +3 -2
  488. package/dist/service/stepfunctions/cfn/sim-cfn-step-functions-resource-deleter.d.ts +2 -1
  489. package/dist/service/stepfunctions/cfn/sim-cfn-step-functions-resource-deleter.js +2 -4
  490. package/dist/service/stepfunctions/cfn/sim-step-functions-cfn-resource-factory.d.ts +1 -1
  491. package/dist/service/stepfunctions/cfn/sim-step-functions-cfn-resource-factory.js +4 -3
  492. package/dist/service/stepfunctions/cfn/state-machine/sim-cfn-state-machine-creator.d.ts +2 -1
  493. package/dist/service/stepfunctions/cfn/state-machine/sim-cfn-state-machine-creator.js +2 -2
  494. package/dist/service/stepfunctions/task/sim-aws-states-task-targets.js +2 -4
  495. package/dist/service/stepfunctions/task/sim-states-execution-role.d.ts +3 -3
  496. package/dist/service/stepfunctions/task/sim-states-execution-role.js +4 -3
  497. package/dist/service/stepfunctions/task/sim-states-task-function.js +2 -1
  498. package/dist/service/sts/auth-z/assume-role-auth-z-coordinator.d.ts +3 -0
  499. package/dist/service/sts/auth-z/assume-role-auth-z-coordinator.js +2 -7
  500. package/dist/service/sts/auth-z/assume-role-source-account-auth-z.d.ts +6 -0
  501. package/dist/service/sts/auth-z/assume-role-source-account-auth-z.js +3 -0
  502. package/dist/service/sts/auth-z/assume-role-target-auth-z.d.ts +6 -0
  503. package/dist/service/sts/auth-z/assume-role-target-auth-z.js +3 -0
  504. package/dist/service/sts/auth-z/assume-role-trust-policy-authorizer.d.ts +6 -0
  505. package/dist/service/sts/auth-z/assume-role-trust-policy-authorizer.js +1 -0
  506. package/dist/service/sts/command/assume-role/assume-role.handler.d.ts +5 -0
  507. package/dist/service/sts/command/assume-role/assume-role.handler.js +2 -1
  508. package/dist/service/sts/service-role/sim-service-role-source.d.ts +33 -0
  509. package/dist/service/sts/service-role/sim-service-role-source.js +26 -0
  510. package/dist/service/sts/service-role/sim-service-role-target.d.ts +26 -0
  511. package/dist/service/sts/service-role/sim-service-role-target.js +27 -0
  512. package/dist/service/sts/service-role/sim-service-role.d.ts +16 -20
  513. package/dist/service/sts/service-role/sim-service-role.js +7 -21
  514. package/dist/service/sts/sim-sts.js +1 -0
  515. package/dist/service/wafv2/cfn/association/sim-cfn-waf-association-creator.d.ts +3 -2
  516. package/dist/service/wafv2/cfn/association/sim-cfn-waf-association-creator.js +4 -6
  517. package/dist/service/wafv2/cfn/ip-set/sim-cfn-waf-ip-set-creator.d.ts +3 -2
  518. package/dist/service/wafv2/cfn/ip-set/sim-cfn-waf-ip-set-creator.js +4 -4
  519. package/dist/service/wafv2/cfn/regex-pattern-set/sim-cfn-waf-regex-set-creator.d.ts +3 -2
  520. package/dist/service/wafv2/cfn/regex-pattern-set/sim-cfn-waf-regex-set-creator.js +4 -4
  521. package/dist/service/wafv2/cfn/sim-cfn-waf-resource-deleter.d.ts +2 -1
  522. package/dist/service/wafv2/cfn/sim-cfn-waf-resource-deleter.js +5 -5
  523. package/dist/service/wafv2/cfn/sim-waf-cfn-resource-factory.d.ts +2 -2
  524. package/dist/service/wafv2/cfn/sim-waf-cfn-resource-factory.js +8 -6
  525. package/dist/service/wafv2/cfn/web-acl/sim-cfn-waf-web-acl-creator.d.ts +3 -2
  526. package/dist/service/wafv2/cfn/web-acl/sim-cfn-waf-web-acl-creator.js +4 -6
  527. package/dist/service/wafv2/sim-wafv2-commands.d.ts +1 -1
  528. package/dist/service/wafv2/sim-wafv2-commands.js +3 -2
  529. package/dist/util/clock/sim-clock-control.d.ts +3 -1
  530. package/dist/util/clock/sim-clock-control.js +2 -0
  531. package/dist/util/clock/sim-controllable-clock.d.ts +3 -1
  532. package/dist/util/clock/sim-controllable-clock.js +2 -0
  533. package/dist/util/clock/sim-duration.d.ts +6 -2
  534. package/dist/util/clock/sim-duration.js +8 -1
  535. package/package.json +1 -1
@@ -16,22 +16,22 @@ export class SimCfnIamResourceDeleter {
16
16
  /**
17
17
  * Delete a simulated IAM resource created from a CloudFormation Resource.
18
18
  */
19
- async delete(resourceTypeName, resource, properties) {
19
+ async delete(resourceTypeName, resource, properties, options) {
20
20
  switch (resourceTypeName) {
21
21
  case "ManagedPolicy": {
22
- await this.deleteManagedPolicy(resource);
22
+ await this.deleteManagedPolicy(resource, options);
23
23
  return;
24
24
  }
25
25
  case "Policy": {
26
- await this.deleteInlinePolicy(properties);
26
+ await this.deleteInlinePolicy(properties, options);
27
27
  return;
28
28
  }
29
29
  case "Role": {
30
- await this.roleDeleter.delete(resource);
30
+ await this.roleDeleter.delete(resource, options);
31
31
  return;
32
32
  }
33
33
  case "User": {
34
- await this.userDeleter.delete(resource);
34
+ await this.userDeleter.delete(resource, options);
35
35
  return;
36
36
  }
37
37
  default: {
@@ -39,11 +39,11 @@ export class SimCfnIamResourceDeleter {
39
39
  }
40
40
  }
41
41
  }
42
- async deleteManagedPolicy(resource) {
42
+ async deleteManagedPolicy(resource, options) {
43
43
  const policy = resource.simResource;
44
44
  assertDefined(policy, `sim IAM Managed Policy for CloudFormation Resource ${resource.logicalId}`);
45
- await this.detachManagedPolicy(policy.arn);
46
- await this.iam.deletePolicy({ input: { PolicyArn: policy.arn } });
45
+ await this.detachManagedPolicy(policy.arn, options);
46
+ await this.iam.deletePolicy({ input: { PolicyArn: policy.arn } }, options);
47
47
  }
48
48
  /**
49
49
  * Take the Managed Policy off every Role still carrying it.
@@ -54,13 +54,11 @@ export class SimCfnIamResourceDeleter {
54
54
  * Resource is deleted. A Role declared outside the Stack keeps it. This
55
55
  * clears whatever attachments are left either way.
56
56
  */
57
- async detachManagedPolicy(policyArn) {
57
+ async detachManagedPolicy(policyArn, options) {
58
58
  await Promise.all(this.iam.roles
59
59
  .values()
60
60
  .filter((role) => role.attachedPolicyArns.has(policyArn))
61
- .map(async (role) => this.iam.detachRolePolicy({
62
- input: { RoleName: role.roleName, PolicyArn: policyArn },
63
- })));
61
+ .map(async (role) => this.iam.detachRolePolicy({ input: { RoleName: role.roleName, PolicyArn: policyArn } }, options)));
64
62
  }
65
63
  /**
66
64
  * Take an AWS::IAM::Policy back off the Roles it was put on.
@@ -69,7 +67,7 @@ export class SimCfnIamResourceDeleter {
69
67
  * the template the same way creation read them. Their Refs still resolve,
70
68
  * because a Role is deleted after the policies naming it.
71
69
  */
72
- async deleteInlinePolicy(properties) {
70
+ async deleteInlinePolicy(properties, options) {
73
71
  const policyName = properties["PolicyName"];
74
72
  const roles = properties["Roles"];
75
73
  /* v8 ignore if -- creation refused the Resource if either was missing */
@@ -78,8 +76,6 @@ export class SimCfnIamResourceDeleter {
78
76
  }
79
77
  await Promise.all(roles
80
78
  .filter((roleName) => typeof roleName === "string")
81
- .map(async (roleName) => this.iam.deleteRolePolicy({
82
- input: { RoleName: roleName, PolicyName: policyName },
83
- })));
79
+ .map(async (roleName) => this.iam.deleteRolePolicy({ input: { RoleName: roleName, PolicyName: policyName } }, options)));
84
80
  }
85
81
  }
@@ -3,6 +3,7 @@ import { SimCfnIamPolicyCreator } from "./policy/sim-cfn-iam-policy-creator.js";
3
3
  import { SimCfnIamRoleCreator } from "./role/sim-cfn-iam-role-creator.js";
4
4
  import { SimCfnIamUserCreator } from "./user/sim-cfn-iam-user-creator.js";
5
5
  import { SimCfnIamResourceDeleter } from "./sim-cfn-iam-resource-deleter.js";
6
+ import { simCfnResourceCallerOptions } from "../../cloudformation/resource/caller/sim-cfn-resource-caller-options.js";
6
7
  /**
7
8
  * CloudFormation Resource factory for simulated IAM resources.
8
9
  */
@@ -23,19 +24,21 @@ export class SimIamCloudFormationResourceFactory {
23
24
  * Create a simulated IAM resource from a CloudFormation Resource.
24
25
  */
25
26
  async create(resourceTypeName, resource, context) {
27
+ const properties = context.resolvedProperties ?? resource.properties;
28
+ const options = simCfnResourceCallerOptions(context.caller);
26
29
  switch (resourceTypeName) {
27
30
  case "ManagedPolicy": {
28
- return await this.managedPolicyCreator.create(resource, context.resolvedProperties ?? resource.properties);
31
+ return await this.managedPolicyCreator.create(resource, properties, options);
29
32
  }
30
33
  case "Policy": {
31
- await this.policyCreator.create(resource, context.resolvedProperties ?? resource.properties);
34
+ await this.policyCreator.create(resource, properties, options);
32
35
  return;
33
36
  }
34
37
  case "Role": {
35
- return await this.roleCreator.create(resource, context.resolvedProperties ?? resource.properties);
38
+ return await this.roleCreator.create(resource, properties, options);
36
39
  }
37
40
  case "User": {
38
- return await this.userCreator.create(resource, context.resolvedProperties ?? resource.properties);
41
+ return await this.userCreator.create(resource, properties, options);
39
42
  }
40
43
  default: {
41
44
  throw new Error(`Unsupported sim IAM CloudFormation Resource ${resourceTypeName}`);
@@ -46,6 +49,6 @@ export class SimIamCloudFormationResourceFactory {
46
49
  * Delete a simulated IAM resource created from a CloudFormation Resource.
47
50
  */
48
51
  async delete(resourceTypeName, resource, context) {
49
- await this.deleter.delete(resourceTypeName, resource, context.resolvedProperties ?? resource.properties);
52
+ await this.deleter.delete(resourceTypeName, resource, context.resolvedProperties ?? resource.properties, simCfnResourceCallerOptions(context.caller));
50
53
  }
51
54
  }
@@ -2,6 +2,7 @@ import type { SimCfnResource } from "../../../cloudformation/resource/sim-cfn-re
2
2
  import type { SimCfnTemplateValueRecord } from "../../../cloudformation/template/value/sim-cfn-template-value.js";
3
3
  import type { SimIam } from "../../sim-iam.js";
4
4
  import type { SimIamUser } from "../../user/sim-iam-user.js";
5
+ import type { SimCfnResourceCallerOptions } from "../../../cloudformation/resource/caller/sim-cfn-resource-caller-options.js";
5
6
  interface SimCfnIamUserCreatorProperties {
6
7
  readonly iam: SimIam;
7
8
  }
@@ -15,7 +16,7 @@ export declare class SimCfnIamUserCreator {
15
16
  /**
16
17
  * Create a simulated User from an AWS::IAM::User Resource.
17
18
  */
18
- create(resource: SimCfnResource, properties: SimCfnTemplateValueRecord): Promise<SimIamUser>;
19
+ create(resource: SimCfnResource, properties: SimCfnTemplateValueRecord, options?: SimCfnResourceCallerOptions): Promise<SimIamUser>;
19
20
  private putInlinePolicies;
20
21
  private attachManagedPolicies;
21
22
  /**
@@ -12,45 +12,45 @@ export class SimCfnIamUserCreator {
12
12
  /**
13
13
  * Create a simulated User from an AWS::IAM::User Resource.
14
14
  */
15
- async create(resource, properties) {
15
+ async create(resource, properties, options) {
16
16
  const userProperties = this.propsParser.parse(resource, properties);
17
17
  await this.iam.createUser({
18
18
  input: {
19
19
  UserName: userProperties.userName,
20
20
  Path: userProperties.path,
21
21
  },
22
- });
22
+ }, options);
23
23
  await Promise.all([
24
- this.putInlinePolicies(userProperties),
25
- this.attachManagedPolicies(userProperties),
26
- this.createLoginProfile(userProperties),
24
+ this.putInlinePolicies(userProperties, options),
25
+ this.attachManagedPolicies(userProperties, options),
26
+ this.createLoginProfile(userProperties, options),
27
27
  ]);
28
28
  const user = this.iam.users.get(userProperties.userName);
29
29
  assertDefined(user, `Sim IAM User ${userProperties.userName} after CloudFormation creation`);
30
30
  return user;
31
31
  }
32
- async putInlinePolicies(userProperties) {
32
+ async putInlinePolicies(userProperties, options) {
33
33
  await Promise.all(userProperties.inlinePolicies.map(async (inlinePolicy) => this.iam.putUserPolicy({
34
34
  input: {
35
35
  UserName: userProperties.userName,
36
36
  PolicyName: inlinePolicy.policyName,
37
37
  PolicyDocument: inlinePolicy.policyDocument,
38
38
  },
39
- })));
39
+ }, options)));
40
40
  }
41
- async attachManagedPolicies(userProperties) {
41
+ async attachManagedPolicies(userProperties, options) {
42
42
  await Promise.all(userProperties.managedPolicyArns.map(async (policyArn) => this.iam.attachUserPolicy({
43
43
  input: {
44
44
  UserName: userProperties.userName,
45
45
  PolicyArn: policyArn,
46
46
  },
47
- })));
47
+ }, options)));
48
48
  }
49
49
  /**
50
50
  * Give the User a console password, the way real CloudFormation calls
51
51
  * CreateLoginProfile for a `LoginProfile` property.
52
52
  */
53
- async createLoginProfile(userProperties) {
53
+ async createLoginProfile(userProperties, options) {
54
54
  const { loginProfile } = userProperties;
55
55
  if (loginProfile === undefined) {
56
56
  return;
@@ -61,6 +61,6 @@ export class SimCfnIamUserCreator {
61
61
  Password: loginProfile.password,
62
62
  PasswordResetRequired: loginProfile.passwordResetRequired,
63
63
  },
64
- });
64
+ }, options);
65
65
  }
66
66
  }
@@ -1,5 +1,6 @@
1
1
  import type { SimCfnResource } from "../../../cloudformation/resource/sim-cfn-resource.js";
2
2
  import type { SimIam } from "../../sim-iam.js";
3
+ import type { SimCfnResourceCallerOptions } from "../../../cloudformation/resource/caller/sim-cfn-resource-caller-options.js";
3
4
  interface SimCfnIamUserDeleterProperties {
4
5
  readonly iam: SimIam;
5
6
  }
@@ -12,7 +13,8 @@ interface SimCfnIamUserDeleterProperties {
12
13
  * is detached and a `Policies` entry removed as part of deleting the User.
13
14
  *
14
15
  * Sim IAM serves no DeleteUserPolicy or DetachUserPolicy, so both come off the
15
- * User record here rather than through a command.
16
+ * User record here rather than through a command. A DeleteUser the caller is
17
+ * not allowed puts them back, leaving the User as the Stack deployed it.
16
18
  */
17
19
  export declare class SimCfnIamUserDeleter {
18
20
  private readonly iam;
@@ -20,6 +22,6 @@ export declare class SimCfnIamUserDeleter {
20
22
  /**
21
23
  * Delete the User a CloudFormation Resource created.
22
24
  */
23
- delete(resource: SimCfnResource): Promise<void>;
25
+ delete(resource: SimCfnResource, options?: SimCfnResourceCallerOptions): Promise<void>;
24
26
  }
25
27
  export {};
@@ -8,7 +8,8 @@ import { assertDefined } from "../../../../util/type-guard/defined.js";
8
8
  * is detached and a `Policies` entry removed as part of deleting the User.
9
9
  *
10
10
  * Sim IAM serves no DeleteUserPolicy or DetachUserPolicy, so both come off the
11
- * User record here rather than through a command.
11
+ * User record here rather than through a command. A DeleteUser the caller is
12
+ * not allowed puts them back, leaving the User as the Stack deployed it.
12
13
  */
13
14
  export class SimCfnIamUserDeleter {
14
15
  iam;
@@ -18,11 +19,24 @@ export class SimCfnIamUserDeleter {
18
19
  /**
19
20
  * Delete the User a CloudFormation Resource created.
20
21
  */
21
- async delete(resource) {
22
+ async delete(resource, options) {
22
23
  const user = resource.simResource;
23
24
  assertDefined(user, `sim IAM User for CloudFormation Resource ${resource.logicalId}`);
25
+ const attachedPolicyArns = [...user.attachedPolicyArns];
26
+ const inlinePolicies = [...user.inlinePolicies];
24
27
  user.attachedPolicyArns.clear();
25
28
  user.inlinePolicies.clear();
26
- await this.iam.deleteUser({ input: { UserName: user.userName } });
29
+ try {
30
+ await this.iam.deleteUser({ input: { UserName: user.userName } }, options);
31
+ }
32
+ catch (error) {
33
+ for (const policyArn of attachedPolicyArns) {
34
+ user.attachedPolicyArns.add(policyArn);
35
+ }
36
+ for (const [policyName, document] of inlinePolicies) {
37
+ user.inlinePolicies.set(policyName, document);
38
+ }
39
+ throw error;
40
+ }
27
41
  }
28
42
  }
@@ -1,4 +1,5 @@
1
1
  import { SimIamActionAuthorizer } from "../authorize/sim-iam-action-authorizer.js";
2
+ import { simIamGlobalServiceRegion, simIamInRegion, } from "../authorize/sim-iam-region-auth-z.js";
2
3
  import { SimIamPolicyCommandHandlers } from "./policy/sim-iam-policy-command-handlers.js";
3
4
  import { SimIamRoleCommandHandlers } from "./role/sim-iam-role-command-handlers.js";
4
5
  import { SimIamUserCommandHandlers } from "./user/sim-iam-user-command-handlers.js";
@@ -15,7 +16,11 @@ export class SimIamCommandHandlers {
15
16
  users;
16
17
  policies;
17
18
  constructor(properties) {
18
- const authorizer = new SimIamActionAuthorizer({ iam: properties.iam });
19
+ // IAM is global rather than Region-scoped, so its own control-plane
20
+ // requests are made in the Region its one endpoint is in.
21
+ const authorizer = new SimIamActionAuthorizer({
22
+ iam: simIamInRegion(properties.iam, simIamGlobalServiceRegion),
23
+ });
19
24
  this.roles = new SimIamRoleCommandHandlers({
20
25
  accountId: properties.accountId,
21
26
  roles: properties.roles,
@@ -1,5 +1,6 @@
1
1
  import type { SimCfnResource } from "../../cloudformation/resource/sim-cfn-resource.js";
2
2
  import type { SimKinesis } from "../sim-kinesis.js";
3
+ import type { SimCfnResourceCallerOptions } from "../../cloudformation/resource/caller/sim-cfn-resource-caller-options.js";
3
4
  interface SimCfnKinesisResourceDeleterProperties {
4
5
  readonly kinesis: SimKinesis;
5
6
  }
@@ -12,6 +13,6 @@ export declare class SimCfnKinesisResourceDeleter {
12
13
  /**
13
14
  * Delete a simulated Kinesis resource created from a CloudFormation Resource.
14
15
  */
15
- delete(resourceTypeName: string, resource: SimCfnResource): Promise<void>;
16
+ delete(resourceTypeName: string, resource: SimCfnResource, options?: SimCfnResourceCallerOptions): Promise<void>;
16
17
  }
17
18
  export {};
@@ -10,12 +10,12 @@ export class SimCfnKinesisResourceDeleter {
10
10
  /**
11
11
  * Delete a simulated Kinesis resource created from a CloudFormation Resource.
12
12
  */
13
- async delete(resourceTypeName, resource) {
13
+ async delete(resourceTypeName, resource, options) {
14
14
  if (resourceTypeName !== "Stream") {
15
15
  throw new Error(`Unsupported sim Kinesis CloudFormation Resource ${resourceTypeName} deletion`);
16
16
  }
17
17
  const stream = resource.simResource;
18
18
  assertDefined(stream, `sim Kinesis stream for CloudFormation Resource ${resource.logicalId}`);
19
- await this.kinesis.deleteStream({ input: { StreamARN: stream.arn } });
19
+ await this.kinesis.deleteStream({ input: { StreamARN: stream.arn } }, options);
20
20
  }
21
21
  }
@@ -25,6 +25,6 @@ export declare class SimKinesisCfnResourceFactory implements SimCfnServiceResour
25
25
  /**
26
26
  * Delete a simulated Kinesis resource created from a CloudFormation Resource.
27
27
  */
28
- delete(resourceTypeName: string, resource: SimCfnResource, _context: SimCloudFormationResourceDeleteContext): Promise<void>;
28
+ delete(resourceTypeName: string, resource: SimCfnResource, context: SimCloudFormationResourceDeleteContext): Promise<void>;
29
29
  }
30
30
  export {};
@@ -1,5 +1,6 @@
1
1
  import { SimCfnKinesisResourceDeleter } from "./sim-cfn-kinesis-resource-deleter.js";
2
2
  import { SimCfnKinesisStreamCreator } from "./stream/sim-cfn-kinesis-stream-creator.js";
3
+ import { simCfnResourceCallerOptions } from "../../cloudformation/resource/caller/sim-cfn-resource-caller-options.js";
3
4
  /**
4
5
  * CloudFormation Resource factory for simulated Kinesis resources.
5
6
  */
@@ -27,12 +28,12 @@ export class SimKinesisCfnResourceFactory {
27
28
  if (resourceTypeName !== "Stream") {
28
29
  throw new Error(`Unsupported sim Kinesis CloudFormation Resource ${resourceTypeName}`);
29
30
  }
30
- return await this.streamCreator.create(resource, context.resolvedProperties ?? resource.properties);
31
+ return await this.streamCreator.create(resource, context.resolvedProperties ?? resource.properties, simCfnResourceCallerOptions(context.caller));
31
32
  }
32
33
  /**
33
34
  * Delete a simulated Kinesis resource created from a CloudFormation Resource.
34
35
  */
35
- async delete(resourceTypeName, resource, _context) {
36
- await this.deleter.delete(resourceTypeName, resource);
36
+ async delete(resourceTypeName, resource, context) {
37
+ await this.deleter.delete(resourceTypeName, resource, simCfnResourceCallerOptions(context.caller));
37
38
  }
38
39
  }
@@ -2,6 +2,7 @@ import type { SimCfnResource } from "../../../cloudformation/resource/sim-cfn-re
2
2
  import type { SimCfnTemplateValueRecord } from "../../../cloudformation/template/value/sim-cfn-template-value.js";
3
3
  import type { SimKinesis } from "../../sim-kinesis.js";
4
4
  import type { SimKinesisStream } from "../../stream/sim-kinesis-stream.js";
5
+ import type { SimCfnResourceCallerOptions } from "../../../cloudformation/resource/caller/sim-cfn-resource-caller-options.js";
5
6
  interface SimCfnKinesisStreamCreatorProperties {
6
7
  readonly kinesis: SimKinesis;
7
8
  }
@@ -23,7 +24,7 @@ export declare class SimCfnKinesisStreamCreator {
23
24
  /**
24
25
  * Create a stream from an AWS::Kinesis::Stream Resource.
25
26
  */
26
- create(resource: SimCfnResource, properties: SimCfnTemplateValueRecord): Promise<SimKinesisStream>;
27
+ create(resource: SimCfnResource, properties: SimCfnTemplateValueRecord, options?: SimCfnResourceCallerOptions): Promise<SimKinesisStream>;
27
28
  /**
28
29
  * Move the stream's retention up to what the template asked for.
29
30
  *
@@ -23,7 +23,7 @@ export class SimCfnKinesisStreamCreator {
23
23
  /**
24
24
  * Create a stream from an AWS::Kinesis::Stream Resource.
25
25
  */
26
- async create(resource, properties) {
26
+ async create(resource, properties, options) {
27
27
  const streamProperties = new SimCfnKinesisStreamProperties({
28
28
  resource,
29
29
  properties,
@@ -43,8 +43,8 @@ export class SimCfnKinesisStreamCreator {
43
43
  }),
44
44
  ...(tags !== undefined && { Tags: tags }),
45
45
  },
46
- });
47
- await this.applyRetention(name, retentionHours);
46
+ }, options);
47
+ await this.applyRetention(name, retentionHours, options);
48
48
  const stream = this.kinesis.findStream(name);
49
49
  assertDefined(stream, `sim Kinesis stream ${name} after CloudFormation creation`);
50
50
  return stream;
@@ -59,13 +59,11 @@ export class SimCfnKinesisStreamCreator {
59
59
  * which is just as well: real Kinesis refuses an increase to what the stream
60
60
  * already keeps.
61
61
  */
62
- async applyRetention(name, retentionHours) {
62
+ async applyRetention(name, retentionHours, options) {
63
63
  if (retentionHours === undefined ||
64
64
  retentionHours <= simKinesisDefaultRetentionHours) {
65
65
  return;
66
66
  }
67
- await this.kinesis.increaseStreamRetentionPeriod({
68
- input: { StreamName: name, RetentionPeriodHours: retentionHours },
69
- });
67
+ await this.kinesis.increaseStreamRetentionPeriod({ input: { StreamName: name, RetentionPeriodHours: retentionHours } }, options);
70
68
  }
71
69
  }
@@ -1,7 +1,7 @@
1
1
  import { type BackgroundScheduler } from "../../util/background/background.js";
2
2
  import type { SimSdkCommandRouter } from "../../sdk/router/sim-sdk-command-router.type.js";
3
3
  import type { SimAwsAccountRegionScope } from "../aws/sim-aws-account-region-scope.js";
4
- import { type SimIamInterServiceAuthZ } from "../iam/authorize/sim-iam-inter-service-auth-z.js";
4
+ import type { SimIamInterServiceAuthZ } from "../iam/authorize/sim-iam-inter-service-auth-z.js";
5
5
  import type * as simKinesisCommands from "./command/sim-kinesis-command.types.js";
6
6
  import type { SimKinesisRequestOptions } from "./command/sim-kinesis-request-options.js";
7
7
  import { SimKinesisCfnResourceFactory } from "./cfn/sim-kinesis-cfn-resource-factory.js";
@@ -1,6 +1,6 @@
1
1
  import { BackgroundTasks, } from "../../util/background/background.js";
2
2
  import { simAwsAccountRegionScopeFactory } from "../aws/sim-aws-account-region-scope.factory.js";
3
- import { SimIamAllowAllAuth, } from "../iam/authorize/sim-iam-inter-service-auth-z.js";
3
+ import { simIamInRegion } from "../iam/authorize/sim-iam-region-auth-z.js";
4
4
  import { SimKinesisCommands } from "./command/sim-kinesis-commands.js";
5
5
  import { SimKinesisCfnResourceFactory } from "./cfn/sim-kinesis-cfn-resource-factory.js";
6
6
  import { SimKinesisSdkCommandRouter } from "./sdk/sim-kinesis-sdk-command-router.js";
@@ -32,7 +32,8 @@ export class SimKinesis {
32
32
  kinesis: this,
33
33
  });
34
34
  constructor(properties = {}) {
35
- const { accountRegionScope = simAwsAccountRegionScopeFactory.make(), iam = new SimIamAllowAllAuth(), background = new BackgroundTasks(), } = properties;
35
+ const { accountRegionScope = simAwsAccountRegionScopeFactory.make(), background = new BackgroundTasks(), } = properties;
36
+ const iam = simIamInRegion(properties.iam, accountRegionScope.regionName);
36
37
  this.background = background;
37
38
  this.commands = new SimKinesisCommands({
38
39
  streams: this.streams,
@@ -2,6 +2,7 @@ import type { SimCfnResource } from "../../../cloudformation/resource/sim-cfn-re
2
2
  import type { SimCfnTemplateValueRecord } from "../../../cloudformation/template/value/sim-cfn-template-value.js";
3
3
  import type { SimKmsAlias } from "../../key/sim-kms-alias.js";
4
4
  import type { SimKms } from "../../sim-kms.js";
5
+ import type { SimCfnResourceCallerOptions } from "../../../cloudformation/resource/caller/sim-cfn-resource-caller-options.js";
5
6
  interface SimCfnKmsAliasCreatorProperties {
6
7
  readonly kms: SimKms;
7
8
  }
@@ -19,6 +20,6 @@ export declare class SimCfnKmsAliasCreator {
19
20
  /**
20
21
  * Create an alias from an AWS::KMS::Alias Resource.
21
22
  */
22
- create(resource: SimCfnResource, properties: SimCfnTemplateValueRecord): Promise<SimKmsAlias>;
23
+ create(resource: SimCfnResource, properties: SimCfnTemplateValueRecord, options?: SimCfnResourceCallerOptions): Promise<SimKmsAlias>;
23
24
  }
24
25
  export {};
@@ -16,7 +16,7 @@ export class SimCfnKmsAliasCreator {
16
16
  /**
17
17
  * Create an alias from an AWS::KMS::Alias Resource.
18
18
  */
19
- async create(resource, properties) {
19
+ async create(resource, properties, options) {
20
20
  const aliasProperties = new SimCfnKmsAliasProperties({
21
21
  resource,
22
22
  properties,
@@ -27,7 +27,7 @@ export class SimCfnKmsAliasCreator {
27
27
  AliasName: aliasName,
28
28
  TargetKeyId: aliasProperties.targetKeyId(),
29
29
  },
30
- });
30
+ }, options);
31
31
  const alias = this.kms.findAlias(aliasName);
32
32
  assertDefined(alias, `sim KMS alias ${aliasName} after CloudFormation creation`);
33
33
  return alias;
@@ -2,6 +2,7 @@ import type { SimCfnResource } from "../../../cloudformation/resource/sim-cfn-re
2
2
  import type { SimCfnTemplateValueRecord } from "../../../cloudformation/template/value/sim-cfn-template-value.js";
3
3
  import type { SimKmsKey } from "../../key/sim-kms-key.js";
4
4
  import type { SimKms } from "../../sim-kms.js";
5
+ import type { SimCfnResourceCallerOptions } from "../../../cloudformation/resource/caller/sim-cfn-resource-caller-options.js";
5
6
  interface SimCfnKmsKeyCreatorProperties {
6
7
  readonly kms: SimKms;
7
8
  }
@@ -19,16 +20,15 @@ export declare class SimCfnKmsKeyCreator {
19
20
  /**
20
21
  * Create a key from an AWS::KMS::Key Resource.
21
22
  */
22
- create(resource: SimCfnResource, properties: SimCfnTemplateValueRecord): Promise<SimKmsKey>;
23
+ create(resource: SimCfnResource, properties: SimCfnTemplateValueRecord, options?: SimCfnResourceCallerOptions): Promise<SimKmsKey>;
23
24
  /**
24
25
  * Apply `Enabled: false`, which asks for a key that is disabled the moment
25
26
  * it exists.
26
27
  *
27
- * CreateKey has no input for that, as the real API has none either: real
28
- * CloudFormation makes the key and then disables it. The key model is
29
- * disabled directly rather than through DisableKey, because CloudFormation
30
- * is acting as the key's creator here and has no caller identity of its own
31
- * to authorize.
28
+ * CreateKey has no input for that, as the real API has none either. Real
29
+ * CloudFormation makes the key and then disables it, and this goes through
30
+ * DisableKey for the same reason, so a deployment allowed to make keys and
31
+ * not to disable them is refused here rather than quietly disabling one.
32
32
  */
33
33
  private applyEnabled;
34
34
  }
@@ -16,7 +16,7 @@ export class SimCfnKmsKeyCreator {
16
16
  /**
17
17
  * Create a key from an AWS::KMS::Key Resource.
18
18
  */
19
- async create(resource, properties) {
19
+ async create(resource, properties, options) {
20
20
  const keyProperties = new SimCfnKmsKeyProperties({ resource, properties });
21
21
  const created = await this.kms.createKey({
22
22
  input: {
@@ -26,27 +26,27 @@ export class SimCfnKmsKeyCreator {
26
26
  KeyUsage: keyProperties.keyUsage(),
27
27
  Origin: keyProperties.origin(),
28
28
  },
29
- });
29
+ }, options);
30
30
  const keyId = created.KeyMetadata?.KeyId;
31
31
  assertDefined(keyId, `sim KMS key ID after CloudFormation creation for ${resource.logicalId}`);
32
32
  const key = this.kms.findKey(keyId);
33
33
  assertDefined(key, `sim KMS key ${keyId} after CloudFormation creation`);
34
- this.applyEnabled(key, keyProperties.enabled());
34
+ await this.applyEnabled(keyId, keyProperties.enabled(), options);
35
35
  return key;
36
36
  }
37
37
  /**
38
38
  * Apply `Enabled: false`, which asks for a key that is disabled the moment
39
39
  * it exists.
40
40
  *
41
- * CreateKey has no input for that, as the real API has none either: real
42
- * CloudFormation makes the key and then disables it. The key model is
43
- * disabled directly rather than through DisableKey, because CloudFormation
44
- * is acting as the key's creator here and has no caller identity of its own
45
- * to authorize.
41
+ * CreateKey has no input for that, as the real API has none either. Real
42
+ * CloudFormation makes the key and then disables it, and this goes through
43
+ * DisableKey for the same reason, so a deployment allowed to make keys and
44
+ * not to disable them is refused here rather than quietly disabling one.
46
45
  */
47
- applyEnabled(key, enabled) {
48
- if (!enabled) {
49
- key.disable();
46
+ async applyEnabled(keyId, enabled, options) {
47
+ if (enabled) {
48
+ return;
50
49
  }
50
+ await this.kms.disableKey({ input: { KeyId: keyId } }, options);
51
51
  }
52
52
  }
@@ -1,5 +1,6 @@
1
1
  import type { SimCfnResource } from "../../cloudformation/resource/sim-cfn-resource.js";
2
2
  import type { SimKms } from "../sim-kms.js";
3
+ import type { SimCfnResourceCallerOptions } from "../../cloudformation/resource/caller/sim-cfn-resource-caller-options.js";
3
4
  interface SimCfnKmsResourceDeleterProperties {
4
5
  readonly kms: SimKms;
5
6
  }
@@ -17,6 +18,6 @@ export declare class SimCfnKmsResourceDeleter {
17
18
  /**
18
19
  * Delete a simulated KMS resource created from a CloudFormation Resource.
19
20
  */
20
- delete(resourceTypeName: string, resource: SimCfnResource): Promise<void>;
21
+ delete(resourceTypeName: string, resource: SimCfnResource, options?: SimCfnResourceCallerOptions): Promise<void>;
21
22
  }
22
23
  export {};
@@ -15,20 +15,18 @@ export class SimCfnKmsResourceDeleter {
15
15
  /**
16
16
  * Delete a simulated KMS resource created from a CloudFormation Resource.
17
17
  */
18
- async delete(resourceTypeName, resource) {
18
+ async delete(resourceTypeName, resource, options) {
19
19
  switch (resourceTypeName) {
20
20
  case "Key": {
21
21
  const key = resource.simResource;
22
22
  assertDefined(key, `sim KMS Key for CloudFormation Resource ${resource.logicalId}`);
23
- await this.kms.scheduleKeyDeletion({ input: { KeyId: key.keyId } });
23
+ await this.kms.scheduleKeyDeletion({ input: { KeyId: key.keyId } }, options);
24
24
  return;
25
25
  }
26
26
  case "Alias": {
27
27
  const alias = resource.simResource;
28
28
  assertDefined(alias, `sim KMS Alias for CloudFormation Resource ${resource.logicalId}`);
29
- await this.kms.deleteAlias({
30
- input: { AliasName: alias.aliasName },
31
- });
29
+ await this.kms.deleteAlias({ input: { AliasName: alias.aliasName } }, options);
32
30
  return;
33
31
  }
34
32
  default: {
@@ -1,6 +1,7 @@
1
1
  import type { SimCfnServiceResourceFactory } from "../../cloudformation/resource/factory/sim-cfn-resource-factory.type.js";
2
2
  import type { SimCfnResource, SimCloudFormationResourceCreateContext } from "../../cloudformation/resource/sim-cfn-resource.js";
3
3
  import type { SimKms } from "../sim-kms.js";
4
+ import type { SimCloudFormationResourceDeleteContext } from "../../cloudformation/resource/sim-cfn-resource.type.js";
4
5
  interface SimKmsCfnResourceFactoryProperties {
5
6
  readonly kms: SimKms;
6
7
  }
@@ -22,6 +23,6 @@ export declare class SimKmsCfnResourceFactory implements SimCfnServiceResourceFa
22
23
  /**
23
24
  * Delete a simulated KMS resource created from a CloudFormation Resource.
24
25
  */
25
- delete(resourceTypeName: string, resource: SimCfnResource): Promise<void>;
26
+ delete(resourceTypeName: string, resource: SimCfnResource, context: SimCloudFormationResourceDeleteContext): Promise<void>;
26
27
  }
27
28
  export {};
@@ -1,6 +1,7 @@
1
1
  import { SimCfnKmsAliasCreator } from "./alias/sim-cfn-kms-alias-creator.js";
2
2
  import { SimCfnKmsKeyCreator } from "./key/sim-cfn-kms-key-creator.js";
3
3
  import { SimCfnKmsResourceDeleter } from "./sim-cfn-kms-resource-deleter.js";
4
+ import { simCfnResourceCallerOptions } from "../../cloudformation/resource/caller/sim-cfn-resource-caller-options.js";
4
5
  /**
5
6
  * CloudFormation Resource factory for simulated KMS resources.
6
7
  */
@@ -21,12 +22,13 @@ export class SimKmsCfnResourceFactory {
21
22
  */
22
23
  async create(resourceTypeName, resource, context) {
23
24
  const properties = context.resolvedProperties ?? resource.properties;
25
+ const options = simCfnResourceCallerOptions(context.caller);
24
26
  switch (resourceTypeName) {
25
27
  case "Key": {
26
- return await this.keyCreator.create(resource, properties);
28
+ return await this.keyCreator.create(resource, properties, options);
27
29
  }
28
30
  case "Alias": {
29
- return await this.aliasCreator.create(resource, properties);
31
+ return await this.aliasCreator.create(resource, properties, options);
30
32
  }
31
33
  default: {
32
34
  throw new Error(`Unsupported sim KMS CloudFormation Resource ${resourceTypeName}`);
@@ -36,7 +38,7 @@ export class SimKmsCfnResourceFactory {
36
38
  /**
37
39
  * Delete a simulated KMS resource created from a CloudFormation Resource.
38
40
  */
39
- async delete(resourceTypeName, resource) {
40
- await this.deleter.delete(resourceTypeName, resource);
41
+ async delete(resourceTypeName, resource, context) {
42
+ await this.deleter.delete(resourceTypeName, resource, simCfnResourceCallerOptions(context.caller));
41
43
  }
42
44
  }