@kensio/yulin 1.20.17 → 1.21.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (662) hide show
  1. package/README.md +1 -0
  2. package/dist/sdk/router/resolve-sim-sdk-command-router.js +4 -0
  3. package/dist/service/athena/engine/sim-athena-comparison-shims.d.ts +13 -0
  4. package/dist/service/athena/engine/sim-athena-comparison-shims.js +68 -0
  5. package/dist/service/athena/engine/sim-athena-shims.js +2 -0
  6. package/dist/service/aws/factory/sim-aws-account-region-service-builder.js +3 -0
  7. package/dist/service/aws/factory/sim-aws-lambda-collaborators.d.ts +2 -0
  8. package/dist/service/aws/factory/sim-aws-lambda-collaborators.js +3 -0
  9. package/dist/service/aws/factory/sim-aws-logs-collaborators.d.ts +7 -0
  10. package/dist/service/aws/factory/sim-aws-logs-collaborators.js +10 -0
  11. package/dist/service/aws/factory/sim-aws-self-contained-service-builder.d.ts +3 -0
  12. package/dist/service/aws/factory/sim-aws-self-contained-service-builder.js +5 -0
  13. package/dist/service/aws/factory/sim-aws-service-factory.d.ts +3 -0
  14. package/dist/service/aws/factory/sim-aws-service-factory.js +4 -0
  15. package/dist/service/aws/sim-aws-account-region-scope.d.ts +3 -0
  16. package/dist/service/aws/sim-aws-account-region-scope.js +4 -0
  17. package/dist/service/aws/sim-aws-account.d.ts +3 -0
  18. package/dist/service/aws/sim-aws-account.js +4 -0
  19. package/dist/service/aws/sim-aws-region.d.ts +3 -0
  20. package/dist/service/aws/sim-aws-region.js +4 -0
  21. package/dist/service/aws/sim-aws-service-accessors.d.ts +3 -0
  22. package/dist/service/aws/sim-aws-service-accessors.js +4 -0
  23. package/dist/service/backup/cfn/sim-backup-cfn-plan-creator.d.ts +6 -0
  24. package/dist/service/backup/cfn/sim-backup-cfn-plan-creator.js +12 -0
  25. package/dist/service/backup/cfn/sim-backup-cfn-resource-deleter.d.ts +12 -0
  26. package/dist/service/backup/cfn/sim-backup-cfn-resource-deleter.js +31 -0
  27. package/dist/service/backup/cfn/sim-backup-cfn-resource-factory.d.ts +15 -0
  28. package/dist/service/backup/cfn/sim-backup-cfn-resource-factory.js +38 -0
  29. package/dist/service/backup/cfn/sim-backup-cfn-selection-creator.d.ts +6 -0
  30. package/dist/service/backup/cfn/sim-backup-cfn-selection-creator.js +17 -0
  31. package/dist/service/backup/cfn/sim-backup-cfn-vault-creator.d.ts +6 -0
  32. package/dist/service/backup/cfn/sim-backup-cfn-vault-creator.js +29 -0
  33. package/dist/service/backup/cfn/sim-cfn-backup-plan-properties.d.ts +11 -0
  34. package/dist/service/backup/cfn/sim-cfn-backup-plan-properties.js +37 -0
  35. package/dist/service/backup/cfn/sim-cfn-backup-properties.d.ts +12 -0
  36. package/dist/service/backup/cfn/sim-cfn-backup-properties.js +37 -0
  37. package/dist/service/backup/cfn/sim-cfn-backup-property-reader.d.ts +17 -0
  38. package/dist/service/backup/cfn/sim-cfn-backup-property-reader.js +62 -0
  39. package/dist/service/backup/cfn/sim-cfn-backup-resource-error.d.ts +7 -0
  40. package/dist/service/backup/cfn/sim-cfn-backup-resource-error.js +22 -0
  41. package/dist/service/backup/command/sim-backup-authorizer.d.ts +11 -0
  42. package/dist/service/backup/command/sim-backup-authorizer.js +24 -0
  43. package/dist/service/backup/command/sim-backup-command.types.d.ts +238 -0
  44. package/dist/service/backup/command/sim-backup-command.types.js +1 -0
  45. package/dist/service/backup/command/sim-backup-configuration-commands.d.ts +32 -0
  46. package/dist/service/backup/command/sim-backup-configuration-commands.js +138 -0
  47. package/dist/service/backup/command/sim-backup-job-commands.d.ts +23 -0
  48. package/dist/service/backup/command/sim-backup-job-commands.js +52 -0
  49. package/dist/service/backup/command/sim-backup-recovery-point-commands.d.ts +18 -0
  50. package/dist/service/backup/command/sim-backup-recovery-point-commands.js +38 -0
  51. package/dist/service/backup/command/sim-backup-request-options.d.ts +4 -0
  52. package/dist/service/backup/command/sim-backup-request-options.js +1 -0
  53. package/dist/service/backup/command/sim-backup-required-string.d.ts +2 -0
  54. package/dist/service/backup/command/sim-backup-required-string.js +8 -0
  55. package/dist/service/backup/error/sim-backup.error.d.ts +38 -0
  56. package/dist/service/backup/error/sim-backup.error.js +50 -0
  57. package/dist/service/backup/index.d.ts +9 -0
  58. package/dist/service/backup/index.js +7 -0
  59. package/dist/service/backup/job/sim-backup-job-input.d.ts +11 -0
  60. package/dist/service/backup/job/sim-backup-job-input.js +1 -0
  61. package/dist/service/backup/job/sim-backup-job-page.d.ts +22 -0
  62. package/dist/service/backup/job/sim-backup-job-page.js +54 -0
  63. package/dist/service/backup/job/sim-backup-job.d.ts +25 -0
  64. package/dist/service/backup/job/sim-backup-job.factory.d.ts +10 -0
  65. package/dist/service/backup/job/sim-backup-job.factory.js +24 -0
  66. package/dist/service/backup/job/sim-backup-job.js +54 -0
  67. package/dist/service/backup/job/sim-backup-jobs.d.ts +18 -0
  68. package/dist/service/backup/job/sim-backup-jobs.js +33 -0
  69. package/dist/service/backup/plan/sim-backup-plan-schedules.d.ts +21 -0
  70. package/dist/service/backup/plan/sim-backup-plan-schedules.js +66 -0
  71. package/dist/service/backup/plan/sim-backup-plan.d.ts +22 -0
  72. package/dist/service/backup/plan/sim-backup-plan.js +37 -0
  73. package/dist/service/backup/plan/sim-backup-rule.d.ts +9 -0
  74. package/dist/service/backup/plan/sim-backup-rule.js +71 -0
  75. package/dist/service/backup/recovery-point/sim-backup-recovery-point.d.ts +28 -0
  76. package/dist/service/backup/recovery-point/sim-backup-recovery-point.factory.d.ts +9 -0
  77. package/dist/service/backup/recovery-point/sim-backup-recovery-point.factory.js +23 -0
  78. package/dist/service/backup/recovery-point/sim-backup-recovery-point.js +62 -0
  79. package/dist/service/backup/sdk/sim-backup-sdk-command-router.d.ts +9 -0
  80. package/dist/service/backup/sdk/sim-backup-sdk-command-router.js +37 -0
  81. package/dist/service/backup/selection/sim-backup-selection.d.ts +22 -0
  82. package/dist/service/backup/selection/sim-backup-selection.js +43 -0
  83. package/dist/service/backup/sim-backup-arn.d.ts +7 -0
  84. package/dist/service/backup/sim-backup-arn.js +12 -0
  85. package/dist/service/backup/sim-backup-properties.d.ts +8 -0
  86. package/dist/service/backup/sim-backup-properties.js +1 -0
  87. package/dist/service/backup/sim-backup-resource-resolver.d.ts +24 -0
  88. package/dist/service/backup/sim-backup-resource-resolver.js +44 -0
  89. package/dist/service/backup/sim-backup-store.d.ts +29 -0
  90. package/dist/service/backup/sim-backup-store.js +80 -0
  91. package/dist/service/backup/sim-backup.d.ts +48 -0
  92. package/dist/service/backup/sim-backup.js +139 -0
  93. package/dist/service/backup/vault/sim-backup-vault-description.d.ts +12 -0
  94. package/dist/service/backup/vault/sim-backup-vault-description.js +15 -0
  95. package/dist/service/backup/vault/sim-backup-vault-lock-configuration.d.ts +5 -0
  96. package/dist/service/backup/vault/sim-backup-vault-lock-configuration.js +31 -0
  97. package/dist/service/backup/vault/sim-backup-vault-lock.d.ts +15 -0
  98. package/dist/service/backup/vault/sim-backup-vault-lock.js +23 -0
  99. package/dist/service/backup/vault/sim-backup-vault-recovery-points.d.ts +12 -0
  100. package/dist/service/backup/vault/sim-backup-vault-recovery-points.js +30 -0
  101. package/dist/service/backup/vault/sim-backup-vault-retention.d.ts +4 -0
  102. package/dist/service/backup/vault/sim-backup-vault-retention.js +20 -0
  103. package/dist/service/backup/vault/sim-backup-vault.d.ts +33 -0
  104. package/dist/service/backup/vault/sim-backup-vault.js +49 -0
  105. package/dist/service/cloudformation/resource/cfn/backup/sim-backup-cfn-value-adapter.d.ts +3 -0
  106. package/dist/service/cloudformation/resource/cfn/backup/sim-backup-cfn-value-adapter.js +66 -0
  107. package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-cfn-value-adapter.js +8 -0
  108. package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-orp-cfn.d.ts +24 -0
  109. package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-orp-cfn.js +31 -0
  110. package/dist/service/cloudformation/resource/cfn/logs/sim-logs-cfn-value-adapter.js +6 -0
  111. package/dist/service/cloudformation/resource/cfn/logs/sim-logs-metric-filter-cfn.d.ts +23 -0
  112. package/dist/service/cloudformation/resource/cfn/logs/sim-logs-metric-filter-cfn.js +22 -0
  113. package/dist/service/cloudformation/resource/cfn/sim-cfn-service-value-adapters.js +2 -0
  114. package/dist/service/cloudformation/resource/ignore/sim-cfn-skipped-properties.d.ts +49 -0
  115. package/dist/service/cloudformation/resource/ignore/sim-cfn-skipped-properties.js +61 -0
  116. package/dist/service/cloudformation/resource/ignore/sim-cfn-skipped-property.type.d.ts +51 -0
  117. package/dist/service/cloudformation/resource/ignore/sim-cfn-skipped-property.type.js +1 -0
  118. package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-factories.js +4 -0
  119. package/dist/service/cloudfront/behaviour/sim-cloud-front-behavior.d.ts +12 -1
  120. package/dist/service/cloudfront/cache/sim-cf-accept-encoding.d.ts +11 -0
  121. package/dist/service/cloudfront/cache/sim-cf-accept-encoding.js +27 -0
  122. package/dist/service/cloudfront/cache/sim-cf-cache-control.d.ts +28 -0
  123. package/dist/service/cloudfront/cache/sim-cf-cache-control.js +49 -0
  124. package/dist/service/cloudfront/cache/sim-cf-cache-entry-key-path.d.ts +11 -0
  125. package/dist/service/cloudfront/cache/sim-cf-cache-entry-key-path.js +22 -0
  126. package/dist/service/cloudfront/cache/sim-cf-cache-entry-key.d.ts +32 -0
  127. package/dist/service/cloudfront/cache/sim-cf-cache-entry-key.js +112 -0
  128. package/dist/service/cloudfront/cache/sim-cf-cache-status.d.ts +27 -0
  129. package/dist/service/cloudfront/cache/sim-cf-cache-status.js +53 -0
  130. package/dist/service/cloudfront/cache/sim-cf-cache-ttl.d.ts +28 -0
  131. package/dist/service/cloudfront/cache/sim-cf-cache-ttl.js +50 -0
  132. package/dist/service/cloudfront/cache/sim-cf-cacheable-request.d.ts +35 -0
  133. package/dist/service/cloudfront/cache/sim-cf-cacheable-request.js +32 -0
  134. package/dist/service/cloudfront/cache/sim-cf-distribution-cache.d.ts +57 -0
  135. package/dist/service/cloudfront/cache/sim-cf-distribution-cache.js +115 -0
  136. package/dist/service/cloudfront/cache/sim-cf-edge.d.ts +37 -0
  137. package/dist/service/cloudfront/cache/sim-cf-edge.js +34 -0
  138. package/dist/service/cloudfront/cache/sim-cf-error-cache-ttl.d.ts +36 -0
  139. package/dist/service/cloudfront/cache/sim-cf-error-cache-ttl.js +28 -0
  140. package/dist/service/cloudfront/cache/sim-cf-http-date.d.ts +15 -0
  141. package/dist/service/cloudfront/cache/sim-cf-http-date.js +40 -0
  142. package/dist/service/cloudfront/cache-policy/sim-cf-cache-key.d.ts +63 -0
  143. package/dist/service/cloudfront/cache-policy/sim-cf-cache-key.js +70 -0
  144. package/dist/service/cloudfront/cache-policy/sim-cf-cache-policy.d.ts +13 -3
  145. package/dist/service/cloudfront/cache-policy/sim-cf-cache-policy.js +31 -3
  146. package/dist/service/cloudfront/cache-policy/sim-cf-managed-cache-policies.d.ts +8 -3
  147. package/dist/service/cloudfront/cache-policy/sim-cf-managed-cache-policies.js +96 -12
  148. package/dist/service/cloudfront/cff/sim-cff-search-distribution.fixture.js +4 -0
  149. package/dist/service/cloudfront/cfn/cache-policy/sim-cfn-cf-cache-policy-config.d.ts +9 -8
  150. package/dist/service/cloudfront/cfn/cache-policy/sim-cfn-cf-cache-policy-config.js +40 -11
  151. package/dist/service/cloudfront/cfn/cache-policy/sim-cfn-cf-cache-policy-key.d.ts +10 -0
  152. package/dist/service/cloudfront/cfn/cache-policy/sim-cfn-cf-cache-policy-key.js +50 -0
  153. package/dist/service/cloudfront/cfn/cache-policy/sim-cfn-cf-cache-policy-section.d.ts +28 -0
  154. package/dist/service/cloudfront/cfn/cache-policy/sim-cfn-cf-cache-policy-section.js +29 -0
  155. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-behavior-policy-kinds.d.ts +16 -0
  156. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-behavior-policy-kinds.js +23 -0
  157. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-behavior-policies.d.ts +3 -2
  158. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-behavior-policies.js +3 -2
  159. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-creator.d.ts +6 -6
  160. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-creator.js +6 -6
  161. package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-policy-drops.js +8 -23
  162. package/dist/service/cloudfront/cfn/origin-request-policy/sim-cfn-cf-orp-config.d.ts +28 -0
  163. package/dist/service/cloudfront/cfn/origin-request-policy/sim-cfn-cf-orp-config.js +46 -0
  164. package/dist/service/cloudfront/cfn/origin-request-policy/sim-cfn-cf-orp-creator.d.ts +24 -0
  165. package/dist/service/cloudfront/cfn/origin-request-policy/sim-cfn-cf-orp-creator.js +32 -0
  166. package/dist/service/cloudfront/cfn/origin-request-policy/sim-cfn-cf-orp-forwarding.d.ts +10 -0
  167. package/dist/service/cloudfront/cfn/origin-request-policy/sim-cfn-cf-orp-forwarding.js +51 -0
  168. package/dist/service/cloudfront/cfn/policy/sim-cfn-cf-policy-section.d.ts +22 -0
  169. package/dist/service/cloudfront/cfn/policy/sim-cfn-cf-policy-section.js +54 -0
  170. package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.d.ts +1 -0
  171. package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.js +12 -0
  172. package/dist/service/cloudfront/command/create-distribution/create-distribution.command.d.ts +1 -0
  173. package/dist/service/cloudfront/command/create-distribution/create-distribution.handler.d.ts +2 -0
  174. package/dist/service/cloudfront/command/invalidation/sim-cf-create-invalidation.d.ts +28 -0
  175. package/dist/service/cloudfront/command/invalidation/sim-cf-create-invalidation.js +59 -0
  176. package/dist/service/cloudfront/command/invalidation/sim-cf-get-invalidation.d.ts +19 -0
  177. package/dist/service/cloudfront/command/invalidation/sim-cf-get-invalidation.js +32 -0
  178. package/dist/service/cloudfront/command/invalidation/sim-cf-invalidation-access.d.ts +36 -0
  179. package/dist/service/cloudfront/command/invalidation/sim-cf-invalidation-access.js +45 -0
  180. package/dist/service/cloudfront/command/invalidation/sim-cf-invalidation-command.types.d.ts +80 -0
  181. package/dist/service/cloudfront/command/invalidation/sim-cf-invalidation-command.types.js +1 -0
  182. package/dist/service/cloudfront/command/invalidation/sim-cf-invalidation-commands.d.ts +39 -0
  183. package/dist/service/cloudfront/command/invalidation/sim-cf-invalidation-commands.js +35 -0
  184. package/dist/service/cloudfront/command/invalidation/sim-cf-list-invalidations.d.ts +23 -0
  185. package/dist/service/cloudfront/command/invalidation/sim-cf-list-invalidations.js +39 -0
  186. package/dist/service/cloudfront/command/update-distribution/update-distribution.handler.d.ts +2 -0
  187. package/dist/service/cloudfront/controller/content/sim-cf-content-stage.d.ts +51 -0
  188. package/dist/service/cloudfront/controller/content/sim-cf-content-stage.js +65 -0
  189. package/dist/service/cloudfront/controller/dependency/sim-cf-controller-dependency.d.ts +2 -3
  190. package/dist/service/cloudfront/controller/dependency/sim-cf-controller-dependency.js +4 -4
  191. package/dist/service/cloudfront/controller/error/sim-cf-custom-error-responder.d.ts +4 -0
  192. package/dist/service/cloudfront/controller/error/sim-cf-custom-error-responder.js +12 -8
  193. package/dist/service/cloudfront/controller/origin/sim-cf-origin-stage.d.ts +2 -2
  194. package/dist/service/cloudfront/controller/origin/sim-cf-origin-stage.js +2 -2
  195. package/dist/service/cloudfront/controller/sim-cloudfront-request-pipeline.d.ts +6 -6
  196. package/dist/service/cloudfront/controller/sim-cloudfront-request-pipeline.js +35 -20
  197. package/dist/service/cloudfront/custom-error/sim-cloudfront-custom-error-response.d.ts +23 -5
  198. package/dist/service/cloudfront/custom-error/sim-cloudfront-custom-error-response.js +8 -0
  199. package/dist/service/cloudfront/distribution/configurator/sim-cf-behavior-origin-request-policy.d.ts +18 -0
  200. package/dist/service/cloudfront/distribution/configurator/sim-cf-behavior-origin-request-policy.js +30 -0
  201. package/dist/service/cloudfront/distribution/configurator/sim-cf-behavior-policies.d.ts +7 -5
  202. package/dist/service/cloudfront/distribution/configurator/sim-cf-behavior-policies.js +8 -5
  203. package/dist/service/cloudfront/distribution/configurator/sim-cf-behavior-properties.js +4 -1
  204. package/dist/service/cloudfront/distribution/configurator/sim-cf-distribution-configurator.factory.d.ts +2 -0
  205. package/dist/service/cloudfront/distribution/configurator/sim-cf-distribution-configurator.factory.js +6 -2
  206. package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-custom-error-configurator.d.ts +13 -3
  207. package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-custom-error-configurator.js +27 -6
  208. package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-origin-configurator.d.ts +3 -1
  209. package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-origin-configurator.js +4 -1
  210. package/dist/service/cloudfront/distribution/sim-cf-distribution-configuration-state.d.ts +5 -3
  211. package/dist/service/cloudfront/distribution/sim-cf-distribution-reconfigurer.d.ts +2 -0
  212. package/dist/service/cloudfront/distribution/sim-cf-distribution-view.js +1 -1
  213. package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.d.ts +25 -2
  214. package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.js +24 -0
  215. package/dist/service/cloudfront/error/sim-cf-invalidation.error.d.ts +22 -0
  216. package/dist/service/cloudfront/error/sim-cf-invalidation.error.js +26 -0
  217. package/dist/service/cloudfront/error/sim-cf-origin-request-policy.error.d.ts +22 -0
  218. package/dist/service/cloudfront/error/sim-cf-origin-request-policy.error.js +26 -0
  219. package/dist/service/cloudfront/index.d.ts +2 -0
  220. package/dist/service/cloudfront/index.js +1 -0
  221. package/dist/service/cloudfront/invalidation/sim-cf-invalidation-path.d.ts +22 -0
  222. package/dist/service/cloudfront/invalidation/sim-cf-invalidation-path.js +32 -0
  223. package/dist/service/cloudfront/invalidation/sim-cf-invalidation-view.d.ts +43 -0
  224. package/dist/service/cloudfront/invalidation/sim-cf-invalidation-view.js +33 -0
  225. package/dist/service/cloudfront/invalidation/sim-cf-invalidation.d.ts +55 -0
  226. package/dist/service/cloudfront/invalidation/sim-cf-invalidation.js +56 -0
  227. package/dist/service/cloudfront/invalidation/sim-cf-invalidations.d.ts +41 -0
  228. package/dist/service/cloudfront/invalidation/sim-cf-invalidations.js +58 -0
  229. package/dist/service/cloudfront/invalidation/sim-cf-repeated-invalidation.d.ts +15 -0
  230. package/dist/service/cloudfront/invalidation/sim-cf-repeated-invalidation.js +23 -0
  231. package/dist/service/cloudfront/origin/custom/sim-cf-custom-origin-forwarding.d.ts +19 -0
  232. package/dist/service/cloudfront/origin/custom/sim-cf-custom-origin-forwarding.js +116 -0
  233. package/dist/service/cloudfront/origin/custom/sim-cf-custom-origin-request.d.ts +15 -5
  234. package/dist/service/cloudfront/origin/custom/sim-cf-custom-origin-request.js +13 -8
  235. package/dist/service/cloudfront/origin/custom/sim-cf-custom-origin-signer.js +8 -5
  236. package/dist/service/cloudfront/origin/custom/sim-cloudfront-custom-origin.d.ts +13 -0
  237. package/dist/service/cloudfront/origin/custom/sim-cloudfront-custom-origin.js +8 -0
  238. package/dist/service/cloudfront/origin-request-policy/sim-cf-behavior-forwarded.d.ts +24 -0
  239. package/dist/service/cloudfront/origin-request-policy/sim-cf-behavior-forwarded.js +21 -0
  240. package/dist/service/cloudfront/origin-request-policy/sim-cf-forwarded-to-origin.d.ts +57 -0
  241. package/dist/service/cloudfront/origin-request-policy/sim-cf-forwarded-to-origin.js +129 -0
  242. package/dist/service/cloudfront/origin-request-policy/sim-cf-managed-origin-request-policies.d.ts +30 -0
  243. package/dist/service/cloudfront/origin-request-policy/sim-cf-managed-origin-request-policies.js +121 -0
  244. package/dist/service/cloudfront/origin-request-policy/sim-cf-origin-request-forwarding.d.ts +56 -0
  245. package/dist/service/cloudfront/origin-request-policy/sim-cf-origin-request-forwarding.js +67 -0
  246. package/dist/service/cloudfront/origin-request-policy/sim-cf-origin-request-policy-registry.d.ts +38 -0
  247. package/dist/service/cloudfront/origin-request-policy/sim-cf-origin-request-policy-registry.js +51 -0
  248. package/dist/service/cloudfront/origin-request-policy/sim-cf-origin-request-policy.d.ts +32 -0
  249. package/dist/service/cloudfront/origin-request-policy/sim-cf-origin-request-policy.js +30 -0
  250. package/dist/service/cloudfront/registry/sim-cloud-front-registry.d.ts +25 -0
  251. package/dist/service/cloudfront/registry/sim-cloud-front-registry.js +23 -0
  252. package/dist/service/cloudfront/sdk/sim-cloudfront-sdk-command-router.js +12 -0
  253. package/dist/service/cloudfront/sim-cloudfront-caching.d.ts +31 -0
  254. package/dist/service/cloudfront/sim-cloudfront-caching.js +38 -0
  255. package/dist/service/cloudfront/sim-cloudfront-commands.d.ts +12 -0
  256. package/dist/service/cloudfront/sim-cloudfront-commands.js +12 -0
  257. package/dist/service/cloudfront/sim-cloudfront-distributions.d.ts +21 -0
  258. package/dist/service/cloudfront/sim-cloudfront-distributions.js +23 -0
  259. package/dist/service/cloudfront/sim-cloudfront-origin-access-controls.d.ts +30 -0
  260. package/dist/service/cloudfront/sim-cloudfront-origin-access-controls.js +35 -0
  261. package/dist/service/cloudfront/sim-cloudfront-policies.d.ts +22 -5
  262. package/dist/service/cloudfront/sim-cloudfront-policies.js +27 -5
  263. package/dist/service/cloudfront/sim-cloudfront.d.ts +15 -31
  264. package/dist/service/cloudfront/sim-cloudfront.js +23 -41
  265. package/dist/service/cloudwatch/index.d.ts +1 -0
  266. package/dist/service/cloudwatch/index.js +1 -0
  267. package/dist/service/cloudwatch/sim-cloudwatch-commands.d.ts +2 -0
  268. package/dist/service/cloudwatch/sim-cloudwatch-commands.js +6 -0
  269. package/dist/service/cloudwatch/sim-cloudwatch.d.ts +9 -0
  270. package/dist/service/cloudwatch/sim-cloudwatch.js +10 -0
  271. package/dist/service/cloudwatch/write/sim-cloudwatch-service-writer.d.ts +58 -0
  272. package/dist/service/cloudwatch/write/sim-cloudwatch-service-writer.js +53 -0
  273. package/dist/service/cognito/command/auth/sim-cognito-admin-respond-to-challenge.d.ts +3 -0
  274. package/dist/service/cognito/command/auth/sim-cognito-admin-respond-to-challenge.js +8 -2
  275. package/dist/service/cognito/command/auth/sim-cognito-auth-commands.d.ts +3 -0
  276. package/dist/service/cognito/command/auth/sim-cognito-auth-commands.js +4 -0
  277. package/dist/service/cognito/command/auth/sim-cognito-auth-flow-runner.d.ts +11 -1
  278. package/dist/service/cognito/command/auth/sim-cognito-auth-flow-runner.js +13 -1
  279. package/dist/service/cognito/command/auth/sim-cognito-auth-resolver.d.ts +3 -0
  280. package/dist/service/cognito/command/auth/sim-cognito-auth-resolver.js +16 -4
  281. package/dist/service/cognito/command/auth/sim-cognito-get-tokens-from-refresh-token.d.ts +7 -0
  282. package/dist/service/cognito/command/auth/sim-cognito-get-tokens-from-refresh-token.js +11 -1
  283. package/dist/service/cognito/command/auth/sim-cognito-respond-to-challenge.d.ts +3 -0
  284. package/dist/service/cognito/command/auth/sim-cognito-respond-to-challenge.js +8 -2
  285. package/dist/service/cognito/command/hosted/hosted-auth.command.d.ts +19 -0
  286. package/dist/service/cognito/command/hosted/sim-cognito-authorize-endpoint.d.ts +1 -1
  287. package/dist/service/cognito/command/hosted/sim-cognito-authorize-endpoint.js +3 -2
  288. package/dist/service/cognito/command/hosted/sim-cognito-hosted-commands.d.ts +8 -0
  289. package/dist/service/cognito/command/hosted/sim-cognito-hosted-commands.js +11 -3
  290. package/dist/service/cognito/command/hosted/sim-cognito-hosted-passkey-sign-in.d.ts +11 -1
  291. package/dist/service/cognito/command/hosted/sim-cognito-hosted-passkey-sign-in.js +13 -2
  292. package/dist/service/cognito/command/hosted/sim-cognito-hosted-password-sign-in.d.ts +11 -1
  293. package/dist/service/cognito/command/hosted/sim-cognito-hosted-password-sign-in.js +11 -1
  294. package/dist/service/cognito/command/hosted/sim-cognito-hosted-sign-in.d.ts +7 -1
  295. package/dist/service/cognito/command/hosted/sim-cognito-hosted-sign-in.js +18 -7
  296. package/dist/service/cognito/command/hosted/sim-cognito-hosted-signed-in.d.ts +20 -3
  297. package/dist/service/cognito/command/hosted/sim-cognito-hosted-signed-in.js +19 -3
  298. package/dist/service/cognito/command/hosted/sim-cognito-token-endpoint.d.ts +2 -0
  299. package/dist/service/cognito/command/hosted/sim-cognito-token-grants.d.ts +8 -0
  300. package/dist/service/cognito/command/hosted/sim-cognito-token-grants.js +13 -4
  301. package/dist/service/cognito/command/sim-cognito-commands.d.ts +5 -0
  302. package/dist/service/cognito/command/sim-cognito-commands.js +22 -2
  303. package/dist/service/cognito/command/user/sim-cognito-confirm-sign-up-commands.d.ts +74 -0
  304. package/dist/service/cognito/command/user/sim-cognito-confirm-sign-up-commands.js +110 -0
  305. package/dist/service/cognito/command/user/sim-cognito-sign-up-commands.d.ts +5 -49
  306. package/dist/service/cognito/command/user/sim-cognito-sign-up-commands.js +7 -87
  307. package/dist/service/cognito/command/user/sim-cognito-user-commands.d.ts +4 -0
  308. package/dist/service/cognito/command/user/sim-cognito-user-commands.js +38 -29
  309. package/dist/service/cognito/error/sim-cognito-managed-login.error.d.ts +23 -0
  310. package/dist/service/cognito/error/sim-cognito-managed-login.error.js +36 -0
  311. package/dist/service/cognito/error/sim-cognito-throttle.error.d.ts +13 -0
  312. package/dist/service/cognito/error/sim-cognito-throttle.error.js +15 -0
  313. package/dist/service/cognito/index.d.ts +2 -0
  314. package/dist/service/cognito/index.js +2 -0
  315. package/dist/service/cognito/metric/sim-cognito-counted-request.d.ts +50 -0
  316. package/dist/service/cognito/metric/sim-cognito-counted-request.js +51 -0
  317. package/dist/service/cognito/metric/sim-cognito-metrics.d.ts +22 -0
  318. package/dist/service/cognito/metric/sim-cognito-metrics.js +26 -0
  319. package/dist/service/cognito/metric/sim-cognito-pool-metrics.d.ts +40 -0
  320. package/dist/service/cognito/metric/sim-cognito-pool-metrics.js +51 -0
  321. package/dist/service/cognito/metric/sim-cognito-throttled-request.d.ts +11 -0
  322. package/dist/service/cognito/metric/sim-cognito-throttled-request.js +15 -0
  323. package/dist/service/cognito/serve/page/sim-cognito-managed-login.d.ts +1 -0
  324. package/dist/service/cognito/serve/page/sim-cognito-managed-login.js +6 -1
  325. package/dist/service/cognito/serve/page/sim-cognito-page-markup.d.ts +4 -1
  326. package/dist/service/cognito/serve/page/sim-cognito-page-markup.js +6 -2
  327. package/dist/service/cognito/serve/page/sim-cognito-provider-page.d.ts +35 -0
  328. package/dist/service/cognito/serve/page/sim-cognito-provider-page.js +50 -0
  329. package/dist/service/cognito/sim-cognito-identity-provider.d.ts +6 -0
  330. package/dist/service/cognito/sim-cognito-identity-provider.js +1 -0
  331. package/dist/service/cognito/sim-cognito-user-directory.js +3 -3
  332. package/dist/service/cognito/user-pool/auth/sim-cognito-authorization-code.d.ts +9 -0
  333. package/dist/service/cognito/user-pool/auth/sim-cognito-authorization-code.js +2 -0
  334. package/dist/service/cognito/user-pool/auth/sim-cognito-pool-auth.d.ts +8 -0
  335. package/dist/service/cognito/user-pool/auth/sim-cognito-pool-auth.js +8 -0
  336. package/dist/service/cognito/user-pool/auth/sim-cognito-request-throttle.d.ts +36 -0
  337. package/dist/service/cognito/user-pool/auth/sim-cognito-request-throttle.js +45 -0
  338. package/dist/service/cognito/user-pool/idp/sim-cognito-federated-sign-in.d.ts +42 -9
  339. package/dist/service/cognito/user-pool/idp/sim-cognito-federated-sign-in.js +56 -27
  340. package/dist/service/cognito/user-pool/idp/sim-cognito-federated-triggers.d.ts +52 -0
  341. package/dist/service/cognito/user-pool/idp/sim-cognito-federated-triggers.js +49 -0
  342. package/dist/service/cognito/user-pool/idp/sim-cognito-presented-external-user.d.ts +48 -0
  343. package/dist/service/cognito/user-pool/idp/sim-cognito-presented-external-user.js +94 -0
  344. package/dist/service/cognito/user-pool/idp/sim-cognito-same-federated-identity.d.ts +13 -0
  345. package/dist/service/cognito/user-pool/idp/sim-cognito-same-federated-identity.js +19 -0
  346. package/dist/service/cognito/user-pool/idp/sim-cognito-user-pool-identity-provider.d.ts +7 -0
  347. package/dist/service/cognito/user-pool/idp/sim-cognito-user-pool-identity-provider.js +9 -0
  348. package/dist/service/cognito/user-pool/trigger/sim-cognito-trigger-name.d.ts +3 -2
  349. package/dist/service/cognito/user-pool/trigger/sim-cognito-trigger-name.js +3 -2
  350. package/dist/service/cognito/user-pool/trigger/sim-cognito-trigger-occasion.d.ts +18 -1
  351. package/dist/service/cognito/user-pool/trigger/sim-cognito-trigger-occasion.js +35 -18
  352. package/dist/service/iam/authorize/allow/sim-iam-allow-requirement.d.ts +6 -5
  353. package/dist/service/iam/authorize/allow/sim-iam-allow-requirement.js +6 -5
  354. package/dist/service/iam/authorize/context/sim-iam-auth-z-input.d.ts +6 -4
  355. package/dist/service/kms/command/sim-kms-request-options.d.ts +9 -5
  356. package/dist/service/lambda/command/create-function/create-function.handler.d.ts +3 -0
  357. package/dist/service/lambda/command/create-function/create-function.handler.js +4 -1
  358. package/dist/service/lambda/command/function/sim-lambda-function-commands.d.ts +2 -0
  359. package/dist/service/lambda/event-source/poll/kinesis/sim-lambda-kinesis-stream-delivery.js +7 -11
  360. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-stream-delivery.js +7 -8
  361. package/dist/service/lambda/event-source/poll/sim-lambda-stream-iterator-age.d.ts +11 -0
  362. package/dist/service/lambda/event-source/poll/sim-lambda-stream-iterator-age.js +31 -0
  363. package/dist/service/lambda/event-source/poll/sim-lambda-stream-sequence-numbers.d.ts +10 -0
  364. package/dist/service/lambda/event-source/poll/sim-lambda-stream-sequence-numbers.js +12 -0
  365. package/dist/service/lambda/function/sim-lambda-function.d.ts +3 -0
  366. package/dist/service/lambda/function/sim-lambda-function.js +6 -2
  367. package/dist/service/lambda/function/sim-lambda-function.type.d.ts +7 -0
  368. package/dist/service/lambda/metric/sim-lambda-function-metrics.d.ts +47 -0
  369. package/dist/service/lambda/metric/sim-lambda-function-metrics.js +83 -0
  370. package/dist/service/lambda/metric/sim-lambda-iterator-age.d.ts +29 -0
  371. package/dist/service/lambda/metric/sim-lambda-iterator-age.js +41 -0
  372. package/dist/service/lambda/metric/sim-lambda-metrics.d.ts +12 -0
  373. package/dist/service/lambda/metric/sim-lambda-metrics.js +13 -0
  374. package/dist/service/lambda/sim-lambda-commands.d.ts +2 -0
  375. package/dist/service/lambda/sim-lambda-commands.js +2 -1
  376. package/dist/service/logs/cfn/metric/sim-cfn-metric-dimension-values.d.ts +9 -0
  377. package/dist/service/logs/cfn/metric/sim-cfn-metric-dimension-values.js +25 -0
  378. package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-creator.d.ts +30 -0
  379. package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-creator.js +52 -0
  380. package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-properties.d.ts +40 -0
  381. package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-properties.js +66 -0
  382. package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-property-rules.d.ts +19 -0
  383. package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-property-rules.js +40 -0
  384. package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-unsimulated-properties.d.ts +5 -0
  385. package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-unsimulated-properties.js +23 -0
  386. package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-value.d.ts +25 -0
  387. package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-value.js +58 -0
  388. package/dist/service/logs/cfn/metric/sim-cfn-metric-transformation-values.d.ts +6 -0
  389. package/dist/service/logs/cfn/metric/sim-cfn-metric-transformation-values.js +19 -0
  390. package/dist/service/logs/cfn/sim-logs-cfn-resource-deleter.d.ts +2 -0
  391. package/dist/service/logs/cfn/sim-logs-cfn-resource-deleter.js +4 -0
  392. package/dist/service/logs/cfn/sim-logs-cfn-resource-factory.d.ts +5 -3
  393. package/dist/service/logs/cfn/sim-logs-cfn-resource-factory.js +12 -3
  394. package/dist/service/logs/command/delivery/sim-logs-delivery-source-commands.d.ts +6 -4
  395. package/dist/service/logs/command/delivery/sim-logs-delivery-source-commands.js +13 -4
  396. package/dist/service/logs/command/event/sim-logs-put-log-events.d.ts +3 -0
  397. package/dist/service/logs/command/event/sim-logs-put-log-events.js +3 -0
  398. package/dist/service/logs/command/group/sim-logs-log-group-commands.js +3 -3
  399. package/dist/service/logs/command/metric/metric-filter.command.d.ts +79 -0
  400. package/dist/service/logs/command/metric/metric-filter.command.js +1 -0
  401. package/dist/service/logs/command/metric/sim-logs-metric-filter-commands.d.ts +48 -0
  402. package/dist/service/logs/command/metric/sim-logs-metric-filter-commands.js +95 -0
  403. package/dist/service/logs/command/metric/sim-logs-metric-filter-input.d.ts +11 -0
  404. package/dist/service/logs/command/metric/sim-logs-metric-filter-input.js +79 -0
  405. package/dist/service/logs/command/sim-logs-command.types.d.ts +1 -0
  406. package/dist/service/logs/delivery/cloudfront/sim-logs-vended-log-delivery.d.ts +23 -0
  407. package/dist/service/logs/delivery/cloudfront/sim-logs-vended-log-delivery.js +28 -0
  408. package/dist/service/logs/group/sim-logs-log-group.d.ts +6 -0
  409. package/dist/service/logs/group/sim-logs-log-group.js +6 -0
  410. package/dist/service/logs/index.d.ts +6 -0
  411. package/dist/service/logs/index.js +4 -0
  412. package/dist/service/logs/metric/cloudwatch/sim-aws-logs-metric-filter-metrics.d.ts +40 -0
  413. package/dist/service/logs/metric/cloudwatch/sim-aws-logs-metric-filter-metrics.js +78 -0
  414. package/dist/service/logs/metric/emf/sim-logs-embedded-metric-datapoints.d.ts +25 -0
  415. package/dist/service/logs/metric/emf/sim-logs-embedded-metric-datapoints.js +81 -0
  416. package/dist/service/logs/metric/emf/sim-logs-embedded-metric-document.d.ts +57 -0
  417. package/dist/service/logs/metric/emf/sim-logs-embedded-metric-document.js +85 -0
  418. package/dist/service/logs/metric/emf/sim-logs-embedded-metric-json.d.ts +24 -0
  419. package/dist/service/logs/metric/emf/sim-logs-embedded-metric-json.js +41 -0
  420. package/dist/service/logs/metric/emf/sim-logs-embedded-metric-values.d.ts +20 -0
  421. package/dist/service/logs/metric/emf/sim-logs-embedded-metric-values.js +39 -0
  422. package/dist/service/logs/metric/sim-logs-metric-datapoint.d.ts +25 -0
  423. package/dist/service/logs/metric/sim-logs-metric-datapoint.js +1 -0
  424. package/dist/service/logs/metric/sim-logs-metric-fan-out.d.ts +62 -0
  425. package/dist/service/logs/metric/sim-logs-metric-fan-out.js +116 -0
  426. package/dist/service/logs/metric/sim-logs-metric-filter-selection.d.ts +17 -0
  427. package/dist/service/logs/metric/sim-logs-metric-filter-selection.js +17 -0
  428. package/dist/service/logs/metric/sim-logs-metric-filter-store.d.ts +35 -0
  429. package/dist/service/logs/metric/sim-logs-metric-filter-store.js +47 -0
  430. package/dist/service/logs/metric/sim-logs-metric-filter.d.ts +49 -0
  431. package/dist/service/logs/metric/sim-logs-metric-filter.js +95 -0
  432. package/dist/service/logs/metric/sim-logs-metric-publication-failure.d.ts +31 -0
  433. package/dist/service/logs/metric/sim-logs-metric-publication-failure.js +12 -0
  434. package/dist/service/logs/metric/sim-logs-metric-publications.d.ts +11 -0
  435. package/dist/service/logs/metric/sim-logs-metric-publications.js +1 -0
  436. package/dist/service/logs/metric/sim-logs-metric-transformation.d.ts +45 -0
  437. package/dist/service/logs/metric/sim-logs-metric-transformation.js +127 -0
  438. package/dist/service/logs/sdk/sim-logs-sdk-command-router.js +12 -0
  439. package/dist/service/logs/sim-logs-commands.d.ts +12 -0
  440. package/dist/service/logs/sim-logs-commands.js +17 -0
  441. package/dist/service/logs/sim-logs-metric-operations.d.ts +31 -0
  442. package/dist/service/logs/sim-logs-metric-operations.js +37 -0
  443. package/dist/service/logs/sim-logs.d.ts +4 -3
  444. package/dist/service/logs/sim-logs.js +4 -3
  445. package/dist/service/logs/write/sim-logs-service-writer.d.ts +3 -0
  446. package/dist/service/logs/write/sim-logs-service-writer.js +5 -1
  447. package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-configuration.d.ts +32 -0
  448. package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-configuration.js +31 -1
  449. package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-expiry.d.ts +13 -2
  450. package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-expiry.js +18 -1
  451. package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-sweep.d.ts +17 -1
  452. package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-sweep.js +27 -3
  453. package/dist/service/s3/bucket/lifecycle/sim-s3-noncurrent-sweep.d.ts +45 -0
  454. package/dist/service/s3/bucket/lifecycle/sim-s3-noncurrent-sweep.js +90 -0
  455. package/dist/service/s3/bucket/lock/sim-s3-bucket-object-lock.d.ts +42 -0
  456. package/dist/service/s3/bucket/lock/sim-s3-bucket-object-lock.js +59 -0
  457. package/dist/service/s3/bucket/lock/sim-s3-default-retention.d.ts +8 -0
  458. package/dist/service/s3/bucket/lock/sim-s3-default-retention.js +15 -0
  459. package/dist/service/s3/bucket/lock/sim-s3-object-lock-configuration.d.ts +49 -0
  460. package/dist/service/s3/bucket/lock/sim-s3-object-lock-configuration.js +102 -0
  461. package/dist/service/s3/bucket/lock/sim-s3-object-lock-output.d.ts +14 -0
  462. package/dist/service/s3/bucket/lock/sim-s3-object-lock-output.js +1 -0
  463. package/dist/service/s3/bucket/lock/sim-s3-object-lock.d.ts +62 -0
  464. package/dist/service/s3/bucket/lock/sim-s3-object-lock.js +100 -0
  465. package/dist/service/s3/bucket/lock/sim-s3-object-retention.d.ts +55 -0
  466. package/dist/service/s3/bucket/lock/sim-s3-object-retention.js +82 -0
  467. package/dist/service/s3/bucket/notification/sim-s3-notification-event.d.ts +1 -1
  468. package/dist/service/s3/bucket/notification/sim-s3-notification-event.js +9 -1
  469. package/dist/service/s3/bucket/notification/sim-s3-unsimulated-notification-events.d.ts +1 -1
  470. package/dist/service/s3/bucket/notification/sim-s3-unsimulated-notification-events.js +1 -2
  471. package/dist/service/s3/bucket/sim-s3-bucket-objects.d.ts +114 -0
  472. package/dist/service/s3/bucket/sim-s3-bucket-objects.js +148 -0
  473. package/dist/service/s3/bucket/sim-s3-bucket.d.ts +30 -29
  474. package/dist/service/s3/bucket/sim-s3-bucket.js +42 -45
  475. package/dist/service/s3/bucket/sim-s3-object-deletion.d.ts +30 -0
  476. package/dist/service/s3/bucket/sim-s3-object-deletion.js +29 -0
  477. package/dist/service/s3/bucket/versioning/sim-s3-bucket-versioning.d.ts +61 -0
  478. package/dist/service/s3/bucket/versioning/sim-s3-bucket-versioning.js +65 -0
  479. package/dist/service/s3/bucket/versioning/sim-s3-bucket-versions.d.ts +97 -0
  480. package/dist/service/s3/bucket/versioning/sim-s3-bucket-versions.js +176 -0
  481. package/dist/service/s3/bucket/versioning/sim-s3-compare-keys.d.ts +10 -0
  482. package/dist/service/s3/bucket/versioning/sim-s3-compare-keys.js +16 -0
  483. package/dist/service/s3/bucket/versioning/sim-s3-object-version.d.ts +85 -0
  484. package/dist/service/s3/bucket/versioning/sim-s3-object-version.js +101 -0
  485. package/dist/service/s3/bucket/versioning/sim-s3-object-versions.d.ts +52 -0
  486. package/dist/service/s3/bucket/versioning/sim-s3-object-versions.js +91 -0
  487. package/dist/service/s3/bucket/versioning/sim-s3-version-page.d.ts +32 -0
  488. package/dist/service/s3/bucket/versioning/sim-s3-version-page.js +45 -0
  489. package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-configuration.d.ts +0 -5
  490. package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-configuration.js +3 -14
  491. package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-fields.d.ts +18 -1
  492. package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-fields.js +34 -1
  493. package/dist/service/s3/cfn/bucket/lock/sim-cfn-s3-bucket-object-lock-configuration.d.ts +37 -0
  494. package/dist/service/s3/cfn/bucket/lock/sim-cfn-s3-bucket-object-lock-configuration.js +78 -0
  495. package/dist/service/s3/cfn/bucket/replication/sim-cfn-s3-bucket-replication-rules.d.ts +20 -0
  496. package/dist/service/s3/cfn/bucket/replication/sim-cfn-s3-bucket-replication-rules.js +107 -0
  497. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-configurator.d.ts +14 -7
  498. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-configurator.js +29 -37
  499. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-declared-configurations.d.ts +62 -0
  500. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-declared-configurations.js +89 -0
  501. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-names.d.ts +9 -5
  502. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-names.js +16 -16
  503. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-rules.d.ts +9 -5
  504. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-rules.js +17 -6
  505. package/dist/service/s3/cfn/bucket/versioning/sim-cfn-s3-bucket-versioning-configuration.d.ts +19 -0
  506. package/dist/service/s3/cfn/bucket/versioning/sim-cfn-s3-bucket-versioning-configuration.js +28 -0
  507. package/dist/service/s3/command/authorize/sim-s3-authorize-action.d.ts +24 -0
  508. package/dist/service/s3/command/authorize/sim-s3-authorize-action.js +30 -0
  509. package/dist/service/s3/command/complete-multipart-upload/complete-multipart-upload.command.d.ts +2 -0
  510. package/dist/service/s3/command/complete-multipart-upload/complete-multipart-upload.handler.js +3 -1
  511. package/dist/service/s3/command/copy-object/copy-object.command.d.ts +3 -1
  512. package/dist/service/s3/command/copy-object/copy-object.handler.js +3 -1
  513. package/dist/service/s3/command/delete-object/delete-object-version-removal.d.ts +50 -0
  514. package/dist/service/s3/command/delete-object/delete-object-version-removal.js +52 -0
  515. package/dist/service/s3/command/delete-object/delete-object.command.d.ts +19 -2
  516. package/dist/service/s3/command/delete-object/delete-object.handler.d.ts +7 -1
  517. package/dist/service/s3/command/delete-object/delete-object.handler.js +28 -16
  518. package/dist/service/s3/command/delete-object/sim-s3-notify-deleted.d.ts +24 -0
  519. package/dist/service/s3/command/delete-object/sim-s3-notify-deleted.js +32 -0
  520. package/dist/service/s3/command/delete-objects/delete-object-attempt.d.ts +6 -2
  521. package/dist/service/s3/command/delete-objects/delete-object-attempt.js +6 -2
  522. package/dist/service/s3/command/delete-objects/delete-objects-key-removal.js +10 -9
  523. package/dist/service/s3/command/delete-objects/delete-objects-outcome.js +9 -1
  524. package/dist/service/s3/command/delete-objects/delete-objects.command.d.ts +6 -0
  525. package/dist/service/s3/command/get-bucket-versioning/get-bucket-versioning.command.d.ts +23 -0
  526. package/dist/service/s3/command/get-bucket-versioning/get-bucket-versioning.command.js +1 -0
  527. package/dist/service/s3/command/get-bucket-versioning/get-bucket-versioning.handler.d.ts +31 -0
  528. package/dist/service/s3/command/get-bucket-versioning/get-bucket-versioning.handler.js +40 -0
  529. package/dist/service/s3/command/get-object/get-object-loader.d.ts +3 -2
  530. package/dist/service/s3/command/get-object/get-object-loader.js +9 -4
  531. package/dist/service/s3/command/get-object/get-object.command.d.ts +9 -1
  532. package/dist/service/s3/command/get-object/get-object.handler.js +1 -1
  533. package/dist/service/s3/command/get-object-lock-configuration/get-object-lock-configuration.command.d.ts +25 -0
  534. package/dist/service/s3/command/get-object-lock-configuration/get-object-lock-configuration.command.js +1 -0
  535. package/dist/service/s3/command/get-object-lock-configuration/get-object-lock-configuration.handler.d.ts +31 -0
  536. package/dist/service/s3/command/get-object-lock-configuration/get-object-lock-configuration.handler.js +41 -0
  537. package/dist/service/s3/command/head-object/head-object-loader.d.ts +1 -1
  538. package/dist/service/s3/command/head-object/head-object-loader.js +7 -3
  539. package/dist/service/s3/command/head-object/head-object.command.d.ts +9 -1
  540. package/dist/service/s3/command/head-object/head-object.handler.js +1 -1
  541. package/dist/service/s3/command/list-object-versions/list-object-versions-listing.d.ts +31 -0
  542. package/dist/service/s3/command/list-object-versions/list-object-versions-listing.js +55 -0
  543. package/dist/service/s3/command/list-object-versions/list-object-versions-summaries.d.ts +17 -0
  544. package/dist/service/s3/command/list-object-versions/list-object-versions-summaries.js +34 -0
  545. package/dist/service/s3/command/list-object-versions/list-object-versions.command.d.ts +59 -0
  546. package/dist/service/s3/command/list-object-versions/list-object-versions.command.js +1 -0
  547. package/dist/service/s3/command/list-object-versions/list-object-versions.handler.d.ts +34 -0
  548. package/dist/service/s3/command/list-object-versions/list-object-versions.handler.js +62 -0
  549. package/dist/service/s3/command/object/sim-s3-read-object-version.d.ts +34 -0
  550. package/dist/service/s3/command/object/sim-s3-read-object-version.js +52 -0
  551. package/dist/service/s3/command/object-lock/sim-s3-locked-version.d.ts +11 -0
  552. package/dist/service/s3/command/object-lock/sim-s3-locked-version.js +27 -0
  553. package/dist/service/s3/command/object-lock/sim-s3-object-lock-authorizer.d.ts +42 -0
  554. package/dist/service/s3/command/object-lock/sim-s3-object-lock-authorizer.js +66 -0
  555. package/dist/service/s3/command/object-lock/sim-s3-object-lock-commands.d.ts +30 -0
  556. package/dist/service/s3/command/object-lock/sim-s3-object-lock-commands.js +41 -0
  557. package/dist/service/s3/command/put-bucket-versioning/put-bucket-versioning.command.d.ts +21 -0
  558. package/dist/service/s3/command/put-bucket-versioning/put-bucket-versioning.command.js +1 -0
  559. package/dist/service/s3/command/put-bucket-versioning/put-bucket-versioning.handler.d.ts +31 -0
  560. package/dist/service/s3/command/put-bucket-versioning/put-bucket-versioning.handler.js +44 -0
  561. package/dist/service/s3/command/put-object/put-object.command.d.ts +3 -0
  562. package/dist/service/s3/command/put-object/put-object.handler.js +10 -10
  563. package/dist/service/s3/command/put-object-legal-hold/put-object-legal-hold.command.d.ts +24 -0
  564. package/dist/service/s3/command/put-object-legal-hold/put-object-legal-hold.command.js +1 -0
  565. package/dist/service/s3/command/put-object-legal-hold/put-object-legal-hold.handler.d.ts +32 -0
  566. package/dist/service/s3/command/put-object-legal-hold/put-object-legal-hold.handler.js +41 -0
  567. package/dist/service/s3/command/put-object-lock-configuration/put-object-lock-configuration.command.d.ts +21 -0
  568. package/dist/service/s3/command/put-object-lock-configuration/put-object-lock-configuration.command.js +1 -0
  569. package/dist/service/s3/command/put-object-lock-configuration/put-object-lock-configuration.handler.d.ts +32 -0
  570. package/dist/service/s3/command/put-object-lock-configuration/put-object-lock-configuration.handler.js +47 -0
  571. package/dist/service/s3/command/put-object-retention/put-object-retention.command.d.ts +29 -0
  572. package/dist/service/s3/command/put-object-retention/put-object-retention.command.js +1 -0
  573. package/dist/service/s3/command/put-object-retention/put-object-retention.handler.d.ts +31 -0
  574. package/dist/service/s3/command/put-object-retention/put-object-retention.handler.js +42 -0
  575. package/dist/service/s3/command/sim-s3-command.types.d.ts +7 -0
  576. package/dist/service/s3/command/versioning/sim-s3-versioning-authorizer.d.ts +35 -0
  577. package/dist/service/s3/command/versioning/sim-s3-versioning-authorizer.js +57 -0
  578. package/dist/service/s3/command/versioning/sim-s3-versioning-commands.d.ts +26 -0
  579. package/dist/service/s3/command/versioning/sim-s3-versioning-commands.js +34 -0
  580. package/dist/service/s3/command/versioning/sim-s3-versioning-configuration-validation.d.ts +13 -0
  581. package/dist/service/s3/command/versioning/sim-s3-versioning-configuration-validation.js +28 -0
  582. package/dist/service/s3/error/sim-s3-object-lock.error.d.ts +22 -0
  583. package/dist/service/s3/error/sim-s3-object-lock.error.js +26 -0
  584. package/dist/service/s3/error/sim-s3.error.d.ts +22 -0
  585. package/dist/service/s3/error/sim-s3.error.js +26 -0
  586. package/dist/service/s3/notification/event/sim-s3-event-records.js +3 -0
  587. package/dist/service/s3/notification/event/sim-s3-event.type.d.ts +5 -3
  588. package/dist/service/s3/notification/event/sim-s3-object-event-builder.d.ts +15 -0
  589. package/dist/service/s3/notification/event/sim-s3-object-event-builder.js +4 -1
  590. package/dist/service/s3/notification/event/sim-s3-object-event.d.ts +6 -0
  591. package/dist/service/s3/notification/event/sim-s3-object-event.js +2 -0
  592. package/dist/service/s3/notification/sim-s3-object-notifier.d.ts +1 -1
  593. package/dist/service/s3/notification/sim-s3-object-notifier.js +2 -2
  594. package/dist/service/s3/sdk/sim-s3-sdk-bucket-routes.d.ts +10 -0
  595. package/dist/service/s3/sdk/sim-s3-sdk-bucket-routes.js +84 -0
  596. package/dist/service/s3/sdk/sim-s3-sdk-command-router.js +6 -132
  597. package/dist/service/s3/sdk/sim-s3-sdk-object-lock-routes.d.ts +10 -0
  598. package/dist/service/s3/sdk/sim-s3-sdk-object-lock-routes.js +28 -0
  599. package/dist/service/s3/sdk/sim-s3-sdk-object-routes.d.ts +7 -0
  600. package/dist/service/s3/sdk/sim-s3-sdk-object-routes.js +80 -0
  601. package/dist/service/s3/sim-s3-commands.d.ts +4 -0
  602. package/dist/service/s3/sim-s3-commands.js +6 -0
  603. package/dist/service/s3/sim-s3-operations.d.ts +5 -5
  604. package/dist/service/s3/sim-s3-operations.js +5 -6
  605. package/dist/service/s3/sim-s3-version-operations.d.ts +32 -0
  606. package/dist/service/s3/sim-s3-version-operations.js +45 -0
  607. package/dist/service/scheduler/command/schedule/schedule.command.d.ts +9 -2
  608. package/dist/service/scheduler/command/schedule/sim-scheduler-described-schedule.js +2 -0
  609. package/dist/service/scheduler/command/schedule/sim-scheduler-unsimulated-target.js +0 -6
  610. package/dist/service/scheduler/command/sim-scheduler-command.types.d.ts +1 -1
  611. package/dist/service/scheduler/command/sim-scheduler-commands.js +1 -0
  612. package/dist/service/scheduler/delivery/sim-aws-scheduler-dead-letters.d.ts +17 -0
  613. package/dist/service/scheduler/delivery/sim-aws-scheduler-dead-letters.js +29 -0
  614. package/dist/service/scheduler/delivery/sim-aws-scheduler-delivery-targets.d.ts +6 -1
  615. package/dist/service/scheduler/delivery/sim-aws-scheduler-delivery-targets.js +9 -0
  616. package/dist/service/scheduler/delivery/sim-scheduler-dead-letter-queue.d.ts +18 -0
  617. package/dist/service/scheduler/delivery/sim-scheduler-dead-letter-queue.js +62 -0
  618. package/dist/service/scheduler/delivery/sim-scheduler-delivery-attempt.d.ts +29 -0
  619. package/dist/service/scheduler/delivery/sim-scheduler-delivery-attempt.js +81 -0
  620. package/dist/service/scheduler/delivery/sim-scheduler-delivery-function.js +9 -5
  621. package/dist/service/scheduler/delivery/sim-scheduler-delivery.d.ts +11 -0
  622. package/dist/service/scheduler/delivery/sim-scheduler-no-delivery-targets.d.ts +5 -1
  623. package/dist/service/scheduler/delivery/sim-scheduler-no-delivery-targets.js +8 -0
  624. package/dist/service/scheduler/delivery/sim-scheduler-target-delivery.d.ts +4 -1
  625. package/dist/service/scheduler/delivery/sim-scheduler-target-delivery.js +20 -15
  626. package/dist/service/scheduler/index.d.ts +1 -1
  627. package/dist/service/scheduler/target/sim-scheduler-dead-letter-config.d.ts +15 -0
  628. package/dist/service/scheduler/target/sim-scheduler-dead-letter-config.js +24 -0
  629. package/dist/service/scheduler/target/sim-scheduler-retry-policy.d.ts +20 -0
  630. package/dist/service/scheduler/target/sim-scheduler-retry-policy.js +37 -0
  631. package/dist/service/scheduler/target/sim-scheduler-target.d.ts +6 -0
  632. package/dist/service/scheduler/target/sim-scheduler-target.js +12 -0
  633. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-encryption-rules.d.ts +15 -0
  634. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-encryption-rules.js +33 -0
  635. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-properties.d.ts +16 -0
  636. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-properties.js +33 -1
  637. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-names.d.ts +12 -6
  638. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-names.js +18 -13
  639. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-rules.d.ts +1 -0
  640. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-rules.js +9 -1
  641. package/dist/service/ssm/parameter/sim-ssm-kms-crypto.d.ts +7 -10
  642. package/dist/service/ssm/parameter/sim-ssm-parameter-kms.d.ts +10 -11
  643. package/dist/service/ssm/parameter/sim-ssm-parameter-kms.js +11 -16
  644. package/dist/terraform/map/sim-tf-map-sqs-redrive.d.ts +4 -3
  645. package/dist/terraform/map/sim-tf-map-sqs-redrive.js +4 -3
  646. package/docs/README.md +1 -0
  647. package/docs/services/athena/README.md +7 -1
  648. package/docs/services/backup/README.md +553 -0
  649. package/docs/services/cloudformation/README.md +18 -7
  650. package/docs/services/cloudfront/README.md +903 -25
  651. package/docs/services/cloudwatch/README.md +159 -3
  652. package/docs/services/cognito/README.md +370 -7
  653. package/docs/services/ecs/README.md +5 -2
  654. package/docs/services/kms/README.md +9 -5
  655. package/docs/services/lambda/README.md +28 -0
  656. package/docs/services/logs/README.md +290 -3
  657. package/docs/services/s3/README.md +463 -20
  658. package/docs/services/scheduler/README.md +48 -9
  659. package/docs/services/sqs/README.md +47 -10
  660. package/docs/services/ssm/README.md +26 -33
  661. package/llms.txt +1 -0
  662. package/package.json +7 -2
