@kensio/yulin 0.36.0 → 0.38.0

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 (545) hide show
  1. package/dist/sdk/router/resolve-sim-sdk-command-router.d.ts.map +1 -1
  2. package/dist/sdk/router/resolve-sim-sdk-command-router.js +3 -0
  3. package/dist/sdk/router/resolve-sim-sdk-command-router.js.map +1 -1
  4. package/dist/serve/controller/sim-service-controller.d.ts +13 -0
  5. package/dist/serve/controller/sim-service-controller.d.ts.map +1 -1
  6. package/dist/serve/controller/sim-service-controller.js.map +1 -1
  7. package/dist/serve/http/url/sim-aws-local-url.d.ts.map +1 -1
  8. package/dist/serve/http/url/sim-aws-local-url.js +5 -1
  9. package/dist/serve/http/url/sim-aws-local-url.js.map +1 -1
  10. package/dist/service/aws/factory/sim-aws-account-service-cache.d.ts.map +1 -1
  11. package/dist/service/aws/factory/sim-aws-account-service-cache.js +3 -0
  12. package/dist/service/aws/factory/sim-aws-account-service-cache.js.map +1 -1
  13. package/dist/service/aws/factory/sim-aws-service-factory.d.ts +8 -0
  14. package/dist/service/aws/factory/sim-aws-service-factory.d.ts.map +1 -1
  15. package/dist/service/aws/factory/sim-aws-service-factory.js +14 -0
  16. package/dist/service/aws/factory/sim-aws-service-factory.js.map +1 -1
  17. package/dist/service/aws/sim-aws-account-region-scope.d.ts +5 -0
  18. package/dist/service/aws/sim-aws-account-region-scope.d.ts.map +1 -1
  19. package/dist/service/aws/sim-aws-account-region-scope.js +6 -0
  20. package/dist/service/aws/sim-aws-account-region-scope.js.map +1 -1
  21. package/dist/service/aws/sim-aws-account.d.ts +5 -0
  22. package/dist/service/aws/sim-aws-account.d.ts.map +1 -1
  23. package/dist/service/aws/sim-aws-account.js +6 -0
  24. package/dist/service/aws/sim-aws-account.js.map +1 -1
  25. package/dist/service/aws/sim-aws-region.d.ts +5 -0
  26. package/dist/service/aws/sim-aws-region.d.ts.map +1 -1
  27. package/dist/service/aws/sim-aws-region.js +6 -0
  28. package/dist/service/aws/sim-aws-region.js.map +1 -1
  29. package/dist/service/aws/sim-aws-request-authentication.d.ts +35 -0
  30. package/dist/service/aws/sim-aws-request-authentication.d.ts.map +1 -0
  31. package/dist/service/aws/sim-aws-request-authentication.js +32 -0
  32. package/dist/service/aws/sim-aws-request-authentication.js.map +1 -0
  33. package/dist/service/aws/sim-aws.d.ts +7 -21
  34. package/dist/service/aws/sim-aws.d.ts.map +1 -1
  35. package/dist/service/aws/sim-aws.js +15 -26
  36. package/dist/service/aws/sim-aws.js.map +1 -1
  37. package/dist/service/cloudformation/resource/dependency/sim-cfn-resource-dependencies.d.ts.map +1 -1
  38. package/dist/service/cloudformation/resource/dependency/sim-cfn-resource-dependencies.js +1 -1
  39. package/dist/service/cloudformation/resource/dependency/sim-cfn-resource-dependencies.js.map +1 -1
  40. package/dist/service/cloudfront/controller/dependency/sim-cf-controller-dependency.js +1 -1
  41. package/dist/service/cloudfront/controller/dependency/sim-cf-controller-dependency.js.map +1 -1
  42. package/dist/service/cloudfront/router/sim-cloud-front-distro-router.d.ts.map +1 -1
  43. package/dist/service/cloudfront/router/sim-cloud-front-distro-router.js +2 -1
  44. package/dist/service/cloudfront/router/sim-cloud-front-distro-router.js.map +1 -1
  45. package/dist/service/iam/authorize/allow/sim-iam-allow-requirement.d.ts +116 -0
  46. package/dist/service/iam/authorize/allow/sim-iam-allow-requirement.d.ts.map +1 -0
  47. package/dist/service/iam/authorize/allow/sim-iam-allow-requirement.js +126 -0
  48. package/dist/service/iam/authorize/allow/sim-iam-allow-requirement.js.map +1 -0
  49. package/dist/service/iam/authorize/allow/sim-iam-allow-statements.d.ts +52 -0
  50. package/dist/service/iam/authorize/allow/sim-iam-allow-statements.d.ts.map +1 -0
  51. package/dist/service/iam/authorize/allow/sim-iam-allow-statements.js +77 -0
  52. package/dist/service/iam/authorize/allow/sim-iam-allow-statements.js.map +1 -0
  53. package/dist/service/iam/authorize/caller-account/sim-iam-caller-account-resolver.d.ts +37 -0
  54. package/dist/service/iam/authorize/caller-account/sim-iam-caller-account-resolver.d.ts.map +1 -0
  55. package/dist/service/iam/authorize/caller-account/sim-iam-caller-account-resolver.js +33 -0
  56. package/dist/service/iam/authorize/caller-account/sim-iam-caller-account-resolver.js.map +1 -0
  57. package/dist/service/iam/authorize/caller-account/sim-iam-caller-account.d.ts +21 -0
  58. package/dist/service/iam/authorize/caller-account/sim-iam-caller-account.d.ts.map +1 -0
  59. package/dist/service/iam/authorize/caller-account/sim-iam-caller-account.js +2 -0
  60. package/dist/service/iam/authorize/caller-account/sim-iam-caller-account.js.map +1 -0
  61. package/dist/service/iam/authorize/caller-account/sim-iam-cross-account-caller.d.ts +34 -0
  62. package/dist/service/iam/authorize/caller-account/sim-iam-cross-account-caller.d.ts.map +1 -0
  63. package/dist/service/iam/authorize/caller-account/sim-iam-cross-account-caller.js +22 -0
  64. package/dist/service/iam/authorize/caller-account/sim-iam-cross-account-caller.js.map +1 -0
  65. package/dist/service/iam/authorize/caller-account/sim-iam-same-account-caller.d.ts +18 -0
  66. package/dist/service/iam/authorize/caller-account/sim-iam-same-account-caller.d.ts.map +1 -0
  67. package/dist/service/iam/authorize/caller-account/sim-iam-same-account-caller.js +16 -0
  68. package/dist/service/iam/authorize/caller-account/sim-iam-same-account-caller.js.map +1 -0
  69. package/dist/service/iam/authorize/context/sim-iam-auth-z-allow-requirement.d.ts +17 -0
  70. package/dist/service/iam/authorize/context/sim-iam-auth-z-allow-requirement.d.ts.map +1 -0
  71. package/dist/service/iam/authorize/context/sim-iam-auth-z-allow-requirement.js +24 -0
  72. package/dist/service/iam/authorize/context/sim-iam-auth-z-allow-requirement.js.map +1 -0
  73. package/dist/service/iam/authorize/context/sim-iam-auth-z-caller-context-builder.d.ts +1 -2
  74. package/dist/service/iam/authorize/context/sim-iam-auth-z-caller-context-builder.d.ts.map +1 -1
  75. package/dist/service/iam/authorize/context/sim-iam-auth-z-context-builder.d.ts +49 -2
  76. package/dist/service/iam/authorize/context/sim-iam-auth-z-context-builder.d.ts.map +1 -1
  77. package/dist/service/iam/authorize/context/sim-iam-auth-z-context-builder.js +44 -8
  78. package/dist/service/iam/authorize/context/sim-iam-auth-z-context-builder.js.map +1 -1
  79. package/dist/service/iam/authorize/context/sim-iam-auth-z-context.d.ts +9 -0
  80. package/dist/service/iam/authorize/context/sim-iam-auth-z-context.d.ts.map +1 -1
  81. package/dist/service/iam/authorize/context/sim-iam-auth-z-context.factory.d.ts.map +1 -1
  82. package/dist/service/iam/authorize/context/sim-iam-auth-z-context.factory.js +2 -0
  83. package/dist/service/iam/authorize/context/sim-iam-auth-z-context.factory.js.map +1 -1
  84. package/dist/service/iam/authorize/identity/sim-iam-account-identity-policies.d.ts +14 -0
  85. package/dist/service/iam/authorize/identity/sim-iam-account-identity-policies.d.ts.map +1 -0
  86. package/dist/service/iam/authorize/identity/sim-iam-account-identity-policies.js +2 -0
  87. package/dist/service/iam/authorize/identity/sim-iam-account-identity-policies.js.map +1 -0
  88. package/dist/service/iam/authorize/match/sim-iam-policy-principal-matcher.d.ts +6 -1
  89. package/dist/service/iam/authorize/match/sim-iam-policy-principal-matcher.d.ts.map +1 -1
  90. package/dist/service/iam/authorize/match/sim-iam-policy-principal-matcher.js +25 -16
  91. package/dist/service/iam/authorize/match/sim-iam-policy-principal-matcher.js.map +1 -1
  92. package/dist/service/iam/authorize/match/sim-iam-policy-statement-matcher.d.ts +2 -1
  93. package/dist/service/iam/authorize/match/sim-iam-policy-statement-matcher.d.ts.map +1 -1
  94. package/dist/service/iam/authorize/match/sim-iam-policy-statement-matcher.js +2 -1
  95. package/dist/service/iam/authorize/match/sim-iam-policy-statement-matcher.js.map +1 -1
  96. package/dist/service/iam/authorize/match/sim-iam-principal-match.d.ts +39 -0
  97. package/dist/service/iam/authorize/match/sim-iam-principal-match.d.ts.map +1 -0
  98. package/dist/service/iam/authorize/match/sim-iam-principal-match.js +55 -0
  99. package/dist/service/iam/authorize/match/sim-iam-principal-match.js.map +1 -0
  100. package/dist/service/iam/authorize/sim-iam-account-auth-z.d.ts +24 -1
  101. package/dist/service/iam/authorize/sim-iam-account-auth-z.d.ts.map +1 -1
  102. package/dist/service/iam/authorize/sim-iam-account-auth-z.js +18 -4
  103. package/dist/service/iam/authorize/sim-iam-account-auth-z.js.map +1 -1
  104. package/dist/service/iam/authorize/sim-iam-authorizer.d.ts +11 -2
  105. package/dist/service/iam/authorize/sim-iam-authorizer.d.ts.map +1 -1
  106. package/dist/service/iam/authorize/sim-iam-authorizer.js +14 -1
  107. package/dist/service/iam/authorize/sim-iam-authorizer.js.map +1 -1
  108. package/dist/service/iam/authorize/sim-iam-decision.d.ts +17 -5
  109. package/dist/service/iam/authorize/sim-iam-decision.d.ts.map +1 -1
  110. package/dist/service/iam/authorize/sim-iam-decision.js +29 -14
  111. package/dist/service/iam/authorize/sim-iam-decision.js.map +1 -1
  112. package/dist/service/iam/command/sim-iam-command-handlers.d.ts +41 -0
  113. package/dist/service/iam/command/sim-iam-command-handlers.d.ts.map +1 -0
  114. package/dist/service/iam/command/sim-iam-command-handlers.js +42 -0
  115. package/dist/service/iam/command/sim-iam-command-handlers.js.map +1 -0
  116. package/dist/service/iam/index.d.ts +1 -0
  117. package/dist/service/iam/index.d.ts.map +1 -1
  118. package/dist/service/iam/index.js +1 -0
  119. package/dist/service/iam/index.js.map +1 -1
  120. package/dist/service/iam/registry/sim-iam-account-resolver.d.ts +8 -0
  121. package/dist/service/iam/registry/sim-iam-account-resolver.d.ts.map +1 -1
  122. package/dist/service/iam/registry/sim-iam-registry.d.ts +4 -0
  123. package/dist/service/iam/registry/sim-iam-registry.d.ts.map +1 -1
  124. package/dist/service/iam/registry/sim-iam-registry.js +7 -1
  125. package/dist/service/iam/registry/sim-iam-registry.js.map +1 -1
  126. package/dist/service/iam/request/sim-aws-request-caller-resolver.d.ts +21 -5
  127. package/dist/service/iam/request/sim-aws-request-caller-resolver.d.ts.map +1 -1
  128. package/dist/service/iam/request/sim-aws-request-caller-resolver.js +15 -9
  129. package/dist/service/iam/request/sim-aws-request-caller-resolver.js.map +1 -1
  130. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-request.d.ts +3 -1
  131. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-request.d.ts.map +1 -1
  132. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-request.js +6 -4
  133. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-request.js.map +1 -1
  134. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-payload-hash.d.ts +34 -14
  135. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-payload-hash.d.ts.map +1 -1
  136. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-payload-hash.js +56 -29
  137. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-payload-hash.js.map +1 -1
  138. package/dist/service/iam/sigv4/error/sim-iam-sigv4.error.d.ts +13 -1
  139. package/dist/service/iam/sigv4/error/sim-iam-sigv4.error.d.ts.map +1 -1
  140. package/dist/service/iam/sigv4/error/sim-iam-sigv4.error.js +14 -0
  141. package/dist/service/iam/sigv4/error/sim-iam-sigv4.error.js.map +1 -1
  142. package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-credential.d.ts +25 -0
  143. package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-credential.d.ts.map +1 -0
  144. package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-credential.js +41 -0
  145. package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-credential.js.map +1 -0
  146. package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-parameters.d.ts +27 -0
  147. package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-parameters.d.ts.map +1 -0
  148. package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-parameters.js +41 -0
  149. package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-parameters.js.map +1 -0
  150. package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-query.d.ts +39 -0
  151. package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-query.d.ts.map +1 -0
  152. package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-query.js +59 -0
  153. package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-query.js.map +1 -0
  154. package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-window.d.ts +30 -0
  155. package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-window.d.ts.map +1 -0
  156. package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-window.js +64 -0
  157. package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-window.js.map +1 -0
  158. package/dist/service/iam/sigv4/sim-iam-sigv4-authorization.d.ts +2 -1
  159. package/dist/service/iam/sigv4/sim-iam-sigv4-authorization.d.ts.map +1 -1
  160. package/dist/service/iam/sigv4/sim-iam-sigv4-authorization.js.map +1 -1
  161. package/dist/service/iam/sigv4/sim-iam-sigv4-request-date.d.ts +22 -1
  162. package/dist/service/iam/sigv4/sim-iam-sigv4-request-date.d.ts.map +1 -1
  163. package/dist/service/iam/sigv4/sim-iam-sigv4-request-date.js +49 -7
  164. package/dist/service/iam/sigv4/sim-iam-sigv4-request-date.js.map +1 -1
  165. package/dist/service/iam/sigv4/sim-iam-sigv4-signature-check.d.ts +9 -2
  166. package/dist/service/iam/sigv4/sim-iam-sigv4-signature-check.d.ts.map +1 -1
  167. package/dist/service/iam/sigv4/sim-iam-sigv4-signature-check.js +5 -5
  168. package/dist/service/iam/sigv4/sim-iam-sigv4-signature-check.js.map +1 -1
  169. package/dist/service/iam/sigv4/sim-iam-sigv4-signature-statement.d.ts +16 -0
  170. package/dist/service/iam/sigv4/sim-iam-sigv4-signature-statement.d.ts.map +1 -0
  171. package/dist/service/iam/sigv4/sim-iam-sigv4-signature-statement.js +2 -0
  172. package/dist/service/iam/sigv4/sim-iam-sigv4-signature-statement.js.map +1 -0
  173. package/dist/service/iam/sigv4/sim-iam-sigv4-signing-credentials.d.ts +12 -3
  174. package/dist/service/iam/sigv4/sim-iam-sigv4-signing-credentials.d.ts.map +1 -1
  175. package/dist/service/iam/sigv4/sim-iam-sigv4-signing-credentials.js +9 -5
  176. package/dist/service/iam/sigv4/sim-iam-sigv4-signing-credentials.js.map +1 -1
  177. package/dist/service/iam/sigv4/sim-iam-sigv4-verifier.d.ts +20 -4
  178. package/dist/service/iam/sigv4/sim-iam-sigv4-verifier.d.ts.map +1 -1
  179. package/dist/service/iam/sigv4/sim-iam-sigv4-verifier.js +52 -6
  180. package/dist/service/iam/sigv4/sim-iam-sigv4-verifier.js.map +1 -1
  181. package/dist/service/iam/sim-iam-account-parts.d.ts +58 -0
  182. package/dist/service/iam/sim-iam-account-parts.d.ts.map +1 -0
  183. package/dist/service/iam/sim-iam-account-parts.js +72 -0
  184. package/dist/service/iam/sim-iam-account-parts.js.map +1 -0
  185. package/dist/service/iam/sim-iam.d.ts +28 -21
  186. package/dist/service/iam/sim-iam.d.ts.map +1 -1
  187. package/dist/service/iam/sim-iam.js +42 -71
  188. package/dist/service/iam/sim-iam.js.map +1 -1
  189. package/dist/service/kms/command/alias/alias.command.d.ts +43 -0
  190. package/dist/service/kms/command/alias/alias.command.d.ts.map +1 -0
  191. package/dist/service/kms/command/alias/alias.command.js +2 -0
  192. package/dist/service/kms/command/alias/alias.command.js.map +1 -0
  193. package/dist/service/kms/command/alias/sim-kms-alias-commands.d.ts +34 -0
  194. package/dist/service/kms/command/alias/sim-kms-alias-commands.d.ts.map +1 -0
  195. package/dist/service/kms/command/alias/sim-kms-alias-commands.js +56 -0
  196. package/dist/service/kms/command/alias/sim-kms-alias-commands.js.map +1 -0
  197. package/dist/service/kms/command/authorize/sim-kms-authorizer.d.ts +38 -0
  198. package/dist/service/kms/command/authorize/sim-kms-authorizer.d.ts.map +1 -0
  199. package/dist/service/kms/command/authorize/sim-kms-authorizer.js +58 -0
  200. package/dist/service/kms/command/authorize/sim-kms-authorizer.js.map +1 -0
  201. package/dist/service/kms/command/crypto/crypto.command.d.ts +68 -0
  202. package/dist/service/kms/command/crypto/crypto.command.d.ts.map +1 -0
  203. package/dist/service/kms/command/crypto/crypto.command.js +2 -0
  204. package/dist/service/kms/command/crypto/crypto.command.js.map +1 -0
  205. package/dist/service/kms/command/crypto/sim-kms-ciphertext-key.d.ts +40 -0
  206. package/dist/service/kms/command/crypto/sim-kms-ciphertext-key.d.ts.map +1 -0
  207. package/dist/service/kms/command/crypto/sim-kms-ciphertext-key.js +58 -0
  208. package/dist/service/kms/command/crypto/sim-kms-ciphertext-key.js.map +1 -0
  209. package/dist/service/kms/command/crypto/sim-kms-crypto-commands.d.ts +38 -0
  210. package/dist/service/kms/command/crypto/sim-kms-crypto-commands.d.ts.map +1 -0
  211. package/dist/service/kms/command/crypto/sim-kms-crypto-commands.js +74 -0
  212. package/dist/service/kms/command/crypto/sim-kms-crypto-commands.js.map +1 -0
  213. package/dist/service/kms/command/crypto/sim-kms-data-key-spec.d.ts +16 -0
  214. package/dist/service/kms/command/crypto/sim-kms-data-key-spec.d.ts.map +1 -0
  215. package/dist/service/kms/command/crypto/sim-kms-data-key-spec.js +50 -0
  216. package/dist/service/kms/command/crypto/sim-kms-data-key-spec.js.map +1 -0
  217. package/dist/service/kms/command/crypto/sim-kms-generate-data-key.d.ts +31 -0
  218. package/dist/service/kms/command/crypto/sim-kms-generate-data-key.d.ts.map +1 -0
  219. package/dist/service/kms/command/crypto/sim-kms-generate-data-key.js +35 -0
  220. package/dist/service/kms/command/crypto/sim-kms-generate-data-key.js.map +1 -0
  221. package/dist/service/kms/command/key/key.command.d.ts +159 -0
  222. package/dist/service/kms/command/key/key.command.d.ts.map +1 -0
  223. package/dist/service/kms/command/key/key.command.js +2 -0
  224. package/dist/service/kms/command/key/key.command.js.map +1 -0
  225. package/dist/service/kms/command/key/sim-kms-key-commands.d.ts +41 -0
  226. package/dist/service/kms/command/key/sim-kms-key-commands.d.ts.map +1 -0
  227. package/dist/service/kms/command/key/sim-kms-key-commands.js +45 -0
  228. package/dist/service/kms/command/key/sim-kms-key-commands.js.map +1 -0
  229. package/dist/service/kms/command/key/sim-kms-key-lifecycle-commands.d.ts +48 -0
  230. package/dist/service/kms/command/key/sim-kms-key-lifecycle-commands.d.ts.map +1 -0
  231. package/dist/service/kms/command/key/sim-kms-key-lifecycle-commands.js +67 -0
  232. package/dist/service/kms/command/key/sim-kms-key-lifecycle-commands.js.map +1 -0
  233. package/dist/service/kms/command/key/sim-kms-key-policy-commands.d.ts +39 -0
  234. package/dist/service/kms/command/key/sim-kms-key-policy-commands.d.ts.map +1 -0
  235. package/dist/service/kms/command/key/sim-kms-key-policy-commands.js +57 -0
  236. package/dist/service/kms/command/key/sim-kms-key-policy-commands.js.map +1 -0
  237. package/dist/service/kms/command/key/sim-kms-key-type.d.ts +14 -0
  238. package/dist/service/kms/command/key/sim-kms-key-type.d.ts.map +1 -0
  239. package/dist/service/kms/command/key/sim-kms-key-type.js +31 -0
  240. package/dist/service/kms/command/key/sim-kms-key-type.js.map +1 -0
  241. package/dist/service/kms/command/key/sim-kms-list-keys.d.ts +29 -0
  242. package/dist/service/kms/command/key/sim-kms-list-keys.d.ts.map +1 -0
  243. package/dist/service/kms/command/key/sim-kms-list-keys.js +31 -0
  244. package/dist/service/kms/command/key/sim-kms-list-keys.js.map +1 -0
  245. package/dist/service/kms/command/key/sim-kms-pending-window.d.ts +17 -0
  246. package/dist/service/kms/command/key/sim-kms-pending-window.d.ts.map +1 -0
  247. package/dist/service/kms/command/key/sim-kms-pending-window.js +37 -0
  248. package/dist/service/kms/command/key/sim-kms-pending-window.js.map +1 -0
  249. package/dist/service/kms/command/sim-kms-command.types.d.ts +10 -0
  250. package/dist/service/kms/command/sim-kms-command.types.d.ts.map +1 -0
  251. package/dist/service/kms/command/sim-kms-command.types.js +2 -0
  252. package/dist/service/kms/command/sim-kms-command.types.js.map +1 -0
  253. package/dist/service/kms/error/sim-kms.error.d.ts +88 -0
  254. package/dist/service/kms/error/sim-kms.error.d.ts.map +1 -0
  255. package/dist/service/kms/error/sim-kms.error.js +101 -0
  256. package/dist/service/kms/error/sim-kms.error.js.map +1 -0
  257. package/dist/service/kms/index.d.ts +8 -0
  258. package/dist/service/kms/index.d.ts.map +1 -0
  259. package/dist/service/kms/index.js +6 -0
  260. package/dist/service/kms/index.js.map +1 -0
  261. package/dist/service/kms/key/sim-kms-alias.d.ts +45 -0
  262. package/dist/service/kms/key/sim-kms-alias.d.ts.map +1 -0
  263. package/dist/service/kms/key/sim-kms-alias.js +59 -0
  264. package/dist/service/kms/key/sim-kms-alias.js.map +1 -0
  265. package/dist/service/kms/key/sim-kms-ciphertext-blob.d.ts +43 -0
  266. package/dist/service/kms/key/sim-kms-ciphertext-blob.d.ts.map +1 -0
  267. package/dist/service/kms/key/sim-kms-ciphertext-blob.js +89 -0
  268. package/dist/service/kms/key/sim-kms-ciphertext-blob.js.map +1 -0
  269. package/dist/service/kms/key/sim-kms-encryption-context.d.ts +34 -0
  270. package/dist/service/kms/key/sim-kms-encryption-context.d.ts.map +1 -0
  271. package/dist/service/kms/key/sim-kms-encryption-context.js +39 -0
  272. package/dist/service/kms/key/sim-kms-encryption-context.js.map +1 -0
  273. package/dist/service/kms/key/sim-kms-key-factory.d.ts +36 -0
  274. package/dist/service/kms/key/sim-kms-key-factory.d.ts.map +1 -0
  275. package/dist/service/kms/key/sim-kms-key-factory.js +47 -0
  276. package/dist/service/kms/key/sim-kms-key-factory.js.map +1 -0
  277. package/dist/service/kms/key/sim-kms-key-identifier.d.ts +44 -0
  278. package/dist/service/kms/key/sim-kms-key-identifier.d.ts.map +1 -0
  279. package/dist/service/kms/key/sim-kms-key-identifier.js +81 -0
  280. package/dist/service/kms/key/sim-kms-key-identifier.js.map +1 -0
  281. package/dist/service/kms/key/sim-kms-key-lifecycle.d.ts +71 -0
  282. package/dist/service/kms/key/sim-kms-key-lifecycle.d.ts.map +1 -0
  283. package/dist/service/kms/key/sim-kms-key-lifecycle.js +106 -0
  284. package/dist/service/kms/key/sim-kms-key-lifecycle.js.map +1 -0
  285. package/dist/service/kms/key/sim-kms-key-material.d.ts +36 -0
  286. package/dist/service/kms/key/sim-kms-key-material.d.ts.map +1 -0
  287. package/dist/service/kms/key/sim-kms-key-material.js +74 -0
  288. package/dist/service/kms/key/sim-kms-key-material.js.map +1 -0
  289. package/dist/service/kms/key/sim-kms-key-metadata.d.ts +45 -0
  290. package/dist/service/kms/key/sim-kms-key-metadata.d.ts.map +1 -0
  291. package/dist/service/kms/key/sim-kms-key-metadata.js +44 -0
  292. package/dist/service/kms/key/sim-kms-key-metadata.js.map +1 -0
  293. package/dist/service/kms/key/sim-kms-key-policy.d.ts +45 -0
  294. package/dist/service/kms/key/sim-kms-key-policy.d.ts.map +1 -0
  295. package/dist/service/kms/key/sim-kms-key-policy.js +69 -0
  296. package/dist/service/kms/key/sim-kms-key-policy.js.map +1 -0
  297. package/dist/service/kms/key/sim-kms-key-store.d.ts +58 -0
  298. package/dist/service/kms/key/sim-kms-key-store.d.ts.map +1 -0
  299. package/dist/service/kms/key/sim-kms-key-store.js +111 -0
  300. package/dist/service/kms/key/sim-kms-key-store.js.map +1 -0
  301. package/dist/service/kms/key/sim-kms-key.d.ts +88 -0
  302. package/dist/service/kms/key/sim-kms-key.d.ts.map +1 -0
  303. package/dist/service/kms/key/sim-kms-key.js +106 -0
  304. package/dist/service/kms/key/sim-kms-key.js.map +1 -0
  305. package/dist/service/kms/key/sim-kms-policy-document.d.ts +30 -0
  306. package/dist/service/kms/key/sim-kms-policy-document.d.ts.map +1 -0
  307. package/dist/service/kms/key/sim-kms-policy-document.js +54 -0
  308. package/dist/service/kms/key/sim-kms-policy-document.js.map +1 -0
  309. package/dist/service/kms/sdk/sim-kms-sdk-command-router.d.ts +18 -0
  310. package/dist/service/kms/sdk/sim-kms-sdk-command-router.d.ts.map +1 -0
  311. package/dist/service/kms/sdk/sim-kms-sdk-command-router.js +80 -0
  312. package/dist/service/kms/sdk/sim-kms-sdk-command-router.js.map +1 -0
  313. package/dist/service/kms/sim-kms.d.ts +105 -0
  314. package/dist/service/kms/sim-kms.d.ts.map +1 -0
  315. package/dist/service/kms/sim-kms.js +187 -0
  316. package/dist/service/kms/sim-kms.js.map +1 -0
  317. package/dist/service/lambda/command/create-function/create-function.handler.d.ts.map +1 -1
  318. package/dist/service/lambda/command/create-function/create-function.handler.js +3 -0
  319. package/dist/service/lambda/command/create-function/create-function.handler.js.map +1 -1
  320. package/dist/service/lambda/function/code/sim-lambda-code-resolver.d.ts +6 -0
  321. package/dist/service/lambda/function/code/sim-lambda-code-resolver.d.ts.map +1 -1
  322. package/dist/service/lambda/function/code/sim-lambda-code-resolver.js +1 -0
  323. package/dist/service/lambda/function/code/sim-lambda-code-resolver.js.map +1 -1
  324. package/dist/service/lambda/function/code/sim-lambda-executable-code.d.ts +15 -0
  325. package/dist/service/lambda/function/code/sim-lambda-executable-code.d.ts.map +1 -1
  326. package/dist/service/lambda/function/code/sim-lambda-executable-code.js +5 -0
  327. package/dist/service/lambda/function/code/sim-lambda-executable-code.js.map +1 -1
  328. package/dist/service/lambda/function/code/sim-lambda-vm-zip-code-factory.d.ts +3 -0
  329. package/dist/service/lambda/function/code/sim-lambda-vm-zip-code-factory.d.ts.map +1 -1
  330. package/dist/service/lambda/function/code/sim-lambda-vm-zip-code-factory.js +3 -0
  331. package/dist/service/lambda/function/code/sim-lambda-vm-zip-code-factory.js.map +1 -1
  332. package/dist/service/lambda/function/code/sim-lambda-vm-zip-code.d.ts +11 -0
  333. package/dist/service/lambda/function/code/sim-lambda-vm-zip-code.d.ts.map +1 -1
  334. package/dist/service/lambda/function/code/sim-lambda-vm-zip-code.js +7 -2
  335. package/dist/service/lambda/function/code/sim-lambda-vm-zip-code.js.map +1 -1
  336. package/dist/service/lambda/function/code/vm/sim-lambda-vm-context.d.ts +6 -5
  337. package/dist/service/lambda/function/code/vm/sim-lambda-vm-context.d.ts.map +1 -1
  338. package/dist/service/lambda/function/code/vm/sim-lambda-vm-context.js +10 -5
  339. package/dist/service/lambda/function/code/vm/sim-lambda-vm-context.js.map +1 -1
  340. package/dist/service/lambda/function/invoke/sim-lambda-process-clock.d.ts +53 -0
  341. package/dist/service/lambda/function/invoke/sim-lambda-process-clock.d.ts.map +1 -0
  342. package/dist/service/lambda/function/invoke/sim-lambda-process-clock.js +101 -0
  343. package/dist/service/lambda/function/invoke/sim-lambda-process-clock.js.map +1 -0
  344. package/dist/service/lambda/function/sim-lambda-function.d.ts +8 -0
  345. package/dist/service/lambda/function/sim-lambda-function.d.ts.map +1 -1
  346. package/dist/service/lambda/function/sim-lambda-function.js +15 -1
  347. package/dist/service/lambda/function/sim-lambda-function.js.map +1 -1
  348. package/dist/service/lambda/serve/sim-lambda-url-router.js +1 -1
  349. package/dist/service/lambda/serve/sim-lambda-url-router.js.map +1 -1
  350. package/dist/service/route53/resolve/sim-r53-service-target-resolver.d.ts +14 -0
  351. package/dist/service/route53/resolve/sim-r53-service-target-resolver.d.ts.map +1 -1
  352. package/dist/service/route53/resolve/sim-r53-service-target-resolver.js +38 -0
  353. package/dist/service/route53/resolve/sim-r53-service-target-resolver.js.map +1 -1
  354. package/dist/service/s3/bucket/public-access/sim-s3-pinning-condition.d.ts +7 -0
  355. package/dist/service/s3/bucket/public-access/sim-s3-pinning-condition.d.ts.map +1 -0
  356. package/dist/service/s3/bucket/public-access/sim-s3-pinning-condition.js +73 -0
  357. package/dist/service/s3/bucket/public-access/sim-s3-pinning-condition.js.map +1 -0
  358. package/dist/service/s3/bucket/public-access/sim-s3-public-access-block.d.ts +61 -0
  359. package/dist/service/s3/bucket/public-access/sim-s3-public-access-block.d.ts.map +1 -0
  360. package/dist/service/s3/bucket/public-access/sim-s3-public-access-block.js +57 -0
  361. package/dist/service/s3/bucket/public-access/sim-s3-public-access-block.js.map +1 -0
  362. package/dist/service/s3/bucket/public-access/sim-s3-public-policy-guard.d.ts +19 -0
  363. package/dist/service/s3/bucket/public-access/sim-s3-public-policy-guard.d.ts.map +1 -0
  364. package/dist/service/s3/bucket/public-access/sim-s3-public-policy-guard.js +28 -0
  365. package/dist/service/s3/bucket/public-access/sim-s3-public-policy-guard.js.map +1 -0
  366. package/dist/service/s3/bucket/public-access/sim-s3-public-policy.d.ts +18 -0
  367. package/dist/service/s3/bucket/public-access/sim-s3-public-policy.d.ts.map +1 -0
  368. package/dist/service/s3/bucket/public-access/sim-s3-public-policy.js +35 -0
  369. package/dist/service/s3/bucket/public-access/sim-s3-public-policy.js.map +1 -0
  370. package/dist/service/s3/bucket/public-access/sim-s3-public-principal.d.ts +11 -0
  371. package/dist/service/s3/bucket/public-access/sim-s3-public-principal.d.ts.map +1 -0
  372. package/dist/service/s3/bucket/public-access/sim-s3-public-principal.js +34 -0
  373. package/dist/service/s3/bucket/public-access/sim-s3-public-principal.js.map +1 -0
  374. package/dist/service/s3/bucket/sim-s3-bucket-arn.d.ts +9 -0
  375. package/dist/service/s3/bucket/sim-s3-bucket-arn.d.ts.map +1 -0
  376. package/dist/service/s3/bucket/sim-s3-bucket-arn.js +10 -0
  377. package/dist/service/s3/bucket/sim-s3-bucket-arn.js.map +1 -0
  378. package/dist/service/s3/bucket/sim-s3-bucket.d.ts +25 -0
  379. package/dist/service/s3/bucket/sim-s3-bucket.d.ts.map +1 -1
  380. package/dist/service/s3/bucket/sim-s3-bucket.js +34 -1
  381. package/dist/service/s3/bucket/sim-s3-bucket.js.map +1 -1
  382. package/dist/service/s3/bucket/sim-s3-endpoint-url.d.ts +16 -0
  383. package/dist/service/s3/bucket/sim-s3-endpoint-url.d.ts.map +1 -0
  384. package/dist/service/s3/bucket/sim-s3-endpoint-url.js +19 -0
  385. package/dist/service/s3/bucket/sim-s3-endpoint-url.js.map +1 -0
  386. package/dist/service/s3/bucket/website/sim-s3-public-website.fixture.d.ts +13 -0
  387. package/dist/service/s3/bucket/website/sim-s3-public-website.fixture.d.ts.map +1 -0
  388. package/dist/service/s3/bucket/website/sim-s3-public-website.fixture.js +36 -0
  389. package/dist/service/s3/bucket/website/sim-s3-public-website.fixture.js.map +1 -0
  390. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-creator.d.ts +27 -0
  391. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-creator.d.ts.map +1 -0
  392. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-creator.js +92 -0
  393. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-creator.js.map +1 -0
  394. package/dist/service/s3/cfn/bucket-policy/sim-cfn-s3-bucket-policy-creator.d.ts +32 -0
  395. package/dist/service/s3/cfn/bucket-policy/sim-cfn-s3-bucket-policy-creator.d.ts.map +1 -0
  396. package/dist/service/s3/cfn/bucket-policy/sim-cfn-s3-bucket-policy-creator.js +55 -0
  397. package/dist/service/s3/cfn/bucket-policy/sim-cfn-s3-bucket-policy-creator.js.map +1 -0
  398. package/dist/service/s3/cfn/sim-cfn-s3-resource-factory.d.ts +2 -4
  399. package/dist/service/s3/cfn/sim-cfn-s3-resource-factory.d.ts.map +1 -1
  400. package/dist/service/s3/cfn/sim-cfn-s3-resource-factory.js +10 -61
  401. package/dist/service/s3/cfn/sim-cfn-s3-resource-factory.js.map +1 -1
  402. package/dist/service/s3/command/authorize/sim-s3-bucket-resource-policies.d.ts +11 -0
  403. package/dist/service/s3/command/authorize/sim-s3-bucket-resource-policies.d.ts.map +1 -0
  404. package/dist/service/s3/command/authorize/sim-s3-bucket-resource-policies.js +22 -0
  405. package/dist/service/s3/command/authorize/sim-s3-bucket-resource-policies.js.map +1 -0
  406. package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy-authorizer.d.ts +23 -0
  407. package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy-authorizer.d.ts.map +1 -0
  408. package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy-authorizer.js +36 -0
  409. package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy-authorizer.js.map +1 -0
  410. package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy.command.d.ts +20 -0
  411. package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy.command.d.ts.map +1 -0
  412. package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy.command.js +2 -0
  413. package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy.command.js.map +1 -0
  414. package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy.handler.d.ts +32 -0
  415. package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy.handler.d.ts.map +1 -0
  416. package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy.handler.js +37 -0
  417. package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy.handler.js.map +1 -0
  418. package/dist/service/s3/command/delete-public-access-block/delete-public-access-block.command.d.ts +20 -0
  419. package/dist/service/s3/command/delete-public-access-block/delete-public-access-block.command.d.ts.map +1 -0
  420. package/dist/service/s3/command/delete-public-access-block/delete-public-access-block.command.js +2 -0
  421. package/dist/service/s3/command/delete-public-access-block/delete-public-access-block.command.js.map +1 -0
  422. package/dist/service/s3/command/delete-public-access-block/delete-public-access-block.handler.d.ts +30 -0
  423. package/dist/service/s3/command/delete-public-access-block/delete-public-access-block.handler.d.ts.map +1 -0
  424. package/dist/service/s3/command/delete-public-access-block/delete-public-access-block.handler.js +35 -0
  425. package/dist/service/s3/command/delete-public-access-block/delete-public-access-block.handler.js.map +1 -0
  426. package/dist/service/s3/command/get-bucket-policy/get-bucket-policy-authorizer.d.ts +20 -0
  427. package/dist/service/s3/command/get-bucket-policy/get-bucket-policy-authorizer.d.ts.map +1 -0
  428. package/dist/service/s3/command/get-bucket-policy/get-bucket-policy-authorizer.js +33 -0
  429. package/dist/service/s3/command/get-bucket-policy/get-bucket-policy-authorizer.js.map +1 -0
  430. package/dist/service/s3/command/get-bucket-policy/get-bucket-policy.command.d.ts +24 -0
  431. package/dist/service/s3/command/get-bucket-policy/get-bucket-policy.command.d.ts.map +1 -0
  432. package/dist/service/s3/command/get-bucket-policy/get-bucket-policy.command.js +2 -0
  433. package/dist/service/s3/command/get-bucket-policy/get-bucket-policy.command.js.map +1 -0
  434. package/dist/service/s3/command/get-bucket-policy/get-bucket-policy.handler.d.ts +29 -0
  435. package/dist/service/s3/command/get-bucket-policy/get-bucket-policy.handler.d.ts.map +1 -0
  436. package/dist/service/s3/command/get-bucket-policy/get-bucket-policy.handler.js +40 -0
  437. package/dist/service/s3/command/get-bucket-policy/get-bucket-policy.handler.js.map +1 -0
  438. package/dist/service/s3/command/get-public-access-block/get-public-access-block.command.d.ts +22 -0
  439. package/dist/service/s3/command/get-public-access-block/get-public-access-block.command.d.ts.map +1 -0
  440. package/dist/service/s3/command/get-public-access-block/get-public-access-block.command.js +2 -0
  441. package/dist/service/s3/command/get-public-access-block/get-public-access-block.command.js.map +1 -0
  442. package/dist/service/s3/command/get-public-access-block/get-public-access-block.handler.d.ts +32 -0
  443. package/dist/service/s3/command/get-public-access-block/get-public-access-block.handler.d.ts.map +1 -0
  444. package/dist/service/s3/command/get-public-access-block/get-public-access-block.handler.js +39 -0
  445. package/dist/service/s3/command/get-public-access-block/get-public-access-block.handler.js.map +1 -0
  446. package/dist/service/s3/command/public-access-block/sim-s3-public-access-block-authorizer.d.ts +31 -0
  447. package/dist/service/s3/command/public-access-block/sim-s3-public-access-block-authorizer.d.ts.map +1 -0
  448. package/dist/service/s3/command/public-access-block/sim-s3-public-access-block-authorizer.js +48 -0
  449. package/dist/service/s3/command/public-access-block/sim-s3-public-access-block-authorizer.js.map +1 -0
  450. package/dist/service/s3/command/put-bucket-policy/put-bucket-policy.handler.d.ts +1 -0
  451. package/dist/service/s3/command/put-bucket-policy/put-bucket-policy.handler.d.ts.map +1 -1
  452. package/dist/service/s3/command/put-bucket-policy/put-bucket-policy.handler.js +7 -6
  453. package/dist/service/s3/command/put-bucket-policy/put-bucket-policy.handler.js.map +1 -1
  454. package/dist/service/s3/command/put-public-access-block/put-public-access-block.command.d.ts +22 -0
  455. package/dist/service/s3/command/put-public-access-block/put-public-access-block.command.d.ts.map +1 -0
  456. package/dist/service/s3/command/put-public-access-block/put-public-access-block.command.js +2 -0
  457. package/dist/service/s3/command/put-public-access-block/put-public-access-block.command.js.map +1 -0
  458. package/dist/service/s3/command/put-public-access-block/put-public-access-block.handler.d.ts +33 -0
  459. package/dist/service/s3/command/put-public-access-block/put-public-access-block.handler.d.ts.map +1 -0
  460. package/dist/service/s3/command/put-public-access-block/put-public-access-block.handler.js +40 -0
  461. package/dist/service/s3/command/put-public-access-block/put-public-access-block.handler.js.map +1 -0
  462. package/dist/service/s3/command/require-sim-s3-bucket.d.ts +10 -0
  463. package/dist/service/s3/command/require-sim-s3-bucket.d.ts.map +1 -0
  464. package/dist/service/s3/command/require-sim-s3-bucket.js +16 -0
  465. package/dist/service/s3/command/require-sim-s3-bucket.js.map +1 -0
  466. package/dist/service/s3/command/sim-s3-command-handlers.d.ts +91 -0
  467. package/dist/service/s3/command/sim-s3-command-handlers.d.ts.map +1 -0
  468. package/dist/service/s3/command/sim-s3-command-handlers.js +115 -0
  469. package/dist/service/s3/command/sim-s3-command-handlers.js.map +1 -0
  470. package/dist/service/s3/command/sim-s3-command.types.d.ts +19 -0
  471. package/dist/service/s3/command/sim-s3-command.types.d.ts.map +1 -0
  472. package/dist/service/s3/command/sim-s3-command.types.js +8 -0
  473. package/dist/service/s3/command/sim-s3-command.types.js.map +1 -0
  474. package/dist/service/s3/error/sim-s3-checksum.error.d.ts +28 -0
  475. package/dist/service/s3/error/sim-s3-checksum.error.d.ts.map +1 -0
  476. package/dist/service/s3/error/sim-s3-checksum.error.js +32 -0
  477. package/dist/service/s3/error/sim-s3-checksum.error.js.map +1 -0
  478. package/dist/service/s3/error/sim-s3.error.d.ts +20 -0
  479. package/dist/service/s3/error/sim-s3.error.d.ts.map +1 -1
  480. package/dist/service/s3/error/sim-s3.error.js +24 -0
  481. package/dist/service/s3/error/sim-s3.error.js.map +1 -1
  482. package/dist/service/s3/sdk/sim-s3-sdk-command-router.d.ts.map +1 -1
  483. package/dist/service/s3/sdk/sim-s3-sdk-command-router.js +20 -0
  484. package/dist/service/s3/sdk/sim-s3-sdk-command-router.js.map +1 -1
  485. package/dist/service/s3/serve/sim-s3-bucket-locator.d.ts +40 -0
  486. package/dist/service/s3/serve/sim-s3-bucket-locator.d.ts.map +1 -0
  487. package/dist/service/s3/serve/sim-s3-bucket-locator.js +59 -0
  488. package/dist/service/s3/serve/sim-s3-bucket-locator.js.map +1 -0
  489. package/dist/service/s3/serve/sim-s3-controller.d.ts +7 -0
  490. package/dist/service/s3/serve/sim-s3-controller.d.ts.map +1 -1
  491. package/dist/service/s3/serve/sim-s3-controller.js +14 -2
  492. package/dist/service/s3/serve/sim-s3-controller.js.map +1 -1
  493. package/dist/service/s3/serve/sim-s3-get-object-controller.d.ts +40 -6
  494. package/dist/service/s3/serve/sim-s3-get-object-controller.d.ts.map +1 -1
  495. package/dist/service/s3/serve/sim-s3-get-object-controller.js +80 -49
  496. package/dist/service/s3/serve/sim-s3-get-object-controller.js.map +1 -1
  497. package/dist/service/s3/serve/sim-s3-object-address.d.ts +42 -0
  498. package/dist/service/s3/serve/sim-s3-object-address.d.ts.map +1 -0
  499. package/dist/service/s3/serve/sim-s3-object-address.js +66 -0
  500. package/dist/service/s3/serve/sim-s3-object-address.js.map +1 -0
  501. package/dist/service/s3/serve/sim-s3-request-router.d.ts +18 -13
  502. package/dist/service/s3/serve/sim-s3-request-router.d.ts.map +1 -1
  503. package/dist/service/s3/serve/sim-s3-request-router.js +72 -48
  504. package/dist/service/s3/serve/sim-s3-request-router.js.map +1 -1
  505. package/dist/service/s3/serve/sim-s3-rest-controller.d.ts +36 -0
  506. package/dist/service/s3/serve/sim-s3-rest-controller.d.ts.map +1 -0
  507. package/dist/service/s3/serve/sim-s3-rest-controller.js +92 -0
  508. package/dist/service/s3/serve/sim-s3-rest-controller.js.map +1 -0
  509. package/dist/service/s3/serve/sim-s3-rest-error-response.d.ts +28 -0
  510. package/dist/service/s3/serve/sim-s3-rest-error-response.d.ts.map +1 -0
  511. package/dist/service/s3/serve/sim-s3-rest-error-response.js +63 -0
  512. package/dist/service/s3/serve/sim-s3-rest-error-response.js.map +1 -0
  513. package/dist/service/s3/serve/sim-s3-rest-refusal.d.ts +7 -0
  514. package/dist/service/s3/serve/sim-s3-rest-refusal.d.ts.map +1 -0
  515. package/dist/service/s3/serve/sim-s3-rest-refusal.js +18 -0
  516. package/dist/service/s3/serve/sim-s3-rest-refusal.js.map +1 -0
  517. package/dist/service/s3/serve/sim-s3-route.d.ts +40 -0
  518. package/dist/service/s3/serve/sim-s3-route.d.ts.map +1 -0
  519. package/dist/service/s3/serve/sim-s3-route.js +7 -0
  520. package/dist/service/s3/serve/sim-s3-route.js.map +1 -0
  521. package/dist/service/s3/serve/sim-s3-upload-checksum.d.ts +27 -0
  522. package/dist/service/s3/serve/sim-s3-upload-checksum.d.ts.map +1 -0
  523. package/dist/service/s3/serve/sim-s3-upload-checksum.js +86 -0
  524. package/dist/service/s3/serve/sim-s3-upload-checksum.js.map +1 -0
  525. package/dist/service/s3/serve/website/sim-s3-website-object-loader.d.ts +51 -0
  526. package/dist/service/s3/serve/website/sim-s3-website-object-loader.d.ts.map +1 -0
  527. package/dist/service/s3/serve/website/sim-s3-website-object-loader.js +75 -0
  528. package/dist/service/s3/serve/website/sim-s3-website-object-loader.js.map +1 -0
  529. package/dist/service/s3/serve/website/sim-s3-website-object.d.ts +18 -0
  530. package/dist/service/s3/serve/website/sim-s3-website-object.d.ts.map +1 -0
  531. package/dist/service/s3/serve/website/sim-s3-website-object.js +28 -0
  532. package/dist/service/s3/serve/website/sim-s3-website-object.js.map +1 -0
  533. package/dist/service/s3/serve/website/sim-s3-website-responses.d.ts +27 -0
  534. package/dist/service/s3/serve/website/sim-s3-website-responses.d.ts.map +1 -0
  535. package/dist/service/s3/serve/website/sim-s3-website-responses.js +44 -0
  536. package/dist/service/s3/serve/website/sim-s3-website-responses.js.map +1 -0
  537. package/dist/service/s3/sim-s3.d.ts +34 -9
  538. package/dist/service/s3/sim-s3.d.ts.map +1 -1
  539. package/dist/service/s3/sim-s3.js +65 -55
  540. package/dist/service/s3/sim-s3.js.map +1 -1
  541. package/dist/util/clock/sim-clock-date.d.ts +20 -0
  542. package/dist/util/clock/sim-clock-date.d.ts.map +1 -0
  543. package/dist/util/clock/sim-clock-date.js +43 -0
  544. package/dist/util/clock/sim-clock-date.js.map +1 -0
  545. package/package.json +17 -11
