@kensio/yulin 1.19.2 → 1.19.4

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 (823) hide show
  1. package/README.md +12 -0
  2. package/dist/serve/http/local-server/sim-aws-local-server.d.ts +33 -0
  3. package/dist/serve/http/local-server/sim-aws-local-server.d.ts.map +1 -1
  4. package/dist/serve/http/local-server/sim-aws-local-server.js +15 -1
  5. package/dist/serve/http/local-server/sim-aws-local-server.js.map +1 -1
  6. package/dist/serve/index.d.ts +1 -0
  7. package/dist/serve/index.d.ts.map +1 -1
  8. package/dist/serve/index.js.map +1 -1
  9. package/dist/serve/message/sim-email-log-block.d.ts +35 -0
  10. package/dist/serve/message/sim-email-log-block.d.ts.map +1 -0
  11. package/dist/serve/message/sim-email-log-block.js +111 -0
  12. package/dist/serve/message/sim-email-log-block.js.map +1 -0
  13. package/dist/serve/message/sim-local-message-logging.d.ts +39 -0
  14. package/dist/serve/message/sim-local-message-logging.d.ts.map +1 -0
  15. package/dist/serve/message/sim-local-message-logging.js +48 -0
  16. package/dist/serve/message/sim-local-message-logging.js.map +1 -0
  17. package/dist/serve/message/sim-message-indent.d.ts +10 -0
  18. package/dist/serve/message/sim-message-indent.d.ts.map +1 -0
  19. package/dist/serve/message/sim-message-indent.js +12 -0
  20. package/dist/serve/message/sim-message-indent.js.map +1 -0
  21. package/dist/serve/message/sim-message-log-console.d.ts +59 -0
  22. package/dist/serve/message/sim-message-log-console.d.ts.map +1 -0
  23. package/dist/serve/message/sim-message-log-console.js +79 -0
  24. package/dist/serve/message/sim-message-log-console.js.map +1 -0
  25. package/dist/serve/message/sim-message-logging.d.ts +55 -0
  26. package/dist/serve/message/sim-message-logging.d.ts.map +1 -0
  27. package/dist/serve/message/sim-message-logging.js +52 -0
  28. package/dist/serve/message/sim-message-logging.js.map +1 -0
  29. package/dist/service/aws/factory/sim-aws-account-region-service-builder.d.ts +13 -0
  30. package/dist/service/aws/factory/sim-aws-account-region-service-builder.d.ts.map +1 -1
  31. package/dist/service/aws/factory/sim-aws-account-region-service-builder.js +27 -1
  32. package/dist/service/aws/factory/sim-aws-account-region-service-builder.js.map +1 -1
  33. package/dist/service/aws/factory/sim-aws-self-contained-service-builder.d.ts +0 -9
  34. package/dist/service/aws/factory/sim-aws-self-contained-service-builder.d.ts.map +1 -1
  35. package/dist/service/aws/factory/sim-aws-self-contained-service-builder.js +0 -11
  36. package/dist/service/aws/factory/sim-aws-self-contained-service-builder.js.map +1 -1
  37. package/dist/service/aws/factory/sim-aws-service-factory.d.ts +9 -0
  38. package/dist/service/aws/factory/sim-aws-service-factory.d.ts.map +1 -1
  39. package/dist/service/aws/factory/sim-aws-service-factory.js +11 -1
  40. package/dist/service/aws/factory/sim-aws-service-factory.js.map +1 -1
  41. package/dist/service/aws/message/sim-aws-logged-message.d.ts +66 -0
  42. package/dist/service/aws/message/sim-aws-logged-message.d.ts.map +1 -0
  43. package/dist/service/aws/message/sim-aws-logged-message.js +2 -0
  44. package/dist/service/aws/message/sim-aws-logged-message.js.map +1 -0
  45. package/dist/service/aws/message/sim-aws-message-log.d.ts +40 -0
  46. package/dist/service/aws/message/sim-aws-message-log.d.ts.map +1 -0
  47. package/dist/service/aws/message/sim-aws-message-log.js +40 -0
  48. package/dist/service/aws/message/sim-aws-message-log.js.map +1 -0
  49. package/dist/service/cloudformation/bind/{sim-cfn-deploy-binding.d.ts → sim-cfn-binding.d.ts} +11 -4
  50. package/dist/service/cloudformation/bind/sim-cfn-binding.d.ts.map +1 -0
  51. package/dist/service/cloudformation/bind/{sim-cfn-deploy-binding.js → sim-cfn-binding.js} +1 -1
  52. package/dist/service/cloudformation/bind/sim-cfn-binding.js.map +1 -0
  53. package/dist/service/cloudformation/bind/sim-cfn-exec-binding.type.d.ts +32 -35
  54. package/dist/service/cloudformation/bind/sim-cfn-exec-binding.type.d.ts.map +1 -1
  55. package/dist/service/cloudformation/bind/validate/sim-cfn-exec-binding-finder.d.ts +2 -2
  56. package/dist/service/cloudformation/bind/validate/sim-cfn-exec-binding-finder.d.ts.map +1 -1
  57. package/dist/service/cloudformation/bind/validate/sim-cfn-exec-binding-finder.js +1 -1
  58. package/dist/service/cloudformation/bind/validate/sim-cfn-exec-binding-finder.js.map +1 -1
  59. package/dist/service/cloudformation/bind/validate/sim-cfn-exec-binding-validator.d.ts +2 -2
  60. package/dist/service/cloudformation/bind/validate/sim-cfn-exec-binding-validator.d.ts.map +1 -1
  61. package/dist/service/cloudformation/bind/validate/sim-cfn-exec-binding-validator.js +1 -1
  62. package/dist/service/cloudformation/bind/validate/sim-cfn-exec-binding-validator.js.map +1 -1
  63. package/dist/service/cloudformation/cdk/s3/bucket-notifications/property/sim-cdk-bucket-notification-properties.d.ts +4 -3
  64. package/dist/service/cloudformation/cdk/s3/bucket-notifications/property/sim-cdk-bucket-notification-properties.d.ts.map +1 -1
  65. package/dist/service/cloudformation/cdk/s3/bucket-notifications/property/sim-cdk-bucket-notification-properties.js +4 -3
  66. package/dist/service/cloudformation/cdk/s3/bucket-notifications/property/sim-cdk-bucket-notification-properties.js.map +1 -1
  67. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications.d.ts +5 -0
  68. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications.d.ts.map +1 -1
  69. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications.js +5 -0
  70. package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications.js.map +1 -1
  71. package/dist/service/cloudformation/command/create-stack/create-stack.handler.d.ts +2 -2
  72. package/dist/service/cloudformation/command/create-stack/create-stack.handler.d.ts.map +1 -1
  73. package/dist/service/cloudformation/command/create-stack/create-stack.handler.js.map +1 -1
  74. package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-stack-options.d.ts +2 -2
  75. package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-stack-options.d.ts.map +1 -1
  76. package/dist/service/cloudformation/deploy/sim-cfn-template-deployer.d.ts +2 -2
  77. package/dist/service/cloudformation/deploy/sim-cfn-template-deployer.d.ts.map +1 -1
  78. package/dist/service/cloudformation/deploy/sim-cfn-template-deployer.js.map +1 -1
  79. package/dist/service/cloudformation/deploy/sim-cfn-template-file-loader.d.ts +3 -3
  80. package/dist/service/cloudformation/deploy/sim-cfn-template-file-loader.d.ts.map +1 -1
  81. package/dist/service/cloudformation/index.d.ts +3 -0
  82. package/dist/service/cloudformation/index.d.ts.map +1 -1
  83. package/dist/service/cloudformation/resource/cfn/ses/sim-ses-cfn-value-adapter.d.ts.map +1 -1
  84. package/dist/service/cloudformation/resource/cfn/ses/sim-ses-cfn-value-adapter.js +8 -0
  85. package/dist/service/cloudformation/resource/cfn/ses/sim-ses-cfn-value-adapter.js.map +1 -1
  86. package/dist/service/cloudformation/resource/cfn/ses/sim-ses-configuration-set-cfn.d.ts +30 -0
  87. package/dist/service/cloudformation/resource/cfn/ses/sim-ses-configuration-set-cfn.d.ts.map +1 -0
  88. package/dist/service/cloudformation/resource/cfn/ses/sim-ses-configuration-set-cfn.js +29 -0
  89. package/dist/service/cloudformation/resource/cfn/ses/sim-ses-configuration-set-cfn.js.map +1 -0
  90. package/dist/service/cloudformation/resource/cfn/ses/sim-ses-identity-cfn.js +1 -1
  91. package/dist/service/cloudformation/resource/cfn/ses/sim-ses-identity-cfn.js.map +1 -1
  92. package/dist/service/cloudformation/resource/sim-cfn-resource.type.d.ts +2 -2
  93. package/dist/service/cloudformation/resource/sim-cfn-resource.type.d.ts.map +1 -1
  94. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-batch-creator.d.ts +2 -2
  95. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-batch-creator.d.ts.map +1 -1
  96. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-batch-creator.js.map +1 -1
  97. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-creator.d.ts +2 -2
  98. package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-creator.d.ts.map +1 -1
  99. package/dist/service/cloudformation/stack/sim-cfn-deployed-stack.type.d.ts +8 -0
  100. package/dist/service/cloudformation/stack/sim-cfn-deployed-stack.type.d.ts.map +1 -1
  101. package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.d.ts +2 -2
  102. package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.d.ts.map +1 -1
  103. package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.js.map +1 -1
  104. package/dist/service/cloudformation/stack/sim-cfn-stack.d.ts +3 -10
  105. package/dist/service/cloudformation/stack/sim-cfn-stack.d.ts.map +1 -1
  106. package/dist/service/cloudformation/stack/sim-cfn-stack.js +13 -18
  107. package/dist/service/cloudformation/stack/sim-cfn-stack.js.map +1 -1
  108. package/dist/service/cloudformation/stack/sim-cfn-stack.type.d.ts +2 -2
  109. package/dist/service/cloudformation/stack/sim-cfn-stack.type.d.ts.map +1 -1
  110. package/dist/service/cloudfront/cfn/cff/sim-cfn-cff-binding-lookup.d.ts +2 -2
  111. package/dist/service/cloudfront/cfn/cff/sim-cfn-cff-binding-lookup.d.ts.map +1 -1
  112. package/dist/service/cloudfront/cfn/cff/sim-cfn-cff-create-input-builder.d.ts +2 -2
  113. package/dist/service/cloudfront/cfn/cff/sim-cfn-cff-create-input-builder.d.ts.map +1 -1
  114. package/dist/service/cloudfront/cfn/cff/sim-cfn-cff-create-input-builder.js.map +1 -1
  115. package/dist/service/cognito/cfn/client/sim-cfn-cognito-client-properties.d.ts.map +1 -1
  116. package/dist/service/cognito/cfn/client/sim-cfn-cognito-client-properties.js +2 -0
  117. package/dist/service/cognito/cfn/client/sim-cfn-cognito-client-properties.js.map +1 -1
  118. package/dist/service/cognito/cfn/sim-cfn-cognito-property-parser.d.ts +7 -0
  119. package/dist/service/cognito/cfn/sim-cfn-cognito-property-parser.d.ts.map +1 -1
  120. package/dist/service/cognito/cfn/sim-cfn-cognito-property-parser.js +14 -0
  121. package/dist/service/cognito/cfn/sim-cfn-cognito-property-parser.js.map +1 -1
  122. package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-user-pool-properties.d.ts.map +1 -1
  123. package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-user-pool-properties.js +10 -0
  124. package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-user-pool-properties.js.map +1 -1
  125. package/dist/service/cognito/command/auth/sim-cognito-available-challenges.d.ts.map +1 -1
  126. package/dist/service/cognito/command/auth/sim-cognito-available-challenges.js +7 -6
  127. package/dist/service/cognito/command/auth/sim-cognito-available-challenges.js.map +1 -1
  128. package/dist/service/cognito/command/client/sim-cognito-unsimulated-client-options.d.ts +20 -0
  129. package/dist/service/cognito/command/client/sim-cognito-unsimulated-client-options.d.ts.map +1 -1
  130. package/dist/service/cognito/command/client/sim-cognito-unsimulated-client-options.js +24 -4
  131. package/dist/service/cognito/command/client/sim-cognito-unsimulated-client-options.js.map +1 -1
  132. package/dist/service/cognito/command/sim-cognito-commands.d.ts +4 -0
  133. package/dist/service/cognito/command/sim-cognito-commands.d.ts.map +1 -1
  134. package/dist/service/cognito/command/sim-cognito-commands.js +8 -2
  135. package/dist/service/cognito/command/sim-cognito-commands.js.map +1 -1
  136. package/dist/service/cognito/command/sim-cognito-unsimulated-input.d.ts +9 -0
  137. package/dist/service/cognito/command/sim-cognito-unsimulated-input.d.ts.map +1 -1
  138. package/dist/service/cognito/command/sim-cognito-unsimulated-input.js +13 -3
  139. package/dist/service/cognito/command/sim-cognito-unsimulated-input.js.map +1 -1
  140. package/dist/service/cognito/command/user/sim-cognito-user-mfa-commands.d.ts.map +1 -1
  141. package/dist/service/cognito/command/user/sim-cognito-user-mfa-commands.js +2 -1
  142. package/dist/service/cognito/command/user/sim-cognito-user-mfa-commands.js.map +1 -1
  143. package/dist/service/cognito/command/user/user-mfa.command.d.ts +4 -3
  144. package/dist/service/cognito/command/user/user-mfa.command.d.ts.map +1 -1
  145. package/dist/service/cognito/command/user-pool/sim-cognito-unsimulated-pool-messaging.d.ts +22 -8
  146. package/dist/service/cognito/command/user-pool/sim-cognito-unsimulated-pool-messaging.d.ts.map +1 -1
  147. package/dist/service/cognito/command/user-pool/sim-cognito-unsimulated-pool-messaging.js +24 -11
  148. package/dist/service/cognito/command/user-pool/sim-cognito-unsimulated-pool-messaging.js.map +1 -1
  149. package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-mfa-commands.d.ts +3 -3
  150. package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-mfa-commands.d.ts.map +1 -1
  151. package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-mfa-commands.js +5 -4
  152. package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-mfa-commands.js.map +1 -1
  153. package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-view.d.ts +6 -0
  154. package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-view.d.ts.map +1 -1
  155. package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-view.js +7 -0
  156. package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-view.js.map +1 -1
  157. package/dist/service/cognito/command/user-pool/user-pool-mfa.command.d.ts +7 -6
  158. package/dist/service/cognito/command/user-pool/user-pool-mfa.command.d.ts.map +1 -1
  159. package/dist/service/cognito/command/user-pool/user-pool.command.d.ts +4 -2
  160. package/dist/service/cognito/command/user-pool/user-pool.command.d.ts.map +1 -1
  161. package/dist/service/cognito/error/sim-cognito.error.d.ts +23 -0
  162. package/dist/service/cognito/error/sim-cognito.error.d.ts.map +1 -1
  163. package/dist/service/cognito/error/sim-cognito.error.js +27 -0
  164. package/dist/service/cognito/error/sim-cognito.error.js.map +1 -1
  165. package/dist/service/cognito/index.d.ts +4 -0
  166. package/dist/service/cognito/index.d.ts.map +1 -1
  167. package/dist/service/cognito/index.js +4 -0
  168. package/dist/service/cognito/index.js.map +1 -1
  169. package/dist/service/cognito/sim-cognito-identity-provider.d.ts +14 -0
  170. package/dist/service/cognito/sim-cognito-identity-provider.d.ts.map +1 -1
  171. package/dist/service/cognito/sim-cognito-identity-provider.js +5 -1
  172. package/dist/service/cognito/sim-cognito-identity-provider.js.map +1 -1
  173. package/dist/service/cognito/user-pool/message/sim-aws-cognito-email-senders.d.ts +42 -0
  174. package/dist/service/cognito/user-pool/message/sim-aws-cognito-email-senders.d.ts.map +1 -0
  175. package/dist/service/cognito/user-pool/message/sim-aws-cognito-email-senders.js +84 -0
  176. package/dist/service/cognito/user-pool/message/sim-aws-cognito-email-senders.js.map +1 -0
  177. package/dist/service/cognito/user-pool/message/sim-cognito-email-configuration-reader.d.ts +31 -0
  178. package/dist/service/cognito/user-pool/message/sim-cognito-email-configuration-reader.d.ts.map +1 -0
  179. package/dist/service/cognito/user-pool/message/sim-cognito-email-configuration-reader.js +72 -0
  180. package/dist/service/cognito/user-pool/message/sim-cognito-email-configuration-reader.js.map +1 -0
  181. package/dist/service/cognito/user-pool/message/sim-cognito-email-configuration.d.ts +85 -0
  182. package/dist/service/cognito/user-pool/message/sim-cognito-email-configuration.d.ts.map +1 -0
  183. package/dist/service/cognito/user-pool/message/sim-cognito-email-configuration.js +117 -0
  184. package/dist/service/cognito/user-pool/message/sim-cognito-email-configuration.js.map +1 -0
  185. package/dist/service/cognito/user-pool/message/sim-cognito-email-senders.d.ts +73 -0
  186. package/dist/service/cognito/user-pool/message/sim-cognito-email-senders.d.ts.map +1 -0
  187. package/dist/service/cognito/user-pool/message/sim-cognito-email-senders.js +23 -0
  188. package/dist/service/cognito/user-pool/message/sim-cognito-email-senders.js.map +1 -0
  189. package/dist/service/cognito/user-pool/message/sim-cognito-email-source-arn.d.ts +39 -0
  190. package/dist/service/cognito/user-pool/message/sim-cognito-email-source-arn.d.ts.map +1 -0
  191. package/dist/service/cognito/user-pool/message/sim-cognito-email-source-arn.js +33 -0
  192. package/dist/service/cognito/user-pool/message/sim-cognito-email-source-arn.js.map +1 -0
  193. package/dist/service/cognito/user-pool/message/sim-cognito-pool-email-delivery.d.ts +41 -0
  194. package/dist/service/cognito/user-pool/message/sim-cognito-pool-email-delivery.d.ts.map +1 -0
  195. package/dist/service/cognito/user-pool/message/sim-cognito-pool-email-delivery.js +66 -0
  196. package/dist/service/cognito/user-pool/message/sim-cognito-pool-email-delivery.js.map +1 -0
  197. package/dist/service/cognito/user-pool/message/sim-cognito-pool-messenger.d.ts +19 -4
  198. package/dist/service/cognito/user-pool/message/sim-cognito-pool-messenger.d.ts.map +1 -1
  199. package/dist/service/cognito/user-pool/message/sim-cognito-pool-messenger.js +30 -8
  200. package/dist/service/cognito/user-pool/message/sim-cognito-pool-messenger.js.map +1 -1
  201. package/dist/service/cognito/user-pool/message/sim-cognito-sent-message.d.ts +9 -3
  202. package/dist/service/cognito/user-pool/message/sim-cognito-sent-message.d.ts.map +1 -1
  203. package/dist/service/cognito/user-pool/message/sim-cognito-sent-message.js +9 -3
  204. package/dist/service/cognito/user-pool/message/sim-cognito-sent-message.js.map +1 -1
  205. package/dist/service/cognito/user-pool/mfa/sim-cognito-user-pool-mfa.d.ts +2 -3
  206. package/dist/service/cognito/user-pool/mfa/sim-cognito-user-pool-mfa.d.ts.map +1 -1
  207. package/dist/service/cognito/user-pool/mfa/sim-cognito-user-pool-mfa.js.map +1 -1
  208. package/dist/service/cognito/user-pool/sim-cognito-user-pool-arn.d.ts +4 -2
  209. package/dist/service/cognito/user-pool/sim-cognito-user-pool-arn.d.ts.map +1 -1
  210. package/dist/service/cognito/user-pool/sim-cognito-user-pool-arn.js +2 -1
  211. package/dist/service/cognito/user-pool/sim-cognito-user-pool-arn.js.map +1 -1
  212. package/dist/service/cognito/user-pool/sim-cognito-user-pool-settings.d.ts +13 -0
  213. package/dist/service/cognito/user-pool/sim-cognito-user-pool-settings.d.ts.map +1 -1
  214. package/dist/service/cognito/user-pool/sim-cognito-user-pool-settings.js +7 -0
  215. package/dist/service/cognito/user-pool/sim-cognito-user-pool-settings.js.map +1 -1
  216. package/dist/service/ecs/cfn/bind/sim-cfn-ecs-container-binding.type.d.ts +1 -1
  217. package/dist/service/ecs/cfn/bind/sim-cfn-ecs-container-bindings.d.ts +2 -2
  218. package/dist/service/ecs/cfn/bind/sim-cfn-ecs-container-bindings.d.ts.map +1 -1
  219. package/dist/service/ecs/cfn/bind/sim-cfn-ecs-container-bindings.js +1 -1
  220. package/dist/service/ecs/cfn/bind/sim-cfn-ecs-container-bindings.js.map +1 -1
  221. package/dist/service/ecs/cfn/task-definition/sim-cfn-ecs-task-definition-creator.d.ts +2 -2
  222. package/dist/service/ecs/cfn/task-definition/sim-cfn-ecs-task-definition-creator.d.ts.map +1 -1
  223. package/dist/service/ecs/cfn/task-definition/sim-cfn-ecs-task-definition-creator.js.map +1 -1
  224. package/dist/service/iam/index.d.ts +1 -0
  225. package/dist/service/iam/index.d.ts.map +1 -1
  226. package/dist/service/iam/index.js.map +1 -1
  227. package/dist/service/lambda/cfn/function/sim-cfn-lambda-code-input.d.ts +2 -2
  228. package/dist/service/lambda/cfn/function/sim-cfn-lambda-code-input.d.ts.map +1 -1
  229. package/dist/service/lambda/cfn/function/sim-cfn-lambda-function-creator.d.ts +2 -2
  230. package/dist/service/lambda/cfn/function/sim-cfn-lambda-function-creator.d.ts.map +1 -1
  231. package/dist/service/lambda/cfn/function/sim-cfn-lambda-function-creator.js.map +1 -1
  232. package/dist/service/ses/account/sim-ses-account.d.ts +22 -0
  233. package/dist/service/ses/account/sim-ses-account.d.ts.map +1 -1
  234. package/dist/service/ses/account/sim-ses-account.js +31 -0
  235. package/dist/service/ses/account/sim-ses-account.js.map +1 -1
  236. package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-creator.d.ts +30 -0
  237. package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-creator.d.ts.map +1 -0
  238. package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-creator.js +47 -0
  239. package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-creator.js.map +1 -0
  240. package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-option-groups.d.ts +23 -0
  241. package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-option-groups.d.ts.map +1 -0
  242. package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-option-groups.js +52 -0
  243. package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-option-groups.js.map +1 -0
  244. package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-properties.d.ts +39 -0
  245. package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-properties.d.ts.map +1 -0
  246. package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-properties.js +71 -0
  247. package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-properties.js.map +1 -0
  248. package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-unsimulated-properties.d.ts +17 -0
  249. package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-unsimulated-properties.d.ts.map +1 -0
  250. package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-unsimulated-properties.js +34 -0
  251. package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-unsimulated-properties.js.map +1 -0
  252. package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-creator.d.ts +5 -0
  253. package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-creator.d.ts.map +1 -1
  254. package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-creator.js +7 -0
  255. package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-creator.js.map +1 -1
  256. package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-properties.d.ts +13 -8
  257. package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-properties.d.ts.map +1 -1
  258. package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-properties.js +29 -14
  259. package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-properties.js.map +1 -1
  260. package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-settings.d.ts +18 -0
  261. package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-settings.d.ts.map +1 -0
  262. package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-settings.js +77 -0
  263. package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-settings.js.map +1 -0
  264. package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-values.d.ts +25 -0
  265. package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-values.d.ts.map +1 -0
  266. package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-values.js +49 -0
  267. package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-values.js.map +1 -0
  268. package/dist/service/ses/cfn/sim-cfn-ses-property-scalars.d.ts +25 -0
  269. package/dist/service/ses/cfn/sim-cfn-ses-property-scalars.d.ts.map +1 -0
  270. package/dist/service/ses/cfn/sim-cfn-ses-property-scalars.js +69 -0
  271. package/dist/service/ses/cfn/sim-cfn-ses-property-scalars.js.map +1 -0
  272. package/dist/service/ses/cfn/sim-cfn-ses-resource-types.d.ts +2 -0
  273. package/dist/service/ses/cfn/sim-cfn-ses-resource-types.d.ts.map +1 -1
  274. package/dist/service/ses/cfn/sim-cfn-ses-resource-types.js +2 -0
  275. package/dist/service/ses/cfn/sim-cfn-ses-resource-types.js.map +1 -1
  276. package/dist/service/ses/cfn/sim-ses-cfn-resource-factory.d.ts +3 -2
  277. package/dist/service/ses/cfn/sim-ses-cfn-resource-factory.d.ts.map +1 -1
  278. package/dist/service/ses/cfn/sim-ses-cfn-resource-factory.js +43 -40
  279. package/dist/service/ses/cfn/sim-ses-cfn-resource-factory.js.map +1 -1
  280. package/dist/service/ses/command/account/account.command.d.ts +22 -0
  281. package/dist/service/ses/command/account/account.command.d.ts.map +1 -1
  282. package/dist/service/ses/command/account/sim-ses-account-commands.d.ts +12 -4
  283. package/dist/service/ses/command/account/sim-ses-account-commands.d.ts.map +1 -1
  284. package/dist/service/ses/command/account/sim-ses-account-commands.js +16 -3
  285. package/dist/service/ses/command/account/sim-ses-account-commands.js.map +1 -1
  286. package/dist/service/ses/command/account/sim-ses-account-report.d.ts +3 -0
  287. package/dist/service/ses/command/account/sim-ses-account-report.d.ts.map +1 -1
  288. package/dist/service/ses/command/account/sim-ses-account-report.js +4 -0
  289. package/dist/service/ses/command/account/sim-ses-account-report.js.map +1 -1
  290. package/dist/service/ses/command/authorize/sim-ses-authorizer.d.ts +8 -0
  291. package/dist/service/ses/command/authorize/sim-ses-authorizer.d.ts.map +1 -1
  292. package/dist/service/ses/command/authorize/sim-ses-authorizer.js +11 -1
  293. package/dist/service/ses/command/authorize/sim-ses-authorizer.js.map +1 -1
  294. package/dist/service/ses/command/configuration-set/configuration-set.command.d.ts +100 -0
  295. package/dist/service/ses/command/configuration-set/configuration-set.command.d.ts.map +1 -0
  296. package/dist/service/ses/command/configuration-set/configuration-set.command.js +2 -0
  297. package/dist/service/ses/command/configuration-set/configuration-set.command.js.map +1 -0
  298. package/dist/service/ses/command/configuration-set/sim-ses-configuration-set-commands.d.ts +55 -0
  299. package/dist/service/ses/command/configuration-set/sim-ses-configuration-set-commands.d.ts.map +1 -0
  300. package/dist/service/ses/command/configuration-set/sim-ses-configuration-set-commands.js +105 -0
  301. package/dist/service/ses/command/configuration-set/sim-ses-configuration-set-commands.js.map +1 -0
  302. package/dist/service/ses/command/configuration-set/sim-ses-configuration-set-options.d.ts +11 -0
  303. package/dist/service/ses/command/configuration-set/sim-ses-configuration-set-options.d.ts.map +1 -0
  304. package/dist/service/ses/command/configuration-set/sim-ses-configuration-set-options.js +83 -0
  305. package/dist/service/ses/command/configuration-set/sim-ses-configuration-set-options.js.map +1 -0
  306. package/dist/service/ses/command/configuration-set/sim-ses-unsimulated-configuration-set-input.d.ts +12 -0
  307. package/dist/service/ses/command/configuration-set/sim-ses-unsimulated-configuration-set-input.d.ts.map +1 -0
  308. package/dist/service/ses/command/configuration-set/sim-ses-unsimulated-configuration-set-input.js +27 -0
  309. package/dist/service/ses/command/configuration-set/sim-ses-unsimulated-configuration-set-input.js.map +1 -0
  310. package/dist/service/ses/command/identity/identity.command.d.ts +55 -2
  311. package/dist/service/ses/command/identity/identity.command.d.ts.map +1 -1
  312. package/dist/service/ses/command/identity/sim-ses-identity-attributes.d.ts +29 -0
  313. package/dist/service/ses/command/identity/sim-ses-identity-attributes.d.ts.map +1 -0
  314. package/dist/service/ses/command/identity/sim-ses-identity-attributes.js +60 -0
  315. package/dist/service/ses/command/identity/sim-ses-identity-attributes.js.map +1 -0
  316. package/dist/service/ses/command/identity/sim-ses-identity-commands.d.ts +6 -1
  317. package/dist/service/ses/command/identity/sim-ses-identity-commands.d.ts.map +1 -1
  318. package/dist/service/ses/command/identity/sim-ses-identity-commands.js +12 -12
  319. package/dist/service/ses/command/identity/sim-ses-identity-commands.js.map +1 -1
  320. package/dist/service/ses/command/identity/sim-ses-identity-input-settings.d.ts +16 -0
  321. package/dist/service/ses/command/identity/sim-ses-identity-input-settings.d.ts.map +1 -0
  322. package/dist/service/ses/command/identity/sim-ses-identity-input-settings.js +57 -0
  323. package/dist/service/ses/command/identity/sim-ses-identity-input-settings.js.map +1 -0
  324. package/dist/service/ses/command/send/sim-ses-configuration-set-check.d.ts +53 -0
  325. package/dist/service/ses/command/send/sim-ses-configuration-set-check.d.ts.map +1 -0
  326. package/dist/service/ses/command/send/sim-ses-configuration-set-check.js +70 -0
  327. package/dist/service/ses/command/send/sim-ses-configuration-set-check.js.map +1 -0
  328. package/dist/service/ses/command/send/sim-ses-send-email.d.ts +11 -3
  329. package/dist/service/ses/command/send/sim-ses-send-email.d.ts.map +1 -1
  330. package/dist/service/ses/command/send/sim-ses-send-email.js +18 -4
  331. package/dist/service/ses/command/send/sim-ses-send-email.js.map +1 -1
  332. package/dist/service/ses/command/send/sim-ses-service-send.d.ts +74 -0
  333. package/dist/service/ses/command/send/sim-ses-service-send.d.ts.map +1 -0
  334. package/dist/service/ses/command/send/sim-ses-service-send.js +76 -0
  335. package/dist/service/ses/command/send/sim-ses-service-send.js.map +1 -0
  336. package/dist/service/ses/command/send/sim-ses-suppression-check.d.ts +31 -0
  337. package/dist/service/ses/command/send/sim-ses-suppression-check.d.ts.map +1 -0
  338. package/dist/service/ses/command/send/sim-ses-suppression-check.js +37 -0
  339. package/dist/service/ses/command/send/sim-ses-suppression-check.js.map +1 -0
  340. package/dist/service/ses/command/send/sim-ses-verified-identities.d.ts +8 -0
  341. package/dist/service/ses/command/send/sim-ses-verified-identities.d.ts.map +1 -1
  342. package/dist/service/ses/command/send/sim-ses-verified-identities.js +15 -2
  343. package/dist/service/ses/command/send/sim-ses-verified-identities.js.map +1 -1
  344. package/dist/service/ses/command/sim-ses-command.types.d.ts +4 -2
  345. package/dist/service/ses/command/sim-ses-command.types.d.ts.map +1 -1
  346. package/dist/service/ses/command/suppression/sim-ses-suppression-commands.d.ts +44 -0
  347. package/dist/service/ses/command/suppression/sim-ses-suppression-commands.d.ts.map +1 -0
  348. package/dist/service/ses/command/suppression/sim-ses-suppression-commands.js +79 -0
  349. package/dist/service/ses/command/suppression/sim-ses-suppression-commands.js.map +1 -0
  350. package/dist/service/ses/command/suppression/sim-ses-suppression-listing.d.ts +15 -0
  351. package/dist/service/ses/command/suppression/sim-ses-suppression-listing.d.ts.map +1 -0
  352. package/dist/service/ses/command/suppression/sim-ses-suppression-listing.js +29 -0
  353. package/dist/service/ses/command/suppression/sim-ses-suppression-listing.js.map +1 -0
  354. package/dist/service/ses/command/suppression/sim-ses-unsimulated-suppression-input.d.ts +9 -0
  355. package/dist/service/ses/command/suppression/sim-ses-unsimulated-suppression-input.d.ts.map +1 -0
  356. package/dist/service/ses/command/suppression/sim-ses-unsimulated-suppression-input.js +16 -0
  357. package/dist/service/ses/command/suppression/sim-ses-unsimulated-suppression-input.js.map +1 -0
  358. package/dist/service/ses/command/suppression/suppression.command.d.ts +90 -0
  359. package/dist/service/ses/command/suppression/suppression.command.d.ts.map +1 -0
  360. package/dist/service/ses/command/suppression/suppression.command.js +2 -0
  361. package/dist/service/ses/command/suppression/suppression.command.js.map +1 -0
  362. package/dist/service/ses/configuration-set/sim-ses-configuration-set-store.d.ts +44 -0
  363. package/dist/service/ses/configuration-set/sim-ses-configuration-set-store.d.ts.map +1 -0
  364. package/dist/service/ses/configuration-set/sim-ses-configuration-set-store.js +91 -0
  365. package/dist/service/ses/configuration-set/sim-ses-configuration-set-store.js.map +1 -0
  366. package/dist/service/ses/configuration-set/sim-ses-configuration-set.d.ts +75 -0
  367. package/dist/service/ses/configuration-set/sim-ses-configuration-set.d.ts.map +1 -0
  368. package/dist/service/ses/configuration-set/sim-ses-configuration-set.js +44 -0
  369. package/dist/service/ses/configuration-set/sim-ses-configuration-set.js.map +1 -0
  370. package/dist/service/ses/email/sim-ses-sent-email-store.d.ts +14 -0
  371. package/dist/service/ses/email/sim-ses-sent-email-store.d.ts.map +1 -1
  372. package/dist/service/ses/email/sim-ses-sent-email-store.js +21 -0
  373. package/dist/service/ses/email/sim-ses-sent-email-store.js.map +1 -1
  374. package/dist/service/ses/email/sim-ses-sent-email.d.ts +29 -0
  375. package/dist/service/ses/email/sim-ses-sent-email.d.ts.map +1 -1
  376. package/dist/service/ses/email/sim-ses-sent-email.js +21 -0
  377. package/dist/service/ses/email/sim-ses-sent-email.js.map +1 -1
  378. package/dist/service/ses/error/sim-ses.error.d.ts +12 -0
  379. package/dist/service/ses/error/sim-ses.error.d.ts.map +1 -1
  380. package/dist/service/ses/error/sim-ses.error.js +14 -0
  381. package/dist/service/ses/error/sim-ses.error.js.map +1 -1
  382. package/dist/service/ses/identity/sim-ses-dkim-tokens.d.ts.map +1 -0
  383. package/dist/service/ses/identity/sim-ses-dkim-tokens.js.map +1 -0
  384. package/dist/service/ses/identity/sim-ses-identity-name.d.ts +5 -0
  385. package/dist/service/ses/identity/sim-ses-identity-name.d.ts.map +1 -1
  386. package/dist/service/ses/identity/sim-ses-identity-name.js +5 -1
  387. package/dist/service/ses/identity/sim-ses-identity-name.js.map +1 -1
  388. package/dist/service/ses/identity/sim-ses-identity-settings.d.ts +64 -0
  389. package/dist/service/ses/identity/sim-ses-identity-settings.d.ts.map +1 -0
  390. package/dist/service/ses/identity/sim-ses-identity-settings.js +21 -0
  391. package/dist/service/ses/identity/sim-ses-identity-settings.js.map +1 -0
  392. package/dist/service/ses/identity/sim-ses-identity-store.d.ts +2 -1
  393. package/dist/service/ses/identity/sim-ses-identity-store.d.ts.map +1 -1
  394. package/dist/service/ses/identity/sim-ses-identity-store.js +2 -1
  395. package/dist/service/ses/identity/sim-ses-identity-store.js.map +1 -1
  396. package/dist/service/ses/identity/sim-ses-identity.d.ts +38 -0
  397. package/dist/service/ses/identity/sim-ses-identity.d.ts.map +1 -1
  398. package/dist/service/ses/identity/sim-ses-identity.js +54 -0
  399. package/dist/service/ses/identity/sim-ses-identity.js.map +1 -1
  400. package/dist/service/ses/index.d.ts +11 -4
  401. package/dist/service/ses/index.d.ts.map +1 -1
  402. package/dist/service/ses/index.js +8 -2
  403. package/dist/service/ses/index.js.map +1 -1
  404. package/dist/service/ses/sdk/sim-ses-sdk-command-router.d.ts.map +1 -1
  405. package/dist/service/ses/sdk/sim-ses-sdk-command-router.js +36 -0
  406. package/dist/service/ses/sdk/sim-ses-sdk-command-router.js.map +1 -1
  407. package/dist/service/ses/sim-ses-arn.d.ts +7 -0
  408. package/dist/service/ses/sim-ses-arn.d.ts.map +1 -1
  409. package/dist/service/ses/sim-ses-arn.js +9 -0
  410. package/dist/service/ses/sim-ses-arn.js.map +1 -1
  411. package/dist/service/ses/sim-ses-commands.d.ts +19 -0
  412. package/dist/service/ses/sim-ses-commands.d.ts.map +1 -1
  413. package/dist/service/ses/sim-ses-commands.js +57 -7
  414. package/dist/service/ses/sim-ses-commands.js.map +1 -1
  415. package/dist/service/ses/sim-ses-configuration-sets.d.ts +47 -0
  416. package/dist/service/ses/sim-ses-configuration-sets.d.ts.map +1 -0
  417. package/dist/service/ses/sim-ses-configuration-sets.js +60 -0
  418. package/dist/service/ses/sim-ses-configuration-sets.js.map +1 -0
  419. package/dist/service/ses/sim-ses-suppression.d.ts +52 -0
  420. package/dist/service/ses/sim-ses-suppression.d.ts.map +1 -0
  421. package/dist/service/ses/sim-ses-suppression.js +63 -0
  422. package/dist/service/ses/sim-ses-suppression.js.map +1 -0
  423. package/dist/service/ses/sim-ses-v2.d.ts +14 -1
  424. package/dist/service/ses/sim-ses-v2.d.ts.map +1 -1
  425. package/dist/service/ses/sim-ses-v2.js +48 -35
  426. package/dist/service/ses/sim-ses-v2.js.map +1 -1
  427. package/dist/service/ses/suppression/sim-ses-suppressed-destination.d.ts +24 -0
  428. package/dist/service/ses/suppression/sim-ses-suppressed-destination.d.ts.map +1 -0
  429. package/dist/service/ses/suppression/sim-ses-suppressed-destination.js +21 -0
  430. package/dist/service/ses/suppression/sim-ses-suppressed-destination.js.map +1 -0
  431. package/dist/service/ses/suppression/sim-ses-suppression-address.d.ts +9 -0
  432. package/dist/service/ses/suppression/sim-ses-suppression-address.d.ts.map +1 -0
  433. package/dist/service/ses/suppression/sim-ses-suppression-address.js +21 -0
  434. package/dist/service/ses/suppression/sim-ses-suppression-address.js.map +1 -0
  435. package/dist/service/ses/suppression/sim-ses-suppression-list.d.ts +57 -0
  436. package/dist/service/ses/suppression/sim-ses-suppression-list.d.ts.map +1 -0
  437. package/dist/service/ses/suppression/sim-ses-suppression-list.js +82 -0
  438. package/dist/service/ses/suppression/sim-ses-suppression-list.js.map +1 -0
  439. package/dist/service/ses/suppression/sim-ses-suppression-reason.d.ts +20 -0
  440. package/dist/service/ses/suppression/sim-ses-suppression-reason.d.ts.map +1 -0
  441. package/dist/service/ses/suppression/sim-ses-suppression-reason.js +24 -0
  442. package/dist/service/ses/suppression/sim-ses-suppression-reason.js.map +1 -0
  443. package/dist/service/sns/command/sim-sns-commands.d.ts +2 -0
  444. package/dist/service/sns/command/sim-sns-commands.d.ts.map +1 -1
  445. package/dist/service/sns/command/sim-sns-commands.js +4 -1
  446. package/dist/service/sns/command/sim-sns-commands.js.map +1 -1
  447. package/dist/service/sns/sim-sns.d.ts +7 -0
  448. package/dist/service/sns/sim-sns.d.ts.map +1 -1
  449. package/dist/service/sns/sim-sns.js +3 -1
  450. package/dist/service/sns/sim-sns.js.map +1 -1
  451. package/dist/service/sns/sms/sim-sns-sent-sms-store.d.ts +13 -0
  452. package/dist/service/sns/sms/sim-sns-sent-sms-store.d.ts.map +1 -1
  453. package/dist/service/sns/sms/sim-sns-sent-sms-store.js +15 -0
  454. package/dist/service/sns/sms/sim-sns-sent-sms-store.js.map +1 -1
  455. package/dist/terraform/index.d.ts +6 -0
  456. package/dist/terraform/index.d.ts.map +1 -0
  457. package/dist/terraform/index.js +2 -0
  458. package/dist/terraform/index.js.map +1 -0
  459. package/dist/terraform/map/sim-tf-map-cloudwatch-dimensions.d.ts +20 -0
  460. package/dist/terraform/map/sim-tf-map-cloudwatch-dimensions.d.ts.map +1 -0
  461. package/dist/terraform/map/sim-tf-map-cloudwatch-dimensions.js +36 -0
  462. package/dist/terraform/map/sim-tf-map-cloudwatch-dimensions.js.map +1 -0
  463. package/dist/terraform/map/sim-tf-map-cloudwatch.d.ts +12 -0
  464. package/dist/terraform/map/sim-tf-map-cloudwatch.d.ts.map +1 -0
  465. package/dist/terraform/map/sim-tf-map-cloudwatch.js +69 -0
  466. package/dist/terraform/map/sim-tf-map-cloudwatch.js.map +1 -0
  467. package/dist/terraform/map/sim-tf-map-cognito-client.d.ts +15 -0
  468. package/dist/terraform/map/sim-tf-map-cognito-client.d.ts.map +1 -0
  469. package/dist/terraform/map/sim-tf-map-cognito-client.js +37 -0
  470. package/dist/terraform/map/sim-tf-map-cognito-client.js.map +1 -0
  471. package/dist/terraform/map/sim-tf-map-cognito-pool.d.ts +26 -0
  472. package/dist/terraform/map/sim-tf-map-cognito-pool.d.ts.map +1 -0
  473. package/dist/terraform/map/sim-tf-map-cognito-pool.js +70 -0
  474. package/dist/terraform/map/sim-tf-map-cognito-pool.js.map +1 -0
  475. package/dist/terraform/map/sim-tf-map-cognito.d.ts +13 -0
  476. package/dist/terraform/map/sim-tf-map-cognito.d.ts.map +1 -0
  477. package/dist/terraform/map/sim-tf-map-cognito.js +39 -0
  478. package/dist/terraform/map/sim-tf-map-cognito.js.map +1 -0
  479. package/dist/terraform/map/sim-tf-map-dynamodb-keys.d.ts +31 -0
  480. package/dist/terraform/map/sim-tf-map-dynamodb-keys.d.ts.map +1 -0
  481. package/dist/{service/cloudformation/terraform/sim-tf-map-dynamodb.js → terraform/map/sim-tf-map-dynamodb-keys.js} +27 -30
  482. package/dist/terraform/map/sim-tf-map-dynamodb-keys.js.map +1 -0
  483. package/dist/terraform/map/sim-tf-map-dynamodb.d.ts +5 -0
  484. package/dist/terraform/map/sim-tf-map-dynamodb.d.ts.map +1 -0
  485. package/dist/terraform/map/sim-tf-map-dynamodb.js +31 -0
  486. package/dist/terraform/map/sim-tf-map-dynamodb.js.map +1 -0
  487. package/dist/terraform/map/sim-tf-map-ecr.d.ts +12 -0
  488. package/dist/terraform/map/sim-tf-map-ecr.d.ts.map +1 -0
  489. package/dist/terraform/map/sim-tf-map-ecr.js +34 -0
  490. package/dist/terraform/map/sim-tf-map-ecr.js.map +1 -0
  491. package/dist/terraform/map/sim-tf-map-events.d.ts +24 -0
  492. package/dist/terraform/map/sim-tf-map-events.d.ts.map +1 -0
  493. package/dist/terraform/map/sim-tf-map-events.js +151 -0
  494. package/dist/terraform/map/sim-tf-map-events.js.map +1 -0
  495. package/dist/terraform/map/sim-tf-map-http-api-routes.d.ts +10 -0
  496. package/dist/terraform/map/sim-tf-map-http-api-routes.d.ts.map +1 -0
  497. package/dist/{service/cloudformation/terraform/sim-tf-map-http-api-route.js → terraform/map/sim-tf-map-http-api-routes.js} +19 -3
  498. package/dist/terraform/map/sim-tf-map-http-api-routes.js.map +1 -0
  499. package/dist/terraform/map/sim-tf-map-http-api.d.ts +7 -0
  500. package/dist/terraform/map/sim-tf-map-http-api.d.ts.map +1 -0
  501. package/dist/{service/cloudformation/terraform → terraform/map}/sim-tf-map-http-api.js +3 -17
  502. package/dist/terraform/map/sim-tf-map-http-api.js.map +1 -0
  503. package/dist/terraform/map/sim-tf-map-iam-policy.d.ts +32 -0
  504. package/dist/terraform/map/sim-tf-map-iam-policy.d.ts.map +1 -0
  505. package/dist/terraform/map/sim-tf-map-iam-policy.js +85 -0
  506. package/dist/terraform/map/sim-tf-map-iam-policy.js.map +1 -0
  507. package/dist/{service/cloudformation/terraform → terraform/map}/sim-tf-map-iam.d.ts +2 -4
  508. package/dist/terraform/map/sim-tf-map-iam.d.ts.map +1 -0
  509. package/dist/terraform/map/sim-tf-map-iam.js +37 -0
  510. package/dist/terraform/map/sim-tf-map-iam.js.map +1 -0
  511. package/dist/terraform/map/sim-tf-map-kms.d.ts +25 -0
  512. package/dist/terraform/map/sim-tf-map-kms.d.ts.map +1 -0
  513. package/dist/terraform/map/sim-tf-map-kms.js +75 -0
  514. package/dist/terraform/map/sim-tf-map-kms.js.map +1 -0
  515. package/dist/terraform/map/sim-tf-map-lambda-environment.d.ts +20 -0
  516. package/dist/terraform/map/sim-tf-map-lambda-environment.d.ts.map +1 -0
  517. package/dist/terraform/map/sim-tf-map-lambda-environment.js +52 -0
  518. package/dist/terraform/map/sim-tf-map-lambda-environment.js.map +1 -0
  519. package/dist/{service/cloudformation/terraform → terraform/map}/sim-tf-map-lambda.d.ts +2 -2
  520. package/dist/terraform/map/sim-tf-map-lambda.d.ts.map +1 -0
  521. package/dist/{service/cloudformation/terraform → terraform/map}/sim-tf-map-lambda.js +19 -36
  522. package/dist/terraform/map/sim-tf-map-lambda.js.map +1 -0
  523. package/dist/terraform/map/sim-tf-map-logs.d.ts +12 -0
  524. package/dist/terraform/map/sim-tf-map-logs.d.ts.map +1 -0
  525. package/dist/terraform/map/sim-tf-map-logs.js +22 -0
  526. package/dist/terraform/map/sim-tf-map-logs.js.map +1 -0
  527. package/dist/{service/cloudformation/terraform → terraform/map}/sim-tf-map-s3-folds.d.ts +1 -1
  528. package/dist/terraform/map/sim-tf-map-s3-folds.d.ts.map +1 -0
  529. package/dist/{service/cloudformation/terraform → terraform/map}/sim-tf-map-s3-folds.js +2 -3
  530. package/dist/terraform/map/sim-tf-map-s3-folds.js.map +1 -0
  531. package/dist/terraform/map/sim-tf-map-s3-lifecycle.d.ts +4 -0
  532. package/dist/terraform/map/sim-tf-map-s3-lifecycle.d.ts.map +1 -0
  533. package/dist/terraform/map/sim-tf-map-s3-lifecycle.js +92 -0
  534. package/dist/terraform/map/sim-tf-map-s3-lifecycle.js.map +1 -0
  535. package/dist/terraform/map/sim-tf-map-s3-notification-destinations.d.ts +5 -0
  536. package/dist/terraform/map/sim-tf-map-s3-notification-destinations.d.ts.map +1 -0
  537. package/dist/terraform/map/sim-tf-map-s3-notification-destinations.js +30 -0
  538. package/dist/terraform/map/sim-tf-map-s3-notification-destinations.js.map +1 -0
  539. package/dist/terraform/map/sim-tf-map-s3-notification-filter.d.ts +12 -0
  540. package/dist/terraform/map/sim-tf-map-s3-notification-filter.d.ts.map +1 -0
  541. package/dist/terraform/map/sim-tf-map-s3-notification-filter.js +21 -0
  542. package/dist/terraform/map/sim-tf-map-s3-notification-filter.js.map +1 -0
  543. package/dist/terraform/map/sim-tf-map-s3-notification.d.ts +50 -0
  544. package/dist/terraform/map/sim-tf-map-s3-notification.d.ts.map +1 -0
  545. package/dist/terraform/map/sim-tf-map-s3-notification.js +80 -0
  546. package/dist/terraform/map/sim-tf-map-s3-notification.js.map +1 -0
  547. package/dist/terraform/map/sim-tf-map-s3-rules.d.ts +7 -0
  548. package/dist/terraform/map/sim-tf-map-s3-rules.d.ts.map +1 -0
  549. package/dist/{service/cloudformation/terraform/sim-tf-map-s3-encryption.js → terraform/map/sim-tf-map-s3-rules.js} +20 -3
  550. package/dist/terraform/map/sim-tf-map-s3-rules.js.map +1 -0
  551. package/dist/terraform/map/sim-tf-map-s3.d.ts +5 -0
  552. package/dist/terraform/map/sim-tf-map-s3.d.ts.map +1 -0
  553. package/dist/{service/cloudformation/terraform → terraform/map}/sim-tf-map-s3.js +1 -1
  554. package/dist/terraform/map/sim-tf-map-s3.js.map +1 -0
  555. package/dist/{service/cloudformation/terraform/sim-tf-map-config.d.ts → terraform/map/sim-tf-map-secretsmanager.d.ts} +3 -5
  556. package/dist/terraform/map/sim-tf-map-secretsmanager.d.ts.map +1 -0
  557. package/dist/{service/cloudformation/terraform/sim-tf-map-config.js → terraform/map/sim-tf-map-secretsmanager.js} +2 -14
  558. package/dist/terraform/map/sim-tf-map-secretsmanager.js.map +1 -0
  559. package/dist/{service/cloudformation/terraform → terraform/map}/sim-tf-map-sns.d.ts +2 -2
  560. package/dist/terraform/map/sim-tf-map-sns.d.ts.map +1 -0
  561. package/dist/{service/cloudformation/terraform → terraform/map}/sim-tf-map-sns.js +1 -1
  562. package/dist/terraform/map/sim-tf-map-sns.js.map +1 -0
  563. package/dist/terraform/map/sim-tf-map-sqs-redrive.d.ts +32 -0
  564. package/dist/terraform/map/sim-tf-map-sqs-redrive.d.ts.map +1 -0
  565. package/dist/terraform/map/sim-tf-map-sqs-redrive.js +68 -0
  566. package/dist/terraform/map/sim-tf-map-sqs-redrive.js.map +1 -0
  567. package/dist/terraform/map/sim-tf-map-sqs.d.ts +11 -0
  568. package/dist/terraform/map/sim-tf-map-sqs.d.ts.map +1 -0
  569. package/dist/terraform/map/sim-tf-map-sqs.js +26 -0
  570. package/dist/terraform/map/sim-tf-map-sqs.js.map +1 -0
  571. package/dist/terraform/map/sim-tf-map-ssm.d.ts +13 -0
  572. package/dist/terraform/map/sim-tf-map-ssm.d.ts.map +1 -0
  573. package/dist/terraform/map/sim-tf-map-ssm.js +24 -0
  574. package/dist/terraform/map/sim-tf-map-ssm.js.map +1 -0
  575. package/dist/terraform/sim-tf-adapter.d.ts +80 -0
  576. package/dist/terraform/sim-tf-adapter.d.ts.map +1 -0
  577. package/dist/terraform/sim-tf-adapter.js +44 -0
  578. package/dist/terraform/sim-tf-adapter.js.map +1 -0
  579. package/dist/terraform/sim-tf-attribute-intrinsic.d.ts +13 -0
  580. package/dist/terraform/sim-tf-attribute-intrinsic.d.ts.map +1 -0
  581. package/dist/terraform/sim-tf-attribute-intrinsic.js +23 -0
  582. package/dist/terraform/sim-tf-attribute-intrinsic.js.map +1 -0
  583. package/dist/terraform/sim-tf-attribute-reads.d.ts.map +1 -0
  584. package/dist/terraform/sim-tf-attribute-reads.js.map +1 -0
  585. package/dist/{service/cloudformation/terraform → terraform}/sim-tf-attributes.d.ts +13 -4
  586. package/dist/terraform/sim-tf-attributes.d.ts.map +1 -0
  587. package/dist/{service/cloudformation/terraform → terraform}/sim-tf-attributes.js +2 -2
  588. package/dist/terraform/sim-tf-attributes.js.map +1 -0
  589. package/dist/terraform/sim-tf-declare.d.ts +17 -0
  590. package/dist/terraform/sim-tf-declare.d.ts.map +1 -0
  591. package/dist/terraform/sim-tf-declare.js +37 -0
  592. package/dist/terraform/sim-tf-declare.js.map +1 -0
  593. package/dist/{service/cloudformation/terraform/sim-tf-template-graph.d.ts → terraform/sim-tf-depends-on.d.ts} +4 -12
  594. package/dist/terraform/sim-tf-depends-on.d.ts.map +1 -0
  595. package/dist/terraform/sim-tf-depends-on.js +30 -0
  596. package/dist/terraform/sim-tf-depends-on.js.map +1 -0
  597. package/dist/terraform/sim-tf-expression-references.d.ts +11 -0
  598. package/dist/terraform/sim-tf-expression-references.d.ts.map +1 -0
  599. package/dist/terraform/sim-tf-expression-references.js +22 -0
  600. package/dist/terraform/sim-tf-expression-references.js.map +1 -0
  601. package/dist/terraform/sim-tf-fold.d.ts +26 -0
  602. package/dist/terraform/sim-tf-fold.d.ts.map +1 -0
  603. package/dist/terraform/sim-tf-fold.js +72 -0
  604. package/dist/terraform/sim-tf-fold.js.map +1 -0
  605. package/dist/terraform/sim-tf-import.d.ts +31 -0
  606. package/dist/terraform/sim-tf-import.d.ts.map +1 -0
  607. package/dist/terraform/sim-tf-import.js +38 -0
  608. package/dist/terraform/sim-tf-import.js.map +1 -0
  609. package/dist/terraform/sim-tf-logical-id.d.ts +27 -0
  610. package/dist/terraform/sim-tf-logical-id.d.ts.map +1 -0
  611. package/dist/terraform/sim-tf-logical-id.js +83 -0
  612. package/dist/terraform/sim-tf-logical-id.js.map +1 -0
  613. package/dist/terraform/sim-tf-mapping.type.d.ts +73 -0
  614. package/dist/terraform/sim-tf-mapping.type.d.ts.map +1 -0
  615. package/dist/terraform/sim-tf-mapping.type.js.map +1 -0
  616. package/dist/terraform/sim-tf-module-outputs.d.ts +50 -0
  617. package/dist/terraform/sim-tf-module-outputs.d.ts.map +1 -0
  618. package/dist/terraform/sim-tf-module-outputs.js +99 -0
  619. package/dist/terraform/sim-tf-module-outputs.js.map +1 -0
  620. package/dist/terraform/sim-tf-module-variables.d.ts +16 -0
  621. package/dist/terraform/sim-tf-module-variables.d.ts.map +1 -0
  622. package/dist/terraform/sim-tf-module-variables.js +37 -0
  623. package/dist/terraform/sim-tf-module-variables.js.map +1 -0
  624. package/dist/terraform/sim-tf-nested-attributes.d.ts +33 -0
  625. package/dist/terraform/sim-tf-nested-attributes.d.ts.map +1 -0
  626. package/dist/terraform/sim-tf-nested-attributes.js +97 -0
  627. package/dist/terraform/sim-tf-nested-attributes.js.map +1 -0
  628. package/dist/terraform/sim-tf-override.type.d.ts +36 -0
  629. package/dist/terraform/sim-tf-override.type.d.ts.map +1 -0
  630. package/dist/terraform/sim-tf-override.type.js +2 -0
  631. package/dist/terraform/sim-tf-override.type.js.map +1 -0
  632. package/dist/terraform/sim-tf-overrides.d.ts +21 -0
  633. package/dist/terraform/sim-tf-overrides.d.ts.map +1 -0
  634. package/dist/terraform/sim-tf-overrides.js +40 -0
  635. package/dist/terraform/sim-tf-overrides.js.map +1 -0
  636. package/dist/terraform/sim-tf-plan-file.d.ts +23 -0
  637. package/dist/terraform/sim-tf-plan-file.d.ts.map +1 -0
  638. package/dist/terraform/sim-tf-plan-file.js +58 -0
  639. package/dist/terraform/sim-tf-plan-file.js.map +1 -0
  640. package/dist/terraform/sim-tf-plan-resources.d.ts +18 -0
  641. package/dist/terraform/sim-tf-plan-resources.d.ts.map +1 -0
  642. package/dist/terraform/sim-tf-plan-resources.js +54 -0
  643. package/dist/terraform/sim-tf-plan-resources.js.map +1 -0
  644. package/dist/terraform/sim-tf-plan-sections.d.ts +31 -0
  645. package/dist/terraform/sim-tf-plan-sections.d.ts.map +1 -0
  646. package/dist/terraform/sim-tf-plan-sections.js +60 -0
  647. package/dist/terraform/sim-tf-plan-sections.js.map +1 -0
  648. package/dist/{service/cloudformation/terraform → terraform}/sim-tf-plan.type.d.ts +25 -4
  649. package/dist/terraform/sim-tf-plan.type.d.ts.map +1 -0
  650. package/dist/terraform/sim-tf-plan.type.js.map +1 -0
  651. package/dist/terraform/sim-tf-reference-address.d.ts +52 -0
  652. package/dist/terraform/sim-tf-reference-address.d.ts.map +1 -0
  653. package/dist/terraform/sim-tf-reference-address.js +102 -0
  654. package/dist/terraform/sim-tf-reference-address.js.map +1 -0
  655. package/dist/terraform/sim-tf-reference-addresses.d.ts +45 -0
  656. package/dist/terraform/sim-tf-reference-addresses.d.ts.map +1 -0
  657. package/dist/terraform/sim-tf-reference-addresses.js +82 -0
  658. package/dist/terraform/sim-tf-reference-addresses.js.map +1 -0
  659. package/dist/terraform/sim-tf-reference-scope.d.ts +29 -0
  660. package/dist/terraform/sim-tf-reference-scope.d.ts.map +1 -0
  661. package/dist/terraform/sim-tf-reference-scope.js +71 -0
  662. package/dist/terraform/sim-tf-reference-scope.js.map +1 -0
  663. package/dist/terraform/sim-tf-reference.d.ts +84 -0
  664. package/dist/terraform/sim-tf-reference.d.ts.map +1 -0
  665. package/dist/terraform/sim-tf-reference.js +144 -0
  666. package/dist/terraform/sim-tf-reference.js.map +1 -0
  667. package/dist/terraform/sim-tf-referenced.d.ts +18 -0
  668. package/dist/terraform/sim-tf-referenced.d.ts.map +1 -0
  669. package/dist/terraform/sim-tf-referenced.js +40 -0
  670. package/dist/terraform/sim-tf-referenced.js.map +1 -0
  671. package/dist/terraform/sim-tf-refusal.d.ts +23 -0
  672. package/dist/terraform/sim-tf-refusal.d.ts.map +1 -0
  673. package/dist/terraform/sim-tf-refusal.js +44 -0
  674. package/dist/terraform/sim-tf-refusal.js.map +1 -0
  675. package/dist/{service/cloudformation/terraform → terraform}/sim-tf-registry.d.ts +2 -1
  676. package/dist/terraform/sim-tf-registry.d.ts.map +1 -0
  677. package/dist/terraform/sim-tf-registry.js +67 -0
  678. package/dist/terraform/sim-tf-registry.js.map +1 -0
  679. package/dist/terraform/sim-tf-report.d.ts +21 -0
  680. package/dist/terraform/sim-tf-report.d.ts.map +1 -0
  681. package/dist/terraform/sim-tf-report.js +57 -0
  682. package/dist/terraform/sim-tf-report.js.map +1 -0
  683. package/dist/{service/cloudformation/terraform → terraform}/sim-tf-report.type.d.ts +10 -4
  684. package/dist/terraform/sim-tf-report.type.d.ts.map +1 -0
  685. package/dist/terraform/sim-tf-report.type.js.map +1 -0
  686. package/dist/{service/cloudformation/terraform/sim-tf-plan-resources.d.ts → terraform/sim-tf-resource.type.d.ts} +14 -12
  687. package/dist/terraform/sim-tf-resource.type.d.ts.map +1 -0
  688. package/dist/terraform/sim-tf-resource.type.js +3 -0
  689. package/dist/terraform/sim-tf-resource.type.js.map +1 -0
  690. package/dist/terraform/sim-tf-settle.d.ts +36 -0
  691. package/dist/terraform/sim-tf-settle.d.ts.map +1 -0
  692. package/dist/terraform/sim-tf-settle.js +65 -0
  693. package/dist/terraform/sim-tf-settle.js.map +1 -0
  694. package/dist/util/exactly-one.type.d.ts +14 -0
  695. package/dist/util/exactly-one.type.d.ts.map +1 -0
  696. package/dist/util/exactly-one.type.js +2 -0
  697. package/dist/util/exactly-one.type.js.map +1 -0
  698. package/dist/util/filesystem/test-terraform-project.d.ts +11 -0
  699. package/dist/util/filesystem/test-terraform-project.d.ts.map +1 -1
  700. package/dist/util/filesystem/test-terraform-project.js +30 -1
  701. package/dist/util/filesystem/test-terraform-project.js.map +1 -1
  702. package/package.json +5 -1
  703. package/dist/service/cloudformation/bind/sim-cfn-deploy-binding.d.ts.map +0 -1
  704. package/dist/service/cloudformation/bind/sim-cfn-deploy-binding.js.map +0 -1
  705. package/dist/service/cloudformation/resource/cfn/ses/sim-ses-dkim-tokens.d.ts.map +0 -1
  706. package/dist/service/cloudformation/resource/cfn/ses/sim-ses-dkim-tokens.js.map +0 -1
  707. package/dist/service/cloudformation/terraform/sim-tf-attribute-reads.d.ts.map +0 -1
  708. package/dist/service/cloudformation/terraform/sim-tf-attribute-reads.js.map +0 -1
  709. package/dist/service/cloudformation/terraform/sim-tf-attributes.d.ts.map +0 -1
  710. package/dist/service/cloudformation/terraform/sim-tf-attributes.js.map +0 -1
  711. package/dist/service/cloudformation/terraform/sim-tf-map-config.d.ts.map +0 -1
  712. package/dist/service/cloudformation/terraform/sim-tf-map-config.js.map +0 -1
  713. package/dist/service/cloudformation/terraform/sim-tf-map-dynamodb.d.ts +0 -15
  714. package/dist/service/cloudformation/terraform/sim-tf-map-dynamodb.d.ts.map +0 -1
  715. package/dist/service/cloudformation/terraform/sim-tf-map-dynamodb.js.map +0 -1
  716. package/dist/service/cloudformation/terraform/sim-tf-map-http-api-route.d.ts +0 -5
  717. package/dist/service/cloudformation/terraform/sim-tf-map-http-api-route.d.ts.map +0 -1
  718. package/dist/service/cloudformation/terraform/sim-tf-map-http-api-route.js.map +0 -1
  719. package/dist/service/cloudformation/terraform/sim-tf-map-http-api.d.ts +0 -12
  720. package/dist/service/cloudformation/terraform/sim-tf-map-http-api.d.ts.map +0 -1
  721. package/dist/service/cloudformation/terraform/sim-tf-map-http-api.js.map +0 -1
  722. package/dist/service/cloudformation/terraform/sim-tf-map-iam.d.ts.map +0 -1
  723. package/dist/service/cloudformation/terraform/sim-tf-map-iam.js +0 -80
  724. package/dist/service/cloudformation/terraform/sim-tf-map-iam.js.map +0 -1
  725. package/dist/service/cloudformation/terraform/sim-tf-map-lambda.d.ts.map +0 -1
  726. package/dist/service/cloudformation/terraform/sim-tf-map-lambda.js.map +0 -1
  727. package/dist/service/cloudformation/terraform/sim-tf-map-s3-cors.d.ts +0 -5
  728. package/dist/service/cloudformation/terraform/sim-tf-map-s3-cors.d.ts.map +0 -1
  729. package/dist/service/cloudformation/terraform/sim-tf-map-s3-cors.js +0 -12
  730. package/dist/service/cloudformation/terraform/sim-tf-map-s3-cors.js.map +0 -1
  731. package/dist/service/cloudformation/terraform/sim-tf-map-s3-encryption.d.ts +0 -5
  732. package/dist/service/cloudformation/terraform/sim-tf-map-s3-encryption.d.ts.map +0 -1
  733. package/dist/service/cloudformation/terraform/sim-tf-map-s3-encryption.js.map +0 -1
  734. package/dist/service/cloudformation/terraform/sim-tf-map-s3-folds.d.ts.map +0 -1
  735. package/dist/service/cloudformation/terraform/sim-tf-map-s3-folds.js.map +0 -1
  736. package/dist/service/cloudformation/terraform/sim-tf-map-s3.d.ts +0 -5
  737. package/dist/service/cloudformation/terraform/sim-tf-map-s3.d.ts.map +0 -1
  738. package/dist/service/cloudformation/terraform/sim-tf-map-s3.js.map +0 -1
  739. package/dist/service/cloudformation/terraform/sim-tf-map-sns.d.ts.map +0 -1
  740. package/dist/service/cloudformation/terraform/sim-tf-map-sns.js.map +0 -1
  741. package/dist/service/cloudformation/terraform/sim-tf-map-sqs.d.ts +0 -5
  742. package/dist/service/cloudformation/terraform/sim-tf-map-sqs.d.ts.map +0 -1
  743. package/dist/service/cloudformation/terraform/sim-tf-map-sqs.js +0 -56
  744. package/dist/service/cloudformation/terraform/sim-tf-map-sqs.js.map +0 -1
  745. package/dist/service/cloudformation/terraform/sim-tf-mapping.type.d.ts +0 -41
  746. package/dist/service/cloudformation/terraform/sim-tf-mapping.type.d.ts.map +0 -1
  747. package/dist/service/cloudformation/terraform/sim-tf-mapping.type.js.map +0 -1
  748. package/dist/service/cloudformation/terraform/sim-tf-module-outputs.d.ts +0 -19
  749. package/dist/service/cloudformation/terraform/sim-tf-module-outputs.d.ts.map +0 -1
  750. package/dist/service/cloudformation/terraform/sim-tf-module-outputs.js +0 -63
  751. package/dist/service/cloudformation/terraform/sim-tf-module-outputs.js.map +0 -1
  752. package/dist/service/cloudformation/terraform/sim-tf-plan-index.d.ts +0 -26
  753. package/dist/service/cloudformation/terraform/sim-tf-plan-index.d.ts.map +0 -1
  754. package/dist/service/cloudformation/terraform/sim-tf-plan-index.js +0 -45
  755. package/dist/service/cloudformation/terraform/sim-tf-plan-index.js.map +0 -1
  756. package/dist/service/cloudformation/terraform/sim-tf-plan-resources.d.ts.map +0 -1
  757. package/dist/service/cloudformation/terraform/sim-tf-plan-resources.js +0 -44
  758. package/dist/service/cloudformation/terraform/sim-tf-plan-resources.js.map +0 -1
  759. package/dist/service/cloudformation/terraform/sim-tf-plan.type.d.ts.map +0 -1
  760. package/dist/service/cloudformation/terraform/sim-tf-plan.type.js.map +0 -1
  761. package/dist/service/cloudformation/terraform/sim-tf-reference-address.d.ts +0 -27
  762. package/dist/service/cloudformation/terraform/sim-tf-reference-address.d.ts.map +0 -1
  763. package/dist/service/cloudformation/terraform/sim-tf-reference-address.js +0 -58
  764. package/dist/service/cloudformation/terraform/sim-tf-reference-address.js.map +0 -1
  765. package/dist/service/cloudformation/terraform/sim-tf-reference.d.ts +0 -64
  766. package/dist/service/cloudformation/terraform/sim-tf-reference.d.ts.map +0 -1
  767. package/dist/service/cloudformation/terraform/sim-tf-reference.js +0 -122
  768. package/dist/service/cloudformation/terraform/sim-tf-reference.js.map +0 -1
  769. package/dist/service/cloudformation/terraform/sim-tf-registry.d.ts.map +0 -1
  770. package/dist/service/cloudformation/terraform/sim-tf-registry.js +0 -40
  771. package/dist/service/cloudformation/terraform/sim-tf-registry.js.map +0 -1
  772. package/dist/service/cloudformation/terraform/sim-tf-report.type.d.ts.map +0 -1
  773. package/dist/service/cloudformation/terraform/sim-tf-report.type.js.map +0 -1
  774. package/dist/service/cloudformation/terraform/sim-tf-template-folds.d.ts +0 -20
  775. package/dist/service/cloudformation/terraform/sim-tf-template-folds.d.ts.map +0 -1
  776. package/dist/service/cloudformation/terraform/sim-tf-template-folds.js +0 -28
  777. package/dist/service/cloudformation/terraform/sim-tf-template-folds.js.map +0 -1
  778. package/dist/service/cloudformation/terraform/sim-tf-template-graph.d.ts.map +0 -1
  779. package/dist/service/cloudformation/terraform/sim-tf-template-graph.js +0 -71
  780. package/dist/service/cloudformation/terraform/sim-tf-template-graph.js.map +0 -1
  781. package/dist/service/cloudformation/terraform/sim-tf-template-mappings.d.ts +0 -23
  782. package/dist/service/cloudformation/terraform/sim-tf-template-mappings.d.ts.map +0 -1
  783. package/dist/service/cloudformation/terraform/sim-tf-template-mappings.js +0 -72
  784. package/dist/service/cloudformation/terraform/sim-tf-template-mappings.js.map +0 -1
  785. package/dist/service/cloudformation/terraform/sim-tf-template-merge.d.ts +0 -21
  786. package/dist/service/cloudformation/terraform/sim-tf-template-merge.d.ts.map +0 -1
  787. package/dist/service/cloudformation/terraform/sim-tf-template-merge.js +0 -33
  788. package/dist/service/cloudformation/terraform/sim-tf-template-merge.js.map +0 -1
  789. package/dist/service/cloudformation/terraform/sim-tf-template-prune.d.ts +0 -21
  790. package/dist/service/cloudformation/terraform/sim-tf-template-prune.d.ts.map +0 -1
  791. package/dist/service/cloudformation/terraform/sim-tf-template-prune.js +0 -51
  792. package/dist/service/cloudformation/terraform/sim-tf-template-prune.js.map +0 -1
  793. package/dist/service/cloudformation/terraform/sim-tf-template-pruned.d.ts +0 -18
  794. package/dist/service/cloudformation/terraform/sim-tf-template-pruned.d.ts.map +0 -1
  795. package/dist/service/cloudformation/terraform/sim-tf-template-pruned.js +0 -23
  796. package/dist/service/cloudformation/terraform/sim-tf-template-pruned.js.map +0 -1
  797. package/dist/service/cloudformation/terraform/sim-tf-template-references.d.ts +0 -10
  798. package/dist/service/cloudformation/terraform/sim-tf-template-references.d.ts.map +0 -1
  799. package/dist/service/cloudformation/terraform/sim-tf-template-references.js +0 -39
  800. package/dist/service/cloudformation/terraform/sim-tf-template-references.js.map +0 -1
  801. package/dist/service/cloudformation/terraform/sim-tf-template-resolver.d.ts +0 -12
  802. package/dist/service/cloudformation/terraform/sim-tf-template-resolver.d.ts.map +0 -1
  803. package/dist/service/cloudformation/terraform/sim-tf-template-resolver.js +0 -17
  804. package/dist/service/cloudformation/terraform/sim-tf-template-resolver.js.map +0 -1
  805. package/dist/service/cloudformation/terraform/sim-tf-template.d.ts +0 -26
  806. package/dist/service/cloudformation/terraform/sim-tf-template.d.ts.map +0 -1
  807. package/dist/service/cloudformation/terraform/sim-tf-template.js +0 -54
  808. package/dist/service/cloudformation/terraform/sim-tf-template.js.map +0 -1
  809. package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-unsimulated-properties.d.ts +0 -17
  810. package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-unsimulated-properties.d.ts.map +0 -1
  811. package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-unsimulated-properties.js +0 -48
  812. package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-unsimulated-properties.js.map +0 -1
  813. package/dist/service/ses/command/identity/sim-ses-unsimulated-identity-input.d.ts +0 -12
  814. package/dist/service/ses/command/identity/sim-ses-unsimulated-identity-input.d.ts.map +0 -1
  815. package/dist/service/ses/command/identity/sim-ses-unsimulated-identity-input.js +0 -26
  816. package/dist/service/ses/command/identity/sim-ses-unsimulated-identity-input.js.map +0 -1
  817. /package/dist/service/{cloudformation/resource/cfn/ses → ses/identity}/sim-ses-dkim-tokens.d.ts +0 -0
  818. /package/dist/service/{cloudformation/resource/cfn/ses → ses/identity}/sim-ses-dkim-tokens.js +0 -0
  819. /package/dist/{service/cloudformation/terraform → terraform}/sim-tf-attribute-reads.d.ts +0 -0
  820. /package/dist/{service/cloudformation/terraform → terraform}/sim-tf-attribute-reads.js +0 -0
  821. /package/dist/{service/cloudformation/terraform → terraform}/sim-tf-mapping.type.js +0 -0
  822. /package/dist/{service/cloudformation/terraform → terraform}/sim-tf-plan.type.js +0 -0
  823. /package/dist/{service/cloudformation/terraform → terraform}/sim-tf-report.type.js +0 -0
