@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
@@ -19,9 +19,14 @@ export declare const simCfManagedCachePolicyIds: {
19
19
  * The seven managed cache policies, built fresh for one simulated CloudFront.
20
20
  *
21
21
  * CloudFront owns these and every account has them, so a Behavior can name one
22
- * without a template creating anything. Each carries the ID and the name AWS
23
- * publishes for it. The cache key and the TTLs behind each one are left out,
24
- * along with those of a policy a template creates.
22
+ * without a template creating anything. Each carries the ID, the name, the
23
+ * TTLs and the cache key AWS publishes for it, so a Behavior on
24
+ * `CachingOptimized` here holds what one in an account holds.
25
+ *
26
+ * The normalized `Accept-Encoding` header AWS lists in some of these keys is
27
+ * not a header name in the whitelist. It is what the two `EnableAcceptEncoding`
28
+ * flags put in the key, which is why a policy carrying no header at all still
29
+ * caches a compressed object apart from an uncompressed one.
25
30
  *
26
31
  * https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html
27
32
  */
@@ -1,3 +1,4 @@
1
+ import { SimCloudFrontCacheKey } from "./sim-cf-cache-key.js";
1
2
  import { SimCloudFrontCachePolicy, } from "./sim-cf-cache-policy.js";
2
3
  /**
3
4
  * The IDs AWS publishes for its managed cache policies.
@@ -15,34 +16,117 @@ export const simCfManagedCachePolicyIds = {
15
16
  useOriginCacheControlHeaders: "83da9c7e-98b4-4e11-a168-04f0df8e2c65",
16
17
  useOriginCacheControlHeadersQueryStrings: "4cc15a8a-d715-48a4-82b8-cc0b614638fe",
17
18
  };
19
+ const daySeconds = 86_400;
20
+ const yearSeconds = 31_536_000;
21
+ /**
22
+ * The headers the two UseOriginCacheControlHeaders policies key on. They
23
+ * differ from each other in their query strings alone.
24
+ */
25
+ const originCacheControlHeaders = [
26
+ "Host",
27
+ "Origin",
28
+ "X-HTTP-Method-Override",
29
+ "X-HTTP-Method",
30
+ "X-Method-Override",
31
+ ];
18
32
  /**
19
33
  * The seven managed cache policies, built fresh for one simulated CloudFront.
20
34
  *
21
35
  * CloudFront owns these and every account has them, so a Behavior can name one
22
- * without a template creating anything. Each carries the ID and the name AWS
23
- * publishes for it. The cache key and the TTLs behind each one are left out,
24
- * along with those of a policy a template creates.
36
+ * without a template creating anything. Each carries the ID, the name, the
37
+ * TTLs and the cache key AWS publishes for it, so a Behavior on
38
+ * `CachingOptimized` here holds what one in an account holds.
39
+ *
40
+ * The normalized `Accept-Encoding` header AWS lists in some of these keys is
41
+ * not a header name in the whitelist. It is what the two `EnableAcceptEncoding`
42
+ * flags put in the key, which is why a policy carrying no header at all still
43
+ * caches a compressed object apart from an uncompressed one.
25
44
  *
26
45
  * https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html
27
46
  */
28
47
  export function simCfManagedCachePolicies() {
29
48
  const policies = [
30
- managedCachePolicy(simCfManagedCachePolicyIds.amplify, "Amplify"),
31
- managedCachePolicy(simCfManagedCachePolicyIds.cachingOptimized, "CachingOptimized"),
32
- managedCachePolicy(simCfManagedCachePolicyIds.cachingOptimizedForUncompressedObjects, "CachingOptimizedForUncompressedObjects"),
33
- managedCachePolicy(simCfManagedCachePolicyIds.cachingDisabled, "CachingDisabled"),
34
- managedCachePolicy(simCfManagedCachePolicyIds.elementalMediaPackage, "Elemental-MediaPackage"),
35
- managedCachePolicy(simCfManagedCachePolicyIds.useOriginCacheControlHeaders, "UseOriginCacheControlHeaders"),
36
- managedCachePolicy(simCfManagedCachePolicyIds.useOriginCacheControlHeadersQueryStrings, "UseOriginCacheControlHeaders-QueryStrings"),
49
+ managedCachePolicy(simCfManagedCachePolicyIds.amplify, "Amplify", {
50
+ minTtlSec: 2,
51
+ defaultTtlSec: 2,
52
+ maxTtlSec: 600,
53
+ cacheKey: new SimCloudFrontCacheKey({
54
+ cookieBehavior: "all",
55
+ headerBehavior: "whitelist",
56
+ headers: ["Authorization", "CloudFront-Viewer-Country", "Host"],
57
+ queryStringBehavior: "all",
58
+ enableAcceptEncodingGzip: true,
59
+ enableAcceptEncodingBrotli: true,
60
+ }),
61
+ }),
62
+ managedCachePolicy(simCfManagedCachePolicyIds.cachingOptimized, "CachingOptimized", {
63
+ minTtlSec: 1,
64
+ defaultTtlSec: daySeconds,
65
+ maxTtlSec: yearSeconds,
66
+ cacheKey: new SimCloudFrontCacheKey({
67
+ enableAcceptEncodingGzip: true,
68
+ enableAcceptEncodingBrotli: true,
69
+ }),
70
+ }),
71
+ managedCachePolicy(simCfManagedCachePolicyIds.cachingOptimizedForUncompressedObjects, "CachingOptimizedForUncompressedObjects", {
72
+ minTtlSec: 1,
73
+ defaultTtlSec: daySeconds,
74
+ maxTtlSec: yearSeconds,
75
+ cacheKey: new SimCloudFrontCacheKey(),
76
+ }),
77
+ managedCachePolicy(simCfManagedCachePolicyIds.cachingDisabled, "CachingDisabled", {
78
+ minTtlSec: 0,
79
+ defaultTtlSec: 0,
80
+ maxTtlSec: 0,
81
+ cacheKey: new SimCloudFrontCacheKey(),
82
+ }),
83
+ managedCachePolicy(simCfManagedCachePolicyIds.elementalMediaPackage, "Elemental-MediaPackage", {
84
+ minTtlSec: 0,
85
+ defaultTtlSec: daySeconds,
86
+ maxTtlSec: yearSeconds,
87
+ cacheKey: new SimCloudFrontCacheKey({
88
+ headerBehavior: "whitelist",
89
+ headers: ["Origin"],
90
+ queryStringBehavior: "whitelist",
91
+ queryStrings: ["aws.manifestfilter", "start", "end", "m"],
92
+ enableAcceptEncodingGzip: true,
93
+ }),
94
+ }),
95
+ managedCachePolicy(simCfManagedCachePolicyIds.useOriginCacheControlHeaders, "UseOriginCacheControlHeaders", {
96
+ minTtlSec: 0,
97
+ defaultTtlSec: 0,
98
+ maxTtlSec: yearSeconds,
99
+ cacheKey: new SimCloudFrontCacheKey({
100
+ cookieBehavior: "all",
101
+ headerBehavior: "whitelist",
102
+ headers: originCacheControlHeaders,
103
+ enableAcceptEncodingGzip: true,
104
+ enableAcceptEncodingBrotli: true,
105
+ }),
106
+ }),
107
+ managedCachePolicy(simCfManagedCachePolicyIds.useOriginCacheControlHeadersQueryStrings, "UseOriginCacheControlHeaders-QueryStrings", {
108
+ minTtlSec: 0,
109
+ defaultTtlSec: 0,
110
+ maxTtlSec: yearSeconds,
111
+ cacheKey: new SimCloudFrontCacheKey({
112
+ cookieBehavior: "all",
113
+ headerBehavior: "whitelist",
114
+ headers: originCacheControlHeaders,
115
+ queryStringBehavior: "all",
116
+ enableAcceptEncodingGzip: true,
117
+ enableAcceptEncodingBrotli: true,
118
+ }),
119
+ }),
37
120
  ];
38
121
  return new Map(policies.map((policy) => [policy.id, policy]));
39
122
  }
40
123
  /**
41
- * One managed policy, under the ID and the name AWS gives it.
124
+ * One managed policy, under the ID, the name and the settings AWS gives it.
42
125
  */
43
- function managedCachePolicy(id, name) {
126
+ function managedCachePolicy(id, name, settings) {
44
127
  return new SimCloudFrontCachePolicy({
45
128
  id: id,
46
129
  name,
130
+ ...settings,
47
131
  });
48
132
  }
@@ -2,6 +2,7 @@ import { assertNonNullable } from "@kensio/smartass";
2
2
  import { SimAwsLocalUrl } from "../../../serve/http/url/sim-aws-local-url.js";
3
3
  import { simHttpApiLambdaProxyFactory } from "../../apigatewayv2/api/sim-http-api-lambda-proxy.factory.js";
4
4
  import { simCfDistroConfigFactory } from "../distribution/sim-cf-distro-config.factory.js";
5
+ import { simCfManagedOriginRequestPolicyIds } from "../origin-request-policy/sim-cf-managed-origin-request-policies.js";
5
6
  import { makeCffFunctionCodeInput } from "./function-code-input/cff-function-code-input.js";
6
7
  /**
7
8
  * Put a viewer-request Function in front of an Origin echoing the query it is
@@ -36,6 +37,9 @@ export async function searchDistributionUrl(simAws, path, handler) {
36
37
  DefaultCacheBehavior: {
37
38
  TargetOriginId: "SiteOrigin",
38
39
  ViewerProtocolPolicy: "allow-all",
40
+ // The Origin echoes the query it is sent, which reaches it only
41
+ // where the Behavior forwards it.
42
+ OriginRequestPolicyId: simCfManagedOriginRequestPolicyIds.allViewer,
39
43
  FunctionAssociations: {
40
44
  Items: [
41
45
  {
@@ -4,14 +4,19 @@ import { SimCloudFrontCachePolicy } from "../../cache-policy/sim-cf-cache-policy
4
4
  /**
5
5
  * Reads an AWS::CloudFront::CachePolicy Resource into a simulated policy.
6
6
  *
7
- * `Name` and `Comment` are what the policy carries. The cache key sections and
8
- * the TTLs are read past: what they configure is a cache this simulation has
9
- * yet to grow. A Resource missing its `Name` is refused, as CloudFormation
10
- * refuses one.
7
+ * The policy carries its `Name`, its `Comment`, its three TTLs and the cache
8
+ * key of its `ParametersInCacheKeyAndForwardedToOrigin`. A TTL a template left
9
+ * out falls back to CloudFront's own default rather than to nothing, so a
10
+ * policy holds what one in an account holds either way. A Resource missing its
11
+ * `Name` is refused, as CloudFormation refuses one.
11
12
  */
12
13
  export declare class SimCfnCfCachePolicyConfig {
13
14
  private readonly resource;
14
15
  private readonly properties;
16
+ /**
17
+ * Refuse this Resource, saying which part of it could not be read.
18
+ */
19
+ private readonly refuse;
15
20
  constructor(properties: {
16
21
  readonly resource: SimCfnResource;
17
22
  readonly properties: SimCfnTemplateValueRecord;
@@ -20,8 +25,4 @@ export declare class SimCfnCfCachePolicyConfig {
20
25
  * Build the simulated policy this Resource describes.
21
26
  */
22
27
  build(): SimCloudFrontCachePolicy;
23
- /**
24
- * Refuse this Resource, saying which part of it could not be read.
25
- */
26
- private refuse;
27
28
  }
@@ -1,16 +1,24 @@
1
1
  import { isRecord } from "../../../../util/type-guard/record.js";
2
2
  import { SimCloudFrontCachePolicy } from "../../cache-policy/sim-cf-cache-policy.js";
3
+ import { simCfnCfCachePolicyCacheKey } from "./sim-cfn-cf-cache-policy-key.js";
3
4
  /**
4
5
  * Reads an AWS::CloudFront::CachePolicy Resource into a simulated policy.
5
6
  *
6
- * `Name` and `Comment` are what the policy carries. The cache key sections and
7
- * the TTLs are read past: what they configure is a cache this simulation has
8
- * yet to grow. A Resource missing its `Name` is refused, as CloudFormation
9
- * refuses one.
7
+ * The policy carries its `Name`, its `Comment`, its three TTLs and the cache
8
+ * key of its `ParametersInCacheKeyAndForwardedToOrigin`. A TTL a template left
9
+ * out falls back to CloudFront's own default rather than to nothing, so a
10
+ * policy holds what one in an account holds either way. A Resource missing its
11
+ * `Name` is refused, as CloudFormation refuses one.
10
12
  */
11
13
  export class SimCfnCfCachePolicyConfig {
12
14
  resource;
13
15
  properties;
16
+ /**
17
+ * Refuse this Resource, saying which part of it could not be read.
18
+ */
19
+ refuse = (detail) => {
20
+ throw new Error(`Invalid AWS::CloudFront::CachePolicy ${this.resource.logicalId}: ${detail}`);
21
+ };
14
22
  constructor(properties) {
15
23
  this.resource = properties.resource;
16
24
  this.properties = properties.properties;
@@ -19,24 +27,45 @@ export class SimCfnCfCachePolicyConfig {
19
27
  * Build the simulated policy this Resource describes.
20
28
  */
21
29
  build() {
30
+ const { refuse } = this;
22
31
  const config = this.properties["CachePolicyConfig"];
23
32
  if (!isRecord(config)) {
24
- return this.refuse("CachePolicyConfig must be an object");
33
+ return refuse("CachePolicyConfig must be an object");
25
34
  }
26
35
  const name = config["Name"];
27
36
  if (typeof name !== "string") {
28
- return this.refuse("CachePolicyConfig needs a string Name");
37
+ return refuse("CachePolicyConfig needs a string Name");
29
38
  }
30
39
  const comment = config["Comment"];
40
+ const minTtlSec = ttlSeconds(config, "MinTTL", refuse);
41
+ const defaultTtlSec = ttlSeconds(config, "DefaultTTL", refuse);
42
+ const maxTtlSec = ttlSeconds(config, "MaxTTL", refuse);
31
43
  return new SimCloudFrontCachePolicy({
32
44
  name,
33
45
  ...(typeof comment === "string" && { comment }),
46
+ ...(minTtlSec !== undefined && { minTtlSec }),
47
+ ...(defaultTtlSec !== undefined && { defaultTtlSec }),
48
+ ...(maxTtlSec !== undefined && { maxTtlSec }),
49
+ cacheKey: simCfnCfCachePolicyCacheKey(config, refuse),
34
50
  });
35
51
  }
36
- /**
37
- * Refuse this Resource, saying which part of it could not be read.
38
- */
39
- refuse(detail) {
40
- throw new Error(`Invalid AWS::CloudFront::CachePolicy ${this.resource.logicalId}: ${detail}`);
52
+ }
53
+ /**
54
+ * One TTL, or nothing where the template left it out for CloudFront's default
55
+ * to stand in.
56
+ *
57
+ * A template here is often a JavaScript object rather than parsed JSON, so a
58
+ * fraction, a negative or a NaN can reach this where a deployed template could
59
+ * not carry one, and none of them is a length of time an object could sit in a
60
+ * cache for.
61
+ */
62
+ function ttlSeconds(config, field, refuse) {
63
+ // oxlint-disable-next-line security/detect-object-injection
64
+ const value = config[field];
65
+ if (value === undefined) {
66
+ return undefined;
41
67
  }
68
+ return typeof value === "number" && Number.isSafeInteger(value) && value >= 0
69
+ ? value
70
+ : refuse(`CachePolicyConfig ${field} must be a whole number of seconds`);
42
71
  }
@@ -0,0 +1,10 @@
1
+ import { SimCloudFrontCacheKey } from "../../cache-policy/sim-cf-cache-key.js";
2
+ import { type SimCfnCfPolicyRefuse } from "../policy/sim-cfn-cf-policy-section.js";
3
+ /**
4
+ * Read the `ParametersInCacheKeyAndForwardedToOrigin` of a
5
+ * `CachePolicyConfig` into the cache key a policy carries.
6
+ *
7
+ * A template leaving the whole thing out gets CloudFront's own `none` in all
8
+ * three sections, with neither compression flag set.
9
+ */
10
+ export declare function simCfnCfCachePolicyCacheKey(config: Record<string, unknown>, refuse: SimCfnCfPolicyRefuse): SimCloudFrontCacheKey;
@@ -0,0 +1,50 @@
1
+ import { isRecord } from "../../../../util/type-guard/record.js";
2
+ import { SimCloudFrontCacheKey } from "../../cache-policy/sim-cf-cache-key.js";
3
+ import { simCfnCfPolicySection, } from "../policy/sim-cfn-cf-policy-section.js";
4
+ import { simCfnCfCookiesSpec, simCfnCfHeadersSpec, simCfnCfQueryStringsSpec, } from "./sim-cfn-cf-cache-policy-section.js";
5
+ const parametersField = "ParametersInCacheKeyAndForwardedToOrigin";
6
+ /**
7
+ * Read the `ParametersInCacheKeyAndForwardedToOrigin` of a
8
+ * `CachePolicyConfig` into the cache key a policy carries.
9
+ *
10
+ * A template leaving the whole thing out gets CloudFront's own `none` in all
11
+ * three sections, with neither compression flag set.
12
+ */
13
+ export function simCfnCfCachePolicyCacheKey(config, refuse) {
14
+ // oxlint-disable-next-line security/detect-object-injection
15
+ const parameters = config[parametersField];
16
+ if (parameters === undefined) {
17
+ return new SimCloudFrontCacheKey();
18
+ }
19
+ if (!isRecord(parameters)) {
20
+ return refuse(`${parametersField} must be an object`);
21
+ }
22
+ const cookies = simCfnCfPolicySection(parameters, simCfnCfCookiesSpec, refuse);
23
+ const headers = simCfnCfPolicySection(parameters, simCfnCfHeadersSpec, refuse);
24
+ const queries = simCfnCfPolicySection(parameters, simCfnCfQueryStringsSpec, refuse);
25
+ return new SimCloudFrontCacheKey({
26
+ cookieBehavior: cookies.behavior,
27
+ cookies: cookies.items,
28
+ headerBehavior: headers.behavior,
29
+ headers: headers.items,
30
+ queryStringBehavior: queries.behavior,
31
+ queryStrings: queries.items,
32
+ enableAcceptEncodingGzip: encodingFlag(parameters, "Gzip", refuse),
33
+ enableAcceptEncodingBrotli: encodingFlag(parameters, "Brotli", refuse),
34
+ });
35
+ }
36
+ /**
37
+ * One of the two flags that put the normalized `Accept-Encoding` header in the
38
+ * cache key. Both are off where a template says nothing.
39
+ */
40
+ function encodingFlag(parameters, encoding, refuse) {
41
+ const field = `EnableAcceptEncoding${encoding}`;
42
+ // oxlint-disable-next-line security/detect-object-injection
43
+ const value = parameters[field];
44
+ if (value === undefined) {
45
+ return false;
46
+ }
47
+ return typeof value === "boolean"
48
+ ? value
49
+ : refuse(`${parametersField} ${field} must be a boolean`);
50
+ }
@@ -0,0 +1,28 @@
1
+ /**
2
+ * The three sections of a cache key, each with the fields CloudFormation
3
+ * names it by and the behaviours CloudFront offers for it.
4
+ *
5
+ * An origin request policy writes the same three sections under the same field
6
+ * names, and `simCfnCfPolicySection` reads either kind from a spec like these.
7
+ */
8
+ export declare const simCfnCfCookiesSpec: {
9
+ readonly section: "CookiesConfig";
10
+ readonly behaviorField: "CookieBehavior";
11
+ readonly itemsField: "Cookies";
12
+ readonly behaviors: readonly ["none", "whitelist", "allExcept", "all"];
13
+ readonly defaultBehavior: "none";
14
+ };
15
+ export declare const simCfnCfHeadersSpec: {
16
+ readonly section: "HeadersConfig";
17
+ readonly behaviorField: "HeaderBehavior";
18
+ readonly itemsField: "Headers";
19
+ readonly behaviors: readonly ["none", "whitelist"];
20
+ readonly defaultBehavior: "none";
21
+ };
22
+ export declare const simCfnCfQueryStringsSpec: {
23
+ readonly section: "QueryStringsConfig";
24
+ readonly behaviorField: "QueryStringBehavior";
25
+ readonly itemsField: "QueryStrings";
26
+ readonly behaviors: readonly ["none", "whitelist", "allExcept", "all"];
27
+ readonly defaultBehavior: "none";
28
+ };
@@ -0,0 +1,29 @@
1
+ import { simCfCacheKeyCookieBehaviors, simCfCacheKeyHeaderBehaviors, simCfCacheKeyQueryStringBehaviors, } from "../../cache-policy/sim-cf-cache-key.js";
2
+ /**
3
+ * The three sections of a cache key, each with the fields CloudFormation
4
+ * names it by and the behaviours CloudFront offers for it.
5
+ *
6
+ * An origin request policy writes the same three sections under the same field
7
+ * names, and `simCfnCfPolicySection` reads either kind from a spec like these.
8
+ */
9
+ export const simCfnCfCookiesSpec = {
10
+ section: "CookiesConfig",
11
+ behaviorField: "CookieBehavior",
12
+ itemsField: "Cookies",
13
+ behaviors: simCfCacheKeyCookieBehaviors,
14
+ defaultBehavior: "none",
15
+ };
16
+ export const simCfnCfHeadersSpec = {
17
+ section: "HeadersConfig",
18
+ behaviorField: "HeaderBehavior",
19
+ itemsField: "Headers",
20
+ behaviors: simCfCacheKeyHeaderBehaviors,
21
+ defaultBehavior: "none",
22
+ };
23
+ export const simCfnCfQueryStringsSpec = {
24
+ section: "QueryStringsConfig",
25
+ behaviorField: "QueryStringBehavior",
26
+ itemsField: "QueryStrings",
27
+ behaviors: simCfCacheKeyQueryStringBehaviors,
28
+ defaultBehavior: "none",
29
+ };
@@ -0,0 +1,16 @@
1
+ import type { SimCloudFront } from "../../sim-cloudfront.js";
2
+ /**
3
+ * One kind of policy a Behavior names, in the terms a template writes it in,
4
+ * with the way this simulation is asked whether it holds one and what the
5
+ * Behavior loses along with it.
6
+ */
7
+ export interface BehaviorPolicyKind {
8
+ readonly property: "ResponseHeadersPolicyId" | "CachePolicyId" | "OriginRequestPolicyId";
9
+ readonly name: string;
10
+ readonly loses: string;
11
+ readonly held: (cloudFront: SimCloudFront, policyId: string) => boolean;
12
+ }
13
+ /**
14
+ * The three policies a Behavior names outside itself.
15
+ */
16
+ export declare const behaviorPolicyKinds: readonly BehaviorPolicyKind[];
@@ -0,0 +1,23 @@
1
+ /**
2
+ * The three policies a Behavior names outside itself.
3
+ */
4
+ export const behaviorPolicyKinds = [
5
+ {
6
+ property: "ResponseHeadersPolicyId",
7
+ name: "response headers policy",
8
+ loses: "serves every response without the headers that policy would have set",
9
+ held: (cloudFront, policyId) => cloudFront.getResponseHeadersPolicyById(policyId) !== undefined,
10
+ },
11
+ {
12
+ property: "CachePolicyId",
13
+ name: "cache policy",
14
+ loses: "reports no CachePolicyId",
15
+ held: (cloudFront, policyId) => cloudFront.getCachePolicyById(policyId) !== undefined,
16
+ },
17
+ {
18
+ property: "OriginRequestPolicyId",
19
+ name: "origin request policy",
20
+ loses: "reports no OriginRequestPolicyId",
21
+ held: (cloudFront, policyId) => cloudFront.getOriginRequestPolicyById(policyId) !== undefined,
22
+ },
23
+ ];
@@ -3,7 +3,8 @@ import type { SimCloudFrontDistributionConfig } from "../../command/create-distr
3
3
  import type { SimCloudFront } from "../../sim-cloudfront.js";
4
4
  /**
5
5
  * The DistributionConfig to deploy, without a policy ID naming a response
6
- * headers policy or a cache policy this simulation does not hold.
6
+ * headers policy, a cache policy or an origin request policy this simulation
7
+ * does not hold.
7
8
  *
8
9
  * `CreateDistribution` refuses such an ID, as real CloudFront refuses one, and
9
10
  * a Distribution deployed from a template is the one place that refusal costs
@@ -19,6 +20,6 @@ import type { SimCloudFront } from "../../sim-cloudfront.js";
19
20
  * naming one keeps it.
20
21
  *
21
22
  * One Behavior losing a policy leaves the others holding theirs, and a
22
- * Behavior losing one kind of policy keeps the other.
23
+ * Behavior losing one kind of policy keeps the others.
23
24
  */
24
25
  export declare function simCfnCfDistroWithHeldBehaviorPolicies(resource: SimCfnResource, distributionConfig: SimCloudFrontDistributionConfig, cloudFront: SimCloudFront): SimCloudFrontDistributionConfig;
@@ -6,7 +6,8 @@ import { SimCfnCfDistroPolicyDrops } from "./sim-cfn-cf-distro-policy-drops.js";
6
6
  const defaultBehaviorPath = "DistributionConfig.DefaultCacheBehavior";
7
7
  /**
8
8
  * The DistributionConfig to deploy, without a policy ID naming a response
9
- * headers policy or a cache policy this simulation does not hold.
9
+ * headers policy, a cache policy or an origin request policy this simulation
10
+ * does not hold.
10
11
  *
11
12
  * `CreateDistribution` refuses such an ID, as real CloudFront refuses one, and
12
13
  * a Distribution deployed from a template is the one place that refusal costs
@@ -22,7 +23,7 @@ const defaultBehaviorPath = "DistributionConfig.DefaultCacheBehavior";
22
23
  * naming one keeps it.
23
24
  *
24
25
  * One Behavior losing a policy leaves the others holding theirs, and a
25
- * Behavior losing one kind of policy keeps the other.
26
+ * Behavior losing one kind of policy keeps the others.
26
27
  */
27
28
  export function simCfnCfDistroWithHeldBehaviorPolicies(resource, distributionConfig, cloudFront) {
28
29
  const drops = new SimCfnCfDistroPolicyDrops(resource, cloudFront);
@@ -10,12 +10,12 @@ interface SimCfnCfDistroCreatorProperties {
10
10
  *
11
11
  * A `WebACLId` naming a web ACL this simulation does not hold is left out and
12
12
  * recorded, and so are a Lambda@Edge association it cannot run and a
13
- * `ResponseHeadersPolicyId` or `CachePolicyId` naming a policy it does not
14
- * hold. CloudFront has no Resource of its own for any of them, so all of them
15
- * live on the Distribution itself, and refusing one would take the
16
- * Distribution down over something that was never the point of the template.
17
- * The site a local dev server and a suite of tests make requests to has to
18
- * survive that.
13
+ * `ResponseHeadersPolicyId`, `CachePolicyId` or `OriginRequestPolicyId`
14
+ * naming a policy it does not hold. CloudFront has no Resource of its own for
15
+ * any of them, so all of them live on the Distribution itself, and refusing
16
+ * one would take the Distribution down over something that was never the point
17
+ * of the template. The site a local dev server and a suite of tests make
18
+ * requests to has to survive that.
19
19
  */
20
20
  export declare class SimCfnCfDistroCreator {
21
21
  private readonly cloudFront;
@@ -9,12 +9,12 @@ import { simCfnResourceCallerOptions } from "../../../cloudformation/resource/ca
9
9
  *
10
10
  * A `WebACLId` naming a web ACL this simulation does not hold is left out and
11
11
  * recorded, and so are a Lambda@Edge association it cannot run and a
12
- * `ResponseHeadersPolicyId` or `CachePolicyId` naming a policy it does not
13
- * hold. CloudFront has no Resource of its own for any of them, so all of them
14
- * live on the Distribution itself, and refusing one would take the
15
- * Distribution down over something that was never the point of the template.
16
- * The site a local dev server and a suite of tests make requests to has to
17
- * survive that.
12
+ * `ResponseHeadersPolicyId`, `CachePolicyId` or `OriginRequestPolicyId`
13
+ * naming a policy it does not hold. CloudFront has no Resource of its own for
14
+ * any of them, so all of them live on the Distribution itself, and refusing
15
+ * one would take the Distribution down over something that was never the point
16
+ * of the template. The site a local dev server and a suite of tests make
17
+ * requests to has to survive that.
18
18
  */
19
19
  export class SimCfnCfDistroCreator {
20
20
  cloudFront;
@@ -1,3 +1,4 @@
1
+ import { behaviorPolicyKinds, } from "./sim-cfn-cf-behavior-policy-kinds.js";
1
2
  /**
2
3
  * Takes a policy ID naming a policy this simulation does not hold off the
3
4
  * Behavior that named it, and records each one on the Resource.
@@ -15,36 +16,20 @@ export class SimCfnCfDistroPolicyDrops {
15
16
  * are not.
16
17
  */
17
18
  heldPolicies(behavior, behaviorPath) {
18
- const withHeaders = this.heldPolicy(behavior, behaviorPath, "ResponseHeadersPolicyId", (policyId) => this.cloudFront.getResponseHeadersPolicyById(policyId) !== undefined, headersPolicyDropReason);
19
- return this.heldPolicy(withHeaders, behaviorPath, "CachePolicyId", (policyId) => this.cloudFront.getCachePolicyById(policyId) !== undefined, cachePolicyDropReason);
19
+ return behaviorPolicyKinds.reduce((held, kind) => this.heldPolicy(held, behaviorPath, kind), behavior);
20
20
  }
21
21
  /**
22
22
  * One policy property of one Behavior, dropped where the ID names nothing
23
23
  * this simulation holds.
24
24
  */
25
- heldPolicy(behavior, behaviorPath, property, held, reason) {
26
- // oxlint-disable-next-line security/detect-object-injection
27
- const policyId = behavior[property];
28
- if (policyId === undefined || held(policyId)) {
25
+ heldPolicy(behavior, behaviorPath, kind) {
26
+ const policyId = behavior[kind.property];
27
+ if (policyId === undefined || kind.held(this.cloudFront, policyId)) {
29
28
  return behavior;
30
29
  }
31
30
  this.count += 1;
32
- this.resource.ignoreProperty(`${behaviorPath}.${property}`, reason(policyId));
33
- return { ...behavior, [property]: undefined };
31
+ this.resource.ignoreProperty(`${behaviorPath}.${kind.property}`, `${kind.name} ${policyId} is not held by this simulation, so the ` +
32
+ `Behavior is deployed without one and ${kind.loses}`);
33
+ return { ...behavior, [kind.property]: undefined };
34
34
  }
35
35
  }
36
- /**
37
- * What a Behavior loses along with a response headers policy.
38
- */
39
- function headersPolicyDropReason(policyId) {
40
- return (`response headers policy ${policyId} is not held by this simulation, so ` +
41
- `the Behavior is deployed without one and serves every response without ` +
42
- `the headers that policy would have set`);
43
- }
44
- /**
45
- * What a Behavior loses along with a cache policy.
46
- */
47
- function cachePolicyDropReason(policyId) {
48
- return (`cache policy ${policyId} is not held by this simulation, so the ` +
49
- `Behavior is deployed without one and reports no CachePolicyId`);
50
- }
@@ -0,0 +1,28 @@
1
+ import type { SimCfnResource } from "../../../cloudformation/resource/sim-cfn-resource.js";
2
+ import type { SimCfnTemplateValueRecord } from "../../../cloudformation/template/value/sim-cfn-template-value.js";
3
+ import { SimCloudFrontOriginRequestPolicy } from "../../origin-request-policy/sim-cf-origin-request-policy.js";
4
+ /**
5
+ * Reads an AWS::CloudFront::OriginRequestPolicy Resource into a simulated
6
+ * policy.
7
+ *
8
+ * The policy carries its `Name`, its `Comment` and the three sections that say
9
+ * what it forwards to the Origin. A section a template left out falls back to
10
+ * CloudFront's `none`. A Resource missing its `Name` is refused, as
11
+ * CloudFormation refuses one.
12
+ */
13
+ export declare class SimCfnCfOriginRequestPolicyConfig {
14
+ private readonly resource;
15
+ private readonly properties;
16
+ /**
17
+ * Refuse this Resource, saying which part of it could not be read.
18
+ */
19
+ private readonly refuse;
20
+ constructor(properties: {
21
+ readonly resource: SimCfnResource;
22
+ readonly properties: SimCfnTemplateValueRecord;
23
+ });
24
+ /**
25
+ * Build the simulated policy this Resource describes.
26
+ */
27
+ build(): SimCloudFrontOriginRequestPolicy;
28
+ }