@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
@@ -1,7 +1,9 @@
1
+ import type { SimCognitoPoolMetrics } from "../../metric/sim-cognito-pool-metrics.js";
1
2
  import type { SimCognitoAuthResolver } from "./sim-cognito-auth-resolver.js";
2
3
  import type { SimCognitoChallengeResponses } from "./sim-cognito-challenge-responses.js";
3
4
  import type { SimRespondToAuthChallengeCommand, SimRespondToAuthChallengeCommandOutput } from "./auth.command.js";
4
5
  interface SimCognitoRespondToChallengeProperties {
6
+ readonly poolMetrics: SimCognitoPoolMetrics;
5
7
  readonly authResolver: SimCognitoAuthResolver;
6
8
  readonly responses: SimCognitoChallengeResponses;
7
9
  }
@@ -13,6 +15,7 @@ interface SimCognitoRespondToChallengeProperties {
13
15
  * as real Cognito needs none for it.
14
16
  */
15
17
  export declare class SimCognitoRespondToChallenge {
18
+ private readonly poolMetrics;
16
19
  private readonly authResolver;
17
20
  private readonly responses;
18
21
  private readonly unsimulatedOptions;
@@ -1,3 +1,4 @@
1
+ import { countedSimCognitoAuth } from "../../metric/sim-cognito-counted-request.js";
1
2
  import { SimCognitoAuthParameters } from "./sim-cognito-auth-parameters.js";
2
3
  import { SimCognitoUnsimulatedAuthOptions } from "./sim-cognito-unsimulated-auth-options.js";
3
4
  /**
@@ -8,10 +9,12 @@ import { SimCognitoUnsimulatedAuthOptions } from "./sim-cognito-unsimulated-auth
8
9
  * as real Cognito needs none for it.
9
10
  */
10
11
  export class SimCognitoRespondToChallenge {
12
+ poolMetrics;
11
13
  authResolver;
12
14
  responses;
13
15
  unsimulatedOptions = new SimCognitoUnsimulatedAuthOptions();
14
16
  constructor(properties) {
17
+ this.poolMetrics = properties.poolMetrics;
15
18
  this.authResolver = properties.authResolver;
16
19
  this.responses = properties.responses;
17
20
  }
@@ -22,12 +25,15 @@ export class SimCognitoRespondToChallenge {
22
25
  const { input } = command;
23
26
  const { pool, client } = this.authResolver.client(input.ClientId);
24
27
  this.unsimulatedOptions.refuseInResponse(input);
25
- return await this.responses.handle(input.ChallengeName, {
28
+ // A challenge response is an authentication request of its own, the way
29
+ // real Cognito counts one, so it is counted here rather than where the
30
+ // sign-in it belongs to started.
31
+ return await countedSimCognitoAuth(this.poolMetrics, "SignIn", { pool, client }, async () => await this.responses.handle(input.ChallengeName, {
26
32
  pool,
27
33
  client,
28
34
  parameters: new SimCognitoAuthParameters("ChallengeResponses", input.ChallengeResponses),
29
35
  session: input.Session,
30
36
  clientMetadata: input.ClientMetadata,
31
- });
37
+ }));
32
38
  }
33
39
  }
@@ -50,6 +50,25 @@ export interface SimCognitoAuthorizeInput {
50
50
  * issued when the passkey was asked for.
51
51
  */
52
52
  readonly passkey_session?: string | undefined;
53
+ /**
54
+ * The subject the identity provider is signing in, as the stand-in page for
55
+ * that provider posted it.
56
+ *
57
+ * Real Cognito redirects the browser to the provider itself here, and the
58
+ * provider answers with whoever signed in at it. A test says who that is
59
+ * with `signInAs`, and a browser on a served domain says it on the page the
60
+ * simulation stands in with. This is that page coming back.
61
+ */
62
+ readonly subject?: string | undefined;
63
+ /**
64
+ * One claim the provider would have asserted, under its own claim name.
65
+ *
66
+ * The stand-in page draws a field per claim the provider's `AttributeMapping`
67
+ * reads, so the names are the pool's rather than this simulation's, and they
68
+ * are prefixed to keep them apart from the authorize parameters they are
69
+ * posted beside.
70
+ */
71
+ readonly [claim: `claim_${string}`]: string | undefined;
53
72
  }
54
73
  /**
55
74
  * Where a hosted endpoint sends the browser next.
@@ -36,7 +36,7 @@ export declare class SimCognitoAuthorizeEndpoint {
36
36
  * `presentedSession` is the managed login session the browser carried, which
37
37
  * the serving layer reads out of the `cognito` cookie.
38
38
  */
39
- handle(pool: SimCognitoUserPool, input: SimCognitoAuthorizeInput, presentedSession?: string): SimCognitoHostedRedirect;
39
+ handle(pool: SimCognitoUserPool, input: SimCognitoAuthorizeInput, presentedSession?: string): Promise<SimCognitoHostedRedirect>;
40
40
  private redirectWithCode;
41
41
  }
42
42
  export {};
@@ -35,7 +35,7 @@ export class SimCognitoAuthorizeEndpoint {
35
35
  * `presentedSession` is the managed login session the browser carried, which
36
36
  * the serving layer reads out of the `cognito` cookie.
37
37
  */
38
- handle(pool, input, presentedSession) {
38
+ async handle(pool, input, presentedSession) {
39
39
  const client = this.hostedClient.forAuthorize(pool, input.client_id);
40
40
  const redirectUri = this.hostedClient.requiredRedirectUri(client, input.redirect_uri);
41
41
  // Everything from here on is refused by sending the browser back to the
@@ -45,7 +45,7 @@ export class SimCognitoAuthorizeEndpoint {
45
45
  this.hostedClient.requireCodeGrant(client, true);
46
46
  this.request.requireChallengeMethod(input);
47
47
  const scopes = new SimCognitoGrantedScopes(client, input.scope);
48
- const signedIn = this.signIn.signIn(pool, client, input, presentedSession);
48
+ const signedIn = await this.signIn.signIn(pool, client, input, presentedSession);
49
49
  const { user } = signedIn;
50
50
  const code = new SimCognitoAuthorizationCode({
51
51
  username: user.username,
@@ -54,6 +54,7 @@ export class SimCognitoAuthorizeEndpoint {
54
54
  scopes: scopes.values,
55
55
  issuedAt: this.clock.now(),
56
56
  codeChallenge: input.code_challenge,
57
+ federated: signedIn.federated,
57
58
  });
58
59
  pool.auth.addAuthorizationCode(code);
59
60
  return {
@@ -1,13 +1,21 @@
1
+ import type { SimCognitoPoolMetrics } from "../../metric/sim-cognito-pool-metrics.js";
1
2
  import type { SimClock } from "../../../../util/clock/sim-clock.js";
2
3
  import type { SimCognitoTokenIssuer } from "../../user-pool/token/sim-cognito-token-issuer.js";
4
+ import type { SimCognitoUserPoolTriggers } from "../../user-pool/trigger/sim-cognito-user-pool-triggers.js";
3
5
  import type { SimCognitoUserFactory } from "../../user-pool/user/sim-cognito-user-factory.js";
4
6
  import type { SimCognitoFirstFactorChallenge } from "../auth/sim-cognito-first-factor-challenge.js";
5
7
  import { SimCognitoAuthorizeEndpoint } from "./sim-cognito-authorize-endpoint.js";
6
8
  import { SimCognitoLogoutEndpoint } from "./sim-cognito-logout-endpoint.js";
7
9
  import { SimCognitoTokenEndpoint } from "./sim-cognito-token-endpoint.js";
8
10
  interface SimCognitoHostedCommandsProperties {
11
+ readonly poolMetrics: SimCognitoPoolMetrics;
9
12
  readonly tokenIssuer: SimCognitoTokenIssuer;
10
13
  readonly userFactory: SimCognitoUserFactory;
14
+ /**
15
+ * The trigger runner the API operations use, which a federated sign-in runs
16
+ * the pool's sign-up and sign-in triggers through.
17
+ */
18
+ readonly triggers: SimCognitoUserPoolTriggers;
11
19
  /**
12
20
  * What asks a user for a passkey, shared with the API sign-ins so a passkey
13
21
  * at the hosted domain answers the same kind of challenge.
@@ -17,15 +17,23 @@ export class SimCognitoHostedCommands {
17
17
  token;
18
18
  logout = new SimCognitoLogoutEndpoint();
19
19
  constructor(properties) {
20
- const { tokenIssuer, userFactory, challenge, clock } = properties;
20
+ const { tokenIssuer, userFactory, triggers, challenge, clock } = properties;
21
21
  this.authorize = new SimCognitoAuthorizeEndpoint({
22
22
  signIn: new SimCognitoHostedSignIn({
23
- federatedSignIn: new SimCognitoFederatedSignIn({ userFactory }),
23
+ federatedSignIn: new SimCognitoFederatedSignIn({
24
+ userFactory,
25
+ triggers,
26
+ }),
24
27
  challenge,
25
28
  clock,
29
+ triggers,
26
30
  }),
27
31
  clock,
28
32
  });
29
- this.token = new SimCognitoTokenEndpoint({ tokenIssuer, clock });
33
+ this.token = new SimCognitoTokenEndpoint({
34
+ poolMetrics: properties.poolMetrics,
35
+ tokenIssuer,
36
+ clock,
37
+ });
30
38
  }
31
39
  }
@@ -1,4 +1,5 @@
1
1
  import type { SimClock } from "../../../../util/clock/sim-clock.js";
2
+ import type { SimCognitoUserPoolTriggers } from "../../user-pool/trigger/sim-cognito-user-pool-triggers.js";
2
3
  import type { SimCognitoUserPoolClient } from "../../user-pool/client/sim-cognito-user-pool-client.js";
3
4
  import type { SimCognitoUserPool } from "../../user-pool/sim-cognito-user-pool.js";
4
5
  import type { SimCognitoUser } from "../../user-pool/user/sim-cognito-user.js";
@@ -21,6 +22,7 @@ interface SimCognitoHostedPasskeySignInProperties {
21
22
  */
22
23
  readonly challenge: SimCognitoFirstFactorChallenge;
23
24
  readonly clock: SimClock;
25
+ readonly triggers: SimCognitoUserPoolTriggers;
24
26
  }
25
27
  /**
26
28
  * Signing one of a pool's own users in at the authorize endpoint with a
@@ -45,12 +47,20 @@ interface SimCognitoHostedPasskeySignInProperties {
45
47
  export declare class SimCognitoHostedPasskeySignIn {
46
48
  private readonly challenge;
47
49
  private readonly clock;
50
+ private readonly triggers;
48
51
  constructor(properties: SimCognitoHostedPasskeySignInProperties);
49
52
  /**
50
53
  * Ask this user for a passkey, or refuse where the pool allows none and
51
54
  * where the user has registered none.
55
+ *
56
+ * `PreAuthentication` runs here rather than where the credential comes back,
57
+ * because this is the request that starts the sign-in. A `USER_AUTH`
58
+ * sign-in runs it in the same place, on the `InitiateAuth` that asks for a
59
+ * factor, and the challenge response that answers runs it no second time.
60
+ * Only a request that has been asked holds a session to answer with, so
61
+ * every passkey sign-in passes through here exactly once.
52
62
  */
53
- ask(pool: SimCognitoUserPool, client: SimCognitoUserPoolClient, username: string): never;
63
+ ask(pool: SimCognitoUserPool, client: SimCognitoUserPoolClient, username: string): Promise<never>;
54
64
  /**
55
65
  * The user the presented credential signs in, having checked that this
56
66
  * user's passkey signed the challenge the pool issued.
@@ -26,16 +26,27 @@ import { simCognitoWebAuthnChallenge } from "../auth/sim-cognito-available-chall
26
26
  export class SimCognitoHostedPasskeySignIn {
27
27
  challenge;
28
28
  clock;
29
+ triggers;
29
30
  constructor(properties) {
30
31
  this.challenge = properties.challenge;
31
32
  this.clock = properties.clock;
33
+ this.triggers = properties.triggers;
32
34
  }
33
35
  /**
34
36
  * Ask this user for a passkey, or refuse where the pool allows none and
35
37
  * where the user has registered none.
38
+ *
39
+ * `PreAuthentication` runs here rather than where the credential comes back,
40
+ * because this is the request that starts the sign-in. A `USER_AUTH`
41
+ * sign-in runs it in the same place, on the `InitiateAuth` that asks for a
42
+ * factor, and the challenge response that answers runs it no second time.
43
+ * Only a request that has been asked holds a session to answer with, so
44
+ * every passkey sign-in passes through here exactly once.
36
45
  */
37
- ask(pool, client, username) {
38
- const user = this.signingIn(pool, client, username);
46
+ async ask(pool, client, username) {
47
+ const user = requireSimCognitoSignInUser(pool, client, username);
48
+ await this.triggers.preAuthentication({ pool, client, user });
49
+ requireSimCognitoReadyToSignIn(user);
39
50
  const asked = this.challenge.issue({ pool, client, user }, simCognitoWebAuthnChallenge, "passkey");
40
51
  throw new SimCognitoPasskeyRequired(username, String(asked.Session));
41
52
  }
@@ -1,5 +1,6 @@
1
1
  import type { SimCognitoUserPoolClient } from "../../user-pool/client/sim-cognito-user-pool-client.js";
2
2
  import type { SimCognitoUserPool } from "../../user-pool/sim-cognito-user-pool.js";
3
+ import type { SimCognitoUserPoolTriggers } from "../../user-pool/trigger/sim-cognito-user-pool-triggers.js";
3
4
  import type { SimCognitoUser } from "../../user-pool/user/sim-cognito-user.js";
4
5
  import type { SimCognitoHostedCredentials } from "./sim-cognito-hosted-credentials.js";
5
6
  /**
@@ -17,10 +18,19 @@ import type { SimCognitoHostedCredentials } from "./sim-cognito-hosted-credentia
17
18
  * reach one is refused here with a message saying which.
18
19
  */
19
20
  export declare class SimCognitoHostedPasswordSignIn {
21
+ private readonly triggers;
22
+ constructor(properties: {
23
+ readonly triggers: SimCognitoUserPoolTriggers;
24
+ });
20
25
  /**
21
26
  * The user these credentials sign in, having checked the password.
27
+ *
28
+ * `PreAuthentication` runs once the user is known and before the password is
29
+ * checked, which is where the API sign-ins run it and where real managed
30
+ * login reports it from `/login`. A wrong password reaches the handler too,
31
+ * because the trigger is given the user to decide about.
22
32
  */
23
- signIn(pool: SimCognitoUserPool, client: SimCognitoUserPoolClient, credentials: SimCognitoHostedCredentials): SimCognitoUser;
33
+ signIn(pool: SimCognitoUserPool, client: SimCognitoUserPoolClient, credentials: SimCognitoHostedCredentials): Promise<SimCognitoUser>;
24
34
  /**
25
35
  * Refuse a sign-in real managed login answers with a page of its own.
26
36
  *
@@ -16,12 +16,22 @@ import { simCognitoChallengeFactor } from "../auth/sim-cognito-mfa-factor-choice
16
16
  * reach one is refused here with a message saying which.
17
17
  */
18
18
  export class SimCognitoHostedPasswordSignIn {
19
+ triggers;
20
+ constructor(properties) {
21
+ this.triggers = properties.triggers;
22
+ }
19
23
  /**
20
24
  * The user these credentials sign in, having checked the password.
25
+ *
26
+ * `PreAuthentication` runs once the user is known and before the password is
27
+ * checked, which is where the API sign-ins run it and where real managed
28
+ * login reports it from `/login`. A wrong password reaches the handler too,
29
+ * because the trigger is given the user to decide about.
21
30
  */
22
- signIn(pool, client, credentials) {
31
+ async signIn(pool, client, credentials) {
23
32
  const { username, password } = credentials;
24
33
  const user = requireSimCognitoSignInUser(pool, client, username);
34
+ await this.triggers.preAuthentication({ pool, client, user });
25
35
  requireSimCognitoSignIn(user, password);
26
36
  requireSimCognitoConfirmed(user);
27
37
  requireSimCognitoPasswordSet(user);
@@ -2,6 +2,7 @@ import type { SimClock } from "../../../../util/clock/sim-clock.js";
2
2
  import type { SimCognitoUserPoolClient } from "../../user-pool/client/sim-cognito-user-pool-client.js";
3
3
  import type { SimCognitoFederatedSignIn } from "../../user-pool/idp/sim-cognito-federated-sign-in.js";
4
4
  import type { SimCognitoUserPool } from "../../user-pool/sim-cognito-user-pool.js";
5
+ import type { SimCognitoUserPoolTriggers } from "../../user-pool/trigger/sim-cognito-user-pool-triggers.js";
5
6
  import type { SimCognitoFirstFactorChallenge } from "../auth/sim-cognito-first-factor-challenge.js";
6
7
  import type { SimCognitoHostedSignedIn } from "./sim-cognito-hosted-signed-in.js";
7
8
  import type { SimCognitoAuthorizeInput } from "./hosted-auth.command.js";
@@ -13,6 +14,11 @@ interface SimCognitoHostedSignInProperties {
13
14
  */
14
15
  readonly challenge: SimCognitoFirstFactorChallenge;
15
16
  readonly clock: SimClock;
17
+ /**
18
+ * The trigger runner the API sign-ins use, which a sign-in at this endpoint
19
+ * runs the pool's `PreAuthentication` through.
20
+ */
21
+ readonly triggers: SimCognitoUserPoolTriggers;
16
22
  }
17
23
  /**
18
24
  * Which user an authorize request signs in.
@@ -36,7 +42,7 @@ export declare class SimCognitoHostedSignIn {
36
42
  * The user this request signs in, at a provider, in the pool itself, or from
37
43
  * the managed login session the browser presented.
38
44
  */
39
- signIn(pool: SimCognitoUserPool, client: SimCognitoUserPoolClient, input: SimCognitoAuthorizeInput, presentedSession: string | undefined): SimCognitoHostedSignedIn;
45
+ signIn(pool: SimCognitoUserPool, client: SimCognitoUserPoolClient, input: SimCognitoAuthorizeInput, presentedSession: string | undefined): Promise<SimCognitoHostedSignedIn>;
40
46
  /**
41
47
  * Sign in one of the pool's own users, with a passkey, with a password, or
42
48
  * from the session the browser is already holding.
@@ -1,4 +1,5 @@
1
1
  import { SimCognitoManagedLoginRequired } from "../../error/sim-cognito-managed-login.error.js";
2
+ import { requireSimCognitoSigningInAt } from "../../user-pool/idp/sim-cognito-presented-external-user.js";
2
3
  import { SimCognitoAuthorizeRequest } from "./sim-cognito-authorize-request.js";
3
4
  import { SimCognitoBrowserSession } from "./sim-cognito-browser-session.js";
4
5
  import { SimCognitoHostedCredentials } from "./sim-cognito-hosted-credentials.js";
@@ -18,29 +19,39 @@ export class SimCognitoHostedSignIn {
18
19
  federatedSignIn;
19
20
  clock;
20
21
  request = new SimCognitoAuthorizeRequest();
21
- passwordSignIn = new SimCognitoHostedPasswordSignIn();
22
+ passwordSignIn;
22
23
  passkeySignIn;
23
24
  browserSession = new SimCognitoBrowserSession();
24
25
  constructor(properties) {
25
26
  this.federatedSignIn = properties.federatedSignIn;
26
27
  this.clock = properties.clock;
28
+ this.passwordSignIn = new SimCognitoHostedPasswordSignIn({
29
+ triggers: properties.triggers,
30
+ });
27
31
  this.passkeySignIn = new SimCognitoHostedPasskeySignIn({
28
32
  challenge: properties.challenge,
29
33
  clock: properties.clock,
34
+ triggers: properties.triggers,
30
35
  });
31
36
  }
32
37
  /**
33
38
  * The user this request signs in, at a provider, in the pool itself, or from
34
39
  * the managed login session the browser presented.
35
40
  */
36
- signIn(pool, client, input, presentedSession) {
41
+ async signIn(pool, client, input, presentedSession) {
37
42
  const provider = this.request.signInProvider(pool, client, input);
38
43
  if (provider === undefined) {
39
44
  return this.localSignIn(pool, client, input, presentedSession);
40
45
  }
41
46
  const now = this.clock.now();
42
- const user = this.federatedSignIn.signIn({ pool, provider, now });
43
- return this.browserSession.start(pool, user, now);
47
+ const user = await this.federatedSignIn.signIn({
48
+ pool,
49
+ client,
50
+ provider,
51
+ externalUser: requireSimCognitoSigningInAt(provider, input),
52
+ now,
53
+ });
54
+ return this.browserSession.start(pool, user, now).asFederated();
44
55
  }
45
56
  /**
46
57
  * Sign in one of the pool's own users, with a passkey, with a password, or
@@ -54,7 +65,7 @@ export class SimCognitoHostedSignIn {
54
65
  * the sign-in form is shown for. The serving layer answers with that page,
55
66
  * from this refusal.
56
67
  */
57
- localSignIn(pool, client, input, presentedSession) {
68
+ async localSignIn(pool, client, input, presentedSession) {
58
69
  const now = this.clock.now();
59
70
  const { username, credential } = input;
60
71
  if (username !== undefined && credential !== undefined) {
@@ -65,7 +76,7 @@ export class SimCognitoHostedSignIn {
65
76
  }), now);
66
77
  }
67
78
  if (username !== undefined && input.passkey !== undefined) {
68
- this.passkeySignIn.ask(pool, client, username);
79
+ await this.passkeySignIn.ask(pool, client, username);
69
80
  }
70
81
  const credentials = SimCognitoHostedCredentials.in(input);
71
82
  if (credentials === undefined) {
@@ -75,7 +86,7 @@ export class SimCognitoHostedSignIn {
75
86
  }
76
87
  return returning;
77
88
  }
78
- const user = this.passwordSignIn.signIn(pool, client, credentials);
89
+ const user = await this.passwordSignIn.signIn(pool, client, credentials);
79
90
  return this.browserSession.start(pool, user, now);
80
91
  }
81
92
  }
@@ -3,18 +3,35 @@ import type { SimCognitoSessionChange } from "./sim-cognito-session-change.js";
3
3
  interface SimCognitoHostedSignedInProperties {
4
4
  readonly user: SimCognitoUser;
5
5
  readonly session: SimCognitoSessionChange;
6
+ /**
7
+ * Whether this request signed the user in at an identity provider.
8
+ *
9
+ * The tokens a federated sign-in hands out report a `PreTokenGeneration`
10
+ * source of their own, and the code the endpoint issues is what carries the
11
+ * answer as far as the token endpoint.
12
+ */
13
+ readonly federated?: boolean | undefined;
6
14
  }
7
15
  /**
8
16
  * Who an authorize request signed in, and what it did to the browser's managed
9
17
  * login session on the way.
10
18
  *
11
- * The two travel together because the endpoint needs both: the user is who the
12
- * authorization code is issued for, and the session change is what the
13
- * response tells the browser to hold.
19
+ * These travel together because the endpoint needs all of them. The user is
20
+ * who the authorization code is issued for, the session change is what the
21
+ * response tells the browser to hold, and the federated flag is what the code
22
+ * remembers about how the sign-in happened.
14
23
  */
15
24
  export declare class SimCognitoHostedSignedIn {
16
25
  readonly user: SimCognitoUser;
17
26
  readonly session: SimCognitoSessionChange;
27
+ readonly federated: boolean;
18
28
  constructor(properties: SimCognitoHostedSignedInProperties);
29
+ /**
30
+ * The same sign-in, marked as having happened at an identity provider.
31
+ *
32
+ * The browser session is started the same way whichever way the user signed
33
+ * in, so this is applied afterwards by the one path that federates.
34
+ */
35
+ asFederated(): SimCognitoHostedSignedIn;
19
36
  }
20
37
  export {};
@@ -2,15 +2,31 @@
2
2
  * Who an authorize request signed in, and what it did to the browser's managed
3
3
  * login session on the way.
4
4
  *
5
- * The two travel together because the endpoint needs both: the user is who the
6
- * authorization code is issued for, and the session change is what the
7
- * response tells the browser to hold.
5
+ * These travel together because the endpoint needs all of them. The user is
6
+ * who the authorization code is issued for, the session change is what the
7
+ * response tells the browser to hold, and the federated flag is what the code
8
+ * remembers about how the sign-in happened.
8
9
  */
9
10
  export class SimCognitoHostedSignedIn {
10
11
  user;
11
12
  session;
13
+ federated;
12
14
  constructor(properties) {
13
15
  this.user = properties.user;
14
16
  this.session = properties.session;
17
+ this.federated = properties.federated ?? false;
18
+ }
19
+ /**
20
+ * The same sign-in, marked as having happened at an identity provider.
21
+ *
22
+ * The browser session is started the same way whichever way the user signed
23
+ * in, so this is applied afterwards by the one path that federates.
24
+ */
25
+ asFederated() {
26
+ return new SimCognitoHostedSignedIn({
27
+ user: this.user,
28
+ session: this.session,
29
+ federated: true,
30
+ });
15
31
  }
16
32
  }
@@ -1,8 +1,10 @@
1
+ import type { SimCognitoPoolMetrics } from "../../metric/sim-cognito-pool-metrics.js";
1
2
  import type { SimClock } from "../../../../util/clock/sim-clock.js";
2
3
  import type { SimCognitoUserPool } from "../../user-pool/sim-cognito-user-pool.js";
3
4
  import type { SimCognitoTokenIssuer } from "../../user-pool/token/sim-cognito-token-issuer.js";
4
5
  import type { SimCognitoTokenInput, SimCognitoTokenOutput } from "./hosted-auth.command.js";
5
6
  interface SimCognitoTokenEndpointProperties {
7
+ readonly poolMetrics: SimCognitoPoolMetrics;
6
8
  readonly tokenIssuer: SimCognitoTokenIssuer;
7
9
  readonly clock: SimClock;
8
10
  }
@@ -1,9 +1,11 @@
1
+ import type { SimCognitoPoolMetrics } from "../../metric/sim-cognito-pool-metrics.js";
1
2
  import type { SimClock } from "../../../../util/clock/sim-clock.js";
2
3
  import type { SimCognitoUserPoolClient } from "../../user-pool/client/sim-cognito-user-pool-client.js";
3
4
  import type { SimCognitoUserPool } from "../../user-pool/sim-cognito-user-pool.js";
4
5
  import type { SimCognitoTokenIssuer } from "../../user-pool/token/sim-cognito-token-issuer.js";
5
6
  import type { SimCognitoTokenInput, SimCognitoTokenOutput } from "./hosted-auth.command.js";
6
7
  interface SimCognitoTokenGrantsProperties {
8
+ readonly poolMetrics: SimCognitoPoolMetrics;
7
9
  readonly tokenIssuer: SimCognitoTokenIssuer;
8
10
  readonly clock: SimClock;
9
11
  }
@@ -16,6 +18,7 @@ interface SimCognitoTokenGrantsProperties {
16
18
  * pool the same way.
17
19
  */
18
20
  export declare class SimCognitoTokenGrants {
21
+ private readonly poolMetrics;
19
22
  private readonly tokenIssuer;
20
23
  private readonly clock;
21
24
  private readonly presented;
@@ -27,6 +30,11 @@ export declare class SimCognitoTokenGrants {
27
30
  * The code is spent whether or not the rest of the request turns out to be
28
31
  * right, as real Cognito spends one, so nothing can be retried with a code
29
32
  * that has already been presented.
33
+ *
34
+ * The `PreTokenGeneration` source says which sign-in the grant came from.
35
+ * A code from an identity provider reports `TokenGeneration_HostedAuth`, and
36
+ * one from the pool's own sign-in form reports the
37
+ * `TokenGeneration_Authentication` its API sign-in reports.
30
38
  */
31
39
  exchangeCode(pool: SimCognitoUserPool, client: SimCognitoUserPoolClient, input: SimCognitoTokenInput): Promise<SimCognitoTokenOutput>;
32
40
  /**
@@ -1,3 +1,4 @@
1
+ import { countedSimCognitoFederation } from "../../metric/sim-cognito-counted-request.js";
1
2
  import { SimCognitoTriggerOccasion } from "../../user-pool/trigger/sim-cognito-trigger-occasion.js";
2
3
  import { SimCognitoGrantedTokens } from "./sim-cognito-granted-tokens.js";
3
4
  import { SimCognitoPresentedGrant } from "./sim-cognito-presented-grant.js";
@@ -10,11 +11,13 @@ import { SimCognitoPresentedGrant } from "./sim-cognito-presented-grant.js";
10
11
  * pool the same way.
11
12
  */
12
13
  export class SimCognitoTokenGrants {
14
+ poolMetrics;
13
15
  tokenIssuer;
14
16
  clock;
15
17
  presented = new SimCognitoPresentedGrant();
16
18
  granted = new SimCognitoGrantedTokens();
17
19
  constructor(properties) {
20
+ this.poolMetrics = properties.poolMetrics;
18
21
  this.tokenIssuer = properties.tokenIssuer;
19
22
  this.clock = properties.clock;
20
23
  }
@@ -24,6 +27,11 @@ export class SimCognitoTokenGrants {
24
27
  * The code is spent whether or not the rest of the request turns out to be
25
28
  * right, as real Cognito spends one, so nothing can be retried with a code
26
29
  * that has already been presented.
30
+ *
31
+ * The `PreTokenGeneration` source says which sign-in the grant came from.
32
+ * A code from an identity provider reports `TokenGeneration_HostedAuth`, and
33
+ * one from the pool's own sign-in form reports the
34
+ * `TokenGeneration_Authentication` its API sign-in reports.
27
35
  */
28
36
  async exchangeCode(pool, client, input) {
29
37
  const code = this.presented.code({
@@ -33,14 +41,15 @@ export class SimCognitoTokenGrants {
33
41
  now: this.clock.now(),
34
42
  });
35
43
  const user = this.presented.user(pool, code.username);
36
- const issued = await this.tokenIssuer.issue({
44
+ return await countedSimCognitoFederation(this.poolMetrics, { pool, client }, code.federated, async () => this.granted.body(await this.tokenIssuer.issue({
37
45
  pool,
38
46
  client,
39
47
  user,
40
- occasion: SimCognitoTriggerOccasion.tokenGeneration,
48
+ occasion: code.federated
49
+ ? SimCognitoTriggerOccasion.hostedTokenGeneration
50
+ : SimCognitoTriggerOccasion.tokenGeneration,
41
51
  scopes: code.scopes,
42
- });
43
- return this.granted.body(issued, code.scopes);
52
+ }), code.scopes));
44
53
  }
45
54
  /**
46
55
  * Sign fresh tokens for an application that presented a refresh token.
@@ -4,6 +4,7 @@ import type { SimIamInterServiceAuthZ } from "../../iam/authorize/sim-iam-inter-
4
4
  import { SimCognitoRegistrations } from "../user-pool/sim-cognito-registrations.js";
5
5
  import type { SimCognitoUserPoolStore } from "../user-pool/sim-cognito-user-pool-store.js";
6
6
  import type { SimAwsMessageLog } from "../../aws/message/sim-aws-message-log.js";
7
+ import type { SimCloudWatchServiceWriter } from "../../cloudwatch/write/sim-cloudwatch-service-writer.js";
7
8
  import type { SimCognitoEmailSenders } from "../user-pool/message/sim-cognito-email-senders.js";
8
9
  import type { SimCognitoTriggerFunctions } from "../user-pool/trigger/sim-cognito-trigger-functions.js";
9
10
  import type { SimCognitoDomainRegistry } from "../registry/sim-cognito-domain-registry.js";
@@ -19,6 +20,7 @@ import { SimCognitoListGroups } from "./group/sim-cognito-list-groups.js";
19
20
  import { SimCognitoUserPoolClientCommands } from "./client/sim-cognito-user-pool-client-commands.js";
20
21
  import { SimCognitoListUsers } from "./user/sim-cognito-list-users.js";
21
22
  import { SimCognitoPasswordResetCommands } from "./user/sim-cognito-password-reset-commands.js";
23
+ import { SimCognitoConfirmSignUpCommands } from "./user/sim-cognito-confirm-sign-up-commands.js";
22
24
  import { SimCognitoSignUpCommands } from "./user/sim-cognito-sign-up-commands.js";
23
25
  import { SimCognitoUserCommands } from "./user/sim-cognito-user-commands.js";
24
26
  import { SimCognitoUserMfaCommands } from "./user/sim-cognito-user-mfa-commands.js";
@@ -37,6 +39,8 @@ interface SimCognitoCommandsProperties {
37
39
  readonly emailSenders: SimCognitoEmailSenders;
38
40
  readonly webAcls: SimWafProtection;
39
41
  readonly messageLog: SimAwsMessageLog;
42
+ /** Where this scope's `AWS/Cognito` metrics go, if anywhere. */
43
+ readonly metrics?: SimCloudWatchServiceWriter | undefined;
40
44
  }
41
45
  /**
42
46
  * The command handlers of one simulated Cognito scope.
@@ -55,6 +59,7 @@ export declare class SimCognitoCommands {
55
59
  readonly userMfa: SimCognitoUserMfaCommands;
56
60
  readonly webAuthn: SimCognitoWebAuthnCommands;
57
61
  readonly signUp: SimCognitoSignUpCommands;
62
+ readonly confirmSignUp: SimCognitoConfirmSignUpCommands;
58
63
  readonly passwordReset: SimCognitoPasswordResetCommands;
59
64
  readonly userUpdates: SimCognitoUserUpdateCommands;
60
65
  readonly listUsers: SimCognitoListUsers;