@kensio/yulin 1.9.0 → 1.10.1

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 (822) hide show
  1. package/README.md +25 -0
  2. package/dist/config/eslint/cffjs2.eslint.config.js +17 -98
  3. package/dist/config/eslint/cffjs2.eslint.config.js.map +1 -1
  4. package/dist/config/lint/cff-js2-lint-plugin.d.ts +16 -0
  5. package/dist/config/lint/cff-js2-lint-plugin.d.ts.map +1 -0
  6. package/dist/config/lint/cff-js2-lint-plugin.js +39 -0
  7. package/dist/config/lint/cff-js2-lint-plugin.js.map +1 -0
  8. package/dist/config/lint/cff-js2-lint-rules.d.ts +20 -0
  9. package/dist/config/lint/cff-js2-lint-rules.d.ts.map +1 -0
  10. package/dist/config/lint/cff-js2-lint-rules.js +53 -0
  11. package/dist/config/lint/cff-js2-lint-rules.js.map +1 -0
  12. package/dist/config/lint/cff-js2-lint.fixture.d.ts +39 -0
  13. package/dist/config/lint/cff-js2-lint.fixture.d.ts.map +1 -0
  14. package/dist/config/lint/cff-js2-lint.fixture.js +229 -0
  15. package/dist/config/lint/cff-js2-lint.fixture.js.map +1 -0
  16. package/dist/config/lint/cff-js2-oxlint-plugin.d.ts +9 -0
  17. package/dist/config/lint/cff-js2-oxlint-plugin.d.ts.map +1 -0
  18. package/dist/config/lint/cff-js2-oxlint-plugin.js +9 -0
  19. package/dist/config/lint/cff-js2-oxlint-plugin.js.map +1 -0
  20. package/dist/config/lint/cff-js2-restriction.d.ts +82 -0
  21. package/dist/config/lint/cff-js2-restriction.d.ts.map +1 -0
  22. package/dist/config/lint/cff-js2-restriction.js +85 -0
  23. package/dist/config/lint/cff-js2-restriction.js.map +1 -0
  24. package/dist/config/lint/cff-js2-unavailable-global.rule.d.ts +10 -0
  25. package/dist/config/lint/cff-js2-unavailable-global.rule.d.ts.map +1 -0
  26. package/dist/config/lint/cff-js2-unavailable-global.rule.js +42 -0
  27. package/dist/config/lint/cff-js2-unavailable-global.rule.js.map +1 -0
  28. package/dist/config/lint/index.d.ts +6 -0
  29. package/dist/config/lint/index.d.ts.map +1 -0
  30. package/dist/config/lint/index.js +5 -0
  31. package/dist/config/lint/index.js.map +1 -0
  32. package/dist/config/lint/lint-plugin.type.d.ts +82 -0
  33. package/dist/config/lint/lint-plugin.type.d.ts.map +1 -0
  34. package/dist/config/lint/lint-plugin.type.js +11 -0
  35. package/dist/config/lint/lint-plugin.type.js.map +1 -0
  36. package/dist/config/oxlint/cffjs2.oxlint.config.d.ts +26 -0
  37. package/dist/config/oxlint/cffjs2.oxlint.config.d.ts.map +1 -0
  38. package/dist/config/oxlint/cffjs2.oxlint.config.js +28 -0
  39. package/dist/config/oxlint/cffjs2.oxlint.config.js.map +1 -0
  40. package/dist/config/oxlint/cffjs2.oxlintrc.json +36 -0
  41. package/dist/config/oxlint/index.d.ts +2 -0
  42. package/dist/config/oxlint/index.d.ts.map +1 -0
  43. package/dist/config/oxlint/index.js +2 -0
  44. package/dist/config/oxlint/index.js.map +1 -0
  45. package/dist/sdk/router/resolve-sim-sdk-command-router.d.ts.map +1 -1
  46. package/dist/sdk/router/resolve-sim-sdk-command-router.js +3 -0
  47. package/dist/sdk/router/resolve-sim-sdk-command-router.js.map +1 -1
  48. package/dist/serve/http/live-reload/sim-local-live-reload.d.ts.map +1 -1
  49. package/dist/serve/http/live-reload/sim-local-live-reload.js +2 -3
  50. package/dist/serve/http/live-reload/sim-local-live-reload.js.map +1 -1
  51. package/dist/service/acm/validation/sim-acm-certificate-validation.d.ts.map +1 -1
  52. package/dist/service/acm/validation/sim-acm-certificate-validation.js +3 -4
  53. package/dist/service/acm/validation/sim-acm-certificate-validation.js.map +1 -1
  54. package/dist/service/aws/caller/sim-aws-caller-resolver.d.ts.map +1 -1
  55. package/dist/service/aws/caller/sim-aws-caller-resolver.js +2 -3
  56. package/dist/service/aws/caller/sim-aws-caller-resolver.js.map +1 -1
  57. package/dist/service/aws/factory/sim-aws-account-region-service-builder.d.ts +17 -0
  58. package/dist/service/aws/factory/sim-aws-account-region-service-builder.d.ts.map +1 -1
  59. package/dist/service/aws/factory/sim-aws-account-region-service-builder.js +37 -42
  60. package/dist/service/aws/factory/sim-aws-account-region-service-builder.js.map +1 -1
  61. package/dist/service/aws/factory/sim-aws-s3-notification-destinations.d.ts.map +1 -1
  62. package/dist/service/aws/factory/sim-aws-s3-notification-destinations.js +5 -0
  63. package/dist/service/aws/factory/sim-aws-s3-notification-destinations.js.map +1 -1
  64. package/dist/service/aws/factory/sim-aws-scoped-service-properties.d.ts +18 -0
  65. package/dist/service/aws/factory/sim-aws-scoped-service-properties.d.ts.map +1 -0
  66. package/dist/service/aws/factory/sim-aws-scoped-service-properties.js +2 -0
  67. package/dist/service/aws/factory/sim-aws-scoped-service-properties.js.map +1 -0
  68. package/dist/service/aws/factory/sim-aws-service-factory.d.ts +3 -0
  69. package/dist/service/aws/factory/sim-aws-service-factory.d.ts.map +1 -1
  70. package/dist/service/aws/factory/sim-aws-service-factory.js +4 -0
  71. package/dist/service/aws/factory/sim-aws-service-factory.js.map +1 -1
  72. package/dist/service/aws/sim-aws-account-region-scope.d.ts +5 -0
  73. package/dist/service/aws/sim-aws-account-region-scope.d.ts.map +1 -1
  74. package/dist/service/aws/sim-aws-account-region-scope.js +6 -0
  75. package/dist/service/aws/sim-aws-account-region-scope.js.map +1 -1
  76. package/dist/service/aws/sim-aws-service-accessors.d.ts +3 -0
  77. package/dist/service/aws/sim-aws-service-accessors.d.ts.map +1 -1
  78. package/dist/service/aws/sim-aws-service-accessors.js +4 -0
  79. package/dist/service/aws/sim-aws-service-accessors.js.map +1 -1
  80. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-copier.d.ts +36 -0
  81. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-copier.d.ts.map +1 -0
  82. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-copier.js +64 -0
  83. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-copier.js.map +1 -0
  84. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-file.d.ts +31 -0
  85. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-file.d.ts.map +1 -0
  86. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-file.js +42 -0
  87. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-file.js.map +1 -0
  88. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-files.d.ts +13 -0
  89. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-files.d.ts.map +1 -0
  90. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-files.js +68 -0
  91. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-files.js.map +1 -0
  92. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-pruner.d.ts +30 -0
  93. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-pruner.d.ts.map +1 -0
  94. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-pruner.js +35 -0
  95. package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-pruner.js.map +1 -0
  96. package/dist/service/cloudformation/cdk/s3/bucket-deployment/filter/sim-cdk-bucket-deploy-filter.d.ts +27 -0
  97. package/dist/service/cloudformation/cdk/s3/bucket-deployment/filter/sim-cdk-bucket-deploy-filter.d.ts.map +1 -0
  98. package/dist/service/cloudformation/cdk/s3/bucket-deployment/filter/sim-cdk-bucket-deploy-filter.js +76 -0
  99. package/dist/service/cloudformation/cdk/s3/bucket-deployment/filter/sim-cdk-bucket-deploy-filter.js.map +1 -0
  100. package/dist/service/cloudformation/cdk/s3/bucket-deployment/property/sim-cdk-bucket-deploy-properties.d.ts +24 -0
  101. package/dist/service/cloudformation/cdk/s3/bucket-deployment/property/sim-cdk-bucket-deploy-properties.d.ts.map +1 -0
  102. package/dist/service/cloudformation/cdk/s3/bucket-deployment/property/sim-cdk-bucket-deploy-properties.js +46 -0
  103. package/dist/service/cloudformation/cdk/s3/bucket-deployment/property/sim-cdk-bucket-deploy-properties.js.map +1 -0
  104. package/dist/service/cloudformation/cdk/s3/bucket-deployment/property/sim-cdk-bucket-deploy-values.d.ts +42 -0
  105. package/dist/service/cloudformation/cdk/s3/bucket-deployment/property/sim-cdk-bucket-deploy-values.d.ts.map +1 -0
  106. package/dist/service/cloudformation/cdk/s3/bucket-deployment/property/sim-cdk-bucket-deploy-values.js +96 -0
  107. package/dist/service/cloudformation/cdk/s3/bucket-deployment/property/sim-cdk-bucket-deploy-values.js.map +1 -0
  108. package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.d.ts +1 -1
  109. package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.d.ts.map +1 -1
  110. package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.js +10 -35
  111. package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.js.map +1 -1
  112. package/dist/service/cloudformation/cdk/s3/bucket-deployment/source/sim-cdk-bucket-deploy-source.d.ts.map +1 -1
  113. package/dist/service/cloudformation/cdk/s3/bucket-deployment/source/sim-cdk-bucket-deploy-source.js +1 -0
  114. package/dist/service/cloudformation/cdk/s3/bucket-deployment/source/sim-cdk-bucket-deploy-source.js.map +1 -1
  115. package/dist/service/cloudformation/cdk/s3/bucket-notifications/configuration/sim-cdk-bucket-notification-configuration.d.ts +2 -0
  116. package/dist/service/cloudformation/cdk/s3/bucket-notifications/configuration/sim-cdk-bucket-notification-configuration.d.ts.map +1 -1
  117. package/dist/service/cloudformation/cdk/s3/bucket-notifications/configuration/sim-cdk-bucket-notification-configuration.js +15 -1
  118. package/dist/service/cloudformation/cdk/s3/bucket-notifications/configuration/sim-cdk-bucket-notification-configuration.js.map +1 -1
  119. package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-cfn-value-adapter.d.ts.map +1 -1
  120. package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-cfn-value-adapter.js +8 -0
  121. package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-cfn-value-adapter.js.map +1 -1
  122. package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-rh-policy-cfn.d.ts +25 -0
  123. package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-rh-policy-cfn.d.ts.map +1 -0
  124. package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-rh-policy-cfn.js +32 -0
  125. package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-rh-policy-cfn.js.map +1 -0
  126. package/dist/service/cloudformation/resource/cfn/dynamodb/sim-dynamodb-table-cfn.d.ts.map +1 -1
  127. package/dist/service/cloudformation/resource/cfn/dynamodb/sim-dynamodb-table-cfn.js +4 -5
  128. package/dist/service/cloudformation/resource/cfn/dynamodb/sim-dynamodb-table-cfn.js.map +1 -1
  129. package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.d.ts.map +1 -1
  130. package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.js +2 -0
  131. package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.js.map +1 -1
  132. package/dist/service/cloudformation/resource/cfn/sns/sim-sns-cfn-value-adapter.d.ts +11 -0
  133. package/dist/service/cloudformation/resource/cfn/sns/sim-sns-cfn-value-adapter.d.ts.map +1 -0
  134. package/dist/service/cloudformation/resource/cfn/sns/sim-sns-cfn-value-adapter.js +24 -0
  135. package/dist/service/cloudformation/resource/cfn/sns/sim-sns-cfn-value-adapter.js.map +1 -0
  136. package/dist/service/cloudformation/resource/cfn/sns/sim-sns-subscription-cfn.d.ts +27 -0
  137. package/dist/service/cloudformation/resource/cfn/sns/sim-sns-subscription-cfn.d.ts.map +1 -0
  138. package/dist/service/cloudformation/resource/cfn/sns/sim-sns-subscription-cfn.js +29 -0
  139. package/dist/service/cloudformation/resource/cfn/sns/sim-sns-subscription-cfn.js.map +1 -0
  140. package/dist/service/cloudformation/resource/cfn/sns/sim-sns-topic-cfn.d.ts +30 -0
  141. package/dist/service/cloudformation/resource/cfn/sns/sim-sns-topic-cfn.d.ts.map +1 -0
  142. package/dist/service/cloudformation/resource/cfn/sns/sim-sns-topic-cfn.js +39 -0
  143. package/dist/service/cloudformation/resource/cfn/sns/sim-sns-topic-cfn.js.map +1 -0
  144. package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-factories.d.ts.map +1 -1
  145. package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-factories.js +4 -0
  146. package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-factories.js.map +1 -1
  147. package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-resolver.d.ts.map +1 -1
  148. package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-resolver.js +2 -3
  149. package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-resolver.js.map +1 -1
  150. package/dist/service/cloudformation/template/node/fn/if/sim-cfn-fn-if.d.ts.map +1 -1
  151. package/dist/service/cloudformation/template/node/fn/if/sim-cfn-fn-if.js +3 -4
  152. package/dist/service/cloudformation/template/node/fn/if/sim-cfn-fn-if.js.map +1 -1
  153. package/dist/service/cloudfront/behaviour/sim-cloud-front-behavior.d.ts +4 -0
  154. package/dist/service/cloudfront/behaviour/sim-cloud-front-behavior.d.ts.map +1 -1
  155. package/dist/service/cloudfront/behaviour/sim-cloud-front-behavior.js.map +1 -1
  156. package/dist/service/cloudfront/cfn/response-headers-policy/sim-cfn-cf-rh-policy-config.d.ts +38 -0
  157. package/dist/service/cloudfront/cfn/response-headers-policy/sim-cfn-cf-rh-policy-config.d.ts.map +1 -0
  158. package/dist/service/cloudfront/cfn/response-headers-policy/sim-cfn-cf-rh-policy-config.js +127 -0
  159. package/dist/service/cloudfront/cfn/response-headers-policy/sim-cfn-cf-rh-policy-config.js.map +1 -0
  160. package/dist/service/cloudfront/cfn/response-headers-policy/sim-cfn-cf-rh-policy-creator.d.ts +25 -0
  161. package/dist/service/cloudfront/cfn/response-headers-policy/sim-cfn-cf-rh-policy-creator.d.ts.map +1 -0
  162. package/dist/service/cloudfront/cfn/response-headers-policy/sim-cfn-cf-rh-policy-creator.js +33 -0
  163. package/dist/service/cloudfront/cfn/response-headers-policy/sim-cfn-cf-rh-policy-creator.js.map +1 -0
  164. package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.d.ts +1 -0
  165. package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.d.ts.map +1 -1
  166. package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.js +11 -0
  167. package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.js.map +1 -1
  168. package/dist/service/cloudfront/command/create-distribution/create-distribution.command.d.ts +1 -0
  169. package/dist/service/cloudfront/command/create-distribution/create-distribution.command.d.ts.map +1 -1
  170. package/dist/service/cloudfront/controller/dependency/sim-cf-controller-dependency.d.ts +3 -0
  171. package/dist/service/cloudfront/controller/dependency/sim-cf-controller-dependency.d.ts.map +1 -1
  172. package/dist/service/cloudfront/controller/dependency/sim-cf-controller-dependency.js +3 -0
  173. package/dist/service/cloudfront/controller/dependency/sim-cf-controller-dependency.js.map +1 -1
  174. package/dist/service/cloudfront/controller/response-headers/sim-cf-response-headers-applicator.d.ts +19 -0
  175. package/dist/service/cloudfront/controller/response-headers/sim-cf-response-headers-applicator.d.ts.map +1 -0
  176. package/dist/service/cloudfront/controller/response-headers/sim-cf-response-headers-applicator.js +31 -0
  177. package/dist/service/cloudfront/controller/response-headers/sim-cf-response-headers-applicator.js.map +1 -0
  178. package/dist/service/cloudfront/controller/sim-cloudfront-request-pipeline.d.ts +4 -8
  179. package/dist/service/cloudfront/controller/sim-cloudfront-request-pipeline.d.ts.map +1 -1
  180. package/dist/service/cloudfront/controller/sim-cloudfront-request-pipeline.js +16 -19
  181. package/dist/service/cloudfront/controller/sim-cloudfront-request-pipeline.js.map +1 -1
  182. package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-behavior-configurator.js +3 -0
  183. package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-behavior-configurator.js.map +1 -1
  184. package/dist/service/cloudfront/error/sim-cloudfront.error.d.ts +19 -0
  185. package/dist/service/cloudfront/error/sim-cloudfront.error.d.ts.map +1 -1
  186. package/dist/service/cloudfront/error/sim-cloudfront.error.js +23 -0
  187. package/dist/service/cloudfront/error/sim-cloudfront.error.js.map +1 -1
  188. package/dist/service/cloudfront/origin/s3/sim-cloudfront-s3-origin.d.ts.map +1 -1
  189. package/dist/service/cloudfront/origin/s3/sim-cloudfront-s3-origin.js +2 -5
  190. package/dist/service/cloudfront/origin/s3/sim-cloudfront-s3-origin.js.map +1 -1
  191. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-header.d.ts +25 -0
  192. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-header.d.ts.map +1 -0
  193. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-header.js +30 -0
  194. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-header.js.map +1 -0
  195. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy-registry.d.ts +29 -0
  196. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy-registry.d.ts.map +1 -0
  197. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy-registry.js +40 -0
  198. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy-registry.js.map +1 -0
  199. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy.d.ts +35 -0
  200. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy.d.ts.map +1 -0
  201. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy.js +44 -0
  202. package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy.js.map +1 -0
  203. package/dist/service/cloudfront/sim-cloudfront.d.ts +18 -0
  204. package/dist/service/cloudfront/sim-cloudfront.d.ts.map +1 -1
  205. package/dist/service/cloudfront/sim-cloudfront.js +24 -0
  206. package/dist/service/cloudfront/sim-cloudfront.js.map +1 -1
  207. package/dist/service/cognito/user-pool/trigger/sim-aws-cognito-trigger-functions.d.ts.map +1 -1
  208. package/dist/service/cognito/user-pool/trigger/sim-aws-cognito-trigger-functions.js +1 -0
  209. package/dist/service/cognito/user-pool/trigger/sim-aws-cognito-trigger-functions.js.map +1 -1
  210. package/dist/service/iam/credential/session/sim-iam-session-manager.d.ts.map +1 -1
  211. package/dist/service/iam/credential/session/sim-iam-session-manager.js +2 -4
  212. package/dist/service/iam/credential/session/sim-iam-session-manager.js.map +1 -1
  213. package/dist/service/iam/registry/sim-iam-registry.d.ts.map +1 -1
  214. package/dist/service/iam/registry/sim-iam-registry.js +2 -3
  215. package/dist/service/iam/registry/sim-iam-registry.js.map +1 -1
  216. package/dist/service/route53/cfn/record-set/apply/sim-cfn-r53-record-set-applicator.d.ts.map +1 -1
  217. package/dist/service/route53/cfn/record-set/apply/sim-cfn-r53-record-set-applicator.js +4 -1
  218. package/dist/service/route53/cfn/record-set/apply/sim-cfn-r53-record-set-applicator.js.map +1 -1
  219. package/dist/service/route53/cfn/record-set/resolve/sim-cfn-r53-looked-up-zone.d.ts +39 -0
  220. package/dist/service/route53/cfn/record-set/resolve/sim-cfn-r53-looked-up-zone.d.ts.map +1 -0
  221. package/dist/service/route53/cfn/record-set/resolve/sim-cfn-r53-looked-up-zone.js +46 -0
  222. package/dist/service/route53/cfn/record-set/resolve/sim-cfn-r53-looked-up-zone.js.map +1 -0
  223. package/dist/service/route53/cfn/record-set/resolve/sim-cfn-r53-rec-set-zone-resolver.d.ts +2 -0
  224. package/dist/service/route53/cfn/record-set/resolve/sim-cfn-r53-rec-set-zone-resolver.d.ts.map +1 -1
  225. package/dist/service/route53/cfn/record-set/resolve/sim-cfn-r53-rec-set-zone-resolver.js +17 -1
  226. package/dist/service/route53/cfn/record-set/resolve/sim-cfn-r53-rec-set-zone-resolver.js.map +1 -1
  227. package/dist/service/route53/command/list-resource-record-sets/record-set-output.d.ts.map +1 -1
  228. package/dist/service/route53/command/list-resource-record-sets/record-set-output.js +2 -4
  229. package/dist/service/route53/command/list-resource-record-sets/record-set-output.js.map +1 -1
  230. package/dist/service/route53/dns/dns-record-type.d.ts.map +1 -1
  231. package/dist/service/route53/dns/dns-record-type.js +2 -4
  232. package/dist/service/route53/dns/dns-record-type.js.map +1 -1
  233. package/dist/service/route53/hosted-zone/register-sim-route53-hosted-zone.d.ts +6 -0
  234. package/dist/service/route53/hosted-zone/register-sim-route53-hosted-zone.d.ts.map +1 -1
  235. package/dist/service/route53/hosted-zone/register-sim-route53-hosted-zone.js +1 -0
  236. package/dist/service/route53/hosted-zone/register-sim-route53-hosted-zone.js.map +1 -1
  237. package/dist/service/route53/hosted-zone/sim-route53-hosted-zone.d.ts +23 -10
  238. package/dist/service/route53/hosted-zone/sim-route53-hosted-zone.d.ts.map +1 -1
  239. package/dist/service/route53/hosted-zone/sim-route53-hosted-zone.js +32 -45
  240. package/dist/service/route53/hosted-zone/sim-route53-hosted-zone.js.map +1 -1
  241. package/dist/service/route53/hosted-zone/sim-route53-zone-name-widening.d.ts +16 -0
  242. package/dist/service/route53/hosted-zone/sim-route53-zone-name-widening.d.ts.map +1 -0
  243. package/dist/service/route53/hosted-zone/sim-route53-zone-name-widening.js +35 -0
  244. package/dist/service/route53/hosted-zone/sim-route53-zone-name-widening.js.map +1 -0
  245. package/dist/service/route53/hosted-zone/sim-route53-zone-synchronization.d.ts +23 -0
  246. package/dist/service/route53/hosted-zone/sim-route53-zone-synchronization.d.ts.map +1 -0
  247. package/dist/service/route53/hosted-zone/sim-route53-zone-synchronization.js +43 -0
  248. package/dist/service/route53/hosted-zone/sim-route53-zone-synchronization.js.map +1 -0
  249. package/dist/service/route53/sim-route53.d.ts +1 -1
  250. package/dist/service/route53/sim-route53.d.ts.map +1 -1
  251. package/dist/service/route53/sim-route53.js +1 -1
  252. package/dist/service/route53/sim-route53.js.map +1 -1
  253. package/dist/service/s3/bucket/notification/sim-s3-notification-configuration-reader.d.ts.map +1 -1
  254. package/dist/service/s3/bucket/notification/sim-s3-notification-configuration-reader.js +2 -0
  255. package/dist/service/s3/bucket/notification/sim-s3-notification-configuration-reader.js.map +1 -1
  256. package/dist/service/s3/bucket/notification/sim-s3-notification-configuration.d.ts +3 -0
  257. package/dist/service/s3/bucket/notification/sim-s3-notification-configuration.d.ts.map +1 -1
  258. package/dist/service/s3/bucket/notification/sim-s3-notification-configuration.js +10 -1
  259. package/dist/service/s3/bucket/notification/sim-s3-notification-configuration.js.map +1 -1
  260. package/dist/service/s3/bucket/notification/sim-s3-topic-notification.d.ts +21 -0
  261. package/dist/service/s3/bucket/notification/sim-s3-topic-notification.d.ts.map +1 -0
  262. package/dist/service/s3/bucket/notification/sim-s3-topic-notification.js +24 -0
  263. package/dist/service/s3/bucket/notification/sim-s3-topic-notification.js.map +1 -0
  264. package/dist/service/s3/bucket/notification/sim-s3-unsimulated-notification-destinations.d.ts +1 -1
  265. package/dist/service/s3/bucket/notification/sim-s3-unsimulated-notification-destinations.d.ts.map +1 -1
  266. package/dist/service/s3/bucket/notification/sim-s3-unsimulated-notification-destinations.js +3 -3
  267. package/dist/service/s3/bucket/notification/sim-s3-unsimulated-notification-destinations.js.map +1 -1
  268. package/dist/service/s3/bucket/sim-s3-bucket-access.d.ts +4 -0
  269. package/dist/service/s3/bucket/sim-s3-bucket-access.d.ts.map +1 -1
  270. package/dist/service/s3/bucket/sim-s3-bucket-access.js +8 -0
  271. package/dist/service/s3/bucket/sim-s3-bucket-access.js.map +1 -1
  272. package/dist/service/s3/cfn/bucket/notification/sim-cfn-s3-bucket-notification-configuration.d.ts +9 -6
  273. package/dist/service/s3/cfn/bucket/notification/sim-cfn-s3-bucket-notification-configuration.d.ts.map +1 -1
  274. package/dist/service/s3/cfn/bucket/notification/sim-cfn-s3-bucket-notification-configuration.js +32 -7
  275. package/dist/service/s3/cfn/bucket/notification/sim-cfn-s3-bucket-notification-configuration.js.map +1 -1
  276. package/dist/service/s3/command/get-bucket-notification-configuration/get-bucket-notification-configuration.command.d.ts +2 -1
  277. package/dist/service/s3/command/get-bucket-notification-configuration/get-bucket-notification-configuration.command.d.ts.map +1 -1
  278. package/dist/service/s3/command/put-bucket-notification-configuration/put-bucket-notification-configuration.command.d.ts +10 -1
  279. package/dist/service/s3/command/put-bucket-notification-configuration/put-bucket-notification-configuration.command.d.ts.map +1 -1
  280. package/dist/service/s3/command/put-object/put-object-builder.d.ts +13 -4
  281. package/dist/service/s3/command/put-object/put-object-builder.d.ts.map +1 -1
  282. package/dist/service/s3/command/put-object/put-object-builder.js +27 -10
  283. package/dist/service/s3/command/put-object/put-object-builder.js.map +1 -1
  284. package/dist/service/s3/command/put-object/put-object.command.d.ts +11 -0
  285. package/dist/service/s3/command/put-object/put-object.command.d.ts.map +1 -1
  286. package/dist/service/s3/index.d.ts +2 -0
  287. package/dist/service/s3/index.d.ts.map +1 -1
  288. package/dist/service/s3/mount/sim-s3-mount.type.d.ts +22 -0
  289. package/dist/service/s3/mount/sim-s3-mount.type.d.ts.map +1 -1
  290. package/dist/service/s3/notification/destination/lambda/sim-aws-s3-notification-functions.d.ts.map +1 -1
  291. package/dist/service/s3/notification/destination/lambda/sim-aws-s3-notification-functions.js +1 -0
  292. package/dist/service/s3/notification/destination/lambda/sim-aws-s3-notification-functions.js.map +1 -1
  293. package/dist/service/s3/notification/destination/sim-s3-notification-destination.d.ts +1 -1
  294. package/dist/service/s3/notification/destination/sim-s3-notification-destination.d.ts.map +1 -1
  295. package/dist/service/s3/notification/destination/sim-s3-service-notification-destinations.d.ts +2 -0
  296. package/dist/service/s3/notification/destination/sim-s3-service-notification-destinations.d.ts.map +1 -1
  297. package/dist/service/s3/notification/destination/sim-s3-service-notification-destinations.js +5 -0
  298. package/dist/service/s3/notification/destination/sim-s3-service-notification-destinations.js.map +1 -1
  299. package/dist/service/s3/notification/destination/sns/sim-aws-s3-notification-topics.d.ts +38 -0
  300. package/dist/service/s3/notification/destination/sns/sim-aws-s3-notification-topics.d.ts.map +1 -0
  301. package/dist/service/s3/notification/destination/sns/sim-aws-s3-notification-topics.js +50 -0
  302. package/dist/service/s3/notification/destination/sns/sim-aws-s3-notification-topics.js.map +1 -0
  303. package/dist/service/s3/notification/destination/sns/sim-s3-notification-topic-arn.d.ts +31 -0
  304. package/dist/service/s3/notification/destination/sns/sim-s3-notification-topic-arn.d.ts.map +1 -0
  305. package/dist/service/s3/notification/destination/sns/sim-s3-notification-topic-arn.js +48 -0
  306. package/dist/service/s3/notification/destination/sns/sim-s3-notification-topic-arn.js.map +1 -0
  307. package/dist/service/s3/notification/destination/sns/sim-s3-notification-topic.d.ts +43 -0
  308. package/dist/service/s3/notification/destination/sns/sim-s3-notification-topic.d.ts.map +1 -0
  309. package/dist/service/s3/notification/destination/sns/sim-s3-notification-topic.js +71 -0
  310. package/dist/service/s3/notification/destination/sns/sim-s3-notification-topic.js.map +1 -0
  311. package/dist/service/s3/notification/destination/sns/sim-s3-notification-topics.d.ts +22 -0
  312. package/dist/service/s3/notification/destination/sns/sim-s3-notification-topics.d.ts.map +1 -0
  313. package/dist/service/s3/notification/destination/sns/sim-s3-notification-topics.js +2 -0
  314. package/dist/service/s3/notification/destination/sns/sim-s3-notification-topics.js.map +1 -0
  315. package/dist/service/s3/notification/destination/sns/sim-s3-sns-notification-destination.d.ts +40 -0
  316. package/dist/service/s3/notification/destination/sns/sim-s3-sns-notification-destination.d.ts.map +1 -0
  317. package/dist/service/s3/notification/destination/sns/sim-s3-sns-notification-destination.js +51 -0
  318. package/dist/service/s3/notification/destination/sns/sim-s3-sns-notification-destination.js.map +1 -0
  319. package/dist/service/s3/object/s3-key-prefix-metadata.d.ts +51 -0
  320. package/dist/service/s3/object/s3-key-prefix-metadata.d.ts.map +1 -0
  321. package/dist/service/s3/object/s3-key-prefix-metadata.js +43 -0
  322. package/dist/service/s3/object/s3-key-prefix-metadata.js.map +1 -0
  323. package/dist/service/s3/object/s3-object-response-headers.d.ts +17 -0
  324. package/dist/service/s3/object/s3-object-response-headers.d.ts.map +1 -0
  325. package/dist/service/s3/object/s3-object-response-headers.js +29 -0
  326. package/dist/service/s3/object/s3-object-response-headers.js.map +1 -0
  327. package/dist/service/s3/object/s3-system-metadata.d.ts +32 -0
  328. package/dist/service/s3/object/s3-system-metadata.d.ts.map +1 -0
  329. package/dist/service/s3/object/s3-system-metadata.js +35 -0
  330. package/dist/service/s3/object/s3-system-metadata.js.map +1 -0
  331. package/dist/service/s3/serve/sim-s3-rest-object-reader.d.ts.map +1 -1
  332. package/dist/service/s3/serve/sim-s3-rest-object-reader.js +2 -5
  333. package/dist/service/s3/serve/sim-s3-rest-object-reader.js.map +1 -1
  334. package/dist/service/s3/serve/website/sim-s3-website-object-loader.js +1 -1
  335. package/dist/service/s3/serve/website/sim-s3-website-object-loader.js.map +1 -1
  336. package/dist/service/s3/serve/website/sim-s3-website-object.d.ts +3 -4
  337. package/dist/service/s3/serve/website/sim-s3-website-object.d.ts.map +1 -1
  338. package/dist/service/s3/serve/website/sim-s3-website-object.js +6 -11
  339. package/dist/service/s3/serve/website/sim-s3-website-object.js.map +1 -1
  340. package/dist/service/s3/sim-s3.d.ts +5 -0
  341. package/dist/service/s3/sim-s3.d.ts.map +1 -1
  342. package/dist/service/s3/sim-s3.js +5 -0
  343. package/dist/service/s3/sim-s3.js.map +1 -1
  344. package/dist/service/s3/storage/filesystem/s3-filesystem-object-metadata.d.ts +6 -1
  345. package/dist/service/s3/storage/filesystem/s3-filesystem-object-metadata.d.ts.map +1 -1
  346. package/dist/service/s3/storage/filesystem/s3-filesystem-object-metadata.js +7 -1
  347. package/dist/service/s3/storage/filesystem/s3-filesystem-object-metadata.js.map +1 -1
  348. package/dist/service/s3/storage/filesystem/s3-filesystem-storage.d.ts +7 -0
  349. package/dist/service/s3/storage/filesystem/s3-filesystem-storage.d.ts.map +1 -1
  350. package/dist/service/s3/storage/filesystem/s3-filesystem-storage.js +5 -1
  351. package/dist/service/s3/storage/filesystem/s3-filesystem-storage.js.map +1 -1
  352. package/dist/service/sns/cfn/sim-cfn-sns-attribute-value.d.ts +15 -0
  353. package/dist/service/sns/cfn/sim-cfn-sns-attribute-value.d.ts.map +1 -0
  354. package/dist/service/sns/cfn/sim-cfn-sns-attribute-value.js +23 -0
  355. package/dist/service/sns/cfn/sim-cfn-sns-attribute-value.js.map +1 -0
  356. package/dist/service/sns/cfn/sim-cfn-sns-resource-deleter.d.ts +38 -0
  357. package/dist/service/sns/cfn/sim-cfn-sns-resource-deleter.d.ts.map +1 -0
  358. package/dist/service/sns/cfn/sim-cfn-sns-resource-deleter.js +73 -0
  359. package/dist/service/sns/cfn/sim-cfn-sns-resource-deleter.js.map +1 -0
  360. package/dist/service/sns/cfn/sim-cfn-sns-resource-error.d.ts +24 -0
  361. package/dist/service/sns/cfn/sim-cfn-sns-resource-error.d.ts.map +1 -0
  362. package/dist/service/sns/cfn/sim-cfn-sns-resource-error.js +39 -0
  363. package/dist/service/sns/cfn/sim-cfn-sns-resource-error.js.map +1 -0
  364. package/dist/service/sns/cfn/sim-cfn-sns-resource-types.d.ts +11 -0
  365. package/dist/service/sns/cfn/sim-cfn-sns-resource-types.d.ts.map +1 -0
  366. package/dist/service/sns/cfn/sim-cfn-sns-resource-types.js +11 -0
  367. package/dist/service/sns/cfn/sim-cfn-sns-resource-types.js.map +1 -0
  368. package/dist/service/sns/cfn/sim-sns-cfn-resource-factory.d.ts +31 -0
  369. package/dist/service/sns/cfn/sim-sns-cfn-resource-factory.d.ts.map +1 -0
  370. package/dist/service/sns/cfn/sim-sns-cfn-resource-factory.js +54 -0
  371. package/dist/service/sns/cfn/sim-sns-cfn-resource-factory.js.map +1 -0
  372. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-creator.d.ts +26 -0
  373. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-creator.d.ts.map +1 -0
  374. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-creator.js +37 -0
  375. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-creator.js.map +1 -0
  376. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-properties.d.ts +47 -0
  377. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-properties.d.ts.map +1 -0
  378. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-properties.js +88 -0
  379. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-properties.js.map +1 -0
  380. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-property-names.d.ts +36 -0
  381. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-property-names.d.ts.map +1 -0
  382. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-property-names.js +55 -0
  383. package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-property-names.js.map +1 -0
  384. package/dist/service/sns/cfn/topic/sim-cfn-sns-inline-subscriptions.d.ts +23 -0
  385. package/dist/service/sns/cfn/topic/sim-cfn-sns-inline-subscriptions.d.ts.map +1 -0
  386. package/dist/service/sns/cfn/topic/sim-cfn-sns-inline-subscriptions.js +49 -0
  387. package/dist/service/sns/cfn/topic/sim-cfn-sns-inline-subscriptions.js.map +1 -0
  388. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-creator.d.ts +34 -0
  389. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-creator.d.ts.map +1 -0
  390. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-creator.js +60 -0
  391. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-creator.js.map +1 -0
  392. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-name.d.ts +22 -0
  393. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-name.d.ts.map +1 -0
  394. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-name.js +27 -0
  395. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-name.js.map +1 -0
  396. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-properties.d.ts +58 -0
  397. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-properties.d.ts.map +1 -0
  398. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-properties.js +93 -0
  399. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-properties.js.map +1 -0
  400. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-property-names.d.ts +31 -0
  401. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-property-names.d.ts.map +1 -0
  402. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-property-names.js +52 -0
  403. package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-property-names.js.map +1 -0
  404. package/dist/service/sns/cfn/topic-policy/sim-cfn-sns-topic-policy-creator.d.ts +34 -0
  405. package/dist/service/sns/cfn/topic-policy/sim-cfn-sns-topic-policy-creator.d.ts.map +1 -0
  406. package/dist/service/sns/cfn/topic-policy/sim-cfn-sns-topic-policy-creator.js +58 -0
  407. package/dist/service/sns/cfn/topic-policy/sim-cfn-sns-topic-policy-creator.js.map +1 -0
  408. package/dist/service/sns/cfn/topic-policy/sim-cfn-sns-topic-policy-properties.d.ts +20 -0
  409. package/dist/service/sns/cfn/topic-policy/sim-cfn-sns-topic-policy-properties.d.ts.map +1 -0
  410. package/dist/service/sns/cfn/topic-policy/sim-cfn-sns-topic-policy-properties.js +44 -0
  411. package/dist/service/sns/cfn/topic-policy/sim-cfn-sns-topic-policy-properties.js.map +1 -0
  412. package/dist/service/sns/command/authorize/sim-sns-authorizer.d.ts +58 -0
  413. package/dist/service/sns/command/authorize/sim-sns-authorizer.d.ts.map +1 -0
  414. package/dist/service/sns/command/authorize/sim-sns-authorizer.js +83 -0
  415. package/dist/service/sns/command/authorize/sim-sns-authorizer.js.map +1 -0
  416. package/dist/service/sns/command/authorize/sim-sns-condition-context.d.ts +13 -0
  417. package/dist/service/sns/command/authorize/sim-sns-condition-context.d.ts.map +1 -0
  418. package/dist/service/sns/command/authorize/sim-sns-condition-context.js +21 -0
  419. package/dist/service/sns/command/authorize/sim-sns-condition-context.js.map +1 -0
  420. package/dist/service/sns/command/authorize/sim-sns-service-publish-authorizer.d.ts +41 -0
  421. package/dist/service/sns/command/authorize/sim-sns-service-publish-authorizer.d.ts.map +1 -0
  422. package/dist/service/sns/command/authorize/sim-sns-service-publish-authorizer.js +40 -0
  423. package/dist/service/sns/command/authorize/sim-sns-service-publish-authorizer.js.map +1 -0
  424. package/dist/service/sns/command/authorize/sim-sns-topic-resource-policies.d.ts +12 -0
  425. package/dist/service/sns/command/authorize/sim-sns-topic-resource-policies.d.ts.map +1 -0
  426. package/dist/service/sns/command/authorize/sim-sns-topic-resource-policies.js +25 -0
  427. package/dist/service/sns/command/authorize/sim-sns-topic-resource-policies.js.map +1 -0
  428. package/dist/service/sns/command/publish/publish.command.d.ts +70 -0
  429. package/dist/service/sns/command/publish/publish.command.d.ts.map +1 -0
  430. package/dist/service/sns/command/publish/publish.command.js +2 -0
  431. package/dist/service/sns/command/publish/publish.command.js.map +1 -0
  432. package/dist/service/sns/command/publish/sim-sns-batch-entries.d.ts +52 -0
  433. package/dist/service/sns/command/publish/sim-sns-batch-entries.d.ts.map +1 -0
  434. package/dist/service/sns/command/publish/sim-sns-batch-entries.js +85 -0
  435. package/dist/service/sns/command/publish/sim-sns-batch-entries.js.map +1 -0
  436. package/dist/service/sns/command/publish/sim-sns-publish-commands.d.ts +53 -0
  437. package/dist/service/sns/command/publish/sim-sns-publish-commands.d.ts.map +1 -0
  438. package/dist/service/sns/command/publish/sim-sns-publish-commands.js +83 -0
  439. package/dist/service/sns/command/publish/sim-sns-publish-commands.js.map +1 -0
  440. package/dist/service/sns/command/publish/sim-sns-publish-input.d.ts +23 -0
  441. package/dist/service/sns/command/publish/sim-sns-publish-input.d.ts.map +1 -0
  442. package/dist/service/sns/command/publish/sim-sns-publish-input.js +47 -0
  443. package/dist/service/sns/command/publish/sim-sns-publish-input.js.map +1 -0
  444. package/dist/service/sns/command/sim-sns-command.types.d.ts +7 -0
  445. package/dist/service/sns/command/sim-sns-command.types.d.ts.map +1 -0
  446. package/dist/service/sns/command/sim-sns-command.types.js +2 -0
  447. package/dist/service/sns/command/sim-sns-command.types.js.map +1 -0
  448. package/dist/service/sns/command/sim-sns-commands.d.ts +45 -0
  449. package/dist/service/sns/command/sim-sns-commands.d.ts.map +1 -0
  450. package/dist/service/sns/command/sim-sns-commands.js +83 -0
  451. package/dist/service/sns/command/sim-sns-commands.js.map +1 -0
  452. package/dist/service/sns/command/sim-sns-page.d.ts +19 -0
  453. package/dist/service/sns/command/sim-sns-page.d.ts.map +1 -0
  454. package/dist/service/sns/command/sim-sns-page.js +51 -0
  455. package/dist/service/sns/command/sim-sns-page.js.map +1 -0
  456. package/dist/service/sns/command/sim-sns-request-options.d.ts +47 -0
  457. package/dist/service/sns/command/sim-sns-request-options.d.ts.map +1 -0
  458. package/dist/service/sns/command/sim-sns-request-options.js +19 -0
  459. package/dist/service/sns/command/sim-sns-request-options.js.map +1 -0
  460. package/dist/service/sns/command/subscription/sim-sns-subscription-access.d.ts +42 -0
  461. package/dist/service/sns/command/subscription/sim-sns-subscription-access.d.ts.map +1 -0
  462. package/dist/service/sns/command/subscription/sim-sns-subscription-access.js +57 -0
  463. package/dist/service/sns/command/subscription/sim-sns-subscription-access.js.map +1 -0
  464. package/dist/service/sns/command/subscription/sim-sns-subscription-attribute-commands.d.ts +31 -0
  465. package/dist/service/sns/command/subscription/sim-sns-subscription-attribute-commands.d.ts.map +1 -0
  466. package/dist/service/sns/command/subscription/sim-sns-subscription-attribute-commands.js +44 -0
  467. package/dist/service/sns/command/subscription/sim-sns-subscription-attribute-commands.js.map +1 -0
  468. package/dist/service/sns/command/subscription/sim-sns-subscription-commands.d.ts +50 -0
  469. package/dist/service/sns/command/subscription/sim-sns-subscription-commands.d.ts.map +1 -0
  470. package/dist/service/sns/command/subscription/sim-sns-subscription-commands.js +73 -0
  471. package/dist/service/sns/command/subscription/sim-sns-subscription-commands.js.map +1 -0
  472. package/dist/service/sns/command/subscription/sim-sns-subscription-listings.d.ts +34 -0
  473. package/dist/service/sns/command/subscription/sim-sns-subscription-listings.d.ts.map +1 -0
  474. package/dist/service/sns/command/subscription/sim-sns-subscription-listings.js +57 -0
  475. package/dist/service/sns/command/subscription/sim-sns-subscription-listings.js.map +1 -0
  476. package/dist/service/sns/command/subscription/subscription.command.d.ts +118 -0
  477. package/dist/service/sns/command/subscription/subscription.command.d.ts.map +1 -0
  478. package/dist/service/sns/command/subscription/subscription.command.js +2 -0
  479. package/dist/service/sns/command/subscription/subscription.command.js.map +1 -0
  480. package/dist/service/sns/command/topic/sim-sns-create-topic.d.ts +41 -0
  481. package/dist/service/sns/command/topic/sim-sns-create-topic.d.ts.map +1 -0
  482. package/dist/service/sns/command/topic/sim-sns-create-topic.js +54 -0
  483. package/dist/service/sns/command/topic/sim-sns-create-topic.js.map +1 -0
  484. package/dist/service/sns/command/topic/sim-sns-request-topic-name.d.ts +11 -0
  485. package/dist/service/sns/command/topic/sim-sns-request-topic-name.d.ts.map +1 -0
  486. package/dist/service/sns/command/topic/sim-sns-request-topic-name.js +28 -0
  487. package/dist/service/sns/command/topic/sim-sns-request-topic-name.js.map +1 -0
  488. package/dist/service/sns/command/topic/sim-sns-topic-access.d.ts +76 -0
  489. package/dist/service/sns/command/topic/sim-sns-topic-access.d.ts.map +1 -0
  490. package/dist/service/sns/command/topic/sim-sns-topic-access.js +81 -0
  491. package/dist/service/sns/command/topic/sim-sns-topic-access.js.map +1 -0
  492. package/dist/service/sns/command/topic/sim-sns-topic-attribute-commands.d.ts +36 -0
  493. package/dist/service/sns/command/topic/sim-sns-topic-attribute-commands.d.ts.map +1 -0
  494. package/dist/service/sns/command/topic/sim-sns-topic-attribute-commands.js +47 -0
  495. package/dist/service/sns/command/topic/sim-sns-topic-attribute-commands.js.map +1 -0
  496. package/dist/service/sns/command/topic/sim-sns-topic-commands.d.ts +42 -0
  497. package/dist/service/sns/command/topic/sim-sns-topic-commands.d.ts.map +1 -0
  498. package/dist/service/sns/command/topic/sim-sns-topic-commands.js +51 -0
  499. package/dist/service/sns/command/topic/sim-sns-topic-commands.js.map +1 -0
  500. package/dist/service/sns/command/topic/sim-sns-unsimulated-topic-input.d.ts +11 -0
  501. package/dist/service/sns/command/topic/sim-sns-unsimulated-topic-input.d.ts.map +1 -0
  502. package/dist/service/sns/command/topic/sim-sns-unsimulated-topic-input.js +20 -0
  503. package/dist/service/sns/command/topic/sim-sns-unsimulated-topic-input.js.map +1 -0
  504. package/dist/service/sns/command/topic/topic.command.d.ts +95 -0
  505. package/dist/service/sns/command/topic/topic.command.d.ts.map +1 -0
  506. package/dist/service/sns/command/topic/topic.command.js +2 -0
  507. package/dist/service/sns/command/topic/topic.command.js.map +1 -0
  508. package/dist/service/sns/delivery/lambda/sim-aws-sns-delivery-functions.d.ts +27 -0
  509. package/dist/service/sns/delivery/lambda/sim-aws-sns-delivery-functions.d.ts.map +1 -0
  510. package/dist/service/sns/delivery/lambda/sim-aws-sns-delivery-functions.js +31 -0
  511. package/dist/service/sns/delivery/lambda/sim-aws-sns-delivery-functions.js.map +1 -0
  512. package/dist/service/sns/delivery/lambda/sim-sns-delivery-function.d.ts +31 -0
  513. package/dist/service/sns/delivery/lambda/sim-sns-delivery-function.d.ts.map +1 -0
  514. package/dist/service/sns/delivery/lambda/sim-sns-delivery-function.js +62 -0
  515. package/dist/service/sns/delivery/lambda/sim-sns-delivery-function.js.map +1 -0
  516. package/dist/service/sns/delivery/lambda/sim-sns-lambda-event.d.ts +10 -0
  517. package/dist/service/sns/delivery/lambda/sim-sns-lambda-event.d.ts.map +1 -0
  518. package/dist/service/sns/delivery/lambda/sim-sns-lambda-event.js +53 -0
  519. package/dist/service/sns/delivery/lambda/sim-sns-lambda-event.js.map +1 -0
  520. package/dist/service/sns/delivery/sim-aws-sns-delivery-endpoints.d.ts +17 -0
  521. package/dist/service/sns/delivery/sim-aws-sns-delivery-endpoints.d.ts.map +1 -0
  522. package/dist/service/sns/delivery/sim-aws-sns-delivery-endpoints.js +21 -0
  523. package/dist/service/sns/delivery/sim-aws-sns-delivery-endpoints.js.map +1 -0
  524. package/dist/service/sns/delivery/sim-sns-canonical-message.d.ts +32 -0
  525. package/dist/service/sns/delivery/sim-sns-canonical-message.d.ts.map +1 -0
  526. package/dist/service/sns/delivery/sim-sns-canonical-message.js +24 -0
  527. package/dist/service/sns/delivery/sim-sns-canonical-message.js.map +1 -0
  528. package/dist/service/sns/delivery/sim-sns-delivery-failures.d.ts +60 -0
  529. package/dist/service/sns/delivery/sim-sns-delivery-failures.d.ts.map +1 -0
  530. package/dist/service/sns/delivery/sim-sns-delivery-failures.js +84 -0
  531. package/dist/service/sns/delivery/sim-sns-delivery-failures.js.map +1 -0
  532. package/dist/service/sns/delivery/sim-sns-delivery-request.d.ts +28 -0
  533. package/dist/service/sns/delivery/sim-sns-delivery-request.d.ts.map +1 -0
  534. package/dist/service/sns/delivery/sim-sns-delivery-request.js +34 -0
  535. package/dist/service/sns/delivery/sim-sns-delivery-request.js.map +1 -0
  536. package/dist/service/sns/delivery/sim-sns-delivery.d.ts +55 -0
  537. package/dist/service/sns/delivery/sim-sns-delivery.d.ts.map +1 -0
  538. package/dist/service/sns/delivery/sim-sns-delivery.js +18 -0
  539. package/dist/service/sns/delivery/sim-sns-delivery.js.map +1 -0
  540. package/dist/service/sns/delivery/sim-sns-envelope.d.ts +26 -0
  541. package/dist/service/sns/delivery/sim-sns-envelope.d.ts.map +1 -0
  542. package/dist/service/sns/delivery/sim-sns-envelope.js +41 -0
  543. package/dist/service/sns/delivery/sim-sns-envelope.js.map +1 -0
  544. package/dist/service/sns/delivery/sim-sns-fan-out.d.ts +53 -0
  545. package/dist/service/sns/delivery/sim-sns-fan-out.d.ts.map +1 -0
  546. package/dist/service/sns/delivery/sim-sns-fan-out.js +69 -0
  547. package/dist/service/sns/delivery/sim-sns-fan-out.js.map +1 -0
  548. package/dist/service/sns/delivery/sim-sns-no-delivery-endpoints.d.ts +17 -0
  549. package/dist/service/sns/delivery/sim-sns-no-delivery-endpoints.d.ts.map +1 -0
  550. package/dist/service/sns/delivery/sim-sns-no-delivery-endpoints.js +23 -0
  551. package/dist/service/sns/delivery/sim-sns-no-delivery-endpoints.js.map +1 -0
  552. package/dist/service/sns/delivery/sim-sns-notification.d.ts +57 -0
  553. package/dist/service/sns/delivery/sim-sns-notification.d.ts.map +1 -0
  554. package/dist/service/sns/delivery/sim-sns-notification.js +64 -0
  555. package/dist/service/sns/delivery/sim-sns-notification.js.map +1 -0
  556. package/dist/service/sns/delivery/sim-sns-protocol-delivery-endpoints.d.ts +32 -0
  557. package/dist/service/sns/delivery/sim-sns-protocol-delivery-endpoints.d.ts.map +1 -0
  558. package/dist/service/sns/delivery/sim-sns-protocol-delivery-endpoints.js +22 -0
  559. package/dist/service/sns/delivery/sim-sns-protocol-delivery-endpoints.js.map +1 -0
  560. package/dist/service/sns/delivery/sqs/sim-aws-sns-delivery-queues.d.ts +29 -0
  561. package/dist/service/sns/delivery/sqs/sim-aws-sns-delivery-queues.d.ts.map +1 -0
  562. package/dist/service/sns/delivery/sqs/sim-aws-sns-delivery-queues.js +33 -0
  563. package/dist/service/sns/delivery/sqs/sim-aws-sns-delivery-queues.js.map +1 -0
  564. package/dist/service/sns/delivery/sqs/sim-sns-delivery-queue.d.ts +31 -0
  565. package/dist/service/sns/delivery/sqs/sim-sns-delivery-queue.d.ts.map +1 -0
  566. package/dist/service/sns/delivery/sqs/sim-sns-delivery-queue.js +63 -0
  567. package/dist/service/sns/delivery/sqs/sim-sns-delivery-queue.js.map +1 -0
  568. package/dist/service/sns/delivery/sqs/sim-sns-queue-message.d.ts +24 -0
  569. package/dist/service/sns/delivery/sqs/sim-sns-queue-message.d.ts.map +1 -0
  570. package/dist/service/sns/delivery/sqs/sim-sns-queue-message.js +38 -0
  571. package/dist/service/sns/delivery/sqs/sim-sns-queue-message.js.map +1 -0
  572. package/dist/service/sns/error/sim-sns-delivery.error.d.ts +13 -0
  573. package/dist/service/sns/error/sim-sns-delivery.error.d.ts.map +1 -0
  574. package/dist/service/sns/error/sim-sns-delivery.error.js +13 -0
  575. package/dist/service/sns/error/sim-sns-delivery.error.js.map +1 -0
  576. package/dist/service/sns/error/sim-sns.error.d.ts +107 -0
  577. package/dist/service/sns/error/sim-sns.error.d.ts.map +1 -0
  578. package/dist/service/sns/error/sim-sns.error.js +124 -0
  579. package/dist/service/sns/error/sim-sns.error.js.map +1 -0
  580. package/dist/service/sns/filter/match/sim-sns-anything-but-match.d.ts +30 -0
  581. package/dist/service/sns/filter/match/sim-sns-anything-but-match.d.ts.map +1 -0
  582. package/dist/service/sns/filter/match/sim-sns-anything-but-match.js +82 -0
  583. package/dist/service/sns/filter/match/sim-sns-anything-but-match.js.map +1 -0
  584. package/dist/service/sns/filter/match/sim-sns-equals-ignore-case-match.d.ts +24 -0
  585. package/dist/service/sns/filter/match/sim-sns-equals-ignore-case-match.d.ts.map +1 -0
  586. package/dist/service/sns/filter/match/sim-sns-equals-ignore-case-match.js +30 -0
  587. package/dist/service/sns/filter/match/sim-sns-equals-ignore-case-match.js.map +1 -0
  588. package/dist/service/sns/filter/match/sim-sns-exact-match.d.ts +22 -0
  589. package/dist/service/sns/filter/match/sim-sns-exact-match.d.ts.map +1 -0
  590. package/dist/service/sns/filter/match/sim-sns-exact-match.js +49 -0
  591. package/dist/service/sns/filter/match/sim-sns-exact-match.js.map +1 -0
  592. package/dist/service/sns/filter/match/sim-sns-exists-match.d.ts +27 -0
  593. package/dist/service/sns/filter/match/sim-sns-exists-match.d.ts.map +1 -0
  594. package/dist/service/sns/filter/match/sim-sns-exists-match.js +38 -0
  595. package/dist/service/sns/filter/match/sim-sns-exists-match.js.map +1 -0
  596. package/dist/service/sns/filter/match/sim-sns-filter-match.d.ts +24 -0
  597. package/dist/service/sns/filter/match/sim-sns-filter-match.d.ts.map +1 -0
  598. package/dist/service/sns/filter/match/sim-sns-filter-match.js +19 -0
  599. package/dist/service/sns/filter/match/sim-sns-filter-match.js.map +1 -0
  600. package/dist/service/sns/filter/match/sim-sns-numeric-match.d.ts +48 -0
  601. package/dist/service/sns/filter/match/sim-sns-numeric-match.d.ts.map +1 -0
  602. package/dist/service/sns/filter/match/sim-sns-numeric-match.js +107 -0
  603. package/dist/service/sns/filter/match/sim-sns-numeric-match.js.map +1 -0
  604. package/dist/service/sns/filter/match/sim-sns-prefix-match.d.ts +26 -0
  605. package/dist/service/sns/filter/match/sim-sns-prefix-match.d.ts.map +1 -0
  606. package/dist/service/sns/filter/match/sim-sns-prefix-match.js +32 -0
  607. package/dist/service/sns/filter/match/sim-sns-prefix-match.js.map +1 -0
  608. package/dist/service/sns/filter/match/sim-sns-suffix-match.d.ts +23 -0
  609. package/dist/service/sns/filter/match/sim-sns-suffix-match.d.ts.map +1 -0
  610. package/dist/service/sns/filter/match/sim-sns-suffix-match.js +29 -0
  611. package/dist/service/sns/filter/match/sim-sns-suffix-match.js.map +1 -0
  612. package/dist/service/sns/filter/sim-sns-attribute-subject.d.ts +31 -0
  613. package/dist/service/sns/filter/sim-sns-attribute-subject.d.ts.map +1 -0
  614. package/dist/service/sns/filter/sim-sns-attribute-subject.js +85 -0
  615. package/dist/service/sns/filter/sim-sns-attribute-subject.js.map +1 -0
  616. package/dist/service/sns/filter/sim-sns-body-subject.d.ts +30 -0
  617. package/dist/service/sns/filter/sim-sns-body-subject.d.ts.map +1 -0
  618. package/dist/service/sns/filter/sim-sns-body-subject.js +67 -0
  619. package/dist/service/sns/filter/sim-sns-body-subject.js.map +1 -0
  620. package/dist/service/sns/filter/sim-sns-filter-any-rule.d.ts +21 -0
  621. package/dist/service/sns/filter/sim-sns-filter-any-rule.d.ts.map +1 -0
  622. package/dist/service/sns/filter/sim-sns-filter-any-rule.js +23 -0
  623. package/dist/service/sns/filter/sim-sns-filter-any-rule.js.map +1 -0
  624. package/dist/service/sns/filter/sim-sns-filter-key-rule.d.ts +28 -0
  625. package/dist/service/sns/filter/sim-sns-filter-key-rule.d.ts.map +1 -0
  626. package/dist/service/sns/filter/sim-sns-filter-key-rule.js +48 -0
  627. package/dist/service/sns/filter/sim-sns-filter-key-rule.js.map +1 -0
  628. package/dist/service/sns/filter/sim-sns-filter-matches.d.ts +9 -0
  629. package/dist/service/sns/filter/sim-sns-filter-matches.d.ts.map +1 -0
  630. package/dist/service/sns/filter/sim-sns-filter-matches.js +40 -0
  631. package/dist/service/sns/filter/sim-sns-filter-matches.js.map +1 -0
  632. package/dist/service/sns/filter/sim-sns-filter-operators.d.ts +22 -0
  633. package/dist/service/sns/filter/sim-sns-filter-operators.d.ts.map +1 -0
  634. package/dist/service/sns/filter/sim-sns-filter-operators.js +50 -0
  635. package/dist/service/sns/filter/sim-sns-filter-operators.js.map +1 -0
  636. package/dist/service/sns/filter/sim-sns-filter-or-eligibility.d.ts +17 -0
  637. package/dist/service/sns/filter/sim-sns-filter-or-eligibility.d.ts.map +1 -0
  638. package/dist/service/sns/filter/sim-sns-filter-or-eligibility.js +47 -0
  639. package/dist/service/sns/filter/sim-sns-filter-or-eligibility.js.map +1 -0
  640. package/dist/service/sns/filter/sim-sns-filter-policy-scope.d.ts +36 -0
  641. package/dist/service/sns/filter/sim-sns-filter-policy-scope.d.ts.map +1 -0
  642. package/dist/service/sns/filter/sim-sns-filter-policy-scope.js +67 -0
  643. package/dist/service/sns/filter/sim-sns-filter-policy-scope.js.map +1 -0
  644. package/dist/service/sns/filter/sim-sns-filter-policy.d.ts +48 -0
  645. package/dist/service/sns/filter/sim-sns-filter-policy.d.ts.map +1 -0
  646. package/dist/service/sns/filter/sim-sns-filter-policy.js +84 -0
  647. package/dist/service/sns/filter/sim-sns-filter-policy.js.map +1 -0
  648. package/dist/service/sns/filter/sim-sns-filter-refusals.d.ts +38 -0
  649. package/dist/service/sns/filter/sim-sns-filter-refusals.d.ts.map +1 -0
  650. package/dist/service/sns/filter/sim-sns-filter-refusals.js +53 -0
  651. package/dist/service/sns/filter/sim-sns-filter-refusals.js.map +1 -0
  652. package/dist/service/sns/filter/sim-sns-filter-rule.d.ts +15 -0
  653. package/dist/service/sns/filter/sim-sns-filter-rule.d.ts.map +1 -0
  654. package/dist/service/sns/filter/sim-sns-filter-rule.js +2 -0
  655. package/dist/service/sns/filter/sim-sns-filter-rule.js.map +1 -0
  656. package/dist/service/sns/filter/sim-sns-filter-rules.d.ts +27 -0
  657. package/dist/service/sns/filter/sim-sns-filter-rules.d.ts.map +1 -0
  658. package/dist/service/sns/filter/sim-sns-filter-rules.js +66 -0
  659. package/dist/service/sns/filter/sim-sns-filter-rules.js.map +1 -0
  660. package/dist/service/sns/filter/sim-sns-filter-subject.d.ts +31 -0
  661. package/dist/service/sns/filter/sim-sns-filter-subject.d.ts.map +1 -0
  662. package/dist/service/sns/filter/sim-sns-filter-subject.js +2 -0
  663. package/dist/service/sns/filter/sim-sns-filter-subject.js.map +1 -0
  664. package/dist/service/sns/filter/sim-sns-filter-value.d.ts +45 -0
  665. package/dist/service/sns/filter/sim-sns-filter-value.d.ts.map +1 -0
  666. package/dist/service/sns/filter/sim-sns-filter-value.js +83 -0
  667. package/dist/service/sns/filter/sim-sns-filter-value.js.map +1 -0
  668. package/dist/service/sns/filter/sim-sns-json-filter-values.d.ts +12 -0
  669. package/dist/service/sns/filter/sim-sns-json-filter-values.d.ts.map +1 -0
  670. package/dist/service/sns/filter/sim-sns-json-filter-values.js +25 -0
  671. package/dist/service/sns/filter/sim-sns-json-filter-values.js.map +1 -0
  672. package/dist/service/sns/index.d.ts +33 -0
  673. package/dist/service/sns/index.d.ts.map +1 -0
  674. package/dist/service/sns/index.js +29 -0
  675. package/dist/service/sns/index.js.map +1 -0
  676. package/dist/service/sns/message/sim-sns-message-attribute-rules.d.ts +23 -0
  677. package/dist/service/sns/message/sim-sns-message-attribute-rules.d.ts.map +1 -0
  678. package/dist/service/sns/message/sim-sns-message-attribute-rules.js +74 -0
  679. package/dist/service/sns/message/sim-sns-message-attribute-rules.js.map +1 -0
  680. package/dist/service/sns/message/sim-sns-message-attribute-value.d.ts +15 -0
  681. package/dist/service/sns/message/sim-sns-message-attribute-value.d.ts.map +1 -0
  682. package/dist/service/sns/message/sim-sns-message-attribute-value.js +2 -0
  683. package/dist/service/sns/message/sim-sns-message-attribute-value.js.map +1 -0
  684. package/dist/service/sns/message/sim-sns-message-attribute.d.ts +55 -0
  685. package/dist/service/sns/message/sim-sns-message-attribute.d.ts.map +1 -0
  686. package/dist/service/sns/message/sim-sns-message-attribute.js +78 -0
  687. package/dist/service/sns/message/sim-sns-message-attribute.js.map +1 -0
  688. package/dist/service/sns/message/sim-sns-message-attributes.d.ts +71 -0
  689. package/dist/service/sns/message/sim-sns-message-attributes.d.ts.map +1 -0
  690. package/dist/service/sns/message/sim-sns-message-attributes.js +80 -0
  691. package/dist/service/sns/message/sim-sns-message-attributes.js.map +1 -0
  692. package/dist/service/sns/message/sim-sns-message-body.d.ts +17 -0
  693. package/dist/service/sns/message/sim-sns-message-body.d.ts.map +1 -0
  694. package/dist/service/sns/message/sim-sns-message-body.js +26 -0
  695. package/dist/service/sns/message/sim-sns-message-body.js.map +1 -0
  696. package/dist/service/sns/message/sim-sns-message-subject.d.ts +27 -0
  697. package/dist/service/sns/message/sim-sns-message-subject.d.ts.map +1 -0
  698. package/dist/service/sns/message/sim-sns-message-subject.js +74 -0
  699. package/dist/service/sns/message/sim-sns-message-subject.js.map +1 -0
  700. package/dist/service/sns/message/sim-sns-published-message.d.ts +55 -0
  701. package/dist/service/sns/message/sim-sns-published-message.d.ts.map +1 -0
  702. package/dist/service/sns/message/sim-sns-published-message.js +69 -0
  703. package/dist/service/sns/message/sim-sns-published-message.js.map +1 -0
  704. package/dist/service/sns/sdk/sim-sns-sdk-command-router.d.ts +18 -0
  705. package/dist/service/sns/sdk/sim-sns-sdk-command-router.d.ts.map +1 -0
  706. package/dist/service/sns/sdk/sim-sns-sdk-command-router.js +76 -0
  707. package/dist/service/sns/sdk/sim-sns-sdk-command-router.js.map +1 -0
  708. package/dist/service/sns/signature/sim-sns-certificate.d.ts +30 -0
  709. package/dist/service/sns/signature/sim-sns-certificate.d.ts.map +1 -0
  710. package/dist/service/sns/signature/sim-sns-certificate.js +110 -0
  711. package/dist/service/sns/signature/sim-sns-certificate.js.map +1 -0
  712. package/dist/service/sns/signature/sim-sns-der.d.ts +40 -0
  713. package/dist/service/sns/signature/sim-sns-der.d.ts.map +1 -0
  714. package/dist/service/sns/signature/sim-sns-der.js +64 -0
  715. package/dist/service/sns/signature/sim-sns-der.js.map +1 -0
  716. package/dist/service/sns/signature/sim-sns-host.d.ts +28 -0
  717. package/dist/service/sns/signature/sim-sns-host.d.ts.map +1 -0
  718. package/dist/service/sns/signature/sim-sns-host.js +33 -0
  719. package/dist/service/sns/signature/sim-sns-host.js.map +1 -0
  720. package/dist/service/sns/signature/sim-sns-message-signer.d.ts +51 -0
  721. package/dist/service/sns/signature/sim-sns-message-signer.d.ts.map +1 -0
  722. package/dist/service/sns/signature/sim-sns-message-signer.js +60 -0
  723. package/dist/service/sns/signature/sim-sns-message-signer.js.map +1 -0
  724. package/dist/service/sns/signature/sim-sns-signing-key.d.ts +34 -0
  725. package/dist/service/sns/signature/sim-sns-signing-key.d.ts.map +1 -0
  726. package/dist/service/sns/signature/sim-sns-signing-key.js +69 -0
  727. package/dist/service/sns/signature/sim-sns-signing-key.js.map +1 -0
  728. package/dist/service/sns/sim-sns.d.ts +139 -0
  729. package/dist/service/sns/sim-sns.d.ts.map +1 -0
  730. package/dist/service/sns/sim-sns.js +188 -0
  731. package/dist/service/sns/sim-sns.js.map +1 -0
  732. package/dist/service/sns/subscription/sim-sns-function-endpoint-arn.d.ts +31 -0
  733. package/dist/service/sns/subscription/sim-sns-function-endpoint-arn.d.ts.map +1 -0
  734. package/dist/service/sns/subscription/sim-sns-function-endpoint-arn.js +54 -0
  735. package/dist/service/sns/subscription/sim-sns-function-endpoint-arn.js.map +1 -0
  736. package/dist/service/sns/subscription/sim-sns-queue-endpoint-arn.d.ts +30 -0
  737. package/dist/service/sns/subscription/sim-sns-queue-endpoint-arn.d.ts.map +1 -0
  738. package/dist/service/sns/subscription/sim-sns-queue-endpoint-arn.js +78 -0
  739. package/dist/service/sns/subscription/sim-sns-queue-endpoint-arn.js.map +1 -0
  740. package/dist/service/sns/subscription/sim-sns-requested-subscription-attributes.d.ts +28 -0
  741. package/dist/service/sns/subscription/sim-sns-requested-subscription-attributes.d.ts.map +1 -0
  742. package/dist/service/sns/subscription/sim-sns-requested-subscription-attributes.js +43 -0
  743. package/dist/service/sns/subscription/sim-sns-requested-subscription-attributes.js.map +1 -0
  744. package/dist/service/sns/subscription/sim-sns-subscription-arn.d.ts +43 -0
  745. package/dist/service/sns/subscription/sim-sns-subscription-arn.d.ts.map +1 -0
  746. package/dist/service/sns/subscription/sim-sns-subscription-arn.js +70 -0
  747. package/dist/service/sns/subscription/sim-sns-subscription-arn.js.map +1 -0
  748. package/dist/service/sns/subscription/sim-sns-subscription-attribute-changes.d.ts +20 -0
  749. package/dist/service/sns/subscription/sim-sns-subscription-attribute-changes.d.ts.map +1 -0
  750. package/dist/service/sns/subscription/sim-sns-subscription-attribute-changes.js +52 -0
  751. package/dist/service/sns/subscription/sim-sns-subscription-attribute-changes.js.map +1 -0
  752. package/dist/service/sns/subscription/sim-sns-subscription-attribute-names.d.ts +26 -0
  753. package/dist/service/sns/subscription/sim-sns-subscription-attribute-names.d.ts.map +1 -0
  754. package/dist/service/sns/subscription/sim-sns-subscription-attribute-names.js +64 -0
  755. package/dist/service/sns/subscription/sim-sns-subscription-attribute-names.js.map +1 -0
  756. package/dist/service/sns/subscription/sim-sns-subscription-attributes.d.ts +47 -0
  757. package/dist/service/sns/subscription/sim-sns-subscription-attributes.d.ts.map +1 -0
  758. package/dist/service/sns/subscription/sim-sns-subscription-attributes.js +67 -0
  759. package/dist/service/sns/subscription/sim-sns-subscription-attributes.js.map +1 -0
  760. package/dist/service/sns/subscription/sim-sns-subscription-endpoint.d.ts +26 -0
  761. package/dist/service/sns/subscription/sim-sns-subscription-endpoint.d.ts.map +1 -0
  762. package/dist/service/sns/subscription/sim-sns-subscription-endpoint.js +21 -0
  763. package/dist/service/sns/subscription/sim-sns-subscription-endpoint.js.map +1 -0
  764. package/dist/service/sns/subscription/sim-sns-subscription-protocol.d.ts +33 -0
  765. package/dist/service/sns/subscription/sim-sns-subscription-protocol.d.ts.map +1 -0
  766. package/dist/service/sns/subscription/sim-sns-subscription-protocol.js +63 -0
  767. package/dist/service/sns/subscription/sim-sns-subscription-protocol.js.map +1 -0
  768. package/dist/service/sns/subscription/sim-sns-subscription-store.d.ts +71 -0
  769. package/dist/service/sns/subscription/sim-sns-subscription-store.d.ts.map +1 -0
  770. package/dist/service/sns/subscription/sim-sns-subscription-store.js +88 -0
  771. package/dist/service/sns/subscription/sim-sns-subscription-store.js.map +1 -0
  772. package/dist/service/sns/subscription/sim-sns-subscription.d.ts +72 -0
  773. package/dist/service/sns/subscription/sim-sns-subscription.d.ts.map +1 -0
  774. package/dist/service/sns/subscription/sim-sns-subscription.js +116 -0
  775. package/dist/service/sns/subscription/sim-sns-subscription.js.map +1 -0
  776. package/dist/service/sns/topic/sim-sns-topic-arn.d.ts +52 -0
  777. package/dist/service/sns/topic/sim-sns-topic-arn.d.ts.map +1 -0
  778. package/dist/service/sns/topic/sim-sns-topic-arn.js +71 -0
  779. package/dist/service/sns/topic/sim-sns-topic-arn.js.map +1 -0
  780. package/dist/service/sns/topic/sim-sns-topic-attribute-names.d.ts +19 -0
  781. package/dist/service/sns/topic/sim-sns-topic-attribute-names.d.ts.map +1 -0
  782. package/dist/service/sns/topic/sim-sns-topic-attribute-names.js +79 -0
  783. package/dist/service/sns/topic/sim-sns-topic-attribute-names.js.map +1 -0
  784. package/dist/service/sns/topic/sim-sns-topic-attributes.d.ts +56 -0
  785. package/dist/service/sns/topic/sim-sns-topic-attributes.d.ts.map +1 -0
  786. package/dist/service/sns/topic/sim-sns-topic-attributes.js +85 -0
  787. package/dist/service/sns/topic/sim-sns-topic-attributes.js.map +1 -0
  788. package/dist/service/sns/topic/sim-sns-topic-name.d.ts +21 -0
  789. package/dist/service/sns/topic/sim-sns-topic-name.d.ts.map +1 -0
  790. package/dist/service/sns/topic/sim-sns-topic-name.js +48 -0
  791. package/dist/service/sns/topic/sim-sns-topic-name.js.map +1 -0
  792. package/dist/service/sns/topic/sim-sns-topic-policy.d.ts +23 -0
  793. package/dist/service/sns/topic/sim-sns-topic-policy.d.ts.map +1 -0
  794. package/dist/service/sns/topic/sim-sns-topic-policy.js +59 -0
  795. package/dist/service/sns/topic/sim-sns-topic-policy.js.map +1 -0
  796. package/dist/service/sns/topic/sim-sns-topic-store.d.ts +35 -0
  797. package/dist/service/sns/topic/sim-sns-topic-store.d.ts.map +1 -0
  798. package/dist/service/sns/topic/sim-sns-topic-store.js +50 -0
  799. package/dist/service/sns/topic/sim-sns-topic-store.js.map +1 -0
  800. package/dist/service/sns/topic/sim-sns-topic.d.ts +48 -0
  801. package/dist/service/sns/topic/sim-sns-topic.d.ts.map +1 -0
  802. package/dist/service/sns/topic/sim-sns-topic.js +80 -0
  803. package/dist/service/sns/topic/sim-sns-topic.js.map +1 -0
  804. package/dist/service/sqs/command/authorize/sim-sqs-authorizer.d.ts +3 -6
  805. package/dist/service/sqs/command/authorize/sim-sqs-authorizer.d.ts.map +1 -1
  806. package/dist/service/sqs/command/authorize/sim-sqs-authorizer.js +13 -7
  807. package/dist/service/sqs/command/authorize/sim-sqs-authorizer.js.map +1 -1
  808. package/dist/service/sqs/index.d.ts +1 -1
  809. package/dist/service/sqs/index.d.ts.map +1 -1
  810. package/dist/service/sqs/index.js +1 -1
  811. package/dist/service/sqs/index.js.map +1 -1
  812. package/dist/service/sqs/queue/sim-sqs-queue-arn.d.ts +0 -7
  813. package/dist/service/sqs/queue/sim-sqs-queue-arn.d.ts.map +1 -1
  814. package/dist/service/sqs/queue/sim-sqs-queue-arn.js +0 -9
  815. package/dist/service/sqs/queue/sim-sqs-queue-arn.js.map +1 -1
  816. package/dist/service/sqs/sim-sqs.js +1 -1
  817. package/dist/service/sqs/sim-sqs.js.map +1 -1
  818. package/dist/util/filesystem/temporary-directory.d.ts +4 -1
  819. package/dist/util/filesystem/temporary-directory.d.ts.map +1 -1
  820. package/dist/util/filesystem/temporary-directory.js +5 -3
  821. package/dist/util/filesystem/temporary-directory.js.map +1 -1
  822. package/package.json +15 -2