@@ -31,6 +31,17 @@ export interface SimSchedulerDeliveryTargets {
31
31
  * Invoke a schedule's target, refusing if its execution role may not.
32
32
  */
33
33
  deliver(request: SimSchedulerDeliveryRequest): Promise<void>;
34
+ /**
35
+ * Send an invocation Scheduler has stopped trying to its dead-letter queue.
36
+ */
37
+ deadLetter(request: SimSchedulerDeadLetterRequest): Promise<void>;
38
+ }
39
+ export type SimSchedulerExhaustedRetryCondition = "MaximumEventAgeInSeconds" | "MaximumRetryAttempts";
40
+ export interface SimSchedulerDeadLetterRequest {
41
+ readonly delivery: SimSchedulerDeliveryRequest;
42
+ readonly error: unknown;
43
+ readonly retryAttempts: number;
44
+ readonly exhaustedCondition?: SimSchedulerExhaustedRetryCondition | undefined;
34
45
  }
35
46
  /**
36
47
  * What a target receives, as the JSON text a queue or a topic carries.
@@ -1,4 +1,4 @@
1
- import type { SimSchedulerDeliveryRequest, SimSchedulerDeliveryTargets } from "./sim-scheduler-delivery.js";
1
+ import type { SimSchedulerDeadLetterRequest, SimSchedulerDeliveryRequest, SimSchedulerDeliveryTargets } from "./sim-scheduler-delivery.js";
2
2
  /**
3
3
  * The targets of a simulated Scheduler built on its own, which are none.
4
4
  *
@@ -13,4 +13,8 @@ export declare class SimSchedulerNoDeliveryTargets implements SimSchedulerDelive
13
13
  * Refuse the invocation, saying why there was nowhere to make it.
14
14
  */
