@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
@@ -1,4 +1,5 @@
1
1
  import type { AwsRegionName } from "../../aws/sim-aws-region.js";
2
+ import type { SimAwsCaller } from "../../aws/caller/sim-aws-caller.js";
2
3
  import { type SimCdkAssemblyStack } from "../cdk/sim-cdk-assembly-manifest.js";
3
4
  import { type SimCfnCdkOutStackOptionsByName } from "./sim-cfn-cdk-out-stack-options.js";
4
5
  export interface SimCloudFormationDeployCdkOutProperties {
@@ -17,8 +18,13 @@ export interface SimCloudFormationDeployCdkOutProperties {
17
18
  */
18
19
  readonly stackNames?: readonly string[] | undefined;
19
20
  /**
20
- * Bindings, parameters and a transform for individual Stacks, keyed the same
21
- * way `stackNames` names them.
21
+ * The principal every Stack in the assembly is deployed as, which one named
22
+ * in `stackOptions` overrides for its own Stack.
23
+ */
24
+ readonly caller?: SimAwsCaller | undefined;
25
+ /**
26
+ * Bindings, parameters, a caller and a transform for individual Stacks,
27
+ * keyed the same way `stackNames` names them.
22
28
  */
23
29
  readonly stackOptions?: SimCfnCdkOutStackOptionsByName | undefined;
24
30
  }
@@ -28,6 +34,7 @@ export interface SimCfnCdkOutPlannedStack extends SimCdkAssemblyStack {
28
34
  }
29
35
  export interface SimCfnCdkOutPlan {
30
36
  readonly stacks: readonly SimCfnCdkOutPlannedStack[];
37
+ readonly caller?: SimAwsCaller | undefined;
31
38
  readonly stackOptions?: SimCfnCdkOutStackOptionsByName | undefined;
32
39
  }
33
40
  /**
@@ -10,7 +10,7 @@ import { assertCdkOutOptionsAreDeployed, } from "./sim-cfn-cdk-out-stack-options
10
10
  * an assembly that cannot be deployed says so before any Stack is created.
11
11
  */
12
12
  export async function planCdkOutDeployment(properties) {
13
- const { directoryPath, stackNames, stackOptions } = cdkOutDeployment(properties.request);
13
+ const { directoryPath, stackNames, caller, stackOptions } = cdkOutDeployment(properties.request);
14
14
  const selected = selectCdkAssemblyStacks({
15
15
  stacks: await loadCdkAssemblyStacks(directoryPath),
16
16
  stackNames,
@@ -22,6 +22,7 @@ export async function planCdkOutDeployment(properties) {
22
22
  ...stack,
23
23
  regionName: stack.regionName ?? properties.defaultRegionName,
24
24
  })),
25
+ caller,
25
26
  stackOptions,
26
27
  };
27
28
  }
@@ -1,5 +1,6 @@
1
1
  import type { SimCdkAssemblyStack } from "../cdk/sim-cdk-assembly-manifest.js";
2
2
  import type { SimCfnBinding } from "../bind/sim-cfn-binding.js";
3
+ import type { SimAwsCaller } from "../../aws/caller/sim-aws-caller.js";
3
4
  import type { SimCfnDeployedStack } from "../stack/sim-cfn-deployed-stack.type.js";
4
5
  import type { CfnTemplateBodyRecord } from "../template/sim-cfn-template.js";
5
6
  import type { SimCfnTemplateFileTransform } from "./sim-cfn-template-file-transform.js";
