@kensio/yulin 1.9.0 → 1.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (712) hide show
  1. package/README.md +25 -0
  2. package/dist/sdk/router/resolve-sim-sdk-command-router.d.ts.map +1 -1
  3. package/dist/sdk/router/resolve-sim-sdk-command-router.js +3 -0
  4. package/dist/sdk/router/resolve-sim-sdk-command-router.js.map +1 -1
  5. package/dist/service/aws/factory/sim-aws-account-region-service-builder.d.ts +17 -0
  6. package/dist/service/aws/factory/sim-aws-account-region-service-builder.d.ts.map +1 -1
  7. package/dist/service/aws/factory/sim-aws-account-region-service-builder.js +37 -42
  8. package/dist/service/aws/factory/sim-aws-account-region-service-builder.js.map +1 -1
  9. package/dist/service/aws/factory/sim-aws-s3-notification-destinations.d.ts.map +1 -1
  10. package/dist/service/aws/factory/sim-aws-s3-notification-destinations.js +5 -0
  11. package/dist/service/aws/factory/sim-aws-s3-notification-destinations.js.map +1 -1
  12. package/dist/service/aws/factory/sim-aws-scoped-service-properties.d.ts +18 -0
  13. package/dist/service/aws/factory/sim-aws-scoped-service-properties.d.ts.map +1 -0
  14. package/dist/service/aws/factory/sim-aws-scoped-service-properties.js +2 -0
  15. package/dist/service/aws/factory/sim-aws-scoped-service-properties.js.map +1 -0
  16. package/dist/service/aws/factory/sim-aws-service-factory.d.ts +3 -0
  17. package/dist/service/aws/factory/sim-aws-service-factory.d.ts.map +1 -1
  18. package/dist/service/aws/factory/sim-aws-service-factory.js +4 -0
  19. package/dist/service/aws/factory/sim-aws-service-factory.js.map +1 -1
  20. package/dist/service/aws/sim-aws-account-region-scope.d.ts +5 -0
  21. package/dist/service/aws/sim-aws-account-region-scope.d.ts.map +1 -1
  22. package/dist/service/aws/sim-aws-account-region-scope.js +6 -0
  23. package/dist/service/aws/sim-aws-account-region-scope.js.map +1 -1
  24. package/dist/service/aws/sim-aws-service-accessors.d.ts +3 -0
  25. package/dist/service/aws/sim-aws-service-accessors.d.ts.map +1 -1
  26. package/dist/service/aws/sim-aws-service-accessors.js +4 -0
  27. package/dist/service/aws/sim-aws-service-accessors.js.map +1 -1
  28. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-copier.d.ts +36 -0
  29. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-copier.d.ts.map +1 -0
  30. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-copier.js +64 -0
  31. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-copier.js.map +1 -0
  32. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-file.d.ts +31 -0
  33. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-file.d.ts.map +1 -0
  34. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-file.js +42 -0
  35. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-file.js.map +1 -0
  36. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-files.d.ts +13 -0
  37. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-files.d.ts.map +1 -0
  38. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-files.js +68 -0
  39. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-files.js.map +1 -0
  40. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-pruner.d.ts +30 -0
  41. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-pruner.d.ts.map +1 -0
  42. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-pruner.js +35 -0
  43. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-pruner.js.map +1 -0
  44. package/dist/service/cloudformation/cdk/s3/bucket-deployment/filter/sim-cdk-bucket-deploy-filter.d.ts +27 -0
  45. package/dist/service/cloudformation/cdk/s3/bucket-deployment/filter/sim-cdk-bucket-deploy-filter.d.ts.map +1 -0
  46. package/dist/service/cloudformation/cdk/s3/bucket-deployment/filter/sim-cdk-bucket-deploy-filter.js +76 -0
  47. package/dist/service/cloudformation/cdk/s3/bucket-deployment/filter/sim-cdk-bucket-deploy-filter.js.map +1 -0
  48. package/dist/service/cloudformation/cdk/s3/bucket-deployment/property/sim-cdk-bucket-deploy-properties.d.ts +24 -0
  49. package/dist/service/cloudformation/cdk/s3/bucket-deployment/property/sim-cdk-bucket-deploy-properties.d.ts.map +1 -0
  50. package/dist/service/cloudformation/cdk/s3/bucket-deployment/property/sim-cdk-bucket-deploy-properties.js +46 -0
  51. package/dist/service/cloudformation/cdk/s3/bucket-deployment/property/sim-cdk-bucket-deploy-properties.js.map +1 -0
  52. package/dist/service/cloudformation/cdk/s3/bucket-deployment/property/sim-cdk-bucket-deploy-values.d.ts +42 -0
  53. package/dist/service/cloudformation/cdk/s3/bucket-deployment/property/sim-cdk-bucket-deploy-values.d.ts.map +1 -0
  54. package/dist/service/cloudformation/cdk/s3/bucket-deployment/property/sim-cdk-bucket-deploy-values.js +96 -0
  55. package/dist/service/cloudformation/cdk/s3/bucket-deployment/property/sim-cdk-bucket-deploy-values.js.map +1 -0
  56. package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.d.ts +1 -1
  57. package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.d.ts.map +1 -1
  58. package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.js +10 -35
  59. package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.js.map +1 -1
  60. package/dist/service/cloudformation/cdk/s3/bucket-notifications/configuration/sim-cdk-bucket-notification-configuration.d.ts +2 -0
  61. package/dist/service/cloudformation/cdk/s3/bucket-notifications/configuration/sim-cdk-bucket-notification-configuration.d.ts.map +1 -1
  62. package/dist/service/cloudformation/cdk/s3/bucket-notifications/configuration/sim-cdk-bucket-notification-configuration.js +15 -1
  63. package/dist/service/cloudformation/cdk/s3/bucket-notifications/configuration/sim-cdk-bucket-notification-configuration.js.map +1 -1
  64. package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-cfn-value-adapter.d.ts.map +1 -1
  65. package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-cfn-value-adapter.js +8 -0
  66. package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-cfn-value-adapter.js.map +1 -1
  67. package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-rh-policy-cfn.d.ts +25 -0
  68. package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-rh-policy-cfn.d.ts.map +1 -0
  69. package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-rh-policy-cfn.js +32 -0
  70. package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-rh-policy-cfn.js.map +1 -0
  71. package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.d.ts.map +1 -1
  72. package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.js +2 -0
  73. package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.js.map +1 -1
  74. package/dist/service/cloudformation/resource/cfn/sns/sim-sns-cfn-value-adapter.d.ts +11 -0
  75. package/dist/service/cloudformation/resource/cfn/sns/sim-sns-cfn-value-adapter.d.ts.map +1 -0
  76. package/dist/service/cloudformation/resource/cfn/sns/sim-sns-cfn-value-adapter.js +24 -0
  77. package/dist/service/cloudformation/resource/cfn/sns/sim-sns-cfn-value-adapter.js.map +1 -0
  78. package/dist/service/cloudformation/resource/cfn/sns/sim-sns-subscription-cfn.d.ts +27 -0
  79. package/dist/service/cloudformation/resource/cfn/sns/sim-sns-subscription-cfn.d.ts.map +1 -0
  80. package/dist/service/cloudformation/resource/cfn/sns/sim-sns-subscription-cfn.js +29 -0
  81. package/dist/service/cloudformation/resource/cfn/sns/sim-sns-subscription-cfn.js.map +1 -0
  82. package/dist/service/cloudformation/resource/cfn/sns/sim-sns-topic-cfn.d.ts +30 -0
  83. package/dist/service/cloudformation/resource/cfn/sns/sim-sns-topic-cfn.d.ts.map +1 -0
  84. package/dist/service/cloudformation/resource/cfn/sns/sim-sns-topic-cfn.js +39 -0
  85. package/dist/service/cloudformation/resource/cfn/sns/sim-sns-topic-cfn.js.map +1 -0
  86. package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-factories.d.ts.map +1 -1
  87. package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-factories.js +4 -0
  88. package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-factories.js.map +1 -1
  89. package/dist/service/cloudfront/behaviour/sim-cloud-front-behavior.d.ts +4 -0
  90. package/dist/service/cloudfront/behaviour/sim-cloud-front-behavior.d.ts.map +1 -1
  91. package/dist/service/cloudfront/behaviour/sim-cloud-front-behavior.js.map +1 -1
  92. package/dist/service/cloudfront/cfn/response-headers-policy/sim-cfn-cf-rh-policy-config.d.ts +38 -0
  93. package/dist/service/cloudfront/cfn/response-headers-policy/sim-cfn-cf-rh-policy-config.d.ts.map +1 -0
  94. package/dist/service/cloudfront/cfn/response-headers-policy/sim-cfn-cf-rh-policy-config.js +127 -0
  95. package/dist/service/cloudfront/cfn/response-headers-policy/sim-cfn-cf-rh-policy-config.js.map +1 -0
  96. package/dist/service/cloudfront/cfn/response-headers-policy/sim-cfn-cf-rh-policy-creator.d.ts +25 -0
  97. package/dist/service/cloudfront/cfn/response-headers-policy/sim-cfn-cf-rh-policy-creator.d.ts.map +1 -0
  98. package/dist/service/cloudfront/cfn/response-headers-policy/sim-cfn-cf-rh-policy-creator.js +33 -0
  99. package/dist/service/cloudfront/cfn/response-headers-policy/sim-cfn-cf-rh-policy-creator.js.map +1 -0
  100. package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.d.ts +1 -0
  101. package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.d.ts.map +1 -1
  102. package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.js +11 -0
  103. package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.js.map +1 -1
  104. package/dist/service/cloudfront/command/create-distribution/create-distribution.command.d.ts +1 -0
  105. package/dist/service/cloudfront/command/create-distribution/create-distribution.command.d.ts.map +1 -1
  106. package/dist/service/cloudfront/controller/dependency/sim-cf-controller-dependency.d.ts +3 -0
  107. package/dist/service/cloudfront/controller/dependency/sim-cf-controller-dependency.d.ts.map +1 -1
  108. package/dist/service/cloudfront/controller/dependency/sim-cf-controller-dependency.js +3 -0
  109. package/dist/service/cloudfront/controller/dependency/sim-cf-controller-dependency.js.map +1 -1
  110. package/dist/service/cloudfront/controller/response-headers/sim-cf-response-headers-applicator.d.ts +19 -0
  111. package/dist/service/cloudfront/controller/response-headers/sim-cf-response-headers-applicator.d.ts.map +1 -0
  112. package/dist/service/cloudfront/controller/response-headers/sim-cf-response-headers-applicator.js +31 -0
  113. package/dist/service/cloudfront/controller/response-headers/sim-cf-response-headers-applicator.js.map +1 -0
  114. package/dist/service/cloudfront/controller/sim-cloudfront-request-pipeline.d.ts +4 -8
  115. package/dist/service/cloudfront/controller/sim-cloudfront-request-pipeline.d.ts.map +1 -1
  116. package/dist/service/cloudfront/controller/sim-cloudfront-request-pipeline.js +16 -19
  117. package/dist/service/cloudfront/controller/sim-cloudfront-request-pipeline.js.map +1 -1
  118. package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-behavior-configurator.js +3 -0
  119. package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-behavior-configurator.js.map +1 -1
  120. package/dist/service/cloudfront/error/sim-cloudfront.error.d.ts +19 -0
  121. package/dist/service/cloudfront/error/sim-cloudfront.error.d.ts.map +1 -1
  122. package/dist/service/cloudfront/error/sim-cloudfront.error.js +23 -0
  123. package/dist/service/cloudfront/error/sim-cloudfront.error.js.map +1 -1
  124. package/dist/service/cloudfront/origin/s3/sim-cloudfront-s3-origin.d.ts.map +1 -1
  125. package/dist/service/cloudfront/origin/s3/sim-cloudfront-s3-origin.js +2 -5
  126. package/dist/service/cloudfront/origin/s3/sim-cloudfront-s3-origin.js.map +1 -1
  127. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-header.d.ts +25 -0
  128. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-header.d.ts.map +1 -0
  129. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-header.js +30 -0
  130. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-header.js.map +1 -0
  131. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy-registry.d.ts +29 -0
  132. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy-registry.d.ts.map +1 -0
  133. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy-registry.js +40 -0
  134. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy-registry.js.map +1 -0
  135. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy.d.ts +35 -0
  136. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy.d.ts.map +1 -0
  137. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy.js +44 -0
  138. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy.js.map +1 -0
  139. package/dist/service/cloudfront/sim-cloudfront.d.ts +18 -0
  140. package/dist/service/cloudfront/sim-cloudfront.d.ts.map +1 -1
  141. package/dist/service/cloudfront/sim-cloudfront.js +24 -0
  142. package/dist/service/cloudfront/sim-cloudfront.js.map +1 -1
  143. package/dist/service/route53/cfn/record-set/apply/sim-cfn-r53-record-set-applicator.d.ts.map +1 -1
  144. package/dist/service/route53/cfn/record-set/apply/sim-cfn-r53-record-set-applicator.js +4 -1
  145. package/dist/service/route53/cfn/record-set/apply/sim-cfn-r53-record-set-applicator.js.map +1 -1
  146. package/dist/service/route53/cfn/record-set/resolve/sim-cfn-r53-looked-up-zone.d.ts +39 -0
  147. package/dist/service/route53/cfn/record-set/resolve/sim-cfn-r53-looked-up-zone.d.ts.map +1 -0
  148. package/dist/service/route53/cfn/record-set/resolve/sim-cfn-r53-looked-up-zone.js +46 -0
  149. package/dist/service/route53/cfn/record-set/resolve/sim-cfn-r53-looked-up-zone.js.map +1 -0
  150. package/dist/service/route53/cfn/record-set/resolve/sim-cfn-r53-rec-set-zone-resolver.d.ts +2 -0
  151. package/dist/service/route53/cfn/record-set/resolve/sim-cfn-r53-rec-set-zone-resolver.d.ts.map +1 -1
  152. package/dist/service/route53/cfn/record-set/resolve/sim-cfn-r53-rec-set-zone-resolver.js +17 -1
  153. package/dist/service/route53/cfn/record-set/resolve/sim-cfn-r53-rec-set-zone-resolver.js.map +1 -1
  154. package/dist/service/route53/hosted-zone/register-sim-route53-hosted-zone.d.ts +6 -0
  155. package/dist/service/route53/hosted-zone/register-sim-route53-hosted-zone.d.ts.map +1 -1
  156. package/dist/service/route53/hosted-zone/register-sim-route53-hosted-zone.js +1 -0
  157. package/dist/service/route53/hosted-zone/register-sim-route53-hosted-zone.js.map +1 -1
  158. package/dist/service/route53/hosted-zone/sim-route53-hosted-zone.d.ts +23 -10
  159. package/dist/service/route53/hosted-zone/sim-route53-hosted-zone.d.ts.map +1 -1
  160. package/dist/service/route53/hosted-zone/sim-route53-hosted-zone.js +32 -45
  161. package/dist/service/route53/hosted-zone/sim-route53-hosted-zone.js.map +1 -1
  162. package/dist/service/route53/hosted-zone/sim-route53-zone-name-widening.d.ts +16 -0
  163. package/dist/service/route53/hosted-zone/sim-route53-zone-name-widening.d.ts.map +1 -0
  164. package/dist/service/route53/hosted-zone/sim-route53-zone-name-widening.js +35 -0
  165. package/dist/service/route53/hosted-zone/sim-route53-zone-name-widening.js.map +1 -0
  166. package/dist/service/route53/hosted-zone/sim-route53-zone-synchronization.d.ts +23 -0
  167. package/dist/service/route53/hosted-zone/sim-route53-zone-synchronization.d.ts.map +1 -0
  168. package/dist/service/route53/hosted-zone/sim-route53-zone-synchronization.js +43 -0
  169. package/dist/service/route53/hosted-zone/sim-route53-zone-synchronization.js.map +1 -0
  170. package/dist/service/route53/sim-route53.d.ts +1 -1
  171. package/dist/service/route53/sim-route53.d.ts.map +1 -1
  172. package/dist/service/route53/sim-route53.js +1 -1
  173. package/dist/service/route53/sim-route53.js.map +1 -1
  174. package/dist/service/s3/bucket/notification/sim-s3-notification-configuration-reader.d.ts.map +1 -1
  175. package/dist/service/s3/bucket/notification/sim-s3-notification-configuration-reader.js +2 -0
  176. package/dist/service/s3/bucket/notification/sim-s3-notification-configuration-reader.js.map +1 -1
  177. package/dist/service/s3/bucket/notification/sim-s3-notification-configuration.d.ts +3 -0
  178. package/dist/service/s3/bucket/notification/sim-s3-notification-configuration.d.ts.map +1 -1
  179. package/dist/service/s3/bucket/notification/sim-s3-notification-configuration.js +10 -1
  180. package/dist/service/s3/bucket/notification/sim-s3-notification-configuration.js.map +1 -1
  181. package/dist/service/s3/bucket/notification/sim-s3-topic-notification.d.ts +21 -0
  182. package/dist/service/s3/bucket/notification/sim-s3-topic-notification.d.ts.map +1 -0
  183. package/dist/service/s3/bucket/notification/sim-s3-topic-notification.js +24 -0
  184. package/dist/service/s3/bucket/notification/sim-s3-topic-notification.js.map +1 -0
  185. package/dist/service/s3/bucket/notification/sim-s3-unsimulated-notification-destinations.d.ts +1 -1
  186. package/dist/service/s3/bucket/notification/sim-s3-unsimulated-notification-destinations.d.ts.map +1 -1
  187. package/dist/service/s3/bucket/notification/sim-s3-unsimulated-notification-destinations.js +3 -3
  188. package/dist/service/s3/bucket/notification/sim-s3-unsimulated-notification-destinations.js.map +1 -1
  189. package/dist/service/s3/cfn/bucket/notification/sim-cfn-s3-bucket-notification-configuration.d.ts +9 -6
  190. package/dist/service/s3/cfn/bucket/notification/sim-cfn-s3-bucket-notification-configuration.d.ts.map +1 -1
  191. package/dist/service/s3/cfn/bucket/notification/sim-cfn-s3-bucket-notification-configuration.js +32 -7
  192. package/dist/service/s3/cfn/bucket/notification/sim-cfn-s3-bucket-notification-configuration.js.map +1 -1
  193. package/dist/service/s3/command/get-bucket-notification-configuration/get-bucket-notification-configuration.command.d.ts +2 -1
  194. package/dist/service/s3/command/get-bucket-notification-configuration/get-bucket-notification-configuration.command.d.ts.map +1 -1
  195. package/dist/service/s3/command/put-bucket-notification-configuration/put-bucket-notification-configuration.command.d.ts +10 -1
  196. package/dist/service/s3/command/put-bucket-notification-configuration/put-bucket-notification-configuration.command.d.ts.map +1 -1
  197. package/dist/service/s3/command/put-object/put-object-builder.d.ts +13 -4
  198. package/dist/service/s3/command/put-object/put-object-builder.d.ts.map +1 -1
  199. package/dist/service/s3/command/put-object/put-object-builder.js +27 -10
  200. package/dist/service/s3/command/put-object/put-object-builder.js.map +1 -1
  201. package/dist/service/s3/command/put-object/put-object.command.d.ts +11 -0
  202. package/dist/service/s3/command/put-object/put-object.command.d.ts.map +1 -1
  203. package/dist/service/s3/notification/destination/sim-s3-notification-destination.d.ts +1 -1
  204. package/dist/service/s3/notification/destination/sim-s3-notification-destination.d.ts.map +1 -1
  205. package/dist/service/s3/notification/destination/sim-s3-service-notification-destinations.d.ts +2 -0
  206. package/dist/service/s3/notification/destination/sim-s3-service-notification-destinations.d.ts.map +1 -1
  207. package/dist/service/s3/notification/destination/sim-s3-service-notification-destinations.js +5 -0
  208. package/dist/service/s3/notification/destination/sim-s3-service-notification-destinations.js.map +1 -1
  209. package/dist/service/s3/notification/destination/sns/sim-aws-s3-notification-topics.d.ts +38 -0
  210. package/dist/service/s3/notification/destination/sns/sim-aws-s3-notification-topics.d.ts.map +1 -0
  211. package/dist/service/s3/notification/destination/sns/sim-aws-s3-notification-topics.js +50 -0
  212. package/dist/service/s3/notification/destination/sns/sim-aws-s3-notification-topics.js.map +1 -0
  213. package/dist/service/s3/notification/destination/sns/sim-s3-notification-topic-arn.d.ts +31 -0
  214. package/dist/service/s3/notification/destination/sns/sim-s3-notification-topic-arn.d.ts.map +1 -0
  215. package/dist/service/s3/notification/destination/sns/sim-s3-notification-topic-arn.js +48 -0
  216. package/dist/service/s3/notification/destination/sns/sim-s3-notification-topic-arn.js.map +1 -0
  217. package/dist/service/s3/notification/destination/sns/sim-s3-notification-topic.d.ts +43 -0
  218. package/dist/service/s3/notification/destination/sns/sim-s3-notification-topic.d.ts.map +1 -0
  219. package/dist/service/s3/notification/destination/sns/sim-s3-notification-topic.js +71 -0
  220. package/dist/service/s3/notification/destination/sns/sim-s3-notification-topic.js.map +1 -0
  221. package/dist/service/s3/notification/destination/sns/sim-s3-notification-topics.d.ts +22 -0
  222. package/dist/service/s3/notification/destination/sns/sim-s3-notification-topics.d.ts.map +1 -0
  223. package/dist/service/s3/notification/destination/sns/sim-s3-notification-topics.js +2 -0
  224. package/dist/service/s3/notification/destination/sns/sim-s3-notification-topics.js.map +1 -0
  225. package/dist/service/s3/notification/destination/sns/sim-s3-sns-notification-destination.d.ts +40 -0
  226. package/dist/service/s3/notification/destination/sns/sim-s3-sns-notification-destination.d.ts.map +1 -0
  227. package/dist/service/s3/notification/destination/sns/sim-s3-sns-notification-destination.js +51 -0
  228. package/dist/service/s3/notification/destination/sns/sim-s3-sns-notification-destination.js.map +1 -0
  229. package/dist/service/s3/object/s3-object-response-headers.d.ts +17 -0
  230. package/dist/service/s3/object/s3-object-response-headers.d.ts.map +1 -0
  231. package/dist/service/s3/object/s3-object-response-headers.js +29 -0
  232. package/dist/service/s3/object/s3-object-response-headers.js.map +1 -0
  233. package/dist/service/s3/object/s3-system-metadata.d.ts +32 -0
  234. package/dist/service/s3/object/s3-system-metadata.d.ts.map +1 -0
  235. package/dist/service/s3/object/s3-system-metadata.js +35 -0
  236. package/dist/service/s3/object/s3-system-metadata.js.map +1 -0
  237. package/dist/service/s3/serve/sim-s3-rest-object-reader.d.ts.map +1 -1
  238. package/dist/service/s3/serve/sim-s3-rest-object-reader.js +2 -5
  239. package/dist/service/s3/serve/sim-s3-rest-object-reader.js.map +1 -1
  240. package/dist/service/s3/serve/website/sim-s3-website-object-loader.js +1 -1
  241. package/dist/service/s3/serve/website/sim-s3-website-object-loader.js.map +1 -1
  242. package/dist/service/s3/serve/website/sim-s3-website-object.d.ts +3 -4
  243. package/dist/service/s3/serve/website/sim-s3-website-object.d.ts.map +1 -1
  244. package/dist/service/s3/serve/website/sim-s3-website-object.js +6 -11
  245. package/dist/service/s3/serve/website/sim-s3-website-object.js.map +1 -1
  246. package/dist/service/sns/cfn/sim-cfn-sns-attribute-value.d.ts +15 -0
  247. package/dist/service/sns/cfn/sim-cfn-sns-attribute-value.d.ts.map +1 -0
  248. package/dist/service/sns/cfn/sim-cfn-sns-attribute-value.js +23 -0
  249. package/dist/service/sns/cfn/sim-cfn-sns-attribute-value.js.map +1 -0
  250. package/dist/service/sns/cfn/sim-cfn-sns-resource-deleter.d.ts +38 -0
  251. package/dist/service/sns/cfn/sim-cfn-sns-resource-deleter.d.ts.map +1 -0
  252. package/dist/service/sns/cfn/sim-cfn-sns-resource-deleter.js +73 -0
  253. package/dist/service/sns/cfn/sim-cfn-sns-resource-deleter.js.map +1 -0
  254. package/dist/service/sns/cfn/sim-cfn-sns-resource-error.d.ts +24 -0
  255. package/dist/service/sns/cfn/sim-cfn-sns-resource-error.d.ts.map +1 -0
  256. package/dist/service/sns/cfn/sim-cfn-sns-resource-error.js +39 -0
  257. package/dist/service/sns/cfn/sim-cfn-sns-resource-error.js.map +1 -0
  258. package/dist/service/sns/cfn/sim-cfn-sns-resource-types.d.ts +11 -0
  259. package/dist/service/sns/cfn/sim-cfn-sns-resource-types.d.ts.map +1 -0
  260. package/dist/service/sns/cfn/sim-cfn-sns-resource-types.js +11 -0
  261. package/dist/service/sns/cfn/sim-cfn-sns-resource-types.js.map +1 -0
  262. package/dist/service/sns/cfn/sim-sns-cfn-resource-factory.d.ts +31 -0
  263. package/dist/service/sns/cfn/sim-sns-cfn-resource-factory.d.ts.map +1 -0
  264. package/dist/service/sns/cfn/sim-sns-cfn-resource-factory.js +54 -0
  265. package/dist/service/sns/cfn/sim-sns-cfn-resource-factory.js.map +1 -0
  266. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-creator.d.ts +26 -0
  267. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-creator.d.ts.map +1 -0
  268. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-creator.js +37 -0
  269. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-creator.js.map +1 -0
  270. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-properties.d.ts +47 -0
  271. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-properties.d.ts.map +1 -0
  272. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-properties.js +88 -0
  273. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-properties.js.map +1 -0
  274. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-property-names.d.ts +36 -0
  275. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-property-names.d.ts.map +1 -0
  276. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-property-names.js +55 -0
  277. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-property-names.js.map +1 -0
  278. package/dist/service/sns/cfn/topic/sim-cfn-sns-inline-subscriptions.d.ts +23 -0
  279. package/dist/service/sns/cfn/topic/sim-cfn-sns-inline-subscriptions.d.ts.map +1 -0
  280. package/dist/service/sns/cfn/topic/sim-cfn-sns-inline-subscriptions.js +49 -0
  281. package/dist/service/sns/cfn/topic/sim-cfn-sns-inline-subscriptions.js.map +1 -0
  282. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-creator.d.ts +34 -0
  283. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-creator.d.ts.map +1 -0
  284. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-creator.js +60 -0
  285. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-creator.js.map +1 -0
  286. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-name.d.ts +22 -0
  287. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-name.d.ts.map +1 -0
  288. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-name.js +27 -0
  289. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-name.js.map +1 -0
  290. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-properties.d.ts +58 -0
  291. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-properties.d.ts.map +1 -0
  292. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-properties.js +93 -0
  293. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-properties.js.map +1 -0
  294. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-property-names.d.ts +31 -0
  295. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-property-names.d.ts.map +1 -0
  296. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-property-names.js +52 -0
  297. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-property-names.js.map +1 -0
  298. package/dist/service/sns/cfn/topic-policy/sim-cfn-sns-topic-policy-creator.d.ts +34 -0
  299. package/dist/service/sns/cfn/topic-policy/sim-cfn-sns-topic-policy-creator.d.ts.map +1 -0
  300. package/dist/service/sns/cfn/topic-policy/sim-cfn-sns-topic-policy-creator.js +58 -0
  301. package/dist/service/sns/cfn/topic-policy/sim-cfn-sns-topic-policy-creator.js.map +1 -0
  302. package/dist/service/sns/cfn/topic-policy/sim-cfn-sns-topic-policy-properties.d.ts +20 -0
  303. package/dist/service/sns/cfn/topic-policy/sim-cfn-sns-topic-policy-properties.d.ts.map +1 -0
  304. package/dist/service/sns/cfn/topic-policy/sim-cfn-sns-topic-policy-properties.js +44 -0
  305. package/dist/service/sns/cfn/topic-policy/sim-cfn-sns-topic-policy-properties.js.map +1 -0
  306. package/dist/service/sns/command/authorize/sim-sns-authorizer.d.ts +58 -0
  307. package/dist/service/sns/command/authorize/sim-sns-authorizer.d.ts.map +1 -0
  308. package/dist/service/sns/command/authorize/sim-sns-authorizer.js +83 -0
  309. package/dist/service/sns/command/authorize/sim-sns-authorizer.js.map +1 -0
  310. package/dist/service/sns/command/authorize/sim-sns-condition-context.d.ts +13 -0
  311. package/dist/service/sns/command/authorize/sim-sns-condition-context.d.ts.map +1 -0
  312. package/dist/service/sns/command/authorize/sim-sns-condition-context.js +21 -0
  313. package/dist/service/sns/command/authorize/sim-sns-condition-context.js.map +1 -0
  314. package/dist/service/sns/command/authorize/sim-sns-service-publish-authorizer.d.ts +41 -0
  315. package/dist/service/sns/command/authorize/sim-sns-service-publish-authorizer.d.ts.map +1 -0
  316. package/dist/service/sns/command/authorize/sim-sns-service-publish-authorizer.js +40 -0
  317. package/dist/service/sns/command/authorize/sim-sns-service-publish-authorizer.js.map +1 -0
  318. package/dist/service/sns/command/authorize/sim-sns-topic-resource-policies.d.ts +12 -0
  319. package/dist/service/sns/command/authorize/sim-sns-topic-resource-policies.d.ts.map +1 -0
  320. package/dist/service/sns/command/authorize/sim-sns-topic-resource-policies.js +25 -0
  321. package/dist/service/sns/command/authorize/sim-sns-topic-resource-policies.js.map +1 -0
  322. package/dist/service/sns/command/publish/publish.command.d.ts +70 -0
  323. package/dist/service/sns/command/publish/publish.command.d.ts.map +1 -0
  324. package/dist/service/sns/command/publish/publish.command.js +2 -0
  325. package/dist/service/sns/command/publish/publish.command.js.map +1 -0
  326. package/dist/service/sns/command/publish/sim-sns-batch-entries.d.ts +52 -0
  327. package/dist/service/sns/command/publish/sim-sns-batch-entries.d.ts.map +1 -0
  328. package/dist/service/sns/command/publish/sim-sns-batch-entries.js +85 -0
  329. package/dist/service/sns/command/publish/sim-sns-batch-entries.js.map +1 -0
  330. package/dist/service/sns/command/publish/sim-sns-publish-commands.d.ts +53 -0
  331. package/dist/service/sns/command/publish/sim-sns-publish-commands.d.ts.map +1 -0
  332. package/dist/service/sns/command/publish/sim-sns-publish-commands.js +83 -0
  333. package/dist/service/sns/command/publish/sim-sns-publish-commands.js.map +1 -0
  334. package/dist/service/sns/command/publish/sim-sns-publish-input.d.ts +23 -0
  335. package/dist/service/sns/command/publish/sim-sns-publish-input.d.ts.map +1 -0
  336. package/dist/service/sns/command/publish/sim-sns-publish-input.js +47 -0
  337. package/dist/service/sns/command/publish/sim-sns-publish-input.js.map +1 -0
  338. package/dist/service/sns/command/sim-sns-command.types.d.ts +7 -0
  339. package/dist/service/sns/command/sim-sns-command.types.d.ts.map +1 -0
  340. package/dist/service/sns/command/sim-sns-command.types.js +2 -0
  341. package/dist/service/sns/command/sim-sns-command.types.js.map +1 -0
  342. package/dist/service/sns/command/sim-sns-commands.d.ts +45 -0
  343. package/dist/service/sns/command/sim-sns-commands.d.ts.map +1 -0
  344. package/dist/service/sns/command/sim-sns-commands.js +83 -0
  345. package/dist/service/sns/command/sim-sns-commands.js.map +1 -0
  346. package/dist/service/sns/command/sim-sns-page.d.ts +19 -0
  347. package/dist/service/sns/command/sim-sns-page.d.ts.map +1 -0
  348. package/dist/service/sns/command/sim-sns-page.js +51 -0
  349. package/dist/service/sns/command/sim-sns-page.js.map +1 -0
  350. package/dist/service/sns/command/sim-sns-request-options.d.ts +47 -0
  351. package/dist/service/sns/command/sim-sns-request-options.d.ts.map +1 -0
  352. package/dist/service/sns/command/sim-sns-request-options.js +19 -0
  353. package/dist/service/sns/command/sim-sns-request-options.js.map +1 -0
  354. package/dist/service/sns/command/subscription/sim-sns-subscription-access.d.ts +42 -0
  355. package/dist/service/sns/command/subscription/sim-sns-subscription-access.d.ts.map +1 -0
  356. package/dist/service/sns/command/subscription/sim-sns-subscription-access.js +57 -0
  357. package/dist/service/sns/command/subscription/sim-sns-subscription-access.js.map +1 -0
  358. package/dist/service/sns/command/subscription/sim-sns-subscription-attribute-commands.d.ts +31 -0
  359. package/dist/service/sns/command/subscription/sim-sns-subscription-attribute-commands.d.ts.map +1 -0
  360. package/dist/service/sns/command/subscription/sim-sns-subscription-attribute-commands.js +44 -0
  361. package/dist/service/sns/command/subscription/sim-sns-subscription-attribute-commands.js.map +1 -0
  362. package/dist/service/sns/command/subscription/sim-sns-subscription-commands.d.ts +50 -0
  363. package/dist/service/sns/command/subscription/sim-sns-subscription-commands.d.ts.map +1 -0
  364. package/dist/service/sns/command/subscription/sim-sns-subscription-commands.js +73 -0
  365. package/dist/service/sns/command/subscription/sim-sns-subscription-commands.js.map +1 -0
  366. package/dist/service/sns/command/subscription/sim-sns-subscription-listings.d.ts +34 -0
  367. package/dist/service/sns/command/subscription/sim-sns-subscription-listings.d.ts.map +1 -0
  368. package/dist/service/sns/command/subscription/sim-sns-subscription-listings.js +57 -0
  369. package/dist/service/sns/command/subscription/sim-sns-subscription-listings.js.map +1 -0
  370. package/dist/service/sns/command/subscription/subscription.command.d.ts +118 -0
  371. package/dist/service/sns/command/subscription/subscription.command.d.ts.map +1 -0
  372. package/dist/service/sns/command/subscription/subscription.command.js +2 -0
  373. package/dist/service/sns/command/subscription/subscription.command.js.map +1 -0
  374. package/dist/service/sns/command/topic/sim-sns-create-topic.d.ts +41 -0
  375. package/dist/service/sns/command/topic/sim-sns-create-topic.d.ts.map +1 -0
  376. package/dist/service/sns/command/topic/sim-sns-create-topic.js +54 -0
  377. package/dist/service/sns/command/topic/sim-sns-create-topic.js.map +1 -0
  378. package/dist/service/sns/command/topic/sim-sns-request-topic-name.d.ts +11 -0
  379. package/dist/service/sns/command/topic/sim-sns-request-topic-name.d.ts.map +1 -0
  380. package/dist/service/sns/command/topic/sim-sns-request-topic-name.js +28 -0
  381. package/dist/service/sns/command/topic/sim-sns-request-topic-name.js.map +1 -0
  382. package/dist/service/sns/command/topic/sim-sns-topic-access.d.ts +76 -0
  383. package/dist/service/sns/command/topic/sim-sns-topic-access.d.ts.map +1 -0
  384. package/dist/service/sns/command/topic/sim-sns-topic-access.js +81 -0
  385. package/dist/service/sns/command/topic/sim-sns-topic-access.js.map +1 -0
  386. package/dist/service/sns/command/topic/sim-sns-topic-attribute-commands.d.ts +36 -0
  387. package/dist/service/sns/command/topic/sim-sns-topic-attribute-commands.d.ts.map +1 -0
  388. package/dist/service/sns/command/topic/sim-sns-topic-attribute-commands.js +47 -0
  389. package/dist/service/sns/command/topic/sim-sns-topic-attribute-commands.js.map +1 -0
  390. package/dist/service/sns/command/topic/sim-sns-topic-commands.d.ts +42 -0
  391. package/dist/service/sns/command/topic/sim-sns-topic-commands.d.ts.map +1 -0
  392. package/dist/service/sns/command/topic/sim-sns-topic-commands.js +51 -0
  393. package/dist/service/sns/command/topic/sim-sns-topic-commands.js.map +1 -0
  394. package/dist/service/sns/command/topic/sim-sns-unsimulated-topic-input.d.ts +11 -0
  395. package/dist/service/sns/command/topic/sim-sns-unsimulated-topic-input.d.ts.map +1 -0
  396. package/dist/service/sns/command/topic/sim-sns-unsimulated-topic-input.js +20 -0
  397. package/dist/service/sns/command/topic/sim-sns-unsimulated-topic-input.js.map +1 -0
  398. package/dist/service/sns/command/topic/topic.command.d.ts +95 -0
  399. package/dist/service/sns/command/topic/topic.command.d.ts.map +1 -0
  400. package/dist/service/sns/command/topic/topic.command.js +2 -0
  401. package/dist/service/sns/command/topic/topic.command.js.map +1 -0
  402. package/dist/service/sns/delivery/lambda/sim-aws-sns-delivery-functions.d.ts +27 -0
  403. package/dist/service/sns/delivery/lambda/sim-aws-sns-delivery-functions.d.ts.map +1 -0
  404. package/dist/service/sns/delivery/lambda/sim-aws-sns-delivery-functions.js +31 -0
  405. package/dist/service/sns/delivery/lambda/sim-aws-sns-delivery-functions.js.map +1 -0
  406. package/dist/service/sns/delivery/lambda/sim-sns-delivery-function.d.ts +31 -0
  407. package/dist/service/sns/delivery/lambda/sim-sns-delivery-function.d.ts.map +1 -0
  408. package/dist/service/sns/delivery/lambda/sim-sns-delivery-function.js +62 -0
  409. package/dist/service/sns/delivery/lambda/sim-sns-delivery-function.js.map +1 -0
  410. package/dist/service/sns/delivery/lambda/sim-sns-lambda-event.d.ts +10 -0
  411. package/dist/service/sns/delivery/lambda/sim-sns-lambda-event.d.ts.map +1 -0
  412. package/dist/service/sns/delivery/lambda/sim-sns-lambda-event.js +53 -0
  413. package/dist/service/sns/delivery/lambda/sim-sns-lambda-event.js.map +1 -0
  414. package/dist/service/sns/delivery/sim-aws-sns-delivery-endpoints.d.ts +17 -0
  415. package/dist/service/sns/delivery/sim-aws-sns-delivery-endpoints.d.ts.map +1 -0
  416. package/dist/service/sns/delivery/sim-aws-sns-delivery-endpoints.js +21 -0
  417. package/dist/service/sns/delivery/sim-aws-sns-delivery-endpoints.js.map +1 -0
  418. package/dist/service/sns/delivery/sim-sns-canonical-message.d.ts +32 -0
  419. package/dist/service/sns/delivery/sim-sns-canonical-message.d.ts.map +1 -0
  420. package/dist/service/sns/delivery/sim-sns-canonical-message.js +24 -0
  421. package/dist/service/sns/delivery/sim-sns-canonical-message.js.map +1 -0
  422. package/dist/service/sns/delivery/sim-sns-delivery-failures.d.ts +60 -0
  423. package/dist/service/sns/delivery/sim-sns-delivery-failures.d.ts.map +1 -0
  424. package/dist/service/sns/delivery/sim-sns-delivery-failures.js +84 -0
  425. package/dist/service/sns/delivery/sim-sns-delivery-failures.js.map +1 -0
  426. package/dist/service/sns/delivery/sim-sns-delivery-request.d.ts +28 -0
  427. package/dist/service/sns/delivery/sim-sns-delivery-request.d.ts.map +1 -0
  428. package/dist/service/sns/delivery/sim-sns-delivery-request.js +34 -0
  429. package/dist/service/sns/delivery/sim-sns-delivery-request.js.map +1 -0
  430. package/dist/service/sns/delivery/sim-sns-delivery.d.ts +55 -0
  431. package/dist/service/sns/delivery/sim-sns-delivery.d.ts.map +1 -0
  432. package/dist/service/sns/delivery/sim-sns-delivery.js +18 -0
  433. package/dist/service/sns/delivery/sim-sns-delivery.js.map +1 -0
  434. package/dist/service/sns/delivery/sim-sns-envelope.d.ts +26 -0
  435. package/dist/service/sns/delivery/sim-sns-envelope.d.ts.map +1 -0
  436. package/dist/service/sns/delivery/sim-sns-envelope.js +41 -0
  437. package/dist/service/sns/delivery/sim-sns-envelope.js.map +1 -0
  438. package/dist/service/sns/delivery/sim-sns-fan-out.d.ts +53 -0
  439. package/dist/service/sns/delivery/sim-sns-fan-out.d.ts.map +1 -0
  440. package/dist/service/sns/delivery/sim-sns-fan-out.js +69 -0
  441. package/dist/service/sns/delivery/sim-sns-fan-out.js.map +1 -0
  442. package/dist/service/sns/delivery/sim-sns-no-delivery-endpoints.d.ts +17 -0
  443. package/dist/service/sns/delivery/sim-sns-no-delivery-endpoints.d.ts.map +1 -0
  444. package/dist/service/sns/delivery/sim-sns-no-delivery-endpoints.js +23 -0
  445. package/dist/service/sns/delivery/sim-sns-no-delivery-endpoints.js.map +1 -0
  446. package/dist/service/sns/delivery/sim-sns-notification.d.ts +57 -0
  447. package/dist/service/sns/delivery/sim-sns-notification.d.ts.map +1 -0
  448. package/dist/service/sns/delivery/sim-sns-notification.js +64 -0
  449. package/dist/service/sns/delivery/sim-sns-notification.js.map +1 -0
  450. package/dist/service/sns/delivery/sim-sns-protocol-delivery-endpoints.d.ts +32 -0
  451. package/dist/service/sns/delivery/sim-sns-protocol-delivery-endpoints.d.ts.map +1 -0
  452. package/dist/service/sns/delivery/sim-sns-protocol-delivery-endpoints.js +22 -0
  453. package/dist/service/sns/delivery/sim-sns-protocol-delivery-endpoints.js.map +1 -0
  454. package/dist/service/sns/delivery/sqs/sim-aws-sns-delivery-queues.d.ts +29 -0
  455. package/dist/service/sns/delivery/sqs/sim-aws-sns-delivery-queues.d.ts.map +1 -0
  456. package/dist/service/sns/delivery/sqs/sim-aws-sns-delivery-queues.js +33 -0
  457. package/dist/service/sns/delivery/sqs/sim-aws-sns-delivery-queues.js.map +1 -0
  458. package/dist/service/sns/delivery/sqs/sim-sns-delivery-queue.d.ts +31 -0
  459. package/dist/service/sns/delivery/sqs/sim-sns-delivery-queue.d.ts.map +1 -0
  460. package/dist/service/sns/delivery/sqs/sim-sns-delivery-queue.js +63 -0
  461. package/dist/service/sns/delivery/sqs/sim-sns-delivery-queue.js.map +1 -0
  462. package/dist/service/sns/delivery/sqs/sim-sns-queue-message.d.ts +24 -0
  463. package/dist/service/sns/delivery/sqs/sim-sns-queue-message.d.ts.map +1 -0
  464. package/dist/service/sns/delivery/sqs/sim-sns-queue-message.js +38 -0
  465. package/dist/service/sns/delivery/sqs/sim-sns-queue-message.js.map +1 -0
  466. package/dist/service/sns/error/sim-sns-delivery.error.d.ts +13 -0
  467. package/dist/service/sns/error/sim-sns-delivery.error.d.ts.map +1 -0
  468. package/dist/service/sns/error/sim-sns-delivery.error.js +13 -0
  469. package/dist/service/sns/error/sim-sns-delivery.error.js.map +1 -0
  470. package/dist/service/sns/error/sim-sns.error.d.ts +107 -0
  471. package/dist/service/sns/error/sim-sns.error.d.ts.map +1 -0
  472. package/dist/service/sns/error/sim-sns.error.js +124 -0
  473. package/dist/service/sns/error/sim-sns.error.js.map +1 -0
  474. package/dist/service/sns/filter/match/sim-sns-anything-but-match.d.ts +30 -0
  475. package/dist/service/sns/filter/match/sim-sns-anything-but-match.d.ts.map +1 -0
  476. package/dist/service/sns/filter/match/sim-sns-anything-but-match.js +82 -0
  477. package/dist/service/sns/filter/match/sim-sns-anything-but-match.js.map +1 -0
  478. package/dist/service/sns/filter/match/sim-sns-equals-ignore-case-match.d.ts +24 -0
  479. package/dist/service/sns/filter/match/sim-sns-equals-ignore-case-match.d.ts.map +1 -0
  480. package/dist/service/sns/filter/match/sim-sns-equals-ignore-case-match.js +30 -0
  481. package/dist/service/sns/filter/match/sim-sns-equals-ignore-case-match.js.map +1 -0
  482. package/dist/service/sns/filter/match/sim-sns-exact-match.d.ts +22 -0
  483. package/dist/service/sns/filter/match/sim-sns-exact-match.d.ts.map +1 -0
  484. package/dist/service/sns/filter/match/sim-sns-exact-match.js +49 -0
  485. package/dist/service/sns/filter/match/sim-sns-exact-match.js.map +1 -0
  486. package/dist/service/sns/filter/match/sim-sns-exists-match.d.ts +27 -0
  487. package/dist/service/sns/filter/match/sim-sns-exists-match.d.ts.map +1 -0
  488. package/dist/service/sns/filter/match/sim-sns-exists-match.js +38 -0
  489. package/dist/service/sns/filter/match/sim-sns-exists-match.js.map +1 -0
  490. package/dist/service/sns/filter/match/sim-sns-filter-match.d.ts +24 -0
  491. package/dist/service/sns/filter/match/sim-sns-filter-match.d.ts.map +1 -0
  492. package/dist/service/sns/filter/match/sim-sns-filter-match.js +19 -0
  493. package/dist/service/sns/filter/match/sim-sns-filter-match.js.map +1 -0
  494. package/dist/service/sns/filter/match/sim-sns-numeric-match.d.ts +48 -0
  495. package/dist/service/sns/filter/match/sim-sns-numeric-match.d.ts.map +1 -0
  496. package/dist/service/sns/filter/match/sim-sns-numeric-match.js +107 -0
  497. package/dist/service/sns/filter/match/sim-sns-numeric-match.js.map +1 -0
  498. package/dist/service/sns/filter/match/sim-sns-prefix-match.d.ts +26 -0
  499. package/dist/service/sns/filter/match/sim-sns-prefix-match.d.ts.map +1 -0
  500. package/dist/service/sns/filter/match/sim-sns-prefix-match.js +32 -0
  501. package/dist/service/sns/filter/match/sim-sns-prefix-match.js.map +1 -0
  502. package/dist/service/sns/filter/match/sim-sns-suffix-match.d.ts +23 -0
  503. package/dist/service/sns/filter/match/sim-sns-suffix-match.d.ts.map +1 -0
  504. package/dist/service/sns/filter/match/sim-sns-suffix-match.js +29 -0
  505. package/dist/service/sns/filter/match/sim-sns-suffix-match.js.map +1 -0
  506. package/dist/service/sns/filter/sim-sns-attribute-subject.d.ts +31 -0
  507. package/dist/service/sns/filter/sim-sns-attribute-subject.d.ts.map +1 -0
  508. package/dist/service/sns/filter/sim-sns-attribute-subject.js +85 -0
  509. package/dist/service/sns/filter/sim-sns-attribute-subject.js.map +1 -0
  510. package/dist/service/sns/filter/sim-sns-body-subject.d.ts +30 -0
  511. package/dist/service/sns/filter/sim-sns-body-subject.d.ts.map +1 -0
  512. package/dist/service/sns/filter/sim-sns-body-subject.js +67 -0
  513. package/dist/service/sns/filter/sim-sns-body-subject.js.map +1 -0
  514. package/dist/service/sns/filter/sim-sns-filter-any-rule.d.ts +21 -0
  515. package/dist/service/sns/filter/sim-sns-filter-any-rule.d.ts.map +1 -0
  516. package/dist/service/sns/filter/sim-sns-filter-any-rule.js +23 -0
  517. package/dist/service/sns/filter/sim-sns-filter-any-rule.js.map +1 -0
  518. package/dist/service/sns/filter/sim-sns-filter-key-rule.d.ts +28 -0
  519. package/dist/service/sns/filter/sim-sns-filter-key-rule.d.ts.map +1 -0
  520. package/dist/service/sns/filter/sim-sns-filter-key-rule.js +48 -0
  521. package/dist/service/sns/filter/sim-sns-filter-key-rule.js.map +1 -0
  522. package/dist/service/sns/filter/sim-sns-filter-matches.d.ts +9 -0
  523. package/dist/service/sns/filter/sim-sns-filter-matches.d.ts.map +1 -0
  524. package/dist/service/sns/filter/sim-sns-filter-matches.js +40 -0
  525. package/dist/service/sns/filter/sim-sns-filter-matches.js.map +1 -0
  526. package/dist/service/sns/filter/sim-sns-filter-operators.d.ts +22 -0
  527. package/dist/service/sns/filter/sim-sns-filter-operators.d.ts.map +1 -0
  528. package/dist/service/sns/filter/sim-sns-filter-operators.js +50 -0
  529. package/dist/service/sns/filter/sim-sns-filter-operators.js.map +1 -0
  530. package/dist/service/sns/filter/sim-sns-filter-or-eligibility.d.ts +17 -0
  531. package/dist/service/sns/filter/sim-sns-filter-or-eligibility.d.ts.map +1 -0
  532. package/dist/service/sns/filter/sim-sns-filter-or-eligibility.js +47 -0
  533. package/dist/service/sns/filter/sim-sns-filter-or-eligibility.js.map +1 -0
  534. package/dist/service/sns/filter/sim-sns-filter-policy-scope.d.ts +36 -0
  535. package/dist/service/sns/filter/sim-sns-filter-policy-scope.d.ts.map +1 -0
  536. package/dist/service/sns/filter/sim-sns-filter-policy-scope.js +67 -0
  537. package/dist/service/sns/filter/sim-sns-filter-policy-scope.js.map +1 -0
  538. package/dist/service/sns/filter/sim-sns-filter-policy.d.ts +48 -0
  539. package/dist/service/sns/filter/sim-sns-filter-policy.d.ts.map +1 -0
  540. package/dist/service/sns/filter/sim-sns-filter-policy.js +84 -0
  541. package/dist/service/sns/filter/sim-sns-filter-policy.js.map +1 -0
  542. package/dist/service/sns/filter/sim-sns-filter-refusals.d.ts +38 -0
  543. package/dist/service/sns/filter/sim-sns-filter-refusals.d.ts.map +1 -0
  544. package/dist/service/sns/filter/sim-sns-filter-refusals.js +53 -0
  545. package/dist/service/sns/filter/sim-sns-filter-refusals.js.map +1 -0
  546. package/dist/service/sns/filter/sim-sns-filter-rule.d.ts +15 -0
  547. package/dist/service/sns/filter/sim-sns-filter-rule.d.ts.map +1 -0
  548. package/dist/service/sns/filter/sim-sns-filter-rule.js +2 -0
  549. package/dist/service/sns/filter/sim-sns-filter-rule.js.map +1 -0
  550. package/dist/service/sns/filter/sim-sns-filter-rules.d.ts +27 -0
  551. package/dist/service/sns/filter/sim-sns-filter-rules.d.ts.map +1 -0
  552. package/dist/service/sns/filter/sim-sns-filter-rules.js +66 -0
  553. package/dist/service/sns/filter/sim-sns-filter-rules.js.map +1 -0
  554. package/dist/service/sns/filter/sim-sns-filter-subject.d.ts +31 -0
  555. package/dist/service/sns/filter/sim-sns-filter-subject.d.ts.map +1 -0
  556. package/dist/service/sns/filter/sim-sns-filter-subject.js +2 -0
  557. package/dist/service/sns/filter/sim-sns-filter-subject.js.map +1 -0
  558. package/dist/service/sns/filter/sim-sns-filter-value.d.ts +45 -0
  559. package/dist/service/sns/filter/sim-sns-filter-value.d.ts.map +1 -0
  560. package/dist/service/sns/filter/sim-sns-filter-value.js +83 -0
  561. package/dist/service/sns/filter/sim-sns-filter-value.js.map +1 -0
  562. package/dist/service/sns/filter/sim-sns-json-filter-values.d.ts +12 -0
  563. package/dist/service/sns/filter/sim-sns-json-filter-values.d.ts.map +1 -0
  564. package/dist/service/sns/filter/sim-sns-json-filter-values.js +25 -0
  565. package/dist/service/sns/filter/sim-sns-json-filter-values.js.map +1 -0
  566. package/dist/service/sns/index.d.ts +33 -0
  567. package/dist/service/sns/index.d.ts.map +1 -0
  568. package/dist/service/sns/index.js +29 -0
  569. package/dist/service/sns/index.js.map +1 -0
  570. package/dist/service/sns/message/sim-sns-message-attribute-rules.d.ts +23 -0
  571. package/dist/service/sns/message/sim-sns-message-attribute-rules.d.ts.map +1 -0
  572. package/dist/service/sns/message/sim-sns-message-attribute-rules.js +74 -0
  573. package/dist/service/sns/message/sim-sns-message-attribute-rules.js.map +1 -0
  574. package/dist/service/sns/message/sim-sns-message-attribute-value.d.ts +15 -0
  575. package/dist/service/sns/message/sim-sns-message-attribute-value.d.ts.map +1 -0
  576. package/dist/service/sns/message/sim-sns-message-attribute-value.js +2 -0
  577. package/dist/service/sns/message/sim-sns-message-attribute-value.js.map +1 -0
  578. package/dist/service/sns/message/sim-sns-message-attribute.d.ts +55 -0
  579. package/dist/service/sns/message/sim-sns-message-attribute.d.ts.map +1 -0
  580. package/dist/service/sns/message/sim-sns-message-attribute.js +78 -0
  581. package/dist/service/sns/message/sim-sns-message-attribute.js.map +1 -0
  582. package/dist/service/sns/message/sim-sns-message-attributes.d.ts +71 -0
  583. package/dist/service/sns/message/sim-sns-message-attributes.d.ts.map +1 -0
  584. package/dist/service/sns/message/sim-sns-message-attributes.js +80 -0
  585. package/dist/service/sns/message/sim-sns-message-attributes.js.map +1 -0
  586. package/dist/service/sns/message/sim-sns-message-body.d.ts +17 -0
  587. package/dist/service/sns/message/sim-sns-message-body.d.ts.map +1 -0
  588. package/dist/service/sns/message/sim-sns-message-body.js +26 -0
  589. package/dist/service/sns/message/sim-sns-message-body.js.map +1 -0
  590. package/dist/service/sns/message/sim-sns-message-subject.d.ts +27 -0
  591. package/dist/service/sns/message/sim-sns-message-subject.d.ts.map +1 -0
  592. package/dist/service/sns/message/sim-sns-message-subject.js +74 -0
  593. package/dist/service/sns/message/sim-sns-message-subject.js.map +1 -0
  594. package/dist/service/sns/message/sim-sns-published-message.d.ts +55 -0
  595. package/dist/service/sns/message/sim-sns-published-message.d.ts.map +1 -0
  596. package/dist/service/sns/message/sim-sns-published-message.js +69 -0
  597. package/dist/service/sns/message/sim-sns-published-message.js.map +1 -0
  598. package/dist/service/sns/sdk/sim-sns-sdk-command-router.d.ts +18 -0
  599. package/dist/service/sns/sdk/sim-sns-sdk-command-router.d.ts.map +1 -0
  600. package/dist/service/sns/sdk/sim-sns-sdk-command-router.js +76 -0
  601. package/dist/service/sns/sdk/sim-sns-sdk-command-router.js.map +1 -0
  602. package/dist/service/sns/signature/sim-sns-certificate.d.ts +30 -0
  603. package/dist/service/sns/signature/sim-sns-certificate.d.ts.map +1 -0
  604. package/dist/service/sns/signature/sim-sns-certificate.js +110 -0
  605. package/dist/service/sns/signature/sim-sns-certificate.js.map +1 -0
  606. package/dist/service/sns/signature/sim-sns-der.d.ts +40 -0
  607. package/dist/service/sns/signature/sim-sns-der.d.ts.map +1 -0
  608. package/dist/service/sns/signature/sim-sns-der.js +64 -0
  609. package/dist/service/sns/signature/sim-sns-der.js.map +1 -0
  610. package/dist/service/sns/signature/sim-sns-host.d.ts +28 -0
  611. package/dist/service/sns/signature/sim-sns-host.d.ts.map +1 -0
  612. package/dist/service/sns/signature/sim-sns-host.js +33 -0
  613. package/dist/service/sns/signature/sim-sns-host.js.map +1 -0
  614. package/dist/service/sns/signature/sim-sns-message-signer.d.ts +51 -0
  615. package/dist/service/sns/signature/sim-sns-message-signer.d.ts.map +1 -0
  616. package/dist/service/sns/signature/sim-sns-message-signer.js +60 -0
  617. package/dist/service/sns/signature/sim-sns-message-signer.js.map +1 -0
  618. package/dist/service/sns/signature/sim-sns-signing-key.d.ts +34 -0
  619. package/dist/service/sns/signature/sim-sns-signing-key.d.ts.map +1 -0
  620. package/dist/service/sns/signature/sim-sns-signing-key.js +69 -0
  621. package/dist/service/sns/signature/sim-sns-signing-key.js.map +1 -0
  622. package/dist/service/sns/sim-sns.d.ts +139 -0
  623. package/dist/service/sns/sim-sns.d.ts.map +1 -0
  624. package/dist/service/sns/sim-sns.js +188 -0
  625. package/dist/service/sns/sim-sns.js.map +1 -0
  626. package/dist/service/sns/subscription/sim-sns-function-endpoint-arn.d.ts +31 -0
  627. package/dist/service/sns/subscription/sim-sns-function-endpoint-arn.d.ts.map +1 -0
  628. package/dist/service/sns/subscription/sim-sns-function-endpoint-arn.js +54 -0
  629. package/dist/service/sns/subscription/sim-sns-function-endpoint-arn.js.map +1 -0
  630. package/dist/service/sns/subscription/sim-sns-queue-endpoint-arn.d.ts +30 -0
  631. package/dist/service/sns/subscription/sim-sns-queue-endpoint-arn.d.ts.map +1 -0
  632. package/dist/service/sns/subscription/sim-sns-queue-endpoint-arn.js +78 -0
  633. package/dist/service/sns/subscription/sim-sns-queue-endpoint-arn.js.map +1 -0
  634. package/dist/service/sns/subscription/sim-sns-requested-subscription-attributes.d.ts +28 -0
  635. package/dist/service/sns/subscription/sim-sns-requested-subscription-attributes.d.ts.map +1 -0
  636. package/dist/service/sns/subscription/sim-sns-requested-subscription-attributes.js +43 -0
  637. package/dist/service/sns/subscription/sim-sns-requested-subscription-attributes.js.map +1 -0
  638. package/dist/service/sns/subscription/sim-sns-subscription-arn.d.ts +43 -0
  639. package/dist/service/sns/subscription/sim-sns-subscription-arn.d.ts.map +1 -0
  640. package/dist/service/sns/subscription/sim-sns-subscription-arn.js +70 -0
  641. package/dist/service/sns/subscription/sim-sns-subscription-arn.js.map +1 -0
  642. package/dist/service/sns/subscription/sim-sns-subscription-attribute-changes.d.ts +20 -0
  643. package/dist/service/sns/subscription/sim-sns-subscription-attribute-changes.d.ts.map +1 -0
  644. package/dist/service/sns/subscription/sim-sns-subscription-attribute-changes.js +52 -0
  645. package/dist/service/sns/subscription/sim-sns-subscription-attribute-changes.js.map +1 -0
  646. package/dist/service/sns/subscription/sim-sns-subscription-attribute-names.d.ts +26 -0
  647. package/dist/service/sns/subscription/sim-sns-subscription-attribute-names.d.ts.map +1 -0
  648. package/dist/service/sns/subscription/sim-sns-subscription-attribute-names.js +64 -0
  649. package/dist/service/sns/subscription/sim-sns-subscription-attribute-names.js.map +1 -0
  650. package/dist/service/sns/subscription/sim-sns-subscription-attributes.d.ts +47 -0
  651. package/dist/service/sns/subscription/sim-sns-subscription-attributes.d.ts.map +1 -0
  652. package/dist/service/sns/subscription/sim-sns-subscription-attributes.js +67 -0
  653. package/dist/service/sns/subscription/sim-sns-subscription-attributes.js.map +1 -0
  654. package/dist/service/sns/subscription/sim-sns-subscription-endpoint.d.ts +26 -0
  655. package/dist/service/sns/subscription/sim-sns-subscription-endpoint.d.ts.map +1 -0
  656. package/dist/service/sns/subscription/sim-sns-subscription-endpoint.js +21 -0
  657. package/dist/service/sns/subscription/sim-sns-subscription-endpoint.js.map +1 -0
  658. package/dist/service/sns/subscription/sim-sns-subscription-protocol.d.ts +33 -0
  659. package/dist/service/sns/subscription/sim-sns-subscription-protocol.d.ts.map +1 -0
  660. package/dist/service/sns/subscription/sim-sns-subscription-protocol.js +63 -0
  661. package/dist/service/sns/subscription/sim-sns-subscription-protocol.js.map +1 -0
  662. package/dist/service/sns/subscription/sim-sns-subscription-store.d.ts +71 -0
  663. package/dist/service/sns/subscription/sim-sns-subscription-store.d.ts.map +1 -0
  664. package/dist/service/sns/subscription/sim-sns-subscription-store.js +88 -0
  665. package/dist/service/sns/subscription/sim-sns-subscription-store.js.map +1 -0
  666. package/dist/service/sns/subscription/sim-sns-subscription.d.ts +72 -0
  667. package/dist/service/sns/subscription/sim-sns-subscription.d.ts.map +1 -0
  668. package/dist/service/sns/subscription/sim-sns-subscription.js +116 -0
  669. package/dist/service/sns/subscription/sim-sns-subscription.js.map +1 -0
  670. package/dist/service/sns/topic/sim-sns-topic-arn.d.ts +52 -0
  671. package/dist/service/sns/topic/sim-sns-topic-arn.d.ts.map +1 -0
  672. package/dist/service/sns/topic/sim-sns-topic-arn.js +71 -0
  673. package/dist/service/sns/topic/sim-sns-topic-arn.js.map +1 -0
  674. package/dist/service/sns/topic/sim-sns-topic-attribute-names.d.ts +19 -0
  675. package/dist/service/sns/topic/sim-sns-topic-attribute-names.d.ts.map +1 -0
  676. package/dist/service/sns/topic/sim-sns-topic-attribute-names.js +79 -0
  677. package/dist/service/sns/topic/sim-sns-topic-attribute-names.js.map +1 -0
  678. package/dist/service/sns/topic/sim-sns-topic-attributes.d.ts +56 -0
  679. package/dist/service/sns/topic/sim-sns-topic-attributes.d.ts.map +1 -0
  680. package/dist/service/sns/topic/sim-sns-topic-attributes.js +85 -0
  681. package/dist/service/sns/topic/sim-sns-topic-attributes.js.map +1 -0
  682. package/dist/service/sns/topic/sim-sns-topic-name.d.ts +21 -0
  683. package/dist/service/sns/topic/sim-sns-topic-name.d.ts.map +1 -0
  684. package/dist/service/sns/topic/sim-sns-topic-name.js +48 -0
  685. package/dist/service/sns/topic/sim-sns-topic-name.js.map +1 -0
  686. package/dist/service/sns/topic/sim-sns-topic-policy.d.ts +23 -0
  687. package/dist/service/sns/topic/sim-sns-topic-policy.d.ts.map +1 -0
  688. package/dist/service/sns/topic/sim-sns-topic-policy.js +59 -0
  689. package/dist/service/sns/topic/sim-sns-topic-policy.js.map +1 -0
  690. package/dist/service/sns/topic/sim-sns-topic-store.d.ts +35 -0
  691. package/dist/service/sns/topic/sim-sns-topic-store.d.ts.map +1 -0
  692. package/dist/service/sns/topic/sim-sns-topic-store.js +50 -0
  693. package/dist/service/sns/topic/sim-sns-topic-store.js.map +1 -0
  694. package/dist/service/sns/topic/sim-sns-topic.d.ts +48 -0
  695. package/dist/service/sns/topic/sim-sns-topic.d.ts.map +1 -0
  696. package/dist/service/sns/topic/sim-sns-topic.js +80 -0
  697. package/dist/service/sns/topic/sim-sns-topic.js.map +1 -0
  698. package/dist/service/sqs/command/authorize/sim-sqs-authorizer.d.ts +3 -6
  699. package/dist/service/sqs/command/authorize/sim-sqs-authorizer.d.ts.map +1 -1
  700. package/dist/service/sqs/command/authorize/sim-sqs-authorizer.js +13 -7
  701. package/dist/service/sqs/command/authorize/sim-sqs-authorizer.js.map +1 -1
  702. package/dist/service/sqs/index.d.ts +1 -1
  703. package/dist/service/sqs/index.d.ts.map +1 -1
  704. package/dist/service/sqs/index.js +1 -1
  705. package/dist/service/sqs/index.js.map +1 -1
  706. package/dist/service/sqs/queue/sim-sqs-queue-arn.d.ts +0 -7
  707. package/dist/service/sqs/queue/sim-sqs-queue-arn.d.ts.map +1 -1
  708. package/dist/service/sqs/queue/sim-sqs-queue-arn.js +0 -9
  709. package/dist/service/sqs/queue/sim-sqs-queue-arn.js.map +1 -1
  710. package/dist/service/sqs/sim-sqs.js +1 -1
  711. package/dist/service/sqs/sim-sqs.js.map +1 -1
  712. package/package.json +7 -1