15
15
  deliver(request: SimSchedulerDeliveryRequest): Promise<void>;
16
+ /**
17
+ * Refuse a dead-letter delivery for the same reason as a target delivery.
18
+ */
19
+ deadLetter(request: SimSchedulerDeadLetterRequest): Promise<void>;
16
20
  }
@@ -17,4 +17,12 @@ export class SimSchedulerNoDeliveryTargets {
17
17
  `${request.schedule.target.arn.value} was not reached. Reach ` +
18
18
  `Scheduler through SimAws for a schedule that invokes.`));
19
19
  }
20
+ /**
21
+ * Refuse a dead-letter delivery for the same reason as a target delivery.
22
+ */
23
+ deadLetter(request) {
24
+ return Promise.reject(new SimSchedulerTargetNotFound(`This simulated Scheduler has no queues to dead-letter ` +
25
+ `${request.delivery.schedule.arn} to. Reach Scheduler through ` +
26
+ `SimAws for a schedule that invokes.`));
27
+ }
20
28
  }
@@ -1,10 +1,12 @@
1
1
  import type { SimSchedulerDeliveryRequest, SimSchedulerDeliveryTargets } from "./sim-scheduler-delivery.js";
2
+ import type { BackgroundScheduler } from "../../../util/background/background.js";
2
3
  import { type SimSchedulerDeliveryFailure } from "./sim-scheduler-delivery-failures.js";