@@ -26,6 +27,12 @@ export type SimCfnCdkOutTemplateTransform = (template: CfnTemplateBodyRecord, de
26
27
  export interface SimCfnCdkOutStackOptions {
27
28
  readonly parameters?: Record<string, string> | undefined;
28
29
  readonly bindings?: readonly SimCfnBinding[] | undefined;
30
+ /**
31
+ * The principal this Stack is deployed as, where the assembly's own caller
32
+ * is not the right one for it. A pipeline Stack deployed by one role and an
33
+ * application Stack deployed by another is what this is for.
34
+ */
35
+ readonly caller?: SimAwsCaller | undefined;
29
36
  readonly transform?: SimCfnCdkOutTemplateTransform | undefined;
30
37
  }
31
38
  export type SimCfnCdkOutStackOptionsByName = Record<string, SimCfnCdkOutStackOptions>;
@@ -43,8 +50,8 @@ export declare function cdkOutBoundTransform(transform: SimCfnCdkOutTemplateTran
43
50
  /**
44
51
  * Refuse options keyed against a Stack that is not being deployed.
45
52
  *
46
- * A renamed Stack would otherwise take its bindings and its transform with it
47
- * without saying anything, and the deployment that lost them looks like one
48
- * that never had them.
53
+ * A renamed Stack would otherwise take its bindings, its caller and its
54
+ * transform with it without saying anything, and the deployment that lost them
55
+ * looks like one that never had them.
49
56
  */
50
57
  export declare function assertCdkOutOptionsAreDeployed(optionsByName: SimCfnCdkOutStackOptionsByName | undefined, deploying: readonly SimCdkAssemblyStack[]): void;
@@ -20,17 +20,14 @@ export function cdkOutBoundTransform(transform, deployed) {
20
20
  /**
21
21
  * Refuse options keyed against a Stack that is not being deployed.
22
22
  *
23
- * A renamed Stack would otherwise take its bindings and its transform with it
24
- * without saying anything, and the deployment that lost them looks like one
25
- * that never had them.
23
+ * A renamed Stack would otherwise take its bindings, its caller and its
24
+ * transform with it without saying anything, and the deployment that lost them
25
+ * looks like one that never had them.
26
26
  */
27
27
  export function assertCdkOutOptionsAreDeployed(optionsByName, deploying) {
28
28
  const names = new Set(deploying.flatMap((stack) => [stack.stackName, stack.artifactId]));
29
29
  const unmatched = Object.keys(optionsByName ?? {}).filter((name) => !names.has(name));
30
30
  if (unmatched.length > 0) {
31
- throw new Error(`Options were given for ${unmatched.join(", ")}, which no Stack being deployed is named. The Stacks being deployed are ${stackNames(deploying)}.`);
31
+ throw new Error(`Options were given for ${unmatched.join(", ")}, which no Stack being deployed is named. The Stacks being deployed are ${deploying.map((stack) => stack.stackName).join(", ")}.`);
32
32
  }
33
33
  }
34
- function stackNames(stacks) {
35
- return stacks.map((stack) => stack.stackName).join(", ");
36
- }
@@ -5,6 +5,7 @@ import { type SimCloudFormationDeployTemplateFileProperties as SimCloudFormation
5
5
  import { type SimCloudFormationDeployCdkOutProperties } from "./sim-cfn-cdk-out-deployer.js";
6
6
  import type { SimCfnBinding } from "../bind/sim-cfn-binding.js";
7
7
  import type { SimAws } from "../../aws/sim-aws.js";
8
+ import type { SimAwsCaller } from "../../aws/caller/sim-aws-caller.js";
8
9
  import type { SimAwsAccountRegionScope } from "../../aws/sim-aws-account-region-scope.js";
9
10
  import type { BackgroundCompleter, BackgroundScheduler } from "../../../util/background/background.js";
10
11
  import type { SimCfnExports } from "../export/sim-cfn-exports.js";
@@ -13,6 +14,15 @@ export interface SimCloudFormationCreateStackProperties {
13
14
  readonly template: CfnTemplateBodyRecord;
14
15
  readonly parameters?: Record<string, string> | undefined;
15
16
  readonly bindings?: readonly SimCfnBinding[] | undefined;
17
+ /**
18
+ * The principal the deployment runs as.
19
+ *
20
+ * Every Resource is created, updated and deleted through the command an SDK
21
+ * caller would reach, and this is who those commands are authorized as. Left
22
+ * out, they are decided as the Account root, which is what a service control
23
+ * policy denying an Account's root principal then denies.
24
+ */
25
+ readonly caller?: SimAwsCaller | undefined;
16
26
  /**
17
27
  * The synthesized CDK template file this in-memory template stands in for.
18
28
  *
@@ -58,6 +58,7 @@ export class SimCloudFormationTemplateDeployer {
58
58
  template: properties.template,
59
59
  parameters: properties.parameters,
60
60
  bindings: properties.bindings,
61
+ caller: properties.caller,
61
62
  cdkOutContext: await cdkOutContextForTemplatePath(properties.templatePath),
62
63
  });
63
64
  }
@@ -110,13 +111,13 @@ export class SimCloudFormationTemplateDeployer {
110
111
  ParameterValue: parameterValue,
111
112
  })),
112
113
  },
113
- }, properties.cdkOutContext, properties.bindings);
114
+ }, properties.cdkOutContext, properties.bindings, properties.caller);
114
115
  const stack = this.stacks.get(properties.stackName);
115
116
  assertDefined(stack, `Sim CloudFormation Stack named ${properties.stackName}`);
116
117
  await stack.waitForDeployComplete();
117
118
  return stack;
118
119
  }
119
- async createStackWithContext(command, cdkOutContext, bindings) {
120
+ async createStackWithContext(command, cdkOutContext, bindings, caller) {
120
121
  const handler = new CreateStackCommandHandler({
121
122
  simAws: this.simAws,
122
123
  accountRegionScope: this.accountRegionScope,
@@ -124,6 +125,7 @@ export class SimCloudFormationTemplateDeployer {
124
125
  background: this.background,
125
126
  cdkOutContext,
126
127
  bindings,
128
+ caller,
127
129
  exports: this.exports,
128
130
  });
129
131
  return await handler.handle(command);
@@ -2,6 +2,7 @@ import type { SimCloudFormationStackName } from "../stack/sim-cfn-stack.js";
2
2
  import type { CfnTemplateBodyRecord } from "../template/sim-cfn-template.js";
3
3
  import { type SimCdkOutContext } from "../cdk/sim-cdk-out-context.js";
4
4
  import type { SimCfnBinding } from "../bind/sim-cfn-binding.js";
5
+ import type { SimAwsCaller } from "../../aws/caller/sim-aws-caller.js";
5
6
  import type { SimCfnTemplateFileWatchOptions } from "../watch/sim-cfn-template-watch.type.js";
6
7
  import { type SimCfnTemplateFileTransform } from "./sim-cfn-template-file-transform.js";
7
8
  export interface SimCloudFormationDeployTemplateFileProperties {
@@ -9,6 +10,15 @@ export interface SimCloudFormationDeployTemplateFileProperties {
9
10
  readonly stackName?: SimCloudFormationStackName | string | undefined;
10
11
  readonly parameters?: Record<string, string> | undefined;
11
12
  readonly bindings?: readonly SimCfnBinding[] | undefined;
13
+ /**
14
+ * The principal the deployment runs as.
15
+ *
16
+ * Every Resource is created, updated and deleted through the command an SDK
17
+ * caller would reach, and this is who those commands are authorized as. Left
18
+ * out, they are decided as the Account root, which is what a service control
19
+ * policy denying an Account's root principal then denies.
20
+ */
21
+ readonly caller?: SimAwsCaller | undefined;
12
22
  /**
13
23
  * Adapt the parsed template before it is deployed, and again every time a
14
24
  * watched file changes.
@@ -42,6 +52,7 @@ export interface SimCfnLoadedTemplateFile {
42
52
  readonly template: CfnTemplateBodyRecord;
43
53
  readonly parameters?: Record<string, string> | undefined;
44
54
  readonly bindings?: readonly SimCfnBinding[] | undefined;
55
+ readonly caller?: SimAwsCaller | undefined;
45
56
  readonly cdkOutContext?: SimCdkOutContext | undefined;
46
57
  }
47
58
  /**
@@ -16,7 +16,7 @@ export class SimCfnTemplateFileLoader {
16
16
  */
17
17
  async load(properties) {
18
18
  const deployment = simCfnTemplateFileDeployment(properties);
19
- const { templatePath, parameters, bindings } = deployment;
19
+ const { templatePath, parameters, bindings, caller } = deployment;
20
20
  const stackName = deployment.stackName ?? stackNameFromTemplatePath(templatePath);
21
21
  // The template is named to a `yulin watch` supervisor, so re-synthing a
22
22
  // stack restarts the process that deployed it. Nothing happens outside
@@ -31,6 +31,7 @@ export class SimCfnTemplateFileLoader {
31
31
  template,
32
32
  parameters,
33
33
  bindings,
34
+ caller,
34
35
  cdkOutContext,
35
36
  };
36
37
  }
@@ -42,6 +42,7 @@ export class SimCfnTemplateFileUpdater {
42
42
  stacks: this.stacks,
43
43
  background: this.background,
44
44
  cdkOutContext: loaded.cdkOutContext,
45
+ caller: loaded.caller,
45
46
  });
46
47
  await handler.handle({
47
48
  input: {
@@ -0,0 +1,16 @@
1
+ import type { SimAwsCaller } from "../../../aws/caller/sim-aws-caller.js";
2
+ /**
3
+ * The request options a Resource operation makes its service calls with.
4
+ *
5
+ * Every simulated service takes a caller the same way, so one shape carries the
6
+ * deployment's principal from the Stack down to the commands that create and
7
+ * delete Resources. Absent where the deployment named no caller, which leaves
8
+ * each service to its own default of the Account root.
9
+ */
10
+ export type SimCfnResourceCallerOptions = {
11
+ readonly caller: SimAwsCaller;
12
+ } | undefined;
13
+ /**
14
+ * The request options naming a deployment's caller, or none where it has none.
15
+ */
16
+ export declare function simCfnResourceCallerOptions(caller: SimAwsCaller | undefined): SimCfnResourceCallerOptions;
@@ -0,0 +1,6 @@
1
+ /**
2
+ * The request options naming a deployment's caller, or none where it has none.
3
+ */
4
+ export function simCfnResourceCallerOptions(caller) {
5
+ return caller === undefined ? undefined : { caller };
6
+ }
@@ -1,3 +1,4 @@
1
+ import { SimSchedulerScheduleGroup } from "../../../../scheduler/group/sim-scheduler-schedule-group.js";
1
2
  import { SimSchedulerSchedule } from "../../../../scheduler/schedule/sim-scheduler-schedule.js";
2
3
  /**
3
4
  * CloudFormation-facing values for a simulated schedule.
@@ -23,6 +24,51 @@ class SimSchedulerScheduleCfn {
23
24
  throw new Error(`Unsupported AWS::Scheduler::Schedule attribute ${attributeName}`);
24
25
  }
25
26
  }
27
+ /**
28
+ * CloudFormation-facing values for a simulated schedule group.
29
+ *
30
+ * `Arn` is the one worth having. An identity policy granting `scheduler:`
31
+ * actions on the group names it, and so does the `aws:SourceArn` condition AWS
32
+ * recommends in a schedule execution role's trust policy.
33
+ */
34
+ class SimSchedulerScheduleGroupCfn {
35
+ group;
36
+ constructor(properties) {
37
+ this.group = properties.group;
38
+ }
39
+ /**
40
+ * AWS::Scheduler::ScheduleGroup Ref returns the group's name.
41
+ */
42
+ refValue() {
43
+ return this.group.name;
44
+ }
45
+ /**
46
+ * AWS::Scheduler::ScheduleGroup attributes.
47
+ *
48
+ * The two dates come back as ISO strings. A template value is JSON, so there
49
+ * is nowhere for a `Date` to go, and every other date CloudFormation hands
50
+ * back is a string too.
51
+ */
52
+ attributeValue(attributeName) {
53
+ switch (attributeName) {
54
+ case "Arn": {
55
+ return this.group.arn;
56
+ }
57
+ case "State": {
58
+ return this.group.state;
59
+ }
60
+ case "CreationDate": {
61
+ return this.group.creationDate.toISOString();
62
+ }
63
+ case "LastModificationDate": {
64
+ return this.group.lastModificationDate.toISOString();
65
+ }
66
+ default: {
67
+ throw new Error(`Unsupported AWS::Scheduler::ScheduleGroup attribute ${attributeName}`);
68
+ }
69
+ }
70
+ }
71
+ }
26
72
  /**
27
73
  * The CloudFormation-facing value adapter for a simulated Scheduler Resource.
28
74
  */
@@ -31,5 +77,9 @@ export function schedulerValueAdapter(properties) {
31
77
  properties.simResource instanceof SimSchedulerSchedule) {
32
78
  return new SimSchedulerScheduleCfn({ schedule: properties.simResource });
33
79
  }
80
+ if (properties.type === "AWS::Scheduler::ScheduleGroup" &&
81
+ properties.simResource instanceof SimSchedulerScheduleGroup) {
82
+ return new SimSchedulerScheduleGroupCfn({ group: properties.simResource });
83
+ }
34
84
  return undefined;
35
85
  }
@@ -1,4 +1,5 @@
1
1
  import type { SimAws } from "../../aws/sim-aws.js";
2
+ import type { SimAwsCaller } from "../../aws/caller/sim-aws-caller.js";
2
3
  import type { SimAwsAccountRegionScope } from "../../aws/sim-aws-account-region-scope.js";
3
4
  import type { BackgroundScheduler } from "../../../util/background/background.js";
4
5
  import type { SimCfnServiceResourceFactory } from "./factory/sim-cfn-resource-factory.type.js";
@@ -50,6 +51,15 @@ export interface SimCloudFormationResourceCreateContext {
50
51
  readonly resolvedProperties?: SimCfnTemplateValueRecord | undefined;
51
52
  readonly cdkOutContext?: SimCdkOutContext | undefined;
52
53
  readonly bindings?: readonly SimCfnBinding[] | undefined;
54
+ /**
55
+ * The principal the deployment runs as, which every service command creating
56
+ * a Resource is authorized as.
57
+ *
58
+ * Left out unless the deployment named one, which leaves each service to its
59
+ * own omitted-caller default: the Account root, as it is everywhere else in
60
+ * the simulation.
61
+ */
62
+ readonly caller?: SimAwsCaller | undefined;
53
63
  }
54
64
  /**
55
65
  * What a service is given to delete a Resource it created.
@@ -64,4 +74,6 @@ export interface SimCloudFormationResourceDeleteContext {
64
74
  readonly simAws: SimAws;
65
75
  readonly resources: ReadonlyMap<string, SimCfnResource>;
66
76
  readonly resolvedProperties?: SimCfnTemplateValueRecord | undefined;
77
+ /** The principal the teardown runs as, as creation carries it. */
78
+ readonly caller?: SimAwsCaller | undefined;
67
79
  }
@@ -12,7 +12,7 @@ import type { SimCloudFormationDeployTemplateFileProperties as SimCloudFormation
12
12
  import type { SimCloudFormationDeployCdkOutProperties } from "./deploy/sim-cfn-cdk-out-deployer.js";
13
13
  import type { SimSdkCommandRouter } from "../../sdk/index.js";
14
14
  import type { SimAwsCaller } from "../aws/caller/sim-aws-caller.js";
15
- import { type SimIamInterServiceAuthZ } from "../iam/authorize/sim-iam-inter-service-auth-z.js";
15
+ import type { SimIamInterServiceAuthZ } from "../iam/authorize/sim-iam-inter-service-auth-z.js";
16
16
  /**
17
17
  * Options accepted by simulated CloudFormation command operations.
18
18
  */
@@ -8,7 +8,7 @@ import { simAwsAccountRegionScopeFactory } from "../aws/sim-aws-account-region-s
8
8
  import { SimCfnExports } from "./export/sim-cfn-exports.js";
9
9
  import { SimCloudFormationSdkCommandRouter } from "./sdk/sim-cloudformation-sdk-command-router.js";
10
10
  import { SimCloudFormationAuthorization } from "./authorize/sim-cloudformation-authorization.js";
11
- import { SimIamAllowAllAuth, } from "../iam/authorize/sim-iam-inter-service-auth-z.js";
11
+ import { simIamInRegion } from "../iam/authorize/sim-iam-region-auth-z.js";
12
12
  /**
13
13
  * Simulated CloudFormation in one AWS Account and Region.
14
14
  */
@@ -22,7 +22,8 @@ export class SimCloudFormation {
22
22
  sdkRouter = new SimCloudFormationSdkCommandRouter(this);
23
23
  authorization;
24
24
  constructor(properties) {
25
- const { simAws, accountRegionScope = simAwsAccountRegionScopeFactory.make(), iam = new SimIamAllowAllAuth(), background, } = properties;
25
+ const { simAws, accountRegionScope = simAwsAccountRegionScopeFactory.make(), background, } = properties;
26
+ const iam = simIamInRegion(properties.iam, accountRegionScope.regionName);
26
27
  this.simAws = simAws;
27
28
  this.background = background;
28
29
  this.accountRegionScope = accountRegionScope;
@@ -1,4 +1,5 @@
1
1
  import type { SimAws } from "../../../aws/sim-aws.js";
2
+ import type { SimAwsCaller } from "../../../aws/caller/sim-aws-caller.js";
2
3
  import type { SimCfnBinding } from "../../bind/sim-cfn-binding.js";
3
4
  import type { SimCdkOutContext } from "../../cdk/sim-cdk-out-context.js";
4
5
  import type { SimCfnResource } from "../../resource/sim-cfn-resource.js";
@@ -7,6 +8,7 @@ interface SimCfnStackResourceBatchCreatorProperties {
7
8
  readonly resources: ReadonlyMap<string, SimCfnResource>;
8
9
  readonly cdkOutContext?: SimCdkOutContext | undefined;
9
10
  readonly bindings?: readonly SimCfnBinding[] | undefined;
11
+ readonly caller?: SimAwsCaller | undefined;
10
12
  }
11
13
  /**
12
14
  * Creates one dependency-ready batch of Stack Resources.
@@ -27,6 +29,7 @@ export declare class SimCfnStackResourceBatchCreator {
27
29
  private readonly resources;
28
30
  private readonly cdkOutContext;
29
31
  private readonly bindings;
32
+ private readonly caller;
30
33
  constructor(properties: SimCfnStackResourceBatchCreatorProperties);
31
34
  /**
32
35
  * Create the supplied Resources concurrently.
@@ -17,12 +17,14 @@ export class SimCfnStackResourceBatchCreator {
17
17
  resources;
18
18
  cdkOutContext;
19
19
  bindings;
20
+ caller;
20
21
  constructor(properties) {
21
- const { simAws, resources, cdkOutContext, bindings } = properties;
22
+ const { simAws, resources, cdkOutContext, bindings, caller } = properties;
22
23
  this.simAws = simAws;
23
24
  this.resources = resources;
24
25
  this.cdkOutContext = cdkOutContext;
25
26
  this.bindings = bindings;
27
+ this.caller = caller;
26
28
  }
27
29
  /**
28
30
  * Create the supplied Resources concurrently.
@@ -37,6 +39,7 @@ export class SimCfnStackResourceBatchCreator {
37
39
  resources: this.resources,
38
40
  cdkOutContext: this.cdkOutContext,
39
41
  bindings: this.bindings,
42
+ caller: this.caller,
40
43
  });
41
44
  }));
42
45
  }
@@ -1,4 +1,5 @@
1
1
  import type { SimAws } from "../../../aws/sim-aws.js";
2
+ import type { SimAwsCaller } from "../../../aws/caller/sim-aws-caller.js";
2
3
  import type { SimCfnResource } from "../../resource/sim-cfn-resource.js";
3
4
  import type { SimCdkOutContext } from "../../cdk/sim-cdk-out-context.js";
4
5
  import type { SimCfnBinding } from "../../bind/sim-cfn-binding.js";
@@ -8,6 +9,7 @@ interface SimCfnStackResourceCreatorProperties {
8
9
  readonly stackName: string;
9
10
  readonly cdkOutContext?: SimCdkOutContext | undefined;
10
11
  readonly bindings?: readonly SimCfnBinding[] | undefined;
12
+ readonly caller?: SimAwsCaller | undefined;
11
13
  }
12
14
  /**
13
15
  * Orchestrates dependency-ordered creation of a Stack's simulated Resources.
@@ -21,7 +21,7 @@ export class SimCfnStackResourceCreator {
21
21
  stackName;
22
22
  batchCreator;
23
23
  constructor(properties) {
24
- const { simAws, resources, stackName, cdkOutContext, bindings } = properties;
24
+ const { simAws, resources, stackName, cdkOutContext, bindings, caller } = properties;
25
25
  this.resources = resources;
26
26
  this.stackName = stackName;
27
27
  this.batchCreator = new SimCfnStackResourceBatchCreator({
@@ -29,6 +29,7 @@ export class SimCfnStackResourceCreator {
29
29
  resources,
30
30
  cdkOutContext,
31
31
  bindings,
32
+ caller,
32
33
  });
33
34
  }
34
35
  /**
@@ -1,5 +1,6 @@
1
1
  import type { BackgroundScheduler } from "../../../util/background/background.js";
2
2
  import type { SimAws } from "../../aws/sim-aws.js";
3
+ import type { SimAwsCaller } from "../../aws/caller/sim-aws-caller.js";
3
4
  import type { SimAwsAccountRegionScope } from "../../aws/sim-aws-account-region-scope.js";
4
5
  import type { SimCfnBinding } from "../bind/sim-cfn-binding.js";
5
6
  import type { SimCdkOutContext } from "../cdk/sim-cdk-out-context.js";
@@ -19,6 +20,11 @@ interface SimCfnStackResourceOperationsProperties {
19
20
  readonly stackName: SimCloudFormationStackName;
20
21
  readonly cdkOutContext?: SimCdkOutContext | undefined;
21
22
  readonly bindings?: readonly SimCfnBinding[] | undefined;
23
+ /**
24
+ * The principal the Stack's Resource work is authorized as. An omitted
25
+ * caller leaves each service to decide the request as the Account root.
26
+ */
27
+ readonly caller?: SimAwsCaller | undefined;
22
28
  }
23
29
  /**
24
30
  * What a Stack can ask simulated AWS to do with its Resources.
@@ -39,16 +45,25 @@ export declare class SimCfnStackResourceOperations {
39
45
  private readonly stackName;
40
46
  private readonly bindings;
41
47
  private cdkOutContext;
48
+ private caller;
42
49
  constructor(properties: SimCfnStackResourceOperationsProperties);
43
50
  /**
44
- * Read Resources from a different CDK cloud assembly from now on.
51
+ * Take on what an update brings with it, for this and every later operation.
45
52
  *
46
53
  * A synthesis writes the template and the assets manifest beside it together,
47
54
  * so a Stack updated from a re-synthesized template needs the manifest that
48
55
  * came with it. Keeping the one the Stack was deployed from would look up the
49
56
  * asset a replaced Resource names in a manifest written before it existed.
57
+ *
58
+ * An update naming a caller runs as that one, and the Stack is torn down as
59
+ * it afterwards. An update that names none keeps the deployment's caller, so
60
+ * a Stack updated from a plain template path goes on running as whoever
61
+ * deployed it.
50
62
  */
51
- useCdkOutContext(cdkOutContext: SimCdkOutContext): void;
63
+ useUpdate(properties: {
64
+ readonly cdkOutContext?: SimCdkOutContext | undefined;
65
+ readonly caller?: SimAwsCaller | undefined;
66
+ }): void;
52
67
  /**
53
68
  * Create every Resource in the given Stack Resource map.
54
69
  */
@@ -21,24 +21,32 @@ export class SimCfnStackResourceOperations {
21
21
  stackName;
22
22
  bindings;
23
23
  cdkOutContext;
24
+ caller;
24
25
  constructor(properties) {
25
- const { simAws, accountRegionScope, stackName, cdkOutContext, bindings } = properties;
26
+ const { simAws, accountRegionScope, stackName, cdkOutContext, bindings, caller, } = properties;
26
27
  this.simAws = simAws;
27
28
  this.accountRegionScope = accountRegionScope;
28
29
  this.stackName = stackName;
29
30
  this.cdkOutContext = cdkOutContext;
30
31
  this.bindings = bindings;
32
+ this.caller = caller;
31
33
  }
32
34
  /**
33
- * Read Resources from a different CDK cloud assembly from now on.
35
+ * Take on what an update brings with it, for this and every later operation.
34
36
  *
35
37
  * A synthesis writes the template and the assets manifest beside it together,
36
38
  * so a Stack updated from a re-synthesized template needs the manifest that
37
39
  * came with it. Keeping the one the Stack was deployed from would look up the
38
40
  * asset a replaced Resource names in a manifest written before it existed.
41
+ *
42
+ * An update naming a caller runs as that one, and the Stack is torn down as
43
+ * it afterwards. An update that names none keeps the deployment's caller, so
44
+ * a Stack updated from a plain template path goes on running as whoever
45
+ * deployed it.
39
46
  */
40
- useCdkOutContext(cdkOutContext) {
41
- this.cdkOutContext = cdkOutContext;
47
+ useUpdate(properties) {
48
+ this.cdkOutContext = properties.cdkOutContext ?? this.cdkOutContext;
49
+ this.caller = properties.caller ?? this.caller;
42
50
  }
43
51
  /**
44
52
  * Create every Resource in the given Stack Resource map.
@@ -87,6 +95,7 @@ export class SimCfnStackResourceOperations {
87
95
  accountRegionScope: this.accountRegionScope,
88
96
  stackName: this.stackName,
89
97
  cdkOutContext: this.cdkOutContext,
98
+ caller: this.caller,
90
99
  }).publish();
91
100
  }
92
101
  creator(resources) {
@@ -96,6 +105,7 @@ export class SimCfnStackResourceOperations {
96
105
  stackName: this.stackName,
97
106
  cdkOutContext: this.cdkOutContext,
98
107
  bindings: this.bindings,
108
+ caller: this.caller,
99
109
  });
100
110
  }
101
111
  deleter(resources) {
@@ -103,6 +113,7 @@ export class SimCfnStackResourceOperations {
103
113
  simAws: this.simAws,
104
114
  resources,
105
115
  stackName: this.stackName,
116
+ caller: this.caller,
106
117
  });
107
118
  }
108
119
  }
@@ -38,7 +38,7 @@ export class SimCfnStack {
38
38
  stackOutputs;
39
39
  cfnTemplate;
40
40
  constructor(properties) {
41
- const { simAws, accountRegionScope, background, stackName, template, cdkOutContext, bindings, exports, } = properties;
41
+ const { simAws, accountRegionScope, background, stackName, template, cdkOutContext, bindings, caller, exports, } = properties;
42
42
  this.background = background;
43
43
  this.stackName = stackName;
44
44
  this.stackOutputs = new SimCfnStackOutputs({ stackName, exports });
@@ -60,6 +60,7 @@ export class SimCfnStack {
60
60
  stackName,
61
61
  cdkOutContext,
62
62
  bindings,
63
+ caller,
63
64
  });
64
65
  this.lifecycle = new SimCfnStackDeploymentLifecycle({
65
66
  background,
@@ -128,10 +129,9 @@ export class SimCfnStack {
128
129
  });
129
130
  updater.assertHasChanges();
130
131
  // Only once the update is going ahead, so a refused update leaves the Stack
131
- // reading the cloud assembly it was deployed from.
132
- if (properties.cdkOutContext !== undefined) {
133
- this.operations.useCdkOutContext(properties.cdkOutContext);
134
- }
132
+ // reading the cloud assembly it was deployed from and running as whoever
133
+ // deployed it.
134
+ this.operations.useUpdate(properties);
135
135
  this.cfnTemplate = template;
136
136
  this.template = template.template;
137
137
  await this.updating.update(async () => {
@@ -1,4 +1,5 @@
1
1
  import type { SimAws } from "../../aws/sim-aws.js";
2
+ import type { SimAwsCaller } from "../../aws/caller/sim-aws-caller.js";
2
3
  import type { Brand } from "../../../util/brand.type.js";
3
4
  import type { BackgroundScheduler } from "../../../util/background/background.js";
4
5
  import type { SimAwsAccountRegionScope } from "../../aws/sim-aws-account-region-scope.js";
@@ -16,6 +17,11 @@ export interface SimCfnStackUpdateProperties {
16
17
  * describes the assembly the previous template came from.
17
18
  */
18
19
  readonly cdkOutContext?: SimCdkOutContext | undefined;
20
+ /**
21
+ * The principal to apply the new template as, for an update that names one.
22
+ * The Stack goes on using it, as it does the cloud assembly.
23
+ */
24
+ readonly caller?: SimAwsCaller | undefined;
19
25
  }
20
26
  export interface SimCloudFormationStackProperties {
21
27
  readonly simAws: SimAws;
@@ -25,6 +31,12 @@ export interface SimCloudFormationStackProperties {
25
31
  readonly template: SimCfnTemplate;
26
32
  readonly cdkOutContext?: SimCdkOutContext | undefined;
27
33
  readonly bindings?: readonly SimCfnBinding[] | undefined;
34
+ /**
35
+ * The principal this Stack's Resources are created, updated and deleted as.
36
+ * An omitted caller is the Account root, as it is everywhere else in the
37
+ * simulation.
38
+ */
39
+ readonly caller?: SimAwsCaller | undefined;
28
40
  /**
29
41
  * The export names published in the Account and Region this Stack deploys
30
42
  * into. This Stack publishes its own Outputs here and reads the ones its
@@ -1,8 +1,10 @@
1
1
  import type { SimAws } from "../../../aws/sim-aws.js";
2
+ import type { SimAwsCaller } from "../../../aws/caller/sim-aws-caller.js";
2
3
  import type { SimCfnResource } from "../../resource/sim-cfn-resource.js";
3
4
  interface SimCfnStackResourceBatchDeleterProperties {
4
5
  readonly simAws: SimAws;
5
6
  readonly resources: ReadonlyMap<string, SimCfnResource>;
7
+ readonly caller?: SimAwsCaller | undefined;
6
8
  }
7
9
  /**
8
10
  * Deletes one batch of Stack Resources nothing still depends on.
@@ -17,6 +19,7 @@ interface SimCfnStackResourceBatchDeleterProperties {
17
19
  export declare class SimCfnStackResourceBatchDeleter {
18
20
  private readonly simAws;
19
21
  private readonly resources;
22
+ private readonly caller;
20
23
  constructor(properties: SimCfnStackResourceBatchDeleterProperties);
21
24
  /**
22
25
  * Delete the supplied Resources concurrently.