@@ -0,0 +1,83 @@
1
+ import { SimSnsDeliveryRequests } from "../delivery/sim-sns-delivery-request.js";
2
+ import { SimSnsFanOut } from "../delivery/sim-sns-fan-out.js";
3
+ import { SimSnsMessageSigner } from "../signature/sim-sns-message-signer.js";
4
+ import { SimSnsAuthorizer } from "./authorize/sim-sns-authorizer.js";
5
+ import { SimSnsPublishCommands } from "./publish/sim-sns-publish-commands.js";
6
+ import { SimSnsSubscriptionAccess } from "./subscription/sim-sns-subscription-access.js";
7
+ import { SimSnsSubscriptionAttributeCommands } from "./subscription/sim-sns-subscription-attribute-commands.js";
8
+ import { SimSnsSubscriptionCommands } from "./subscription/sim-sns-subscription-commands.js";
9
+ import { SimSnsSubscriptionListings } from "./subscription/sim-sns-subscription-listings.js";
10
+ import { SimSnsCreateTopic } from "./topic/sim-sns-create-topic.js";
11
+ import { SimSnsTopicAccess } from "./topic/sim-sns-topic-access.js";
12
+ import { SimSnsTopicAttributeCommands } from "./topic/sim-sns-topic-attribute-commands.js";
13
+ import { SimSnsTopicCommands } from "./topic/sim-sns-topic-commands.js";
14
+ /**
15
+ * Every command handler one simulated SNS scope delegates to.
16
+ *
17
+ * The wiring lives here rather than in the facade so that `SimSns` stays what
18
+ * it is meant to be: state and delegation. Which handler shares which
19
+ * collaborator is a fact about the handlers, not about the service object in
20
+ * front of them.
21
+ */
22
+ export class SimSnsCommands {
23
+ topicCreation;
24
+ topics;
25
+ topicAttributes;
26
+ subscriptions;
27
+ subscriptionListings;
28
+ subscriptionAttributes;
29
+ publish;
30
+ fanOut;
31
+ signer;
32
+ constructor(properties) {
33
+ const { topics, subscriptions, accountRegionScope, background } = properties;
34
+ const access = new SimSnsTopicAccess({
35
+ topics,
36
+ authorizer: new SimSnsAuthorizer({ iam: properties.iam }),
37
+ accountRegionScope,
38
+ });
39
+ const subscriptionAccess = new SimSnsSubscriptionAccess({
40
+ subscriptions,
41
+ topicAccess: access,
42
+ accountRegionScope,
43
+ });
44
+ this.signer = new SimSnsMessageSigner({ accountRegionScope });
45
+ this.fanOut = new SimSnsFanOut({
46
+ subscriptions,
47
+ endpoints: properties.deliveryEndpoints,
48
+ requests: new SimSnsDeliveryRequests({
49
+ signer: this.signer,
50
+ accountRegionScope,
51
+ }),
52
+ background,
53
+ });
54
+ this.topicCreation = new SimSnsCreateTopic({
55
+ topics,
56
+ access,
57
+ accountRegionScope,
58
+ });
59
+ this.topics = new SimSnsTopicCommands({ topics, subscriptions, access });
60
+ this.topicAttributes = new SimSnsTopicAttributeCommands({
61
+ access,
62
+ subscriptions,
63
+ });
64
+ this.subscriptions = new SimSnsSubscriptionCommands({
65
+ subscriptions,
66
+ topicAccess: access,
67
+ subscriptionAccess,
68
+ });
69
+ this.subscriptionListings = new SimSnsSubscriptionListings({
70
+ subscriptions,
71
+ topicAccess: access,
72
+ });
73
+ this.subscriptionAttributes = new SimSnsSubscriptionAttributeCommands({
74
+ access: subscriptionAccess,
75
+ });
76
+ this.publish = new SimSnsPublishCommands({
77
+ access,
78
+ clock: background,
79
+ fanOut: this.fanOut,
80
+ });
81
+ }
82
+ }
83
+ //# sourceMappingURL=sim-sns-commands.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-sns-commands.js","sourceRoot":"","sources":["../../../../src/service/sns/command/sim-sns-commands.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAG7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,wBAAwB,EAAE,MAAM,+CAA+C,CAAC;AACzF,OAAO,EAAE,mCAAmC,EAAE,MAAM,2DAA2D,CAAC;AAChH,OAAO,EAAE,0BAA0B,EAAE,MAAM,iDAAiD,CAAC;AAC7F,OAAO,EAAE,0BAA0B,EAAE,MAAM,iDAAiD,CAAC;AAC7F,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,4BAA4B,EAAE,MAAM,6CAA6C,CAAC;AAC3F,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAWxE;;;;;;;GAOG;AACH,MAAM,OAAO,cAAc;IACT,aAAa,CAAoB;IACjC,MAAM,CAAsB;IAC5B,eAAe,CAA+B;IAC9C,aAAa,CAA6B;IAC1C,oBAAoB,CAA6B;IACjD,sBAAsB,CAAsC;IAC5D,OAAO,CAAwB;IAC/B,MAAM,CAAe;IACrB,MAAM,CAAsB;IAE5C,YAAY,UAAoC;QAC9C,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,kBAAkB,EAAE,UAAU,EAAE,GAC7D,UAAU,CAAC;QACb,MAAM,MAAM,GAAG,IAAI,iBAAiB,CAAC;YACnC,MAAM;YACN,UAAU,EAAE,IAAI,gBAAgB,CAAC,EAAE,GAAG,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC;YACzD,kBAAkB;SACnB,CAAC,CAAC;QACH,MAAM,kBAAkB,GAAG,IAAI,wBAAwB,CAAC;YACtD,aAAa;YACb,WAAW,EAAE,MAAM;YACnB,kBAAkB;SACnB,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,GAAG,IAAI,mBAAmB,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC;QAC9D,IAAI,CAAC,MAAM,GAAG,IAAI,YAAY,CAAC;YAC7B,aAAa;YACb,SAAS,EAAE,UAAU,CAAC,iBAAiB;YACvC,QAAQ,EAAE,IAAI,sBAAsB,CAAC;gBACnC,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,kBAAkB;aACnB,CAAC;YACF,UAAU;SACX,CAAC,CAAC;QACH,IAAI,CAAC,aAAa,GAAG,IAAI,iBAAiB,CAAC;YACzC,MAAM;YACN,MAAM;YACN,kBAAkB;SACnB,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,GAAG,IAAI,mBAAmB,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,CAAC;QACzE,IAAI,CAAC,eAAe,GAAG,IAAI,4BAA4B,CAAC;YACtD,MAAM;YACN,aAAa;SACd,CAAC,CAAC;QACH,IAAI,CAAC,aAAa,GAAG,IAAI,0BAA0B,CAAC;YAClD,aAAa;YACb,WAAW,EAAE,MAAM;YACnB,kBAAkB;SACnB,CAAC,CAAC;QACH,IAAI,CAAC,oBAAoB,GAAG,IAAI,0BAA0B,CAAC;YACzD,aAAa;YACb,WAAW,EAAE,MAAM;SACpB,CAAC,CAAC;QACH,IAAI,CAAC,sBAAsB,GAAG,IAAI,mCAAmC,CAAC;YACpE,MAAM,EAAE,kBAAkB;SAC3B,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,GAAG,IAAI,qBAAqB,CAAC;YACvC,MAAM;YACN,KAAK,EAAE,UAAU;YACjB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * One page of a listing, and the token that reaches the next one.
3
+ */
4
+ export declare class SimSnsPage<Item> {
5
+ readonly items: readonly Item[];
6
+ readonly nextToken: string | undefined;
7
+ constructor(listed: readonly Item[], nextToken: string | undefined);
8
+ /**
9
+ * Read a continuation token as its offset into the listed items.
10
+ *
11
+ * A token is refused unless it is one of these listings could have issued,
12
+ * which is the start of a page after the first. An offset landing part way
13
+ * into a page is not one, so it is refused rather than answered with a
14
+ * listing starting somewhere real SNS would never start one.
15
+ */
16
+ private static startIndex;
17
+ private static tokenFor;
18
+ }
19
+ //# sourceMappingURL=sim-sns-page.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-sns-page.d.ts","sourceRoot":"","sources":["../../../../src/service/sns/command/sim-sns-page.ts"],"names":[],"mappings":"AAWA;;GAEG;AACH,qBAAa,UAAU,CAAC,IAAI;IAC1B,SAAgB,KAAK,EAAE,SAAS,IAAI,EAAE,CAAC;IACvC,SAAgB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAE9C,YAAY,MAAM,EAAE,SAAS,IAAI,EAAE,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,EAMjE;IAED;;;;;;;OAOG;IACH,OAAO,CAAC,MAAM,CAAC,UAAU;IAyBzB,OAAO,CAAC,MAAM,CAAC,QAAQ;CAUxB"}
@@ -0,0 +1,51 @@
1
+ import { SimSnsInvalidParameterException } from "../error/sim-sns.error.js";
2
+ /**
3
+ * How many items one listing response carries.
4
+ *
5
+ * Real SNS gives the request no say in this for any of its listings: topics,
6
+ * subscriptions and a topic's subscriptions all page at 100 and hand back a
7
+ * token for the rest.
8
+ */
9
+ const itemsPerPage = 100;
10
+ /**
11
+ * One page of a listing, and the token that reaches the next one.
12
+ */
13
+ export class SimSnsPage {
14
+ items;
15
+ nextToken;
16
+ constructor(listed, nextToken) {
17
+ const startIndex = SimSnsPage.startIndex(nextToken, listed.length);
18
+ const nextIndex = startIndex + itemsPerPage;
19
+ this.items = listed.slice(startIndex, nextIndex);
20
+ this.nextToken = SimSnsPage.tokenFor(nextIndex, listed.length);
21
+ }
22
+ /**
23
+ * Read a continuation token as its offset into the listed items.
24
+ *
25
+ * A token is refused unless it is one of these listings could have issued,
26
+ * which is the start of a page after the first. An offset landing part way
27
+ * into a page is not one, so it is refused rather than answered with a
28
+ * listing starting somewhere real SNS would never start one.
29
+ */
30
+ static startIndex(nextToken, listedCount) {
31
+ if (nextToken === undefined) {
32
+ return 0;
33
+ }
34
+ const startIndex = Number(nextToken);
35
+ if (!Number.isSafeInteger(startIndex) ||
36
+ startIndex <= 0 ||
37
+ startIndex % itemsPerPage !== 0 ||
38
+ startIndex >= listedCount ||
39
+ String(startIndex) !== nextToken) {
40
+ throw new SimSnsInvalidParameterException("Invalid parameter: NextToken is not a token this simulation issued");
41
+ }
42
+ return startIndex;
43
+ }
44
+ static tokenFor(nextIndex, listedCount) {
45
+ if (nextIndex >= listedCount) {
46
+ return undefined;
47
+ }
48
+ return String(nextIndex);
49
+ }
50
+ }
51
+ //# sourceMappingURL=sim-sns-page.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-sns-page.js","sourceRoot":"","sources":["../../../../src/service/sns/command/sim-sns-page.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,+BAA+B,EAAE,MAAM,2BAA2B,CAAC;AAE5E;;;;;;GAMG;AACH,MAAM,YAAY,GAAG,GAAG,CAAC;AAEzB;;GAEG;AACH,MAAM,OAAO,UAAU;IACL,KAAK,CAAkB;IACvB,SAAS,CAAqB;IAE9C,YAAY,MAAuB,EAAE,SAA6B;QAChE,MAAM,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QACnE,MAAM,SAAS,GAAG,UAAU,GAAG,YAAY,CAAC;QAE5C,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;QACjD,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;IACjE,CAAC;IAED;;;;;;;OAOG;IACK,MAAM,CAAC,UAAU,CACvB,SAA6B,EAC7B,WAAmB;QAEnB,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,OAAO,CAAC,CAAC;QACX,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;QAErC,IACE,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC;YACjC,UAAU,IAAI,CAAC;YACf,UAAU,GAAG,YAAY,KAAK,CAAC;YAC/B,UAAU,IAAI,WAAW;YACzB,MAAM,CAAC,UAAU,CAAC,KAAK,SAAS,EAChC,CAAC;YACD,MAAM,IAAI,+BAA+B,CACvC,oEAAoE,CACrE,CAAC;QACJ,CAAC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;IAEO,MAAM,CAAC,QAAQ,CACrB,SAAiB,EACjB,WAAmB;QAEnB,IAAI,SAAS,IAAI,WAAW,EAAE,CAAC;YAC7B,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC;IAC3B,CAAC;CACF"}
@@ -0,0 +1,47 @@
1
+ import type { SimAwsCaller } from "../../aws/caller/sim-aws-caller.js";
2
+ /**
3
+ * The condition key naming what a simulated service is reaching the topic for,
4
+ * such as the S3 Bucket an event came from.
5
+ *
6
+ * This is the key a topic policy granting a service principal access is nearly
7
+ * always conditioned on, under `ArnLike`, since a service principal is shared
8
+ * by every resource of that service.
9
+ */
10
+ export declare const simSnsSourceArnConditionKey = "aws:SourceArn";
11
+ /**
12
+ * The condition key naming the Account owning the resource a simulated service
13
+ * is reaching the topic for.
14
+ *
15
+ * It only has a job when that resource and the topic are in different Accounts,
16
+ * which is why AWS's own documented topic policies carry it alongside the
17
+ * source ARN.
18
+ */
19
+ export declare const simSnsSourceAccountConditionKey = "aws:SourceAccount";
20
+ /**
21
+ * What an SNS request carries besides its command input.
22
+ */
23
+ export interface SimSnsRequestOptions {
24
+ /**
25
+ * Who is making the request. An omitted caller is the Account root, as it is
26
+ * everywhere else in the simulation.
27
+ */
28
+ readonly caller?: SimAwsCaller;
29
+ /**
30
+ * What the caller is reaching the topic for, supplied to IAM as
31
+ * `aws:SourceArn`.
32
+ *
33
+ * This is for a simulated service making a request on a resource's behalf,
34
+ * which is how real AWS supplies it. A value the caller does not have is left
35
+ * out rather than supplied empty, so a statement conditioned on it fails to
36
+ * match instead of matching an empty string.
37
+ */
38
+ readonly sourceArn?: string;
39
+ /**
40
+ * The Account owning the resource the caller is reaching the topic for,
41
+ * supplied to IAM as `aws:SourceAccount`.
42
+ *
43
+ * Left out the same way when the caller has no value for it.
44
+ */
45
+ readonly sourceAccount?: string;
46
+ }
47
+ //# sourceMappingURL=sim-sns-request-options.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-sns-request-options.d.ts","sourceRoot":"","sources":["../../../../src/service/sns/command/sim-sns-request-options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAEvE;;;;;;;GAOG;AACH,eAAO,MAAM,2BAA2B,kBAAkB,CAAC;AAE3D;;;;;;;GAOG;AACH,eAAO,MAAM,+BAA+B,sBAAsB,CAAC;AAEnE;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;OAGG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC;IAE/B;;;;;;;;OAQG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAE5B;;;;;OAKG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * The condition key naming what a simulated service is reaching the topic for,
3
+ * such as the S3 Bucket an event came from.
4
+ *
5
+ * This is the key a topic policy granting a service principal access is nearly
6
+ * always conditioned on, under `ArnLike`, since a service principal is shared
7
+ * by every resource of that service.
8
+ */
9
+ export const simSnsSourceArnConditionKey = "aws:SourceArn";
10
+ /**
11
+ * The condition key naming the Account owning the resource a simulated service
12
+ * is reaching the topic for.
13
+ *
14
+ * It only has a job when that resource and the topic are in different Accounts,
15
+ * which is why AWS's own documented topic policies carry it alongside the
16
+ * source ARN.
17
+ */
18
+ export const simSnsSourceAccountConditionKey = "aws:SourceAccount";
19
+ //# sourceMappingURL=sim-sns-request-options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-sns-request-options.js","sourceRoot":"","sources":["../../../../src/service/sns/command/sim-sns-request-options.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,eAAe,CAAC;AAE3D;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG,mBAAmB,CAAC"}
@@ -0,0 +1,42 @@
1
+ import type { SimAwsAccountRegionScope } from "../../../aws/sim-aws-account-region-scope.js";
2
+ import type { SimSnsSubscription } from "../../subscription/sim-sns-subscription.js";
3
+ import type { SimSnsSubscriptionStore } from "../../subscription/sim-sns-subscription-store.js";
4
+ import type { SimSnsTopicAccess } from "../topic/sim-sns-topic-access.js";
5
+ import type { SimSnsRequestOptions } from "../sim-sns-request-options.js";
6
+ interface SimSnsSubscriptionAccessProperties {
7
+ readonly subscriptions: SimSnsSubscriptionStore;
8
+ readonly topicAccess: SimSnsTopicAccess;
9
+ readonly accountRegionScope: SimAwsAccountRegionScope;
10
+ }
11
+ /**
12
+ * How a request reaches the subscription it names by ARN.
13
+ *
14
+ * The action is authorized before the subscription is looked for, which is the
15
+ * other way round from a topic. Real SNS gives `Unsubscribe`,
16
+ * `GetSubscriptionAttributes` and `SetSubscriptionAttributes` no resource type
17
+ * at all, so IAM evaluates them against `*` and no topic policy takes part in
18
+ * the decision. Nothing about the subscription can change the answer, so
19
+ * nothing has to be found first.
20
+ */
21
+ export declare class SimSnsSubscriptionAccess {
22
+ private readonly subscriptions;
23
+ private readonly topicAccess;
24
+ private readonly accountRegionScope;
25
+ constructor(properties: SimSnsSubscriptionAccessProperties);
26
+ /**
27
+ * Resolve the subscription a request names by ARN, authorizing the action
28
+ * first.
29
+ */
30
+ requireByArn(action: string, subscriptionArn: string | undefined, options?: SimSnsRequestOptions): SimSnsSubscription;
31
+ /**
32
+ * Read the subscription ARN a request carries, refusing one this scope could
33
+ * not own.
34
+ *
35
+ * A subscription ARN is the topic's with an id on the end, so it names an
36
+ * Account and a Region the same way a topic ARN does, and one naming another
37
+ * scope reaches nothing here rather than being looked up locally by its id.
38
+ */
39
+ private scopedArn;
40
+ }
41
+ export {};
42
+ //# sourceMappingURL=sim-sns-subscription-access.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-sns-subscription-access.d.ts","sourceRoot":"","sources":["../../../../../src/service/sns/command/subscription/sim-sns-subscription-access.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8CAA8C,CAAC;AAK7F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AAErF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,kDAAkD,CAAC;AAChG,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAE1E,UAAU,kCAAkC;IAC1C,QAAQ,CAAC,aAAa,EAAE,uBAAuB,CAAC;IAChD,QAAQ,CAAC,WAAW,EAAE,iBAAiB,CAAC;IACxC,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,CAAC;CACvD;AAED;;;;;;;;;GASG;AACH,qBAAa,wBAAwB;IACnC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA0B;IACxD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoB;IAChD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA2B;IAE9D,YAAY,UAAU,EAAE,kCAAkC,EAIzD;IAED;;;OAGG;IACH,YAAY,CACV,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,GAAG,SAAS,EACnC,OAAO,CAAC,EAAE,oBAAoB,GAC7B,kBAAkB,CAIpB;IAED;;;;;;;OAOG;IACH,OAAO,CAAC,SAAS;CA6BlB"}
@@ -0,0 +1,57 @@
1
+ import { SimSnsInvalidParameterException, SimSnsNotFoundException, } from "../../error/sim-sns.error.js";
2
+ import { parseSnsSubscriptionArn } from "../../subscription/sim-sns-subscription-arn.js";
3
+ /**
4
+ * How a request reaches the subscription it names by ARN.
5
+ *
6
+ * The action is authorized before the subscription is looked for, which is the
7
+ * other way round from a topic. Real SNS gives `Unsubscribe`,
8
+ * `GetSubscriptionAttributes` and `SetSubscriptionAttributes` no resource type
9
+ * at all, so IAM evaluates them against `*` and no topic policy takes part in
10
+ * the decision. Nothing about the subscription can change the answer, so
11
+ * nothing has to be found first.
12
+ */
13
+ export class SimSnsSubscriptionAccess {
14
+ subscriptions;
15
+ topicAccess;
16
+ accountRegionScope;
17
+ constructor(properties) {
18
+ this.subscriptions = properties.subscriptions;
19
+ this.topicAccess = properties.topicAccess;
20
+ this.accountRegionScope = properties.accountRegionScope;
21
+ }
22
+ /**
23
+ * Resolve the subscription a request names by ARN, authorizing the action
24
+ * first.
25
+ */
26
+ requireByArn(action, subscriptionArn, options) {
27
+ this.topicAccess.authorizeAnyTopic(action, options);
28
+ return this.subscriptions.require(this.scopedArn(subscriptionArn));
29
+ }
30
+ /**
31
+ * Read the subscription ARN a request carries, refusing one this scope could
32
+ * not own.
33
+ *
34
+ * A subscription ARN is the topic's with an id on the end, so it names an
35
+ * Account and a Region the same way a topic ARN does, and one naming another
36
+ * scope reaches nothing here rather than being looked up locally by its id.
37
+ */
38
+ scopedArn(subscriptionArn) {
39
+ if (subscriptionArn === undefined || subscriptionArn === "") {
40
+ throw new SimSnsInvalidParameterException("Invalid parameter: SubscriptionArn is required");
41
+ }
42
+ const parts = parseSnsSubscriptionArn(subscriptionArn);
43
+ if (parts === undefined) {
44
+ throw new SimSnsInvalidParameterException(`Invalid parameter: SubscriptionArn Reason: ${subscriptionArn} is ` +
45
+ `not a subscription ARN, which is ` +
46
+ `arn:aws:sns:<region>:<account-id>:<topic-name>:<subscription-id>`);
47
+ }
48
+ const { accountId, regionName } = this.accountRegionScope;
49
+ if (parts.accountId !== accountId || parts.regionName !== regionName) {
50
+ throw new SimSnsNotFoundException(`Subscription does not exist: ${subscriptionArn} names Account ` +
51
+ `${parts.accountId} in ${parts.regionName}, and this simulated SNS ` +
52
+ `is Account ${accountId} in ${regionName}`);
53
+ }
54
+ return subscriptionArn;
55
+ }
56
+ }
57
+ //# sourceMappingURL=sim-sns-subscription-access.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-sns-subscription-access.js","sourceRoot":"","sources":["../../../../../src/service/sns/command/subscription/sim-sns-subscription-access.ts"],"names":[],"mappings":"AACA,OAAO,EACL,+BAA+B,EAC/B,uBAAuB,GACxB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,uBAAuB,EAAE,MAAM,gDAAgD,CAAC;AAWzF;;;;;;;;;GASG;AACH,MAAM,OAAO,wBAAwB;IAClB,aAAa,CAA0B;IACvC,WAAW,CAAoB;IAC/B,kBAAkB,CAA2B;IAE9D,YAAY,UAA8C;QACxD,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,aAAa,CAAC;QAC9C,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC;QAC1C,IAAI,CAAC,kBAAkB,GAAG,UAAU,CAAC,kBAAkB,CAAC;IAC1D,CAAC;IAED;;;OAGG;IACH,YAAY,CACV,MAAc,EACd,eAAmC,EACnC,OAA8B;QAE9B,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAEpD,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC;IACrE,CAAC;IAED;;;;;;;OAOG;IACK,SAAS,CAAC,eAAmC;QACnD,IAAI,eAAe,KAAK,SAAS,IAAI,eAAe,KAAK,EAAE,EAAE,CAAC;YAC5D,MAAM,IAAI,+BAA+B,CACvC,gDAAgD,CACjD,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,GAAG,uBAAuB,CAAC,eAAe,CAAC,CAAC;QAEvD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,+BAA+B,CACvC,8CAA8C,eAAe,MAAM;gBACjE,mCAAmC;gBACnC,kEAAkE,CACrE,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,kBAAkB,CAAC;QAE1D,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;YACrE,MAAM,IAAI,uBAAuB,CAC/B,gCAAgC,eAAe,iBAAiB;gBAC9D,GAAG,KAAK,CAAC,SAAS,OAAO,KAAK,CAAC,UAAU,2BAA2B;gBACpE,cAAc,SAAS,OAAO,UAAU,EAAE,CAC7C,CAAC;QACJ,CAAC;QAED,OAAO,eAAe,CAAC;IACzB,CAAC;CACF"}
@@ -0,0 +1,31 @@
1
+ import type { SimSnsRequestOptions } from "../sim-sns-request-options.js";
2
+ import type { SimSnsSubscriptionAccess } from "./sim-sns-subscription-access.js";
3
+ import type { SimGetSubscriptionAttributesCommand, SimGetSubscriptionAttributesCommandOutput, SimSetSubscriptionAttributesCommand, SimSetSubscriptionAttributesCommandOutput } from "./subscription.command.js";
4
+ interface SimSnsSubscriptionAttributeCommandsProperties {
5
+ readonly access: SimSnsSubscriptionAccess;
6
+ }
7
+ /**
8
+ * The commands that read and change the attributes of a subscription.
9
+ */
10
+ export declare class SimSnsSubscriptionAttributeCommands {
11
+ private readonly access;
12
+ constructor(properties: SimSnsSubscriptionAttributeCommandsProperties);
13
+ /**
14
+ * Read every attribute of a subscription.
15
+ *
16
+ * The request names no attributes, so everything the subscription has comes
17
+ * back. An attribute real SNS reports and this simulation does not hold is
18
+ * left out rather than invented.
19
+ */
20
+ getSubscriptionAttributes(command: SimGetSubscriptionAttributesCommand, options?: SimSnsRequestOptions): SimGetSubscriptionAttributesCommandOutput;
21
+ /**
22
+ * Change one attribute of a subscription.
23
+ *
24
+ * Real SNS sets one attribute per request rather than a map of them, which is
25
+ * why the request carries a name and a value instead of an `Attributes`
26
+ * object.
27
+ */
28
+ setSubscriptionAttributes(command: SimSetSubscriptionAttributesCommand, options?: SimSnsRequestOptions): SimSetSubscriptionAttributesCommandOutput;
29
+ }
30
+ export {};
31
+ //# sourceMappingURL=sim-sns-subscription-attribute-commands.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-sns-subscription-attribute-commands.d.ts","sourceRoot":"","sources":["../../../../../src/service/sns/command/subscription/sim-sns-subscription-attribute-commands.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AACjF,OAAO,KAAK,EACV,mCAAmC,EACnC,yCAAyC,EACzC,mCAAmC,EACnC,yCAAyC,EAC1C,MAAM,2BAA2B,CAAC;AAEnC,UAAU,6CAA6C;IACrD,QAAQ,CAAC,MAAM,EAAE,wBAAwB,CAAC;CAC3C;AAED;;GAEG;AACH,qBAAa,mCAAmC;IAC9C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA2B;IAElD,YAAY,UAAU,EAAE,6CAA6C,EAEpE;IAED;;;;;;OAMG;IACH,yBAAyB,CACvB,OAAO,EAAE,mCAAmC,EAC5C,OAAO,CAAC,EAAE,oBAAoB,GAC7B,yCAAyC,CAQ3C;IAED;;;;;;OAMG;IACH,yBAAyB,CACvB,OAAO,EAAE,mCAAmC,EAC5C,OAAO,CAAC,EAAE,oBAAoB,GAC7B,yCAAyC,CAuB3C;CACF"}
@@ -0,0 +1,44 @@
1
+ import { SimSnsInvalidParameterException } from "../../error/sim-sns.error.js";
2
+ /**
3
+ * The commands that read and change the attributes of a subscription.
4
+ */
5
+ export class SimSnsSubscriptionAttributeCommands {
6
+ access;
7
+ constructor(properties) {
8
+ this.access = properties.access;
9
+ }
10
+ /**
11
+ * Read every attribute of a subscription.
12
+ *
13
+ * The request names no attributes, so everything the subscription has comes
14
+ * back. An attribute real SNS reports and this simulation does not hold is
15
+ * left out rather than invented.
16
+ */
17
+ getSubscriptionAttributes(command, options) {
18
+ const subscription = this.access.requireByArn("sns:GetSubscriptionAttributes", command.input.SubscriptionArn, options);
19
+ return { $metadata: {}, Attributes: subscription.reportedAttributes() };
20
+ }
21
+ /**
22
+ * Change one attribute of a subscription.
23
+ *
24
+ * Real SNS sets one attribute per request rather than a map of them, which is
25
+ * why the request carries a name and a value instead of an `Attributes`
26
+ * object.
27
+ */
28
+ setSubscriptionAttributes(command, options) {
29
+ const subscription = this.access.requireByArn("sns:SetSubscriptionAttributes", command.input.SubscriptionArn, options);
30
+ const name = command.input.AttributeName;
31
+ if (name === undefined || name === "") {
32
+ throw new SimSnsInvalidParameterException("Invalid parameter: AttributeName is required");
33
+ }
34
+ // An absent value is how SNS is told to clear an attribute, so it reaches
35
+ // the subscription as an empty string rather than being left out of the
36
+ // request. RawMessageDelivery has no empty value, so clearing that one is
37
+ // refused by the attribute itself.
38
+ subscription.applyAttributes({
39
+ [name]: command.input.AttributeValue ?? "",
40
+ });
41
+ return { $metadata: {} };
42
+ }
43
+ }
44
+ //# sourceMappingURL=sim-sns-subscription-attribute-commands.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-sns-subscription-attribute-commands.js","sourceRoot":"","sources":["../../../../../src/service/sns/command/subscription/sim-sns-subscription-attribute-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,+BAA+B,EAAE,MAAM,8BAA8B,CAAC;AAc/E;;GAEG;AACH,MAAM,OAAO,mCAAmC;IAC7B,MAAM,CAA2B;IAElD,YAAY,UAAyD;QACnE,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAClC,CAAC;IAED;;;;;;OAMG;IACH,yBAAyB,CACvB,OAA4C,EAC5C,OAA8B;QAE9B,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAC3C,+BAA+B,EAC/B,OAAO,CAAC,KAAK,CAAC,eAAe,EAC7B,OAAO,CACR,CAAC;QAEF,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,UAAU,EAAE,YAAY,CAAC,kBAAkB,EAAE,EAAE,CAAC;IAC1E,CAAC;IAED;;;;;;OAMG;IACH,yBAAyB,CACvB,OAA4C,EAC5C,OAA8B;QAE9B,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAC3C,+BAA+B,EAC/B,OAAO,CAAC,KAAK,CAAC,eAAe,EAC7B,OAAO,CACR,CAAC;QACF,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC;QAEzC,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;YACtC,MAAM,IAAI,+BAA+B,CACvC,8CAA8C,CAC/C,CAAC;QACJ,CAAC;QAED,0EAA0E;QAC1E,wEAAwE;QACxE,0EAA0E;QAC1E,mCAAmC;QACnC,YAAY,CAAC,eAAe,CAAC;YAC3B,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,cAAc,IAAI,EAAE;SAC3C,CAAC,CAAC;QAEH,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;IAC3B,CAAC;CACF"}
@@ -0,0 +1,50 @@
1
+ import type { SimSnsSubscriptionStore } from "../../subscription/sim-sns-subscription-store.js";
2
+ import type { SimSnsRequestOptions } from "../sim-sns-request-options.js";
3
+ import type { SimSnsTopicAccess } from "../topic/sim-sns-topic-access.js";
4
+ import type { SimSnsSubscriptionAccess } from "./sim-sns-subscription-access.js";
5
+ import type { SimSubscribeCommand, SimSubscribeCommandOutput, SimUnsubscribeCommand, SimUnsubscribeCommandOutput } from "./subscription.command.js";
6
+ interface SimSnsSubscriptionCommandsProperties {
7
+ readonly subscriptions: SimSnsSubscriptionStore;
8
+ readonly topicAccess: SimSnsTopicAccess;
9
+ readonly subscriptionAccess: SimSnsSubscriptionAccess;
10
+ }
11
+ /**
12
+ * The commands that create and remove subscriptions.
13
+ */
14
+ export declare class SimSnsSubscriptionCommands {
15
+ private readonly subscriptions;
16
+ private readonly topicAccess;
17
+ private readonly subscriptionAccess;
18
+ constructor(properties: SimSnsSubscriptionCommandsProperties);
19
+ /**
20
+ * Subscribe an endpoint to a topic.
21
+ *
22
+ * The subscription comes back confirmed, with an ARN rather than the `pending
23
+ * confirmation` a protocol needing a confirmation token answers with. Real
24
+ * SNS confirms an `sqs` and a `lambda` subscription itself, and those are the
25
+ * protocols simulated.
26
+ */
27
+ subscribe(command: SimSubscribeCommand, options?: SimSnsRequestOptions): SimSubscribeCommandOutput;
28
+ /**
29
+ * Remove a subscription, so nothing more is delivered to its endpoint.
30
+ *
31
+ * An ARN naming no subscription is refused rather than quietly succeeding.
32
+ * Real SNS documents `NotFoundException` for this command, and a silent
33
+ * success would let a test unsubscribe the wrong ARN and believe it had
34
+ * stopped a delivery.
35
+ */
36
+ unsubscribe(command: SimUnsubscribeCommand, options?: SimSnsRequestOptions): SimUnsubscribeCommandOutput;
37
+ /**
38
+ * The subscription this request would duplicate, if there is one.
39
+ *
40
+ * Real SNS answers a repeated Subscribe for the same topic, protocol and
41
+ * endpoint with the subscription that is already there rather than making a
42
+ * second one, so the same endpoint receives one copy of a published message
43
+ * however many times it subscribed. The attributes the repeated request
44
+ * carries are not applied, which is how a repeated `CreateTopic` treats its
45
+ * attributes too.
46
+ */
47
+ private existingLike;
48
+ }
49
+ export {};
50
+ //# sourceMappingURL=sim-sns-subscription-commands.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-sns-subscription-commands.d.ts","sourceRoot":"","sources":["../../../../../src/service/sns/command/subscription/sim-sns-subscription-commands.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,kDAAkD,CAAC;AAEhG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AACjF,OAAO,KAAK,EACV,mBAAmB,EACnB,yBAAyB,EACzB,qBAAqB,EACrB,2BAA2B,EAC5B,MAAM,2BAA2B,CAAC;AAEnC,UAAU,oCAAoC;IAC5C,QAAQ,CAAC,aAAa,EAAE,uBAAuB,CAAC;IAChD,QAAQ,CAAC,WAAW,EAAE,iBAAiB,CAAC;IACxC,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,CAAC;CACvD;AAED;;GAEG;AACH,qBAAa,0BAA0B;IACrC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA0B;IACxD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoB;IAChD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA2B;IAE9D,YAAY,UAAU,EAAE,oCAAoC,EAI3D;IAED;;;;;;;OAOG;IACH,SAAS,CACP,OAAO,EAAE,mBAAmB,EAC5B,OAAO,CAAC,EAAE,oBAAoB,GAC7B,yBAAyB,CA8B3B;IAED;;;;;;;OAOG;IACH,WAAW,CACT,OAAO,EAAE,qBAAqB,EAC9B,OAAO,CAAC,EAAE,oBAAoB,GAC7B,2BAA2B,CAU7B;IAED;;;;;;;;;OASG;IACH,OAAO,CAAC,YAAY;CAQrB"}
@@ -0,0 +1,73 @@
1
+ import { SimSnsSubscription } from "../../subscription/sim-sns-subscription.js";
2
+ import { SimSnsSubscriptionAttributes } from "../../subscription/sim-sns-subscription-attributes.js";
3
+ import { requireSimSnsProtocol } from "../../subscription/sim-sns-subscription-protocol.js";
4
+ /**
5
+ * The commands that create and remove subscriptions.
6
+ */
7
+ export class SimSnsSubscriptionCommands {
8
+ subscriptions;
9
+ topicAccess;
10
+ subscriptionAccess;
11
+ constructor(properties) {
12
+ this.subscriptions = properties.subscriptions;
13
+ this.topicAccess = properties.topicAccess;
14
+ this.subscriptionAccess = properties.subscriptionAccess;
15
+ }
16
+ /**
17
+ * Subscribe an endpoint to a topic.
18
+ *
19
+ * The subscription comes back confirmed, with an ARN rather than the `pending
20
+ * confirmation` a protocol needing a confirmation token answers with. Real
21
+ * SNS confirms an `sqs` and a `lambda` subscription itself, and those are the
22
+ * protocols simulated.
23
+ */
24
+ subscribe(command, options) {
25
+ const { topic, caller } = this.topicAccess.requireByArnForCaller("sns:Subscribe", command.input.TopicArn, options);
26
+ // The attributes are read whether or not they end up applied, so a
27
+ // repeated Subscribe carrying one this simulation will not take is still
28
+ // refused for it.
29
+ const attributes = SimSnsSubscriptionAttributes.defaults().with(command.input.Attributes ?? {});
30
+ const subscription = SimSnsSubscription.of({
31
+ topicArn: topic.arn.value,
32
+ topicName: topic.name.value,
33
+ protocol: requireSimSnsProtocol(command.input.Protocol),
34
+ endpoint: command.input.Endpoint,
35
+ owner: caller.accountId ?? topic.owner,
36
+ attributes,
37
+ });
38
+ const existing = this.existingLike(topic, subscription);
39
+ if (existing !== undefined) {
40
+ return { $metadata: {}, SubscriptionArn: existing.arn.value };
41
+ }
42
+ this.subscriptions.add(subscription);
43
+ return { $metadata: {}, SubscriptionArn: subscription.arn.value };
44
+ }
45
+ /**
46
+ * Remove a subscription, so nothing more is delivered to its endpoint.
47
+ *
48
+ * An ARN naming no subscription is refused rather than quietly succeeding.
49
+ * Real SNS documents `NotFoundException` for this command, and a silent
50
+ * success would let a test unsubscribe the wrong ARN and believe it had
51
+ * stopped a delivery.
52
+ */
53
+ unsubscribe(command, options) {
54
+ this.subscriptions.remove(this.subscriptionAccess.requireByArn("sns:Unsubscribe", command.input.SubscriptionArn, options));
55
+ return { $metadata: {} };
56
+ }
57
+ /**
58
+ * The subscription this request would duplicate, if there is one.
59
+ *
60
+ * Real SNS answers a repeated Subscribe for the same topic, protocol and
61
+ * endpoint with the subscription that is already there rather than making a
62
+ * second one, so the same endpoint receives one copy of a published message
63
+ * however many times it subscribed. The attributes the repeated request
64
+ * carries are not applied, which is how a repeated `CreateTopic` treats its
65
+ * attributes too.
66
+ */
67
+ existingLike(topic, subscription) {
68
+ return this.subscriptions
69
+ .forTopic(topic.name.value)
70
+ .find((held) => held.repeats(subscription));
71
+ }
72
+ }
73
+ //# sourceMappingURL=sim-sns-subscription-commands.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-sns-subscription-commands.js","sourceRoot":"","sources":["../../../../../src/service/sns/command/subscription/sim-sns-subscription-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AAChF,OAAO,EAAE,4BAA4B,EAAE,MAAM,uDAAuD,CAAC;AACrG,OAAO,EAAE,qBAAqB,EAAE,MAAM,qDAAqD,CAAC;AAmB5F;;GAEG;AACH,MAAM,OAAO,0BAA0B;IACpB,aAAa,CAA0B;IACvC,WAAW,CAAoB;IAC/B,kBAAkB,CAA2B;IAE9D,YAAY,UAAgD;QAC1D,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,aAAa,CAAC;QAC9C,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC;QAC1C,IAAI,CAAC,kBAAkB,GAAG,UAAU,CAAC,kBAAkB,CAAC;IAC1D,CAAC;IAED;;;;;;;OAOG;IACH,SAAS,CACP,OAA4B,EAC5B,OAA8B;QAE9B,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAC9D,eAAe,EACf,OAAO,CAAC,KAAK,CAAC,QAAQ,EACtB,OAAO,CACR,CAAC;QAEF,mEAAmE;QACnE,yEAAyE;QACzE,kBAAkB;QAClB,MAAM,UAAU,GAAG,4BAA4B,CAAC,QAAQ,EAAE,CAAC,IAAI,CAC7D,OAAO,CAAC,KAAK,CAAC,UAAU,IAAI,EAAE,CAC/B,CAAC;QACF,MAAM,YAAY,GAAG,kBAAkB,CAAC,EAAE,CAAC;YACzC,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK;YACzB,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK;YAC3B,QAAQ,EAAE,qBAAqB,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;YACvD,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,QAAQ;YAChC,KAAK,EAAE,MAAM,CAAC,SAAS,IAAI,KAAK,CAAC,KAAK;YACtC,UAAU;SACX,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QAExD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,eAAe,EAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;QAChE,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAErC,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,eAAe,EAAE,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;IACpE,CAAC;IAED;;;;;;;OAOG;IACH,WAAW,CACT,OAA8B,EAC9B,OAA8B;QAE9B,IAAI,CAAC,aAAa,CAAC,MAAM,CACvB,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAClC,iBAAiB,EACjB,OAAO,CAAC,KAAK,CAAC,eAAe,EAC7B,OAAO,CACR,CACF,CAAC;QAEF,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;IAC3B,CAAC;IAED;;;;;;;;;OASG;IACK,YAAY,CAClB,KAAkB,EAClB,YAAgC;QAEhC,OAAO,IAAI,CAAC,aAAa;aACtB,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;aAC1B,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;IAChD,CAAC;CACF"}
@@ -0,0 +1,34 @@
1
+ import type { SimSnsSubscriptionStore } from "../../subscription/sim-sns-subscription-store.js";
2
+ import type { SimSnsRequestOptions } from "../sim-sns-request-options.js";
3
+ import type { SimSnsTopicAccess } from "../topic/sim-sns-topic-access.js";
4
+ import type { SimListSubscriptionsByTopicCommand, SimListSubscriptionsByTopicCommandOutput, SimListSubscriptionsCommand, SimListSubscriptionsCommandOutput } from "./subscription.command.js";
5
+ interface SimSnsSubscriptionListingsProperties {
6
+ readonly subscriptions: SimSnsSubscriptionStore;
7
+ readonly topicAccess: SimSnsTopicAccess;
8
+ }
9
+ /**
10
+ * The commands that list subscriptions.
11
+ */
12
+ export declare class SimSnsSubscriptionListings {
13
+ private readonly subscriptions;
14
+ private readonly topicAccess;
15
+ constructor(properties: SimSnsSubscriptionListingsProperties);
16
+ /**
17
+ * List every subscription in this scope, oldest first.
18
+ *
19
+ * Real SNS gives this action no resource type, so it authorizes against `*`
20
+ * the way `ListTopics` does: a policy naming a topic ARN allows no listing,
21
+ * and the list is not filtered by what the caller can reach.
22
+ */
23
+ listSubscriptions(command: SimListSubscriptionsCommand, options?: SimSnsRequestOptions): SimListSubscriptionsCommandOutput;
24
+ /**
25
+ * List the subscriptions of one topic, oldest first.
26
+ *
27
+ * This one does name a topic, so it authorizes against the topic's ARN and
28
+ * the topic's own policy takes part in the decision.
29
+ */
30
+ listSubscriptionsByTopic(command: SimListSubscriptionsByTopicCommand, options?: SimSnsRequestOptions): SimListSubscriptionsByTopicCommandOutput;
31
+ private page;
32
+ }
33
+ export {};
34
+ //# sourceMappingURL=sim-sns-subscription-listings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-sns-subscription-listings.d.ts","sourceRoot":"","sources":["../../../../../src/service/sns/command/subscription/sim-sns-subscription-listings.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,kDAAkD,CAAC;AAEhG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,KAAK,EACV,kCAAkC,EAClC,wCAAwC,EACxC,2BAA2B,EAC3B,iCAAiC,EAElC,MAAM,2BAA2B,CAAC;AAkBnC,UAAU,oCAAoC;IAC5C,QAAQ,CAAC,aAAa,EAAE,uBAAuB,CAAC;IAChD,QAAQ,CAAC,WAAW,EAAE,iBAAiB,CAAC;CACzC;AAED;;GAEG;AACH,qBAAa,0BAA0B;IACrC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA0B;IACxD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoB;IAEhD,YAAY,UAAU,EAAE,oCAAoC,EAG3D;IAED;;;;;;OAMG;IACH,iBAAiB,CACf,OAAO,EAAE,2BAA2B,EACpC,OAAO,CAAC,EAAE,oBAAoB,GAC7B,iCAAiC,CAInC;IAED;;;;;OAKG;IACH,wBAAwB,CACtB,OAAO,EAAE,kCAAkC,EAC3C,OAAO,CAAC,EAAE,oBAAoB,GAC7B,wCAAwC,CAW1C;IAED,OAAO,CAAC,IAAI;CAYb"}