@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,67 @@
1
+ import { simSnsDefaultFilterPolicyScope, } from "../filter/sim-sns-filter-policy-scope.js";
2
+ import { simSnsChangedSubscriptionAttributes, } from "./sim-sns-subscription-attribute-changes.js";
3
+ import { simSnsFilterPolicyAttributeName, simSnsFilterPolicyScopeAttributeName, simSnsRawMessageDeliveryAttributeName, } from "./sim-sns-subscription-attribute-names.js";
4
+ /**
5
+ * The attributes of one simulated subscription that a request can set.
6
+ *
7
+ * Applying a request makes a new set rather than changing this one, so a
8
+ * request naming an attribute this simulation will not take leaves the
9
+ * subscription as it was.
10
+ */
11
+ export class SimSnsSubscriptionAttributes {
12
+ rawMessageDelivery;
13
+ filterPolicy;
14
+ filterPolicyScope;
15
+ constructor(values) {
16
+ this.rawMessageDelivery = values.rawMessageDelivery;
17
+ this.filterPolicy = values.filterPolicy;
18
+ this.filterPolicyScope = values.filterPolicyScope;
19
+ }
20
+ /**
21
+ * The attributes a subscription has before anything sets one.
22
+ *
23
+ * Real SNS reports `RawMessageDelivery` as false for a subscription created
24
+ * without it, rather than leaving the attribute out, which is why it is held
25
+ * rather than being absent until set. A subscription holds no filter policy
26
+ * until one is set, and receives everything its topic publishes.
27
+ */
28
+ static defaults() {
29
+ return new this({
30
+ rawMessageDelivery: false,
31
+ filterPolicy: undefined,
32
+ filterPolicyScope: simSnsDefaultFilterPolicyScope,
33
+ });
34
+ }
35
+ /**
36
+ * These attributes with a request's changes applied.
37
+ */
38
+ with(requested) {
39
+ return new SimSnsSubscriptionAttributes(simSnsChangedSubscriptionAttributes(this, requested));
40
+ }
41
+ /**
42
+ * Whether this subscription's filter policy admits a published message.
43
+ *
44
+ * A subscription with no policy takes everything its topic publishes, which
45
+ * is what a subscription without one does on real SNS.
46
+ */
47
+ accepts(message) {
48
+ return this.filterPolicy?.matches(message) ?? true;
49
+ }
50
+ /**
51
+ * Add these attributes to what SNS reports about the subscription.
52
+ *
53
+ * The two filter policy attributes are reported only when there is a policy,
54
+ * as real SNS reports them. A subscription that filters nothing has no scope
55
+ * to report either, since the scope only says how a policy is read.
56
+ */
57
+ reportInto(reported) {
58
+ reported.set(simSnsRawMessageDeliveryAttributeName, String(this.rawMessageDelivery));
59
+ if (this.filterPolicy === undefined) {
60
+ return;
61
+ }
62
+ reported.set(simSnsFilterPolicyAttributeName, this.filterPolicy.value);
63
+ reported.set(simSnsFilterPolicyScopeAttributeName, this.filterPolicyScope.value);
64
+ }
65
+ }
66
+ export {} from "./sim-sns-requested-subscription-attributes.js";
67
+ //# sourceMappingURL=sim-sns-subscription-attributes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-sns-subscription-attributes.js","sourceRoot":"","sources":["../../../../src/service/sns/subscription/sim-sns-subscription-attributes.ts"],"names":[],"mappings":"AACA,OAAO,EACL,8BAA8B,GAE/B,MAAM,0CAA0C,CAAC;AAGlD,OAAO,EACL,mCAAmC,GAEpC,MAAM,6CAA6C,CAAC;AACrD,OAAO,EACL,+BAA+B,EAC/B,oCAAoC,EACpC,qCAAqC,GACtC,MAAM,2CAA2C,CAAC;AAEnD;;;;;;GAMG;AACH,MAAM,OAAO,4BAA4B;IACvB,kBAAkB,CAAU;IAC5B,YAAY,CAAiC;IAC7C,iBAAiB,CAA0B;IAE3D,YAAoB,MAAyC;QAC3D,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAC,kBAAkB,CAAC;QACpD,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;QACxC,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,CAAC;IACpD,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,QAAQ;QACb,OAAO,IAAI,IAAI,CAAC;YACd,kBAAkB,EAAE,KAAK;YACzB,YAAY,EAAE,SAAS;YACvB,iBAAiB,EAAE,8BAA8B;SAClD,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,IAAI,CACF,SAA2C;QAE3C,OAAO,IAAI,4BAA4B,CACrC,mCAAmC,CAAC,IAAI,EAAE,SAAS,CAAC,CACrD,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,OAAO,CAAC,OAA+B;QACrC,OAAO,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC;IACrD,CAAC;IAED;;;;;;OAMG;IACH,UAAU,CAAC,QAA6B;QACtC,QAAQ,CAAC,GAAG,CACV,qCAAqC,EACrC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAChC,CAAC;QAEF,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YACpC,OAAO;QACT,CAAC;QAED,QAAQ,CAAC,GAAG,CAAC,+BAA+B,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACvE,QAAQ,CAAC,GAAG,CACV,oCAAoC,EACpC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAC7B,CAAC;IACJ,CAAC;CACF;AAED,OAAO,EAAyC,MAAM,gDAAgD,CAAC"}
@@ -0,0 +1,26 @@
1
+ import type { SimAwsAccountId } from "../../aws/sim-aws-account-id.js";
2
+ import type { AwsRegionName } from "../../aws/sim-aws-region.js";
3
+ import { type SimSnsSubscriptionProtocol } from "./sim-sns-subscription-protocol.js";
4
+ /**
5
+ * Where a subscription delivers, whichever kind of endpoint its protocol
6
+ * implies.
7
+ *
8
+ * Every protocol simulated names its endpoint by an ARN, and every delivery
9
+ * needs the same three things from it: the ARN itself, and the Account and
10
+ * Region to resolve the endpoint in. What kind of resource it is belongs to the
11
+ * protocol's own endpoint type.
12
+ */
13
+ export interface SimSnsSubscriptionEndpoint {
14
+ readonly value: string;
15
+ readonly regionName: AwsRegionName;
16
+ readonly accountId: SimAwsAccountId;
17
+ }
18
+ /**
19
+ * Read the endpoint a Subscribe request names, for the protocol it named.
20
+ *
21
+ * The protocol decides what the endpoint has to be, so an SQS queue ARN over
22
+ * the `lambda` protocol is refused here rather than at delivery time. Real SNS
23
+ * validates the endpoint against the protocol at `Subscribe` time too.
24
+ */
25
+ export declare function requireSimSnsSubscriptionEndpoint(protocol: SimSnsSubscriptionProtocol, endpoint: string | undefined): SimSnsSubscriptionEndpoint;
26
+ //# sourceMappingURL=sim-sns-subscription-endpoint.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-sns-subscription-endpoint.d.ts","sourceRoot":"","sources":["../../../../src/service/sns/subscription/sim-sns-subscription-endpoint.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAGjE,OAAO,EAGL,KAAK,0BAA0B,EAChC,MAAM,oCAAoC,CAAC;AAE5C;;;;;;;;GAQG;AACH,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC;IACnC,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC;CACrC;AAED;;;;;;GAMG;AACH,wBAAgB,iCAAiC,CAC/C,QAAQ,EAAE,0BAA0B,EACpC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAC3B,0BAA0B,CAS5B"}
@@ -0,0 +1,21 @@
1
+ import { SimSnsFunctionEndpointArn } from "./sim-sns-function-endpoint-arn.js";
2
+ import { SimSnsQueueEndpointArn } from "./sim-sns-queue-endpoint-arn.js";
3
+ import { simSnsLambdaProtocol, simSnsSqsProtocol, } from "./sim-sns-subscription-protocol.js";
4
+ /**
5
+ * Read the endpoint a Subscribe request names, for the protocol it named.
6
+ *
7
+ * The protocol decides what the endpoint has to be, so an SQS queue ARN over
8
+ * the `lambda` protocol is refused here rather than at delivery time. Real SNS
9
+ * validates the endpoint against the protocol at `Subscribe` time too.
10
+ */
11
+ export function requireSimSnsSubscriptionEndpoint(protocol, endpoint) {
12
+ switch (protocol) {
13
+ case simSnsSqsProtocol: {
14
+ return SimSnsQueueEndpointArn.parse(endpoint ?? "");
15
+ }
16
+ case simSnsLambdaProtocol: {
17
+ return SimSnsFunctionEndpointArn.parse(endpoint ?? "");
18
+ }
19
+ }
20
+ }
21
+ //# sourceMappingURL=sim-sns-subscription-endpoint.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-sns-subscription-endpoint.js","sourceRoot":"","sources":["../../../../src/service/sns/subscription/sim-sns-subscription-endpoint.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EACL,oBAAoB,EACpB,iBAAiB,GAElB,MAAM,oCAAoC,CAAC;AAiB5C;;;;;;GAMG;AACH,MAAM,UAAU,iCAAiC,CAC/C,QAAoC,EACpC,QAA4B;IAE5B,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,iBAAiB,EAAE,CAAC;YACvB,OAAO,sBAAsB,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;QACtD,CAAC;QACD,KAAK,oBAAoB,EAAE,CAAC;YAC1B,OAAO,yBAAyB,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Delivery to an SQS queue.
3
+ *
4
+ * A queue is what SNS is most often put in front of, and it is a protocol with
5
+ * no confirmation step: real SNS confirms an `sqs` subscription itself, so
6
+ * `Subscribe` answers with a subscription ARN rather than `pending
7
+ * confirmation`.
8
+ */
9
+ export declare const simSnsSqsProtocol = "sqs";
10
+ /**
11
+ * Delivery by invoking a Lambda function.
12
+ *
13
+ * Real SNS confirms this one itself too, so a `lambda` subscription is
14
+ * confirmed as soon as it exists. The function is invoked asynchronously with
15
+ * an event carrying the published message.
16
+ */
17
+ export declare const simSnsLambdaProtocol = "lambda";
18
+ /**
19
+ * A protocol a simulated subscription can be created with.
20
+ */
21
+ export type SimSnsSubscriptionProtocol = typeof simSnsSqsProtocol | typeof simSnsLambdaProtocol;
22
+ /**
23
+ * Read the protocol a Subscribe request names, refusing one that delivers
24
+ * nowhere.
25
+ *
26
+ * Real SNS refuses a protocol it does not have with
27
+ * `InvalidParameterException`, and that is what a misspelling gets here. A
28
+ * protocol real SNS does have and this simulation does not is refused with the
29
+ * reason it is missing, so the message points at the simulator rather than at
30
+ * the request.
31
+ */
32
+ export declare function requireSimSnsProtocol(value: string | undefined): SimSnsSubscriptionProtocol;
33
+ //# sourceMappingURL=sim-sns-subscription-protocol.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-sns-subscription-protocol.d.ts","sourceRoot":"","sources":["../../../../src/service/sns/subscription/sim-sns-subscription-protocol.ts"],"names":[],"mappings":"AAKA;;;;;;;GAOG;AACH,eAAO,MAAM,iBAAiB,QAAQ,CAAC;AAEvC;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,WAAW,CAAC;AAE7C;;GAEG;AACH,MAAM,MAAM,0BAA0B,GACpC,OAAO,iBAAiB,GAAG,OAAO,oBAAoB,CAAC;AAuBzD;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,MAAM,GAAG,SAAS,GACxB,0BAA0B,CAoB5B"}
@@ -0,0 +1,63 @@
1
+ import { SimSnsInvalidParameterException, SimSnsUnsimulatedInputException, } from "../error/sim-sns.error.js";
2
+ /**
3
+ * Delivery to an SQS queue.
4
+ *
5
+ * A queue is what SNS is most often put in front of, and it is a protocol with
6
+ * no confirmation step: real SNS confirms an `sqs` subscription itself, so
7
+ * `Subscribe` answers with a subscription ARN rather than `pending
8
+ * confirmation`.
9
+ */
10
+ export const simSnsSqsProtocol = "sqs";
11
+ /**
12
+ * Delivery by invoking a Lambda function.
13
+ *
14
+ * Real SNS confirms this one itself too, so a `lambda` subscription is
15
+ * confirmed as soon as it exists. The function is invoked asynchronously with
16
+ * an event carrying the published message.
17
+ */
18
+ export const simSnsLambdaProtocol = "lambda";
19
+ /**
20
+ * The protocols real SNS has that this simulation does not deliver over.
21
+ *
22
+ * Each is refused by name with the reason, rather than accepted and never
23
+ * delivered to. A subscription that exists and receives nothing is worse than
24
+ * no subscription at all: the test that made it would be asserting against
25
+ * silence.
26
+ */
27
+ const unsimulatedProtocols = new Map([
28
+ ["http", "Delivery over HTTP would leave the simulation."],
29
+ ["https", "Delivery over HTTPS would leave the simulation."],
30
+ ["email", "Sending email is not simulated."],
31
+ ["email-json", "Sending email is not simulated."],
32
+ ["sms", "Sending SMS is not simulated."],
33
+ [
34
+ "application",
35
+ "Mobile application endpoints and push notifications are not simulated.",
36
+ ],
37
+ ["firehose", "Amazon Data Firehose is not simulated."],
38
+ ]);
39
+ /**
40
+ * Read the protocol a Subscribe request names, refusing one that delivers
41
+ * nowhere.
42
+ *
43
+ * Real SNS refuses a protocol it does not have with
44
+ * `InvalidParameterException`, and that is what a misspelling gets here. A
45
+ * protocol real SNS does have and this simulation does not is refused with the
46
+ * reason it is missing, so the message points at the simulator rather than at
47
+ * the request.
48
+ */
49
+ export function requireSimSnsProtocol(value) {
50
+ if (value === simSnsSqsProtocol || value === simSnsLambdaProtocol) {
51
+ return value;
52
+ }
53
+ const named = value ?? "(none)";
54
+ const reason = unsimulatedProtocols.get(named);
55
+ if (reason !== undefined) {
56
+ throw new SimSnsUnsimulatedInputException(`The ${named} subscription protocol is not simulated. ${reason} ` +
57
+ `Subscribe with the ${simSnsSqsProtocol} or ` +
58
+ `${simSnsLambdaProtocol} protocol instead.`);
59
+ }
60
+ throw new SimSnsInvalidParameterException(`Invalid parameter: Protocol Reason: ${named} is not a subscription ` +
61
+ `protocol`);
62
+ }
63
+ //# sourceMappingURL=sim-sns-subscription-protocol.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-sns-subscription-protocol.js","sourceRoot":"","sources":["../../../../src/service/sns/subscription/sim-sns-subscription-protocol.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,+BAA+B,EAC/B,+BAA+B,GAChC,MAAM,2BAA2B,CAAC;AAEnC;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,CAAC;AAEvC;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,QAAQ,CAAC;AAQ7C;;;;;;;GAOG;AACH,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAiB;IACnD,CAAC,MAAM,EAAE,gDAAgD,CAAC;IAC1D,CAAC,OAAO,EAAE,iDAAiD,CAAC;IAC5D,CAAC,OAAO,EAAE,iCAAiC,CAAC;IAC5C,CAAC,YAAY,EAAE,iCAAiC,CAAC;IACjD,CAAC,KAAK,EAAE,+BAA+B,CAAC;IACxC;QACE,aAAa;QACb,wEAAwE;KACzE;IACD,CAAC,UAAU,EAAE,wCAAwC,CAAC;CACvD,CAAC,CAAC;AAEH;;;;;;;;;GASG;AACH,MAAM,UAAU,qBAAqB,CACnC,KAAyB;IAEzB,IAAI,KAAK,KAAK,iBAAiB,IAAI,KAAK,KAAK,oBAAoB,EAAE,CAAC;QAClE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,KAAK,GAAG,KAAK,IAAI,QAAQ,CAAC;IAChC,MAAM,MAAM,GAAG,oBAAoB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAE/C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,IAAI,+BAA+B,CACvC,OAAO,KAAK,4CAA4C,MAAM,GAAG;YAC/D,sBAAsB,iBAAiB,MAAM;YAC7C,GAAG,oBAAoB,oBAAoB,CAC9C,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,+BAA+B,CACvC,uCAAuC,KAAK,yBAAyB;QACnE,UAAU,CACb,CAAC;AACJ,CAAC"}
@@ -0,0 +1,71 @@
1
+ import type { SimSnsSubscription } from "./sim-sns-subscription.js";
2
+ /**
3
+ * The subscription counts one topic reports.
4
+ *
5
+ * Real SNS reports all three on every topic, so they are answered together
6
+ * rather than one call at a time.
7
+ */
8
+ export interface SimSnsSubscriptionCounts {
9
+ readonly confirmed: number;
10
+ readonly pending: number;
11
+ readonly deleted: number;
12
+ }
13
+ /**
14
+ * The subscriptions of one simulated SNS scope.
15
+ *
16
+ * They are held here rather than on the topic because a subscription outlives
17
+ * the lookup that finds it by ARN: `Unsubscribe` carries a subscription ARN and
18
+ * nothing else, so the subscription has to be reachable without knowing which
19
+ * topic it belongs to first.
20
+ */
21
+ export declare class SimSnsSubscriptionStore {
22
+ private readonly subscriptions;
23
+ /**
24
+ * How many subscriptions each topic has had deleted, by topic name.
25
+ *
26
+ * Real SNS reports a running count as `SubscriptionsDeleted` rather than
27
+ * forgetting a subscription entirely, so the count is kept after the
28
+ * subscription itself is gone.
29
+ */
30
+ private readonly deletedCounts;
31
+ /**
32
+ * Every subscription in this scope, in creation order.
33
+ */
34
+ get all(): readonly SimSnsSubscription[];
35
+ /**
36
+ * Store a newly created subscription.
37
+ */
38
+ add(subscription: SimSnsSubscription): void;
39
+ /**
40
+ * Find a subscription by ARN.
41
+ */
42
+ find(arn: string): SimSnsSubscription | undefined;
43
+ /**
44
+ * Resolve a subscription by ARN, or refuse.
45
+ */
46
+ require(arn: string): SimSnsSubscription;
47
+ /**
48
+ * The subscriptions of one topic, in creation order.
49
+ */
50
+ forTopic(topicName: string): readonly SimSnsSubscription[];
51
+ /**
52
+ * The counts a topic reports about its subscriptions.
53
+ *
54
+ * Nothing is ever pending, because the only protocol simulated is the one
55
+ * real SNS confirms itself.
56
+ */
57
+ countsForTopic(topicName: string): SimSnsSubscriptionCounts;
58
+ /**
59
+ * Forget one unsubscribed subscription.
60
+ */
61
+ remove(subscription: SimSnsSubscription): void;
62
+ /**
63
+ * Forget every subscription of a deleted topic.
64
+ *
65
+ * Real SNS deletes a topic's subscriptions along with it, so a topic
66
+ * recreated under the same name starts with none. The deleted count goes with
67
+ * them for the same reason: it belonged to the topic that is gone.
68
+ */
69
+ removeForTopic(topicName: string): void;
70
+ }
71
+ //# sourceMappingURL=sim-sns-subscription-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-sns-subscription-store.d.ts","sourceRoot":"","sources":["../../../../src/service/sns/subscription/sim-sns-subscription-store.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAEpE;;;;;GAKG;AACH,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;;GAOG;AACH,qBAAa,uBAAuB;IAClC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAyC;IAEvE;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA6B;IAE3D;;OAEG;IACH,IAAI,GAAG,IAAI,SAAS,kBAAkB,EAAE,CAEvC;IAED;;OAEG;IACH,GAAG,CAAC,YAAY,EAAE,kBAAkB,GAAG,IAAI,CAE1C;IAED;;OAEG;IACH,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAEhD;IAED;;OAEG;IACH,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,CAUvC;IAED;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,kBAAkB,EAAE,CAIzD;IAED;;;;;OAKG;IACH,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,wBAAwB,CAM1D;IAED;;OAEG;IACH,MAAM,CAAC,YAAY,EAAE,kBAAkB,GAAG,IAAI,CAM7C;IAED;;;;;;OAMG;IACH,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAMtC;CACF"}
@@ -0,0 +1,88 @@
1
+ import { SimSnsNotFoundException } from "../error/sim-sns.error.js";
2
+ /**
3
+ * The subscriptions of one simulated SNS scope.
4
+ *
5
+ * They are held here rather than on the topic because a subscription outlives
6
+ * the lookup that finds it by ARN: `Unsubscribe` carries a subscription ARN and
7
+ * nothing else, so the subscription has to be reachable without knowing which
8
+ * topic it belongs to first.
9
+ */
10
+ export class SimSnsSubscriptionStore {
11
+ subscriptions = new Map();
12
+ /**
13
+ * How many subscriptions each topic has had deleted, by topic name.
14
+ *
15
+ * Real SNS reports a running count as `SubscriptionsDeleted` rather than
16
+ * forgetting a subscription entirely, so the count is kept after the
17
+ * subscription itself is gone.
18
+ */
19
+ deletedCounts = new Map();
20
+ /**
21
+ * Every subscription in this scope, in creation order.
22
+ */
23
+ get all() {
24
+ return this.subscriptions.values().toArray();
25
+ }
26
+ /**
27
+ * Store a newly created subscription.
28
+ */
29
+ add(subscription) {
30
+ this.subscriptions.set(subscription.arn.value, subscription);
31
+ }
32
+ /**
33
+ * Find a subscription by ARN.
34
+ */
35
+ find(arn) {
36
+ return this.subscriptions.get(arn);
37
+ }
38
+ /**
39
+ * Resolve a subscription by ARN, or refuse.
40
+ */
41
+ require(arn) {
42
+ const found = this.find(arn);
43
+ if (found === undefined) {
44
+ throw new SimSnsNotFoundException(`Subscription does not exist: no subscription with the ARN ${arn}`);
45
+ }
46
+ return found;
47
+ }
48
+ /**
49
+ * The subscriptions of one topic, in creation order.
50
+ */
51
+ forTopic(topicName) {
52
+ return this.all.filter((subscription) => subscription.topicName === topicName);
53
+ }
54
+ /**
55
+ * The counts a topic reports about its subscriptions.
56
+ *
57
+ * Nothing is ever pending, because the only protocol simulated is the one
58
+ * real SNS confirms itself.
59
+ */
60
+ countsForTopic(topicName) {
61
+ return {
62
+ confirmed: this.forTopic(topicName).length,
63
+ pending: 0,
64
+ deleted: this.deletedCounts.get(topicName) ?? 0,
65
+ };
66
+ }
67
+ /**
68
+ * Forget one unsubscribed subscription.
69
+ */
70
+ remove(subscription) {
71
+ this.subscriptions.delete(subscription.arn.value);
72
+ this.deletedCounts.set(subscription.topicName, (this.deletedCounts.get(subscription.topicName) ?? 0) + 1);
73
+ }
74
+ /**
75
+ * Forget every subscription of a deleted topic.
76
+ *
77
+ * Real SNS deletes a topic's subscriptions along with it, so a topic
78
+ * recreated under the same name starts with none. The deleted count goes with
79
+ * them for the same reason: it belonged to the topic that is gone.
80
+ */
81
+ removeForTopic(topicName) {
82
+ for (const subscription of this.forTopic(topicName)) {
83
+ this.subscriptions.delete(subscription.arn.value);
84
+ }
85
+ this.deletedCounts.delete(topicName);
86
+ }
87
+ }
88
+ //# sourceMappingURL=sim-sns-subscription-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-sns-subscription-store.js","sourceRoot":"","sources":["../../../../src/service/sns/subscription/sim-sns-subscription-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAepE;;;;;;;GAOG;AACH,MAAM,OAAO,uBAAuB;IACjB,aAAa,GAAG,IAAI,GAAG,EAA8B,CAAC;IAEvE;;;;;;OAMG;IACc,aAAa,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE3D;;OAEG;IACH,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC;IAC/C,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,YAAgC;QAClC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,IAAI,CAAC,GAAW;QACd,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,GAAW;QACjB,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAE7B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,uBAAuB,CAC/B,6DAA6D,GAAG,EAAE,CACnE,CAAC;QACJ,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,SAAiB;QACxB,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CACpB,CAAC,YAAY,EAAE,EAAE,CAAC,YAAY,CAAC,SAAS,KAAK,SAAS,CACvD,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,cAAc,CAAC,SAAiB;QAC9B,OAAO;YACL,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,MAAM;YAC1C,OAAO,EAAE,CAAC;YACV,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC;SAChD,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,YAAgC;QACrC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAClD,IAAI,CAAC,aAAa,CAAC,GAAG,CACpB,YAAY,CAAC,SAAS,EACtB,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAC1D,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,cAAc,CAAC,SAAiB;QAC9B,KAAK,MAAM,YAAY,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACpD,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACpD,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC;CACF"}
@@ -0,0 +1,72 @@
1
+ import type { SimSnsPublishedMessage } from "../message/sim-sns-published-message.js";
2
+ import { SimSnsSubscriptionArn } from "./sim-sns-subscription-arn.js";
3
+ import type { SimSnsSubscriptionAttributeInput, SimSnsSubscriptionAttributes } from "./sim-sns-subscription-attributes.js";
4
+ import { type SimSnsSubscriptionEndpoint } from "./sim-sns-subscription-endpoint.js";
5
+ import type { SimSnsSubscriptionProtocol } from "./sim-sns-subscription-protocol.js";
6
+ interface SimSnsSubscriptionInput {
7
+ readonly topicArn: string;
8
+ readonly topicName: string;
9
+ readonly protocol: SimSnsSubscriptionProtocol;
10
+ readonly endpoint: string | undefined;
11
+ readonly owner: string;
12
+ readonly attributes: SimSnsSubscriptionAttributes;
13
+ }
14
+ /**
15
+ * One simulated subscription to a topic.
16
+ *
17
+ * The endpoint is held as the ARN its protocol implies rather than as a string,
18
+ * because a delivery has to reach the Account and Region that ARN names rather
19
+ * than the topic's, and because what the ARN has to name is a question the
20
+ * protocol answers: a queue for `sqs`, a function for `lambda`.
21
+ */
22
+ export declare class SimSnsSubscription {
23
+ readonly arn: SimSnsSubscriptionArn;
24
+ readonly topicArn: string;
25
+ readonly topicName: string;
26
+ readonly protocol: SimSnsSubscriptionProtocol;
27
+ readonly endpoint: SimSnsSubscriptionEndpoint;
28
+ readonly owner: string;
29
+ private held;
30
+ private constructor();
31
+ /**
32
+ * Create a subscription, refusing an endpoint the protocol cannot reach.
33
+ *
34
+ * Nothing checks that the endpoint exists, because real SNS does not either:
35
+ * a subscription to a queue or a function that is not there is created, and
36
+ * fails when something is delivered to it. That is the moment the endpoint's
37
+ * own policy is consulted too, so both failures surface in the same place,
38
+ * and a permission taken away after subscribing stops delivery.
39
+ */
40
+ static of(input: SimSnsSubscriptionInput): SimSnsSubscription;
41
+ /**
42
+ * Whether another subscription would be a repeat of this one.
43
+ *
44
+ * Real SNS matches a repeated Subscribe on the topic, the protocol and the
45
+ * endpoint. Both subscriptions belong to a topic already by the time this is
46
+ * asked, so it is the other two that are compared here.
47
+ */
48
+ repeats(other: SimSnsSubscription): boolean;
49
+ /**
50
+ * The attributes this subscription currently holds.
51
+ */
52
+ get attributes(): SimSnsSubscriptionAttributes;
53
+ /**
54
+ * Apply the attributes a request names, refusing any this simulation will not
55
+ * take.
56
+ */
57
+ applyAttributes(requested: SimSnsSubscriptionAttributeInput): void;
58
+ /**
59
+ * Whether this subscription wants a published message.
60
+ *
61
+ * The subscription's filter policy is what decides, so this is asked once per
62
+ * subscription rather than once per publish: one subscriber filtering a
63
+ * message out has nothing to do with what another receives.
64
+ */
65
+ accepts(message: SimSnsPublishedMessage): boolean;
66
+ /**
67
+ * This subscription as GetSubscriptionAttributes reports it.
68
+ */
69
+ reportedAttributes(): Record<string, string>;
70
+ }
71
+ export {};
72
+ //# sourceMappingURL=sim-sns-subscription.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-sns-subscription.d.ts","sourceRoot":"","sources":["../../../../src/service/sns/subscription/sim-sns-subscription.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AACtF,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,KAAK,EACV,gCAAgC,EAChC,4BAA4B,EAC7B,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAEL,KAAK,0BAA0B,EAChC,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAmCrF,UAAU,uBAAuB;IAC/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,0BAA0B,CAAC;IAC9C,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IACtC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,EAAE,4BAA4B,CAAC;CACnD;AAED;;;;;;;GAOG;AACH,qBAAa,kBAAkB;IAC7B,SAAgB,GAAG,EAAE,qBAAqB,CAAC;IAC3C,SAAgB,QAAQ,EAAE,MAAM,CAAC;IACjC,SAAgB,SAAS,EAAE,MAAM,CAAC;IAClC,SAAgB,QAAQ,EAAE,0BAA0B,CAAC;IACrD,SAAgB,QAAQ,EAAE,0BAA0B,CAAC;IACrD,SAAgB,KAAK,EAAE,MAAM,CAAC;IAE9B,OAAO,CAAC,IAAI,CAA+B;IAE3C,OAAO,eAQN;IAED;;;;;;;;OAQG;IACH,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,uBAAuB,GAAG,kBAAkB,CAe5D;IAED;;;;;;OAMG;IACH,OAAO,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAK1C;IAED;;OAEG;IACH,IAAI,UAAU,IAAI,4BAA4B,CAE7C;IAED;;;OAGG;IACH,eAAe,CAAC,SAAS,EAAE,gCAAgC,GAAG,IAAI,CAEjE;IAED;;;;;;OAMG;IACH,OAAO,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAEhD;IAED;;OAEG;IACH,kBAAkB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAa3C;CACF"}
@@ -0,0 +1,116 @@
1
+ import { SimSnsSubscriptionArn } from "./sim-sns-subscription-arn.js";
2
+ import { requireSimSnsSubscriptionEndpoint, } from "./sim-sns-subscription-endpoint.js";
3
+ const subscriptionArnAttributeName = "SubscriptionArn";
4
+ const topicArnAttributeName = "TopicArn";
5
+ const protocolAttributeName = "Protocol";
6
+ const endpointAttributeName = "Endpoint";
7
+ const ownerAttributeName = "Owner";
8
+ /**
9
+ * The two attributes describing a confirmation that never had to happen.
10
+ *
11
+ * Real SNS confirms an `sqs` or a `lambda` subscription itself, so one created
12
+ * through the API is confirmed as soon as it exists and the confirmation counts
13
+ * as authenticated. Both are reported as constants because there is no protocol
14
+ * here that leaves a subscription pending.
15
+ */
16
+ const confirmationAttributes = [
17
+ ["ConfirmationWasAuthenticated", "true"],
18
+ ["PendingConfirmation", "false"],
19
+ ];
20
+ /**
21
+ * One simulated subscription to a topic.
22
+ *
23
+ * The endpoint is held as the ARN its protocol implies rather than as a string,
24
+ * because a delivery has to reach the Account and Region that ARN names rather
25
+ * than the topic's, and because what the ARN has to name is a question the
26
+ * protocol answers: a queue for `sqs`, a function for `lambda`.
27
+ */
28
+ export class SimSnsSubscription {
29
+ arn;
30
+ topicArn;
31
+ topicName;
32
+ protocol;
33
+ endpoint;
34
+ owner;
35
+ held;
36
+ constructor(properties) {
37
+ this.arn = properties.arn;
38
+ this.topicArn = properties.topicArn;
39
+ this.topicName = properties.topicName;
40
+ this.protocol = properties.protocol;
41
+ this.endpoint = properties.endpoint;
42
+ this.owner = properties.owner;
43
+ this.held = properties.attributes;
44
+ }
45
+ /**
46
+ * Create a subscription, refusing an endpoint the protocol cannot reach.
47
+ *
48
+ * Nothing checks that the endpoint exists, because real SNS does not either:
49
+ * a subscription to a queue or a function that is not there is created, and
50
+ * fails when something is delivered to it. That is the moment the endpoint's
51
+ * own policy is consulted too, so both failures surface in the same place,
52
+ * and a permission taken away after subscribing stops delivery.
53
+ */
54
+ static of(input) {
55
+ const arn = SimSnsSubscriptionArn.forTopic(input.topicArn);
56
+ return new this({
57
+ arn,
58
+ topicArn: input.topicArn,
59
+ topicName: input.topicName,
60
+ protocol: input.protocol,
61
+ endpoint: requireSimSnsSubscriptionEndpoint(input.protocol, input.endpoint),
62
+ owner: input.owner,
63
+ attributes: input.attributes,
64
+ });
65
+ }
66
+ /**
67
+ * Whether another subscription would be a repeat of this one.
68
+ *
69
+ * Real SNS matches a repeated Subscribe on the topic, the protocol and the
70
+ * endpoint. Both subscriptions belong to a topic already by the time this is
71
+ * asked, so it is the other two that are compared here.
72
+ */
73
+ repeats(other) {
74
+ return (this.protocol === other.protocol &&
75
+ this.endpoint.value === other.endpoint.value);
76
+ }
77
+ /**
78
+ * The attributes this subscription currently holds.
79
+ */
80
+ get attributes() {
81
+ return this.held;
82
+ }
83
+ /**
84
+ * Apply the attributes a request names, refusing any this simulation will not
85
+ * take.
86
+ */
87
+ applyAttributes(requested) {
88
+ this.held = this.held.with(requested);
89
+ }
90
+ /**
91
+ * Whether this subscription wants a published message.
92
+ *
93
+ * The subscription's filter policy is what decides, so this is asked once per
94
+ * subscription rather than once per publish: one subscriber filtering a
95
+ * message out has nothing to do with what another receives.
96
+ */
97
+ accepts(message) {
98
+ return this.held.accepts(message);
99
+ }
100
+ /**
101
+ * This subscription as GetSubscriptionAttributes reports it.
102
+ */
103
+ reportedAttributes() {
104
+ const reported = new Map([
105
+ [subscriptionArnAttributeName, this.arn.value],
106
+ [topicArnAttributeName, this.topicArn],
107
+ [protocolAttributeName, this.protocol],
108
+ [endpointAttributeName, this.endpoint.value],
109
+ [ownerAttributeName, this.owner],
110
+ ...confirmationAttributes,
111
+ ]);
112
+ this.held.reportInto(reported);
113
+ return Object.fromEntries(reported);
114
+ }
115
+ }
116
+ //# sourceMappingURL=sim-sns-subscription.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-sns-subscription.js","sourceRoot":"","sources":["../../../../src/service/sns/subscription/sim-sns-subscription.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAKtE,OAAO,EACL,iCAAiC,GAElC,MAAM,oCAAoC,CAAC;AAG5C,MAAM,4BAA4B,GAAG,iBAAiB,CAAC;AAEvD,MAAM,qBAAqB,GAAG,UAAU,CAAC;AAEzC,MAAM,qBAAqB,GAAG,UAAU,CAAC;AAEzC,MAAM,qBAAqB,GAAG,UAAU,CAAC;AAEzC,MAAM,kBAAkB,GAAG,OAAO,CAAC;AAEnC;;;;;;;GAOG;AACH,MAAM,sBAAsB,GAA2C;IACrE,CAAC,8BAA8B,EAAE,MAAM,CAAC;IACxC,CAAC,qBAAqB,EAAE,OAAO,CAAC;CACjC,CAAC;AAqBF;;;;;;;GAOG;AACH,MAAM,OAAO,kBAAkB;IACb,GAAG,CAAwB;IAC3B,QAAQ,CAAS;IACjB,SAAS,CAAS;IAClB,QAAQ,CAA6B;IACrC,QAAQ,CAA6B;IACrC,KAAK,CAAS;IAEtB,IAAI,CAA+B;IAE3C,YAAoB,UAAwC;QAC1D,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC;QAC1B,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;QACpC,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;QACtC,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;QACpC,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;QACpC,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,UAAU,CAAC;IACpC,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,CAAC,EAAE,CAAC,KAA8B;QACtC,MAAM,GAAG,GAAG,qBAAqB,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAE3D,OAAO,IAAI,IAAI,CAAC;YACd,GAAG;YACH,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,QAAQ,EAAE,iCAAiC,CACzC,KAAK,CAAC,QAAQ,EACd,KAAK,CAAC,QAAQ,CACf;YACD,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,UAAU,EAAE,KAAK,CAAC,UAAU;SAC7B,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,OAAO,CAAC,KAAyB;QAC/B,OAAO,CACL,IAAI,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ;YAChC,IAAI,CAAC,QAAQ,CAAC,KAAK,KAAK,KAAK,CAAC,QAAQ,CAAC,KAAK,CAC7C,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED;;;OAGG;IACH,eAAe,CAAC,SAA2C;QACzD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACxC,CAAC;IAED;;;;;;OAMG;IACH,OAAO,CAAC,OAA+B;QACrC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,kBAAkB;QAChB,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAiB;YACvC,CAAC,4BAA4B,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;YAC9C,CAAC,qBAAqB,EAAE,IAAI,CAAC,QAAQ,CAAC;YACtC,CAAC,qBAAqB,EAAE,IAAI,CAAC,QAAQ,CAAC;YACtC,CAAC,qBAAqB,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;YAC5C,CAAC,kBAAkB,EAAE,IAAI,CAAC,KAAK,CAAC;YAChC,GAAG,sBAAsB;SAC1B,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAE/B,OAAO,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IACtC,CAAC;CACF"}
@@ -0,0 +1,52 @@
1
+ import type { SimAwsAccountRegionScope } from "../../aws/sim-aws-account-region-scope.js";
2
+ import type { SimSnsTopicName } from "./sim-sns-topic-name.js";
3
+ /**
4
+ * The part of a topic ARN that comes before the topic's own name.
5
+ *
6
+ * A topic ARN has no resource type separator, so the name follows the account
7
+ * id directly. That is why `parseSimArn` cannot read one, and why an IAM policy
8
+ * resource for a topic is `arn:aws:sns:region:account:name` rather than
9
+ * anything with a `topic/` in it.
10
+ */
11
+ export declare function snsTopicArnPrefix(accountRegionScope: SimAwsAccountRegionScope): string;
12
+ /**
13
+ * Where one topic is, in the three facts its ARN carries.
14
+ *
15
+ * The strings are unbranded because the callers that have only read an ARN,
16
+ * rather than been handed a scope, have nothing but strings to offer.
17
+ */
18
+ export interface SimSnsTopicLocation {
19
+ readonly regionName: string;
20
+ readonly accountId: string;
21
+ readonly name: string;
22
+ }
23
+ /**
24
+ * Read a topic ARN into the Region, Account and name it carries.
25
+ *
26
+ * All three matter. An ARN naming another Account or Region reaches nothing in
27
+ * a simulated SNS scope rather than having its name read out and looked up
28
+ * locally, and treating a foreign one as local would let a test pass while the
29
+ * real call crossed a boundary it has no permission for.
30
+ *
31
+ * Nothing is returned for a string that is not a topic ARN, including a
32
+ * subscription ARN, which carries the subscription id as a seventh part.
33
+ */
34
+ export declare function parseSnsTopicArn(value: string): SimSnsTopicLocation | undefined;
35
+ interface SimSnsTopicArnProperties {
36
+ readonly name: SimSnsTopicName;
37
+ readonly accountRegionScope: SimAwsAccountRegionScope;
38
+ }
39
+ /**
40
+ * The ARN of one simulated topic.
41
+ *
42
+ * SNS requests name a topic by ARN rather than by a URL of its own, so this is
43
+ * the only identifier a caller passes around, and it is what IAM authorizes
44
+ * against.
45
+ */
46
+ export declare class SimSnsTopicArn {
47
+ readonly name: string;
48
+ readonly value: string;
49
+ constructor(properties: SimSnsTopicArnProperties);
50
+ }
51
+ export {};
52
+ //# sourceMappingURL=sim-sns-topic-arn.d.ts.map