@kensio/yulin 1.21.0 → 1.21.2

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 (529) 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/aws/factory/sim-aws-account-region-service-builder.js +3 -0
  4. package/dist/service/aws/factory/sim-aws-lambda-collaborators.d.ts +2 -0
  5. package/dist/service/aws/factory/sim-aws-lambda-collaborators.js +3 -0
  6. package/dist/service/aws/factory/sim-aws-logs-collaborators.d.ts +7 -0
  7. package/dist/service/aws/factory/sim-aws-logs-collaborators.js +10 -0
  8. package/dist/service/aws/factory/sim-aws-self-contained-service-builder.d.ts +3 -0
  9. package/dist/service/aws/factory/sim-aws-self-contained-service-builder.js +5 -0
  10. package/dist/service/aws/factory/sim-aws-service-factory.d.ts +3 -0
  11. package/dist/service/aws/factory/sim-aws-service-factory.js +4 -0
  12. package/dist/service/aws/sim-aws-account-region-scope.d.ts +3 -0
  13. package/dist/service/aws/sim-aws-account-region-scope.js +4 -0
  14. package/dist/service/aws/sim-aws-account.d.ts +3 -0
  15. package/dist/service/aws/sim-aws-account.js +4 -0
  16. package/dist/service/aws/sim-aws-region.d.ts +3 -0
  17. package/dist/service/aws/sim-aws-region.js +4 -0
  18. package/dist/service/aws/sim-aws-service-accessors.d.ts +3 -0
  19. package/dist/service/aws/sim-aws-service-accessors.js +4 -0
  20. package/dist/service/backup/cfn/sim-backup-cfn-plan-creator.d.ts +6 -0
  21. package/dist/service/backup/cfn/sim-backup-cfn-plan-creator.js +12 -0
  22. package/dist/service/backup/cfn/sim-backup-cfn-resource-deleter.d.ts +12 -0
  23. package/dist/service/backup/cfn/sim-backup-cfn-resource-deleter.js +31 -0
  24. package/dist/service/backup/cfn/sim-backup-cfn-resource-factory.d.ts +15 -0
  25. package/dist/service/backup/cfn/sim-backup-cfn-resource-factory.js +38 -0
  26. package/dist/service/backup/cfn/sim-backup-cfn-selection-creator.d.ts +6 -0
  27. package/dist/service/backup/cfn/sim-backup-cfn-selection-creator.js +17 -0
  28. package/dist/service/backup/cfn/sim-backup-cfn-vault-creator.d.ts +6 -0
  29. package/dist/service/backup/cfn/sim-backup-cfn-vault-creator.js +29 -0
  30. package/dist/service/backup/cfn/sim-cfn-backup-plan-properties.d.ts +11 -0
  31. package/dist/service/backup/cfn/sim-cfn-backup-plan-properties.js +37 -0
  32. package/dist/service/backup/cfn/sim-cfn-backup-properties.d.ts +12 -0
  33. package/dist/service/backup/cfn/sim-cfn-backup-properties.js +37 -0
  34. package/dist/service/backup/cfn/sim-cfn-backup-property-reader.d.ts +17 -0
  35. package/dist/service/backup/cfn/sim-cfn-backup-property-reader.js +62 -0
  36. package/dist/service/backup/cfn/sim-cfn-backup-resource-error.d.ts +7 -0
  37. package/dist/service/backup/cfn/sim-cfn-backup-resource-error.js +22 -0
  38. package/dist/service/backup/command/sim-backup-authorizer.d.ts +11 -0
  39. package/dist/service/backup/command/sim-backup-authorizer.js +24 -0
  40. package/dist/service/backup/command/sim-backup-command.types.d.ts +238 -0
  41. package/dist/service/backup/command/sim-backup-command.types.js +1 -0
  42. package/dist/service/backup/command/sim-backup-configuration-commands.d.ts +32 -0
  43. package/dist/service/backup/command/sim-backup-configuration-commands.js +138 -0
  44. package/dist/service/backup/command/sim-backup-job-commands.d.ts +23 -0
  45. package/dist/service/backup/command/sim-backup-job-commands.js +52 -0
  46. package/dist/service/backup/command/sim-backup-recovery-point-commands.d.ts +18 -0
  47. package/dist/service/backup/command/sim-backup-recovery-point-commands.js +38 -0
  48. package/dist/service/backup/command/sim-backup-request-options.d.ts +4 -0
  49. package/dist/service/backup/command/sim-backup-request-options.js +1 -0
  50. package/dist/service/backup/command/sim-backup-required-string.d.ts +2 -0
  51. package/dist/service/backup/command/sim-backup-required-string.js +8 -0
  52. package/dist/service/backup/error/sim-backup.error.d.ts +38 -0
  53. package/dist/service/backup/error/sim-backup.error.js +50 -0
  54. package/dist/service/backup/index.d.ts +9 -0
  55. package/dist/service/backup/index.js +7 -0
  56. package/dist/service/backup/job/sim-backup-job-input.d.ts +11 -0
  57. package/dist/service/backup/job/sim-backup-job-input.js +1 -0
  58. package/dist/service/backup/job/sim-backup-job-page.d.ts +22 -0
  59. package/dist/service/backup/job/sim-backup-job-page.js +54 -0
  60. package/dist/service/backup/job/sim-backup-job.d.ts +25 -0
  61. package/dist/service/backup/job/sim-backup-job.factory.d.ts +10 -0
  62. package/dist/service/backup/job/sim-backup-job.factory.js +24 -0
  63. package/dist/service/backup/job/sim-backup-job.js +54 -0
  64. package/dist/service/backup/job/sim-backup-jobs.d.ts +18 -0
  65. package/dist/service/backup/job/sim-backup-jobs.js +33 -0
  66. package/dist/service/backup/plan/sim-backup-plan-schedules.d.ts +21 -0
  67. package/dist/service/backup/plan/sim-backup-plan-schedules.js +66 -0
  68. package/dist/service/backup/plan/sim-backup-plan.d.ts +22 -0
  69. package/dist/service/backup/plan/sim-backup-plan.js +37 -0
  70. package/dist/service/backup/plan/sim-backup-rule.d.ts +9 -0
  71. package/dist/service/backup/plan/sim-backup-rule.js +71 -0
  72. package/dist/service/backup/recovery-point/sim-backup-recovery-point.d.ts +28 -0
  73. package/dist/service/backup/recovery-point/sim-backup-recovery-point.factory.d.ts +9 -0
  74. package/dist/service/backup/recovery-point/sim-backup-recovery-point.factory.js +23 -0
  75. package/dist/service/backup/recovery-point/sim-backup-recovery-point.js +62 -0
  76. package/dist/service/backup/sdk/sim-backup-sdk-command-router.d.ts +9 -0
  77. package/dist/service/backup/sdk/sim-backup-sdk-command-router.js +37 -0
  78. package/dist/service/backup/selection/sim-backup-selection.d.ts +22 -0
  79. package/dist/service/backup/selection/sim-backup-selection.js +43 -0
  80. package/dist/service/backup/sim-backup-arn.d.ts +7 -0
  81. package/dist/service/backup/sim-backup-arn.js +12 -0
  82. package/dist/service/backup/sim-backup-properties.d.ts +8 -0
  83. package/dist/service/backup/sim-backup-properties.js +1 -0
  84. package/dist/service/backup/sim-backup-resource-resolver.d.ts +24 -0
  85. package/dist/service/backup/sim-backup-resource-resolver.js +44 -0
  86. package/dist/service/backup/sim-backup-store.d.ts +29 -0
  87. package/dist/service/backup/sim-backup-store.js +80 -0
  88. package/dist/service/backup/sim-backup.d.ts +48 -0
  89. package/dist/service/backup/sim-backup.js +139 -0
  90. package/dist/service/backup/vault/sim-backup-vault-description.d.ts +12 -0
  91. package/dist/service/backup/vault/sim-backup-vault-description.js +15 -0
  92. package/dist/service/backup/vault/sim-backup-vault-lock-configuration.d.ts +5 -0
  93. package/dist/service/backup/vault/sim-backup-vault-lock-configuration.js +31 -0
  94. package/dist/service/backup/vault/sim-backup-vault-lock.d.ts +15 -0
  95. package/dist/service/backup/vault/sim-backup-vault-lock.js +23 -0
  96. package/dist/service/backup/vault/sim-backup-vault-recovery-points.d.ts +12 -0
  97. package/dist/service/backup/vault/sim-backup-vault-recovery-points.js +30 -0
  98. package/dist/service/backup/vault/sim-backup-vault-retention.d.ts +4 -0
  99. package/dist/service/backup/vault/sim-backup-vault-retention.js +20 -0
  100. package/dist/service/backup/vault/sim-backup-vault.d.ts +33 -0
  101. package/dist/service/backup/vault/sim-backup-vault.js +49 -0
  102. package/dist/service/cloudformation/resource/cfn/backup/sim-backup-cfn-value-adapter.d.ts +3 -0
  103. package/dist/service/cloudformation/resource/cfn/backup/sim-backup-cfn-value-adapter.js +66 -0
  104. package/dist/service/cloudformation/resource/cfn/logs/sim-logs-cfn-value-adapter.js +6 -0
  105. package/dist/service/cloudformation/resource/cfn/logs/sim-logs-metric-filter-cfn.d.ts +23 -0
  106. package/dist/service/cloudformation/resource/cfn/logs/sim-logs-metric-filter-cfn.js +22 -0
  107. package/dist/service/cloudformation/resource/cfn/sim-cfn-service-value-adapters.js +2 -0
  108. package/dist/service/cloudformation/resource/ignore/sim-cfn-skipped-properties.d.ts +49 -0
  109. package/dist/service/cloudformation/resource/ignore/sim-cfn-skipped-properties.js +61 -0
  110. package/dist/service/cloudformation/resource/ignore/sim-cfn-skipped-property.type.d.ts +51 -0
  111. package/dist/service/cloudformation/resource/ignore/sim-cfn-skipped-property.type.js +1 -0
  112. package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-factories.js +4 -0
  113. package/dist/service/cloudwatch/index.d.ts +1 -0
  114. package/dist/service/cloudwatch/index.js +1 -0
  115. package/dist/service/cloudwatch/sim-cloudwatch-commands.d.ts +2 -0
  116. package/dist/service/cloudwatch/sim-cloudwatch-commands.js +6 -0
  117. package/dist/service/cloudwatch/sim-cloudwatch.d.ts +9 -0
  118. package/dist/service/cloudwatch/sim-cloudwatch.js +10 -0
  119. package/dist/service/cloudwatch/write/sim-cloudwatch-service-writer.d.ts +58 -0
  120. package/dist/service/cloudwatch/write/sim-cloudwatch-service-writer.js +53 -0
  121. package/dist/service/cognito/command/auth/sim-cognito-admin-respond-to-challenge.d.ts +3 -0
  122. package/dist/service/cognito/command/auth/sim-cognito-admin-respond-to-challenge.js +8 -2
  123. package/dist/service/cognito/command/auth/sim-cognito-auth-commands.d.ts +3 -0
  124. package/dist/service/cognito/command/auth/sim-cognito-auth-commands.js +4 -0
  125. package/dist/service/cognito/command/auth/sim-cognito-auth-flow-runner.d.ts +11 -1
  126. package/dist/service/cognito/command/auth/sim-cognito-auth-flow-runner.js +13 -1
  127. package/dist/service/cognito/command/auth/sim-cognito-auth-resolver.d.ts +3 -0
  128. package/dist/service/cognito/command/auth/sim-cognito-auth-resolver.js +16 -4
  129. package/dist/service/cognito/command/auth/sim-cognito-get-tokens-from-refresh-token.d.ts +7 -0
  130. package/dist/service/cognito/command/auth/sim-cognito-get-tokens-from-refresh-token.js +11 -1
  131. package/dist/service/cognito/command/auth/sim-cognito-respond-to-challenge.d.ts +3 -0
  132. package/dist/service/cognito/command/auth/sim-cognito-respond-to-challenge.js +8 -2
  133. package/dist/service/cognito/command/hosted/hosted-auth.command.d.ts +19 -0
  134. package/dist/service/cognito/command/hosted/sim-cognito-authorize-endpoint.d.ts +1 -1
  135. package/dist/service/cognito/command/hosted/sim-cognito-authorize-endpoint.js +3 -2
  136. package/dist/service/cognito/command/hosted/sim-cognito-hosted-commands.d.ts +8 -0
  137. package/dist/service/cognito/command/hosted/sim-cognito-hosted-commands.js +11 -3
  138. package/dist/service/cognito/command/hosted/sim-cognito-hosted-passkey-sign-in.d.ts +11 -1
  139. package/dist/service/cognito/command/hosted/sim-cognito-hosted-passkey-sign-in.js +13 -2
  140. package/dist/service/cognito/command/hosted/sim-cognito-hosted-password-sign-in.d.ts +11 -1
  141. package/dist/service/cognito/command/hosted/sim-cognito-hosted-password-sign-in.js +11 -1
  142. package/dist/service/cognito/command/hosted/sim-cognito-hosted-sign-in.d.ts +7 -1
  143. package/dist/service/cognito/command/hosted/sim-cognito-hosted-sign-in.js +18 -7
  144. package/dist/service/cognito/command/hosted/sim-cognito-hosted-signed-in.d.ts +20 -3
  145. package/dist/service/cognito/command/hosted/sim-cognito-hosted-signed-in.js +19 -3
  146. package/dist/service/cognito/command/hosted/sim-cognito-token-endpoint.d.ts +2 -0
  147. package/dist/service/cognito/command/hosted/sim-cognito-token-grants.d.ts +8 -0
  148. package/dist/service/cognito/command/hosted/sim-cognito-token-grants.js +13 -4
  149. package/dist/service/cognito/command/sim-cognito-commands.d.ts +5 -0
  150. package/dist/service/cognito/command/sim-cognito-commands.js +22 -2
  151. package/dist/service/cognito/command/user/sim-cognito-confirm-sign-up-commands.d.ts +74 -0
  152. package/dist/service/cognito/command/user/sim-cognito-confirm-sign-up-commands.js +110 -0
  153. package/dist/service/cognito/command/user/sim-cognito-sign-up-commands.d.ts +5 -49
  154. package/dist/service/cognito/command/user/sim-cognito-sign-up-commands.js +7 -87
  155. package/dist/service/cognito/command/user/sim-cognito-user-commands.d.ts +4 -0
  156. package/dist/service/cognito/command/user/sim-cognito-user-commands.js +38 -29
  157. package/dist/service/cognito/error/sim-cognito-managed-login.error.d.ts +23 -0
  158. package/dist/service/cognito/error/sim-cognito-managed-login.error.js +36 -0
  159. package/dist/service/cognito/error/sim-cognito-throttle.error.d.ts +13 -0
  160. package/dist/service/cognito/error/sim-cognito-throttle.error.js +15 -0
  161. package/dist/service/cognito/index.d.ts +2 -0
  162. package/dist/service/cognito/index.js +2 -0
  163. package/dist/service/cognito/metric/sim-cognito-counted-request.d.ts +50 -0
  164. package/dist/service/cognito/metric/sim-cognito-counted-request.js +51 -0
  165. package/dist/service/cognito/metric/sim-cognito-metrics.d.ts +22 -0
  166. package/dist/service/cognito/metric/sim-cognito-metrics.js +26 -0
  167. package/dist/service/cognito/metric/sim-cognito-pool-metrics.d.ts +40 -0
  168. package/dist/service/cognito/metric/sim-cognito-pool-metrics.js +51 -0
  169. package/dist/service/cognito/metric/sim-cognito-throttled-request.d.ts +11 -0
  170. package/dist/service/cognito/metric/sim-cognito-throttled-request.js +15 -0
  171. package/dist/service/cognito/serve/page/sim-cognito-managed-login.d.ts +1 -0
  172. package/dist/service/cognito/serve/page/sim-cognito-managed-login.js +6 -1
  173. package/dist/service/cognito/serve/page/sim-cognito-page-markup.d.ts +4 -1
  174. package/dist/service/cognito/serve/page/sim-cognito-page-markup.js +6 -2
  175. package/dist/service/cognito/serve/page/sim-cognito-provider-page.d.ts +35 -0
  176. package/dist/service/cognito/serve/page/sim-cognito-provider-page.js +50 -0
  177. package/dist/service/cognito/sim-cognito-identity-provider.d.ts +6 -0
  178. package/dist/service/cognito/sim-cognito-identity-provider.js +1 -0
  179. package/dist/service/cognito/sim-cognito-user-directory.js +3 -3
  180. package/dist/service/cognito/user-pool/auth/sim-cognito-authorization-code.d.ts +9 -0
  181. package/dist/service/cognito/user-pool/auth/sim-cognito-authorization-code.js +2 -0
  182. package/dist/service/cognito/user-pool/auth/sim-cognito-pool-auth.d.ts +8 -0
  183. package/dist/service/cognito/user-pool/auth/sim-cognito-pool-auth.js +8 -0
  184. package/dist/service/cognito/user-pool/auth/sim-cognito-request-throttle.d.ts +36 -0
  185. package/dist/service/cognito/user-pool/auth/sim-cognito-request-throttle.js +45 -0
  186. package/dist/service/cognito/user-pool/idp/sim-cognito-federated-sign-in.d.ts +42 -9
  187. package/dist/service/cognito/user-pool/idp/sim-cognito-federated-sign-in.js +56 -27
  188. package/dist/service/cognito/user-pool/idp/sim-cognito-federated-triggers.d.ts +52 -0
  189. package/dist/service/cognito/user-pool/idp/sim-cognito-federated-triggers.js +49 -0
  190. package/dist/service/cognito/user-pool/idp/sim-cognito-presented-external-user.d.ts +48 -0
  191. package/dist/service/cognito/user-pool/idp/sim-cognito-presented-external-user.js +94 -0
  192. package/dist/service/cognito/user-pool/idp/sim-cognito-same-federated-identity.d.ts +13 -0
  193. package/dist/service/cognito/user-pool/idp/sim-cognito-same-federated-identity.js +19 -0
  194. package/dist/service/cognito/user-pool/idp/sim-cognito-user-pool-identity-provider.d.ts +7 -0
  195. package/dist/service/cognito/user-pool/idp/sim-cognito-user-pool-identity-provider.js +9 -0
  196. package/dist/service/cognito/user-pool/trigger/sim-cognito-trigger-name.d.ts +3 -2
  197. package/dist/service/cognito/user-pool/trigger/sim-cognito-trigger-name.js +3 -2
  198. package/dist/service/cognito/user-pool/trigger/sim-cognito-trigger-occasion.d.ts +18 -1
  199. package/dist/service/cognito/user-pool/trigger/sim-cognito-trigger-occasion.js +35 -18
  200. package/dist/service/lambda/command/create-function/create-function.handler.d.ts +3 -0
  201. package/dist/service/lambda/command/create-function/create-function.handler.js +4 -1
  202. package/dist/service/lambda/command/function/sim-lambda-function-commands.d.ts +2 -0
  203. package/dist/service/lambda/event-source/poll/kinesis/sim-lambda-kinesis-stream-delivery.js +7 -11
  204. package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-stream-delivery.js +7 -8
  205. package/dist/service/lambda/event-source/poll/sim-lambda-stream-iterator-age.d.ts +11 -0
  206. package/dist/service/lambda/event-source/poll/sim-lambda-stream-iterator-age.js +31 -0
  207. package/dist/service/lambda/event-source/poll/sim-lambda-stream-sequence-numbers.d.ts +10 -0
  208. package/dist/service/lambda/event-source/poll/sim-lambda-stream-sequence-numbers.js +12 -0
  209. package/dist/service/lambda/function/sim-lambda-function.d.ts +3 -0
  210. package/dist/service/lambda/function/sim-lambda-function.js +6 -2
  211. package/dist/service/lambda/function/sim-lambda-function.type.d.ts +7 -0
  212. package/dist/service/lambda/metric/sim-lambda-function-metrics.d.ts +47 -0
  213. package/dist/service/lambda/metric/sim-lambda-function-metrics.js +83 -0
  214. package/dist/service/lambda/metric/sim-lambda-iterator-age.d.ts +29 -0
  215. package/dist/service/lambda/metric/sim-lambda-iterator-age.js +41 -0
  216. package/dist/service/lambda/metric/sim-lambda-metrics.d.ts +12 -0
  217. package/dist/service/lambda/metric/sim-lambda-metrics.js +13 -0
  218. package/dist/service/lambda/sim-lambda-commands.d.ts +2 -0
  219. package/dist/service/lambda/sim-lambda-commands.js +2 -1
  220. package/dist/service/logs/cfn/metric/sim-cfn-metric-dimension-values.d.ts +9 -0
  221. package/dist/service/logs/cfn/metric/sim-cfn-metric-dimension-values.js +25 -0
  222. package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-creator.d.ts +30 -0
  223. package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-creator.js +52 -0
  224. package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-properties.d.ts +40 -0
  225. package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-properties.js +66 -0
  226. package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-property-rules.d.ts +19 -0
  227. package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-property-rules.js +40 -0
  228. package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-unsimulated-properties.d.ts +5 -0
  229. package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-unsimulated-properties.js +23 -0
  230. package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-value.d.ts +25 -0
  231. package/dist/service/logs/cfn/metric/sim-cfn-metric-filter-value.js +58 -0
  232. package/dist/service/logs/cfn/metric/sim-cfn-metric-transformation-values.d.ts +6 -0
  233. package/dist/service/logs/cfn/metric/sim-cfn-metric-transformation-values.js +19 -0
  234. package/dist/service/logs/cfn/sim-logs-cfn-resource-deleter.d.ts +2 -0
  235. package/dist/service/logs/cfn/sim-logs-cfn-resource-deleter.js +4 -0
  236. package/dist/service/logs/cfn/sim-logs-cfn-resource-factory.d.ts +5 -3
  237. package/dist/service/logs/cfn/sim-logs-cfn-resource-factory.js +12 -3
  238. package/dist/service/logs/command/event/sim-logs-put-log-events.d.ts +3 -0
  239. package/dist/service/logs/command/event/sim-logs-put-log-events.js +3 -0
  240. package/dist/service/logs/command/group/sim-logs-log-group-commands.js +3 -3
  241. package/dist/service/logs/command/metric/metric-filter.command.d.ts +79 -0
  242. package/dist/service/logs/command/metric/metric-filter.command.js +1 -0
  243. package/dist/service/logs/command/metric/sim-logs-metric-filter-commands.d.ts +48 -0
  244. package/dist/service/logs/command/metric/sim-logs-metric-filter-commands.js +95 -0
  245. package/dist/service/logs/command/metric/sim-logs-metric-filter-input.d.ts +11 -0
  246. package/dist/service/logs/command/metric/sim-logs-metric-filter-input.js +79 -0
  247. package/dist/service/logs/command/sim-logs-command.types.d.ts +1 -0
  248. package/dist/service/logs/group/sim-logs-log-group.d.ts +6 -0
  249. package/dist/service/logs/group/sim-logs-log-group.js +6 -0
  250. package/dist/service/logs/index.d.ts +6 -0
  251. package/dist/service/logs/index.js +4 -0
  252. package/dist/service/logs/metric/cloudwatch/sim-aws-logs-metric-filter-metrics.d.ts +40 -0
  253. package/dist/service/logs/metric/cloudwatch/sim-aws-logs-metric-filter-metrics.js +78 -0
  254. package/dist/service/logs/metric/emf/sim-logs-embedded-metric-datapoints.d.ts +25 -0
  255. package/dist/service/logs/metric/emf/sim-logs-embedded-metric-datapoints.js +81 -0
  256. package/dist/service/logs/metric/emf/sim-logs-embedded-metric-document.d.ts +57 -0
  257. package/dist/service/logs/metric/emf/sim-logs-embedded-metric-document.js +85 -0
  258. package/dist/service/logs/metric/emf/sim-logs-embedded-metric-json.d.ts +24 -0
  259. package/dist/service/logs/metric/emf/sim-logs-embedded-metric-json.js +41 -0
  260. package/dist/service/logs/metric/emf/sim-logs-embedded-metric-values.d.ts +20 -0
  261. package/dist/service/logs/metric/emf/sim-logs-embedded-metric-values.js +39 -0
  262. package/dist/service/logs/metric/sim-logs-metric-datapoint.d.ts +25 -0
  263. package/dist/service/logs/metric/sim-logs-metric-datapoint.js +1 -0
  264. package/dist/service/logs/metric/sim-logs-metric-fan-out.d.ts +62 -0
  265. package/dist/service/logs/metric/sim-logs-metric-fan-out.js +116 -0
  266. package/dist/service/logs/metric/sim-logs-metric-filter-selection.d.ts +17 -0
  267. package/dist/service/logs/metric/sim-logs-metric-filter-selection.js +17 -0
  268. package/dist/service/logs/metric/sim-logs-metric-filter-store.d.ts +35 -0
  269. package/dist/service/logs/metric/sim-logs-metric-filter-store.js +47 -0
  270. package/dist/service/logs/metric/sim-logs-metric-filter.d.ts +49 -0
  271. package/dist/service/logs/metric/sim-logs-metric-filter.js +95 -0
  272. package/dist/service/logs/metric/sim-logs-metric-publication-failure.d.ts +31 -0
  273. package/dist/service/logs/metric/sim-logs-metric-publication-failure.js +12 -0
  274. package/dist/service/logs/metric/sim-logs-metric-publications.d.ts +11 -0
  275. package/dist/service/logs/metric/sim-logs-metric-publications.js +1 -0
  276. package/dist/service/logs/metric/sim-logs-metric-transformation.d.ts +45 -0
  277. package/dist/service/logs/metric/sim-logs-metric-transformation.js +127 -0
  278. package/dist/service/logs/sdk/sim-logs-sdk-command-router.js +12 -0
  279. package/dist/service/logs/sim-logs-commands.d.ts +12 -0
  280. package/dist/service/logs/sim-logs-commands.js +17 -0
  281. package/dist/service/logs/sim-logs-metric-operations.d.ts +31 -0
  282. package/dist/service/logs/sim-logs-metric-operations.js +37 -0
  283. package/dist/service/logs/sim-logs.d.ts +4 -3
  284. package/dist/service/logs/sim-logs.js +4 -3
  285. package/dist/service/logs/write/sim-logs-service-writer.d.ts +3 -0
  286. package/dist/service/logs/write/sim-logs-service-writer.js +5 -1
  287. package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-configuration.d.ts +32 -0
  288. package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-configuration.js +31 -1
  289. package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-expiry.d.ts +13 -2
  290. package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-expiry.js +18 -1
  291. package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-sweep.d.ts +17 -1
  292. package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-sweep.js +27 -3
  293. package/dist/service/s3/bucket/lifecycle/sim-s3-noncurrent-sweep.d.ts +45 -0
  294. package/dist/service/s3/bucket/lifecycle/sim-s3-noncurrent-sweep.js +90 -0
  295. package/dist/service/s3/bucket/lock/sim-s3-bucket-object-lock.d.ts +42 -0
  296. package/dist/service/s3/bucket/lock/sim-s3-bucket-object-lock.js +59 -0
  297. package/dist/service/s3/bucket/lock/sim-s3-default-retention.d.ts +8 -0
  298. package/dist/service/s3/bucket/lock/sim-s3-default-retention.js +15 -0
  299. package/dist/service/s3/bucket/lock/sim-s3-object-lock-configuration.d.ts +49 -0
  300. package/dist/service/s3/bucket/lock/sim-s3-object-lock-configuration.js +102 -0
  301. package/dist/service/s3/bucket/lock/sim-s3-object-lock-output.d.ts +14 -0
  302. package/dist/service/s3/bucket/lock/sim-s3-object-lock-output.js +1 -0
  303. package/dist/service/s3/bucket/lock/sim-s3-object-lock.d.ts +62 -0
  304. package/dist/service/s3/bucket/lock/sim-s3-object-lock.js +100 -0
  305. package/dist/service/s3/bucket/lock/sim-s3-object-retention.d.ts +55 -0
  306. package/dist/service/s3/bucket/lock/sim-s3-object-retention.js +82 -0
  307. package/dist/service/s3/bucket/notification/sim-s3-notification-event.d.ts +1 -1
  308. package/dist/service/s3/bucket/notification/sim-s3-notification-event.js +9 -1
  309. package/dist/service/s3/bucket/notification/sim-s3-unsimulated-notification-events.d.ts +1 -1
  310. package/dist/service/s3/bucket/notification/sim-s3-unsimulated-notification-events.js +1 -2
  311. package/dist/service/s3/bucket/sim-s3-bucket-objects.d.ts +114 -0
  312. package/dist/service/s3/bucket/sim-s3-bucket-objects.js +148 -0
  313. package/dist/service/s3/bucket/sim-s3-bucket.d.ts +30 -29
  314. package/dist/service/s3/bucket/sim-s3-bucket.js +42 -45
  315. package/dist/service/s3/bucket/sim-s3-object-deletion.d.ts +30 -0
  316. package/dist/service/s3/bucket/sim-s3-object-deletion.js +29 -0
  317. package/dist/service/s3/bucket/versioning/sim-s3-bucket-versioning.d.ts +61 -0
  318. package/dist/service/s3/bucket/versioning/sim-s3-bucket-versioning.js +65 -0
  319. package/dist/service/s3/bucket/versioning/sim-s3-bucket-versions.d.ts +97 -0
  320. package/dist/service/s3/bucket/versioning/sim-s3-bucket-versions.js +176 -0
  321. package/dist/service/s3/bucket/versioning/sim-s3-compare-keys.d.ts +10 -0
  322. package/dist/service/s3/bucket/versioning/sim-s3-compare-keys.js +16 -0
  323. package/dist/service/s3/bucket/versioning/sim-s3-object-version.d.ts +85 -0
  324. package/dist/service/s3/bucket/versioning/sim-s3-object-version.js +101 -0
  325. package/dist/service/s3/bucket/versioning/sim-s3-object-versions.d.ts +52 -0
  326. package/dist/service/s3/bucket/versioning/sim-s3-object-versions.js +91 -0
  327. package/dist/service/s3/bucket/versioning/sim-s3-version-page.d.ts +32 -0
  328. package/dist/service/s3/bucket/versioning/sim-s3-version-page.js +45 -0
  329. package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-configuration.d.ts +0 -5
  330. package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-configuration.js +3 -14
  331. package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-fields.d.ts +18 -1
  332. package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-fields.js +34 -1
  333. package/dist/service/s3/cfn/bucket/lock/sim-cfn-s3-bucket-object-lock-configuration.d.ts +37 -0
  334. package/dist/service/s3/cfn/bucket/lock/sim-cfn-s3-bucket-object-lock-configuration.js +78 -0
  335. package/dist/service/s3/cfn/bucket/replication/sim-cfn-s3-bucket-replication-rules.d.ts +20 -0
  336. package/dist/service/s3/cfn/bucket/replication/sim-cfn-s3-bucket-replication-rules.js +107 -0
  337. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-configurator.d.ts +14 -7
  338. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-configurator.js +29 -37
  339. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-declared-configurations.d.ts +62 -0
  340. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-declared-configurations.js +89 -0
  341. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-names.d.ts +9 -5
  342. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-names.js +16 -16
  343. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-rules.d.ts +9 -5
  344. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-rules.js +17 -6
  345. package/dist/service/s3/cfn/bucket/versioning/sim-cfn-s3-bucket-versioning-configuration.d.ts +19 -0
  346. package/dist/service/s3/cfn/bucket/versioning/sim-cfn-s3-bucket-versioning-configuration.js +28 -0
  347. package/dist/service/s3/command/authorize/sim-s3-authorize-action.d.ts +24 -0
  348. package/dist/service/s3/command/authorize/sim-s3-authorize-action.js +30 -0
  349. package/dist/service/s3/command/complete-multipart-upload/complete-multipart-upload.command.d.ts +2 -0
  350. package/dist/service/s3/command/complete-multipart-upload/complete-multipart-upload.handler.js +3 -1
  351. package/dist/service/s3/command/copy-object/copy-object.command.d.ts +3 -1
  352. package/dist/service/s3/command/copy-object/copy-object.handler.js +3 -1
  353. package/dist/service/s3/command/delete-object/delete-object-version-removal.d.ts +50 -0
  354. package/dist/service/s3/command/delete-object/delete-object-version-removal.js +52 -0
  355. package/dist/service/s3/command/delete-object/delete-object.command.d.ts +19 -2
  356. package/dist/service/s3/command/delete-object/delete-object.handler.d.ts +7 -1
  357. package/dist/service/s3/command/delete-object/delete-object.handler.js +28 -16
  358. package/dist/service/s3/command/delete-object/sim-s3-notify-deleted.d.ts +24 -0
  359. package/dist/service/s3/command/delete-object/sim-s3-notify-deleted.js +32 -0
  360. package/dist/service/s3/command/delete-objects/delete-object-attempt.d.ts +6 -2
  361. package/dist/service/s3/command/delete-objects/delete-object-attempt.js +6 -2
  362. package/dist/service/s3/command/delete-objects/delete-objects-key-removal.js +10 -9
  363. package/dist/service/s3/command/delete-objects/delete-objects-outcome.js +9 -1
  364. package/dist/service/s3/command/delete-objects/delete-objects.command.d.ts +6 -0
  365. package/dist/service/s3/command/get-bucket-versioning/get-bucket-versioning.command.d.ts +23 -0
  366. package/dist/service/s3/command/get-bucket-versioning/get-bucket-versioning.command.js +1 -0
  367. package/dist/service/s3/command/get-bucket-versioning/get-bucket-versioning.handler.d.ts +31 -0
  368. package/dist/service/s3/command/get-bucket-versioning/get-bucket-versioning.handler.js +40 -0
  369. package/dist/service/s3/command/get-object/get-object-loader.d.ts +3 -2
  370. package/dist/service/s3/command/get-object/get-object-loader.js +9 -4
  371. package/dist/service/s3/command/get-object/get-object.command.d.ts +9 -1
  372. package/dist/service/s3/command/get-object/get-object.handler.js +1 -1
  373. package/dist/service/s3/command/get-object-lock-configuration/get-object-lock-configuration.command.d.ts +25 -0
  374. package/dist/service/s3/command/get-object-lock-configuration/get-object-lock-configuration.command.js +1 -0
  375. package/dist/service/s3/command/get-object-lock-configuration/get-object-lock-configuration.handler.d.ts +31 -0
  376. package/dist/service/s3/command/get-object-lock-configuration/get-object-lock-configuration.handler.js +41 -0
  377. package/dist/service/s3/command/head-object/head-object-loader.d.ts +1 -1
  378. package/dist/service/s3/command/head-object/head-object-loader.js +7 -3
  379. package/dist/service/s3/command/head-object/head-object.command.d.ts +9 -1
  380. package/dist/service/s3/command/head-object/head-object.handler.js +1 -1
  381. package/dist/service/s3/command/list-object-versions/list-object-versions-listing.d.ts +31 -0
  382. package/dist/service/s3/command/list-object-versions/list-object-versions-listing.js +55 -0
  383. package/dist/service/s3/command/list-object-versions/list-object-versions-summaries.d.ts +17 -0
  384. package/dist/service/s3/command/list-object-versions/list-object-versions-summaries.js +34 -0
  385. package/dist/service/s3/command/list-object-versions/list-object-versions.command.d.ts +59 -0
  386. package/dist/service/s3/command/list-object-versions/list-object-versions.command.js +1 -0
  387. package/dist/service/s3/command/list-object-versions/list-object-versions.handler.d.ts +34 -0
  388. package/dist/service/s3/command/list-object-versions/list-object-versions.handler.js +62 -0
  389. package/dist/service/s3/command/object/sim-s3-read-object-version.d.ts +34 -0
  390. package/dist/service/s3/command/object/sim-s3-read-object-version.js +52 -0
  391. package/dist/service/s3/command/object-lock/sim-s3-locked-version.d.ts +11 -0
  392. package/dist/service/s3/command/object-lock/sim-s3-locked-version.js +27 -0
  393. package/dist/service/s3/command/object-lock/sim-s3-object-lock-authorizer.d.ts +42 -0
  394. package/dist/service/s3/command/object-lock/sim-s3-object-lock-authorizer.js +66 -0
  395. package/dist/service/s3/command/object-lock/sim-s3-object-lock-commands.d.ts +30 -0
  396. package/dist/service/s3/command/object-lock/sim-s3-object-lock-commands.js +41 -0
  397. package/dist/service/s3/command/put-bucket-versioning/put-bucket-versioning.command.d.ts +21 -0
  398. package/dist/service/s3/command/put-bucket-versioning/put-bucket-versioning.command.js +1 -0
  399. package/dist/service/s3/command/put-bucket-versioning/put-bucket-versioning.handler.d.ts +31 -0
  400. package/dist/service/s3/command/put-bucket-versioning/put-bucket-versioning.handler.js +44 -0
  401. package/dist/service/s3/command/put-object/put-object.command.d.ts +3 -0
  402. package/dist/service/s3/command/put-object/put-object.handler.js +10 -10
  403. package/dist/service/s3/command/put-object-legal-hold/put-object-legal-hold.command.d.ts +24 -0
  404. package/dist/service/s3/command/put-object-legal-hold/put-object-legal-hold.command.js +1 -0
  405. package/dist/service/s3/command/put-object-legal-hold/put-object-legal-hold.handler.d.ts +32 -0
  406. package/dist/service/s3/command/put-object-legal-hold/put-object-legal-hold.handler.js +41 -0
  407. package/dist/service/s3/command/put-object-lock-configuration/put-object-lock-configuration.command.d.ts +21 -0
  408. package/dist/service/s3/command/put-object-lock-configuration/put-object-lock-configuration.command.js +1 -0
  409. package/dist/service/s3/command/put-object-lock-configuration/put-object-lock-configuration.handler.d.ts +32 -0
  410. package/dist/service/s3/command/put-object-lock-configuration/put-object-lock-configuration.handler.js +47 -0
  411. package/dist/service/s3/command/put-object-retention/put-object-retention.command.d.ts +29 -0
  412. package/dist/service/s3/command/put-object-retention/put-object-retention.command.js +1 -0
  413. package/dist/service/s3/command/put-object-retention/put-object-retention.handler.d.ts +31 -0
  414. package/dist/service/s3/command/put-object-retention/put-object-retention.handler.js +42 -0
  415. package/dist/service/s3/command/sim-s3-command.types.d.ts +7 -0
  416. package/dist/service/s3/command/versioning/sim-s3-versioning-authorizer.d.ts +35 -0
  417. package/dist/service/s3/command/versioning/sim-s3-versioning-authorizer.js +57 -0
  418. package/dist/service/s3/command/versioning/sim-s3-versioning-commands.d.ts +26 -0
  419. package/dist/service/s3/command/versioning/sim-s3-versioning-commands.js +34 -0
  420. package/dist/service/s3/command/versioning/sim-s3-versioning-configuration-validation.d.ts +13 -0
  421. package/dist/service/s3/command/versioning/sim-s3-versioning-configuration-validation.js +28 -0
  422. package/dist/service/s3/error/sim-s3-object-lock.error.d.ts +22 -0
  423. package/dist/service/s3/error/sim-s3-object-lock.error.js +26 -0
  424. package/dist/service/s3/error/sim-s3.error.d.ts +22 -0
  425. package/dist/service/s3/error/sim-s3.error.js +26 -0
  426. package/dist/service/s3/notification/event/sim-s3-event-records.js +3 -0
  427. package/dist/service/s3/notification/event/sim-s3-event.type.d.ts +5 -3
  428. package/dist/service/s3/notification/event/sim-s3-object-event-builder.d.ts +15 -0
  429. package/dist/service/s3/notification/event/sim-s3-object-event-builder.js +4 -1
  430. package/dist/service/s3/notification/event/sim-s3-object-event.d.ts +6 -0
  431. package/dist/service/s3/notification/event/sim-s3-object-event.js +2 -0
  432. package/dist/service/s3/notification/sim-s3-object-notifier.d.ts +1 -1
  433. package/dist/service/s3/notification/sim-s3-object-notifier.js +2 -2
  434. package/dist/service/s3/sdk/sim-s3-sdk-bucket-routes.d.ts +10 -0
  435. package/dist/service/s3/sdk/sim-s3-sdk-bucket-routes.js +84 -0
  436. package/dist/service/s3/sdk/sim-s3-sdk-command-router.js +6 -132
  437. package/dist/service/s3/sdk/sim-s3-sdk-object-lock-routes.d.ts +10 -0
  438. package/dist/service/s3/sdk/sim-s3-sdk-object-lock-routes.js +28 -0
  439. package/dist/service/s3/sdk/sim-s3-sdk-object-routes.d.ts +7 -0
  440. package/dist/service/s3/sdk/sim-s3-sdk-object-routes.js +80 -0
  441. package/dist/service/s3/sim-s3-commands.d.ts +4 -0
  442. package/dist/service/s3/sim-s3-commands.js +6 -0
  443. package/dist/service/s3/sim-s3-operations.d.ts +5 -5
  444. package/dist/service/s3/sim-s3-operations.js +5 -6
  445. package/dist/service/s3/sim-s3-version-operations.d.ts +32 -0
  446. package/dist/service/s3/sim-s3-version-operations.js +45 -0
  447. package/dist/service/scheduler/command/schedule/schedule.command.d.ts +9 -2
  448. package/dist/service/scheduler/command/schedule/sim-scheduler-described-schedule.js +2 -0
  449. package/dist/service/scheduler/command/schedule/sim-scheduler-unsimulated-target.js +0 -6
  450. package/dist/service/scheduler/command/sim-scheduler-command.types.d.ts +1 -1
  451. package/dist/service/scheduler/command/sim-scheduler-commands.js +1 -0
  452. package/dist/service/scheduler/delivery/sim-aws-scheduler-dead-letters.d.ts +17 -0
  453. package/dist/service/scheduler/delivery/sim-aws-scheduler-dead-letters.js +29 -0
  454. package/dist/service/scheduler/delivery/sim-aws-scheduler-delivery-targets.d.ts +6 -1
  455. package/dist/service/scheduler/delivery/sim-aws-scheduler-delivery-targets.js +9 -0
  456. package/dist/service/scheduler/delivery/sim-scheduler-dead-letter-queue.d.ts +18 -0
  457. package/dist/service/scheduler/delivery/sim-scheduler-dead-letter-queue.js +62 -0
  458. package/dist/service/scheduler/delivery/sim-scheduler-delivery-attempt.d.ts +29 -0
  459. package/dist/service/scheduler/delivery/sim-scheduler-delivery-attempt.js +81 -0
  460. package/dist/service/scheduler/delivery/sim-scheduler-delivery-function.js +9 -5
  461. package/dist/service/scheduler/delivery/sim-scheduler-delivery.d.ts +11 -0
  462. package/dist/service/scheduler/delivery/sim-scheduler-no-delivery-targets.d.ts +5 -1
  463. package/dist/service/scheduler/delivery/sim-scheduler-no-delivery-targets.js +8 -0
  464. package/dist/service/scheduler/delivery/sim-scheduler-target-delivery.d.ts +4 -1
  465. package/dist/service/scheduler/delivery/sim-scheduler-target-delivery.js +20 -15
  466. package/dist/service/scheduler/index.d.ts +1 -1
  467. package/dist/service/scheduler/target/sim-scheduler-dead-letter-config.d.ts +15 -0
  468. package/dist/service/scheduler/target/sim-scheduler-dead-letter-config.js +24 -0
  469. package/dist/service/scheduler/target/sim-scheduler-retry-policy.d.ts +20 -0
  470. package/dist/service/scheduler/target/sim-scheduler-retry-policy.js +37 -0
  471. package/dist/service/scheduler/target/sim-scheduler-target.d.ts +6 -0
  472. package/dist/service/scheduler/target/sim-scheduler-target.js +12 -0
  473. package/dist/service/ses/command/configuration-set/sim-ses-configuration-set-commands.js +13 -5
  474. package/dist/service/ses/command/configuration-set/sim-ses-configuration-set-options.d.ts +1 -1
  475. package/dist/service/ses/command/configuration-set/sim-ses-configuration-set-options.js +9 -9
  476. package/dist/service/ses/command/send/send.command.d.ts +10 -1
  477. package/dist/service/ses/command/send/sim-ses-read-content.d.ts +2 -1
  478. package/dist/service/ses/command/send/sim-ses-send-email.js +1 -0
  479. package/dist/service/ses/command/send/sim-ses-service-send.js +1 -0
  480. package/dist/service/ses/command/send/sim-ses-simple-content.js +26 -5
  481. package/dist/service/ses/command/send/sim-ses-template-send.js +1 -0
  482. package/dist/service/ses/command/suppression/suppression.command.d.ts +3 -2
  483. package/dist/service/ses/configuration-set/sim-ses-configuration-set.d.ts +9 -10
  484. package/dist/service/ses/configuration-set/sim-ses-configuration-set.js +7 -8
  485. package/dist/service/ses/email/sim-ses-sent-email-store.d.ts +8 -0
  486. package/dist/service/ses/email/sim-ses-sent-email-store.js +17 -0
  487. package/dist/service/ses/email/sim-ses-sent-email.d.ts +18 -0
  488. package/dist/service/ses/email/sim-ses-sent-email.js +3 -0
  489. package/dist/service/ses/error/sim-ses.error.d.ts +10 -0
  490. package/dist/service/ses/error/sim-ses.error.js +10 -0
  491. package/dist/service/ses/feedback/sim-ses-feedback-recorder.d.ts +34 -0
  492. package/dist/service/ses/feedback/sim-ses-feedback-recorder.js +55 -0
  493. package/dist/service/ses/index.d.ts +3 -2
  494. package/dist/service/ses/index.js +2 -1
  495. package/dist/service/ses/sim-ses-commands.d.ts +2 -0
  496. package/dist/service/ses/sim-ses-commands.js +9 -0
  497. package/dist/service/ses/sim-ses-configuration-sets.d.ts +4 -4
  498. package/dist/service/ses/sim-ses-configuration-sets.js +4 -4
  499. package/dist/service/ses/sim-ses-suppression.d.ts +3 -2
  500. package/dist/service/ses/sim-ses-suppression.js +3 -2
  501. package/dist/service/ses/sim-ses-v2.d.ts +13 -0
  502. package/dist/service/ses/sim-ses-v2.js +13 -0
  503. package/dist/service/ses/suppression/sim-ses-suppressed-destination.d.ts +3 -4
  504. package/dist/service/ses/suppression/sim-ses-suppressed-destination.js +3 -4
  505. package/dist/service/ses/suppression/sim-ses-suppression-list.d.ts +4 -4
  506. package/dist/service/ses/suppression/sim-ses-suppression-list.js +4 -4
  507. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-encryption-rules.d.ts +15 -0
  508. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-encryption-rules.js +33 -0
  509. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-properties.d.ts +16 -0
  510. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-properties.js +33 -1
  511. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-names.d.ts +12 -6
  512. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-names.js +18 -13
  513. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-rules.d.ts +1 -0
  514. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-rules.js +9 -1
  515. package/dist/terraform/map/sim-tf-map-sqs-redrive.d.ts +4 -3
  516. package/dist/terraform/map/sim-tf-map-sqs-redrive.js +4 -3
  517. package/docs/README.md +1 -0
  518. package/docs/services/backup/README.md +553 -0
  519. package/docs/services/cloudformation/README.md +16 -6
  520. package/docs/services/cloudwatch/README.md +159 -3
  521. package/docs/services/cognito/README.md +370 -7
  522. package/docs/services/lambda/README.md +28 -0
  523. package/docs/services/logs/README.md +284 -3
  524. package/docs/services/s3/README.md +463 -20
  525. package/docs/services/scheduler/README.md +48 -9
  526. package/docs/services/ses/README.md +164 -41
  527. package/docs/services/sqs/README.md +47 -10
  528. package/llms.txt +1 -0
  529. package/package.json +7 -2
