@kensio/yulin 1.4.1 → 1.6.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 (430) hide show
  1. package/dist/serve/http/url/sim-aws-request-hostname.d.ts +13 -0
  2. package/dist/serve/http/url/sim-aws-request-hostname.d.ts.map +1 -0
  3. package/dist/serve/http/url/sim-aws-request-hostname.js +19 -0
  4. package/dist/serve/http/url/sim-aws-request-hostname.js.map +1 -0
  5. package/dist/service/acm/command/delete-certificate/delete-certificate-authorizer.d.ts +26 -0
  6. package/dist/service/acm/command/delete-certificate/delete-certificate-authorizer.d.ts.map +1 -0
  7. package/dist/service/acm/command/delete-certificate/delete-certificate-authorizer.js +36 -0
  8. package/dist/service/acm/command/delete-certificate/delete-certificate-authorizer.js.map +1 -0
  9. package/dist/service/acm/command/delete-certificate/delete-certificate.command.d.ts +22 -0
  10. package/dist/service/acm/command/delete-certificate/delete-certificate.command.d.ts.map +1 -0
  11. package/dist/service/acm/command/delete-certificate/delete-certificate.command.js +2 -0
  12. package/dist/service/acm/command/delete-certificate/delete-certificate.command.js.map +1 -0
  13. package/dist/service/acm/command/delete-certificate/delete-certificate.handler.d.ts +39 -0
  14. package/dist/service/acm/command/delete-certificate/delete-certificate.handler.d.ts.map +1 -0
  15. package/dist/service/acm/command/delete-certificate/delete-certificate.handler.js +43 -0
  16. package/dist/service/acm/command/delete-certificate/delete-certificate.handler.js.map +1 -0
  17. package/dist/service/acm/sdk/sim-acm-sdk-command-router.d.ts.map +1 -1
  18. package/dist/service/acm/sdk/sim-acm-sdk-command-router.js +4 -0
  19. package/dist/service/acm/sdk/sim-acm-sdk-command-router.js.map +1 -1
  20. package/dist/service/acm/sim-acm.d.ts +5 -0
  21. package/dist/service/acm/sim-acm.d.ts.map +1 -1
  22. package/dist/service/acm/sim-acm.js +12 -0
  23. package/dist/service/acm/sim-acm.js.map +1 -1
  24. package/dist/service/apigatewayv2/cfn/api/sim-cfn-http-api-import-properties.js +1 -1
  25. package/dist/service/apigatewayv2/cfn/api/sim-cfn-http-api-properties.js +2 -2
  26. package/dist/service/apigatewayv2/cfn/api/sim-cfn-http-api-properties.js.map +1 -1
  27. package/dist/service/apigatewayv2/cfn/api/sim-cfn-http-api-property-rules.d.ts +22 -7
  28. package/dist/service/apigatewayv2/cfn/api/sim-cfn-http-api-property-rules.d.ts.map +1 -1
  29. package/dist/service/apigatewayv2/cfn/api/sim-cfn-http-api-property-rules.js +37 -16
  30. package/dist/service/apigatewayv2/cfn/api/sim-cfn-http-api-property-rules.js.map +1 -1
  31. package/dist/service/apigatewayv2/cfn/authorizer/sim-cfn-http-api-authorizer-properties.js +1 -1
  32. package/dist/service/apigatewayv2/cfn/authorizer/sim-cfn-http-api-authorizer-properties.js.map +1 -1
  33. package/dist/service/apigatewayv2/cfn/integration/sim-cfn-http-api-integration-properties.js +1 -1
  34. package/dist/service/apigatewayv2/cfn/integration/sim-cfn-http-api-integration-properties.js.map +1 -1
  35. package/dist/service/apigatewayv2/cfn/route/sim-cfn-http-api-route-properties.js +1 -1
  36. package/dist/service/apigatewayv2/cfn/route/sim-cfn-http-api-route-properties.js.map +1 -1
  37. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-property-parser.d.ts +17 -12
  38. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-property-parser.d.ts.map +1 -1
  39. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-property-parser.js +21 -17
  40. package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-property-parser.js.map +1 -1
  41. package/dist/service/apigatewayv2/cfn/stage/sim-cfn-http-api-stage-properties.js +1 -1
  42. package/dist/service/apigatewayv2/cfn/stage/sim-cfn-http-api-stage-properties.js.map +1 -1
  43. package/dist/service/aws/sim-aws-properties.d.ts +6 -1
  44. package/dist/service/aws/sim-aws-properties.d.ts.map +1 -1
  45. package/dist/service/aws/sim-aws.js.map +1 -1
  46. package/dist/service/cloudformation/deploy/sim-cfn-template-deployer.d.ts +9 -0
  47. package/dist/service/cloudformation/deploy/sim-cfn-template-deployer.d.ts.map +1 -1
  48. package/dist/service/cloudformation/deploy/sim-cfn-template-deployer.js +12 -0
  49. package/dist/service/cloudformation/deploy/sim-cfn-template-deployer.js.map +1 -1
  50. package/dist/service/cloudformation/resource/ignore/sim-cfn-ignored-properties.d.ts +47 -0
  51. package/dist/service/cloudformation/resource/ignore/sim-cfn-ignored-properties.d.ts.map +1 -0
  52. package/dist/service/cloudformation/resource/ignore/sim-cfn-ignored-properties.js +55 -0
  53. package/dist/service/cloudformation/resource/ignore/sim-cfn-ignored-properties.js.map +1 -0
  54. package/dist/service/cloudformation/resource/ignore/sim-cfn-ignored-property.type.d.ts +33 -0
  55. package/dist/service/cloudformation/resource/ignore/sim-cfn-ignored-property.type.d.ts.map +1 -0
  56. package/dist/service/cloudformation/resource/ignore/sim-cfn-ignored-property.type.js +2 -0
  57. package/dist/service/cloudformation/resource/ignore/sim-cfn-ignored-property.type.js.map +1 -0
  58. package/dist/service/cloudformation/resource/sim-cfn-resource.d.ts +17 -36
  59. package/dist/service/cloudformation/resource/sim-cfn-resource.d.ts.map +1 -1
  60. package/dist/service/cloudformation/resource/sim-cfn-resource.js +20 -5
  61. package/dist/service/cloudformation/resource/sim-cfn-resource.js.map +1 -1
  62. package/dist/service/cloudformation/resource/sim-cfn-resource.type.d.ts +34 -0
  63. package/dist/service/cloudformation/resource/sim-cfn-resource.type.d.ts.map +1 -0
  64. package/dist/service/cloudformation/resource/sim-cfn-resource.type.js +2 -0
  65. package/dist/service/cloudformation/resource/sim-cfn-resource.type.js.map +1 -0
  66. package/dist/service/cloudformation/stack/sim-cfn-stack.d.ts +9 -0
  67. package/dist/service/cloudformation/stack/sim-cfn-stack.d.ts.map +1 -1
  68. package/dist/service/cloudformation/stack/sim-cfn-stack.js +13 -0
  69. package/dist/service/cloudformation/stack/sim-cfn-stack.js.map +1 -1
  70. package/dist/service/cloudfront/cff/adapter/sim-cff-request-response-adapter.d.ts +19 -0
  71. package/dist/service/cloudfront/cff/adapter/sim-cff-request-response-adapter.d.ts.map +1 -1
  72. package/dist/service/cloudfront/cff/adapter/sim-cff-request-response-adapter.js +35 -2
  73. package/dist/service/cloudfront/cff/adapter/sim-cff-request-response-adapter.js.map +1 -1
  74. package/dist/service/cloudfront/command/create-distribution/create-distribution.command.d.ts +16 -0
  75. package/dist/service/cloudfront/command/create-distribution/create-distribution.command.d.ts.map +1 -1
  76. package/dist/service/cloudfront/command/create-distribution/sim-cf-distro-config-normalizer.d.ts.map +1 -1
  77. package/dist/service/cloudfront/command/create-distribution/sim-cf-distro-config-normalizer.js +1 -0
  78. package/dist/service/cloudfront/command/create-distribution/sim-cf-distro-config-normalizer.js.map +1 -1
  79. package/dist/service/cloudfront/controller/dependency/sim-cf-controller-dependency.d.ts +3 -0
  80. package/dist/service/cloudfront/controller/dependency/sim-cf-controller-dependency.d.ts.map +1 -1
  81. package/dist/service/cloudfront/controller/dependency/sim-cf-controller-dependency.js +11 -3
  82. package/dist/service/cloudfront/controller/dependency/sim-cf-controller-dependency.js.map +1 -1
  83. package/dist/service/cloudfront/controller/error/sim-cf-custom-error-responder.d.ts +29 -0
  84. package/dist/service/cloudfront/controller/error/sim-cf-custom-error-responder.d.ts.map +1 -0
  85. package/dist/service/cloudfront/controller/error/sim-cf-custom-error-responder.js +58 -0
  86. package/dist/service/cloudfront/controller/error/sim-cf-custom-error-responder.js.map +1 -0
  87. package/dist/service/cloudfront/controller/root-object/sim-cf-default-root-object-request.d.ts +17 -0
  88. package/dist/service/cloudfront/controller/root-object/sim-cf-default-root-object-request.d.ts.map +1 -0
  89. package/dist/service/cloudfront/controller/root-object/sim-cf-default-root-object-request.js +35 -0
  90. package/dist/service/cloudfront/controller/root-object/sim-cf-default-root-object-request.js.map +1 -0
  91. package/dist/service/cloudfront/controller/sim-cloudfront-request-pipeline.d.ts +5 -2
  92. package/dist/service/cloudfront/controller/sim-cloudfront-request-pipeline.d.ts.map +1 -1
  93. package/dist/service/cloudfront/controller/sim-cloudfront-request-pipeline.js +13 -3
  94. package/dist/service/cloudfront/controller/sim-cloudfront-request-pipeline.js.map +1 -1
  95. package/dist/service/cloudfront/custom-error/sim-cloudfront-custom-error-response.d.ts +24 -0
  96. package/dist/service/cloudfront/custom-error/sim-cloudfront-custom-error-response.d.ts.map +1 -0
  97. package/dist/service/cloudfront/custom-error/sim-cloudfront-custom-error-response.js +14 -0
  98. package/dist/service/cloudfront/custom-error/sim-cloudfront-custom-error-response.js.map +1 -0
  99. package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-custom-error-configurator.d.ts +19 -0
  100. package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-custom-error-configurator.d.ts.map +1 -0
  101. package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-custom-error-configurator.js +53 -0
  102. package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-custom-error-configurator.js.map +1 -0
  103. package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-distribution-configurator.d.ts +11 -1
  104. package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-distribution-configurator.d.ts.map +1 -1
  105. package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-distribution-configurator.js +26 -1
  106. package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-distribution-configurator.js.map +1 -1
  107. package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.d.ts +14 -0
  108. package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.d.ts.map +1 -1
  109. package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.js +20 -0
  110. package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.js.map +1 -1
  111. package/dist/service/cloudfront/error/sim-cloudfront.error.d.ts +31 -0
  112. package/dist/service/cloudfront/error/sim-cloudfront.error.d.ts.map +1 -1
  113. package/dist/service/cloudfront/error/sim-cloudfront.error.js +39 -0
  114. package/dist/service/cloudfront/error/sim-cloudfront.error.js.map +1 -1
  115. package/dist/service/cloudfront/router/sim-cloud-front-distro-router.d.ts.map +1 -1
  116. package/dist/service/cloudfront/router/sim-cloud-front-distro-router.js +2 -7
  117. package/dist/service/cloudfront/router/sim-cloud-front-distro-router.js.map +1 -1
  118. package/dist/service/cognito/cfn/client/sim-cfn-cognito-client-properties.js +1 -1
  119. package/dist/service/cognito/cfn/client/sim-cfn-cognito-client-properties.js.map +1 -1
  120. package/dist/service/cognito/cfn/client/sim-cfn-cognito-token-validity-units.js +1 -1
  121. package/dist/service/cognito/cfn/client/sim-cfn-cognito-token-validity-units.js.map +1 -1
  122. package/dist/service/cognito/cfn/group/sim-cfn-cognito-group-properties.js +1 -1
  123. package/dist/service/cognito/cfn/group/sim-cfn-cognito-group-properties.js.map +1 -1
  124. package/dist/service/cognito/cfn/sim-cfn-cognito-property-parser.d.ts +22 -14
  125. package/dist/service/cognito/cfn/sim-cfn-cognito-property-parser.d.ts.map +1 -1
  126. package/dist/service/cognito/cfn/sim-cfn-cognito-property-parser.js +27 -20
  127. package/dist/service/cognito/cfn/sim-cfn-cognito-property-parser.js.map +1 -1
  128. package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-password-policy.js +1 -1
  129. package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-password-policy.js.map +1 -1
  130. package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-policies.js +1 -1
  131. package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-policies.js.map +1 -1
  132. package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-sign-in-policy.js +1 -1
  133. package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-sign-in-policy.js.map +1 -1
  134. package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-user-pool-properties.d.ts +3 -3
  135. package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-user-pool-properties.js +6 -6
  136. package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-user-pool-properties.js.map +1 -1
  137. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-capacity.js +22 -2
  138. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-capacity.js.map +1 -1
  139. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-properties.d.ts +4 -4
  140. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-properties.d.ts.map +1 -1
  141. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-properties.js +13 -10
  142. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-properties.js.map +1 -1
  143. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-property-rules.d.ts +6 -5
  144. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-property-rules.d.ts.map +1 -1
  145. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-property-rules.js +12 -12
  146. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-property-rules.js.map +1 -1
  147. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-replica-rules.d.ts +4 -3
  148. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-replica-rules.d.ts.map +1 -1
  149. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-replica-rules.js +8 -8
  150. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-replica-rules.js.map +1 -1
  151. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-replicas.d.ts +28 -20
  152. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-replicas.d.ts.map +1 -1
  153. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-replicas.js +49 -32
  154. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-replicas.js.map +1 -1
  155. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-simulated.d.ts +6 -4
  156. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-simulated.d.ts.map +1 -1
  157. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-simulated.js +18 -17
  158. package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-simulated.js.map +1 -1
  159. package/dist/service/dynamodb/cfn/property/sim-cfn-dynamodb-property-error.d.ts +6 -14
  160. package/dist/service/dynamodb/cfn/property/sim-cfn-dynamodb-property-error.d.ts.map +1 -1
  161. package/dist/service/dynamodb/cfn/property/sim-cfn-dynamodb-property-error.js +6 -19
  162. package/dist/service/dynamodb/cfn/property/sim-cfn-dynamodb-property-error.js.map +1 -1
  163. package/dist/service/dynamodb/cfn/property/sim-cfn-dynamodb-property-rules.d.ts +19 -16
  164. package/dist/service/dynamodb/cfn/property/sim-cfn-dynamodb-property-rules.d.ts.map +1 -1
  165. package/dist/service/dynamodb/cfn/property/sim-cfn-dynamodb-property-rules.js +25 -20
  166. package/dist/service/dynamodb/cfn/property/sim-cfn-dynamodb-property-rules.js.map +1 -1
  167. package/dist/service/dynamodb/cfn/property/sim-cfn-dynamodb-resource-scope.d.ts +14 -0
  168. package/dist/service/dynamodb/cfn/property/sim-cfn-dynamodb-resource-scope.d.ts.map +1 -0
  169. package/dist/service/dynamodb/cfn/property/sim-cfn-dynamodb-resource-scope.js +2 -0
  170. package/dist/service/dynamodb/cfn/property/sim-cfn-dynamodb-resource-scope.js.map +1 -0
  171. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-creator.js +1 -1
  172. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-creator.js.map +1 -1
  173. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-index-rules.d.ts +6 -4
  174. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-index-rules.d.ts.map +1 -1
  175. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-index-rules.js +7 -6
  176. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-index-rules.js.map +1 -1
  177. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-properties.d.ts +2 -2
  178. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-properties.d.ts.map +1 -1
  179. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-properties.js +7 -4
  180. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-properties.js.map +1 -1
  181. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-property-rules.d.ts +13 -13
  182. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-property-rules.d.ts.map +1 -1
  183. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-property-rules.js +22 -23
  184. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-property-rules.js.map +1 -1
  185. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-stream-rules.d.ts +6 -4
  186. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-stream-rules.d.ts.map +1 -1
  187. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-stream-rules.js +6 -5
  188. package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-stream-rules.js.map +1 -1
  189. package/dist/service/dynamodb/document/sim-dynamodb-document-command-paths.d.ts +12 -3
  190. package/dist/service/dynamodb/document/sim-dynamodb-document-command-paths.d.ts.map +1 -1
  191. package/dist/service/dynamodb/document/sim-dynamodb-document-command-paths.js +28 -3
  192. package/dist/service/dynamodb/document/sim-dynamodb-document-command-paths.js.map +1 -1
  193. package/dist/service/dynamodb/document/sim-dynamodb-document-command.d.ts +2 -8
  194. package/dist/service/dynamodb/document/sim-dynamodb-document-command.d.ts.map +1 -1
  195. package/dist/service/dynamodb/document/sim-dynamodb-document-command.js +3 -20
  196. package/dist/service/dynamodb/document/sim-dynamodb-document-command.js.map +1 -1
  197. package/dist/service/dynamodb/document/sim-dynamodb-document-routes.d.ts +22 -6
  198. package/dist/service/dynamodb/document/sim-dynamodb-document-routes.d.ts.map +1 -1
  199. package/dist/service/dynamodb/document/sim-dynamodb-document-routes.js +43 -22
  200. package/dist/service/dynamodb/document/sim-dynamodb-document-routes.js.map +1 -1
  201. package/dist/service/dynamodb/document/sim-dynamodb-document-shared-name-route.d.ts +26 -0
  202. package/dist/service/dynamodb/document/sim-dynamodb-document-shared-name-route.d.ts.map +1 -0
  203. package/dist/service/dynamodb/document/sim-dynamodb-document-shared-name-route.js +31 -0
  204. package/dist/service/dynamodb/document/sim-dynamodb-document-shared-name-route.js.map +1 -0
  205. package/dist/service/dynamodb/sdk/sim-dynamodb-sdk-command-router.d.ts.map +1 -1
  206. package/dist/service/dynamodb/sdk/sim-dynamodb-sdk-command-router.js +13 -14
  207. package/dist/service/dynamodb/sdk/sim-dynamodb-sdk-command-router.js.map +1 -1
  208. package/dist/service/iam/command/policy/delete-policy/delete-policy.command.d.ts +8 -0
  209. package/dist/service/iam/command/policy/delete-policy/delete-policy.command.d.ts.map +1 -0
  210. package/dist/service/iam/command/policy/delete-policy/delete-policy.command.js +2 -0
  211. package/dist/service/iam/command/policy/delete-policy/delete-policy.command.js.map +1 -0
  212. package/dist/service/iam/command/policy/delete-policy/delete-policy.handler.d.ts +38 -0
  213. package/dist/service/iam/command/policy/delete-policy/delete-policy.handler.d.ts.map +1 -0
  214. package/dist/service/iam/command/policy/delete-policy/delete-policy.handler.js +52 -0
  215. package/dist/service/iam/command/policy/delete-policy/delete-policy.handler.js.map +1 -0
  216. package/dist/service/iam/command/policy/delete-role-policy/delete-role-policy.command.d.ts +9 -0
  217. package/dist/service/iam/command/policy/delete-role-policy/delete-role-policy.command.d.ts.map +1 -0
  218. package/dist/service/iam/command/policy/delete-role-policy/delete-role-policy.command.js +2 -0
  219. package/dist/service/iam/command/policy/delete-role-policy/delete-role-policy.command.js.map +1 -0
  220. package/dist/service/iam/command/policy/delete-role-policy/delete-role-policy.handler.d.ts +28 -0
  221. package/dist/service/iam/command/policy/delete-role-policy/delete-role-policy.handler.d.ts.map +1 -0
  222. package/dist/service/iam/command/policy/delete-role-policy/delete-role-policy.handler.js +44 -0
  223. package/dist/service/iam/command/policy/delete-role-policy/delete-role-policy.handler.js.map +1 -0
  224. package/dist/service/iam/command/policy/sim-iam-policy-command-handlers.d.ts +8 -0
  225. package/dist/service/iam/command/policy/sim-iam-policy-command-handlers.d.ts.map +1 -1
  226. package/dist/service/iam/command/policy/sim-iam-policy-command-handlers.js +17 -1
  227. package/dist/service/iam/command/policy/sim-iam-policy-command-handlers.js.map +1 -1
  228. package/dist/service/iam/command/role/delete-role/delete-role.command.d.ts +19 -0
  229. package/dist/service/iam/command/role/delete-role/delete-role.command.d.ts.map +1 -0
  230. package/dist/service/iam/command/role/delete-role/delete-role.command.js +2 -0
  231. package/dist/service/iam/command/role/delete-role/delete-role.command.js.map +1 -0
  232. package/dist/service/iam/command/role/delete-role/delete-role.handler.d.ts +30 -0
  233. package/dist/service/iam/command/role/delete-role/delete-role.handler.d.ts.map +1 -0
  234. package/dist/service/iam/command/role/delete-role/delete-role.handler.js +47 -0
  235. package/dist/service/iam/command/role/delete-role/delete-role.handler.js.map +1 -0
  236. package/dist/service/iam/command/role/detach-role-policy/detach-role-policy.command.d.ts +20 -0
  237. package/dist/service/iam/command/role/detach-role-policy/detach-role-policy.command.d.ts.map +1 -0
  238. package/dist/service/iam/command/role/detach-role-policy/detach-role-policy.command.js +2 -0
  239. package/dist/service/iam/command/role/detach-role-policy/detach-role-policy.command.js.map +1 -0
  240. package/dist/service/iam/command/role/detach-role-policy/detach-role-policy.handler.d.ts +28 -0
  241. package/dist/service/iam/command/role/detach-role-policy/detach-role-policy.handler.d.ts.map +1 -0
  242. package/dist/service/iam/command/role/detach-role-policy/detach-role-policy.handler.js +44 -0
  243. package/dist/service/iam/command/role/detach-role-policy/detach-role-policy.handler.js.map +1 -0
  244. package/dist/service/iam/command/role/sim-iam-role-command-handlers.d.ts +15 -0
  245. package/dist/service/iam/command/role/sim-iam-role-command-handlers.d.ts.map +1 -1
  246. package/dist/service/iam/command/role/sim-iam-role-command-handlers.js +36 -0
  247. package/dist/service/iam/command/role/sim-iam-role-command-handlers.js.map +1 -1
  248. package/dist/service/iam/command/sim-iam-command-handlers.d.ts.map +1 -1
  249. package/dist/service/iam/command/sim-iam-command-handlers.js +1 -0
  250. package/dist/service/iam/command/sim-iam-command-handlers.js.map +1 -1
  251. package/dist/service/iam/command/sim-iam-command.types.d.ts +22 -0
  252. package/dist/service/iam/command/sim-iam-command.types.d.ts.map +1 -0
  253. package/dist/service/iam/command/sim-iam-command.types.js +8 -0
  254. package/dist/service/iam/command/sim-iam-command.types.js.map +1 -0
  255. package/dist/service/iam/error/sim-iam.error.d.ts +11 -0
  256. package/dist/service/iam/error/sim-iam.error.d.ts.map +1 -1
  257. package/dist/service/iam/error/sim-iam.error.js +13 -0
  258. package/dist/service/iam/error/sim-iam.error.js.map +1 -1
  259. package/dist/service/iam/sdk/sim-iam-sdk-command-router.d.ts.map +1 -1
  260. package/dist/service/iam/sdk/sim-iam-sdk-command-router.js +16 -0
  261. package/dist/service/iam/sdk/sim-iam-sdk-command-router.js.map +1 -1
  262. package/dist/service/iam/sim-iam.d.ts +28 -22
  263. package/dist/service/iam/sim-iam.d.ts.map +1 -1
  264. package/dist/service/iam/sim-iam.js +24 -0
  265. package/dist/service/iam/sim-iam.js.map +1 -1
  266. package/dist/service/kms/cfn/key/sim-cfn-kms-key-properties.js +1 -1
  267. package/dist/service/kms/cfn/key/sim-cfn-kms-key-properties.js.map +1 -1
  268. package/dist/service/kms/cfn/key/sim-cfn-kms-unsimulated-key-properties.d.ts +19 -16
  269. package/dist/service/kms/cfn/key/sim-cfn-kms-unsimulated-key-properties.d.ts.map +1 -1
  270. package/dist/service/kms/cfn/key/sim-cfn-kms-unsimulated-key-properties.js +30 -28
  271. package/dist/service/kms/cfn/key/sim-cfn-kms-unsimulated-key-properties.js.map +1 -1
  272. package/dist/service/kms/command/alias/alias.command.d.ts +14 -0
  273. package/dist/service/kms/command/alias/alias.command.d.ts.map +1 -1
  274. package/dist/service/kms/command/alias/sim-kms-alias-commands.d.ts +10 -1
  275. package/dist/service/kms/command/alias/sim-kms-alias-commands.d.ts.map +1 -1
  276. package/dist/service/kms/command/alias/sim-kms-alias-commands.js +27 -2
  277. package/dist/service/kms/command/alias/sim-kms-alias-commands.js.map +1 -1
  278. package/dist/service/kms/command/sim-kms-command.types.d.ts +1 -1
  279. package/dist/service/kms/command/sim-kms-command.types.d.ts.map +1 -1
  280. package/dist/service/kms/key/sim-kms-key-store.d.ts +7 -0
  281. package/dist/service/kms/key/sim-kms-key-store.d.ts.map +1 -1
  282. package/dist/service/kms/key/sim-kms-key-store.js +9 -0
  283. package/dist/service/kms/key/sim-kms-key-store.js.map +1 -1
  284. package/dist/service/kms/sdk/sim-kms-sdk-command-router.d.ts.map +1 -1
  285. package/dist/service/kms/sdk/sim-kms-sdk-command-router.js +4 -0
  286. package/dist/service/kms/sdk/sim-kms-sdk-command-router.js.map +1 -1
  287. package/dist/service/kms/sim-kms-commands.d.ts +40 -0
  288. package/dist/service/kms/sim-kms-commands.d.ts.map +1 -0
  289. package/dist/service/kms/sim-kms-commands.js +66 -0
  290. package/dist/service/kms/sim-kms-commands.js.map +1 -0
  291. package/dist/service/kms/sim-kms.d.ts +6 -18
  292. package/dist/service/kms/sim-kms.d.ts.map +1 -1
  293. package/dist/service/kms/sim-kms.js +40 -89
  294. package/dist/service/kms/sim-kms.js.map +1 -1
  295. package/dist/service/lambda/command/delete-function/delete-function-authorizer.d.ts +22 -0
  296. package/dist/service/lambda/command/delete-function/delete-function-authorizer.d.ts.map +1 -0
  297. package/dist/service/lambda/command/delete-function/delete-function-authorizer.js +32 -0
  298. package/dist/service/lambda/command/delete-function/delete-function-authorizer.js.map +1 -0
  299. package/dist/service/lambda/command/delete-function/delete-function.command.d.ts +23 -0
  300. package/dist/service/lambda/command/delete-function/delete-function.command.d.ts.map +1 -0
  301. package/dist/service/lambda/command/delete-function/delete-function.command.js +2 -0
  302. package/dist/service/lambda/command/delete-function/delete-function.command.js.map +1 -0
  303. package/dist/service/lambda/command/delete-function/delete-function.handler.d.ts +45 -0
  304. package/dist/service/lambda/command/delete-function/delete-function.handler.d.ts.map +1 -0
  305. package/dist/service/lambda/command/delete-function/delete-function.handler.js +53 -0
  306. package/dist/service/lambda/command/delete-function/delete-function.handler.js.map +1 -0
  307. package/dist/service/lambda/command/function/sim-lambda-function-commands.d.ts +7 -0
  308. package/dist/service/lambda/command/function/sim-lambda-function-commands.d.ts.map +1 -1
  309. package/dist/service/lambda/command/function/sim-lambda-function-commands.js +7 -0
  310. package/dist/service/lambda/command/function/sim-lambda-function-commands.js.map +1 -1
  311. package/dist/service/lambda/command/sim-lambda-command.types.d.ts +1 -0
  312. package/dist/service/lambda/command/sim-lambda-command.types.d.ts.map +1 -1
  313. package/dist/service/lambda/function/url/sim-lambda-function-url-store.d.ts +7 -0
  314. package/dist/service/lambda/function/url/sim-lambda-function-url-store.d.ts.map +1 -1
  315. package/dist/service/lambda/function/url/sim-lambda-function-url-store.js +11 -0
  316. package/dist/service/lambda/function/url/sim-lambda-function-url-store.js.map +1 -1
  317. package/dist/service/lambda/sdk/sim-lambda-sdk-command-router.d.ts.map +1 -1
  318. package/dist/service/lambda/sdk/sim-lambda-sdk-command-router.js +4 -0
  319. package/dist/service/lambda/sdk/sim-lambda-sdk-command-router.js.map +1 -1
  320. package/dist/service/lambda/sim-lambda-commands.d.ts.map +1 -1
  321. package/dist/service/lambda/sim-lambda-commands.js +1 -0
  322. package/dist/service/lambda/sim-lambda-commands.js.map +1 -1
  323. package/dist/service/lambda/sim-lambda.d.ts +4 -0
  324. package/dist/service/lambda/sim-lambda.d.ts.map +1 -1
  325. package/dist/service/lambda/sim-lambda.js +6 -0
  326. package/dist/service/lambda/sim-lambda.js.map +1 -1
  327. package/dist/service/route53/command/create-hosted-zone/sim-route53-zone-id.d.ts +9 -2
  328. package/dist/service/route53/command/create-hosted-zone/sim-route53-zone-id.d.ts.map +1 -1
  329. package/dist/service/route53/command/create-hosted-zone/sim-route53-zone-id.js +25 -6
  330. package/dist/service/route53/command/create-hosted-zone/sim-route53-zone-id.js.map +1 -1
  331. package/dist/service/route53/command/delete-hosted-zone/delete-hosted-zone-authorizer.d.ts +26 -0
  332. package/dist/service/route53/command/delete-hosted-zone/delete-hosted-zone-authorizer.d.ts.map +1 -0
  333. package/dist/service/route53/command/delete-hosted-zone/delete-hosted-zone-authorizer.js +36 -0
  334. package/dist/service/route53/command/delete-hosted-zone/delete-hosted-zone-authorizer.js.map +1 -0
  335. package/dist/service/route53/command/delete-hosted-zone/delete-hosted-zone.command.d.ts +26 -0
  336. package/dist/service/route53/command/delete-hosted-zone/delete-hosted-zone.command.d.ts.map +1 -0
  337. package/dist/service/route53/command/delete-hosted-zone/delete-hosted-zone.command.js +2 -0
  338. package/dist/service/route53/command/delete-hosted-zone/delete-hosted-zone.command.js.map +1 -0
  339. package/dist/service/route53/command/delete-hosted-zone/delete-hosted-zone.handler.d.ts +44 -0
  340. package/dist/service/route53/command/delete-hosted-zone/delete-hosted-zone.handler.d.ts.map +1 -0
  341. package/dist/service/route53/command/delete-hosted-zone/delete-hosted-zone.handler.js +59 -0
  342. package/dist/service/route53/command/delete-hosted-zone/delete-hosted-zone.handler.js.map +1 -0
  343. package/dist/service/route53/error/sim-route53.error.d.ts +19 -0
  344. package/dist/service/route53/error/sim-route53.error.d.ts.map +1 -1
  345. package/dist/service/route53/error/sim-route53.error.js +23 -0
  346. package/dist/service/route53/error/sim-route53.error.js.map +1 -1
  347. package/dist/service/route53/hosted-zone/sim-route53-hosted-zone.d.ts +8 -0
  348. package/dist/service/route53/hosted-zone/sim-route53-hosted-zone.d.ts.map +1 -1
  349. package/dist/service/route53/hosted-zone/sim-route53-hosted-zone.js +14 -0
  350. package/dist/service/route53/hosted-zone/sim-route53-hosted-zone.js.map +1 -1
  351. package/dist/service/route53/local-name/sim-route53-local-name.d.ts +11 -0
  352. package/dist/service/route53/local-name/sim-route53-local-name.d.ts.map +1 -1
  353. package/dist/service/route53/local-name/sim-route53-local-name.js +18 -3
  354. package/dist/service/route53/local-name/sim-route53-local-name.js.map +1 -1
  355. package/dist/service/route53/registry/sim-route53-registry.d.ts +8 -0
  356. package/dist/service/route53/registry/sim-route53-registry.d.ts.map +1 -1
  357. package/dist/service/route53/registry/sim-route53-registry.js +11 -0
  358. package/dist/service/route53/registry/sim-route53-registry.js.map +1 -1
  359. package/dist/service/route53/resolve/sim-route53-resolver.d.ts +8 -2
  360. package/dist/service/route53/resolve/sim-route53-resolver.d.ts.map +1 -1
  361. package/dist/service/route53/resolve/sim-route53-resolver.js +10 -4
  362. package/dist/service/route53/resolve/sim-route53-resolver.js.map +1 -1
  363. package/dist/service/route53/sdk/sim-route53-sdk-command-router.d.ts.map +1 -1
  364. package/dist/service/route53/sdk/sim-route53-sdk-command-router.js +4 -0
  365. package/dist/service/route53/sdk/sim-route53-sdk-command-router.js.map +1 -1
  366. package/dist/service/route53/sim-route53.d.ts +5 -0
  367. package/dist/service/route53/sim-route53.d.ts.map +1 -1
  368. package/dist/service/route53/sim-route53.js +13 -0
  369. package/dist/service/route53/sim-route53.js.map +1 -1
  370. package/dist/service/s3/bucket/sim-s3-bucket-access.d.ts +37 -0
  371. package/dist/service/s3/bucket/sim-s3-bucket-access.d.ts.map +1 -0
  372. package/dist/service/s3/bucket/sim-s3-bucket-access.js +46 -0
  373. package/dist/service/s3/bucket/sim-s3-bucket-access.js.map +1 -0
  374. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-creator.d.ts +4 -5
  375. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-creator.d.ts.map +1 -1
  376. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-creator.js +6 -6
  377. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-creator.js.map +1 -1
  378. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-names.d.ts +26 -0
  379. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-names.d.ts.map +1 -0
  380. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-names.js +77 -0
  381. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-names.js.map +1 -0
  382. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-rules.d.ts +18 -7
  383. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-rules.d.ts.map +1 -1
  384. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-rules.js +25 -65
  385. package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-rules.js.map +1 -1
  386. package/dist/service/s3/command/bucket/sim-s3-bucket-commands.d.ts +4 -0
  387. package/dist/service/s3/command/bucket/sim-s3-bucket-commands.d.ts.map +1 -1
  388. package/dist/service/s3/command/bucket/sim-s3-bucket-commands.js +7 -0
  389. package/dist/service/s3/command/bucket/sim-s3-bucket-commands.js.map +1 -1
  390. package/dist/service/s3/command/delete-bucket/delete-bucket-authorizer.d.ts +24 -0
  391. package/dist/service/s3/command/delete-bucket/delete-bucket-authorizer.d.ts.map +1 -0
  392. package/dist/service/s3/command/delete-bucket/delete-bucket-authorizer.js +37 -0
  393. package/dist/service/s3/command/delete-bucket/delete-bucket-authorizer.js.map +1 -0
  394. package/dist/service/s3/command/delete-bucket/delete-bucket.command.d.ts +23 -0
  395. package/dist/service/s3/command/delete-bucket/delete-bucket.command.d.ts.map +1 -0
  396. package/dist/service/s3/command/delete-bucket/delete-bucket.command.js +2 -0
  397. package/dist/service/s3/command/delete-bucket/delete-bucket.command.js.map +1 -0
  398. package/dist/service/s3/command/delete-bucket/delete-bucket.handler.d.ts +43 -0
  399. package/dist/service/s3/command/delete-bucket/delete-bucket.handler.d.ts.map +1 -0
  400. package/dist/service/s3/command/delete-bucket/delete-bucket.handler.js +55 -0
  401. package/dist/service/s3/command/delete-bucket/delete-bucket.handler.js.map +1 -0
  402. package/dist/service/s3/command/sim-s3-command.types.d.ts +1 -0
  403. package/dist/service/s3/command/sim-s3-command.types.d.ts.map +1 -1
  404. package/dist/service/s3/error/sim-s3.error.d.ts +10 -0
  405. package/dist/service/s3/error/sim-s3.error.d.ts.map +1 -1
  406. package/dist/service/s3/error/sim-s3.error.js +12 -0
  407. package/dist/service/s3/error/sim-s3.error.js.map +1 -1
  408. package/dist/service/s3/sdk/sim-s3-sdk-command-router.d.ts.map +1 -1
  409. package/dist/service/s3/sdk/sim-s3-sdk-command-router.js +4 -0
  410. package/dist/service/s3/sdk/sim-s3-sdk-command-router.js.map +1 -1
  411. package/dist/service/s3/sim-s3-global-registry.d.ts +7 -0
  412. package/dist/service/s3/sim-s3-global-registry.d.ts.map +1 -1
  413. package/dist/service/s3/sim-s3-global-registry.js +9 -0
  414. package/dist/service/s3/sim-s3-global-registry.js.map +1 -1
  415. package/dist/service/s3/sim-s3.d.ts +5 -0
  416. package/dist/service/s3/sim-s3.d.ts.map +1 -1
  417. package/dist/service/s3/sim-s3.js +16 -12
  418. package/dist/service/s3/sim-s3.js.map +1 -1
  419. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-properties.d.ts.map +1 -1
  420. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-properties.js +2 -1
  421. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-properties.js.map +1 -1
  422. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-names.d.ts +31 -0
  423. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-names.d.ts.map +1 -0
  424. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-names.js +63 -0
  425. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-names.js.map +1 -0
  426. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-rules.d.ts +27 -17
  427. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-rules.d.ts.map +1 -1
  428. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-rules.js +39 -73
  429. package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-rules.js.map +1 -1
  430. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"sim-dynamodb-document-command.d.ts","sourceRoot":"","sources":["../../../../src/service/dynamodb/document/sim-dynamodb-document-command.ts"],"names":[],"mappings":"AAwBA;;;;;;;;GAQG;AACH,wBAAgB,gCAAgC,CAC9C,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,GAClB,IAAI,CAUN"}