@@ -0,0 +1,99 @@
1
+ import { longestFirst, moduleOutputPath, qualifiedReference, withoutInstanceKeys, } from "./sim-tf-reference-address.js";
2
+ /**
3
+ * Every module output a plan declares, keyed by the address that reads it.
4
+ *
5
+ * A resource in one module reaching a resource in another goes through an
6
+ * output. `module.processor.lambda_function_arn` is not an address any resource
7
+ * has, and the plan resolves nothing for it, so following it means reading the
8
+ * output's own expression and continuing from the module that declares it.
9
+ */
10
+ export function terraformModuleOutputs(plan) {
11
+ const outputs = new Map();
12
+ const root = plan.configuration?.root_module;
13
+ if (root !== undefined) {
14
+ collect(root, [], outputs);
15
+ }
16
+ return outputs;
17
+ }
18
+ function collect(config, modulePath, outputs) {
19
+ const calls = Object.entries(config.module_calls ?? {});
20
+ for (const [callName, call] of calls) {
21
+ const child = call.module;
22
+ if (child === undefined) {
23
+ continue;
24
+ }
25
+ const childPath = [...modulePath, callName];
26
+ const address = childPath.map((name) => `module.${name}`).join(".");
27
+ const declared = Object.entries(child.outputs ?? {});
28
+ for (const [name, output] of declared) {
29
+ outputs.set(`${address}.${name}`, output.expression?.references ?? []);
30
+ }
31
+ collect(child, childPath, outputs);
32
+ }
33
+ }
34
+ /** How far a chain of outputs is followed before it is taken to be a loop. */
35
+ const outputLimit = 8;
36
+ /**
37
+ * Following a reference that names a module output.
38
+ *
39
+ * `module.processor.lambda_function_arn` is an address no resource has. The
40
+ * output's own expression names what it reads, in terms of the module
41
+ * declaring it, so following one is resolving that expression again a module
42
+ * down.
43
+ */
44
+ export class TerraformModuleOutputWalk {
45
+ outputs;
46
+ resources;
47
+ constructor(outputs, resources) {
48
+ this.outputs = outputs;
49
+ this.resources = resources;
50
+ }
51
+ /**
52
+ * The resource a module output leads to.
53
+ *
54
+ * An output built out of several resources answers with the first that
55
+ * resolves, and the depth limit stops a module whose outputs refer to each
56
+ * other from looping.
57
+ */
58
+ target(qualified, depth = 0) {
59
+ const output = this.references(qualified);
60
+ if (output === undefined || depth >= outputLimit) {
61
+ return undefined;
62
+ }
63
+ // The path the output was read through rather than the one it was
64
+ // declared under, so an output reached inside a `for_each` instance
65
+ // follows its own instance's resources.
66
+ const instance = moduleOutputPath(qualified);
67
+ for (const reference of longestFirst(output)) {
68
+ const nested = qualifiedReference(reference, instance);
69
+ const target = this.resources.longestMatch(nested) ?? this.target(nested, depth + 1);
70
+ if (target !== undefined) {
71
+ return target;
72
+ }
73
+ }
74
+ return undefined;
75
+ }
76
+ /**
77
+ * The attribute a reference through an output reads.
78
+ *
79
+ * The reference names the output, and the output's own expression is what
80
+ * says which attribute of the resource behind it was being read.
81
+ */
82
+ attributeOf(qualified) {
83
+ const [longest] = longestFirst(this.references(qualified) ?? []);
84
+ return longest?.split(".").pop();
85
+ }
86
+ /**
87
+ * The references one output declares.
88
+ *
89
+ * The index is keyed by module call path, since a module declares its
90
+ * outputs once however many instances of the call there are. A reference
91
+ * made from inside one instance carries that instance's key, so the key
92
+ * comes off when the qualified form finds nothing.
93
+ */
94
+ references(qualified) {
95
+ return (this.outputs.get(qualified) ??
96
+ this.outputs.get(withoutInstanceKeys(qualified)));
97
+ }
98
+ }
99
+ //# sourceMappingURL=sim-tf-module-outputs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-tf-module-outputs.js","sourceRoot":"","sources":["../../src/terraform/sim-tf-module-outputs.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import type { TerraformPlan } from "./sim-tf-plan.type.js";
2
+ /**
3
+ * Every variable a module call sets, keyed by the address that names it.
4
+ *
5
+ * A resource inside a module reads its module's own variables, and the value
6
+ * behind one was written by the caller. `var.routes` is not an address any
7
+ * resource has and the plan resolves nothing for it, so following it means
8
+ * reading the call's own expression and continuing from the module that made
9
+ * the call.
10
+ *
11
+ * This is the mirror of `terraformModuleOutputs`. An output carries a value up
12
+ * out of a module and a variable carries one down into it, and the two are the
13
+ * only ways a plan lets a reference cross a module boundary.
14
+ */
15
+ export declare function terraformModuleVariables(plan: TerraformPlan): ReadonlyMap<string, readonly string[]>;
16
+ //# sourceMappingURL=sim-tf-module-variables.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-tf-module-variables.d.ts","sourceRoot":"","sources":["../../src/terraform/sim-tf-module-variables.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,aAAa,EACd,MAAM,uBAAuB,CAAC;AAG/B;;;;;;;;;;;;GAYG;AACH,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,aAAa,GAClB,WAAW,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CASxC"}
@@ -0,0 +1,37 @@
1
+ import { terraformExpressionReferences } from "./sim-tf-expression-references.js";
2
+ /**
3
+ * Every variable a module call sets, keyed by the address that names it.
4
+ *
5
+ * A resource inside a module reads its module's own variables, and the value
6
+ * behind one was written by the caller. `var.routes` is not an address any
7
+ * resource has and the plan resolves nothing for it, so following it means
8
+ * reading the call's own expression and continuing from the module that made
9
+ * the call.
10
+ *
11
+ * This is the mirror of `terraformModuleOutputs`. An output carries a value up
12
+ * out of a module and a variable carries one down into it, and the two are the
13
+ * only ways a plan lets a reference cross a module boundary.
14
+ */
15
+ export function terraformModuleVariables(plan) {
16
+ const variables = new Map();
17
+ const root = plan.configuration?.root_module;
18
+ if (root !== undefined) {
19
+ collect(root, [], variables);
20
+ }
21
+ return variables;
22
+ }
23
+ function collect(config, modulePath, variables) {
24
+ const calls = Object.entries(config.module_calls ?? {});
25
+ for (const [callName, call] of calls) {
26
+ const childPath = [...modulePath, callName];
27
+ const address = childPath.map((name) => `module.${name}`).join(".");
28
+ const set = Object.entries(call.expressions ?? {});
29
+ for (const [name, expression] of set) {
30
+ variables.set(`${address}.var.${name}`, terraformExpressionReferences(expression));
31
+ }
32
+ if (call.module !== undefined) {
33
+ collect(call.module, childPath, variables);
34
+ }
35
+ }
36
+ }
37
+ //# sourceMappingURL=sim-tf-module-variables.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-tf-module-variables.js","sourceRoot":"","sources":["../../src/terraform/sim-tf-module-variables.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AAElF;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,wBAAwB,CACtC,IAAmB;IAEnB,MAAM,SAAS,GAAG,IAAI,GAAG,EAA6B,CAAC;IACvD,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC;IAE7C,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,SAAS,CAAC,CAAC;IAC/B,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,OAAO,CACd,MAA6B,EAC7B,UAA6B,EAC7B,SAAyC;IAEzC,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;IAExD,KAAK,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC;QACrC,MAAM,SAAS,GAAG,CAAC,GAAG,UAAU,EAAE,QAAQ,CAAC,CAAC;QAC5C,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEpE,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;QAEnD,KAAK,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,GAAG,EAAE,CAAC;YACrC,SAAS,CAAC,GAAG,CACX,GAAG,OAAO,QAAQ,IAAI,EAAE,EACxB,6BAA6B,CAAC,UAAU,CAAC,CAC1C,CAAC;QACJ,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC9B,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -0,0 +1,33 @@
1
+ import type { SimCfnTemplateValue } from "../service/cloudformation/template/value/sim-cfn-template-value.js";
2
+ import { type TerraformMappingContext } from "./sim-tf-attributes.js";
3
+ /**
4
+ * A list attribute whose entries name other resources.
5
+ *
6
+ * An alarm's `alarm_actions` holding one topic ARN of the same plan is marked
7
+ * unknown as a whole list, and the entries are gone with it. What survives is
8
+ * the reference behind each entry, and Terraform lists both the attribute form
9
+ * and the bare resource form of one reference. Both forms of a topic resolve to
10
+ * the same `Ref`, so the resolved values are deduplicated rather than the
11
+ * references, which is the only place the two forms can be told apart.
12
+ *
13
+ * A list the plan resolved is carried across as it stands.
14
+ */
15
+ export declare function attributeList(context: TerraformMappingContext, key: string): SimCfnTemplateValue | undefined;
16
+ /**
17
+ * One attribute of one entry of a repeating nested block.
18
+ *
19
+ * A bucket notification names the function it calls inside a `lambda_function`
20
+ * block, and the function's ARN is unknown whenever the same plan creates it.
21
+ * The mark and the references both sit at the same position in a list mirroring
22
+ * the block, so the entry's index is what finds them.
23
+ */
24
+ export declare function blockAttribute(context: TerraformMappingContext, key: string, index: number, name: string): SimCfnTemplateValue | undefined;
25
+ /**
26
+ * The fields of one nested block, under the names CloudFormation gives them.
27
+ *
28
+ * The provider writes every field of a block that was declared, filling the
29
+ * ones the configuration left out with null, so the table says what each field
30
+ * is called on either side and `properties` takes the nulls back out.
31
+ */
32
+ export declare function blockFields(record: Record<string, unknown>, names: Readonly<Record<string, string>>): Record<string, SimCfnTemplateValue>;
33
+ //# sourceMappingURL=sim-tf-nested-attributes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-tf-nested-attributes.d.ts","sourceRoot":"","sources":["../../src/terraform/sim-tf-nested-attributes.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oEAAoE,CAAC;AAC9G,OAAO,EAGL,KAAK,uBAAuB,EAC7B,MAAM,wBAAwB,CAAC;AAIhC;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,uBAAuB,EAChC,GAAG,EAAE,MAAM,GACV,mBAAmB,GAAG,SAAS,CAqBjC;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,uBAAuB,EAChC,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,GACX,mBAAmB,GAAG,SAAS,CAmBjC;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CACzB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GACtC,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CASrC"}
@@ -0,0 +1,97 @@
1
+ /*
2
+ * The two attribute shapes `attribute()` cannot read: a list whose entries name
3
+ * other resources, and an attribute inside a repeating nested block.
4
+ *
5
+ * `after_unknown` mirrors the shape of the value it marks, so a list of ARNs
6
+ * built from one resource is marked `true` whole, and a block whose one field
7
+ * is unknown is marked as a list of records. `configuration` mirrors the same
8
+ * shape with its `references`, and reading the two together is what puts the
9
+ * intrinsic back where the value was.
10
+ *
11
+ * Reading a plan means reading records whose keys come from the document
12
+ * rather than from this code, so the object-injection rule fires on every
13
+ * lookup. The records are parsed JSON with no prototype of their own.
14
+ */
15
+ // oxlint-disable security/detect-object-injection
16
+ import { isRecord } from "../util/type-guard/record.js";
17
+ import { properties, templateValue, } from "./sim-tf-attributes.js";
18
+ import { longestFirst } from "./sim-tf-reference-address.js";
19
+ /**
20
+ * A list attribute whose entries name other resources.
21
+ *
22
+ * An alarm's `alarm_actions` holding one topic ARN of the same plan is marked
23
+ * unknown as a whole list, and the entries are gone with it. What survives is
24
+ * the reference behind each entry, and Terraform lists both the attribute form
25
+ * and the bare resource form of one reference. Both forms of a topic resolve to
26
+ * the same `Ref`, so the resolved values are deduplicated rather than the
27
+ * references, which is the only place the two forms can be told apart.
28
+ *
29
+ * A list the plan resolved is carried across as it stands.
30
+ */
31
+ export function attributeList(context, key) {
32
+ const { resource, resolver } = context;
33
+ if (resource.unknown[key] !== true) {
34
+ const value = resource.values[key];
35
+ return Array.isArray(value) ? templateValue(value) : undefined;
36
+ }
37
+ const resolved = new Map();
38
+ const declared = longestFirst(references(resource.expressions[key]));
39
+ for (const reference of declared) {
40
+ const value = resolver.resolve(reference, resource);
41
+ if (value !== undefined) {
42
+ resolved.set(JSON.stringify(value), value);
43
+ }
44
+ }
45
+ return resolved.size === 0 ? undefined : resolved.values().toArray();
46
+ }
47
+ /**
48
+ * One attribute of one entry of a repeating nested block.
49
+ *
50
+ * A bucket notification names the function it calls inside a `lambda_function`
51
+ * block, and the function's ARN is unknown whenever the same plan creates it.
52
+ * The mark and the references both sit at the same position in a list mirroring
53
+ * the block, so the entry's index is what finds them.
54
+ */
55
+ export function blockAttribute(context, key, index, name) {
56
+ const { resource, resolver } = context;
57
+ if (entry(resource.unknown[key], index)?.[name] !== true) {
58
+ return templateValue(entry(resource.values[key], index)?.[name]);
59
+ }
60
+ const expression = entry(resource.expressions[key], index)?.[name];
61
+ const declared = longestFirst(references(expression));
62
+ for (const reference of declared) {
63
+ const value = resolver.resolve(reference, resource);
64
+ if (value !== undefined) {
65
+ return value;
66
+ }
67
+ }
68
+ return undefined;
69
+ }
70
+ /**
71
+ * The fields of one nested block, under the names CloudFormation gives them.
72
+ *
73
+ * The provider writes every field of a block that was declared, filling the
74
+ * ones the configuration left out with null, so the table says what each field
75
+ * is called on either side and `properties` takes the nulls back out.
76
+ */
77
+ export function blockFields(record, names) {
78
+ return properties(Object.fromEntries(Object.entries(names).map(([property, name]) => [
79
+ property,
80
+ templateValue(record[name]),
81
+ ])));
82
+ }
83
+ /** One entry of a list mirroring a repeating block. */
84
+ function entry(value, index) {
85
+ if (!Array.isArray(value)) {
86
+ return undefined;
87
+ }
88
+ const found = value[index];
89
+ return isRecord(found) ? found : undefined;
90
+ }
91
+ /** The references one expression records, or none where it holds no expression. */
92
+ function references(expression) {
93
+ return isRecord(expression)
94
+ ? (expression.references ?? [])
95
+ : [];
96
+ }
97
+ //# sourceMappingURL=sim-tf-nested-attributes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-tf-nested-attributes.js","sourceRoot":"","sources":["../../src/terraform/sim-tf-nested-attributes.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ import type { SimIamPolicyDocument } from "../service/iam/policy/sim-iam-policy.js";
2
+ /**
3
+ * A value a deployment supplies because the plan could not carry it.
4
+ *
5
+ * Terraform resolves nothing inside a value it could not build, so an
6
+ * attribute holding one reference to a resource of the same plan arrives
7
+ * unknown along with everything around it. A Lambda `environment.variables`
8
+ * map loses its variable names, and an `aws_iam_role_policy` document built
9
+ * with `jsonencode` loses its statements.
10
+ *
11
+ * An override is matched the way a deploy binding is, on the name the plan
12
+ * carries. It fills a gap and never replaces what the plan resolved, so a
13
+ * configuration that later resolves the value on its own stops needing one.
14
+ */
15
+ export type TerraformPlanOverride = TerraformFunctionEnvironmentOverride | TerraformRolePolicyOverride;
16
+ /** The environment variables of the function the plan names. */
17
+ export interface TerraformFunctionEnvironmentOverride {
18
+ readonly functionName: string;
19
+ readonly environment: Readonly<Record<string, string>>;
20
+ readonly roleName?: never;
21
+ readonly policy?: never;
22
+ }
23
+ /**
24
+ * The inline policy of the role the plan names.
25
+ *
26
+ * The name is the role's own `name`, which is what a plan resolves for a role
27
+ * declared with one, rather than the name of the `aws_iam_role_policy`
28
+ * resource holding the document.
29
+ */
30
+ export interface TerraformRolePolicyOverride {
31
+ readonly roleName: string;
32
+ readonly policy: SimIamPolicyDocument;
33
+ readonly functionName?: never;
34
+ readonly environment?: never;
35
+ }
36
+ //# sourceMappingURL=sim-tf-override.type.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-tf-override.type.d.ts","sourceRoot":"","sources":["../../src/terraform/sim-tf-override.type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAEpF;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,qBAAqB,GAC7B,oCAAoC,GACpC,2BAA2B,CAAC;AAEhC,gEAAgE;AAChE,MAAM,WAAW,oCAAoC;IACnD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACvD,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;CACzB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,oBAAoB,CAAC;IACtC,QAAQ,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC;IAC9B,QAAQ,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC;CAC9B"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=sim-tf-override.type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-tf-override.type.js","sourceRoot":"","sources":["../../src/terraform/sim-tf-override.type.ts"],"names":[],"mappings":""}
@@ -0,0 +1,21 @@
1
+ import type { SimIamPolicyDocument } from "../service/iam/policy/sim-iam-policy.js";
2
+ import type { TerraformPlanOverride } from "./sim-tf-override.type.js";
3
+ /**
4
+ * The values a deployment supplied for the gaps a plan left, by the name each
5
+ * one is matched on.
6
+ *
7
+ * A mapping asks this for the name the plan gave a resource and gets back what
8
+ * was supplied for it, or nothing. Asking with a name the plan itself could not
9
+ * resolve gets nothing back, which is the same answer as no override, so a
10
+ * mapping has one case to handle rather than two.
11
+ */
12
+ export declare class TerraformPlanOverrides {
13
+ private readonly environments;
14
+ private readonly policies;
15
+ constructor(overrides?: readonly TerraformPlanOverride[]);
16
+ /** The environment variables supplied for one function name. */
17
+ environment(functionName: unknown): Readonly<Record<string, string>> | undefined;
18
+ /** The inline policy document supplied for one role name. */
19
+ policy(roleName: unknown): SimIamPolicyDocument | undefined;
20
+ }
21
+ //# sourceMappingURL=sim-tf-overrides.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-tf-overrides.d.ts","sourceRoot":"","sources":["../../src/terraform/sim-tf-overrides.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AACpF,OAAO,KAAK,EAEV,qBAAqB,EAEtB,MAAM,2BAA2B,CAAC;AAEnC;;;;;;;;GAQG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAG3B;IAEF,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA4C;IAErE,YAAY,SAAS,GAAE,SAAS,qBAAqB,EAAO,EAW3D;IAED,gEAAgE;IACzD,WAAW,CAChB,YAAY,EAAE,OAAO,GACpB,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,CAI9C;IAED,6DAA6D;IACtD,MAAM,CAAC,QAAQ,EAAE,OAAO,GAAG,oBAAoB,GAAG,SAAS,CAIjE;CACF"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * The values a deployment supplied for the gaps a plan left, by the name each
3
+ * one is matched on.
4
+ *
5
+ * A mapping asks this for the name the plan gave a resource and gets back what
6
+ * was supplied for it, or nothing. Asking with a name the plan itself could not
7
+ * resolve gets nothing back, which is the same answer as no override, so a
8
+ * mapping has one case to handle rather than two.
9
+ */
10
+ export class TerraformPlanOverrides {
11
+ environments;
12
+ policies;
13
+ constructor(overrides = []) {
14
+ this.environments = new Map(overrides
15
+ .filter(isEnvironmentOverride)
16
+ .map((override) => [override.functionName, override.environment]));
17
+ this.policies = new Map(overrides
18
+ .filter(isRolePolicyOverride)
19
+ .map((override) => [override.roleName, override.policy]));
20
+ }
21
+ /** The environment variables supplied for one function name. */
22
+ environment(functionName) {
23
+ return typeof functionName === "string"
24
+ ? this.environments.get(functionName)
25
+ : undefined;
26
+ }
27
+ /** The inline policy document supplied for one role name. */
28
+ policy(roleName) {
29
+ return typeof roleName === "string"
30
+ ? this.policies.get(roleName)
31
+ : undefined;
32
+ }
33
+ }
34
+ function isEnvironmentOverride(override) {
35
+ return override.functionName !== undefined;
36
+ }
37
+ function isRolePolicyOverride(override) {
38
+ return override.roleName !== undefined;
39
+ }
40
+ //# sourceMappingURL=sim-tf-overrides.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-tf-overrides.js","sourceRoot":"","sources":["../../src/terraform/sim-tf-overrides.ts"],"names":[],"mappings":"AAOA;;;;;;;;GAQG;AACH,MAAM,OAAO,sBAAsB;IAChB,YAAY,CAG3B;IAEe,QAAQ,CAA4C;IAErE,YAAY,SAAS,GAAqC,EAAE;QAC1D,IAAI,CAAC,YAAY,GAAG,IAAI,GAAG,CACzB,SAAS;aACN,MAAM,CAAC,qBAAqB,CAAC;aAC7B,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC,CACpE,CAAC;QACF,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,CACrB,SAAS;aACN,MAAM,CAAC,oBAAoB,CAAC;aAC5B,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAC3D,CAAC;IACJ,CAAC;IAED,gEAAgE;IACzD,WAAW,CAChB,YAAqB;QAErB,OAAO,OAAO,YAAY,KAAK,QAAQ;YACrC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC;YACrC,CAAC,CAAC,SAAS,CAAC;IAChB,CAAC;IAED,6DAA6D;IACtD,MAAM,CAAC,QAAiB;QAC7B,OAAO,OAAO,QAAQ,KAAK,QAAQ;YACjC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC;YAC7B,CAAC,CAAC,SAAS,CAAC;IAChB,CAAC;CACF;AAED,SAAS,qBAAqB,CAC5B,QAA+B;IAE/B,OAAO,QAAQ,CAAC,YAAY,KAAK,SAAS,CAAC;AAC7C,CAAC;AAED,SAAS,oBAAoB,CAC3B,QAA+B;IAE/B,OAAO,QAAQ,CAAC,QAAQ,KAAK,SAAS,CAAC;AACzC,CAAC"}
@@ -0,0 +1,23 @@
1
+ import type { TerraformPlan } from "./sim-tf-plan.type.js";
2
+ /**
3
+ * Read the plan JSON at a path.
4
+ *
5
+ * The two ways of getting this wrong are worth telling apart. A path with no
6
+ * file at it is named as resolved, and a file that is not the JSON form is met
7
+ * with the command that writes it, since `terraform plan -out` writes a binary
8
+ * file whose name looks like the right one.
9
+ *
10
+ * A document that parses but is not a plan is refused the same way. Every
11
+ * `terraform show -json` document carries `format_version`, and without that
12
+ * check a JSON file of anything at all reads as a plan that creates nothing
13
+ * and deploys as an empty Stack.
14
+ */
15
+ export declare function readTerraformPlanFile(planPath: string): Promise<TerraformPlan>;
16
+ /**
17
+ * The Stack name a plan file gives, for a deployment that names none.
18
+ *
19
+ * `orders.tfplan.json` deploys as `orders`, the way a template file deployment
20
+ * is named after the template.
21
+ */
22
+ export declare function terraformStackNameFromPlanPath(planPath: string): string;
23
+ //# sourceMappingURL=sim-tf-plan-file.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-tf-plan-file.d.ts","sourceRoot":"","sources":["../../src/terraform/sim-tf-plan-file.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3D;;;;;;;;;;;;GAYG;AACH,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,aAAa,CAAC,CAcxB;AAED;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEvE"}
@@ -0,0 +1,58 @@
1
+ import { readFile } from "node:fs/promises";
2
+ import path from "node:path";
3
+ import { isRecord } from "../util/type-guard/record.js";
4
+ /**
5
+ * Read the plan JSON at a path.
6
+ *
7
+ * The two ways of getting this wrong are worth telling apart. A path with no
8
+ * file at it is named as resolved, and a file that is not the JSON form is met
9
+ * with the command that writes it, since `terraform plan -out` writes a binary
10
+ * file whose name looks like the right one.
11
+ *
12
+ * A document that parses but is not a plan is refused the same way. Every
13
+ * `terraform show -json` document carries `format_version`, and without that
14
+ * check a JSON file of anything at all reads as a plan that creates nothing
15
+ * and deploys as an empty Stack.
16
+ */
17
+ export async function readTerraformPlanFile(planPath) {
18
+ const contents = await planFileContents(planPath);
19
+ try {
20
+ const parsed = JSON.parse(contents);
21
+ if (isPlanDocument(parsed)) {
22
+ return parsed;
23
+ }
24
+ }
25
+ catch (error) {
26
+ throw notPlanJson(planPath, error);
27
+ }
28
+ throw notPlanJson(planPath);
29
+ }
30
+ /**
31
+ * The Stack name a plan file gives, for a deployment that names none.
32
+ *
33
+ * `orders.tfplan.json` deploys as `orders`, the way a template file deployment
34
+ * is named after the template.
35
+ */
36
+ export function terraformStackNameFromPlanPath(planPath) {
37
+ return path.basename(planPath).replace(/(?:\.tfplan|\.plan)?\.json$/u, "");
38
+ }
39
+ function isPlanDocument(parsed) {
40
+ return isRecord(parsed) && typeof parsed["format_version"] === "string";
41
+ }
42
+ async function planFileContents(planPath) {
43
+ try {
44
+ // oxlint-disable-next-line security/detect-non-literal-fs-filename
45
+ return await readFile(planPath, "utf8");
46
+ }
47
+ catch (error) {
48
+ if (error instanceof Error && "code" in error && error.code === "ENOENT") {
49
+ throw new Error(`No Terraform plan JSON file at ${path.resolve(planPath)}`, { cause: error });
50
+ }
51
+ throw error;
52
+ }
53
+ }
54
+ function notPlanJson(planPath, cause) {
55
+ return new Error(`${path.resolve(planPath)} is not Terraform plan JSON. ` +
56
+ `Write it with \`terraform show -json <planfile>\`.`, { cause });
57
+ }
58
+ //# sourceMappingURL=sim-tf-plan-file.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-tf-plan-file.js","sourceRoot":"","sources":["../../src/terraform/sim-tf-plan-file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAGxD;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,QAAgB;IAEhB,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAElD,IAAI,CAAC;QACH,MAAM,MAAM,GAAY,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAE7C,IAAI,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3B,OAAO,MAAM,CAAC;QAChB,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,MAAM,WAAW,CAAC,QAAQ,CAAC,CAAC;AAC9B,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,8BAA8B,CAAC,QAAgB;IAC7D,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,8BAA8B,EAAE,EAAE,CAAC,CAAC;AAC7E,CAAC;AAED,SAAS,cAAc,CAAC,MAAe;IACrC,OAAO,QAAQ,CAAC,MAAM,CAAC,IAAI,OAAO,MAAM,CAAC,gBAAgB,CAAC,KAAK,QAAQ,CAAC;AAC1E,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,QAAgB;IAC9C,IAAI,CAAC;QACH,mEAAmE;QACnE,OAAO,MAAM,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC1C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,KAAK,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACzE,MAAM,IAAI,KAAK,CACb,kCAAkC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAC1D,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAC,QAAgB,EAAE,KAAe;IACpD,OAAO,IAAI,KAAK,CACd,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,+BAA+B;QACtD,oDAAoD,EACtD,EAAE,KAAK,EAAE,CACV,CAAC;AACJ,CAAC"}
@@ -0,0 +1,18 @@
1
+ import type { TerraformPlan } from "./sim-tf-plan.type.js";
2
+ import type { TerraformResource } from "./sim-tf-resource.type.js";
3
+ /**
4
+ * Every managed AWS resource a plan will create, in declaration order.
5
+ *
6
+ * The three sections a plan splits a resource across are walked together.
7
+ * `planned_values` and `configuration` are two trees of the same shape, and
8
+ * `configuration` addresses its resources relative to the module declaring
9
+ * them, so the two are joined per module rather than matched on address.
10
+ * `resource_changes` is a flat list keyed by the fully qualified address.
11
+ *
12
+ * Data sources are left out, because a data source reads infrastructure that
13
+ * already exists and creates nothing. Resources from another provider are left
14
+ * in, carrying their provider name, so the caller can report them rather than
15
+ * silently lose them.
16
+ */
17
+ export declare function terraformPlanResources(plan: TerraformPlan): readonly TerraformResource[];
18
+ //# sourceMappingURL=sim-tf-plan-resources.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-tf-plan-resources.d.ts","sourceRoot":"","sources":["../../src/terraform/sim-tf-plan-resources.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAGV,aAAa,EAGd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAUnE;;;;;;;;;;;;;GAaG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,aAAa,GAClB,SAAS,iBAAiB,EAAE,CAa9B"}
@@ -0,0 +1,54 @@
1
+ import { terraformExpressionReferences } from "./sim-tf-expression-references.js";
2
+ import { childModuleCallName, childModuleSegment, configResourcesByKey, providerShortName, unknownAttributesByAddress, } from "./sim-tf-plan-sections.js";
3
+ /**
4
+ * Every managed AWS resource a plan will create, in declaration order.
5
+ *
6
+ * The three sections a plan splits a resource across are walked together.
7
+ * `planned_values` and `configuration` are two trees of the same shape, and
8
+ * `configuration` addresses its resources relative to the module declaring
9
+ * them, so the two are joined per module rather than matched on address.
10
+ * `resource_changes` is a flat list keyed by the fully qualified address.
11
+ *
12
+ * Data sources are left out, because a data source reads infrastructure that
13
+ * already exists and creates nothing. Resources from another provider are left
14
+ * in, carrying their provider name, so the caller can report them rather than
15
+ * silently lose them.
16
+ */
17
+ export function terraformPlanResources(plan) {
18
+ const rootValues = plan.planned_values?.root_module;
19
+ if (rootValues === undefined) {
20
+ return [];
21
+ }
22
+ return collectModule(rootValues, plan.configuration?.root_module, [], unknownAttributesByAddress(plan));
23
+ }
24
+ function collectModule(values, config, modulePath, unknown) {
25
+ const declared = configResourcesByKey(config);
26
+ const own = (values.resources ?? [])
27
+ .filter((resource) => (resource.mode ?? "managed") === "managed")
28
+ .map((resource) => joined(resource, declared, modulePath, unknown));
29
+ const nested = (values.child_modules ?? []).flatMap((child) => {
30
+ // The configuration is filed under the call name and the resources are
31
+ // addressed by the instance, so the two parts of the walk take different
32
+ // halves of the same segment.
33
+ const callName = childModuleCallName(child.address, modulePath);
34
+ return collectModule(child, config?.module_calls?.[callName]?.module, [...modulePath, childModuleSegment(child.address, modulePath)], unknown);
35
+ });
36
+ return [...own, ...nested];
37
+ }
38
+ function joined(resource, declared, modulePath, unknown) {
39
+ const config = declared.get(`${resource.type}.${resource.name}`);
40
+ return {
41
+ address: resource.address,
42
+ type: resource.type,
43
+ name: resource.name,
44
+ index: resource.index,
45
+ provider: providerShortName(resource.provider_name),
46
+ values: resource.values ?? {},
47
+ unknown: unknown.get(resource.address) ?? {},
48
+ expressions: config?.expressions ?? {},
49
+ dependsOn: config?.depends_on ?? [],
50
+ forEach: terraformExpressionReferences(config?.for_each_expression),
51
+ modulePath,
52
+ };
53
+ }
54
+ //# sourceMappingURL=sim-tf-plan-resources.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-tf-plan-resources.js","sourceRoot":"","sources":["../../src/terraform/sim-tf-plan-resources.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AAClF,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,EACpB,iBAAiB,EACjB,0BAA0B,GAC3B,MAAM,2BAA2B,CAAC;AAEnC;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,sBAAsB,CACpC,IAAmB;IAEnB,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,EAAE,WAAW,CAAC;IAEpD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,aAAa,CAClB,UAAU,EACV,IAAI,CAAC,aAAa,EAAE,WAAW,EAC/B,EAAE,EACF,0BAA0B,CAAC,IAAI,CAAC,CACjC,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CACpB,MAA8B,EAC9B,MAAyC,EACzC,UAA6B,EAC7B,OAAqD;IAErD,MAAM,QAAQ,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAE9C,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;SACjC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,IAAI,SAAS,CAAC,KAAK,SAAS,CAAC;SAChE,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;IAEtE,MAAM,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QAC5D,uEAAuE;QACvE,yEAAyE;QACzE,8BAA8B;QAC9B,MAAM,QAAQ,GAAG,mBAAmB,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAEhE,OAAO,aAAa,CAClB,KAAK,EACL,MAAM,EAAE,YAAY,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,EACxC,CAAC,GAAG,UAAU,EAAE,kBAAkB,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,EAC9D,OAAO,CACR,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,GAAG,EAAE,GAAG,MAAM,CAAC,CAAC;AAC7B,CAAC;AAED,SAAS,MAAM,CACb,QAAkC,EAClC,QAAsD,EACtD,UAA6B,EAC7B,OAAqD;IAErD,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IAEjE,OAAO;QACL,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,QAAQ,EAAE,iBAAiB,CAAC,QAAQ,CAAC,aAAa,CAAC;QACnD,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,EAAE;QAC7B,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE;QAC5C,WAAW,EAAE,MAAM,EAAE,WAAW,IAAI,EAAE;QACtC,SAAS,EAAE,MAAM,EAAE,UAAU,IAAI,EAAE;QACnC,OAAO,EAAE,6BAA6B,CAAC,MAAM,EAAE,mBAAmB,CAAC;QACnE,UAAU;KACX,CAAC;AACJ,CAAC"}