@@ -0,0 +1,88 @@
1
+ import { simCfnSnsAttributeValue } from "../sim-cfn-sns-attribute-value.js";
2
+ import { simCfnSnsResourceError } from "../sim-cfn-sns-resource-error.js";
3
+ import { snsSubscriptionResourceType } from "../sim-cfn-sns-resource-types.js";
4
+ import { attributePropertyNames, subscriptionEndpointPropertyName, subscriptionPropertyNames, subscriptionProtocolPropertyName, subscriptionTopicArnPropertyName, unsimulatedPropertyReasons, } from "./sim-cfn-sns-subscription-property-names.js";
5
+ /**
6
+ * Reads AWS::SNS::Subscription CloudFormation properties into the shape
7
+ * Subscribe takes.
8
+ *
9
+ * The three settings this simulation acts on, `RawMessageDelivery`, the filter
10
+ * policy and its scope, are attributes of the same name, so they go through as
11
+ * attributes and are validated exactly as an SDK caller's are. A filter policy
12
+ * is written as an object in a template and set as a JSON string through the
13
+ * API, which is the only conversion needed on the way.
14
+ */
15
+ export class SimCfnSnsSubscriptionProperties {
16
+ resource;
17
+ properties;
18
+ constructor(properties) {
19
+ this.resource = properties.resource;
20
+ this.properties = new Map(Object.entries(properties.properties));
21
+ }
22
+ /**
23
+ * The Subscribe request the Resource describes.
24
+ */
25
+ input() {
26
+ return {
27
+ TopicArn: this.requiredString(subscriptionTopicArnPropertyName),
28
+ Protocol: this.requiredString(subscriptionProtocolPropertyName),
29
+ Endpoint: this.endpoint(),
30
+ Attributes: this.attributes(),
31
+ };
32
+ }
33
+ /**
34
+ * What the subscription delivers to.
35
+ *
36
+ * Real CloudFormation leaves it optional, because a protocol such as `sms`
37
+ * carries the destination elsewhere. Neither protocol simulated here is one
38
+ * of those, so an absent endpoint is refused by Subscribe rather than here.
39
+ */
40
+ endpoint() {
41
+ const endpoint = this.properties.get(subscriptionEndpointPropertyName);
42
+ if (endpoint === undefined) {
43
+ return undefined;
44
+ }
45
+ if (typeof endpoint !== "string") {
46
+ throw this.propertyError(`${subscriptionEndpointPropertyName} must be a string`);
47
+ }
48
+ return endpoint;
49
+ }
50
+ attributes() {
51
+ return Object.fromEntries(this.properties
52
+ .entries()
53
+ .filter(([name]) => this.isAttributeProperty(name))
54
+ .map(([name, value]) => [name, simCfnSnsAttributeValue(value)]));
55
+ }
56
+ /**
57
+ * Whether a property is handed to Subscribe as an attribute.
58
+ *
59
+ * The properties naming the subscription itself are not. Anything else with
60
+ * no attribute behind it is refused, rather than deployed as a subscription
61
+ * quietly missing whatever it asked for.
62
+ */
63
+ isAttributeProperty(name) {
64
+ if (subscriptionPropertyNames.has(name)) {
65
+ return false;
66
+ }
67
+ if (attributePropertyNames.has(name)) {
68
+ return true;
69
+ }
70
+ const unsimulatedReason = unsimulatedPropertyReasons.get(name);
71
+ if (unsimulatedReason !== undefined) {
72
+ throw this.propertyError(`${name} is a real ${snsSubscriptionResourceType} property simulated ` +
73
+ `SNS does not act on: ${unsimulatedReason}`);
74
+ }
75
+ throw this.propertyError(`${name} is not a property of ${snsSubscriptionResourceType}`);
76
+ }
77
+ requiredString(name) {
78
+ const value = this.properties.get(name);
79
+ if (typeof value !== "string") {
80
+ throw this.propertyError(`${name} is required and must be a string`);
81
+ }
82
+ return value;
83
+ }
84
+ propertyError(reason) {
85
+ return simCfnSnsResourceError(snsSubscriptionResourceType, this.resource.logicalId, reason);
86
+ }
87
+ }
88
+ //# sourceMappingURL=sim-cfn-sns-subscription-properties.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-sns-subscription-properties.js","sourceRoot":"","sources":["../../../../../src/service/sns/cfn/subscription/sim-cfn-sns-subscription-properties.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EACL,sBAAsB,EACtB,gCAAgC,EAChC,yBAAyB,EACzB,gCAAgC,EAChC,gCAAgC,EAChC,0BAA0B,GAC3B,MAAM,8CAA8C,CAAC;AAOtD;;;;;;;;;GASG;AACH,MAAM,OAAO,+BAA+B;IACzB,QAAQ,CAAiB;IACzB,UAAU,CAA2C;IAEtE,YAAY,UAAqD;QAC/D,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;QACpC,IAAI,CAAC,UAAU,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;IACnE,CAAC;IAED;;OAEG;IACH,KAAK;QACH,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,gCAAgC,CAAC;YAC/D,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,gCAAgC,CAAC;YAC/D,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;YACzB,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE;SAC9B,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACK,QAAQ;QACd,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;QAEvE,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACjC,MAAM,IAAI,CAAC,aAAa,CACtB,GAAG,gCAAgC,mBAAmB,CACvD,CAAC;QACJ,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,UAAU;QAChB,OAAO,MAAM,CAAC,WAAW,CACvB,IAAI,CAAC,UAAU;aACZ,OAAO,EAAE;aACT,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;aAClD,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,uBAAuB,CAAC,KAAK,CAAC,CAAC,CAAC,CAClE,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACK,mBAAmB,CAAC,IAAY;QACtC,IAAI,yBAAyB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACxC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,sBAAsB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,iBAAiB,GAAG,0BAA0B,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAE/D,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;YACpC,MAAM,IAAI,CAAC,aAAa,CACtB,GAAG,IAAI,cAAc,2BAA2B,sBAAsB;gBACpE,wBAAwB,iBAAiB,EAAE,CAC9C,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,CAAC,aAAa,CACtB,GAAG,IAAI,yBAAyB,2BAA2B,EAAE,CAC9D,CAAC;IACJ,CAAC;IAEO,cAAc,CAAC,IAAY;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAExC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,IAAI,mCAAmC,CAAC,CAAC;QACvE,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,aAAa,CAAC,MAAc;QAClC,OAAO,sBAAsB,CAC3B,2BAA2B,EAC3B,IAAI,CAAC,QAAQ,CAAC,SAAS,EACvB,MAAM,CACP,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * The topic the subscription belongs to, as an ARN.
3
+ */
4
+ export declare const subscriptionTopicArnPropertyName = "TopicArn";
5
+ /**
6
+ * How the subscription is delivered to.
7
+ */
8
+ export declare const subscriptionProtocolPropertyName = "Protocol";
9
+ /**
10
+ * What the subscription is delivered to, which is a queue ARN or a function
11
+ * ARN for the two protocols simulated.
12
+ */
13
+ export declare const subscriptionEndpointPropertyName = "Endpoint";
14
+ /**
15
+ * The three properties naming the subscription itself, which the
16
+ * CloudFormation layer reads rather than handing on as attributes.
17
+ */
18
+ export declare const subscriptionPropertyNames: ReadonlySet<string>;
19
+ /**
20
+ * The AWS::SNS::Subscription properties carrying a subscription attribute of
21
+ * the same name.
22
+ *
23
+ * CloudFormation names these exactly as the SNS API names the attributes, so
24
+ * they are handed to Subscribe rather than read here. `RawMessageDelivery`, the
25
+ * filter policy and the scope it is read under are the three simulated SNS
26
+ * acts on, and a template setting them gets the same validation an SDK caller
27
+ * setting them gets. The rest are refused by SNS with the reason each one is
28
+ * missing.
29
+ */
30
+ export declare const attributePropertyNames: ReadonlySet<string>;
31
+ /**
32
+ * The real AWS::SNS::Subscription properties this simulation has no behaviour
33
+ * for and no subscription attribute to hand them to.
34
+ */
35
+ export declare const unsimulatedPropertyReasons: ReadonlyMap<string, string>;
36
+ //# sourceMappingURL=sim-cfn-sns-subscription-property-names.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-sns-subscription-property-names.d.ts","sourceRoot":"","sources":["../../../../../src/service/sns/cfn/subscription/sim-cfn-sns-subscription-property-names.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,gCAAgC,aAAa,CAAC;AAE3D;;GAEG;AACH,eAAO,MAAM,gCAAgC,aAAa,CAAC;AAE3D;;;GAGG;AACH,eAAO,MAAM,gCAAgC,aAAa,CAAC;AAE3D;;;GAGG;AACH,eAAO,MAAM,yBAAyB,EAAE,WAAW,CAAC,MAAM,CAIxD,CAAC;AAEH;;;;;;;;;;GAUG;AACH,eAAO,MAAM,sBAAsB,EAAE,WAAW,CAAC,MAAM,CAQrD,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,0BAA0B,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAOjE,CAAC"}
@@ -0,0 +1,55 @@
1
+ /**
2
+ * The topic the subscription belongs to, as an ARN.
3
+ */
4
+ export const subscriptionTopicArnPropertyName = "TopicArn";
5
+ /**
6
+ * How the subscription is delivered to.
7
+ */
8
+ export const subscriptionProtocolPropertyName = "Protocol";
9
+ /**
10
+ * What the subscription is delivered to, which is a queue ARN or a function
11
+ * ARN for the two protocols simulated.
12
+ */
13
+ export const subscriptionEndpointPropertyName = "Endpoint";
14
+ /**
15
+ * The three properties naming the subscription itself, which the
16
+ * CloudFormation layer reads rather than handing on as attributes.
17
+ */
18
+ export const subscriptionPropertyNames = new Set([
19
+ subscriptionTopicArnPropertyName,
20
+ subscriptionProtocolPropertyName,
21
+ subscriptionEndpointPropertyName,
22
+ ]);
23
+ /**
24
+ * The AWS::SNS::Subscription properties carrying a subscription attribute of
25
+ * the same name.
26
+ *
27
+ * CloudFormation names these exactly as the SNS API names the attributes, so
28
+ * they are handed to Subscribe rather than read here. `RawMessageDelivery`, the
29
+ * filter policy and the scope it is read under are the three simulated SNS
30
+ * acts on, and a template setting them gets the same validation an SDK caller
31
+ * setting them gets. The rest are refused by SNS with the reason each one is
32
+ * missing.
33
+ */
34
+ export const attributePropertyNames = new Set([
35
+ "DeliveryPolicy",
36
+ "FilterPolicy",
37
+ "FilterPolicyScope",
38
+ "RawMessageDelivery",
39
+ "RedrivePolicy",
40
+ "ReplayPolicy",
41
+ "SubscriptionRoleArn",
42
+ ]);
43
+ /**
44
+ * The real AWS::SNS::Subscription properties this simulation has no behaviour
45
+ * for and no subscription attribute to hand them to.
46
+ */
47
+ export const unsimulatedPropertyReasons = new Map([
48
+ [
49
+ "Region",
50
+ "a subscription is created in the Region its topic ARN names, and " +
51
+ "simulated SNS refuses a topic ARN naming another Region, so there is " +
52
+ "nothing for this to change",
53
+ ],
54
+ ]);
55
+ //# sourceMappingURL=sim-cfn-sns-subscription-property-names.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-sns-subscription-property-names.js","sourceRoot":"","sources":["../../../../../src/service/sns/cfn/subscription/sim-cfn-sns-subscription-property-names.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,UAAU,CAAC;AAE3D;;GAEG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,UAAU,CAAC;AAE3D;;;GAGG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,UAAU,CAAC;AAE3D;;;GAGG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAwB,IAAI,GAAG,CAAC;IACpE,gCAAgC;IAChC,gCAAgC;IAChC,gCAAgC;CACjC,CAAC,CAAC;AAEH;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAwB,IAAI,GAAG,CAAC;IACjE,gBAAgB;IAChB,cAAc;IACd,mBAAmB;IACnB,oBAAoB;IACpB,eAAe;IACf,cAAc;IACd,qBAAqB;CACtB,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAgC,IAAI,GAAG,CAAC;IAC7E;QACE,QAAQ;QACR,mEAAmE;YACjE,uEAAuE;YACvE,4BAA4B;KAC/B;CACF,CAAC,CAAC"}
@@ -0,0 +1,23 @@
1
+ import type { SimCfnTemplateValue } from "../../../cloudformation/template/value/sim-cfn-template-value.js";
2
+ /**
3
+ * One entry of the `Subscription` list on an AWS::SNS::Topic.
4
+ *
5
+ * It carries the protocol and the endpoint and nothing else, which is all real
6
+ * CloudFormation lets one carry. A subscription declared this way therefore
7
+ * cannot have a filter policy or raw message delivery, and an entry asking for
8
+ * either is refused rather than deployed without it. That is what the separate
9
+ * AWS::SNS::Subscription Resource is for.
10
+ */
11
+ export interface SimCfnSnsInlineSubscription {
12
+ readonly protocol: string;
13
+ readonly endpoint: string;
14
+ }
15
+ /**
16
+ * Read the `Subscription` property of an AWS::SNS::Topic.
17
+ *
18
+ * CDK emits a separate AWS::SNS::Subscription Resource for every subscription,
19
+ * so this list is the hand-written template's way of writing the same thing.
20
+ * Both end up going through Subscribe.
21
+ */
22
+ export declare function simCfnSnsInlineSubscriptions(logicalId: string, value: SimCfnTemplateValue | undefined): readonly SimCfnSnsInlineSubscription[];
23
+ //# sourceMappingURL=sim-cfn-sns-inline-subscriptions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-sns-inline-subscriptions.d.ts","sourceRoot":"","sources":["../../../../../src/service/sns/cfn/topic/sim-cfn-sns-inline-subscriptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kEAAkE,CAAC;AAS5G;;;;;;;;GAQG;AACH,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED;;;;;;GAMG;AACH,wBAAgB,4BAA4B,CAC1C,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,mBAAmB,GAAG,SAAS,GACrC,SAAS,2BAA2B,EAAE,CAaxC"}
@@ -0,0 +1,49 @@
1
+ import { simCfnSnsResourceError } from "../sim-cfn-sns-resource-error.js";
2
+ import { snsTopicResourceType } from "../sim-cfn-sns-resource-types.js";
3
+ import { topicSubscriptionPropertyName } from "./sim-cfn-sns-topic-property-names.js";
4
+ const protocolKey = "Protocol";
5
+ const endpointKey = "Endpoint";
6
+ /**
7
+ * Read the `Subscription` property of an AWS::SNS::Topic.
8
+ *
9
+ * CDK emits a separate AWS::SNS::Subscription Resource for every subscription,
10
+ * so this list is the hand-written template's way of writing the same thing.
11
+ * Both end up going through Subscribe.
12
+ */
13
+ export function simCfnSnsInlineSubscriptions(logicalId, value) {
14
+ if (value === undefined) {
15
+ return [];
16
+ }
17
+ if (!Array.isArray(value)) {
18
+ throw topicPropertyError(logicalId, `${topicSubscriptionPropertyName} must be a list of subscriptions`);
19
+ }
20
+ return value.map((entry) => inlineSubscription(logicalId, entry));
21
+ }
22
+ function inlineSubscription(logicalId, entry) {
23
+ if (entry === null || typeof entry !== "object" || Array.isArray(entry)) {
24
+ throw topicPropertyError(logicalId, `each entry of ${topicSubscriptionPropertyName} must be an object with ` +
25
+ `a Protocol and an Endpoint`);
26
+ }
27
+ const fields = new Map(Object.entries(entry));
28
+ for (const name of fields.keys()) {
29
+ if (name !== protocolKey && name !== endpointKey) {
30
+ throw topicPropertyError(logicalId, `an entry of ${topicSubscriptionPropertyName} carries ${name}, and ` +
31
+ `the only things one can carry are ${protocolKey} and ${endpointKey}`);
32
+ }
33
+ }
34
+ return {
35
+ protocol: requiredString(logicalId, fields.get(protocolKey), protocolKey),
36
+ endpoint: requiredString(logicalId, fields.get(endpointKey), endpointKey),
37
+ };
38
+ }
39
+ function requiredString(logicalId, value, name) {
40
+ if (typeof value !== "string") {
41
+ throw topicPropertyError(logicalId, `each entry of ${topicSubscriptionPropertyName} requires ${name} to be a ` +
42
+ `string`);
43
+ }
44
+ return value;
45
+ }
46
+ function topicPropertyError(logicalId, reason) {
47
+ return simCfnSnsResourceError(snsTopicResourceType, logicalId, reason);
48
+ }
49
+ //# sourceMappingURL=sim-cfn-sns-inline-subscriptions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-sns-inline-subscriptions.js","sourceRoot":"","sources":["../../../../../src/service/sns/cfn/topic/sim-cfn-sns-inline-subscriptions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,6BAA6B,EAAE,MAAM,uCAAuC,CAAC;AAEtF,MAAM,WAAW,GAAG,UAAU,CAAC;AAE/B,MAAM,WAAW,GAAG,UAAU,CAAC;AAgB/B;;;;;;GAMG;AACH,MAAM,UAAU,4BAA4B,CAC1C,SAAiB,EACjB,KAAsC;IAEtC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,kBAAkB,CACtB,SAAS,EACT,GAAG,6BAA6B,kCAAkC,CACnE,CAAC;IACJ,CAAC;IAED,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,kBAAkB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;AACpE,CAAC;AAED,SAAS,kBAAkB,CACzB,SAAiB,EACjB,KAA0B;IAE1B,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACxE,MAAM,kBAAkB,CACtB,SAAS,EACT,iBAAiB,6BAA6B,0BAA0B;YACtE,4BAA4B,CAC/B,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IAE9C,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;QACjC,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;YACjD,MAAM,kBAAkB,CACtB,SAAS,EACT,eAAe,6BAA6B,YAAY,IAAI,QAAQ;gBAClE,qCAAqC,WAAW,QAAQ,WAAW,EAAE,CACxE,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,cAAc,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC;QACzE,QAAQ,EAAE,cAAc,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC;KAC1E,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CACrB,SAAiB,EACjB,KAAsC,EACtC,IAAY;IAEZ,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,kBAAkB,CACtB,SAAS,EACT,iBAAiB,6BAA6B,aAAa,IAAI,WAAW;YACxE,QAAQ,CACX,CAAC;IACJ,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,kBAAkB,CAAC,SAAiB,EAAE,MAAc;IAC3D,OAAO,sBAAsB,CAAC,oBAAoB,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;AACzE,CAAC"}
@@ -0,0 +1,34 @@
1
+ import type { SimCfnResource } from "../../../cloudformation/resource/sim-cfn-resource.js";
2
+ import type { SimCfnTemplateValueRecord } from "../../../cloudformation/template/value/sim-cfn-template-value.js";
3
+ import type { SimSns } from "../../sim-sns.js";
4
+ import type { SimSnsTopic } from "../../topic/sim-sns-topic.js";
5
+ interface SimCfnSnsTopicCreatorProperties {
6
+ readonly sns: SimSns;
7
+ }
8
+ /**
9
+ * Creates simulated topics from AWS::SNS::Topic Resources.
10
+ *
11
+ * The topic is created through the ordinary CreateTopic command rather than
12
+ * constructed directly, so a topic a template deployed is the same thing an SDK
13
+ * caller would have got: the same name validation, the same attributes, the
14
+ * same refusals for what this simulation does not model.
15
+ */
16
+ export declare class SimCfnSnsTopicCreator {
17
+ private readonly sns;
18
+ constructor(properties: SimCfnSnsTopicCreatorProperties);
19
+ /**
20
+ * Create a topic from an AWS::SNS::Topic Resource.
21
+ */
22
+ create(resource: SimCfnResource, properties: SimCfnTemplateValueRecord): Promise<SimSnsTopic>;
23
+ /**
24
+ * Subscribe everything the topic's own `Subscription` list declares.
25
+ *
26
+ * They go through Subscribe one after another rather than together, so a
27
+ * later entry naming an endpoint its protocol cannot reach fails the Resource
28
+ * with the earlier ones already subscribed, which is what a template asking
29
+ * for two subscriptions and getting one has to look like.
30
+ */
31
+ private subscribeInline;
32
+ }
33
+ export {};
34
+ //# sourceMappingURL=sim-cfn-sns-topic-creator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-sns-topic-creator.d.ts","sourceRoot":"","sources":["../../../../../src/service/sns/cfn/topic/sim-cfn-sns-topic-creator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kEAAkE,CAAC;AAClH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAMhE,UAAU,+BAA+B;IACvC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;GAOG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAE7B,YAAY,UAAU,EAAE,+BAA+B,EAEtD;IAED;;OAEG;IACG,MAAM,CACV,QAAQ,EAAE,cAAc,EACxB,UAAU,EAAE,yBAAyB,GACpC,OAAO,CAAC,WAAW,CAAC,CA4BtB;IAED;;;;;;;OAOG;YACW,eAAe;CAe9B"}
@@ -0,0 +1,60 @@
1
+ import { assertDefined } from "../../../../util/type-guard/defined.js";
2
+ import { simCfnSnsResourceCreation } from "../sim-cfn-sns-resource-error.js";
3
+ import { snsTopicResourceType } from "../sim-cfn-sns-resource-types.js";
4
+ import { SimCfnSnsTopicProperties } from "./sim-cfn-sns-topic-properties.js";
5
+ /**
6
+ * Creates simulated topics from AWS::SNS::Topic Resources.
7
+ *
8
+ * The topic is created through the ordinary CreateTopic command rather than
9
+ * constructed directly, so a topic a template deployed is the same thing an SDK
10
+ * caller would have got: the same name validation, the same attributes, the
11
+ * same refusals for what this simulation does not model.
12
+ */
13
+ export class SimCfnSnsTopicCreator {
14
+ sns;
15
+ constructor(properties) {
16
+ this.sns = properties.sns;
17
+ }
18
+ /**
19
+ * Create a topic from an AWS::SNS::Topic Resource.
20
+ */
21
+ async create(resource, properties) {
22
+ const topicProperties = new SimCfnSnsTopicProperties({
23
+ resource,
24
+ properties,
25
+ });
26
+ const name = topicProperties.name();
27
+ const attributes = topicProperties.attributes();
28
+ const inline = topicProperties.inlineSubscriptions();
29
+ return simCfnSnsResourceCreation(snsTopicResourceType, resource.logicalId, async () => {
30
+ await this.sns.createTopic({
31
+ input: { Name: name, Attributes: attributes },
32
+ });
33
+ const topic = this.sns.findTopic(name);
34
+ assertDefined(topic, `sim SNS topic ${name} after CloudFormation creation`);
35
+ await this.subscribeInline(topic, inline);
36
+ return topic;
37
+ });
38
+ }
39
+ /**
40
+ * Subscribe everything the topic's own `Subscription` list declares.
41
+ *
42
+ * They go through Subscribe one after another rather than together, so a
43
+ * later entry naming an endpoint its protocol cannot reach fails the Resource
44
+ * with the earlier ones already subscribed, which is what a template asking
45
+ * for two subscriptions and getting one has to look like.
46
+ */
47
+ async subscribeInline(topic, subscriptions) {
48
+ for (const subscription of subscriptions) {
49
+ // eslint-disable-next-line no-await-in-loop -- one entry at a time, so a refused entry leaves the earlier ones subscribed
50
+ await this.sns.subscribe({
51
+ input: {
52
+ TopicArn: topic.arn.value,
53
+ Protocol: subscription.protocol,
54
+ Endpoint: subscription.endpoint,
55
+ },
56
+ });
57
+ }
58
+ }
59
+ }
60
+ //# sourceMappingURL=sim-cfn-sns-topic-creator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-sns-topic-creator.js","sourceRoot":"","sources":["../../../../../src/service/sns/cfn/topic/sim-cfn-sns-topic-creator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AAKvE,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAExE,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAM7E;;;;;;;GAOG;AACH,MAAM,OAAO,qBAAqB;IACf,GAAG,CAAS;IAE7B,YAAY,UAA2C;QACrD,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACV,QAAwB,EACxB,UAAqC;QAErC,MAAM,eAAe,GAAG,IAAI,wBAAwB,CAAC;YACnD,QAAQ;YACR,UAAU;SACX,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,EAAE,CAAC;QACpC,MAAM,UAAU,GAAG,eAAe,CAAC,UAAU,EAAE,CAAC;QAChD,MAAM,MAAM,GAAG,eAAe,CAAC,mBAAmB,EAAE,CAAC;QAErD,OAAO,yBAAyB,CAC9B,oBAAoB,EACpB,QAAQ,CAAC,SAAS,EAClB,KAAK,IAAI,EAAE;YACT,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC;gBACzB,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE;aAC9C,CAAC,CAAC;YAEH,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YACvC,aAAa,CACX,KAAK,EACL,iBAAiB,IAAI,gCAAgC,CACtD,CAAC;YAEF,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YAE1C,OAAO,KAAK,CAAC;QACf,CAAC,CACF,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,eAAe,CAC3B,KAAkB,EAClB,aAAqD;QAErD,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;YACzC,0HAA0H;YAC1H,MAAM,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC;gBACvB,KAAK,EAAE;oBACL,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK;oBACzB,QAAQ,EAAE,YAAY,CAAC,QAAQ;oBAC/B,QAAQ,EAAE,YAAY,CAAC,QAAQ;iBAChC;aACF,CAAC,CAAC;QACL,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,22 @@
1
+ interface SimCfnSnsTopicNameProperties {
2
+ readonly stackName: string | undefined;
3
+ readonly logicalId: string;
4
+ }
5
+ /**
6
+ * The name CloudFormation gives a topic whose template does not name it.
7
+ *
8
+ * A topic name is at most 256 characters, so a long stack name and logical ID
9
+ * together are trimmed to fit. How a generated name is put together and trimmed
10
+ * is the same for every service, and lives in
11
+ * {@link SimCfnGeneratedResourceName}.
12
+ */
13
+ export declare class SimCfnSnsTopicName {
14
+ private readonly generated;
15
+ constructor(properties: SimCfnSnsTopicNameProperties);
16
+ /**
17
+ * The generated topic name.
18
+ */
19
+ get value(): string;
20
+ }
21
+ export {};
22
+ //# sourceMappingURL=sim-cfn-sns-topic-name.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-sns-topic-name.d.ts","sourceRoot":"","sources":["../../../../../src/service/sns/cfn/topic/sim-cfn-sns-topic-name.ts"],"names":[],"mappings":"AAIA,UAAU,4BAA4B;IACpC,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;;GAOG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA8B;IAExD,YAAY,UAAU,EAAE,4BAA4B,EAMnD;IAED;;OAEG;IACH,IAAI,KAAK,IAAI,MAAM,CAElB;CACF"}
@@ -0,0 +1,27 @@
1
+ import { SimCfnGeneratedResourceName } from "../../../cloudformation/resource/name/sim-cfn-generated-resource-name.js";
2
+ const maximumNameLength = 256;
3
+ /**
4
+ * The name CloudFormation gives a topic whose template does not name it.
5
+ *
6
+ * A topic name is at most 256 characters, so a long stack name and logical ID
7
+ * together are trimmed to fit. How a generated name is put together and trimmed
8
+ * is the same for every service, and lives in
9
+ * {@link SimCfnGeneratedResourceName}.
10
+ */
11
+ export class SimCfnSnsTopicName {
12
+ generated;
13
+ constructor(properties) {
14
+ this.generated = new SimCfnGeneratedResourceName({
15
+ stackName: properties.stackName,
16
+ logicalId: properties.logicalId,
17
+ maximumLength: maximumNameLength,
18
+ });
19
+ }
20
+ /**
21
+ * The generated topic name.
22
+ */
23
+ get value() {
24
+ return this.generated.value;
25
+ }
26
+ }
27
+ //# sourceMappingURL=sim-cfn-sns-topic-name.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-sns-topic-name.js","sourceRoot":"","sources":["../../../../../src/service/sns/cfn/topic/sim-cfn-sns-topic-name.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,0EAA0E,CAAC;AAEvH,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAO9B;;;;;;;GAOG;AACH,MAAM,OAAO,kBAAkB;IACZ,SAAS,CAA8B;IAExD,YAAY,UAAwC;QAClD,IAAI,CAAC,SAAS,GAAG,IAAI,2BAA2B,CAAC;YAC/C,SAAS,EAAE,UAAU,CAAC,SAAS;YAC/B,SAAS,EAAE,UAAU,CAAC,SAAS;YAC/B,aAAa,EAAE,iBAAiB;SACjC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;IAC9B,CAAC;CACF"}
@@ -0,0 +1,58 @@
1
+ import type { SimCfnResource } from "../../../cloudformation/resource/sim-cfn-resource.js";
2
+ import type { SimCfnTemplateValueRecord } from "../../../cloudformation/template/value/sim-cfn-template-value.js";
3
+ import type { SimSnsTopicAttributeInput } from "../../topic/sim-sns-topic-attributes.js";
4
+ import { type SimCfnSnsInlineSubscription } from "./sim-cfn-sns-inline-subscriptions.js";
5
+ interface SimCfnSnsTopicPropertiesProperties {
6
+ readonly resource: SimCfnResource;
7
+ readonly properties: SimCfnTemplateValueRecord;
8
+ }
9
+ /**
10
+ * Reads AWS::SNS::Topic CloudFormation properties into the shape CreateTopic
11
+ * takes.
12
+ *
13
+ * Most of what a template can say about a topic is a topic attribute of the
14
+ * same name, so those are passed straight through and simulated SNS decides
15
+ * what it will take. A property that is not an attribute, and that this
16
+ * simulation gives no behaviour to, is refused here instead. Refusing rather
17
+ * than dropping is the point: a topic deployed without its data protection
18
+ * policy looks protected to the template that wrote it and redacts nothing.
19
+ */
20
+ export declare class SimCfnSnsTopicProperties {
21
+ private readonly resource;
22
+ private readonly properties;
23
+ constructor(properties: SimCfnSnsTopicPropertiesProperties);
24
+ /**
25
+ * The topic name.
26
+ *
27
+ * An unnamed topic is named after the stack and the logical ID, as real
28
+ * CloudFormation names one.
29
+ */
30
+ name(): string;
31
+ /**
32
+ * The topic attributes the template sets, in the string form CreateTopic
33
+ * takes them in.
34
+ *
35
+ * The ones simulated SNS gives no behaviour to are passed on with the rest,
36
+ * because refusing them is SNS's own answer and it already carries the reason
37
+ * each one is missing. `FifoTopic` is the one that matters most: only
38
+ * standard topics are simulated, and a topic that appeared to accept the
39
+ * property would be a standard topic a test believed was ordered.
40
+ */
41
+ attributes(): SimSnsTopicAttributeInput;
42
+ /**
43
+ * The subscriptions the topic declares inside itself.
44
+ */
45
+ inlineSubscriptions(): readonly SimCfnSnsInlineSubscription[];
46
+ /**
47
+ * Whether a property is handed to CreateTopic as an attribute.
48
+ *
49
+ * The two properties the CloudFormation layer reads itself are not. The rest
50
+ * are refused as they are reached: the ones with a reason of their own with
51
+ * that reason, and anything else as a property AWS::SNS::Topic does not have,
52
+ * which is how real CloudFormation answers one too.
53
+ */
54
+ private isAttributeProperty;
55
+ private propertyError;
56
+ }
57
+ export {};
58
+ //# sourceMappingURL=sim-cfn-sns-topic-properties.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-sns-topic-properties.d.ts","sourceRoot":"","sources":["../../../../../src/service/sns/cfn/topic/sim-cfn-sns-topic-properties.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,KAAK,EAEV,yBAAyB,EAC1B,MAAM,kEAAkE,CAAC;AAC1E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AAIzF,OAAO,EAEL,KAAK,2BAA2B,EACjC,MAAM,uCAAuC,CAAC;AAS/C,UAAU,kCAAkC;IAC1C,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,UAAU,EAAE,yBAAyB,CAAC;CAChD;AAED;;;;;;;;;;GAUG;AACH,qBAAa,wBAAwB;IACnC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiB;IAC1C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA2C;IAEtE,YAAY,UAAU,EAAE,kCAAkC,EAGzD;IAED;;;;;OAKG;IACH,IAAI,IAAI,MAAM,CAeb;IAED;;;;;;;;;OASG;IACH,UAAU,IAAI,yBAAyB,CAOtC;IAED;;OAEG;IACH,mBAAmB,IAAI,SAAS,2BAA2B,EAAE,CAK5D;IAED;;;;;;;OAOG;IACH,OAAO,CAAC,mBAAmB;IA0B3B,OAAO,CAAC,aAAa;CAOtB"}
@@ -0,0 +1,93 @@
1
+ import { simCfnSnsAttributeValue } from "../sim-cfn-sns-attribute-value.js";
2
+ import { simCfnSnsResourceError } from "../sim-cfn-sns-resource-error.js";
3
+ import { snsTopicResourceType } from "../sim-cfn-sns-resource-types.js";
4
+ import { simCfnSnsInlineSubscriptions, } from "./sim-cfn-sns-inline-subscriptions.js";
5
+ import { SimCfnSnsTopicName } from "./sim-cfn-sns-topic-name.js";
6
+ import { attributePropertyNames, topicNamePropertyName, topicSubscriptionPropertyName, unsimulatedPropertyReasons, } from "./sim-cfn-sns-topic-property-names.js";
7
+ /**
8
+ * Reads AWS::SNS::Topic CloudFormation properties into the shape CreateTopic
9
+ * takes.
10
+ *
11
+ * Most of what a template can say about a topic is a topic attribute of the
12
+ * same name, so those are passed straight through and simulated SNS decides
13
+ * what it will take. A property that is not an attribute, and that this
14
+ * simulation gives no behaviour to, is refused here instead. Refusing rather
15
+ * than dropping is the point: a topic deployed without its data protection
16
+ * policy looks protected to the template that wrote it and redacts nothing.
17
+ */
18
+ export class SimCfnSnsTopicProperties {
19
+ resource;
20
+ properties;
21
+ constructor(properties) {
22
+ this.resource = properties.resource;
23
+ this.properties = new Map(Object.entries(properties.properties));
24
+ }
25
+ /**
26
+ * The topic name.
27
+ *
28
+ * An unnamed topic is named after the stack and the logical ID, as real
29
+ * CloudFormation names one.
30
+ */
31
+ name() {
32
+ const name = this.properties.get(topicNamePropertyName);
33
+ if (name === undefined) {
34
+ return new SimCfnSnsTopicName({
35
+ stackName: this.resource.stackName,
36
+ logicalId: this.resource.logicalId,
37
+ }).value;
38
+ }
39
+ if (typeof name !== "string") {
40
+ throw this.propertyError(`${topicNamePropertyName} must be a string`);
41
+ }
42
+ return name;
43
+ }
44
+ /**
45
+ * The topic attributes the template sets, in the string form CreateTopic
46
+ * takes them in.
47
+ *
48
+ * The ones simulated SNS gives no behaviour to are passed on with the rest,
49
+ * because refusing them is SNS's own answer and it already carries the reason
50
+ * each one is missing. `FifoTopic` is the one that matters most: only
51
+ * standard topics are simulated, and a topic that appeared to accept the
52
+ * property would be a standard topic a test believed was ordered.
53
+ */
54
+ attributes() {
55
+ return Object.fromEntries(this.properties
56
+ .entries()
57
+ .filter(([name]) => this.isAttributeProperty(name))
58
+ .map(([name, value]) => [name, simCfnSnsAttributeValue(value)]));
59
+ }
60
+ /**
61
+ * The subscriptions the topic declares inside itself.
62
+ */
63
+ inlineSubscriptions() {
64
+ return simCfnSnsInlineSubscriptions(this.resource.logicalId, this.properties.get(topicSubscriptionPropertyName));
65
+ }
66
+ /**
67
+ * Whether a property is handed to CreateTopic as an attribute.
68
+ *
69
+ * The two properties the CloudFormation layer reads itself are not. The rest
70
+ * are refused as they are reached: the ones with a reason of their own with
71
+ * that reason, and anything else as a property AWS::SNS::Topic does not have,
72
+ * which is how real CloudFormation answers one too.
73
+ */
74
+ isAttributeProperty(name) {
75
+ if (name === topicNamePropertyName ||
76
+ name === topicSubscriptionPropertyName) {
77
+ return false;
78
+ }
79
+ if (attributePropertyNames.has(name)) {
80
+ return true;
81
+ }
82
+ const unsimulatedReason = unsimulatedPropertyReasons.get(name);
83
+ if (unsimulatedReason !== undefined) {
84
+ throw this.propertyError(`${name} is a real ${snsTopicResourceType} property simulated SNS ` +
85
+ `does not act on: ${unsimulatedReason}`);
86
+ }
87
+ throw this.propertyError(`${name} is not a property of ${snsTopicResourceType}`);
88
+ }
89
+ propertyError(reason) {
90
+ return simCfnSnsResourceError(snsTopicResourceType, this.resource.logicalId, reason);
91
+ }
92
+ }
93
+ //# sourceMappingURL=sim-cfn-sns-topic-properties.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-sns-topic-properties.js","sourceRoot":"","sources":["../../../../../src/service/sns/cfn/topic/sim-cfn-sns-topic-properties.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * The name the template gives the topic.
3
+ */
4
+ export declare const topicNamePropertyName = "TopicName";
5
+ /**
6
+ * The subscriptions declared inside the topic rather than as Resources of their
7
+ * own.
8
+ */
9
+ export declare const topicSubscriptionPropertyName = "Subscription";
10
+ /**
11
+ * The AWS::SNS::Topic properties carrying a topic attribute of the same name.
12
+ *
13
+ * CloudFormation names these exactly as the SNS API names the attributes, so
14
+ * they are handed to CreateTopic rather than read here. Simulated SNS takes
15
+ * `DisplayName` and refuses the rest by name with the reason each one is
16
+ * missing, which is the same refusal an SDK caller setting the attribute gets.
17
+ * Keeping that decision in one place is what stops a template quietly accepting
18
+ * something the SDK path would not.
19
+ */
20
+ export declare const attributePropertyNames: ReadonlySet<string>;
21
+ /**
22
+ * The real AWS::SNS::Topic properties this simulation has no behaviour for and
23
+ * no single topic attribute to hand them to.
24
+ *
25
+ * The rest of the unsimulated properties are attributes of the same name, so
26
+ * SNS refuses those itself. These three are not: two are inputs of their own on
27
+ * a CreateTopic request, and `DeliveryStatusLogging` is a list that would
28
+ * become fifteen separate attributes.
29
+ */
30
+ export declare const unsimulatedPropertyReasons: ReadonlyMap<string, string>;
31
+ //# sourceMappingURL=sim-cfn-sns-topic-property-names.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cfn-sns-topic-property-names.d.ts","sourceRoot":"","sources":["../../../../../src/service/sns/cfn/topic/sim-cfn-sns-topic-property-names.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,qBAAqB,cAAc,CAAC;AAEjD;;;GAGG;AACH,eAAO,MAAM,6BAA6B,iBAAiB,CAAC;AAE5D;;;;;;;;;GASG;AACH,eAAO,MAAM,sBAAsB,EAAE,WAAW,CAAC,MAAM,CASrD,CAAC;AAEH;;;;;;;;GAQG;AACH,eAAO,MAAM,0BAA0B,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAYjE,CAAC"}