3
4
  interface SimSchedulerTargetDeliveryProperties {
4
5
  readonly endpoints: SimSchedulerDeliveryTargets;
6
+ readonly background: BackgroundScheduler;
5
7
  }
6
8
  /**
7
- * Makes one invocation and keeps whatever went wrong.
9
+ * Runs one scheduled invocation through its attempts and keeps final failures.
8
10
  *
9
11
  * A failure is recorded rather than thrown, because these run as background
10
12
  * tasks and one left rejected would fail an unrelated
@@ -13,6 +15,7 @@ interface SimSchedulerTargetDeliveryProperties {
13
15
  */
14
16
  export declare class SimSchedulerTargetDelivery {
15
17
  private readonly endpoints;
18
+ private readonly background;
16
19
  private readonly failures;
17
20
  constructor(properties: SimSchedulerTargetDeliveryProperties);
18
21
  /**
@@ -1,6 +1,7 @@
1
+ import { SimSchedulerDeliveryAttempt } from "./sim-scheduler-delivery-attempt.js";
1
2
  import { SimSchedulerDeliveryFailures, } from "./sim-scheduler-delivery-failures.js";
2
3
  /**
3
- * Makes one invocation and keeps whatever went wrong.
4
+ * Runs one scheduled invocation through its attempts and keeps final failures.
4
5
  *
5
6
  * A failure is recorded rather than thrown, because these run as background
6
7
  * tasks and one left rejected would fail an unrelated
@@ -9,9 +10,11 @@ import { SimSchedulerDeliveryFailures, } from "./sim-scheduler-delivery-failures
9
10
  */
10
11
  export class SimSchedulerTargetDelivery {
11
12
  endpoints;
13
+ background;
12
14
  failures = new SimSchedulerDeliveryFailures();
13
15
  constructor(properties) {
14
16
  this.endpoints = properties.endpoints;
17
+ this.background = properties.background;
15
18
  }
16
19
  /**
17
20
  * Every invocation that could not be made.
@@ -23,19 +26,21 @@ export class SimSchedulerTargetDelivery {
23
26
  * Invoke one schedule's target.
24
27
  */
25
28
  async deliver(request) {
26
- try {
27
- await this.endpoints.deliver(request);
28
- }
29
- catch (error) {
30
- const schedule = request.schedule;
31
- this.failures.record({
32
- scheduleName: schedule.name.value,
33
- scheduleArn: schedule.arn,
34
- targetArn: schedule.target.arn.value,
35
- roleArn: schedule.target.roleArn,
36
- at: request.at,
37
- error,
38
- });
39
- }
29
+ await new SimSchedulerDeliveryAttempt({
30
+ request,
31
+ endpoints: this.endpoints,
32
+ background: this.background,
33
+ record: (error) => {
34
+ const schedule = request.schedule;
35
+ this.failures.record({
36
+ scheduleName: schedule.name.value,
37
+ scheduleArn: schedule.arn,
38
+ targetArn: schedule.target.arn.value,
39
+ roleArn: schedule.target.roleArn,
40
+ at: request.at,
41
+ error,
42
+ });
43
+ },
44
+ }).start();
40
45
  }
41
46
  }
@@ -9,7 +9,7 @@ export { SimSchedulerScheduleState } from "./schedule/sim-scheduler-schedule-sta
9
9
  export { schedulerScheduleDialect } from "./schedule/sim-scheduler-schedule-expression.js";
10
10
  export { SimSchedulerTarget } from "./target/sim-scheduler-target.js";
11
11
  export { simSchedulerTargetServices, SimSchedulerTargetArn, type SimSchedulerTargetService, } from "./target/sim-scheduler-target-arn.js";
12
- export { simSchedulerServicePrincipal, type SimSchedulerDeliveryTargets, } from "./delivery/sim-scheduler-delivery.js";
12
+ export { simSchedulerServicePrincipal, type SimSchedulerDeadLetterRequest, type SimSchedulerDeliveryRequest, type SimSchedulerDeliveryTargets, type SimSchedulerExhaustedRetryCondition, } from "./delivery/sim-scheduler-delivery.js";
13
13
  export { SimSchedulerDeliveryFailure, type SimSchedulerDeliveryFailureJson, } from "./delivery/sim-scheduler-delivery-failures.js";
14
14
  export { SimSchedulerDeliveryNotPermitted, SimSchedulerTargetNotFound, } from "./error/sim-scheduler-delivery.error.js";
15
15
  export { SimSchedulerAccessDeniedException, SimSchedulerConflictException, SimSchedulerError, SimSchedulerResourceNotFoundException, SimSchedulerUnsimulatedInputException, SimSchedulerValidationException, } from "./error/sim-scheduler.error.js";
@@ -0,0 +1,15 @@
1
+ export interface SimSchedulerDeadLetterConfigInput {
2
+ readonly Arn?: string | undefined;
3
+ }
4
+ /**
5
+ * The standard SQS queue a target sends undelivered input to.
6
+ */
7
+ export declare class SimSchedulerDeadLetterConfig {
8
+ readonly declared: SimSchedulerDeadLetterConfigInput;
9
+ readonly arn: string | undefined;
10
+ private constructor();
11
+ /**
12
+ * Read a dead-letter configuration, refusing anything but a standard queue.
13
+ */
14
+ static of(config: SimSchedulerDeadLetterConfigInput): SimSchedulerDeadLetterConfig;
15
+ }
@@ -0,0 +1,24 @@
1
+ import { parseSqsQueueArn } from "../../sqs/queue/sim-sqs-queue-arn.js";
2
+ import { SimSchedulerValidationException } from "../error/sim-scheduler.error.js";
3
+ /**
4
+ * The standard SQS queue a target sends undelivered input to.
5
+ */
6
+ export class SimSchedulerDeadLetterConfig {
7
+ declared;
8
+ arn;
9
+ constructor(config) {
10
+ this.declared = { ...config };
11
+ this.arn = config.Arn;
12
+ }
13
+ /**
14
+ * Read a dead-letter configuration, refusing anything but a standard queue.
15
+ */
16
+ static of(config) {
17
+ const { Arn: arn } = config;
18
+ if (arn !== undefined && parseSqsQueueArn(arn) === undefined) {
19
+ throw new SimSchedulerValidationException(`Target DeadLetterConfig Arn ${arn} is not a standard SQS queue ARN. ` +
20
+ `One is arn:aws:sqs:<region>:<account-id>:<queue-name>.`);
21
+ }
22
+ return new this(config);
23
+ }
24
+ }
@@ -0,0 +1,20 @@
1
+ export declare const defaultSchedulerMaximumEventAgeInSeconds = 86400;
2
+ export declare const defaultSchedulerMaximumRetryAttempts = 185;
3
+ export interface SimSchedulerRetryPolicyInput {
4
+ readonly MaximumEventAgeInSeconds?: number | undefined;
5
+ readonly MaximumRetryAttempts?: number | undefined;
6
+ }
7
+ /**
8
+ * The retry limits one target declares and the effective values they produce.
9
+ */
10
+ export declare class SimSchedulerRetryPolicy {
11
+ readonly declared: SimSchedulerRetryPolicyInput;
12
+ readonly maximumEventAgeInSeconds: number;
13
+ readonly maximumRetryAttempts: number;
14
+ private constructor();
15
+ /**
16
+ * Read a retry policy, refusing values outside Scheduler's limits.
17
+ */
18
+ static of(policy: SimSchedulerRetryPolicyInput): SimSchedulerRetryPolicy;
19
+ private static requireWholeNumber;
20
+ }
@@ -0,0 +1,37 @@
1
+ import { SimSchedulerValidationException } from "../error/sim-scheduler.error.js";
2
+ export const defaultSchedulerMaximumEventAgeInSeconds = 86_400;
3
+ export const defaultSchedulerMaximumRetryAttempts = 185;
4
+ const minimumEventAgeInSeconds = 60;
5
+ /**
6
+ * The retry limits one target declares and the effective values they produce.
7
+ */
8
+ export class SimSchedulerRetryPolicy {
9
+ declared;
10
+ maximumEventAgeInSeconds;
11
+ maximumRetryAttempts;
12
+ constructor(policy) {
13
+ this.declared = { ...policy };
14
+ this.maximumEventAgeInSeconds =
15
+ policy.MaximumEventAgeInSeconds ??
16
+ defaultSchedulerMaximumEventAgeInSeconds;
17
+ this.maximumRetryAttempts =
18
+ policy.MaximumRetryAttempts ?? defaultSchedulerMaximumRetryAttempts;
19
+ }
20
+ /**
21
+ * Read a retry policy, refusing values outside Scheduler's limits.
22
+ */
23
+ static of(policy) {
24
+ this.requireWholeNumber("MaximumEventAgeInSeconds", policy.MaximumEventAgeInSeconds, minimumEventAgeInSeconds, defaultSchedulerMaximumEventAgeInSeconds);
25
+ this.requireWholeNumber("MaximumRetryAttempts", policy.MaximumRetryAttempts, 0, defaultSchedulerMaximumRetryAttempts);
26
+ return new this(policy);
27
+ }
28
+ static requireWholeNumber(name, value, minimum, maximum) {
29
+ if (value === undefined) {
30
+ return;
31
+ }
32
+ if (!Number.isSafeInteger(value) || value < minimum || value > maximum) {
33
+ throw new SimSchedulerValidationException(`Target RetryPolicy ${name} must be a whole number between ` +
34
+ `${minimum} and ${maximum}, and ${value} is not.`);
35
+ }
36
+ }
37
+ }
@@ -1,5 +1,7 @@
1
1
  import { SimEcsTargetTask } from "../../ecs/target/sim-ecs-target-task.js";
2
2
  import { SimSchedulerTargetArn } from "./sim-scheduler-target-arn.js";
3
+ import { SimSchedulerDeadLetterConfig, type SimSchedulerDeadLetterConfigInput } from "./sim-scheduler-dead-letter-config.js";
4
+ import { SimSchedulerRetryPolicy, type SimSchedulerRetryPolicyInput } from "./sim-scheduler-retry-policy.js";
3
5
  /**
4
6
  * What a target request says, of the parts a target reads.
5
7
  */
@@ -8,6 +10,8 @@ interface SimSchedulerRequestedTarget {
8
10
  readonly RoleArn?: string | undefined;
9
11
  readonly Input?: string | undefined;
10
12
  readonly EcsParameters?: unknown;
13
+ readonly DeadLetterConfig?: SimSchedulerDeadLetterConfigInput | undefined;
14
+ readonly RetryPolicy?: SimSchedulerRetryPolicyInput | undefined;
11
15
  }
12
16
  /**
13
17
  * What one schedule invokes, and who it invokes it as.
@@ -37,6 +41,8 @@ export declare class SimSchedulerTarget {
37
41
  * what the task overrides instead.
38
42
  */
39
43
  readonly task: SimEcsTargetTask | undefined;
44
+ readonly deadLetterConfig: SimSchedulerDeadLetterConfig | undefined;
45
+ readonly retryPolicy: SimSchedulerRetryPolicy | undefined;
40
46
  private constructor();
41
47
  /**
42
48
  * Read the target a request carries.
@@ -1,6 +1,8 @@
1
1
  import { SimEcsTargetTask } from "../../ecs/target/sim-ecs-target-task.js";
2
2
  import { SimSchedulerUnsimulatedInputException, SimSchedulerValidationException, } from "../error/sim-scheduler.error.js";
3
3
  import { SimSchedulerTargetArn } from "./sim-scheduler-target-arn.js";
4
+ import { SimSchedulerDeadLetterConfig, } from "./sim-scheduler-dead-letter-config.js";
5
+ import { SimSchedulerRetryPolicy, } from "./sim-scheduler-retry-policy.js";
4
6
  /**
5
7
  * The longest role ARN AWS takes, and the shape one has to be.
6
8
  */
@@ -39,11 +41,15 @@ export class SimSchedulerTarget {
39
41
  * what the task overrides instead.
40
42
  */
41
43
  task;
44
+ deadLetterConfig;
45
+ retryPolicy;
42
46
  constructor(properties) {
43
47
  this.arn = properties.arn;
44
48
  this.roleArn = properties.roleArn;
45
49
  this.input = properties.input;
46
50
  this.task = properties.task;
51
+ this.deadLetterConfig = properties.deadLetterConfig;
52
+ this.retryPolicy = properties.retryPolicy;
47
53
  }
48
54
  /**
49
55
  * Read the target a request carries.
@@ -58,6 +64,12 @@ export class SimSchedulerTarget {
58
64
  roleArn: this.roleArnIn(target.RoleArn),
59
65
  input: target.Input,
60
66
  task: this.taskIn(arn, target),
67
+ deadLetterConfig: target.DeadLetterConfig === undefined
68
+ ? undefined
69
+ : SimSchedulerDeadLetterConfig.of(target.DeadLetterConfig),
70
+ retryPolicy: target.RetryPolicy === undefined
71
+ ? undefined
72
+ : SimSchedulerRetryPolicy.of(target.RetryPolicy),
61
73
  });
62
74
  }
63
75
  /**
@@ -0,0 +1,15 @@
1
+ import type { SimCfnSkippedPropertyValue } from "../../../cloudformation/resource/ignore/sim-cfn-skipped-property.type.js";
2
+ /**
3
+ * The range real SQS accepts for `KmsDataKeyReusePeriodSeconds`.
4
+ *
5
+ * Encryption itself is not simulated. The property is recorded against the
6
+ * Resource and the queue is created without it, and no key is ever asked for.
7
+ * How long the value says to reuse one is still read, because a period outside
8
+ * this range is one real SQS answers with `InvalidAttributeValue`, and
9
+ * CloudFormation fails the stack on it at CreateQueue. A queue that deployed
10
+ * here would report a template AWS refuses as working.
11
+ *
12
+ * The bound is the one the SQS API documents, a minute at the short end and a
13
+ * day at the long one.
14
+ */
15
+ export declare function validateSimCfnSqsKmsDataKeyReusePeriod(declared: SimCfnSkippedPropertyValue): void;
@@ -0,0 +1,33 @@
1
+ const minimumReuseSeconds = 60;
2
+ const maximumReuseSeconds = 86_400;
3
+ /**
4
+ * The range real SQS accepts for `KmsDataKeyReusePeriodSeconds`.
5
+ *
6
+ * Encryption itself is not simulated. The property is recorded against the
7
+ * Resource and the queue is created without it, and no key is ever asked for.
8
+ * How long the value says to reuse one is still read, because a period outside
9
+ * this range is one real SQS answers with `InvalidAttributeValue`, and
10
+ * CloudFormation fails the stack on it at CreateQueue. A queue that deployed
11
+ * here would report a template AWS refuses as working.
12
+ *
13
+ * The bound is the one the SQS API documents, a minute at the short end and a
14
+ * day at the long one.
15
+ */
16
+ export function validateSimCfnSqsKmsDataKeyReusePeriod(declared) {
17
+ const stated = declared.value;
18
+ const seconds = typeof stated === "number" || typeof stated === "string"
19
+ ? Number(stated)
20
+ : NaN;
21
+ if (Number.isSafeInteger(seconds) &&
22
+ seconds >= minimumReuseSeconds &&
23
+ seconds <= maximumReuseSeconds) {
24
+ return;
25
+ }
26
+ declared.refuse(`KmsDataKeyReusePeriodSeconds ${stringified(stated)} is outside the ` +
27
+ `${String(minimumReuseSeconds)} to ${String(maximumReuseSeconds)} ` +
28
+ `seconds real SQS accepts`);
29
+ }
30
+ /** The value as a refusal names it, whatever shape the template gave it. */
31
+ function stringified(value) {
32
+ return typeof value === "object" ? JSON.stringify(value) : String(value);
33
+ }
@@ -30,6 +30,22 @@ export declare class SimCfnSqsQueueProperties {
30
30
  * takes them in.
31
31
  */
32
32
  attributes(): SimSqsQueueAttributeInput;
33
+ /**
34
+ * Read one property as the string the attribute of that name carries.
35
+ *
36
+ * Five of these properties are amounts and `RedrivePolicy` is a JSON
37
+ * document, so the two are read differently.
38
+ */
39
+ private attributeValue;
40
+ /**
41
+ * Read a JSON document property as the string an SQS attribute carries.
42
+ *
43
+ * CloudFormation carries the document as an object, and as a string when it
44
+ * came from a template Parameter or from a Terraform plan holding it as one.
45
+ * What the document has to say is left to SQS, which refuses a bad redrive
46
+ * policy in its own words.
47
+ */
48
+ private documentValue;
33
49
  /**
34
50
  * Read a numeric property as the string an SQS attribute carries.
35
51
  *
@@ -1,3 +1,6 @@
1
+ import { jsonStringify } from "../../../../util/type-guard/json.js";
2
+ import { isRecord } from "../../../../util/type-guard/record.js";
3
+ import { simSqsJsonQueueAttributeNames } from "../../queue/sim-sqs-queue-attribute-specs.js";
1
4
  import { SimCfnSqsQueueName } from "./sim-cfn-sqs-queue-name.js";
2
5
  import { SimCfnSqsQueuePropertyRules, sqsQueuePropertyError, } from "./sim-cfn-sqs-queue-property-rules.js";
3
6
  /**
@@ -48,7 +51,36 @@ export class SimCfnSqsQueueProperties {
48
51
  this.rules.apply();
49
52
  return Object.fromEntries(Object.entries(this.properties)
50
53
  .filter(([name]) => this.rules.isAttributeProperty(name))
51
- .map(([name, value]) => [name, this.numberValue(value, name)]));
54
+ .map(([name, value]) => [name, this.attributeValue(value, name)]));
55
+ }
56
+ /**
57
+ * Read one property as the string the attribute of that name carries.
58
+ *
59
+ * Five of these properties are amounts and `RedrivePolicy` is a JSON
60
+ * document, so the two are read differently.
61
+ */
62
+ attributeValue(value, name) {
63
+ if (simSqsJsonQueueAttributeNames.has(name)) {
64
+ return this.documentValue(value, name);
65
+ }
66
+ return this.numberValue(value, name);
67
+ }
68
+ /**
69
+ * Read a JSON document property as the string an SQS attribute carries.
70
+ *
71
+ * CloudFormation carries the document as an object, and as a string when it
72
+ * came from a template Parameter or from a Terraform plan holding it as one.
73
+ * What the document has to say is left to SQS, which refuses a bad redrive
74
+ * policy in its own words.
75
+ */
76
+ documentValue(value, name) {
77
+ if (typeof value === "string") {
78
+ return value;
79
+ }
80
+ if (isRecord(value)) {
81
+ return jsonStringify(value);
82
+ }
83
+ throw this.propertyError(`${name} must be a JSON document`);
52
84
  }
53
85
  /**
54
86
  * Read a numeric property as the string an SQS attribute carries.
@@ -1,10 +1,14 @@
1
+ import type { SimCfnSkippedPropertyRules } from "../../../cloudformation/resource/ignore/sim-cfn-skipped-property.type.js";
1
2
  import type { SimCfnTemplateValue } from "../../../cloudformation/template/value/sim-cfn-template-value.js";
2
3
  /**
3
4
  * The AWS::SQS::Queue properties carrying a queue attribute of the same name.
4
5
  *
5
6
  * CloudFormation names these exactly as the SQS API names the attributes, so
6
7
  * they are handed to CreateQueue rather than applied here. That leaves the
7
- * ranges and defaults in one place: the ones simulated SQS already validates.
8
+ * ranges and defaults in one place, the ones simulated SQS already validates.
9
+ *
10
+ * Five of them are amounts. `RedrivePolicy` is a JSON document, and
11
+ * CloudFormation carries it as an object where SQS carries it as a string.
8
12
  */
9
13
  export declare const attributePropertyNames: ReadonlySet<string>;
10
14
  /**
@@ -12,12 +16,14 @@ export declare const attributePropertyNames: ReadonlySet<string>;
12
16
  * each of them would have changed.
13
17
  *
14
18
  * The queue is created without them and each one is recorded against the
15
- * Resource. A queue deployed without its redrive policy looks like a queue with
16
- * a dead-letter queue to the template that wrote it and has none, so a test
17
- * expecting a failed message to end up somewhere needs to find out that it
18
- * never will.
19
+ * Resource. A test reads the record to find out what the queue it deployed
20
+ * behaves differently to AWS about.
21
+ *
22
+ * A property whose value real SQS answers with a 400 states what it has to
23
+ * satisfy here as well. Nothing acts on the value either way, and reading it
24
+ * this far is what keeps a template AWS refuses from deploying.
19
25
  */
20
- export declare const unsimulatedPropertyReasons: ReadonlyMap<string, string>;
26
+ export declare const unsimulatedPropertyReasons: SimCfnSkippedPropertyRules;
21
27
  /**
22
28
  * The FifoQueue values that ask for a FIFO queue. CloudFormation carries a
23
29
  * boolean property as either, depending on where the value came from.
@@ -1,15 +1,20 @@
1
+ import { validateSimCfnSqsKmsDataKeyReusePeriod } from "./sim-cfn-sqs-queue-encryption-rules.js";
1
2
  /**
2
3
  * The AWS::SQS::Queue properties carrying a queue attribute of the same name.
3
4
  *
4
5
  * CloudFormation names these exactly as the SQS API names the attributes, so
5
6
  * they are handed to CreateQueue rather than applied here. That leaves the
6
- * ranges and defaults in one place: the ones simulated SQS already validates.
7
+ * ranges and defaults in one place, the ones simulated SQS already validates.
8
+ *
9
+ * Five of them are amounts. `RedrivePolicy` is a JSON document, and
10
+ * CloudFormation carries it as an object where SQS carries it as a string.
7
11
  */
8
12
  export const attributePropertyNames = new Set([
9
13
  "DelaySeconds",
10
14
  "MaximumMessageSize",
11
15
  "MessageRetentionPeriod",
12
16
  "ReceiveMessageWaitTimeSeconds",
17
+ "RedrivePolicy",
13
18
  "VisibilityTimeout",
14
19
  ]);
15
20
  /**
@@ -17,10 +22,12 @@ export const attributePropertyNames = new Set([
17
22
  * each of them would have changed.
18
23
  *
19
24
  * The queue is created without them and each one is recorded against the
20
- * Resource. A queue deployed without its redrive policy looks like a queue with
21
- * a dead-letter queue to the template that wrote it and has none, so a test
22
- * expecting a failed message to end up somewhere needs to find out that it
23
- * never will.
25
+ * Resource. A test reads the record to find out what the queue it deployed
26
+ * behaves differently to AWS about.
27
+ *
28
+ * A property whose value real SQS answers with a 400 states what it has to
29
+ * satisfy here as well. Nothing acts on the value either way, and reading it
30
+ * this far is what keeps a template AWS refuses from deploying.
24
31
  */
25
32
  export const unsimulatedPropertyReasons = new Map([
26
33
  ["ContentBasedDeduplication", "only standard queues are simulated"],
@@ -28,18 +35,16 @@ export const unsimulatedPropertyReasons = new Map([
28
35
  ["FifoThroughputLimit", "only standard queues are simulated"],
29
36
  [
30
37
  "KmsDataKeyReusePeriodSeconds",
31
- "simulated SQS does not encrypt message bodies",
38
+ {
39
+ reason: "simulated SQS does not encrypt message bodies",
40
+ constraint: validateSimCfnSqsKmsDataKeyReusePeriod,
41
+ },
32
42
  ],
33
43
  ["KmsMasterKeyId", "simulated SQS does not encrypt message bodies"],
34
44
  [
35
45
  "RedriveAllowPolicy",
36
- "dead-letter queues are not simulated, so nothing enforces which queues " +
37
- "may name this one as theirs",
38
- ],
39
- [
40
- "RedrivePolicy",
41
- "dead-letter queues are not simulated, so a message that is received " +
42
- "past maxReceiveCount stays on this queue rather than moving",
46
+ "nothing enforces which queues may name this one as their dead-letter " +
47
+ "queue, and setting the attribute through the SQS API is refused",
43
48
  ],
44
49
  ["SqsManagedSseEnabled", "simulated SQS does not encrypt message bodies"],
45
50
  ["Tags", "no simulated service reads a queue tag"],
@@ -27,6 +27,7 @@ export declare class SimCfnSqsQueuePropertyRules {
27
27
  private readonly logicalId;
28
28
  private readonly properties;
29
29
  private readonly ignorer;
30
+ private readonly skipped;
30
31
  constructor(properties: SimCfnSqsQueuePropertyRulesProperties);
31
32
  /**
32
33
  * Whether a property carries a queue attribute of the same name.
@@ -1,3 +1,4 @@
1
+ import { SimCfnSkippedProperties } from "../../../cloudformation/resource/ignore/sim-cfn-skipped-properties.js";
1
2
  import { attributePropertyNames, fifoQueueValues, standardQueueValues, unsimulatedPropertyReasons, } from "./sim-cfn-sqs-queue-property-names.js";
2
3
  /**
3
4
  * Build the error a property of an AWS::SQS::Queue Resource is refused with.
@@ -23,10 +24,16 @@ export class SimCfnSqsQueuePropertyRules {
23
24
  logicalId;
24
25
  properties;
25
26
  ignorer;
27
+ skipped;
26
28
  constructor(properties) {
27
29
  this.logicalId = properties.logicalId;
28
30
  this.properties = properties.properties;
29
31
  this.ignorer = properties.ignorer;
32
+ this.skipped = new SimCfnSkippedProperties({
33
+ rules: unsimulatedPropertyReasons,
34
+ properties: this.properties,
35
+ error: (reason) => sqsQueuePropertyError(this.logicalId, reason),
36
+ });
30
37
  }
31
38
  /**
32
39
  * Whether a property carries a queue attribute of the same name.
@@ -39,6 +46,7 @@ export class SimCfnSqsQueuePropertyRules {
39
46
  */
40
47
  apply() {
41
48
  this.applyToFifoQueue();
49
+ this.skipped.assertConstraints();
42
50
  for (const name of Object.keys(this.properties)) {
43
51
  this.applyToProperty(name);
44
52
  }
@@ -71,7 +79,7 @@ export class SimCfnSqsQueuePropertyRules {
71
79
  throw sqsQueuePropertyError(this.logicalId, "FifoQueue must be true or false");
72
80
  }
73
81
  applyToProperty(name) {
74
- const unsimulatedReason = unsimulatedPropertyReasons.get(name);
82
+ const unsimulatedReason = this.skipped.reasonFor(name);
75
83
  if (unsimulatedReason !== undefined) {
76
84
  this.ignorer.ignoreProperty(name, `${name} is a real AWS::SQS::Queue property simulated SQS does not ` +
77
85
  `act on: ${unsimulatedReason}`);
@@ -18,6 +18,10 @@ export declare const ssmDefaultKeyAlias = "alias/aws/ssm";
18
18
  * caller.
19
19
  */
20
20
  export declare const ssmKmsViaService = "ssm";
21
+ interface SimSsmKmsOptions {
22
+ readonly caller?: SimAwsCaller | undefined;
23
+ readonly viaService?: string | undefined;
24
+ }
21
25
  /**
22
26
  * The narrow slice of simulated KMS that SecureString parameters need.
23
27
  *
@@ -32,11 +36,7 @@ export interface SimSsmKmsCrypto {
32
36
  Plaintext?: Uint8Array | undefined;
33
37
  EncryptionContext?: Readonly<Record<string, string>> | undefined;
34
38
  };
35
- }, options?: {
36
- caller?: SimAwsCaller | undefined;
37
- viaService?: string | undefined;
38
- withCallerPermissions?: boolean | undefined;
39
- }): Promise<{
39
+ }, options?: SimSsmKmsOptions): Promise<{
40
40
  CiphertextBlob?: Uint8Array | undefined;
41
41
  KeyId?: string | undefined;
42
42
  }>;
@@ -45,12 +45,9 @@ export interface SimSsmKmsCrypto {
45
45
  CiphertextBlob?: Uint8Array | undefined;
46
46
  EncryptionContext?: Readonly<Record<string, string>> | undefined;
47
47
  };
48
- }, options?: {
49
- caller?: SimAwsCaller | undefined;
50
- viaService?: string | undefined;
51
- withCallerPermissions?: boolean | undefined;
52
- }): Promise<{
48
+ }, options?: SimSsmKmsOptions): Promise<{
53
49
  Plaintext?: Uint8Array | undefined;
54
50
  KeyId?: string | undefined;
55
51
  }>;
56
52
  }
53
+ export {};
@@ -18,15 +18,15 @@ interface SimSsmParameterKmsProperties {
18
18
  * and a decrypting read needs `kms:Decrypt`, each on top of the SSM permission
19
19
  * for the parameter itself.
20
20
  *
21
- * They are also made through the service, which is what reaches the `aws/ssm`
22
- * managed key at all. That key's policy admits the Account's principals when
23
- * `kms:ViaService` names Systems Manager, and Parameter Store is what supplies
24
- * it. Reaching the key is not the same as being allowed to use it, and a
25
- * decrypting read says so with `withCallerPermissions`, because that policy
26
- * admits whoever the request came from rather than the caller behind it. A
27
- * Role holding `ssm:GetParameter` and no `kms:Decrypt` reads the ciphertext
28
- * and not the value. A write under that key asks the caller for no KMS
29
- * permission here, where AWS documents `kms:Encrypt` for one.
21
+ * They are also made through the service, and passing through it is what
22
+ * reaches the `aws/ssm` managed key at all. That key's policy allows the
23
+ * cryptographic actions to a wildcard principal under `kms:ViaService` and
24
+ * `kms:CallerAccount` conditions, and Parameter Store supplies the first of
25
+ * them. A grant of that shape delegates nothing to IAM, and it admits the
26
+ * request by itself. A Role holding `ssm:GetParameter` and nothing on KMS
27
+ * reads the decrypted value, as it does in an account. A caller in another
28
+ * Account fails the `kms:CallerAccount` condition, and a caller reaching KMS
29
+ * directly carries no `kms:ViaService` for the policy to match.
30
30
  *
31
31
  * Standard tier Parameter Store encrypts under the key directly rather than
32
32
  * through a data key, so this is one Encrypt and one Decrypt and nothing more.
@@ -39,8 +39,7 @@ export declare class SimSsmParameterKms {
39
39
  */
40
40
  encrypt(parameterArn: string, plaintext: string, keyId: string | undefined, caller: SimAwsCaller | undefined): Promise<SimSsmParameterCiphertext>;
41
41
  /**
42
- * Decrypt a parameter value, which needs the same binding it was made with,
43
- * and the caller's own permission to use the key.
42
+ * Decrypt a parameter value, which needs the same binding it was made with.
44
43
  */
45
44
  decrypt(parameterArn: string, ciphertext: string, caller: SimAwsCaller | undefined): Promise<string>;
46
45
  private contextFor;