@@ -0,0 +1,71 @@
1
+ /**
2
+ * The lifecycle states a simulated KMS key can be in.
3
+ *
4
+ * Real KMS has more of them, covering imported material, external key stores
5
+ * and multi-Region replication. These are the three a key reaches through the
6
+ * operations this simulation supports.
7
+ */
8
+ export declare const SimKmsKeyState: {
9
+ readonly Enabled: "Enabled";
10
+ readonly Disabled: "Disabled";
11
+ readonly PendingDeletion: "PendingDeletion";
12
+ };
13
+ export type SimKmsKeyState = (typeof SimKmsKeyState)[keyof typeof SimKmsKeyState];
14
+ /**
15
+ * The lifecycle state of one simulated KMS key, and the moves it allows.
16
+ *
17
+ * Kept apart from the key itself so that the key is about what it holds and
18
+ * what it can do with it, while the rules about which transitions are legal
19
+ * and which failure each illegal one produces live in one place.
20
+ */
21
+ export declare class SimKmsKeyLifecycle {
22
+ private readonly keyArn;
23
+ private currentState;
24
+ private scheduledDeletionDate;
25
+ constructor(keyArn: string);
26
+ /**
27
+ * The current lifecycle state.
28
+ */
29
+ get state(): SimKmsKeyState;
30
+ /**
31
+ * Whether the key is enabled, as DescribeKey reports it.
32
+ */
33
+ get isEnabled(): boolean;
34
+ /**
35
+ * When the key is due to be deleted, if deletion is scheduled.
36
+ */
37
+ get deletionDate(): Date | undefined;
38
+ /**
39
+ * Enable the key, if it is not pending deletion.
40
+ */
41
+ enable(): void;
42
+ /**
43
+ * Disable the key, if it is not pending deletion.
44
+ */
45
+ disable(): void;
46
+ /**
47
+ * Schedule the key for deletion after a recovery window.
48
+ *
49
+ * Real KMS does not delete a key on request. It waits out the window, during
50
+ * which the key is unusable but recoverable, because deleting key material
51
+ * destroys every ciphertext ever produced under it.
52
+ */
53
+ scheduleDeletion(deletionDate: Date): void;
54
+ /**
55
+ * Cancel a scheduled deletion, leaving the key disabled.
56
+ *
57
+ * Real KMS does not restore the key to enabled: cancelling returns it to
58
+ * Disabled, and enabling it again is a separate deliberate step.
59
+ */
60
+ cancelDeletion(): void;
61
+ /**
62
+ * Refuse a cryptographic operation the current state does not allow.
63
+ *
64
+ * The two unusable states fail differently on real KMS, and the difference
65
+ * is worth keeping: DisabledException says to enable the key, while
66
+ * KMSInvalidStateException says the key is on its way out.
67
+ */
68
+ requireUsable(): void;
69
+ private refuseWhilePendingDeletion;
70
+ }
71
+ //# sourceMappingURL=sim-kms-key-lifecycle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-kms-key-lifecycle.d.ts","sourceRoot":"","sources":["../../../../src/service/kms/key/sim-kms-key-lifecycle.ts"],"names":[],"mappings":"AAKA;;;;;;GAMG;AACH,eAAO,MAAM,cAAc;aACzB,OAAO,EAAE,SAAS;aAClB,QAAQ,EAAE,UAAU;aACpB,eAAe,EAAE,iBAAiB;CAC1B,CAAC;AAEX,MAAM,MAAM,cAAc,GACxB,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC;AAEvD;;;;;;GAMG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,YAAY,CAA0C;IAC9D,OAAO,CAAC,qBAAqB,CAAmB;IAEhD,YAAY,MAAM,EAAE,MAAM,EAEzB;IAED;;OAEG;IACH,IAAI,KAAK,IAAI,cAAc,CAE1B;IAED;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED;;OAEG;IACH,IAAI,YAAY,IAAI,IAAI,GAAG,SAAS,CAEnC;IAED;;OAEG;IACH,MAAM,IAAI,IAAI,CAGb;IAED;;OAEG;IACH,OAAO,IAAI,IAAI,CAGd;IAED;;;;;;OAMG;IACH,gBAAgB,CAAC,YAAY,EAAE,IAAI,GAAG,IAAI,CAIzC;IAED;;;;;OAKG;IACH,cAAc,IAAI,IAAI,CASrB;IAED;;;;;;OAMG;IACH,aAAa,IAAI,IAAI,CAUpB;IAED,OAAO,CAAC,0BAA0B;CAOnC"}
@@ -0,0 +1,106 @@
1
+ import { SimKmsDisabledException, SimKmsInvalidStateException, } from "../error/sim-kms.error.js";
2
+ /**
3
+ * The lifecycle states a simulated KMS key can be in.
4
+ *
5
+ * Real KMS has more of them, covering imported material, external key stores
6
+ * and multi-Region replication. These are the three a key reaches through the
7
+ * operations this simulation supports.
8
+ */
9
+ export const SimKmsKeyState = {
10
+ Enabled: "Enabled",
11
+ Disabled: "Disabled",
12
+ PendingDeletion: "PendingDeletion",
13
+ };
14
+ /**
15
+ * The lifecycle state of one simulated KMS key, and the moves it allows.
16
+ *
17
+ * Kept apart from the key itself so that the key is about what it holds and
18
+ * what it can do with it, while the rules about which transitions are legal
19
+ * and which failure each illegal one produces live in one place.
20
+ */
21
+ export class SimKmsKeyLifecycle {
22
+ keyArn;
23
+ currentState = SimKmsKeyState.Enabled;
24
+ scheduledDeletionDate;
25
+ constructor(keyArn) {
26
+ this.keyArn = keyArn;
27
+ }
28
+ /**
29
+ * The current lifecycle state.
30
+ */
31
+ get state() {
32
+ return this.currentState;
33
+ }
34
+ /**
35
+ * Whether the key is enabled, as DescribeKey reports it.
36
+ */
37
+ get isEnabled() {
38
+ return this.currentState === SimKmsKeyState.Enabled;
39
+ }
40
+ /**
41
+ * When the key is due to be deleted, if deletion is scheduled.
42
+ */
43
+ get deletionDate() {
44
+ return this.scheduledDeletionDate;
45
+ }
46
+ /**
47
+ * Enable the key, if it is not pending deletion.
48
+ */
49
+ enable() {
50
+ this.refuseWhilePendingDeletion("enable");
51
+ this.currentState = SimKmsKeyState.Enabled;
52
+ }
53
+ /**
54
+ * Disable the key, if it is not pending deletion.
55
+ */
56
+ disable() {
57
+ this.refuseWhilePendingDeletion("disable");
58
+ this.currentState = SimKmsKeyState.Disabled;
59
+ }
60
+ /**
61
+ * Schedule the key for deletion after a recovery window.
62
+ *
63
+ * Real KMS does not delete a key on request. It waits out the window, during
64
+ * which the key is unusable but recoverable, because deleting key material
65
+ * destroys every ciphertext ever produced under it.
66
+ */
67
+ scheduleDeletion(deletionDate) {
68
+ this.refuseWhilePendingDeletion("schedule");
69
+ this.currentState = SimKmsKeyState.PendingDeletion;
70
+ this.scheduledDeletionDate = deletionDate;
71
+ }
72
+ /**
73
+ * Cancel a scheduled deletion, leaving the key disabled.
74
+ *
75
+ * Real KMS does not restore the key to enabled: cancelling returns it to
76
+ * Disabled, and enabling it again is a separate deliberate step.
77
+ */
78
+ cancelDeletion() {
79
+ if (this.currentState !== SimKmsKeyState.PendingDeletion) {
80
+ throw new SimKmsInvalidStateException(`Key ${this.keyArn} is not pending deletion`);
81
+ }
82
+ this.currentState = SimKmsKeyState.Disabled;
83
+ this.scheduledDeletionDate = undefined;
84
+ }
85
+ /**
86
+ * Refuse a cryptographic operation the current state does not allow.
87
+ *
88
+ * The two unusable states fail differently on real KMS, and the difference
89
+ * is worth keeping: DisabledException says to enable the key, while
90
+ * KMSInvalidStateException says the key is on its way out.
91
+ */
92
+ requireUsable() {
93
+ if (this.currentState === SimKmsKeyState.PendingDeletion) {
94
+ throw new SimKmsInvalidStateException(`Key ${this.keyArn} is pending deletion and cannot be used`);
95
+ }
96
+ if (this.currentState === SimKmsKeyState.Disabled) {
97
+ throw new SimKmsDisabledException(`Key ${this.keyArn} is disabled`);
98
+ }
99
+ }
100
+ refuseWhilePendingDeletion(action) {
101
+ if (this.currentState === SimKmsKeyState.PendingDeletion) {
102
+ throw new SimKmsInvalidStateException(`Key ${this.keyArn} is already pending deletion and cannot be ${action}d`);
103
+ }
104
+ }
105
+ }
106
+ //# sourceMappingURL=sim-kms-key-lifecycle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-kms-key-lifecycle.js","sourceRoot":"","sources":["../../../../src/service/kms/key/sim-kms-key-lifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,2BAA2B,GAC5B,MAAM,2BAA2B,CAAC;AAEnC;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,UAAU;IACpB,eAAe,EAAE,iBAAiB;CAC1B,CAAC;AAKX;;;;;;GAMG;AACH,MAAM,OAAO,kBAAkB;IACZ,MAAM,CAAS;IACxB,YAAY,GAAmB,cAAc,CAAC,OAAO,CAAC;IACtD,qBAAqB,CAAmB;IAEhD,YAAY,MAAc;QACxB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,YAAY,KAAK,cAAc,CAAC,OAAO,CAAC;IACtD,CAAC;IAED;;OAEG;IACH,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,CAAC;QAC1C,IAAI,CAAC,YAAY,GAAG,cAAc,CAAC,OAAO,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,OAAO;QACL,IAAI,CAAC,0BAA0B,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,YAAY,GAAG,cAAc,CAAC,QAAQ,CAAC;IAC9C,CAAC;IAED;;;;;;OAMG;IACH,gBAAgB,CAAC,YAAkB;QACjC,IAAI,CAAC,0BAA0B,CAAC,UAAU,CAAC,CAAC;QAC5C,IAAI,CAAC,YAAY,GAAG,cAAc,CAAC,eAAe,CAAC;QACnD,IAAI,CAAC,qBAAqB,GAAG,YAAY,CAAC;IAC5C,CAAC;IAED;;;;;OAKG;IACH,cAAc;QACZ,IAAI,IAAI,CAAC,YAAY,KAAK,cAAc,CAAC,eAAe,EAAE,CAAC;YACzD,MAAM,IAAI,2BAA2B,CACnC,OAAO,IAAI,CAAC,MAAM,0BAA0B,CAC7C,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,YAAY,GAAG,cAAc,CAAC,QAAQ,CAAC;QAC5C,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;IACzC,CAAC;IAED;;;;;;OAMG;IACH,aAAa;QACX,IAAI,IAAI,CAAC,YAAY,KAAK,cAAc,CAAC,eAAe,EAAE,CAAC;YACzD,MAAM,IAAI,2BAA2B,CACnC,OAAO,IAAI,CAAC,MAAM,yCAAyC,CAC5D,CAAC;QACJ,CAAC;QAED,IAAI,IAAI,CAAC,YAAY,KAAK,cAAc,CAAC,QAAQ,EAAE,CAAC;YAClD,MAAM,IAAI,uBAAuB,CAAC,OAAO,IAAI,CAAC,MAAM,cAAc,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IAEO,0BAA0B,CAAC,MAAc;QAC/C,IAAI,IAAI,CAAC,YAAY,KAAK,cAAc,CAAC,eAAe,EAAE,CAAC;YACzD,MAAM,IAAI,2BAA2B,CACnC,OAAO,IAAI,CAAC,MAAM,8CAA8C,MAAM,GAAG,CAC1E,CAAC;QACJ,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,36 @@
1
+ import { SimKmsCiphertextBlobParts, type SimKmsCiphertextBlob } from "./sim-kms-ciphertext-blob.js";
2
+ import { type SimKmsEncryptionContext } from "./sim-kms-encryption-context.js";
3
+ interface SimKmsKeyMaterialProperties {
4
+ readonly keyArn: string;
5
+ readonly blob: SimKmsCiphertextBlob;
6
+ readonly bytes?: Uint8Array | undefined;
7
+ }
8
+ /**
9
+ * The key material of one simulated KMS key, and the operations that use it.
10
+ *
11
+ * The bytes are generated here and never leave: nothing exposes them, exactly
12
+ * as real key material never leaves KMS. That is a modelling choice rather
13
+ * than a security boundary, since this all runs in one process and anything
14
+ * sharing that process can reach the object.
15
+ */
16
+ export declare class SimKmsKeyMaterial {
17
+ private readonly keyArn;
18
+ private readonly blob;
19
+ private readonly bytes;
20
+ private readonly aad;
21
+ constructor(properties: SimKmsKeyMaterialProperties);
22
+ /**
23
+ * Encrypt plaintext under this key, binding the encryption context.
24
+ */
25
+ encrypt(plaintext: Uint8Array, encryptionContext?: SimKmsEncryptionContext): Uint8Array;
26
+ /**
27
+ * Decrypt a ciphertext produced under this key.
28
+ *
29
+ * A wrong encryption context fails the GCM authentication tag rather than an
30
+ * explicit comparison, so the failure comes from the cipher for the same
31
+ * reason it does on real KMS.
32
+ */
33
+ decrypt(parts: SimKmsCiphertextBlobParts, encryptionContext?: SimKmsEncryptionContext): Uint8Array;
34
+ }
35
+ export {};
36
+ //# sourceMappingURL=sim-kms-key-material.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-kms-key-material.d.ts","sourceRoot":"","sources":["../../../../src/service/kms/key/sim-kms-key-material.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,yBAAyB,EACzB,KAAK,oBAAoB,EAC1B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,iCAAiC,CAAC;AAezC,UAAU,2BAA2B;IACnC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,oBAAoB,CAAC;IACpC,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;CACzC;AAED;;;;;;;GAOG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAuB;IAC5C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAa;IACnC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAoC;IAExD,YAAY,UAAU,EAAE,2BAA2B,EAIlD;IAED;;OAEG;IACH,OAAO,CACL,SAAS,EAAE,UAAU,EACrB,iBAAiB,CAAC,EAAE,uBAAuB,GAC1C,UAAU,CAoBZ;IAED;;;;;;OAMG;IACH,OAAO,CACL,KAAK,EAAE,yBAAyB,EAChC,iBAAiB,CAAC,EAAE,uBAAuB,GAC1C,UAAU,CAgBZ;CACF"}
@@ -0,0 +1,74 @@
1
+ import { createCipheriv, createDecipheriv, randomBytes } from "node:crypto";
2
+ import { SimKmsInvalidCiphertextException } from "../error/sim-kms.error.js";
3
+ import { SimKmsCiphertextBlobParts, } from "./sim-kms-ciphertext-blob.js";
4
+ import { SimKmsEncryptionContextAad, } from "./sim-kms-encryption-context.js";
5
+ /**
6
+ * The cipher backing a simulated symmetric KMS key.
7
+ *
8
+ * Real KMS symmetric keys are AES-256-GCM, so this uses the same thing rather
9
+ * than a stand-in. Encryption in this simulation is real encryption: a
10
+ * ciphertext genuinely cannot be read without the key, and the authentication
11
+ * tag genuinely fails on a tampered blob or a mismatched encryption context.
12
+ */
13
+ const algorithm = "aes-256-gcm";
14
+ const keyLength = 32;
15
+ const ivLength = 12;
16
+ /**
17
+ * The key material of one simulated KMS key, and the operations that use it.
18
+ *
19
+ * The bytes are generated here and never leave: nothing exposes them, exactly
20
+ * as real key material never leaves KMS. That is a modelling choice rather
21
+ * than a security boundary, since this all runs in one process and anything
22
+ * sharing that process can reach the object.
23
+ */
24
+ export class SimKmsKeyMaterial {
25
+ keyArn;
26
+ blob;
27
+ bytes;
28
+ aad = new SimKmsEncryptionContextAad();
29
+ constructor(properties) {
30
+ this.keyArn = properties.keyArn;
31
+ this.blob = properties.blob;
32
+ this.bytes = properties.bytes ?? randomBytes(keyLength);
33
+ }
34
+ /**
35
+ * Encrypt plaintext under this key, binding the encryption context.
36
+ */
37
+ encrypt(plaintext, encryptionContext) {
38
+ const iv = randomBytes(ivLength);
39
+ const cipher = createCipheriv(algorithm, this.bytes, iv);
40
+ cipher.setAAD(this.aad.serialise(encryptionContext));
41
+ const ciphertext = Buffer.concat([
42
+ cipher.update(plaintext),
43
+ cipher.final(),
44
+ ]);
45
+ const authTag = cipher.getAuthTag();
46
+ return this.blob.encode(new SimKmsCiphertextBlobParts({
47
+ keyArn: this.keyArn,
48
+ iv: Uint8Array.from(iv),
49
+ authTag: Uint8Array.from(authTag),
50
+ ciphertext: Uint8Array.from(ciphertext),
51
+ }));
52
+ }
53
+ /**
54
+ * Decrypt a ciphertext produced under this key.
55
+ *
56
+ * A wrong encryption context fails the GCM authentication tag rather than an
57
+ * explicit comparison, so the failure comes from the cipher for the same
58
+ * reason it does on real KMS.
59
+ */
60
+ decrypt(parts, encryptionContext) {
61
+ const decipher = createDecipheriv(algorithm, this.bytes, parts.iv);
62
+ decipher.setAAD(this.aad.serialise(encryptionContext));
63
+ decipher.setAuthTag(parts.authTag);
64
+ try {
65
+ return Uint8Array.from(Buffer.concat([decipher.update(parts.ciphertext), decipher.final()]));
66
+ }
67
+ catch {
68
+ throw new SimKmsInvalidCiphertextException("The ciphertext could not be decrypted: it was produced under a " +
69
+ "different key, with a different encryption context, or has been " +
70
+ "altered");
71
+ }
72
+ }
73
+ }
74
+ //# sourceMappingURL=sim-kms-key-material.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-kms-key-material.js","sourceRoot":"","sources":["../../../../src/service/kms/key/sim-kms-key-material.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,EAAE,gCAAgC,EAAE,MAAM,2BAA2B,CAAC;AAC7E,OAAO,EACL,yBAAyB,GAE1B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,0BAA0B,GAE3B,MAAM,iCAAiC,CAAC;AAEzC;;;;;;;GAOG;AACH,MAAM,SAAS,GAAG,aAAa,CAAC;AAEhC,MAAM,SAAS,GAAG,EAAE,CAAC;AACrB,MAAM,QAAQ,GAAG,EAAE,CAAC;AAQpB;;;;;;;GAOG;AACH,MAAM,OAAO,iBAAiB;IACX,MAAM,CAAS;IACf,IAAI,CAAuB;IAC3B,KAAK,CAAa;IAClB,GAAG,GAAG,IAAI,0BAA0B,EAAE,CAAC;IAExD,YAAY,UAAuC;QACjD,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;QAChC,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;QAC5B,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,IAAI,WAAW,CAAC,SAAS,CAAC,CAAC;IAC1D,CAAC;IAED;;OAEG;IACH,OAAO,CACL,SAAqB,EACrB,iBAA2C;QAE3C,MAAM,EAAE,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;QACjC,MAAM,MAAM,GAAG,cAAc,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACzD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAErD,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC;YAC/B,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC;YACxB,MAAM,CAAC,KAAK,EAAE;SACf,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;QAEpC,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CACrB,IAAI,yBAAyB,CAAC;YAC5B,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACvB,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;YACjC,UAAU,EAAE,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC;SACxC,CAAC,CACH,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,OAAO,CACL,KAAgC,EAChC,iBAA2C;QAE3C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QACnE,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC,CAAC;QACvD,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAEnC,IAAI,CAAC;YACH,OAAO,UAAU,CAAC,IAAI,CACpB,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CACrE,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,gCAAgC,CACxC,iEAAiE;gBAC/D,kEAAkE;gBAClE,SAAS,CACZ,CAAC;QACJ,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,45 @@
1
+ import type { SimAwsAccountId } from "../../aws/sim-aws-account.js";
2
+ import type { SimKmsKey, SimKmsKeyManager, SimKmsKeyState } from "./sim-kms-key.js";
3
+ /**
4
+ * The KeyMetadata structure CreateKey and DescribeKey return.
5
+ *
6
+ * Only symmetric encryption keys are simulated, so the fields describing key
7
+ * type are constants rather than stored state. They are reported anyway
8
+ * because application code reads them to decide what a key can do.
9
+ */
10
+ export interface SimKmsKeyMetadata {
11
+ readonly AWSAccountId: SimAwsAccountId;
12
+ readonly KeyId: string;
13
+ readonly Arn: string;
14
+ readonly CreationDate: Date;
15
+ readonly Enabled: boolean;
16
+ readonly Description: string;
17
+ readonly KeyUsage: "ENCRYPT_DECRYPT";
18
+ readonly KeyState: SimKmsKeyState;
19
+ readonly DeletionDate?: Date | undefined;
20
+ readonly Origin: "AWS_KMS";
21
+ readonly KeyManager: SimKmsKeyManager;
22
+ readonly KeySpec: "SYMMETRIC_DEFAULT";
23
+ readonly CustomerMasterKeySpec: "SYMMETRIC_DEFAULT";
24
+ readonly EncryptionAlgorithms: readonly ["SYMMETRIC_DEFAULT"];
25
+ readonly MultiRegion: false;
26
+ }
27
+ /**
28
+ * Builds the AWS-shaped view of a stored key.
29
+ *
30
+ * Kept apart from SimKmsKey so the stored key stays a model of what a key is
31
+ * and does, rather than also owning the shape two commands happen to return.
32
+ */
33
+ export declare class SimKmsKeyMetadataView {
34
+ private readonly accountId;
35
+ constructor(accountId: SimAwsAccountId);
36
+ /**
37
+ * Describe a key the way KMS reports it.
38
+ */
39
+ describe(key: SimKmsKey): SimKmsKeyMetadata;
40
+ /**
41
+ * Copy a date, so the response never hands out the key's own instance.
42
+ */
43
+ private copied;
44
+ }
45
+ //# sourceMappingURL=sim-kms-key-metadata.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-kms-key-metadata.d.ts","sourceRoot":"","sources":["../../../../src/service/kms/key/sim-kms-key-metadata.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,KAAK,EACV,SAAS,EACT,gBAAgB,EAChB,cAAc,EACf,MAAM,kBAAkB,CAAC;AAE1B;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,YAAY,EAAE,eAAe,CAAC;IACvC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,YAAY,EAAE,IAAI,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IACrC,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,YAAY,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC;IACzC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC;IACtC,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAAC;IACtC,QAAQ,CAAC,qBAAqB,EAAE,mBAAmB,CAAC;IACpD,QAAQ,CAAC,oBAAoB,EAAE,SAAS,CAAC,mBAAmB,CAAC,CAAC;IAC9D,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC;CAC7B;AAED;;;;;GAKG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAkB;IAE5C,YAAY,SAAS,EAAE,eAAe,EAErC;IAED;;OAEG;IACH,QAAQ,CAAC,GAAG,EAAE,SAAS,GAAG,iBAAiB,CAkB1C;IAED;;OAEG;IACH,OAAO,CAAC,MAAM;CAOf"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Builds the AWS-shaped view of a stored key.
3
+ *
4
+ * Kept apart from SimKmsKey so the stored key stays a model of what a key is
5
+ * and does, rather than also owning the shape two commands happen to return.
6
+ */
7
+ export class SimKmsKeyMetadataView {
8
+ accountId;
9
+ constructor(accountId) {
10
+ this.accountId = accountId;
11
+ }
12
+ /**
13
+ * Describe a key the way KMS reports it.
14
+ */
15
+ describe(key) {
16
+ return {
17
+ AWSAccountId: this.accountId,
18
+ KeyId: key.keyId,
19
+ Arn: key.arn,
20
+ CreationDate: new Date(key.creationDate),
21
+ Enabled: key.isEnabled,
22
+ Description: key.description,
23
+ KeyUsage: "ENCRYPT_DECRYPT",
24
+ KeyState: key.keyState,
25
+ DeletionDate: this.copied(key.deletionDate),
26
+ Origin: "AWS_KMS",
27
+ KeyManager: key.keyManager,
28
+ KeySpec: "SYMMETRIC_DEFAULT",
29
+ CustomerMasterKeySpec: "SYMMETRIC_DEFAULT",
30
+ EncryptionAlgorithms: ["SYMMETRIC_DEFAULT"],
31
+ MultiRegion: false,
32
+ };
33
+ }
34
+ /**
35
+ * Copy a date, so the response never hands out the key's own instance.
36
+ */
37
+ copied(date) {
38
+ if (date === undefined) {
39
+ return undefined;
40
+ }
41
+ return new Date(date);
42
+ }
43
+ }
44
+ //# sourceMappingURL=sim-kms-key-metadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-kms-key-metadata.js","sourceRoot":"","sources":["../../../../src/service/kms/key/sim-kms-key-metadata.ts"],"names":[],"mappings":"AAgCA;;;;;GAKG;AACH,MAAM,OAAO,qBAAqB;IACf,SAAS,CAAkB;IAE5C,YAAY,SAA0B;QACpC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,GAAc;QACrB,OAAO;YACL,YAAY,EAAE,IAAI,CAAC,SAAS;YAC5B,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,GAAG,EAAE,GAAG,CAAC,GAAG;YACZ,YAAY,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC;YACxC,OAAO,EAAE,GAAG,CAAC,SAAS;YACtB,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,QAAQ,EAAE,iBAAiB;YAC3B,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC;YAC3C,MAAM,EAAE,SAAS;YACjB,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,OAAO,EAAE,mBAAmB;YAC5B,qBAAqB,EAAE,mBAAmB;YAC1C,oBAAoB,EAAE,CAAC,mBAAmB,CAAC;YAC3C,WAAW,EAAE,KAAK;SACnB,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,IAAsB;QACnC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;CACF"}
@@ -0,0 +1,45 @@
1
+ import type { SimAwsAccountId } from "../../aws/sim-aws-account.js";
2
+ import type { SimIamResourcePolicyInput } from "../../iam/authorize/context/sim-iam-auth-z-context-builder.js";
3
+ import type { SimIamPolicyDocument } from "../../iam/policy/sim-iam-policy.js";
4
+ /**
5
+ * The name real KMS reports a key's policy under. A KMS key has exactly one
6
+ * policy and it is always called this.
7
+ */
8
+ export declare const simKmsKeyPolicyName = "default";
9
+ /**
10
+ * The key policy of one simulated KMS key.
11
+ *
12
+ * Every KMS key has a policy and it cannot be removed, which is what makes it
13
+ * the root of trust for the key: an IAM policy granting kms:Decrypt achieves
14
+ * nothing unless the key policy allows the access too. That is unlike other
15
+ * AWS resource policies, where the resource having no policy at all simply
16
+ * leaves the decision to IAM.
17
+ */
18
+ export declare class SimKmsKeyPolicy {
19
+ private readonly keyArn;
20
+ private policyDocument;
21
+ constructor(keyArn: string, document: SimIamPolicyDocument);
22
+ /**
23
+ * Build the default policy CreateKey applies when given no policy.
24
+ *
25
+ * This is the policy the AWS console and CLI create: it allows the Account
26
+ * root every KMS action, which is how a key ends up usable by whichever of
27
+ * the Account's principals IAM allows. A key created with a policy that
28
+ * omits this statement can only be used by the principals it names, and no
29
+ * IAM policy will widen that.
30
+ */
31
+ static default(keyArn: string, accountId: SimAwsAccountId): SimKmsKeyPolicy;
32
+ /**
33
+ * The stored policy document.
34
+ */
35
+ document(): SimIamPolicyDocument;
36
+ /**
37
+ * Replace the stored policy document.
38
+ */
39
+ replaceWith(document: SimIamPolicyDocument): void;
40
+ /**
41
+ * This policy as the resource-policy side of an IAM authorization.
42
+ */
43
+ asResourcePolicy(): SimIamResourcePolicyInput;
44
+ }
45
+ //# sourceMappingURL=sim-kms-key-policy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-kms-key-policy.d.ts","sourceRoot":"","sources":["../../../../src/service/kms/key/sim-kms-key-policy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+DAA+D,CAAC;AAC/G,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAE/E;;;GAGG;AACH,eAAO,MAAM,mBAAmB,YAAY,CAAC;AAE7C;;;;;;;;GAQG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,cAAc,CAAuB;IAE7C,YAAY,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,oBAAoB,EAGzD;IAED;;;;;;;;OAQG;IACH,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,eAAe,GAAG,eAAe,CAc1E;IAED;;OAEG;IACH,QAAQ,IAAI,oBAAoB,CAE/B;IAED;;OAEG;IACH,WAAW,CAAC,QAAQ,EAAE,oBAAoB,GAAG,IAAI,CAEhD;IAED;;OAEG;IACH,gBAAgB,IAAI,yBAAyB,CAM5C;CACF"}
@@ -0,0 +1,69 @@
1
+ /**
2
+ * The name real KMS reports a key's policy under. A KMS key has exactly one
3
+ * policy and it is always called this.
4
+ */
5
+ export const simKmsKeyPolicyName = "default";
6
+ /**
7
+ * The key policy of one simulated KMS key.
8
+ *
9
+ * Every KMS key has a policy and it cannot be removed, which is what makes it
10
+ * the root of trust for the key: an IAM policy granting kms:Decrypt achieves
11
+ * nothing unless the key policy allows the access too. That is unlike other
12
+ * AWS resource policies, where the resource having no policy at all simply
13
+ * leaves the decision to IAM.
14
+ */
15
+ export class SimKmsKeyPolicy {
16
+ keyArn;
17
+ policyDocument;
18
+ constructor(keyArn, document) {
19
+ this.keyArn = keyArn;
20
+ this.policyDocument = document;
21
+ }
22
+ /**
23
+ * Build the default policy CreateKey applies when given no policy.
24
+ *
25
+ * This is the policy the AWS console and CLI create: it allows the Account
26
+ * root every KMS action, which is how a key ends up usable by whichever of
27
+ * the Account's principals IAM allows. A key created with a policy that
28
+ * omits this statement can only be used by the principals it names, and no
29
+ * IAM policy will widen that.
30
+ */
31
+ static default(keyArn, accountId) {
32
+ return new SimKmsKeyPolicy(keyArn, {
33
+ Version: "2012-10-17",
34
+ Id: "key-default-1",
35
+ Statement: [
36
+ {
37
+ Sid: "Enable IAM User Permissions",
38
+ Effect: "Allow",
39
+ Principal: { AWS: `arn:aws:iam::${accountId}:root` },
40
+ Action: "kms:*",
41
+ Resource: "*",
42
+ },
43
+ ],
44
+ });
45
+ }
46
+ /**
47
+ * The stored policy document.
48
+ */
49
+ document() {
50
+ return this.policyDocument;
51
+ }
52
+ /**
53
+ * Replace the stored policy document.
54
+ */
55
+ replaceWith(document) {
56
+ this.policyDocument = document;
57
+ }
58
+ /**
59
+ * This policy as the resource-policy side of an IAM authorization.
60
+ */
61
+ asResourcePolicy() {
62
+ return {
63
+ document: this.policyDocument,
64
+ policyName: simKmsKeyPolicyName,
65
+ resourceArn: this.keyArn,
66
+ };
67
+ }
68
+ }
69
+ //# sourceMappingURL=sim-kms-key-policy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-kms-key-policy.js","sourceRoot":"","sources":["../../../../src/service/kms/key/sim-kms-key-policy.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,SAAS,CAAC;AAE7C;;;;;;;;GAQG;AACH,MAAM,OAAO,eAAe;IACT,MAAM,CAAS;IACxB,cAAc,CAAuB;IAE7C,YAAY,MAAc,EAAE,QAA8B;QACxD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC;IACjC,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,CAAC,OAAO,CAAC,MAAc,EAAE,SAA0B;QACvD,OAAO,IAAI,eAAe,CAAC,MAAM,EAAE;YACjC,OAAO,EAAE,YAAY;YACrB,EAAE,EAAE,eAAe;YACnB,SAAS,EAAE;gBACT;oBACE,GAAG,EAAE,6BAA6B;oBAClC,MAAM,EAAE,OAAO;oBACf,SAAS,EAAE,EAAE,GAAG,EAAE,gBAAgB,SAAS,OAAO,EAAE;oBACpD,MAAM,EAAE,OAAO;oBACf,QAAQ,EAAE,GAAG;iBACd;aACF;SACF,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,QAA8B;QACxC,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,gBAAgB;QACd,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,cAAc;YAC7B,UAAU,EAAE,mBAAmB;YAC/B,WAAW,EAAE,IAAI,CAAC,MAAM;SACzB,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,58 @@
1
+ import type { SimAwsAccountRegionScope } from "../../aws/sim-aws-account-region-scope.js";
2
+ import { SimKmsAlias } from "./sim-kms-alias.js";
3
+ import { type SimKmsKey, type SimKmsKeyId } from "./sim-kms-key.js";
4
+ import type { SimKmsKeyFactory } from "./sim-kms-key-factory.js";
5
+ interface SimKmsKeyStoreProperties {
6
+ readonly accountRegionScope: SimAwsAccountRegionScope;
7
+ readonly keyFactory: SimKmsKeyFactory;
8
+ }
9
+ /**
10
+ * The keys and aliases of one simulated KMS scope, and how a KeyId resolves.
11
+ *
12
+ * Every KMS operation takes its target as a `KeyId` that may be a key ID, a
13
+ * key ARN, an alias name or an alias ARN, so resolution belongs in one place
14
+ * rather than in each command handler.
15
+ */
16
+ export declare class SimKmsKeyStore {
17
+ readonly keys: Map<string, SimKmsKey>;
18
+ readonly aliases: Map<string, SimKmsAlias>;
19
+ private readonly accountRegionScope;
20
+ private readonly keyFactory;
21
+ private readonly identifiers;
22
+ constructor(properties: SimKmsKeyStoreProperties);
23
+ /**
24
+ * Store a newly created key.
25
+ */
26
+ add(key: SimKmsKey): void;
27
+ /**
28
+ * Resolve a KeyId to the key it names, or refuse.
29
+ */
30
+ require(keyId: string | undefined): SimKmsKey;
31
+ /**
32
+ * Resolve a KeyId in any of the forms real KMS accepts.
33
+ *
34
+ * An alias of an AWS managed key resolves to a key created on demand, since
35
+ * that is how such a key comes into existence on real AWS: the service that
36
+ * needs it asks for it, and it appears without anyone creating it.
37
+ */
38
+ find(keyId: string): SimKmsKey | undefined;
39
+ /**
40
+ * Point an alias at a key, refusing a name already in use.
41
+ */
42
+ addAlias(aliasName: string, targetKey: SimKmsKey): SimKmsAlias;
43
+ /**
44
+ * The aliases pointing at one key, or all of them.
45
+ */
46
+ aliasesFor(keyId: SimKmsKeyId | undefined): readonly SimKmsAlias[];
47
+ /**
48
+ * Find the key an alias points at, creating an AWS managed key if the alias
49
+ * is a reserved one that has not been used yet.
50
+ */
51
+ private findByAlias;
52
+ /**
53
+ * Create an AWS managed key on first reference to its reserved alias.
54
+ */
55
+ private makeAwsManagedKey;
56
+ }
57
+ export {};
58
+ //# sourceMappingURL=sim-kms-key-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-kms-key-store.d.ts","sourceRoot":"","sources":["../../../../src/service/kms/key/sim-kms-key-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAM1F,OAAO,EAAE,WAAW,EAAwB,MAAM,oBAAoB,CAAC;AAEvE,OAAO,EAEL,KAAK,SAAS,EACd,KAAK,WAAW,EACjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAEjE,UAAU,wBAAwB;IAChC,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,CAAC;IACtD,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC;CACvC;AAED;;;;;;GAMG;AACH,qBAAa,cAAc;IACzB,SAAgB,IAAI,yBAAqC;IACzD,SAAgB,OAAO,2BAAkC;IAEzD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA2B;IAC9D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAmB;IAC9C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA4B;IAExD,YAAY,UAAU,EAAE,wBAAwB,EAM/C;IAED;;OAEG;IACH,GAAG,CAAC,GAAG,EAAE,SAAS,GAAG,IAAI,CAExB;IAED;;OAEG;IACH,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAc5C;IAED;;;;;;OAMG;IACH,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAYzC;IAED;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,GAAG,WAAW,CAgB7D;IAED;;OAEG;IACH,UAAU,CAAC,KAAK,EAAE,WAAW,GAAG,SAAS,GAAG,SAAS,WAAW,EAAE,CAQjE;IAED;;;OAGG;IACH,OAAO,CAAC,WAAW;IAcnB;;OAEG;IACH,OAAO,CAAC,iBAAiB;CAW1B"}