@@ -0,0 +1,176 @@
1
+ import { randomUUID } from "node:crypto";
2
+ import { SimS3BucketVersioning, simS3NullVersionId, } from "./sim-s3-bucket-versioning.js";
3
+ import { SimS3ObjectVersion } from "./sim-s3-object-version.js";
4
+ import { SimS3ObjectVersions } from "./sim-s3-object-versions.js";
5
+ /**
6
+ * The versioning of one simulated S3 Bucket, and the versions it has kept.
7
+ *
8
+ * Storage holds the current Object under each key and nothing else, which is
9
+ * what lets every reader of a Bucket carry on unchanged. The version history
10
+ * holds every version including that current one, and the two are kept in step
11
+ * here: writing a delete marker takes the Object out of storage, and deleting
12
+ * a version puts back whatever the removal left current.
13
+ */
14
+ export class SimS3BucketVersions {
15
+ versioning = SimS3BucketVersioning.unversioned();
16
+ history = new SimS3ObjectVersions();
17
+ /**
18
+ * How this Bucket is configured.
19
+ */
20
+ get configuration() {
21
+ return this.versioning;
22
+ }
23
+ /**
24
+ * Whether this Bucket holds a version history.
25
+ */
26
+ get keepsVersions() {
27
+ return this.versioning.keepsVersions;
28
+ }
29
+ /**
30
+ * Apply a versioning configuration to this Bucket.
31
+ *
32
+ * Enabling versioning over a Bucket that already holds Objects gives each of
33
+ * them the null version id, which is what real S3 does with the Objects
34
+ * written before the configuration arrived. They become the current version
35
+ * of their key and stay readable by that id afterwards.
36
+ */
37
+ configure(versioning, stored) {
38
+ const seeding = !this.versioning.keepsVersions && versioning.keepsVersions;
39
+ this.versioning = versioning;
40
+ if (!seeding) {
41
+ return;
42
+ }
43
+ for (const object of stored) {
44
+ this.history.add(SimS3ObjectVersion.nullVersionOf(object));
45
+ }
46
+ }
47
+ /**
48
+ * Record a write, answering the version it was given.
49
+ *
50
+ * A Bucket with versioning enabled gets a new id every time. A suspended one
51
+ * writes over the null version, because real S3 holds one Object under that
52
+ * id rather than a run of them. A Bucket nobody has configured records
53
+ * nothing at all.
54
+ */
55
+ recordPut(object) {
56
+ if (!this.versioning.keepsVersions) {
57
+ return undefined;
58
+ }
59
+ const version = new SimS3ObjectVersion({
60
+ versionId: this.nextVersionId(),
61
+ key: object.key,
62
+ createdAt: object.lastModified,
63
+ object,
64
+ });
65
+ if (this.versioning.isEnabled) {
66
+ this.history.add(version);
67
+ }
68
+ else {
69
+ this.history.replace(version);
70
+ }
71
+ return version;
72
+ }
73
+ /**
74
+ * Write a delete marker over a key and take the Object out of storage.
75
+ *
76
+ * Real S3 writes the marker whether or not the key held anything, so a
77
+ * delete of a key that was never written still leaves one behind.
78
+ */
79
+ async markDeleted(storage, key, at) {
80
+ const marker = new SimS3ObjectVersion({
81
+ versionId: this.nextVersionId(),
82
+ key,
83
+ createdAt: at,
84
+ });
85
+ if (this.versioning.isEnabled) {
86
+ this.history.add(marker);
87
+ }
88
+ else {
89
+ this.history.replace(marker);
90
+ }
91
+ await storage.deleteObject(key);
92
+ return marker;
93
+ }
94
+ /**
95
+ * Remove one version permanently, answering the version that went.
96
+ *
97
+ * Whatever the removal leaves at the head of the key becomes current, so
98
+ * deleting a delete marker brings the Object under it back and deleting the
99
+ * current Object exposes the one written before it.
100
+ */
101
+ async deleteVersion(storage, key, versionId) {
102
+ if (!this.versioning.keepsVersions) {
103
+ return await this.removeNullVersion(storage, key, versionId);
104
+ }
105
+ const removed = this.history.remove(key, versionId);
106
+ if (removed !== undefined) {
107
+ await this.restoreCurrent(storage, key);
108
+ }
109
+ return removed;
110
+ }
111
+ /**
112
+ * One version of one key, by the id it was given.
113
+ */
114
+ find(key, versionId) {
115
+ return this.history.find(key, versionId);
116
+ }
117
+ /**
118
+ * The version a read of this key without a version id answers with.
119
+ */
120
+ current(key) {
121
+ return this.history.current(key);
122
+ }
123
+ /**
124
+ * Take a version a lifecycle rule expired out of the history.
125
+ *
126
+ * Storage is left alone, unlike `deleteVersion`. A rule for noncurrent
127
+ * versions never reaches the current one, and a delete marker holds no
128
+ * bytes, so nothing this removes was in storage to begin with.
129
+ */
130
+ removeExpired(key, versionId) {
131
+ this.history.remove(key, versionId);
132
+ }
133
+ /**
134
+ * Every version this Bucket holds, in the order a listing reports them.
135
+ */
136
+ list(prefix) {
137
+ return this.history.list(prefix);
138
+ }
139
+ /**
140
+ * Remove the null version from a Bucket that keeps no history.
141
+ *
142
+ * Real S3 gives every Object in such a Bucket the null version id, so a
143
+ * delete naming that id removes the Object rather than doing nothing. Any
144
+ * other id names a version the Bucket never issued.
145
+ */
146
+ async removeNullVersion(storage, key, versionId) {
147
+ const stored = versionId === simS3NullVersionId
148
+ ? await storage.getObject(key)
149
+ : undefined;
150
+ if (stored === undefined) {
151
+ return undefined;
152
+ }
153
+ await storage.deleteObject(key);
154
+ return SimS3ObjectVersion.nullVersionOf(stored);
155
+ }
156
+ /**
157
+ * Make storage hold whatever is now current under a key.
158
+ */
159
+ async restoreCurrent(storage, key) {
160
+ const current = this.history.current(key);
161
+ if (current === undefined || current.isDeleteMarker) {
162
+ await storage.deleteObject(key);
163
+ return;
164
+ }
165
+ await storage.putObject(current.object);
166
+ }
167
+ /**
168
+ * The id the next version of anything gets.
169
+ *
170
+ * Real S3 version ids are opaque, and a suspended Bucket writes under the
171
+ * null id rather than minting one.
172
+ */
173
+ nextVersionId() {
174
+ return this.versioning.isEnabled ? randomUUID() : simS3NullVersionId;
175
+ }
176
+ }
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Order two Object keys the way S3 orders them.
3
+ *
4
+ * S3 orders keys by their UTF-8 bytes. Comparing the strings directly agrees
5
+ * with that for every key outside the supplementary planes, and `localeCompare`
6
+ * does not, because it collates by locale and can order the same two keys
7
+ * differently on two runtimes. `compareObjectKeys` in the Object listing
8
+ * compares the same way for the same reason.
9
+ */
10
+ export declare function compareSimS3Keys(left: string, right: string): number;
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Order two Object keys the way S3 orders them.
3
+ *
4
+ * S3 orders keys by their UTF-8 bytes. Comparing the strings directly agrees
5
+ * with that for every key outside the supplementary planes, and `localeCompare`
6
+ * does not, because it collates by locale and can order the same two keys
7
+ * differently on two runtimes. `compareObjectKeys` in the Object listing
8
+ * compares the same way for the same reason.
9
+ */
10
+ export function compareSimS3Keys(left, right) {
11
+ /* v8 ignore if -- a Bucket holds one Object per key, so no two keys are equal */
12
+ if (left === right) {
13
+ return 0;
14
+ }
15
+ return left < right ? -1 : 1;
16
+ }
@@ -0,0 +1,85 @@
1
+ import { SimS3ObjectLock } from "../lock/sim-s3-object-lock.js";
2
+ import type { SimS3Object } from "../../object/s3-object.js";
3
+ interface SimS3ObjectVersionProperties {
4
+ readonly versionId: string;
5
+ readonly key: string;
6
+ readonly createdAt: Date;
7
+ /**
8
+ * The Object this version holds. A version without one is a delete marker,
9
+ * which records that the key was deleted and holds no bytes.
10
+ */
11
+ readonly object?: SimS3Object | undefined;
12
+ }
13
+ /**
14
+ * One version of one key in a simulated S3 Bucket.
15
+ *
16
+ * A version is either an Object or a delete marker, and both are versions in
17
+ * every other respect. Both carry an id, both appear in a listing, and both
18
+ * can be deleted by naming that id. Modelling the marker as a version without
19
+ * an Object keeps the ordering in one list, which is what decides which
20
+ * version is current.
21
+ */
22
+ export declare class SimS3ObjectVersion {
23
+ readonly versionId: string;
24
+ readonly key: string;
25
+ /**
26
+ * What Object Lock holds against this version.
27
+ *
28
+ * Every version carries one, empty until something is put on it. A Bucket
29
+ * without Object Lock leaves every one of them empty, and an empty lock
30
+ * refuses nothing, so the delete path asks the same question either way.
31
+ */
32
+ readonly lock: SimS3ObjectLock;
33
+ private displaced;
34
+ private readonly createdAt;
35
+ private readonly stored;
36
+ constructor(properties: SimS3ObjectVersionProperties);
37
+ /**
38
+ * The version an Object in a Bucket that keeps none reads back under.
39
+ *
40
+ * Real S3 gives every Object in an unversioned Bucket the null version id,
41
+ * and answers ListObjectVersions for one as a history a single entry deep.
42
+ */
43
+ static nullVersionOf(object: SimS3Object): SimS3ObjectVersion;
44
+ /**
45
+ * Whether this version records a deletion instead of holding bytes.
46
+ */
47
+ get isDeleteMarker(): boolean;
48
+ /**
49
+ * The Object this version holds.
50
+ *
51
+ * A delete marker has none, and asking for one is a caller that skipped
52
+ * `isDeleteMarker`. Reporting that as an error beats handing back nothing,
53
+ * which reads as an empty Object further down.
54
+ */
55
+ get object(): SimS3Object;
56
+ /**
57
+ * When this version came into being, in simulated time.
58
+ *
59
+ * A copy, because a Date is mutable and every read of a version hands this
60
+ * one out.
61
+ */
62
+ get lastModified(): Date;
63
+ /**
64
+ * When this version stopped being the current one, if it has.
65
+ *
66
+ * A `NoncurrentVersionExpiration` counts from here rather than from the
67
+ * write, because a version written a year ago and displaced yesterday has
68
+ * been noncurrent for a day. Real S3 measures it the same way.
69
+ */
70
+ get noncurrentSince(): Date | undefined;
71
+ /**
72
+ * Record that a newer version has taken this one's place.
73
+ *
74
+ * Only the first displacement counts. Removing the version that displaced
75
+ * this one makes it current again, and a later write displaces it a second
76
+ * time, which real S3 measures from the later of the two.
77
+ */
78
+ displacedAt(instant: Date): void;
79
+ /**
80
+ * Record that this version is current again, which is what removing the
81
+ * version above it does.
82
+ */
83
+ restored(): void;
84
+ }
85
+ export {};
@@ -0,0 +1,101 @@
1
+ import { assertDefined } from "../../../../util/type-guard/defined.js";
2
+ import { SimS3ObjectLock } from "../lock/sim-s3-object-lock.js";
3
+ import { simS3NullVersionId } from "./sim-s3-bucket-versioning.js";
4
+ /**
5
+ * One version of one key in a simulated S3 Bucket.
6
+ *
7
+ * A version is either an Object or a delete marker, and both are versions in
8
+ * every other respect. Both carry an id, both appear in a listing, and both
9
+ * can be deleted by naming that id. Modelling the marker as a version without
10
+ * an Object keeps the ordering in one list, which is what decides which
11
+ * version is current.
12
+ */
13
+ export class SimS3ObjectVersion {
14
+ versionId;
15
+ key;
16
+ /**
17
+ * What Object Lock holds against this version.
18
+ *
19
+ * Every version carries one, empty until something is put on it. A Bucket
20
+ * without Object Lock leaves every one of them empty, and an empty lock
21
+ * refuses nothing, so the delete path asks the same question either way.
22
+ */
23
+ lock = new SimS3ObjectLock();
24
+ displaced;
25
+ createdAt;
26
+ stored;
27
+ constructor(properties) {
28
+ this.versionId = properties.versionId;
29
+ this.key = properties.key;
30
+ this.createdAt = new Date(properties.createdAt);
31
+ this.stored = properties.object;
32
+ }
33
+ /**
34
+ * The version an Object in a Bucket that keeps none reads back under.
35
+ *
36
+ * Real S3 gives every Object in an unversioned Bucket the null version id,
37
+ * and answers ListObjectVersions for one as a history a single entry deep.
38
+ */
39
+ static nullVersionOf(object) {
40
+ return new SimS3ObjectVersion({
41
+ versionId: simS3NullVersionId,
42
+ key: object.key,
43
+ createdAt: object.lastModified,
44
+ object,
45
+ });
46
+ }
47
+ /**
48
+ * Whether this version records a deletion instead of holding bytes.
49
+ */
50
+ get isDeleteMarker() {
51
+ return this.stored === undefined;
52
+ }
53
+ /**
54
+ * The Object this version holds.
55
+ *
56
+ * A delete marker has none, and asking for one is a caller that skipped
57
+ * `isDeleteMarker`. Reporting that as an error beats handing back nothing,
58
+ * which reads as an empty Object further down.
59
+ */
60
+ get object() {
61
+ assertDefined(this.stored, `The Object of S3 version ${this.versionId} of ${this.key}, which is a delete marker`);
62
+ return this.stored;
63
+ }
64
+ /**
65
+ * When this version came into being, in simulated time.
66
+ *
67
+ * A copy, because a Date is mutable and every read of a version hands this
68
+ * one out.
69
+ */
70
+ get lastModified() {
71
+ return new Date(this.createdAt);
72
+ }
73
+ /**
74
+ * When this version stopped being the current one, if it has.
75
+ *
76
+ * A `NoncurrentVersionExpiration` counts from here rather than from the
77
+ * write, because a version written a year ago and displaced yesterday has
78
+ * been noncurrent for a day. Real S3 measures it the same way.
79
+ */
80
+ get noncurrentSince() {
81
+ const displaced = this.displaced;
82
+ return displaced === undefined ? undefined : new Date(displaced);
83
+ }
84
+ /**
85
+ * Record that a newer version has taken this one's place.
86
+ *
87
+ * Only the first displacement counts. Removing the version that displaced
88
+ * this one makes it current again, and a later write displaces it a second
89
+ * time, which real S3 measures from the later of the two.
90
+ */
91
+ displacedAt(instant) {
92
+ this.displaced = new Date(instant);
93
+ }
94
+ /**
95
+ * Record that this version is current again, which is what removing the
96
+ * version above it does.
97
+ */
98
+ restored() {
99
+ this.displaced = undefined;
100
+ }
101
+ }
@@ -0,0 +1,52 @@
1
+ import type { SimS3ObjectVersion } from "./sim-s3-object-version.js";
2
+ /**
3
+ * The versions one simulated S3 Bucket holds, by key.
4
+ *
5
+ * Each key's versions are kept newest first, which makes the current version
6
+ * the head of the list and keeps a listing in the order real S3 answers in.
7
+ * ListObjectVersions runs through the keys in ascending order and gives each
8
+ * key's versions newest first, so the two orderings together are the whole
9
+ * response shape.
10
+ */
11
+ export declare class SimS3ObjectVersions {
12
+ private readonly byKey;
13
+ /**
14
+ * Put a version at the head of its key, making it the current one.
15
+ *
16
+ * Whatever was at the head stops being current at that instant, and is told
17
+ * so, because a `NoncurrentVersionExpiration` counts from there.
18
+ */
19
+ add(version: SimS3ObjectVersion): void;
20
+ /**
21
+ * Put a version at the head of its key, dropping any other version sharing
22
+ * its id first.
23
+ *
24
+ * This is what a write to a suspended Bucket does. Every such write takes
25
+ * the null version id, and real S3 holds one version under that id rather
26
+ * than a run of them, so the new write replaces the old one in place.
27
+ */
28
+ replace(version: SimS3ObjectVersion): void;
29
+ /**
30
+ * The version a read of this key without a version id answers with.
31
+ */
32
+ current(key: string): SimS3ObjectVersion | undefined;
33
+ /**
34
+ * Every version of one key, newest first.
35
+ */
36
+ forKey(key: string): readonly SimS3ObjectVersion[];
37
+ /**
38
+ * One version of one key, by the id it was given.
39
+ */
40
+ find(key: string, versionId: string): SimS3ObjectVersion | undefined;
41
+ /**
42
+ * Remove one version of one key, answering the version that went.
43
+ *
44
+ * A key left with no versions is dropped rather than kept as an empty list,
45
+ * which is what stops a listing reporting keys nothing is stored under.
46
+ */
47
+ remove(key: string, versionId: string): SimS3ObjectVersion | undefined;
48
+ /**
49
+ * Every version this Bucket holds, in the order a listing reports them.
50
+ */
51
+ list(prefix?: string): readonly SimS3ObjectVersion[];
52
+ }
@@ -0,0 +1,91 @@
1
+ import { compareSimS3Keys } from "./sim-s3-compare-keys.js";
2
+ /**
3
+ * The versions one simulated S3 Bucket holds, by key.
4
+ *
5
+ * Each key's versions are kept newest first, which makes the current version
6
+ * the head of the list and keeps a listing in the order real S3 answers in.
7
+ * ListObjectVersions runs through the keys in ascending order and gives each
8
+ * key's versions newest first, so the two orderings together are the whole
9
+ * response shape.
10
+ */
11
+ export class SimS3ObjectVersions {
12
+ byKey = new Map();
13
+ /**
14
+ * Put a version at the head of its key, making it the current one.
15
+ *
16
+ * Whatever was at the head stops being current at that instant, and is told
17
+ * so, because a `NoncurrentVersionExpiration` counts from there.
18
+ */
19
+ add(version) {
20
+ const versions = this.byKey.get(version.key) ?? [];
21
+ versions[0]?.displacedAt(version.lastModified);
22
+ this.byKey.set(version.key, [version, ...versions]);
23
+ }
24
+ /**
25
+ * Put a version at the head of its key, dropping any other version sharing
26
+ * its id first.
27
+ *
28
+ * This is what a write to a suspended Bucket does. Every such write takes
29
+ * the null version id, and real S3 holds one version under that id rather
30
+ * than a run of them, so the new write replaces the old one in place.
31
+ */
32
+ replace(version) {
33
+ this.remove(version.key, version.versionId);
34
+ this.add(version);
35
+ }
36
+ /**
37
+ * The version a read of this key without a version id answers with.
38
+ */
39
+ current(key) {
40
+ return this.byKey.get(key)?.[0];
41
+ }
42
+ /**
43
+ * Every version of one key, newest first.
44
+ */
45
+ forKey(key) {
46
+ return this.byKey.get(key) ?? [];
47
+ }
48
+ /**
49
+ * One version of one key, by the id it was given.
50
+ */
51
+ find(key, versionId) {
52
+ return this.forKey(key).find((version) => version.versionId === versionId);
53
+ }
54
+ /**
55
+ * Remove one version of one key, answering the version that went.
56
+ *
57
+ * A key left with no versions is dropped rather than kept as an empty list,
58
+ * which is what stops a listing reporting keys nothing is stored under.
59
+ */
60
+ remove(key, versionId) {
61
+ const versions = this.byKey.get(key);
62
+ if (versions === undefined) {
63
+ return undefined;
64
+ }
65
+ const removed = versions.find((version) => version.versionId === versionId);
66
+ const kept = versions.filter((version) => version.versionId !== versionId);
67
+ if (kept.length === 0) {
68
+ this.byKey.delete(key);
69
+ }
70
+ else {
71
+ // Whatever the removal left at the head is current again, and stops
72
+ // counting towards a noncurrent expiry.
73
+ if (removed === versions[0]) {
74
+ kept[0]?.restored();
75
+ }
76
+ this.byKey.set(key, kept);
77
+ }
78
+ return removed;
79
+ }
80
+ /**
81
+ * Every version this Bucket holds, in the order a listing reports them.
82
+ */
83
+ list(prefix) {
84
+ return this.byKey
85
+ .keys()
86
+ .filter((key) => prefix === undefined || key.startsWith(prefix))
87
+ .toArray()
88
+ .toSorted(compareSimS3Keys)
89
+ .flatMap((key) => this.forKey(key));
90
+ }
91
+ }
@@ -0,0 +1,32 @@
1
+ import type { SimS3ObjectVersion } from "./sim-s3-object-version.js";
2
+ interface SimS3VersionPageRequest {
3
+ readonly versions: readonly SimS3ObjectVersion[];
4
+ readonly maxKeys: number;
5
+ /** The key the previous page ended on, resumed after rather than at. */
6
+ readonly keyMarker?: string | undefined;
7
+ /**
8
+ * The version the previous page ended on, within `keyMarker`. Without one
9
+ * the whole of that key is behind the marker.
10
+ */
11
+ readonly versionIdMarker?: string | undefined;
12
+ }
13
+ /**
14
+ * One page of a version listing, and whether the Bucket holds more.
15
+ */
16
+ export interface SimS3VersionPage {
17
+ readonly versions: readonly SimS3ObjectVersion[];
18
+ readonly isTruncated: boolean;
19
+ /** Where the next page resumes, present exactly when the listing is truncated. */
20
+ readonly nextKeyMarker: string | undefined;
21
+ readonly nextVersionIdMarker: string | undefined;
22
+ }
23
+ /**
24
+ * Take the page of a version listing that a request asked for.
25
+ *
26
+ * The markers are a pair rather than one value, because a key can hold more
27
+ * versions than a page has room for and resuming after the key would skip the
28
+ * rest of them. A `VersionIdMarker` resumes inside its key, and a `KeyMarker`
29
+ * on its own resumes at the key after it.
30
+ */
31
+ export declare function simS3VersionPage(request: SimS3VersionPageRequest): SimS3VersionPage;
32
+ export {};
@@ -0,0 +1,45 @@
1
+ /**
2
+ * Take the page of a version listing that a request asked for.
3
+ *
4
+ * The markers are a pair rather than one value, because a key can hold more
5
+ * versions than a page has room for and resuming after the key would skip the
6
+ * rest of them. A `VersionIdMarker` resumes inside its key, and a `KeyMarker`
7
+ * on its own resumes at the key after it.
8
+ */
9
+ export function simS3VersionPage(request) {
10
+ const remaining = simS3VersionsAfterMarker(request);
11
+ // A negative page size would slice versions off the end rather than take
12
+ // none, so a page with no room is empty rather than backwards.
13
+ const page = remaining.slice(0, Math.max(0, request.maxKeys));
14
+ const last = page.at(-1);
15
+ // A page that returned nothing has nowhere for a caller to carry on from, so
16
+ // it is complete however much the Bucket still holds. Reporting it truncated
17
+ // would offer a continuation that cannot exist, and a caller looping until
18
+ // the listing is complete would never stop. `simS3ObjectPage` says the same.
19
+ const isTruncated = last !== undefined && page.length < remaining.length;
20
+ return {
21
+ versions: page,
22
+ isTruncated,
23
+ nextKeyMarker: isTruncated ? last.key : undefined,
24
+ nextVersionIdMarker: isTruncated ? last.versionId : undefined,
25
+ };
26
+ }
27
+ /**
28
+ * The versions a listing has yet to report, in the order it reports them.
29
+ */
30
+ function simS3VersionsAfterMarker(request) {
31
+ const { versions, keyMarker, versionIdMarker } = request;
32
+ if (keyMarker === undefined) {
33
+ return versions;
34
+ }
35
+ if (versionIdMarker === undefined) {
36
+ return versions.filter((version) => version.key > keyMarker);
37
+ }
38
+ const resumeAt = versions.findIndex((version) => version.key === keyMarker && version.versionId === versionIdMarker);
39
+ // A marker pair naming a version that has since been deleted leaves the
40
+ // listing with the keys after that key, which is what real S3 falls back to
41
+ // rather than starting again from the top.
42
+ return resumeAt === -1
43
+ ? versions.filter((version) => version.key > keyMarker)
44
+ : versions.slice(resumeAt + 1);
45
+ }
@@ -22,9 +22,4 @@ export declare class SimCfnS3BucketLifecycleConfiguration {
22
22
  */
23
23
  read(): SimS3LifecycleConfiguration | undefined;
24
24
  private readRule;
25
- /**
26
- * The three flattened expiry fields, gathered under the one the request
27
- * carries. A rule stating none of them keeps no `Expiration` at all.
28
- */
29
- private expiration;
30
25
  }