1
+ {"version":3,"file":"sim-dynamodb-document-command.d.ts","sourceRoot":"","sources":["../../../../src/service/dynamodb/document/sim-dynamodb-document-command.ts"],"names":[],"mappings":"AAcA;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAIrE"}
@@ -1,10 +1,10 @@
1
- import { SimDynamoDbUnsupportedOperation } from "../error/dynamodb.error.js";
2
1
  /**
3
2
  * The properties `@aws-sdk/lib-dynamodb` declares on every one of its Commands.
4
3
  *
5
4
  * They are TypeScript `protected`, which means nothing at runtime, so a
6
5
  * document Command carries them where the client Command of the same name does
7
- * not.
6
+ * not. That is what tells a document `QueryCommand` from a client one, since
7
+ * the two share a class name.
8
8
  */
9
9
  const documentCommandProperties = [
10
10
  "inputKeyNodes",
@@ -14,24 +14,7 @@ const documentCommandProperties = [
14
14
  /**
15
15
  * Whether an intercepted Command came from the document client.
16
16
  */
17
- function isSimDynamoDbDocumentCommand(command) {
17
+ export function isSimDynamoDbDocumentCommand(command) {
18
18
  return documentCommandProperties.every((property) => Object.hasOwn(command, property));
19
19
  }
20
- /**
21
- * Refuse a document Command that shares its name with a client Command.
22
- *
23
- * The SDK router keys on the Command's class name, and `QueryCommand` and
24
- * `ScanCommand` are named the same in `@aws-sdk/client-dynamodb` and in
25
- * `@aws-sdk/lib-dynamodb`, unlike `PutCommand` and `PutItemCommand`. A document
26
- * Command reaching the client operation would have its native JavaScript values
27
- * read as AttributeValues, so it is refused by name instead.
28
- */
29
- export function refuseSimDynamoDbDocumentCommand(command, commandName) {
30
- if (!isSimDynamoDbDocumentCommand(command)) {
31
- return;
32
- }
33
- throw new SimDynamoDbUnsupportedOperation(`The document client's ${commandName} is not simulated. It shares its ` +
34
- `name with the ${commandName} of @aws-sdk/client-dynamodb, which is, so ` +
35
- `it is refused rather than read as though it carried AttributeValues.`);
36
- }
37
20
  //# sourceMappingURL=sim-dynamodb-document-command.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sim-dynamodb-document-command.js","sourceRoot":"","sources":["../../../../src/service/dynamodb/document/sim-dynamodb-document-command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,+BAA+B,EAAE,MAAM,4BAA4B,CAAC;AAE7E;;;;;;GAMG;AACH,MAAM,yBAAyB,GAAsB;IACnD,eAAe;IACf,gBAAgB;IAChB,eAAe;CAChB,CAAC;AAEF;;GAEG;AACH,SAAS,4BAA4B,CAAC,OAAe;IACnD,OAAO,yBAAyB,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,EAAE,CAClD,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,CACjC,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,gCAAgC,CAC9C,OAAe,EACf,WAAmB;IAEnB,IAAI,CAAC,4BAA4B,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3C,OAAO;IACT,CAAC;IAED,MAAM,IAAI,+BAA+B,CACvC,yBAAyB,WAAW,mCAAmC;QACrE,iBAAiB,WAAW,6CAA6C;QACzE,sEAAsE,CACzE,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"sim-dynamodb-document-command.js","sourceRoot":"","sources":["../../../../src/service/dynamodb/document/sim-dynamodb-document-command.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,yBAAyB,GAAsB;IACnD,eAAe;IACf,gBAAgB;IAChB,eAAe;CAChB,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,4BAA4B,CAAC,OAAe;IAC1D,OAAO,yBAAyB,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,EAAE,CAClD,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,CACjC,CAAC;AACJ,CAAC"}
@@ -1,14 +1,30 @@
1
1
  import type { SimSdkCommandRoute } from "../../../sdk/index.js";
2
2
  import type { SimDynamoDb } from "../sim-dynamodb.js";
3
3
  /**
4
- * The routes that handle `@aws-sdk/lib-dynamodb` document client Commands.
4
+ * The document routes for the two Commands `@aws-sdk/lib-dynamodb` names
5
+ * exactly as `@aws-sdk/client-dynamodb` does.
5
6
  *
6
- * A document Command is named differently to the Command it stands for, so
7
- * `PutCommand` and `PutItemCommand` route separately and only the document one
8
- * converts. Everything after the conversion is the ordinary operation: the same
9
- * validation, the same authorization, the same simulated table.
7
+ * These cannot be routed by name on their own. Each is paired with the client
8
+ * route of the same name by `SimDynamoDbSharedNameRoute`, which asks the
9
+ * Command which client it came from.
10
+ */
11
+ export declare function simDynamoDbDocumentSharedNameRoutes(dynamoDb: SimDynamoDb): {
12
+ readonly query: SimSdkCommandRoute;
13
+ readonly scan: SimSdkCommandRoute;
14
+ };
15
+ /**
16
+ * The routes that handle the `@aws-sdk/lib-dynamodb` document client Commands
17
+ * with a name of their own.
18
+ *
19
+ * Most document Commands are named differently to the Command they stand for,
20
+ * so `PutCommand` and `PutItemCommand` route separately and only the document
21
+ * one converts. Everything after the conversion is the ordinary operation: the
22
+ * same validation, the same authorization, the same simulated table.
23
+ *
24
+ * `QueryCommand` and `ScanCommand` share their names with client Commands and
25
+ * so are routed by `simDynamoDbDocumentSharedNameRoutes` instead.
10
26
  *
11
- * An operation with no document route here, such as a document
27
+ * An operation with no document route at all, such as a document
12
28
  * `TransactWriteCommand`, is refused by name like any other unsupported
13
29
  * Command, rather than failing part way through a conversion.
14
30
  */
@@ -1 +1 @@
1
- {"version":3,"file":"sim-dynamodb-document-routes.d.ts","sourceRoot":"","sources":["../../../../src/service/dynamodb/document/sim-dynamodb-document-routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAEhE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAkCtD;;;;;;;;;;;GAWG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,WAAW,GACpB,SAAS,CAAC,SAAS,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,EAAE,CAyCpD"}
1
+ {"version":3,"file":"sim-dynamodb-document-routes.d.ts","sourceRoot":"","sources":["../../../../src/service/dynamodb/document/sim-dynamodb-document-routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAEhE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAyCtD;;;;;;;GAOG;AACH,wBAAgB,mCAAmC,CAAC,QAAQ,EAAE,WAAW,GAAG;IAC1E,QAAQ,CAAC,KAAK,EAAE,kBAAkB,CAAC;IACnC,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;CACnC,CAaA;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,WAAW,GACpB,SAAS,CAAC,SAAS,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,EAAE,CAyCpD"}
@@ -1,38 +1,59 @@
1
1
  import { simDynamoDbDocumentCommandPaths as paths, } from "./sim-dynamodb-document-command-paths.js";
2
2
  import { SimDynamoDbDocumentRoute } from "./sim-dynamodb-document-route.js";
3
3
  /**
4
- * Build the routed entry for one document Command.
4
+ * Build the route for one document Command.
5
5
  */
6
- function documentRoute(name, commandPaths, send) {
7
- return [
8
- name,
9
- new SimDynamoDbDocumentRoute({
10
- input: commandPaths.input,
11
- output: commandPaths.output,
12
- send: async (input, options) => await send(input, options),
13
- }).route(),
14
- ];
6
+ function documentRoute(commandPaths, send) {
7
+ return new SimDynamoDbDocumentRoute({
8
+ input: commandPaths.input,
9
+ output: commandPaths.output,
10
+ send: async (input, options) => await send(input, options),
11
+ }).route();
12
+ }
13
+ /**
14
+ * Build the routed entry for one document Command with a name of its own.
15
+ */
16
+ function namedDocumentRoute(name, commandPaths, send) {
17
+ return [name, documentRoute(commandPaths, send)];
15
18
  }
16
19
  /**
17
- * The routes that handle `@aws-sdk/lib-dynamodb` document client Commands.
20
+ * The document routes for the two Commands `@aws-sdk/lib-dynamodb` names
21
+ * exactly as `@aws-sdk/client-dynamodb` does.
22
+ *
23
+ * These cannot be routed by name on their own. Each is paired with the client
24
+ * route of the same name by `SimDynamoDbSharedNameRoute`, which asks the
25
+ * Command which client it came from.
26
+ */
27
+ export function simDynamoDbDocumentSharedNameRoutes(dynamoDb) {
28
+ return {
29
+ query: documentRoute(paths.query, async (input, options) => await dynamoDb.query({ input }, options)),
30
+ scan: documentRoute(paths.scan, async (input, options) => await dynamoDb.scan({ input }, options)),
31
+ };
32
+ }
33
+ /**
34
+ * The routes that handle the `@aws-sdk/lib-dynamodb` document client Commands
35
+ * with a name of their own.
36
+ *
37
+ * Most document Commands are named differently to the Command they stand for,
38
+ * so `PutCommand` and `PutItemCommand` route separately and only the document
39
+ * one converts. Everything after the conversion is the ordinary operation: the
40
+ * same validation, the same authorization, the same simulated table.
18
41
  *
19
- * A document Command is named differently to the Command it stands for, so
20
- * `PutCommand` and `PutItemCommand` route separately and only the document one
21
- * converts. Everything after the conversion is the ordinary operation: the same
22
- * validation, the same authorization, the same simulated table.
42
+ * `QueryCommand` and `ScanCommand` share their names with client Commands and
43
+ * so are routed by `simDynamoDbDocumentSharedNameRoutes` instead.
23
44
  *
24
- * An operation with no document route here, such as a document
45
+ * An operation with no document route at all, such as a document
25
46
  * `TransactWriteCommand`, is refused by name like any other unsupported
26
47
  * Command, rather than failing part way through a conversion.
27
48
  */
28
49
  export function simDynamoDbDocumentRoutes(dynamoDb) {
29
50
  return [
30
- documentRoute("PutCommand", paths.put, async (input, options) => await dynamoDb.putItem({ input }, options)),
31
- documentRoute("GetCommand", paths.get, async (input, options) => await dynamoDb.getItem({ input }, options)),
32
- documentRoute("DeleteCommand", paths.remove, async (input, options) => await dynamoDb.deleteItem({ input }, options)),
33
- documentRoute("UpdateCommand", paths.update, async (input, options) => await dynamoDb.updateItem({ input }, options)),
34
- documentRoute("BatchWriteCommand", paths.batchWrite, async (input, options) => await dynamoDb.batchWriteItem({ input }, options)),
35
- documentRoute("BatchGetCommand", paths.batchGet, async (input, options) => await dynamoDb.batchGetItem({ input }, options)),
51
+ namedDocumentRoute("PutCommand", paths.put, async (input, options) => await dynamoDb.putItem({ input }, options)),
52
+ namedDocumentRoute("GetCommand", paths.get, async (input, options) => await dynamoDb.getItem({ input }, options)),
53
+ namedDocumentRoute("DeleteCommand", paths.remove, async (input, options) => await dynamoDb.deleteItem({ input }, options)),
54
+ namedDocumentRoute("UpdateCommand", paths.update, async (input, options) => await dynamoDb.updateItem({ input }, options)),
55
+ namedDocumentRoute("BatchWriteCommand", paths.batchWrite, async (input, options) => await dynamoDb.batchWriteItem({ input }, options)),
56
+ namedDocumentRoute("BatchGetCommand", paths.batchGet, async (input, options) => await dynamoDb.batchGetItem({ input }, options)),
36
57
  ];
37
58
  }
38
59
  //# sourceMappingURL=sim-dynamodb-document-routes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sim-dynamodb-document-routes.js","sourceRoot":"","sources":["../../../../src/service/dynamodb/document/sim-dynamodb-document-routes.ts"],"names":[],"mappings":"AAIA,OAAO,EAEL,+BAA+B,IAAI,KAAK,GACzC,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAU5E;;GAEG;AACH,SAAS,aAAa,CACpB,IAAY,EACZ,YAA6C,EAC7C,IAA6B;IAE7B,OAAO;QACL,IAAI;QACJ,IAAI,wBAAwB,CAAC;YAC3B,KAAK,EAAE,YAAY,CAAC,KAAK;YACzB,MAAM,EAAE,YAAY,CAAC,MAAM;YAC3B,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,MAAM,IAAI,CAAC,KAAc,EAAE,OAAO,CAAC;SACpE,CAAC,CAAC,KAAK,EAAE;KACX,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,yBAAyB,CACvC,QAAqB;IAErB,OAAO;QACL,aAAa,CACX,YAAY,EACZ,KAAK,CAAC,GAAG,EACT,KAAK,EAAE,KAAiD,EAAE,OAAO,EAAE,EAAE,CACnE,MAAM,QAAQ,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAC7C;QACD,aAAa,CACX,YAAY,EACZ,KAAK,CAAC,GAAG,EACT,KAAK,EAAE,KAAiD,EAAE,OAAO,EAAE,EAAE,CACnE,MAAM,QAAQ,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAC7C;QACD,aAAa,CACX,eAAe,EACf,KAAK,CAAC,MAAM,EACZ,KAAK,EAAE,KAAoD,EAAE,OAAO,EAAE,EAAE,CACtE,MAAM,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAChD;QACD,aAAa,CACX,eAAe,EACf,KAAK,CAAC,MAAM,EACZ,KAAK,EAAE,KAAoD,EAAE,OAAO,EAAE,EAAE,CACtE,MAAM,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAChD;QACD,aAAa,CACX,mBAAmB,EACnB,KAAK,CAAC,UAAU,EAChB,KAAK,EACH,KAAwD,EACxD,OAAO,EACP,EAAE,CAAC,MAAM,QAAQ,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CACvD;QACD,aAAa,CACX,iBAAiB,EACjB,KAAK,CAAC,QAAQ,EACd,KAAK,EAAE,KAAsD,EAAE,OAAO,EAAE,EAAE,CACxE,MAAM,QAAQ,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAClD;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"sim-dynamodb-document-routes.js","sourceRoot":"","sources":["../../../../src/service/dynamodb/document/sim-dynamodb-document-routes.ts"],"names":[],"mappings":"AAIA,OAAO,EAEL,+BAA+B,IAAI,KAAK,GACzC,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAU5E;;GAEG;AACH,SAAS,aAAa,CACpB,YAA6C,EAC7C,IAA6B;IAE7B,OAAO,IAAI,wBAAwB,CAAC;QAClC,KAAK,EAAE,YAAY,CAAC,KAAK;QACzB,MAAM,EAAE,YAAY,CAAC,MAAM;QAC3B,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,MAAM,IAAI,CAAC,KAAc,EAAE,OAAO,CAAC;KACpE,CAAC,CAAC,KAAK,EAAE,CAAC;AACb,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CACzB,IAAY,EACZ,YAA6C,EAC7C,IAA6B;IAE7B,OAAO,CAAC,IAAI,EAAE,aAAa,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC;AACnD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,mCAAmC,CAAC,QAAqB;IAIvE,OAAO;QACL,KAAK,EAAE,aAAa,CAClB,KAAK,CAAC,KAAK,EACX,KAAK,EAAE,KAA+C,EAAE,OAAO,EAAE,EAAE,CACjE,MAAM,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAC3C;QACD,IAAI,EAAE,aAAa,CACjB,KAAK,CAAC,IAAI,EACV,KAAK,EAAE,KAA8C,EAAE,OAAO,EAAE,EAAE,CAChE,MAAM,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAC1C;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,yBAAyB,CACvC,QAAqB;IAErB,OAAO;QACL,kBAAkB,CAChB,YAAY,EACZ,KAAK,CAAC,GAAG,EACT,KAAK,EAAE,KAAiD,EAAE,OAAO,EAAE,EAAE,CACnE,MAAM,QAAQ,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAC7C;QACD,kBAAkB,CAChB,YAAY,EACZ,KAAK,CAAC,GAAG,EACT,KAAK,EAAE,KAAiD,EAAE,OAAO,EAAE,EAAE,CACnE,MAAM,QAAQ,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAC7C;QACD,kBAAkB,CAChB,eAAe,EACf,KAAK,CAAC,MAAM,EACZ,KAAK,EAAE,KAAoD,EAAE,OAAO,EAAE,EAAE,CACtE,MAAM,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAChD;QACD,kBAAkB,CAChB,eAAe,EACf,KAAK,CAAC,MAAM,EACZ,KAAK,EAAE,KAAoD,EAAE,OAAO,EAAE,EAAE,CACtE,MAAM,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAChD;QACD,kBAAkB,CAChB,mBAAmB,EACnB,KAAK,CAAC,UAAU,EAChB,KAAK,EACH,KAAwD,EACxD,OAAO,EACP,EAAE,CAAC,MAAM,QAAQ,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CACvD;QACD,kBAAkB,CAChB,iBAAiB,EACjB,KAAK,CAAC,QAAQ,EACd,KAAK,EAAE,KAAsD,EAAE,OAAO,EAAE,EAAE,CACxE,MAAM,QAAQ,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAClD;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,26 @@
1
+ import type { SimSdkCommandRoute } from "../../../sdk/index.js";
2
+ interface SimDynamoDbSharedNameRouteProperties {
3
+ readonly document: SimSdkCommandRoute;
4
+ readonly client: SimSdkCommandRoute;
5
+ }
6
+ /**
7
+ * One Command name both DynamoDB clients use, routed by the client it came
8
+ * from.
9
+ *
10
+ * The SDK router keys on the Command's class name, and `@aws-sdk/lib-dynamodb`
11
+ * names its `QueryCommand` and `ScanCommand` exactly as
12
+ * `@aws-sdk/client-dynamodb` does, unlike `PutCommand` and `PutItemCommand`. So
13
+ * the name alone cannot say whether the request carries native JavaScript
14
+ * values or AttributeValues, and the Command is asked instead.
15
+ */
16
+ export declare class SimDynamoDbSharedNameRoute {
17
+ private readonly document;
18
+ private readonly client;
19
+ constructor(properties: SimDynamoDbSharedNameRouteProperties);
20
+ /**
21
+ * The route the SDK interception engine calls.
22
+ */
23
+ route(): SimSdkCommandRoute;
24
+ }
25
+ export {};
26
+ //# sourceMappingURL=sim-dynamodb-document-shared-name-route.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-dynamodb-document-shared-name-route.d.ts","sourceRoot":"","sources":["../../../../src/service/dynamodb/document/sim-dynamodb-document-shared-name-route.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAGhE,UAAU,oCAAoC;IAC5C,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC;CACrC;AAED;;;;;;;;;GASG;AACH,qBAAa,0BAA0B;IACrC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAC9C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAE5C,YAAY,UAAU,EAAE,oCAAoC,EAG3D;IAED;;OAEG;IACH,KAAK,IAAI,kBAAkB,CAQ1B;CACF"}
@@ -0,0 +1,31 @@
1
+ import { isSimDynamoDbDocumentCommand } from "./sim-dynamodb-document-command.js";
2
+ /**
3
+ * One Command name both DynamoDB clients use, routed by the client it came
4
+ * from.
5
+ *
6
+ * The SDK router keys on the Command's class name, and `@aws-sdk/lib-dynamodb`
7
+ * names its `QueryCommand` and `ScanCommand` exactly as
8
+ * `@aws-sdk/client-dynamodb` does, unlike `PutCommand` and `PutItemCommand`. So
9
+ * the name alone cannot say whether the request carries native JavaScript
10
+ * values or AttributeValues, and the Command is asked instead.
11
+ */
12
+ export class SimDynamoDbSharedNameRoute {
13
+ document;
14
+ client;
15
+ constructor(properties) {
16
+ this.document = properties.document;
17
+ this.client = properties.client;
18
+ }
19
+ /**
20
+ * The route the SDK interception engine calls.
21
+ */
22
+ route() {
23
+ return async (command, context) => {
24
+ if (isSimDynamoDbDocumentCommand(command)) {
25
+ return await this.document(command, context);
26
+ }
27
+ return await this.client(command, context);
28
+ };
29
+ }
30
+ }
31
+ //# sourceMappingURL=sim-dynamodb-document-shared-name-route.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-dynamodb-document-shared-name-route.js","sourceRoot":"","sources":["../../../../src/service/dynamodb/document/sim-dynamodb-document-shared-name-route.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,4BAA4B,EAAE,MAAM,oCAAoC,CAAC;AAOlF;;;;;;;;;GASG;AACH,MAAM,OAAO,0BAA0B;IACpB,QAAQ,CAAqB;IAC7B,MAAM,CAAqB;IAE5C,YAAY,UAAgD;QAC1D,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;QACpC,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,KAAK;QACH,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAoB,EAAE;YAClD,IAAI,4BAA4B,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC1C,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC/C,CAAC;YAED,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC7C,CAAC,CAAC;IACJ,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"sim-dynamodb-sdk-command-router.d.ts","sourceRoot":"","sources":["../../../../src/service/dynamodb/sdk/sim-dynamodb-sdk-command-router.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACzB,MAAM,uBAAuB,CAAC;AAmC/B,OAAO,KAAK,EAAE,WAAW,IAAI,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE3E;;GAEG;AACH,qBAAa,iCAAkC,YAAW,mBAAmB;IAC3E,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0C;IAEjE,YAAY,iBAAiB,EAAE,iBAAiB,EAgL/C;IAED;;OAEG;IACH,qBAAqB,IAAI,SAAS,MAAM,EAAE,CAEzC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAEzD;CACF"}
1
+ {"version":3,"file":"sim-dynamodb-sdk-command-router.d.ts","sourceRoot":"","sources":["../../../../src/service/dynamodb/sdk/sim-dynamodb-sdk-command-router.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACzB,MAAM,uBAAuB,CAAC;AAsC/B,OAAO,KAAK,EAAE,WAAW,IAAI,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE3E;;GAEG;AACH,qBAAa,iCAAkC,YAAW,mBAAmB;IAC3E,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0C;IAEjE,YAAY,iBAAiB,EAAE,iBAAiB,EAiL/C;IAED;;OAEG;IACH,qBAAqB,IAAI,SAAS,MAAM,EAAE,CAEzC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAEzD;CACF"}
@@ -1,12 +1,15 @@
1
1
  import { simSdkCallerOptions, } from "../../../sdk/index.js";
2
- import { refuseSimDynamoDbDocumentCommand } from "../document/sim-dynamodb-document-command.js";
3
- import { simDynamoDbDocumentRoutes } from "../document/sim-dynamodb-document-routes.js";
2
+ import { simDynamoDbDocumentRoutes, simDynamoDbDocumentSharedNameRoutes, } from "../document/sim-dynamodb-document-routes.js";
3
+ import { SimDynamoDbSharedNameRoute } from "../document/sim-dynamodb-document-shared-name-route.js";
4
4
  /**
5
5
  * Routes intercepted SDK Commands to one scoped simulated DynamoDB instance.
6
6
  */
7
7
  export class SimDynamoDatabaseSdkCommandRouter {
8
8
  routes;
9
9
  constructor(simDynamoDatabase) {
10
+ // The document Commands named the same as a client Command, each paired
11
+ // below with the client route it shares its name with.
12
+ const documentShared = simDynamoDbDocumentSharedNameRoutes(simDynamoDatabase);
10
13
  this.routes = new Map([
11
14
  [
12
15
  "CreateTableCommand",
@@ -46,21 +49,17 @@ export class SimDynamoDatabaseSdkCommandRouter {
46
49
  ],
47
50
  [
48
51
  "QueryCommand",
49
- async (command, context) => {
50
- // The document client names its Query the same as this one, so the
51
- // Command name alone cannot tell them apart.
52
- refuseSimDynamoDbDocumentCommand(command, "QueryCommand");
53
- return await simDynamoDatabase.query(command, simSdkCallerOptions(context));
54
- },
52
+ new SimDynamoDbSharedNameRoute({
53
+ document: documentShared.query,
54
+ client: async (command, context) => await simDynamoDatabase.query(command, simSdkCallerOptions(context)),
55
+ }).route(),
55
56
  ],
56
57
  [
57
58
  "ScanCommand",
58
- async (command, context) => {
59
- // The document client names its Scan the same as this one, so the
60
- // Command name alone cannot tell them apart.
61
- refuseSimDynamoDbDocumentCommand(command, "ScanCommand");
62
- return await simDynamoDatabase.scan(command, simSdkCallerOptions(context));
63
- },
59
+ new SimDynamoDbSharedNameRoute({
60
+ document: documentShared.scan,
61
+ client: async (command, context) => await simDynamoDatabase.scan(command, simSdkCallerOptions(context)),
62
+ }).route(),
64
63
  ],
65
64
  [
66
65
  "BatchWriteItemCommand",
@@ -1 +1 @@
1
- {"version":3,"file":"sim-dynamodb-sdk-command-router.js","sourceRoot":"","sources":["../../../../src/service/dynamodb/sdk/sim-dynamodb-sdk-command-router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sim-dynamodb-sdk-command-router.js","sourceRoot":"","sources":["../../../../src/service/dynamodb/sdk/sim-dynamodb-sdk-command-router.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ export interface SimDeletePolicyCommandInput {
2
+ readonly PolicyArn?: string | undefined;
3
+ }
4
+ export interface SimDeletePolicyCommand {
5
+ readonly input: SimDeletePolicyCommandInput;
6
+ }
7
+ export type SimDeletePolicyCommandOutput = Record<string, never>;
8
+ //# sourceMappingURL=delete-policy.command.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-policy.command.d.ts","sourceRoot":"","sources":["../../../../../../src/service/iam/command/policy/delete-policy/delete-policy.command.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACzC;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,KAAK,EAAE,2BAA2B,CAAC;CAC7C;AAED,MAAM,MAAM,4BAA4B,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=delete-policy.command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-policy.command.js","sourceRoot":"","sources":["../../../../../../src/service/iam/command/policy/delete-policy/delete-policy.command.ts"],"names":[],"mappings":""}
@@ -0,0 +1,38 @@
1
+ import type { CommandHandler } from "../../../../../command/command-handler.js";
2
+ import { type BackgroundScheduler } from "../../../../../util/background/background.js";
3
+ import type { SimArn } from "../../../../aws/arn.js";
4
+ import type { SimIamManagedPolicy } from "../../../policy/sim-iam-policy.js";
5
+ import type { SimIamRole, SimIamRoleName } from "../../../role/sim-iam-role.js";
6
+ import type { SimIamUser, SimIamUsername } from "../../../user/sim-iam-user.js";
7
+ import type { SimDeletePolicyCommand, SimDeletePolicyCommandOutput } from "./delete-policy.command.js";
8
+ interface DeletePolicyCommandHandlerProperties {
9
+ readonly policies: Map<SimArn, SimIamManagedPolicy>;
10
+ readonly roles: Map<SimIamRoleName, SimIamRole>;
11
+ readonly users: Map<SimIamUsername, SimIamUser>;
12
+ readonly background?: BackgroundScheduler;
13
+ }
14
+ /**
15
+ * IAM DeletePolicyCommand handler.
16
+ *
17
+ * Real IAM refuses to delete a managed policy while anything is attached to
18
+ * it, so this counts the Roles and Users carrying the ARN rather than reading
19
+ * the policy record's own attachment count: attachment is recorded on the
20
+ * identity, which is where AttachRolePolicy puts it.
21
+ *
22
+ * https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/iam/command/DeletePolicyCommand/
23
+ */
24
+ export declare class DeletePolicyCommandHandler implements CommandHandler<SimDeletePolicyCommand, SimDeletePolicyCommandOutput> {
25
+ private readonly policies;
26
+ private readonly roles;
27
+ private readonly users;
28
+ private readonly background;
29
+ constructor(properties: DeletePolicyCommandHandlerProperties);
30
+ /**
31
+ * Handle a DeletePolicyCommand from the SDK.
32
+ */
33
+ handle(command: SimDeletePolicyCommand): Promise<SimDeletePolicyCommandOutput>;
34
+ private assertNotAttached;
35
+ private attachmentCount;
36
+ }
37
+ export {};
38
+ //# sourceMappingURL=delete-policy.handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-policy.handler.d.ts","sourceRoot":"","sources":["../../../../../../src/service/iam/command/policy/delete-policy/delete-policy.handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EACL,KAAK,mBAAmB,EAEzB,MAAM,8CAA8C,CAAC;AACtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAKrD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,KAAK,EACV,sBAAsB,EACtB,4BAA4B,EAC7B,MAAM,4BAA4B,CAAC;AAEpC,UAAU,oCAAoC;IAC5C,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;IACpD,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;IAChD,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;IAChD,QAAQ,CAAC,UAAU,CAAC,EAAE,mBAAmB,CAAC;CAC3C;AAED;;;;;;;;;GASG;AACH,qBAAa,0BAA2B,YAAW,cAAc,CAC/D,sBAAsB,EACtB,4BAA4B,CAC7B;IACC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmC;IAC5D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAkC;IACxD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAkC;IACxD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsB;IAEjD,YAAY,UAAU,EAAE,oCAAoC,EAY3D;IAED;;OAEG;IACG,MAAM,CACV,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,4BAA4B,CAAC,CAkBvC;IAED,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,eAAe;CAOxB"}
@@ -0,0 +1,52 @@
1
+ import { BackgroundTasks, } from "../../../../../util/background/background.js";
2
+ import { SimIamDeleteConflict, SimIamNoSuchEntity, } from "../../../error/sim-iam.error.js";
3
+ /**
4
+ * IAM DeletePolicyCommand handler.
5
+ *
6
+ * Real IAM refuses to delete a managed policy while anything is attached to
7
+ * it, so this counts the Roles and Users carrying the ARN rather than reading
8
+ * the policy record's own attachment count: attachment is recorded on the
9
+ * identity, which is where AttachRolePolicy puts it.
10
+ *
11
+ * https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/iam/command/DeletePolicyCommand/
12
+ */
13
+ export class DeletePolicyCommandHandler {
14
+ policies;
15
+ roles;
16
+ users;
17
+ background;
18
+ constructor(properties) {
19
+ const { policies, roles, users, background = new BackgroundTasks(), } = properties;
20
+ this.policies = policies;
21
+ this.roles = roles;
22
+ this.users = users;
23
+ this.background = background;
24
+ }
25
+ /**
26
+ * Handle a DeletePolicyCommand from the SDK.
27
+ */
28
+ async handle(command) {
29
+ const policyArn = command.input.PolicyArn;
30
+ if (policyArn === undefined || policyArn.length === 0) {
31
+ throw new Error("PolicyArn is required");
32
+ }
33
+ // Allow for potential non-deterministic sequencing of async events.
34
+ await this.background.sequence();
35
+ if (!this.policies.has(policyArn)) {
36
+ throw new SimIamNoSuchEntity(`No IAM Policy with ARN ${policyArn}`);
37
+ }
38
+ this.assertNotAttached(policyArn);
39
+ this.policies.delete(policyArn);
40
+ return {};
41
+ }
42
+ assertNotAttached(policyArn) {
43
+ if (this.attachmentCount(policyArn) > 0) {
44
+ throw new SimIamDeleteConflict(`Cannot delete a policy attached to entities: IAM Policy ${policyArn}`);
45
+ }
46
+ }
47
+ attachmentCount(policyArn) {
48
+ const identities = [...this.roles.values(), ...this.users.values()];
49
+ return identities.filter((identity) => identity.attachedPolicyArns.has(policyArn)).length;
50
+ }
51
+ }
52
+ //# sourceMappingURL=delete-policy.handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-policy.handler.js","sourceRoot":"","sources":["../../../../../../src/service/iam/command/policy/delete-policy/delete-policy.handler.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,eAAe,GAChB,MAAM,8CAA8C,CAAC;AAEtD,OAAO,EACL,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,iCAAiC,CAAC;AAgBzC;;;;;;;;;GASG;AACH,MAAM,OAAO,0BAA0B;IAIpB,QAAQ,CAAmC;IAC3C,KAAK,CAAkC;IACvC,KAAK,CAAkC;IACvC,UAAU,CAAsB;IAEjD,YAAY,UAAgD;QAC1D,MAAM,EACJ,QAAQ,EACR,KAAK,EACL,KAAK,EACL,UAAU,GAAG,IAAI,eAAe,EAAE,GACnC,GAAG,UAAU,CAAC;QAEf,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACV,OAA+B;QAE/B,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,SAA+B,CAAC;QAEhE,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtD,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC3C,CAAC;QAED,oEAAoE;QACpE,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;QAEjC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,kBAAkB,CAAC,0BAA0B,SAAS,EAAE,CAAC,CAAC;QACtE,CAAC;QAED,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAClC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAEhC,OAAO,EAAE,CAAC;IACZ,CAAC;IAEO,iBAAiB,CAAC,SAAiB;QACzC,IAAI,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;YACxC,MAAM,IAAI,oBAAoB,CAC5B,2DAA2D,SAAS,EAAE,CACvE,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,eAAe,CAAC,SAAiB;QACvC,MAAM,UAAU,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QAEpE,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CACpC,QAAQ,CAAC,kBAAkB,CAAC,GAAG,CAAC,SAAS,CAAC,CAC3C,CAAC,MAAM,CAAC;IACX,CAAC;CACF"}
@@ -0,0 +1,9 @@
1
+ export interface SimDeleteRolePolicyCommandInput {
2
+ readonly RoleName?: string | undefined;
3
+ readonly PolicyName?: string | undefined;
4
+ }
5
+ export interface SimDeleteRolePolicyCommand {
6
+ readonly input: SimDeleteRolePolicyCommandInput;
7
+ }
8
+ export type SimDeleteRolePolicyCommandOutput = Record<string, never>;
9
+ //# sourceMappingURL=delete-role-policy.command.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-role-policy.command.d.ts","sourceRoot":"","sources":["../../../../../../src/service/iam/command/policy/delete-role-policy/delete-role-policy.command.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,+BAA+B;IAC9C,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC1C;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,KAAK,EAAE,+BAA+B,CAAC;CACjD;AAED,MAAM,MAAM,gCAAgC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=delete-role-policy.command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-role-policy.command.js","sourceRoot":"","sources":["../../../../../../src/service/iam/command/policy/delete-role-policy/delete-role-policy.command.ts"],"names":[],"mappings":""}
@@ -0,0 +1,28 @@
1
+ import type { CommandHandler } from "../../../../../command/command-handler.js";
2
+ import { type BackgroundScheduler } from "../../../../../util/background/background.js";
3
+ import type { SimIamRole, SimIamRoleName } from "../../../role/sim-iam-role.js";
4
+ import type { SimDeleteRolePolicyCommand, SimDeleteRolePolicyCommandOutput } from "./delete-role-policy.command.js";
5
+ interface DeleteRolePolicyCommandHandlerProperties {
6
+ readonly roles: Map<SimIamRoleName, SimIamRole>;
7
+ readonly background?: BackgroundScheduler;
8
+ }
9
+ /**
10
+ * IAM DeleteRolePolicyCommand handler.
11
+ *
12
+ * This removes an inline policy stored on the Role, which is what
13
+ * PutRolePolicy put there. A policy name the Role does not carry is refused,
14
+ * as real IAM has nothing to remove.
15
+ *
16
+ * https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/iam/command/DeleteRolePolicyCommand/
17
+ */
18
+ export declare class DeleteRolePolicyCommandHandler implements CommandHandler<SimDeleteRolePolicyCommand, SimDeleteRolePolicyCommandOutput> {
19
+ private readonly roles;
20
+ private readonly background;
21
+ constructor(properties: DeleteRolePolicyCommandHandlerProperties);
22
+ /**
23
+ * Handle a DeleteRolePolicyCommand from the SDK.
24
+ */
25
+ handle(command: SimDeleteRolePolicyCommand): Promise<SimDeleteRolePolicyCommandOutput>;
26
+ }
27
+ export {};
28
+ //# sourceMappingURL=delete-role-policy.handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-role-policy.handler.d.ts","sourceRoot":"","sources":["../../../../../../src/service/iam/command/policy/delete-role-policy/delete-role-policy.handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EACL,KAAK,mBAAmB,EAEzB,MAAM,8CAA8C,CAAC;AAEtD,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,KAAK,EACV,0BAA0B,EAC1B,gCAAgC,EACjC,MAAM,iCAAiC,CAAC;AAEzC,UAAU,wCAAwC;IAChD,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;IAChD,QAAQ,CAAC,UAAU,CAAC,EAAE,mBAAmB,CAAC;CAC3C;AAED;;;;;;;;GAQG;AACH,qBAAa,8BAA+B,YAAW,cAAc,CACnE,0BAA0B,EAC1B,gCAAgC,CACjC;IACC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAkC;IACxD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsB;IAEjD,YAAY,UAAU,EAAE,wCAAwC,EAK/D;IAED;;OAEG;IACG,MAAM,CACV,OAAO,EAAE,0BAA0B,GAClC,OAAO,CAAC,gCAAgC,CAAC,CA6B3C;CACF"}
@@ -0,0 +1,44 @@
1
+ import { BackgroundTasks, } from "../../../../../util/background/background.js";
2
+ import { SimIamNoSuchEntity } from "../../../error/sim-iam.error.js";
3
+ /**
4
+ * IAM DeleteRolePolicyCommand handler.
5
+ *
6
+ * This removes an inline policy stored on the Role, which is what
7
+ * PutRolePolicy put there. A policy name the Role does not carry is refused,
8
+ * as real IAM has nothing to remove.
9
+ *
10
+ * https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/iam/command/DeleteRolePolicyCommand/
11
+ */
12
+ export class DeleteRolePolicyCommandHandler {
13
+ roles;
14
+ background;
15
+ constructor(properties) {
16
+ const { roles, background = new BackgroundTasks() } = properties;
17
+ this.roles = roles;
18
+ this.background = background;
19
+ }
20
+ /**
21
+ * Handle a DeleteRolePolicyCommand from the SDK.
22
+ */
23
+ async handle(command) {
24
+ const roleName = command.input.RoleName;
25
+ if (roleName === undefined || roleName.length === 0) {
26
+ throw new Error("RoleName is required");
27
+ }
28
+ const { PolicyName: policyName } = command.input;
29
+ if (policyName === undefined || policyName.length === 0) {
30
+ throw new Error("PolicyName is required");
31
+ }
32
+ // Allow for potential non-deterministic sequencing of async events.
33
+ await this.background.sequence();
34
+ const role = this.roles.get(roleName);
35
+ if (role === undefined) {
36
+ throw new SimIamNoSuchEntity(`No IAM Role with name ${roleName}`);
37
+ }
38
+ if (!role.inlinePolicies.delete(policyName)) {
39
+ throw new SimIamNoSuchEntity(`No inline IAM Policy named ${policyName} on Role ${roleName}`);
40
+ }
41
+ return {};
42
+ }
43
+ }
44
+ //# sourceMappingURL=delete-role-policy.handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-role-policy.handler.js","sourceRoot":"","sources":["../../../../../../src/service/iam/command/policy/delete-role-policy/delete-role-policy.handler.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,eAAe,GAChB,MAAM,8CAA8C,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAYrE;;;;;;;;GAQG;AACH,MAAM,OAAO,8BAA8B;IAIxB,KAAK,CAAkC;IACvC,UAAU,CAAsB;IAEjD,YAAY,UAAoD;QAC9D,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,IAAI,eAAe,EAAE,EAAE,GAAG,UAAU,CAAC;QAEjE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACV,OAAmC;QAEnC,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,QAAsC,CAAC;QAEtE,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpD,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC1C,CAAC;QAED,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC;QAEjD,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxD,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAC5C,CAAC;QAED,oEAAoE;QACpE,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;QAEjC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAEtC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,MAAM,IAAI,kBAAkB,CAAC,yBAAyB,QAAQ,EAAE,CAAC,CAAC;QACpE,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;YAC5C,MAAM,IAAI,kBAAkB,CAC1B,8BAA8B,UAAU,YAAY,QAAQ,EAAE,CAC/D,CAAC;QACJ,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;CACF"}
@@ -3,15 +3,18 @@ import type { BackgroundScheduler } from "../../../../util/background/background
3
3
  import type { SimArn } from "../../../aws/arn.js";
4
4
  import type { SimIamActionAuthorizer } from "../../authorize/sim-iam-action-authorizer.js";
5
5
  import type { SimIamManagedPolicy } from "../../policy/sim-iam-policy.js";
6
+ import type { SimIamRole, SimIamRoleName } from "../../role/sim-iam-role.js";
6
7
  import type { SimIamUser, SimIamUsername } from "../../user/sim-iam-user.js";
7
8
  import type { SimIamRequestOptions } from "../sim-iam-request-options.js";
8
9
  import type { SimCreatePolicyCommand, SimCreatePolicyCommandOutput } from "./create-policy/create-policy.command.js";
9
10
  import type { SimGetPolicyCommand, SimGetPolicyCommandOutput } from "./get-policy/get-policy.command.js";
10
11
  import type { SimListPoliciesCommand, SimListPoliciesCommandOutput } from "./list-policies/list-policies.command.js";
12
+ import type { SimDeletePolicyCommand, SimDeletePolicyCommandOutput } from "./delete-policy/delete-policy.command.js";
11
13
  import type { SimPutUserPolicyCommand, SimPutUserPolicyCommandOutput } from "./put-user-policy/put-user-policy.command.js";
12
14
  interface SimIamPolicyCommandHandlersProperties {
13
15
  readonly accountId: SimAwsAccountId;
14
16
  readonly policies: Map<SimArn, SimIamManagedPolicy>;
17
+ readonly roles: Map<SimIamRoleName, SimIamRole>;
15
18
  readonly users: Map<SimIamUsername, SimIamUser>;
16
19
  readonly background: BackgroundScheduler;
17
20
  readonly authorizer: SimIamActionAuthorizer;
@@ -26,10 +29,15 @@ interface SimIamPolicyCommandHandlersProperties {
26
29
  export declare class SimIamPolicyCommandHandlers {
27
30
  private readonly accountId;
28
31
  private readonly policies;
32
+ private readonly roles;
29
33
  private readonly users;
30
34
  private readonly background;
31
35
  private readonly authorizer;
32
36
  constructor(properties: SimIamPolicyCommandHandlersProperties);
37
+ /**
38
+ * Handle a DeletePolicy command from the SDK.
39
+ */
40
+ deletePolicy(command: SimDeletePolicyCommand, options?: SimIamRequestOptions): Promise<SimDeletePolicyCommandOutput>;
33
41
  /**
34
42
  * Handle a CreatePolicy command from the SDK.
35
43
  */