@@ -1,6 +1,6 @@
1
1
  import { SimCfnValueShape } from "../../../../cloudformation/template/value/sim-cfn-value-shape.js";
2
2
  import { s3BucketResourceError } from "../error/sim-cfn-s3-bucket-error.js";
3
- import { simCfnS3CarriedRuleFields, simCfnS3LifecycleDate, simCfnS3StatedFields, } from "./sim-cfn-s3-bucket-lifecycle-fields.js";
3
+ import { simCfnS3CarriedRuleFields, simCfnS3RuleExpiration, simCfnS3RuleNoncurrentExpiration, simCfnS3StatedFields, } from "./sim-cfn-s3-bucket-lifecycle-fields.js";
4
4
  import { readSimCfnS3LifecycleTransitions } from "./sim-cfn-s3-bucket-lifecycle-transitions.js";
5
5
  /**
6
6
  * Reads the `LifecycleConfiguration` property of an AWS::S3::Bucket Resource
@@ -43,7 +43,8 @@ export class SimCfnS3BucketLifecycleConfiguration {
43
43
  ...simCfnS3CarriedRuleFields(rule),
44
44
  ...simCfnS3StatedFields({
45
45
  ID: rule["Id"],
46
- Expiration: this.expiration(rule),
46
+ Expiration: simCfnS3RuleExpiration(rule),
47
+ NoncurrentVersionExpiration: simCfnS3RuleNoncurrentExpiration(rule),
47
48
  Transitions: readSimCfnS3LifecycleTransitions({
48
49
  shape: this.shape,
49
50
  listed: rule["Transitions"],
@@ -53,16 +54,4 @@ export class SimCfnS3BucketLifecycleConfiguration {
53
54
  }),
54
55
  };
55
56
  }
56
- /**
57
- * The three flattened expiry fields, gathered under the one the request
58
- * carries. A rule stating none of them keeps no `Expiration` at all.
59
- */
60
- expiration(rule) {
61
- const expiration = {
62
- Date: simCfnS3LifecycleDate(rule["ExpirationDate"]),
63
- Days: rule["ExpirationInDays"],
64
- ExpiredObjectDeleteMarker: rule["ExpiredObjectDeleteMarker"],
65
- };
66
- return simCfnS3StatedFields(expiration);
67
- }
68
57
  }